/* ==========================================================================
   INSIGNEO WEBSITE SUBSCRIPTION — V3
   --------------------------------------------------------------------------
   ABSOLUTE SCOPE RULE:
   Every visual selector in this file lives under:
   #insigneo-subscription-module

   It must not alter the native Insigneo header, footer, another page,
   another Gravity Form, or any element outside this module.
   ========================================================================== */


/* ==========================================================================
   0. MODULE / BRAND TOKENS
   ========================================================================== */

#insigneo-subscription-module {
    --ins-sub-navy: #0e233f;
    --ins-sub-blue: #00b7eb;
    --ins-sub-sky: #a1e3fb;
    --ins-sub-bone: #e7f1fa;
    --ins-sub-white: #ffffff;

    --ins-sub-ink: #0e233f;
    --ins-sub-muted: #66758a;
    --ins-sub-line: rgba(14, 35, 63, 0.14);
    --ins-sub-line-soft: rgba(14, 35, 63, 0.08);
    --ins-sub-soft: rgba(231, 241, 250, 0.62);
    --ins-sub-error: #b3261e;
    --ins-sub-ok: #1e7d43;

    --ins-sub-display: "le-monde-livre-std", Georgia, serif;
    --ins-sub-ui: "Aeonik", aeonik, "Helvetica Neue", Arial, sans-serif;

    box-sizing: border-box;
    width: 100%;
    padding: 0 18px clamp(42px, 7vw, 88px);
    background: var(--ins-sub-bone);
    color: var(--ins-sub-ink);
    font-family: var(--ins-sub-ui);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

#insigneo-subscription-module *,
#insigneo-subscription-module *::before,
#insigneo-subscription-module *::after {
    box-sizing: border-box;
}

#insigneo-subscription-module .ins-sub-shell {
    width: min(660px, 100%);
    margin: 0 auto;
    padding-top: clamp(42px, 7vw, 88px);
}

#insigneo-subscription-module .ins-sub-card {
    width: 100%;
    padding: clamp(25px, 4vw, 34px);
    background: var(--ins-sub-white);
    border: 1px solid var(--ins-sub-line);
    border-radius: 12px;
    box-shadow:
        0 18px 44px rgba(14, 35, 63, 0.07),
        0 2px 8px rgba(14, 35, 63, 0.04);
}


/* ==========================================================================
   0.1 NATIVE HEADER BACKDROP
   --------------------------------------------------------------------------
   The theme's own .banner / .no-graphic-banner CSS is what paints the navy
   behind the native #masthead on regular Insigneo pages.

   We intentionally do NOT style #masthead, toolbar, menus, logo or footer.
   This empty native banner is collapsed to the normal 148px overlap depth,
   so it paints behind the header and contributes zero extra page height.
   ========================================================================== */

#insigneo-subscription-module > .ins-sub-native-header-backdrop {
    width: calc(100% + 36px) !important;

    height: 178px !important;
    min-height: 178px !important;
    max-height: 178px !important;

    margin:
        -148px
        -18px
        0 !important;

    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

#insigneo-subscription-module > .ins-sub-native-header-backdrop::before {
    height: 178px !important;
}

#insigneo-subscription-module > .ins-sub-native-header-backdrop::after {
    display: none !important;
}



/* ==========================================================================
   1. BRAND BAR
   ========================================================================== */

#insigneo-subscription-module .ins-sub-brandbar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
    margin: 0 0 26px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--ins-sub-line);
}

#insigneo-subscription-module .ins-sub-brand {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    text-decoration: none;
}

#insigneo-subscription-module .ins-sub-brand-logo {
    display: block;
    width: auto;
    height: 30px;
    max-width: 180px;
    margin: 0;
    padding: 0;
    object-fit: contain;
}



/* ==========================================================================
   2. GRAVITY FORMS — LOCAL RESET
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 {
    width: 100%;
    margin: 0;
    color: var(--ins-sub-ink);
    font-family: var(--ins-sub-ui);
}

#insigneo-subscription-module #gform_wrapper_6 .gform_required_legend,
#insigneo-subscription-module #gform_wrapper_6 .gform_heading {
    display: none;
}

#insigneo-subscription-module #gform_wrapper_6 .gform-body,
#insigneo-subscription-module #gform_wrapper_6 .gform_body {
    width: 100%;
}

/*
 * Gravity Forms 3.x Orbital owns the structural 12-column grid.
 * Field widths are configured natively in Form 6:
 * full = 12 columns, half = 6 columns.
 *
 * Do not override display/grid-template-columns/grid-column here.
 */
