.elementor-182 .elementor-element.elementor-element-57ee578{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-182 .elementor-element.elementor-element-a8fa93f{--display:flex;--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:250px;--padding-bottom:100px;--padding-left:200px;--padding-right:200px;}.elementor-182 .elementor-element.elementor-element-a8fa93f:not(.elementor-motion-effects-element-type-background), .elementor-182 .elementor-element.elementor-element-a8fa93f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://michel-chirivi.ch/wp-content/uploads/2026/08/Calibre-mistere.png");background-position:center center;}.elementor-182 .elementor-element.elementor-element-1d82c0c{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-182 .elementor-element.elementor-element-8a319b7{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:60px 60px;--row-gap:60px;--column-gap:60px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-182 .elementor-element.elementor-element-7e5d049 .elementor-heading-title{font-family:"EXPANSIVA", Sans-serif;font-size:55px;font-weight:400;color:#FFFFFF;}.elementor-182 .elementor-element.elementor-element-f1a3b9c{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;}.elementor-182 .elementor-element.elementor-element-f1a3b9c .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:18px;font-weight:300;color:#FFFFFF;}.elementor-182 .elementor-element.elementor-element-d13fdeb{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;}.elementor-182 .elementor-element.elementor-element-d13fdeb .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;letter-spacing:2px;color:#FFFFFF;}.elementor-182 .elementor-element.elementor-element-78f5be5{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;}.elementor-182 .elementor-element.elementor-element-78f5be5 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:18px;font-weight:300;color:#FFFFFF;}.elementor-182 .elementor-element.elementor-element-f685986{--display:flex;--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-182 .elementor-element.elementor-element-f685986:not(.elementor-motion-effects-element-type-background), .elementor-182 .elementor-element.elementor-element-f685986 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-182 .elementor-element.elementor-element-8a319b7{--width:90%;}}@media(min-width:1513px){.elementor-182 .elementor-element.elementor-element-a8fa93f:not(.elementor-motion-effects-element-type-background), .elementor-182 .elementor-element.elementor-element-a8fa93f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:1512px){.elementor-182 .elementor-element.elementor-element-a8fa93f{--padding-top:150px;--padding-bottom:70px;--padding-left:70px;--padding-right:70px;}.elementor-182 .elementor-element.elementor-element-1d82c0c{--grid-auto-flow:row;}.elementor-182 .elementor-element.elementor-element-7e5d049 .elementor-heading-title{font-size:34px;}}@media(max-width:1024px){.elementor-182 .elementor-element.elementor-element-1d82c0c{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:center;}.elementor-182 .elementor-element.elementor-element-8a319b7{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-182 .elementor-element.elementor-element-7e5d049{text-align:center;}.elementor-182 .elementor-element.elementor-element-f1a3b9c{text-align:center;}.elementor-182 .elementor-element.elementor-element-d13fdeb{text-align:center;}.elementor-182 .elementor-element.elementor-element-78f5be5{text-align:center;}}@media(max-width:767px){.elementor-182 .elementor-element.elementor-element-a8fa93f{--padding-top:120px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-182 .elementor-element.elementor-element-1d82c0c{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-182 .elementor-element.elementor-element-8a319b7{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-182 .elementor-element.elementor-element-7e5d049{width:100%;max-width:100%;text-align:center;}.elementor-182 .elementor-element.elementor-element-7e5d049.elementor-element{--align-self:center;}.elementor-182 .elementor-element.elementor-element-7e5d049 .elementor-heading-title{font-size:21px;}.elementor-182 .elementor-element.elementor-element-f1a3b9c{--container-widget-width:478px;--container-widget-flex-grow:0;width:var( --container-widget-width, 478px );max-width:478px;text-align:center;}.elementor-182 .elementor-element.elementor-element-f1a3b9c .elementor-heading-title{font-size:14px;}.elementor-182 .elementor-element.elementor-element-d13fdeb{--container-widget-width:478px;--container-widget-flex-grow:0;width:var( --container-widget-width, 478px );max-width:478px;text-align:center;}.elementor-182 .elementor-element.elementor-element-78f5be5{--container-widget-width:478px;--container-widget-flex-grow:0;width:var( --container-widget-width, 478px );max-width:478px;text-align:center;}.elementor-182 .elementor-element.elementor-element-78f5be5 .elementor-heading-title{font-size:14px;}.elementor-182 .elementor-element.elementor-element-0e43d07{width:100%;max-width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-0e43d07 */<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400&display=swap');

/* ==========================================
   CONTACT FORM — FINAL VERSION
========================================== */

body .elementor .wpcf7 .xem-contact-clean {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    font-family: "Inter", Arial, sans-serif !important;
}

body .elementor .wpcf7 .xem-contact-clean *,
body .elementor .wpcf7 .xem-contact-clean *::before,
body .elementor .wpcf7 .xem-contact-clean *::after {
    box-sizing: border-box !important;
}

body .elementor .wpcf7 .xem-contact-clean p {
    margin: 0 !important;
    padding: 0 !important;
}

body .elementor .wpcf7 .xem-contact-clean br {
    display: none !important;
}


/* ==========================================
   FIELDS
========================================== */

body .elementor .wpcf7 .xem-contact-field {
    width: 100% !important;
    height: 142px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;

    margin: 0 !important;

    padding-top: 0 !important;
    padding-right: 64px !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;

    border: none !important;
    border-bottom: 1px solid rgba(139, 139, 139, 0.24) !important;

    background: transparent !important;
}


/* ==========================================
   LABELS
   NAME / EMAIL / SUBJECT / MESSAGE
========================================== */

body .elementor .wpcf7 .xem-contact-clean .xem-contact-title {
    display: block !important;

    margin: 0 0 20px 0 !important;
    padding: 0 !important;

    font-family: "Inter", Arial, sans-serif !important;

    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 400 !important;

    line-height: 1 !important;

    letter-spacing: 2px !important;

    color: #8B8B8B !important;
    -webkit-text-fill-color: #8B8B8B !important;

    opacity: 1 !important;

    text-transform: uppercase !important;

    text-decoration: none !important;
    text-shadow: none !important;

    transform: none !important;
}
.wpcf7-response-output {
    color: #ffffff !important;
    border: none !important;
    background: transparent !important;
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    margin: 20px 0 0 0 !important;
    padding: 0 !important;
}

/* ==========================================
   CF7 WRAPPER
========================================== */

body .elementor .wpcf7 .xem-contact-clean .wpcf7-form-control-wrap {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* ==========================================
   INPUTS
========================================== */

body .elementor .wpcf7 .xem-contact-clean input.xem-contact-input {
    appearance: none !important;
    -webkit-appearance: none !important;

    display: block !important;

    width: 100% !important;
    height: 28px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    outline: none !important;

    border-radius: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    box-shadow: none !important;

    font-family: "Inter", Arial, sans-serif !important;

    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;

    line-height: 28px !important;

    letter-spacing: 0 !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    opacity: 1 !important;

    caret-color: #FFFFFF !important;
}


/* ==========================================
   MESSAGE FIELD
========================================== */

body .elementor .wpcf7 .xem-contact-clean .xem-contact-field-message {
    height: 178px !important;

    justify-content: flex-start !important;

    padding-top: 48px !important;
    padding-right: 64px !important;
    padding-bottom: 30px !important;
    padding-left: 0 !important;
}


body .elementor .wpcf7 .xem-contact-clean textarea.xem-contact-textarea {
    appearance: none !important;
    -webkit-appearance: none !important;

    display: block !important;

    width: 100% !important;
    height: 72px !important;
    min-height: 72px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    outline: none !important;

    border-radius: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    box-shadow: none !important;

    resize: none !important;

    font-family: "Inter", Arial, sans-serif !important;

    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;

    line-height: 1.5 !important;

    letter-spacing: 0 !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    opacity: 1 !important;

    caret-color: #FFFFFF !important;
}


/* ==========================================
   SEND BUTTON
========================================== */

body .elementor .wpcf7 .xem-contact-clean .xem-contact-send {
    width: 100% !important;

    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;

    margin: 0 !important;

    padding-top: 30px !important;
    padding-right: 64px !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;

    background: transparent !important;
}


body .elementor .wpcf7 .xem-contact-clean input.xem-contact-submit {
    appearance: none !important;
    -webkit-appearance: none !important;

    width: auto !important;
    min-width: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    outline: none !important;

    border-radius: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    box-shadow: none !important;

    font-family: "Inter", Arial, sans-serif !important;

    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 400 !important;

    line-height: 1 !important;

    letter-spacing: 2px !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    opacity: 1 !important;

    cursor: pointer !important;

    transition: opacity 0.25s ease !important;
}


body .elementor .wpcf7 .xem-contact-clean input.xem-contact-submit:hover {
    background: transparent !important;
    opacity: 0.6 !important;
}


/* ==========================================
   CONTACT FORM 7 CLEANUP
========================================== */

body .elementor .wpcf7 .xem-contact-clean .wpcf7-spinner {
    display: none !important;
}


body .elementor .wpcf7 .xem-contact-clean .wpcf7-not-valid-tip {
    margin-top: 7px !important;

    font-family: "Inter", Arial, sans-serif !important;

    font-size: 10px !important;
    font-weight: 400 !important;

    line-height: 1.3 !important;

    letter-spacing: 0 !important;

    color: #8B8B8B !important;
    -webkit-text-fill-color: #8B8B8B !important;
}


body .elementor .wpcf7 form .wpcf7-response-output {
    margin: 20px 0 0 0 !important;
    padding: 0 !important;

    border: none !important;

    font-family: "Inter", Arial, sans-serif !important;

    font-size: 11px !important;
    font-weight: 400 !important;

    color: #8B8B8B !important;
}


/* ==========================================
   AUTOFILL
========================================== */

body .elementor .wpcf7 .xem-contact-clean input:-webkit-autofill,
body .elementor .wpcf7 .xem-contact-clean input:-webkit-autofill:hover,
body .elementor .wpcf7 .xem-contact-clean input:-webkit-autofill:focus {
    -webkit-text-fill-color: #FFFFFF !important;

    box-shadow: 0 0 0 1000px transparent inset !important;

    transition: background-color 99999s ease-out 0s !important;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1024px) {

    body .elementor .wpcf7 .xem-contact-field {
        height: 125px !important;

        padding-left: 0 !important;
        padding-right: 42px !important;
    }

    body .elementor .wpcf7 .xem-contact-clean .xem-contact-field-message {
        height: 160px !important;

        padding-top: 40px !important;
        padding-right: 42px !important;
        padding-bottom: 25px !important;
        padding-left: 0 !important;
    }

    body .elementor .wpcf7 .xem-contact-clean .xem-contact-send {
        padding-top: 26px !important;
        padding-right: 42px !important;
        padding-left: 0 !important;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    body .elementor .wpcf7 .xem-contact-field {
        height: 105px !important;

        padding-left: 0 !important;
        padding-right: 20px !important;
    }

    body .elementor .wpcf7 .xem-contact-clean .xem-contact-title {
        margin-bottom: 14px !important;

        font-size: 10px !important;

        letter-spacing: 1.8px !important;
    }

    body .elementor .wpcf7 .xem-contact-clean input.xem-contact-input {
        font-size: 14px !important;
    }

    body .elementor .wpcf7 .xem-contact-clean .xem-contact-field-message {
        height: 145px !important;

        padding-top: 32px !important;
        padding-right: 20px !important;
        padding-bottom: 20px !important;
        padding-left: 0 !important;
    }

    body .elementor .wpcf7 .xem-contact-clean textarea.xem-contact-textarea {
        height: 65px !important;
        min-height: 65px !important;

        font-size: 14px !important;
    }

    body .elementor .wpcf7 .xem-contact-clean .xem-contact-send {
        padding-top: 24px !important;
        padding-right: 20px !important;
        padding-left: 0 !important;
    }

}
/* ==========================================
   BIG CLICKABLE AREA FOR FIELDS
========================================== */

body .elementor .wpcf7 .xem-contact-field {
    position: relative !important;
    cursor: text !important;
}

/* Label stays visible above the input */
body .elementor .wpcf7 .xem-contact-clean .xem-contact-title {
    position: relative !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

/* Make the CF7 wrapper cover the whole field */
body .elementor .wpcf7 .xem-contact-clean .wpcf7-form-control-wrap {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    z-index: 1 !important;
}

/* NAME / EMAIL / SUBJECT */
body .elementor .wpcf7 .xem-contact-clean input.xem-contact-input {
    width: 100% !important;
    height: 100% !important;

    padding: 58px 64px 18px 0 !important;

    cursor: text !important;
}

/* MESSAGE */
body .elementor .wpcf7 .xem-contact-clean .xem-contact-field-message
.wpcf7-form-control-wrap {
    position: absolute !important;
    inset: 0 !important;
}

body .elementor .wpcf7 .xem-contact-clean textarea.xem-contact-textarea {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;

    padding: 82px 64px 25px 0 !important;

    cursor: text !important;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1024px) {

    body .elementor .wpcf7 .xem-contact-clean input.xem-contact-input {
        padding-right: 42px !important;
    }

    body .elementor .wpcf7 .xem-contact-clean textarea.xem-contact-textarea {
        padding-right: 42px !important;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    body .elementor .wpcf7 .xem-contact-clean input.xem-contact-input {
        padding: 48px 20px 14px 0 !important;
    }

    body .elementor .wpcf7 .xem-contact-clean textarea.xem-contact-textarea {
        padding: 64px 20px 18px 0 !important;
    }

}
</style>/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a8fa93f */.elementor-182 .elementor-element.elementor-element-a8fa93f {
    background-attachment: fixed !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

@media (max-width: 1512px) {
    .elementor-182 .elementor-element.elementor-element-a8fa93f {
        background-attachment: fixed !important;
    }
}

@media (max-width: 1024px) {
    .elementor-182 .elementor-element.elementor-element-a8fa93f {
        background-attachment: fixed !important;
    }
}

@media (max-width: 767px) {
    .elementor-182 .elementor-element.elementor-element-a8fa93f {
        background-attachment: fixed !important;
    }
}/* End custom CSS */
/* Start custom CSS *//* Responsive spacing correction — layout only */
.elementor-123 .elementor-element-e4dacde,
.elementor-123 .elementor-element-6100cb0,
.elementor-123 .elementor-element-eee0c65,
.elementor-123 .elementor-element-8c3ece2,
.elementor-123 .elementor-element-2730ea1,
.elementor-123 .elementor-element-002aee2,
.elementor-123 .elementor-element-fbea9f9,
.elementor-123 .elementor-element-3f35622,
.elementor-123 .elementor-element-8585580,
.elementor-123 .elementor-element-264b6c4,
.elementor-123 .elementor-element-26abb79,
.elementor-123 .elementor-element-a8fa93f {
  padding-left: clamp(120px, 20vw, 380px) !important;
  padding-right: clamp(120px, 20vw, 380px) !important;
}

@media (max-width: 1024px) {
  .elementor-123 .elementor-element-e4dacde,
  .elementor-123 .elementor-element-6100cb0,
  .elementor-123 .elementor-element-eee0c65,
  .elementor-123 .elementor-element-8c3ece2,
  .elementor-123 .elementor-element-2730ea1,
.elementor-123 .elementor-element-002aee2,
  .elementor-123 .elementor-element-fbea9f9,
  .elementor-123 .elementor-element-3f35622,
  .elementor-123 .elementor-element-8585580,
  .elementor-123 .elementor-element-264b6c4,
  .elementor-123 .elementor-element-26abb79,
  .elementor-123 .elementor-element-a8fa93f {
    padding-left: 56px !important;
    padding-right: 56px !important;
  }
}

@media (max-width: 767px) {
  .elementor-123 .elementor-element-e4dacde,
  .elementor-123 .elementor-element-6100cb0,
  .elementor-123 .elementor-element-eee0c65,
  .elementor-123 .elementor-element-8c3ece2,
  .elementor-123 .elementor-element-2730ea1,
.elementor-123 .elementor-element-002aee2,
  .elementor-123 .elementor-element-fbea9f9,
  .elementor-123 .elementor-element-3f35622,
  .elementor-123 .elementor-element-8585580,
  .elementor-123 .elementor-element-264b6c4,
  .elementor-123 .elementor-element-26abb79,
  .elementor-123 .elementor-element-a8fa93f {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-123 .elementor-element-066e038 .elementor-heading-title {
    font-size: 36px !important;
    line-height: 1 !important;
  }
  .elementor-123 .elementor-element-4169249 .elementor-heading-title {
    font-size: 40px !important;
    line-height: 1.05 !important;
  }
  .elementor-123 .elementor-element-bf0103d .elementor-heading-title,
  .elementor-123 .elementor-element-dd36d7a .elementor-heading-title {
    font-size: 48px !important;
    line-height: 1.05 !important;
  }
  .elementor-123 .elementor-element-aced882 .elementor-heading-title {
    font-size: 14px !important;
    line-height: 1.15 !important;
  }
}

/* Center and balance the four image/text feature rows on desktop */
@media (min-width: 1025px) {
  .elementor-123 .elementor-element-fbea9f9,
  .elementor-123 .elementor-element-3f35622,
  .elementor-123 .elementor-element-8585580 {
    padding-left: clamp(100px, 15vw, 300px) !important;
    padding-right: clamp(100px, 15vw, 300px) !important;
  }

  .elementor-123 .elementor-element-4c4086f,
  .elementor-123 .elementor-element-1cf84e5,
  .elementor-123 .elementor-element-57b5771,
  .elementor-123 .elementor-element-8af088d {
    width: 100% !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 32px !important;
    align-items: center !important;
    justify-items: stretch !important;
  }

  .elementor-123 .elementor-element-dca5783,
  .elementor-123 .elementor-element-04e1d42,
  .elementor-123 .elementor-element-c9d0401,
  .elementor-123 .elementor-element-07bea95 {
    width: 100% !important;
    max-width: none !important;
    align-self: center !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'EXPANSIVA';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://michel-chirivi.ch/wp-content/uploads/2026/08/Expansiva.ttf') format('truetype');
}
@font-face {
	font-family: 'EXPANSIVA';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://michel-chirivi.ch/wp-content/uploads/2026/08/Expansiva-bold.ttf') format('truetype');
}
@font-face {
	font-family: 'EXPANSIVA';
	font-style: italic;
	font-weight: bold;
	font-display: auto;
	src: url('https://michel-chirivi.ch/wp-content/uploads/2026/08/Expansiva-bold-italic.ttf') format('truetype');
}
@font-face {
	font-family: 'EXPANSIVA';
	font-style: italic;
	font-weight: normal;
	font-display: auto;
	src: url('https://michel-chirivi.ch/wp-content/uploads/2026/08/Expansiva-italic.ttf') format('truetype');
}
/* End Custom Fonts CSS */