/* Gravity Forms */

.gform_fields {
    flex-wrap: wrap;
    --custom-theme-flex-gap: 14px;
    gap: 8px var(--custom-theme-flex-gap) !important;
}
.gfield {
    --custom-theme-flex-span: 12;
}
.gfield--width-half {
    --custom-theme-flex-span: 6;
}
.ginput_complex .ginput_left,
.ginput_complex .ginput_right {
    --custom-theme-flex-span: 6;
}
.gform_hidden {
    display: none!important;
}
.gform_footer {
    margin-top: 23px;
    display: flex;
    justify-content: flex-end;
}
.gf_clear {
    display: none;
}
.gfield_required {
    margin-left: 0.1em;
    color: var(--wp--preset--color--red)
}
.gfield_label,
.gform-field-label--type-sub {
    display: block;
    font-size: 0.75rem;
    line-height: 1;
    height: 12px;
    color: #000;
    letter-spacing: -0.04em;
    margin-bottom: 3px;
    transform: translateY(21px);
    position: relative;
    z-index: 1;
    padding-left: 9px;
    transition: 0.2s ease-out;
}
.hidden_label > .gfield_label {
    display: none;
}
.gfield_label.is-dirty,
.gfield_label.is-focus {
    transform: none;
    font-size: 0.625rem;
}
.has-black-background-color .gfield_label.is-dirty,
.has-black-background-color .gfield_label.is-focus {
    color: #FFF;
}
.gfield--type-select .gfield_label {
    transform: none;
    padding-left: 0;
    margin-bottom: 9px;
}

.form input:where(:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"])),
.form textarea,
#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single,
#page .chosen-container-single .chosen-single,
.select--chosen-not-supported {
    border: 1px solid transparent ;
    color: #000;
    border-radius: 11px;
    background: var(--wp--preset--color--light-grey);
    height: 22px;
    padding: 0 9px;
    font-size: 0.75rem;
    line-height: 1;
    width: 100%;
}
.form input:where(:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"])):focus,
.form textarea:focus,
#page .gform_wrapper.gravity-theme .chosen-container-active .chosen-single,
#page .chosen-container-active .chosen-single,
.select--chosen-not-supported:focus {
    border-color: var(--wp--preset--color--dark-grey);
    outline: 0;
}
.form input:where(:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]))::placeholder,
.form textarea::placeholder {
    color: #000;
    opacity: 1;
}
.form input:where(:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"])):disabled,
.form select:disabled,
.form textarea:disabled,
#page .gform_wrapper.gravity-theme select:disabled + .chosen-container .chosen-single,
.select--chosen-not-supported:disabled {
    pointer-events: none;
    background: #EBEBEB;
    border-color: #EBEBEB;
}

.form textarea {
    resize: none;
    height: 108px!important;
    padding-top: 5px;
}
.form select {
    max-width: 100%;
    position: relative;
}

#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single,
#page .chosen-container-single .chosen-single,
.select--chosen-not-supported {
    display: block;
    background: var(--wp--preset--color--red);
    color: #FFF;
    width: 218px;
}
#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single,
#page .chosen-container-single .chosen-single {
    box-shadow: none;
}
#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single span,
#page .chosen-container-single .chosen-single span {
    line-height: 22px;
}
#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single div,
#page .chosen-container-single .chosen-single div {
    width: 20px;
    right: 14px;
}
#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single b,
#page .chosen-container-single .chosen-single b {
    background: none!important;
    top: 0!important;
}
#page .chosen-container-single .chosen-single b::before {
    content: 'v';
    font-weight: 400;
    line-height: 20px;
    display: inline-block;
    margin-top: -1px;
}
#page .gform_wrapper.gravity-theme .chosen-with-drop .chosen-single b,
#page .chosen-with-drop .chosen-single b {
    transform: scaleY(-1);
}
#page .gform_wrapper.gravity-theme .chosen-container-single .chosen-drop,
#page .chosen-container-single .chosen-drop {
    background: var(--wp--preset--color--red);
    color: #FFF;
    margin-top: 10px;
    border-radius: 10px;
    overflow: hidden;
    border: 0;
}
#page .gform_wrapper.gravity-theme .chosen-container .chosen-results,
#page .chosen-container .chosen-results {
    margin: 0;
    padding: 0;
}
#page .gform_wrapper.gravity-theme .chosen-container .chosen-results li,
#page .chosen-container .chosen-results li {
    font-size: 0.625rem;
    line-height: 1.2;
    font-weight: 500;
    padding: 8px;
    color: #FFF;
}
#page .gform_wrapper.gravity-theme .chosen-container .chosen-results li.result-selected,
#page .gform_wrapper.gravity-theme .chosen-container .chosen-results li.highlighted,
#page .chosen-container .chosen-results li.result-selected,
#page .chosen-container .chosen-results li.highlighted {
    background: none;
}
#page .gform_wrapper.gravity-theme .chosen-container .chosen-results li.result-selected::before,
#page .gform_wrapper.gravity-theme .chosen-container .chosen-results li.highlighted::before,
#page .chosen-container .chosen-results li.result-selected::before,
#page .chosen-container .chosen-results li.highlighted::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
    margin-right: 4px;
    vertical-align: top;
    margin-top: 4px;
}