#insigneo-subscription-module #gform_wrapper_6 #gform_fields_6,
#insigneo-subscription-module #gform_wrapper_6 .gform_fields {
    width: 100% !important;
    --gf-form-gap-x: 14px;
    --gf-form-gap-y: 0px;
}

#insigneo-subscription-module #gform_wrapper_6 .gfield {
    min-width: 0;
    margin: 0;
    padding: 0;
}


/* ==========================================================================
   3. INTRO — INSIGNEO / AMURA TYPOGRAPHIC LANGUAGE
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 .insigneo-subscription-intro {
    margin: 0 0 30px;
}

#insigneo-subscription-module #gform_wrapper_6 .insigneo-subscription-intro h2 {
    margin: 0 0 9px;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-display);
    font-size: clamp(31px, 5vw, 40px);
    font-weight: 400;
    line-height: 1.04;
    letter-spacing: -0.02em;
}

#insigneo-subscription-module #gform_wrapper_6 .insigneo-subscription-intro p {
    max-width: 560px;
    margin: 0;
    color: var(--ins-sub-muted);
    font-family: var(--ins-sub-ui);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.55;
}


/* ==========================================================================
   4. SECTION TITLES
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 .gsection {
    margin: 0 0 14px;
    padding: 0;
    border: 0;
}

#insigneo-subscription-module #gform_wrapper_6 #field_6_10,
#insigneo-subscription-module #gform_wrapper_6 #field_6_12,
#insigneo-subscription-module #gform_wrapper_6 #field_6_14 {
    margin-top: 12px;
}

#insigneo-subscription-module #gform_wrapper_6 .gsection_title {
    margin: 0;
    padding: 0;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-ui);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}


/*
 * Required markers for the three visible preference sections.
 * The actual required fields are 11 (topics), 13 (frequency) and 15 (language).
 * Their inner labels are intentionally hidden by the card UI, so the visual
 * asterisk belongs on the visible section heading instead.
 */
#insigneo-subscription-module #gform_wrapper_6 #field_6_10 .gsection_title::after,
#insigneo-subscription-module #gform_wrapper_6 #field_6_12 .gsection_title::after,
#insigneo-subscription-module #gform_wrapper_6 #field_6_14 .gsection_title::after {
    content: " *";
    color: var(--ins-sub-blue);
    font-size: 10px;
    font-weight: 600;
}


/* ==========================================================================
   5. STANDARD FIELDS
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 #field_6_3,
#insigneo-subscription-module #gform_wrapper_6 #field_6_4,
#insigneo-subscription-module #gform_wrapper_6 #field_6_5,
#insigneo-subscription-module #gform_wrapper_6 #field_6_6,
#insigneo-subscription-module #gform_wrapper_6 #field_6_7,
#insigneo-subscription-module #gform_wrapper_6 #field_6_8,
#insigneo-subscription-module #gform_wrapper_6 #field_6_9 {
    margin-bottom: 16px;
}

#insigneo-subscription-module #gform_wrapper_6 .gfield_label {
    display: block;
    margin: 0 0 6px;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-ui);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.35;
}

#insigneo-subscription-module #gform_wrapper_6 .gfield_required {
    color: var(--ins-sub-blue);
    font-size: 10px;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-opt {
    color: var(--ins-sub-muted);
    font-weight: 400;
}

#insigneo-subscription-module #gform_wrapper_6 input[type="text"],
#insigneo-subscription-module #gform_wrapper_6 input[type="email"],
#insigneo-subscription-module #gform_wrapper_6 select {
    width: 100% !important;
    min-height: 44px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid var(--ins-sub-line) !important;
    border-radius: 6px !important;
    outline: 0;
    background: var(--ins-sub-white) !important;
    color: var(--ins-sub-navy) !important;
    box-shadow: none !important;
    font-family: var(--ins-sub-ui) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

#insigneo-subscription-module #gform_wrapper_6 input[type="text"]:focus,
#insigneo-subscription-module #gform_wrapper_6 input[type="email"]:focus,
#insigneo-subscription-module #gform_wrapper_6 select:focus {
    border-color: var(--ins-sub-blue) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(0, 183, 235, 0.12) !important;
}


/* ==========================================================================
   6. TOPICS — CLEAN ROWS + REAL SWITCHES
   ========================================================================== */

#insigneo-subscription-module #field_6_11 > .gfield_label {
    display: none;
}

