/* Deployment copy of the scoped contact and newsletter styles. */
/* Scope the added Contact fields so existing forms keep their current styles. */
.content-form form.vcr-contact .vcr-country > .gfield_label,
.content-form form.vcr-contact .vcr-interests > .gfield_label {
    display: block;
    margin-bottom: 10px;
    color: #1f1d20;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
}

.content-form form.vcr-contact .vcr-country .gfield_required {
    display: inline !important;
    color: inherit;
}

.content-form form.vcr-contact .vcr-interests .gfield_description {
    clear: none;
    padding: 0 0 10px;
    color: #1f1d20;
    font-size: 1rem;
    line-height: 1.5;
}

.content-form form.vcr-contact .vcr-interests > .gfield_label {
    float: left;
    width: auto;
    margin: 0 5px 0 0;
}

.content-form form.vcr-contact .vcr-interests .ginput_container_checkbox {
    clear: both;
}

.content-form form.vcr-contact .vcr-interests .gfield_checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 28px;
    margin: 0;
}

.content-form form.vcr-contact .vcr-interests .gchoice {
    margin: 0;
}

.content-form form.vcr-contact :is(.vcr-interests, .vcr-account) input[type="checkbox"]:focus-visible + label::before {
    outline: 2px solid #5658bd;
    outline-offset: 3px;
}

.content-form form.vcr-contact .vcr-country select:focus-visible {
    outline: 2px solid #5658bd;
    outline-offset: 3px;
}

/* Keep country and branch together; override Gravity Forms' full-width grid class. */
.content-form form.vcr-contact :is(.vcr-country, .vcr-location) {
    min-width: 0;
}

@media (min-width: 768px) {
    .content-form form.vcr-contact :is(.vcr-country, .vcr-location) {
        grid-column: span 6 !important;
    }

    .content-form form.vcr-contact .vcr-country > .gfield_label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
        border: 0;
    }
}

/* Newsletter form only: keep the existing footer palette and readable controls. */
.footer form.vcr-newsletter {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.footer form.vcr-newsletter .gform-body,
.footer form.vcr-newsletter input[type="email"] {
    width: 100%;
    max-width: none;
}

.footer form.vcr-newsletter .gform_fields {
    row-gap: 22px !important;
}

.footer form.vcr-newsletter .vcr-country > .gfield_label,
.footer form.vcr-newsletter .vcr-interests > .gfield_label {
    display: block !important;
    margin: 0 0 8px;
    color: #cbfdc0;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
}

.footer form.vcr-newsletter select {
    box-sizing: border-box;
    width: 100%;
    min-height: 50px;
    padding: 12px 40px 12px 20px;
    color: #fff;
    background-color: #1f1d20;
    border: 1px solid #cbfdc0;
    border-radius: 25px;
    font: inherit;
    color-scheme: dark;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23cbfdc0' stroke-width='1.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 18px center;
}

.footer form.vcr-newsletter .gfield_checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
}

.footer form.vcr-newsletter .gchoice,
.footer form.vcr-newsletter .ginput_container_consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.footer form.vcr-newsletter input[type="checkbox"] {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin: 2px 0 0;
    accent-color: #cbfdc0;
    cursor: pointer;
}

.footer form.vcr-newsletter .gchoice label,
.footer form.vcr-newsletter .ginput_container_consent label {
    max-width: none;
    margin: 0;
    color: #fff;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    cursor: pointer;
}

.footer form.vcr-newsletter .gfield_description {
    padding: 0 0 10px;
    color: #d9d7da;
    font-size: .9rem;
    line-height: 1.5;
}

.footer form.vcr-newsletter .vcr-interests > .gfield_label {
    float: left;
    width: auto;
    margin: 0 5px 0 0;
}

.footer form.vcr-newsletter .vcr-interests > .gfield_description {
    clear: none;
    padding: 0 0 10px;
    font-size: 1rem;
}

.footer form.vcr-newsletter .vcr-interests .ginput_container_checkbox {
    clear: both;
}

.footer form.vcr-newsletter .ginput_container_consent label {
    color: #d9d7da;
    font-size: .9rem;
}

.footer form.vcr-newsletter .gfield_required {
    color: #cbfdc0;
}

.footer form.vcr-newsletter .gform_footer {
    justify-content: flex-start;
    align-self: stretch;
}

.footer form.vcr-newsletter :is(input, select, button):focus-visible {
    outline: 2px solid #a3a4ff !important;
    outline-offset: 4px;
}

.footer form.vcr-newsletter :is(.vcr-email, .vcr-country) {
    min-width: 0;
}

@media (min-width: 768px) {
    .footer form.vcr-newsletter .vcr-email {
        grid-column: span 7 !important;
    }

    .footer form.vcr-newsletter .vcr-country {
        grid-column: span 5 !important;
    }

    .footer form.vcr-newsletter .vcr-country > .gfield_label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
        border: 0;
    }
}

@media (max-width: 575px) {
    .footer form.vcr-newsletter .gfield_checkbox {
        gap: 12px 18px;
    }
}

/* Translated catalogue questions can wrap; do not reserve a fixed heading height. */
@media (max-width: 767px) {
    .content-form form.vcr-contact .gfield.brochure-download-box {
        flex-direction: column;
        align-items: stretch;
    }

    .content-form form.vcr-contact .gfield.brochure-download-box > .gfield_description:not(.gfield_validation_message) {
        position: static;
        order: -1;
        margin: 0;
        padding: 0;
        line-height: 1.35;
    }

    .content-form form.vcr-contact .gfield.brochure-download-box > .ginput_container_radio {
        padding-top: 0;
    }

    .content-form form.vcr-contact .gfield.brochure-download-box > .gfield_validation_message {
        position: static;
        order: 2;
        margin-top: 10px;
    }
}

/* Native consent fields have one accessible label beside the checkbox. */
.content-form form.vcr-contact .vcr-marketing-consent .ginput_container_consent{display:flex;gap:10px;align-items:flex-start}
.content-form form.vcr-contact .vcr-marketing-consent input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:3px 0 0;appearance:auto;opacity:1;position:static;accent-color:#1f1d20}
.content-form form.vcr-contact .vcr-marketing-consent .ginput_container_consent > label{position:static;max-width:none;line-height:1.5;font-size:.9rem;font-weight:400;cursor:pointer}
.content-form form.vcr-contact .vcr-marketing-consent .ginput_container_consent > label:before{display:none!important}
.content-form form.vcr-contact .vcr-marketing-consent input:focus-visible{outline:2px solid #5658bd;outline-offset:3px}