#page .gform_wrapper.gravity-theme select:disabled + .chosen-container {
    pointer-events: none;
}

.gfield input[type="checkbox"],
.gfield input[type="radio"] {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
}

fieldset.gfield--type-consent,
fieldset.gfield--type-email,
fieldset.gfield--type-password {
    padding: 0;
    border: 0;
    margin: 0;
}
.gfield_consent_label,
.gfield_checkbox label {
    display: flex;
    gap: 14px;
}
.gfield_consent_label::before,
.gfield_checkbox label::before {
    content: '';
    flex: 0 0 auto;
    background: #FFF;
    width: 20px;
    height: 20px;
    border: 1px solid var(--wp--preset--color--neutral-300);
    border-radius: 3px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.gfield_consent_label .gfield_required {
    display: none;
}
.gfield--type-consent input:checked + .gfield_consent_label::before,
.gfield_checkbox  input:checked + label::before{
    content: '✓';
}


.gfield_radio {
    display: flex;
}
.gfield_radio > div {
    margin-right: 20px;
    position: relative;
}
.gfield_radio label {
    display: flex;
    align-items: flex-start;
    max-width: none;
}
.gfield_radio label:before {
    content: '';
    background: #FFF;
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.gfield_radio input:checked + label:before {
    content: '✓';
}

.gfield_validation_message {
    font-size: 0.75rem;
    margin-top: 5px;
}
.gform_confirmation_message {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.3;
    margin-top: 10px;
}
.gform_submission_error {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--wp--preset--color--red-3);
}
.gform_submission_error .gform-icon {
    display: none;
}
.gform_validation_errors {
    font-size: 0.75rem;
    margin-bottom: 32px;
    outline: 0!important;
}
.is-style-inline_wrapper .gform_validation_errors {
    display: none;
}
.gform_validation_errors a {
    color: inherit;
}

.gfield_error input[aria-invalid="true"],
.gfield_error textarea[aria-invalid="true"]{
    border-color: var(--wp--preset--color--red-3);
}
.gfield_error .gfield_label {
    color: var(--wp--preset--color--red-3);
}


.gfield--type-honeypot {
    display: none !important;
    left: -9000px;
    position: absolute !important;
}

.is-style-inline_wrapper {
    min-height: 116px;
}
.is-style-inline_wrapper .is-style-inline {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 28px;
}
.is-style-inline_wrapper .is-style-inline .gform_footer{
    margin-top: 6px;; /* force alignement with fields */
}
.is-style-inline_wrapper .gfield {
    width: 232px;
}

@media screen and (max-width: 991px) {
    .gform_wrapper.gravity-theme .gfield.gfield--width-third {
        grid-column: span 12!important;
    }
    .gform_wrapper.gravity-theme .gfield input.large {
        width: auto!important;
    }
    .gform_wrapper.gravity-theme .gfield input[autocomplete="given-name"] {
        width: 165px!important;
    }
    .gform_wrapper.gravity-theme .gfield input[autocomplete="family-name"] {
        width: 155px!important;
    }
    .gform_wrapper.gravity-theme .gfield input[autocomplete="tel"] {
        width: 218px!important;
    }
    .gform_wrapper.gravity-theme .gfield input[type="email"] {
        width: 232px!important;
    }

    .gfield_label,
    .gform-field-label--type-sub {
        font-size: 1rem;
        padding-left: 18px;
    }

    .form input:where(:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"])), .form textarea, #page .gform_wrapper.gravity-theme .chosen-container-single .chosen-single, #page .chosen-container-single .chosen-single, .select--chosen-not-supported {
        font-size: 1rem;
        height: 32px;
        line-height: 32px;
        padding: 0 18px;
        border-radius: 16px;
    }

    .is-style-inline_wrapper .is-style-inline .gform_footer {
        margin-top: 10px;
    }

}
@media screen and (max-width: 767px) {
    .is-style-inline_wrapper {
        min-height: 0;
    }
    .is-style-inline_wrapper .is-style-inline {
        flex-direction: column;
    }
    .is-style-inline_wrapper .is-style-inline .gform_footer {
        margin-top: 0;
    }

}
/* Pop-up form specific styles */
.page-template-page--form-pop-up--iframe {
    padding: 0!important;
}
.page-template-page--form-pop-up--iframe .site-header {
    display: none;
}
.page-template-page--form-pop-up--iframe .site {
    padding-top: 0;
}
.page-template-page--form-pop-up--iframe .site-content::after {
    display: none;
}
.page-template-page--form-pop-up--full .block-section__content {
    max-width: 992px!important;
}

.page-template-page--form-pop-up:has(.block-section.has-black-background-color) {
    /* fix glitch where we can see a thin white line after the content */
    background: #000;
}
.pop-up-form-content .block-section {
    padding: 38px 50px 17px!important;
    max-width: 992px;
    margin: 0!important;
}
.pop-up-form-content .block-section::before,
.pop-up-form-content .block-section::after {
    display: none;
}
.pop-up-form-content .block-section.has-bg-grey-background-color {
    background-repeat: no-repeat;
    background-size: 360px auto;
    background-position: left -140px bottom -227px, right -220px top -180px;
    background-image: url('data:image/svg+xml;charset=utf-8,<svg width="360" height="360" viewBox="0 0 360 360" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="180" cy="180" r="180" fill="%23E0E0E0"></circle></svg>'),
        url('data:image/svg+xml;charset=utf-8,<svg width="360" height="360" viewBox="0 0 360 360" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="180" cy="180" r="180" fill="%23E0E0E0"></circle></svg>');
}
.pop-up-form-content .block-section.has-black-background-color {
    background-repeat: repeat-x;
    background-size: 520px auto;
    background-position: center center;
    background-image: url('data:image/svg+xml;charset=utf-8,<svg width="520" height="360" viewBox="0 0 520 360" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="260" cy="180" r="180" fill="%23212121"></circle></svg>');
}

.page-template-page--form-pop-up .block-h1 {
    font-size: 6rem;
    line-height: 1;
    margin-bottom: 0;
}
.page-template-page--form-pop-up .block-column:has(.block-h1) ~ .block-column {
    flex: 1 1 auto;
    display: flex;
    align-items: flex-end;
}
.page-template-page--form-pop-up .block-column:has(.block-h1) ~ .block-column .block-column__content {
    width: 100%;
    padding-bottom: 13px;
}
.page-template-page--form-pop-up .block-columns {
    margin-top: 0;
    margin-bottom: 29px;
}

@media screen and (max-width: 991px) {
    .page-template-page--form-pop-up .block-h1 {
        font-size: 5rem;
    }
    .page-template-page--form-pop-up .block-paragraph {
        text-align: center;
    }
    .pop-up-form-content .block-columns__columns {
        flex-direction: column;
        align-items: center;
    }

    .page-template-page--form-pop-up .block-column:has(.block-h1) ~ .block-column {
        width: 100%;
        justify-content: center;
        border-bottom: 1px dashed var(--wp--preset--color--red-2);
    }
    .page-template-page--form-pop-up .block-column:has(.block-h1) ~ .block-column .block-column__content {
        width: auto;
        padding-bottom: 37px;
    }
}
@media screen and (max-width: 767px) {
    .pop-up-form-content .block-section {
        padding: 29px 26px!important;
    }

    .page-template-page--form-pop-up .block-h1 {
        font-size: min(17vw, 5rem);
    }
    .pop-up-form-content .block-section.has-black-background-color {
        background-size: auto 140%;
        background-position: 270px center;
    }
}


/* Brochure */
.page-template-page--form-pop-up .block-section__content > .block-h1 {
    font-size: 2.5rem;
    margin-bottom: 49px;
}
@media screen and (max-width: 767px) {
    .page-template-page--form-pop-up .block-section__content > .block-h1 {
        font-size: 1.625rem;
        margin-bottom: 34px;
    }
}