#insigneo-subscription-module #field_6_11 {
    margin-bottom: 27px !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gfield_checkbox {
    display: block !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice {
    position: relative;
    display: block !important;
    width: 100%;
    height: auto !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 13px 0 !important;
    border-bottom: 1px solid var(--ins-sub-line-soft);
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice:last-of-type {
    border-bottom: 0;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > input[type="checkbox"] {
    position: absolute !important;
    z-index: 3;
    top: 14px;
    right: 0;
    width: 52px !important;
    height: 30px !important;
    margin: 0 !important;
    opacity: 0;
    cursor: pointer;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > label {
    position: relative;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 0 70px 0 0 !important;
    color: var(--ins-sub-navy);
    cursor: pointer;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > label::before {
    content: "";
    position: absolute;
    top: 1px;
    right: 0;
    width: 52px;
    height: 30px;
    border-radius: 15px;
    background: #cfd6de;
    transition: background-color 0.18s ease;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > label::after {
    content: "";
    position: absolute;
    top: 4px;
    right: 25px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--ins-sub-white);
    box-shadow: 0 1px 3px rgba(14, 35, 63, 0.24);
    transition: transform 0.18s ease;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > input[type="checkbox"]:checked + label::before {
    background: var(--ins-sub-blue);
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > input[type="checkbox"]:checked + label::after {
    transform: translateX(22px);
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-topics .gchoice > input[type="checkbox"]:focus-visible + label::before {
    outline: 2px solid var(--ins-sub-blue);
    outline-offset: 2px;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-option-title {
    display: block;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-ui);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-option-description {
    display: block;
    margin-top: 3px;
    color: var(--ins-sub-muted);
    font-family: var(--ins-sub-ui);
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.4;
}

#insigneo-subscription-module #gform_wrapper_6 .gfield_choice_all_toggle {
    display: inline-block !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 5px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0;
    background: transparent !important;
    color: var(--ins-sub-blue) !important;
    box-shadow: none !important;
    font-family: var(--ins-sub-ui) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
    cursor: pointer;
}


/* ==========================================================================
   7. FREQUENCY + LANGUAGE — COMPACT NATURAL-HEIGHT RADIO CARDS
   ========================================================================== */

#insigneo-subscription-module #field_6_13 > .gfield_label,
#insigneo-subscription-module #field_6_15 > .gfield_label {
    display: none;
}

#insigneo-subscription-module #field_6_13,
#insigneo-subscription-module #field_6_15 {
    margin-bottom: 27px !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency .gfield_radio,
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language .gfield_radio {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency .gchoice,
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language .gchoice {
    position: relative;
    flex: 1 1 200px;
    align-self: flex-start !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency input[type="radio"],
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language input[type="radio"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0;
    pointer-events: none;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency label,
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language label {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 11px 13px !important;
    border: 1px solid var(--ins-sub-line) !important;
    border-radius: 8px !important;
    background: var(--ins-sub-white);
    color: var(--ins-sub-navy);
    box-shadow: none !important;
    font-family: var(--ins-sub-ui);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.35;
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency input[type="radio"]:checked + label,
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language input[type="radio"]:checked + label {
    border-color: var(--ins-sub-blue) !important;
    background: rgba(161, 227, 251, 0.14);
    box-shadow: inset 0 0 0 1px var(--ins-sub-blue) !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency input[type="radio"]:focus-visible + label,
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language input[type="radio"]:focus-visible + label {
    outline: 2px solid var(--ins-sub-blue);
    outline-offset: 2px;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency .ins-sub-option-title,
#insigneo-subscription-module #gform_wrapper_6 .ins-sub-language label {
    font-weight: 500;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency .ins-sub-option-description {
    font-size: 12px;
}


/* ==========================================================================
   8. CONSENT
   ========================================================================== */

#insigneo-subscription-module #field_6_16 {
    margin: 0 0 9px !important;
    padding: 15px !important;
    border: 1px solid var(--ins-sub-line);
    border-radius: 8px;
    background: var(--ins-sub-soft);
}

#insigneo-subscription-module #field_6_16 > .gfield_label {
    display: none;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-consent .ginput_container_consent {
    display: flex !important;
    align-items: flex-start;
    gap: 11px;
    margin: 0 !important;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-consent input[type="checkbox"] {
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
    margin: 2px 0 0 !important;
    accent-color: var(--ins-sub-blue);
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-consent .gfield_consent_label {
    display: block !important;
    max-width: none !important;
    margin: 0 !important;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-ui);
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.5;
}

#insigneo-subscription-module #gform_wrapper_6 .ins-sub-consent .gfield_consent_label a {
    color: var(--ins-sub-blue);
    text-decoration: underline;
    text-underline-offset: 2px;
}


/* ==========================================================================
   9. SUBMIT — INSIGNEO CTA
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 .gform_footer {
    margin: 0 !important;
    padding: 0 !important;
}

#insigneo-subscription-module #gform_wrapper_6 .gform_footer input[type="submit"],
#insigneo-subscription-module #gform_wrapper_6 .gform_button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 48px !important;
    height: auto !important;
    margin: 18px 0 0 !important;
    padding: 13px 24px !important;
    border: 1px solid var(--ins-sub-navy) !important;
    border-radius: 999px !important;
    background: var(--ins-sub-navy) !important;
    color: var(--ins-sub-white) !important;
    box-shadow: none !important;
    font-family: var(--ins-sub-ui) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    cursor: pointer;
    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease;
}

#insigneo-subscription-module #gform_wrapper_6 .gform_footer input[type="submit"]:hover,
#insigneo-subscription-module #gform_wrapper_6 .gform_button:hover {
    border-color: var(--ins-sub-blue) !important;
    background: var(--ins-sub-blue) !important;
    color: var(--ins-sub-navy) !important;
}

#insigneo-subscription-module #gform_wrapper_6 .gform_footer input[type="submit"]:focus-visible,
#insigneo-subscription-module #gform_wrapper_6 .gform_button:focus-visible {
    outline: 2px solid var(--ins-sub-blue);
    outline-offset: 3px;
}


/* ==========================================================================
   10. VALIDATION
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 .gfield_error input[type="text"],
#insigneo-subscription-module #gform_wrapper_6 .gfield_error input[type="email"],
#insigneo-subscription-module #gform_wrapper_6 .gfield_error select {
    border-color: var(--ins-sub-error) !important;
}

#insigneo-subscription-module #gform_wrapper_6 .gfield_validation_message,
#insigneo-subscription-module #gform_wrapper_6 .validation_message {
    margin: 5px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--ins-sub-error) !important;
    font-family: var(--ins-sub-ui) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

#insigneo-subscription-module #gform_wrapper_6 .gform_validation_errors {
    margin: 0 0 20px !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(179, 38, 30, 0.35) !important;
    border-radius: 8px !important;
    background: rgba(179, 38, 30, 0.04) !important;
    box-shadow: none !important;
}


/* ==========================================================================
   11. SUCCESS STATE
   ========================================================================== */

#insigneo-subscription-module .gform_confirmation_wrapper_6,
#insigneo-subscription-module #gform_confirmation_wrapper_6 {
    padding: 28px 8px;
    text-align: center;
}

#insigneo-subscription-module #gform_confirmation_wrapper_6::before {
    content: "✓";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin: 0 0 14px;
    border-radius: 50%;
    background: #e6f4ea;
    color: var(--ins-sub-ok);
    font-family: var(--ins-sub-ui);
    font-size: 25px;
}

#insigneo-subscription-module #gform_confirmation_wrapper_6 h2 {
    margin: 0 0 9px;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-display);
    font-size: 30px;
    font-weight: 400;
    line-height: 1.08;
}

#insigneo-subscription-module #gform_confirmation_wrapper_6 p {
    margin: 0 0 8px;
    color: var(--ins-sub-muted);
    font-family: var(--ins-sub-ui);
    font-size: 13px;
    line-height: 1.5;
}


/* ==========================================================================
   12. MOBILE
   ========================================================================== */

@media (max-width: 640px) {

    #insigneo-subscription-module {
        padding: 0 12px 30px;
    }

    #insigneo-subscription-module > .ins-sub-native-header-backdrop {
        width: calc(100% + 24px) !important;
        margin:
            -148px
            -12px
            0 !important;
    }

    #insigneo-subscription-module .ins-sub-shell {
        padding-top: 30px;
    }

    #insigneo-subscription-module .ins-sub-card {
        padding: 23px 18px;
        border-radius: 10px;
    }

    #insigneo-subscription-module #gform_wrapper_6 #gform_fields_6,
    #insigneo-subscription-module #gform_wrapper_6 .gform_fields {
        grid-template-columns: 1fr !important;
    }

    #insigneo-subscription-module #field_6_4,
    #insigneo-subscription-module #field_6_5,
    #insigneo-subscription-module #field_6_6,
    #insigneo-subscription-module #field_6_7,
    #insigneo-subscription-module #field_6_8,
    #insigneo-subscription-module #field_6_9 {
        grid-column: 1 / -1 !important;
    }

    #insigneo-subscription-module #gform_wrapper_6 .ins-sub-frequency .gchoice,
    #insigneo-subscription-module #gform_wrapper_6 .ins-sub-language .gchoice {
        flex-basis: 100%;
    }

    #insigneo-subscription-module .ins-sub-brandbar {
        margin-bottom: 22px;
    }
}


/* ==========================================================================
   13. HARD COMPACT OVERRIDE — FREQUENCY + LANGUAGE
   --------------------------------------------------------------------------
   Gravity Forms/theme choice-card rules can impose block-size/min-height.
   These selectors use the actual Form 6 field IDs and remain fully scoped
   inside the Subscription module.
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 #field_6_13,
#insigneo-subscription-module #gform_wrapper_6 #field_6_15,
#insigneo-subscription-module #gform_wrapper_6 #field_6_13 .ginput_container,
#insigneo-subscription-module #gform_wrapper_6 #field_6_15 .ginput_container {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    block-size: auto !important;
    min-block-size: 0 !important;
    max-block-size: none !important;
}

#insigneo-subscription-module #gform_wrapper_6 #field_6_13 .gfield_radio,
#insigneo-subscription-module #gform_wrapper_6 #field_6_15 .gfield_radio {
    display: grid !important;
    grid-auto-rows: max-content !important;
    align-items: start !important;
    align-content: start !important;
    gap: 10px !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    block-size: auto !important;
    min-block-size: 0 !important;
    max-block-size: none !important;
}

#insigneo-subscription-module #gform_wrapper_6 #field_6_13 .gfield_radio {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#insigneo-subscription-module #gform_wrapper_6 #field_6_15 .gfield_radio {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

#insigneo-subscription-module #gform_wrapper_6 #field_6_13 .gfield_radio > .gchoice,
#insigneo-subscription-module #gform_wrapper_6 #field_6_15 .gfield_radio > .gchoice {
    display: block !important;
    align-self: start !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    block-size: auto !important;
    min-block-size: 0 !important;
    max-block-size: none !important;

    margin: 0 !important;
    padding: 0 !important;
    aspect-ratio: auto !important;
}

#insigneo-subscription-module #gform_wrapper_6 #field_6_13 .gfield_radio > .gchoice > label,
#insigneo-subscription-module #gform_wrapper_6 #field_6_15 .gfield_radio > .gchoice > label {
    display: block !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    block-size: auto !important;
    min-block-size: 0 !important;
    max-block-size: none !important;

    margin: 0 !important;
    padding: 11px 13px !important;
    aspect-ratio: auto !important;

    align-self: start !important;
    overflow: visible !important;
}

@media (max-width: 640px) {
    #insigneo-subscription-module #gform_wrapper_6 #field_6_13 .gfield_radio,
    #insigneo-subscription-module #gform_wrapper_6 #field_6_15 .gfield_radio {
        grid-template-columns: 1fr !important;
    }
}


/* ==========================================================================
   14. NEWS LANGUAGE
   --------------------------------------------------------------------------
   Yesica requested an explicit language field for the communications/news.
   The three visible choices keep stable API values EN / ES / PT.
   ========================================================================== */

#insigneo-subscription-module #gform_wrapper_6 #field_6_15 .gfield_radio {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}


/* ==========================================================================
   15. LOCALIZED SUCCESS WRAPPER
   ========================================================================== */

#insigneo-subscription-module .ins-sub-success {
    text-align: center;
}

#insigneo-subscription-module .ins-sub-success h2 {
    margin: 0 0 9px;
    color: var(--ins-sub-navy);
    font-family: var(--ins-sub-display);
    font-size: 30px;
    font-weight: 400;
    line-height: 1.08;
}

#insigneo-subscription-module .ins-sub-success p {
    margin: 0 0 8px;
    color: var(--ins-sub-muted);
    font-family: var(--ins-sub-ui);
    font-size: 13px;
    line-height: 1.5;
}

/* INS-SUB-CONSENT-REQUIRED-MARKER
   Consent is mandatory. The native Gravity Forms required indicator is
   hidden by the custom card UI, so expose it beside the visible copy.
*/
#insigneo-subscription-module
#gform_wrapper_6
.ins-sub-consent
.gfield_consent_label::after {
    content: " *";
    color: var(--ins-sub-blue);
    font-size: 10px;
    font-weight: 600;
    vertical-align: super;
}
