/* Product page instance overrides.
   Extracted from Life/Retirement inline <style> blocks.
   Load after guided-walkthrough-touch-fit.css to preserve the prior cascade.
   Also owns the shared Health/Life/Retirement carrier rail. */

body.page-life-group .product-hero-bg {
    background-image: url('../PAGES/LIFE/GROUP/HERO/HERO.jpg');
}

body.page-life-group [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-life-group [data-dialog-modal="get-a-group-quote"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/GET%20A%20GROUP%20QUOTE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-group [data-dialog-modal="participation-estimator"] .find-doctor-gate-body::before {
    background: url('../SHARED/GROUP/RESOURCES/PARTICIPATION%20ESTIMATOR.jpg') 50% 45% / cover no-repeat;
}

body.page-life-group [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

body.page-life-group [data-dialog-modal="view-plan-options"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/VIEW%20PLAN%20OPTIONS.jpg') 50% 45% / cover no-repeat;
}

body.page-life-group [data-dialog-modal="employee-resources"] .find-doctor-gate-body::before {
    background: url('../PAGES/HEALTH/GROUP/RESOURCES/EMPLOYEE%20RESOURCES.jpg') 50% 45% / cover no-repeat;
}

:root:has(body.page-life-term) {
    --hero-focus-desktop-x: calc(72% + 82px);
    --hero-focus-desktop-y: calc(18% + 18px);
    --hero-shift-desktop-x: 123px;
    --hero-shift-desktop-y: -5px;
    --hero-scale-desktop-x: 1.1556;
    --hero-scale-desktop-y: 1.02;
    --hero-flip-desktop-x: 1;
    --hero-focus-tablet-portrait-x: calc(76% + 35px);
    --hero-focus-tablet-portrait-y: 18%;
    --hero-shift-tablet-portrait-x: 0px;
    --hero-shift-tablet-portrait-y: 0px;
    --hero-scale-tablet-portrait-x: 1.2221;
    --hero-scale-tablet-portrait-y: 1;
    --hero-flip-tablet-portrait-x: 1;
}

body.page-life-term .product-hero-bg {
    background-image: url('../PAGES/LIFE/TERM/HERO/HERO.jpg');
}

@media (max-width: 743px) and (orientation: portrait) {
    body.page-life-term .product-hero {
        --hero-focus-phone-x: calc(80% + 50px);
        --hero-scale-phone-x: 1.4;
    }
}

body.page-life-term [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-life-term [data-dialog-modal="coverage-calculator"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/TERM/RESOURCES/COVERAGE%20CALCULATOR.jpg') 50% 45% / cover no-repeat;
}

body.page-life-term [data-dialog-modal="income-replacement-worksheet"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/TERM/RESOURCES/INCOME%20REPLACEMENT%20WORKSHEET.jpg') 50% 45% / cover no-repeat;
}

body.page-life-term [data-dialog-modal="medical-exam-prep"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/TERM/RESOURCES/MEDICAL%20EXAM%20PREP.jpg') 50% 45% / cover no-repeat;
}

body.page-life-term [data-dialog-modal="policy-conversion-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/TERM/RESOURCES/POLICY%20CONVERSION%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-term [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

body.page-life-universal .product-hero-bg {
    background-image: url('../PAGES/LIFE/UNIVERSAL/HERO/HERO.jpg');
}

@media (max-width: 743px) and (orientation: portrait) {
    body.page-life-universal .product-hero {
        --hero-focus-phone-x: calc(80% + 60px);
    }
}

body.page-life-universal [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-life-universal [data-dialog-modal="ul-structure-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/UNIVERSAL/RESOURCES/UL%20STRUCTURE%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-universal [data-dialog-modal="illustration-stress-test"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/UNIVERSAL/RESOURCES/ILLUSTRATION%20STRESS%20TEST.jpg') 50% 45% / cover no-repeat;
}

body.page-life-universal [data-dialog-modal="funding-flexibility-check"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/UNIVERSAL/RESOURCES/FUNDING%20FLEXIBILITY%20CHECK.jpg') 50% 45% / cover no-repeat;
}

body.page-life-universal [data-dialog-modal="no-lapse-protection-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/UNIVERSAL/RESOURCES/NO-LAPSE%20PROTECTION%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-universal [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

body.page-life-whole .product-hero-bg {
    background-image: url('../PAGES/LIFE/WHOLE/HERO/HERO.jpg');
}

body.page-life-whole .product-hero {
    --hero-focus-desktop-x: calc(72% + 166px);
    --hero-focus-desktop-y: 50%;
    --hero-focus-desktop-wide-y: 50%;
    --hero-scale-desktop-x: 1.24;
    --hero-focus-desktop-split-x: calc(74% + 191px);
    --hero-scale-desktop-split-x: 1.24;
    --hero-focus-desktop-tall-x: calc(76% + 191px);
    --hero-scale-desktop-tall-x: 1.24;
}

@media (max-width: 743px) and (orientation: portrait) {
    body.page-life-whole .product-hero {
        --hero-focus-phone-x: calc(80% + 63px);
        --hero-scale-phone-x: 1.22;
    }
}

@media (min-width: 744px) and (max-width: 1024px) and (orientation: portrait) {
    body.page-life-whole .product-hero {
        --hero-focus-tablet-portrait-x: calc(76% + 105px);
        --hero-focus-tablet-portrait-y: 50%;
        --hero-scale-tablet-portrait-x: 1.23;
    }
}

@media (max-width: 960px) and (orientation: landscape) {
    body.page-life-whole .product-hero {
        --hero-focus-tablet-landscape-narrow-x: calc(76% + 114px);
        --hero-focus-tablet-landscape-narrow-y: 50%;
        --hero-scale-tablet-landscape-narrow-x: 1.23;
    }
}

@media (min-width: 961px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-life-whole .product-hero {
        --hero-focus-tablet-landscape-wide-x: calc(74% + 139px);
        --hero-focus-tablet-landscape-wide-y: 50%;
        --hero-scale-tablet-landscape-wide-x: 1.23;
    }
}

body.page-life-whole [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-life-whole [data-dialog-modal="whole-life-cash-value-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/WHOLE/RESOURCES/WHOLE%20LIFE%20CASH%20VALUE%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-whole [data-dialog-modal="dividend-options-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/WHOLE/RESOURCES/DIVIDEND%20OPTIONS%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-whole [data-dialog-modal="premium-commitment-check"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/WHOLE/RESOURCES/PREMIUM%20COMMITMENT%20CHECK.jpg') 50% 45% / cover no-repeat;
}

body.page-life-whole [data-dialog-modal="beneficiary-planning-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/LIFE/WHOLE/RESOURCES/BENEFICIARY%20PLANNING%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-life-whole [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-401k-rollovers .product-hero-bg {
    background-image: url('../PAGES/RETIREMENT/ROLLOVERS/HERO/HERO.jpg');
}

@media (max-width: 743px) and (orientation: portrait) {
    :root:has(body.page-retirement-401k-rollovers) {
        --hero-focus-phone-x: 80%;
        --hero-focus-phone-y: 18%;
        --hero-shift-phone-x: 70px;
        --hero-shift-phone-y: -2px;
        --hero-scale-phone-x: 1.3452;
        --hero-scale-phone-y: 1;
        --hero-flip-phone-x: 1;
    }
}

body.page-retirement-401k-rollovers [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-401k-rollovers [data-dialog-modal="direct-vs-indirect-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ROLLOVERS/RESOURCES/DIRECT%20VS%20INDIRECT%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-401k-rollovers [data-dialog-modal="tax-conversion-estimator"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ROLLOVERS/RESOURCES/TAX%20CONVERSION%20ESTIMATOR.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-401k-rollovers [data-dialog-modal="rollover-checklist"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ROLLOVERS/RESOURCES/ROLLOVER%20CHECKLIST.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-401k-rollovers [data-dialog-modal="schedule-a-free-review"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ROLLOVERS/RESOURCES/SCHEDULE%20A%20FREE%20REVIEW.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-401k-rollovers [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-annuities .product-hero-bg {
    background-image: url('../PAGES/RETIREMENT/ANNUITIES/HERO/HERO.jpg');
}

@media (max-width: 743px) and (orientation: portrait) {
    :root:has(body.page-retirement-annuities) {
        --hero-focus-phone-x: 80%;
        --hero-focus-phone-y: 18%;
        --hero-shift-phone-x: 50px;
        --hero-shift-phone-y: 0px;
        --hero-scale-phone-x: 1.197;
        --hero-scale-phone-y: 1;
        --hero-flip-phone-x: 1;
    }
}

body.page-retirement-annuities [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-annuities [data-dialog-modal="annuity-structure-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ANNUITIES/RESOURCES/ANNUITY%20STRUCTURE%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-annuities [data-dialog-modal="rider-fee-checklist"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ANNUITIES/RESOURCES/RIDER%20FEE%20CHECKLIST.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-annuities [data-dialog-modal="surrender-schedule-explainer"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ANNUITIES/RESOURCES/SURRENDER%20SCHEDULE%20EXPLAINER.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-annuities [data-dialog-modal="schedule-a-free-review"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/ANNUITIES/RESOURCES/SCHEDULE%20A%20FREE%20REVIEW.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-annuities [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

:root:has(body.page-retirement-group) {
    --hero-focus-desktop-x: 50%;
    --hero-focus-desktop-y: 50%;
    --hero-focus-desktop-wide-y: 50%;
    --hero-shift-desktop-x: 0px;
    --hero-shift-desktop-y: 0px;
    --hero-scale-desktop-x: 1;
    --hero-scale-desktop-y: 1;
    --hero-flip-desktop-x: 1;
    --hero-focus-desktop-split-x: 50%;
    --hero-shift-desktop-split-x: 0px;
    --hero-scale-desktop-split-x: 1;
    --hero-scale-desktop-split-y: 1;
    --hero-flip-desktop-split-x: 1;
    --hero-focus-desktop-tall-x: 50%;
    --hero-shift-desktop-tall-x: 0px;
    --hero-scale-desktop-tall-x: 1;
    --hero-scale-desktop-tall-y: 1;
    --hero-flip-desktop-tall-x: 1;
    --hero-focus-tablet-portrait-x: 50%;
    --hero-focus-tablet-portrait-y: 50%;
    --hero-shift-tablet-portrait-x: 0px;
    --hero-shift-tablet-portrait-y: 0px;
    --hero-scale-tablet-portrait-x: 1;
    --hero-scale-tablet-portrait-y: 1;
    --hero-flip-tablet-portrait-x: 1;
    --hero-focus-tablet-landscape-wide-x: 50%;
    --hero-focus-tablet-landscape-wide-y: 50%;
    --hero-shift-tablet-landscape-wide-x: 0px;
    --hero-shift-tablet-landscape-wide-y: 0px;
    --hero-scale-tablet-landscape-wide-x: 1;
    --hero-scale-tablet-landscape-wide-y: 1;
    --hero-flip-tablet-landscape-wide-x: 1;
    --hero-focus-tablet-landscape-narrow-x: 50%;
    --hero-focus-tablet-landscape-narrow-y: 50%;
    --hero-shift-tablet-landscape-narrow-x: 0px;
    --hero-shift-tablet-landscape-narrow-y: 0px;
    --hero-scale-tablet-landscape-narrow-x: 1;
    --hero-scale-tablet-landscape-narrow-y: 1;
    --hero-flip-tablet-landscape-narrow-x: 1;
    --hero-focus-phone-x: 50%;
    --hero-focus-phone-y: 50%;
    --hero-shift-phone-x: 0px;
    --hero-shift-phone-y: 0px;
    --hero-scale-phone-x: 1;
    --hero-scale-phone-y: 1;
    --hero-flip-phone-x: 1;
}

body.page-retirement-group .product-hero-bg {
    top: 0;
    bottom: 0;
    background-image: url('../PAGES/RETIREMENT/GROUP/HERO/DESKTOP-FULL.jpg');
}

@media (min-width: 1001px) and (max-width: 1366px) and (orientation: landscape) and (pointer: fine),
       (max-width: 1000px) and (orientation: landscape) and (pointer: fine) {
    body.page-retirement-group .product-hero-bg {
        background-image: url('../PAGES/RETIREMENT/GROUP/HERO/DESKTOP-SPLIT.jpg');
    }
}

@media (min-width: 744px) and (max-width: 1024px) and (orientation: portrait) and (pointer: coarse) {
    body.page-retirement-group .product-hero-bg {
        background-image: url('../PAGES/RETIREMENT/GROUP/HERO/TABLET-PORTRAIT.jpg');
    }
}

@media (min-width: 961px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-retirement-group .product-hero-bg {
        background-image: url('../PAGES/RETIREMENT/GROUP/HERO/TABLET-LANDSCAPE.jpg');
    }
}

@media (max-width: 960px) and (orientation: landscape) and (pointer: coarse) {
    body.page-retirement-group .product-hero-bg {
        background-image: url('../PAGES/RETIREMENT/GROUP/HERO/PHONE-LANDSCAPE.jpg');
    }
}

@media (max-width: 743px) and (orientation: portrait) and (pointer: coarse) {
    body.page-retirement-group .product-hero-bg {
        background-image: url('../PAGES/RETIREMENT/GROUP/HERO/PHONE-PORTRAIT.jpg');
    }
}

body.page-retirement-group [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-group [data-dialog-modal="get-a-plan-quote"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/GROUP/RESOURCES/GET%20A%20PLAN%20QUOTE.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-group [data-dialog-modal="match-cost-estimator"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/GROUP/RESOURCES/MATCH%20COST%20ESTIMATOR.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-group [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-group [data-dialog-modal="view-plan-options"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/VIEW%20PLAN%20OPTIONS.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-group [data-dialog-modal="employee-resources"] .find-doctor-gate-body::before {
    background: url('../PAGES/HEALTH/GROUP/RESOURCES/EMPLOYEE%20RESOURCES.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-planning .product-hero-bg {
    background-image: url('../PAGES/RETIREMENT/PLANNING/HERO/HERO.jpg');
}

body.page-retirement-planning [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-planning [data-dialog-modal="retirement-income-worksheet"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/PLANNING/RESOURCES/RETIREMENT%20INCOME%20WORKSHEET.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-planning [data-dialog-modal="social-security-timing-guide"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/PLANNING/RESOURCES/SOCIAL%20SECURITY%20TIMING%20GUIDE.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-planning [data-dialog-modal="healthcare-cost-planner"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/PLANNING/RESOURCES/HEALTHCARE%20COST%20PLANNER.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-planning [data-dialog-modal="schedule-a-free-review"] .find-doctor-gate-body::before {
    background: url('../PAGES/RETIREMENT/PLANNING/RESOURCES/SCHEDULE%20A%20FREE%20REVIEW.jpg') 50% 45% / cover no-repeat;
}

body.page-retirement-planning [data-dialog-modal="speak-to-an-advisor"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/SPEAK%20TO%20AN%20ADVISOR.jpg') 50% 45% / cover no-repeat;
}

/* Shared carrier rail: curated PNG assets own the per-logo optical sizing. */
body.page-health,
body.page-life,
body.page-retirement {
    --carrier-section-margin-top: 40px;
    --carrier-section-pad-top: 24px;
    --carrier-divider-margin-top: 24px;
    --carrier-divider-pad-top: 16px;
    --carrier-divider-pad-bottom: 16px;
    --carrier-eyebrow-size: 9px;
    --carrier-eyebrow-margin-bottom: 16px;
    --carrier-rail-logo-height: 34px;
    --carrier-rail-gap: 64px;
    --carrier-rail-pad-bottom: 12px;
    --carrier-rail-mask-edge: 12%;
    --carrier-scroll-speed: 44;
}

body.page-health .carrier-trust-section,
body.page-life .carrier-trust-section,
body.page-retirement .carrier-trust-section {
    margin-top: var(--carrier-section-margin-top) !important;
    padding-top: var(--carrier-section-pad-top) !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    position: relative !important;
    overflow: visible !important;
}

body.page-health .carrier-trust-divider,
body.page-life .carrier-trust-divider,
body.page-retirement .carrier-trust-divider {
    margin-top: var(--carrier-divider-margin-top) !important;
    padding-top: var(--carrier-divider-pad-top) !important;
    padding-bottom: var(--carrier-divider-pad-bottom) !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    border-bottom: none !important;
}

body.page-health .carrier-eyebrow,
body.page-life .carrier-eyebrow,
body.page-retirement .carrier-eyebrow {
    text-align: center !important;
    font-size: var(--carrier-eyebrow-size) !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,0.4) !important;
    opacity: 0.9 !important;
    margin-bottom: var(--carrier-eyebrow-margin-bottom) !important;
}

body.page-health .carrier-scroll-track,
body.page-life .carrier-scroll-track,
body.page-retirement .carrier-scroll-track {
    position: relative !important;
    width: 100% !important;
    overflow: hidden !important;
    --carrier-guide-offset: 12px;
    mask-image: linear-gradient(90deg, transparent 0%, black var(--carrier-rail-mask-edge), black calc(100% - var(--carrier-rail-mask-edge)), transparent 100%) !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, black var(--carrier-rail-mask-edge), black calc(100% - var(--carrier-rail-mask-edge)), transparent 100%) !important;
}

body.page-health .carrier-scroll-track::after,
body.page-life .carrier-scroll-track::after,
body.page-retirement .carrier-scroll-track::after {
    content: none !important;
}

body.page-health .carrier-scroll-strip,
body.page-life .carrier-scroll-strip,
body.page-retirement .carrier-scroll-strip {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    gap: var(--carrier-rail-gap) !important;
    padding-bottom: var(--carrier-rail-pad-bottom) !important;
    width: max-content !important;
    flex-wrap: nowrap !important;
    animation-duration: var(--carrier-scroll-duration, 35s) !important;
    will-change: transform !important;
}

body.page-health .carrier-scroll-strip.is-frozen,
body.page-life .carrier-scroll-strip.is-frozen,
body.page-retirement .carrier-scroll-strip.is-frozen {
    animation: none !important;
}

body.page-health .carrier-scroll-strip .carrier-logo,
body.page-life .carrier-scroll-strip .carrier-logo,
body.page-retirement .carrier-scroll-strip .carrier-logo {
    display: block !important;
    width: auto !important;
    height: var(--carrier-rail-logo-height) !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    opacity: 0.46 !important;
    filter: none !important;
    transform: none !important;
    transition: opacity 0.3s ease !important;
}

body.page-health .carrier-scroll-strip .carrier-logo:hover,
body.page-life .carrier-scroll-strip .carrier-logo:hover,
body.page-retirement .carrier-scroll-strip .carrier-logo:hover {
    opacity: 0.78 !important;
    filter: none !important;
}

@media (max-width: 960px) {
    body.page-health,
    body.page-life,
    body.page-retirement {
        --carrier-section-margin-top: 32px;
        --carrier-section-pad-top: 20px;
        --carrier-divider-margin-top: 22px;
        --carrier-divider-pad-top: 18px;
        --carrier-divider-pad-bottom: 14px;
        --carrier-eyebrow-size: 8.5px;
        --carrier-eyebrow-margin-bottom: 14px;
        --carrier-rail-logo-height: 28px;
        --carrier-rail-gap: 48px;
        --carrier-rail-pad-bottom: 10px;
    }
}

@media (max-width: 640px) {
    body.page-health,
    body.page-life,
    body.page-retirement {
        --carrier-section-margin-top: 28px;
        --carrier-section-pad-top: 18px;
        --carrier-divider-margin-top: 18px;
        --carrier-divider-pad-top: 18px;
        --carrier-divider-pad-bottom: 12px;
        --carrier-eyebrow-size: 8px;
        --carrier-eyebrow-margin-bottom: 12px;
        --carrier-rail-logo-height: 24px;
        --carrier-rail-gap: 38px;
        --carrier-rail-pad-bottom: 8px;
        --carrier-rail-mask-edge: 10%;
    }
}

@media (min-width: 961px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-health,
    body.page-life,
    body.page-retirement {
        --carrier-eyebrow-margin-bottom: 14px;
        --carrier-rail-logo-height: 31px;
    }
}

@media (max-height: 430px) and (orientation: landscape) and (pointer: coarse) {
    body.page-health,
    body.page-life,
    body.page-retirement {
        --carrier-eyebrow-margin-bottom: 14px;
        --carrier-rail-logo-height: 26px;
        --carrier-rail-gap: 42px;
        --carrier-rail-pad-bottom: 8px;
    }
}

@media (pointer: fine) and (max-width: 1100px) {
    body.page-health,
    body.page-life,
    body.page-retirement {
        --carrier-rail-logo-height: 30px;
        --carrier-rail-gap: 48px;
        --carrier-rail-pad-bottom: 10px;
    }
}

/* Stage 3 shared promotion from approved Term polish.
   Scope: public product pages that load this shared override file. */
body.page-product {
    --stage3-accent: rgba(168, 188, 220, 0.92);
    --stage3-accent-line: rgba(168, 188, 220, 0.42);
    --stage3-ivory: rgba(244, 247, 252, 0.96);
    --stage3-ease: cubic-bezier(0.32, 0.72, 0, 1);
    --stage3-radius-tile: var(--abc-radius-control-tight, 10px);
    --stage3-ctrl-phone: 30px;
    --stage3-ctrl-tablet: 34px;
    --stage3-ctrl-desktop: 38px;
    --stage3-ctrl-line: 9px;
    --product-surface-control-size: var(--stage3-ctrl-desktop);
    --product-surface-control-line: var(--stage3-ctrl-line);
}

body.page-product .find-doctor-gate-backdrop,
body.page-product .sidebar-call-pop-backdrop,
body.page-product #edu-modal.path-modal,
body.page-product .chat-overlay {
    background: rgba(4, 6, 14, 0.88) !important;
    -webkit-backdrop-filter: blur(12px) saturate(110%) !important;
    backdrop-filter: blur(12px) saturate(110%) !important;
}

body.page-product .find-doctor-gate-backdrop::before,
body.page-product .sidebar-call-pop-backdrop::before {
    display: none !important;
}

body.page-product .chat-panel .chat-close,
body.page-product .chat-panel .chat-thread-close,
body.page-product .chat-panel .chat-back {
    width: var(--product-surface-control-size) !important;
    height: var(--product-surface-control-size) !important;
    min-width: var(--product-surface-control-size) !important;
    min-height: var(--product-surface-control-size) !important;
    border-radius: var(--stage3-radius-tile) !important;
}

body.page-product .chat-panel .chat-close::before,
body.page-product .chat-panel .chat-close::after,
body.page-product .chat-panel .chat-thread-close::before,
body.page-product .chat-panel .chat-thread-close::after {
    width: var(--product-surface-control-line) !important;
}

body.page-product .chat-panel,
body.page-product .chat-panel.is-thread,
html body.page-product .chat-panel,
html body.page-product .chat-panel.is-thread {
    border-color: rgba(232, 236, 244, 0.12) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.014) 28%, rgba(0, 0, 0, 0) 64%),
        radial-gradient(circle at 18% 0%, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.018) 26%, rgba(255, 255, 255, 0) 58%),
        linear-gradient(180deg, rgba(9, 10, 13, 0.985) 0%, rgba(2, 2, 4, 0.985) 100%) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.04),
        0 34px 84px rgba(0, 0, 0, 0.8),
        0 0 42px rgba(112, 152, 232, 0.13),
        0 0 110px rgba(255, 255, 255, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

body.page-product .chat-panel-header,
body.page-product .chat-thread-header {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.022) 30%, rgba(0, 0, 0, 0) 70%),
        linear-gradient(180deg, rgba(14, 14, 16, 0.99) 0%, rgba(2, 2, 4, 0.98) 100%) !important;
    border-color: rgba(232, 236, 244, 0.10) !important;
}

body.page-product .chat-messages {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.022) 0%, rgba(0, 0, 0, 0.24) 42%, rgba(0, 0, 0, 0.52) 100%),
        rgba(2, 2, 3, 0.955) !important;
}

body.page-product .chat-messages .chat-selector-shell {
    border-radius: 16px !important;
    gap: 9px !important;
    padding: 13px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.038) 0%, rgba(255, 255, 255, 0.008) 32%, rgba(0, 0, 0, 0.30) 100%),
        rgba(5, 5, 6, 0.965) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 14px 28px rgba(0, 0, 0, 0.40) !important;
}

body.page-product .chat-messages .chat-selector-eyebrow {
    font-size: 9px !important;
    letter-spacing: 0.22em !important;
    color: rgba(190, 196, 210, 0.58) !important;
}

body.page-product .chat-messages .chat-selector-copy {
    font-size: 13px !important;
    line-height: 1.35 !important;
}

body.page-product .chat-messages .chat-selector-actions {
    gap: 8px !important;
}

body.page-product .chat-messages .chat-selector-btn {
    min-height: 52px !important;
    padding: 10px 12px 10px 14px !important;
    border-radius: 12px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.056) 0%, rgba(255, 255, 255, 0.012) 36%, rgba(0, 0, 0, 0.30) 100%),
        rgba(7, 7, 8, 0.965) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.052),
        inset 0 1px 0 rgba(255, 255, 255, 0.065),
        0 8px 16px rgba(0, 0, 0, 0.28) !important;
}

body.page-product .chat-messages .chat-selector-btn:hover,
body.page-product .chat-messages .chat-selector-btn:focus-visible {
    box-shadow:
        inset 0 0 0 1px rgba(112, 152, 232, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 14px 28px rgba(0, 0, 0, 0.38),
        0 0 16px rgba(112, 152, 232, 0.12) !important;
}

body.page-product .chat-messages .chat-selector-label {
    font-size: 9.5px !important;
    letter-spacing: 0.21em !important;
}

body.page-product .chat-messages .chat-selector-meta {
    font-size: 12px !important;
    line-height: 1.25 !important;
}

body.page-product .chat-messages .chat-selector-arrow {
    width: 25px !important;
    height: 25px !important;
    border-color: rgba(232, 236, 244, 0.12) !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 0 10px rgba(255, 255, 255, 0.05) !important;
}

body.page-product .chat-messages .chat-selector-arrow::before,
body.page-product .chat-messages .chat-selector-arrow::after {
    background: rgba(230, 234, 242, 0.88) !important;
    box-shadow: 0 0 6px rgba(255, 255, 255, 0.12) !important;
}

body.page-product .chat-messages .chat-selector-btn:hover .chat-selector-arrow,
body.page-product .chat-messages .chat-selector-btn:focus-visible .chat-selector-arrow {
    border-color: rgba(112, 152, 232, 0.46) !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 0 12px rgba(112, 152, 232, 0.24) !important;
}

body.page-product .chat-messages .chat-selector-btn:hover .chat-selector-arrow::before,
body.page-product .chat-messages .chat-selector-btn:hover .chat-selector-arrow::after,
body.page-product .chat-messages .chat-selector-btn:focus-visible .chat-selector-arrow::before,
body.page-product .chat-messages .chat-selector-btn:focus-visible .chat-selector-arrow::after {
    background: #8aa8ff !important;
    box-shadow: 0 0 8px rgba(112, 152, 232, 0.58) !important;
}

body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-btn::after {
    content: '' !important;
    background:
        linear-gradient(#8aa8ff, #8aa8ff) center / 10px 1.5px no-repeat,
        linear-gradient(#8aa8ff, #8aa8ff) center / 1.5px 10px no-repeat,
        #050505 !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

body.page-product .chat-panel.is-selecting .chat-input-row,
body.page-product .chat-panel.is-selecting .chat-consent {
    display: none !important;
}

body.page-product .chat-input-row {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product .chat-input-row:focus-within {
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product .chat-input {
    min-height: 40px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.022) 0%, rgba(0, 0, 0, 0.24) 100%),
        rgba(2, 2, 4, 0.93) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

body.page-product .chat-input:hover,
body.page-product .chat-input:focus,
body.page-product .chat-input:focus-visible {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.034) 0%, rgba(0, 0, 0, 0.22) 100%),
        rgba(4, 4, 6, 0.94) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.13),
        0 0 12px rgba(255, 255, 255, 0.045) !important;
}

body.page-product .chat-send {
    min-height: 40px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.055) 36%, rgba(0, 0, 0, 0.42) 100%),
        rgba(18, 18, 20, 0.98) !important;
}

@media (min-width: 769px) and (pointer: fine) {
    body.page-product .chat-panel.is-selecting .chat-messages {
        justify-content: center !important;
        align-items: center !important;
        padding: 22px !important;
        margin-bottom: 0 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-shell {
        width: min(100%, 390px) !important;
        max-width: min(100%, 390px) !important;
        align-self: center !important;
        justify-self: center !important;
        gap: 0 !important;
        padding: 22px 20px !important;
        transform: translateY(-18px) !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-copy {
        display: block !important;
        max-width: 30ch !important;
        font-size: 14px !important;
        line-height: 1.42 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-btn {
        min-height: 56px !important;
    }
}

@media (max-width: 640px) {
    body.page-product {
        --product-surface-control-size: var(--stage3-ctrl-phone);
        --product-surface-control-line: 8.5px;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-product {
        --product-surface-control-size: var(--stage3-ctrl-tablet);
        --product-surface-control-line: 9px;
    }
}

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-product {
        --stage3-touch-card-gap: clamp(18px, 3.4vw, 28px);
        --stage3-faq-help-card-h: 156px;
        --stage3-faq-help-card-padding: 20px 18px;
        --stage3-faq-help-card-shell-gap: 10px;
        --stage3-faq-help-card-direction: column;
        --stage3-faq-help-icon-size: 42px;
        --stage3-faq-help-kicker-size: 10px;
        --stage3-faq-help-kicker-line: 1.2;
        --stage3-faq-help-kicker-spacing: 0.15em;
        --stage3-faq-help-title-size: 13px;
        --stage3-faq-help-title-line: 1.2;
        --stage3-final-cta-gap: clamp(14px, 2.6vw, 20px);
        --product-support-sheet-pad-top: 10px;
        --product-support-sheet-head-pad-x: 14px;
        --product-support-sheet-head-gap: 8px;
        --product-support-sheet-title-size: 18px;
        --product-support-sheet-close-size: 32px;
        --product-support-sheet-row-min: 39px;
        --product-support-sheet-row-pad-y: 8px;
        --product-support-sheet-row-pad-x: 11px;
        --product-support-sheet-row-font-size: 10.5px;
    }

    body.page-product .mobile-support-sheet {
        border-radius: 16px !important;
        overflow-y: auto !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        box-shadow:
            0 24px 48px rgba(0, 0, 0, 0.66),
            0 0 22px rgba(168, 188, 220, 0.10),
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            inset 3px 0 0 var(--stage3-accent) !important;
    }

    body.page-product .mobile-support-sheet::-webkit-scrollbar {
        width: 0 !important;
        height: 0 !important;
    }

    body.page-product .mobile-support-sheet-kicker {
        color: rgba(200, 208, 220, 0.82) !important;
        letter-spacing: 1.5px !important;
    }

    body.page-product .mobile-support-sheet-desc {
        display: none !important;
    }

    body.page-product .mobile-support-sheet .mobile-support-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        padding: 0 10px 10px !important;
    }

    body.page-product .mobile-support-sheet a.mobile-support-action,
    body.page-product .mobile-support-sheet button.mobile-support-action {
        min-height: 39px !important;
        padding: 8px 11px !important;
        border-radius: 10px !important;
        background-position: 11px 100% !important;
        background-size: calc(100% - 22px) 1px !important;
    }

    body.page-product .mobile-support-sheet .mobile-support-action-label {
        font-size: 10.5px !important;
        line-height: 1.05 !important;
    }

    body.page-product .mobile-support-sheet .mobile-support-action-meta {
        margin-top: 2px !important;
        font-size: 9.5px !important;
        line-height: 1.12 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages {
        justify-content: center !important;
        align-items: stretch !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-shell {
        width: 100% !important;
        max-width: none !important;
        min-height: 100% !important;
        margin: 0 !important;
        padding: clamp(24px, 4dvh, 34px) clamp(16px, 4.2vw, 22px) !important;
        gap: 0 !important;
        transform: none !important;
        overflow: hidden !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-eyebrow,
    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-title,
    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-copy,
    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-actions {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-title {
        margin-top: clamp(9px, 1.7dvh, 14px) !important;
        font-size: clamp(28px, 7.2vw, 34px) !important;
        line-height: 1.02 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-copy {
        margin-top: clamp(7px, 1.4dvh, 10px) !important;
        max-width: 30ch !important;
        font-size: clamp(11.5px, 3.05vw, 12.5px) !important;
        line-height: 1.34 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-actions {
        gap: clamp(7px, 1.25dvh, 10px) !important;
        margin-top: clamp(12px, 2.2dvh, 16px) !important;
        padding: 0 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-btn {
        min-height: clamp(68px, 10.2dvh, 78px) !important;
        grid-template-columns: clamp(36px, 8vw, 42px) minmax(0, 1fr) !important;
        gap: clamp(10px, 2.4vw, 12px) !important;
        padding: 13px clamp(42px, 10vw, 50px) 13px 13px !important;
        border-radius: 14px !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-glyph {
        width: clamp(36px, 8vw, 42px) !important;
        height: clamp(36px, 8vw, 42px) !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-label {
        font-size: clamp(9.5px, 2.45vw, 10.5px) !important;
        letter-spacing: 0.12em !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-meta {
        font-size: clamp(10.4px, 2.65vw, 11.4px) !important;
        line-height: 1.18 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-btn::after {
        right: 13px !important;
        width: 27px !important;
        height: 27px !important;
    }

    body.page-product .path-subsection[id$="-facts"] {
        padding-top: 14px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .section-title {
        font-size: clamp(26px, 5.2vw, 32px) !important;
        line-height: 1.02 !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-split-layout {
        gap: var(--stage3-touch-card-gap) !important;
        margin-top: 11px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-list {
        gap: 6px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item {
        border-radius: 11px !important;
        border-color: rgba(168, 188, 220, 0.07) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.024) 0%, rgba(255, 255, 255, 0.006) 40%, rgba(255, 255, 255, 0) 100%),
            linear-gradient(160deg, rgba(7, 9, 13, 0.84) 0%, rgba(4, 4, 6, 0.965) 64%, rgba(0, 0, 0, 0.99) 100%) !important;
        box-shadow:
            0 10px 20px rgba(0, 0, 0, 0.40),
            0 0 0 1px rgba(255, 255, 255, 0.016),
            inset 0 1px 0 rgba(255, 255, 255, 0.038),
            inset 0 -1px 0 rgba(168, 188, 220, 0.016) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary {
        min-height: 36px !important;
        padding: 7px 10px !important;
        gap: 7px !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary h3 {
        font-size: clamp(10.75px, 1.46vw, 12px) !important;
        line-height: 1.14 !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-step {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        border-radius: 6px !important;
        border: 1px solid rgba(168, 188, 220, 0.11) !important;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, 0.075) 0%, rgba(255, 255, 255, 0.018) 42%, rgba(0, 0, 0, 0) 100%),
            linear-gradient(180deg, rgba(9, 10, 13, 0.98), rgba(1, 1, 2, 1)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            inset 0 -1px 0 rgba(0, 0, 0, 0.45),
            0 2px 5px rgba(0, 0, 0, 0.32) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-step::before {
        font-size: 9px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        color: rgba(242, 245, 250, 0.92) !important;
        text-shadow: 0 1px 5px rgba(0, 0, 0, 0.64) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary::after {
        align-self: center !important;
        width: 7px !important;
        height: 7px !important;
        border: 1px solid rgba(235, 238, 244, 0.08) !important;
        border-radius: 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.052) 0 18%, rgba(18, 18, 20, 0.82) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.018),
            inset 0 -1px 0 rgba(0, 0, 0, 0.78) !important;
        clip-path: none !important;
        filter: none !important;
        transform: translateY(0) rotate(0deg) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item[open] summary::after {
        width: 7px !important;
        height: 7px !important;
        border: 0 !important;
        border-top: 1.5px solid rgba(232, 238, 248, 0.76) !important;
        border-right: 1.5px solid rgba(232, 238, 248, 0.76) !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: translateY(-1px) rotate(135deg) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-body {
        padding: 0 12px 10px !important;
        font-size: 11.5px !important;
        line-height: 1.36 !important;
        background: transparent !important;
        border-top: 0 !important;
        box-shadow: none !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-body p {
        padding-left: 27px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-cta .faq-chat-trigger-card.journey-entry-button,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-shell {
        min-height: var(--stage3-faq-help-card-h) !important;
        height: var(--stage3-faq-help-card-h) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-shell,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .faq-chat-trigger-shell {
        padding: var(--stage3-faq-help-card-padding) !important;
        gap: var(--stage3-faq-help-card-shell-gap) !important;
        flex-direction: var(--stage3-faq-help-card-direction) !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-title {
        font-size: var(--stage3-faq-help-title-size) !important;
        line-height: var(--stage3-faq-help-title-line) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-kicker {
        font-size: var(--stage3-faq-help-kicker-size) !important;
        line-height: var(--stage3-faq-help-kicker-line) !important;
        letter-spacing: var(--stage3-faq-help-kicker-spacing) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-icon {
        width: var(--stage3-faq-help-icon-size) !important;
        height: var(--stage3-faq-help-icon-size) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-copy {
        align-items: center !important;
        text-align: center !important;
    }

    body.page-product .path-subsection[id$="-facts"] + .product-video-section,
    body.page-product .panel-unified .path-subsection[id$="-facts"] + .product-video-section {
        margin-top: var(--stage3-touch-card-gap) !important;
    }

    body.page-product .product-testimonials .testimonials-summary {
        margin-left: 0 !important;
        margin-right: auto !important;
        text-align: left !important;
    }

    body.page-product .product-testimonials + .path-subsection-final {
        margin-top: clamp(34px, 5.2vw, 44px) !important;
    }

    body.page-product .path-subsection-final {
        padding-top: var(--stage3-final-cta-gap) !important;
    }

    body.page-product .path-subsection-final .section-title {
        margin-bottom: 0 !important;
        font-size: clamp(20px, 5.4vw, 26px) !important;
        line-height: 1.08 !important;
    }

    body.page-product .path-subsection-final .final-cta-standalone {
        padding-top: var(--stage3-final-cta-gap) !important;
        padding-bottom: 0 !important;
    }

    body.page-product .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta {
        width: min(282px, calc(100vw - 68px)) !important;
        min-height: 42px !important;
        height: 42px !important;
        padding: 0 18px !important;
        font-size: 8.25px !important;
    }

    body.page-product .path-subsection-final .final-section-break {
        margin-top: var(--stage3-final-cta-gap) !important;
        padding-top: var(--stage3-final-cta-gap) !important;
    }

    body.page-product .path-subsection-final .final-legal-block {
        padding-top: 0 !important;
    }

    body.page-product .path-subsection-final .final-legal-lead {
        font-size: 10.5px !important;
        line-height: 1.34 !important;
        margin-bottom: 0 !important;
    }

    body.page-product .path-subsection-final .final-license-line {
        font-size: 9.5px !important;
        line-height: 1.34 !important;
        margin-bottom: 0 !important;
    }

    body.page-product .path-subsection-final .final-legal-copy {
        font-size: 9.6px !important;
        line-height: 1.42 !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product {
        --stage3-touch-card-gap: 18px;
        --stage3-faq-help-card-h: 76px;
        --stage3-faq-help-card-padding: 11px 13px;
        --stage3-faq-help-card-shell-gap: 9px;
        --stage3-faq-help-card-direction: row;
        --stage3-faq-help-icon-size: 32px;
        --stage3-faq-help-kicker-size: 7.5px;
        --stage3-faq-help-kicker-line: 1.2;
        --stage3-faq-help-kicker-spacing: 0.15em;
        --stage3-faq-help-title-size: 9.5px;
        --stage3-faq-help-title-line: 1.14;
    }
}

@media (orientation: landscape) and (max-height: 900px) {
    html body.page-product .chat-panel,
    html body.page-product .chat-panel.is-thread {
        top: 50% !important;
        bottom: auto !important;
        left: auto !important;
        right: clamp(18px, 4vw, 36px) !important;
        width: min(480px, calc(100vw - 36px)) !important;
        max-width: calc(100vw - 36px) !important;
        height: min(560px, calc(100dvh - 28px)) !important;
        max-height: calc(100dvh - 28px) !important;
        transform: translateY(-50%) !important;
        border-radius: 16px !important;
    }

    body.page-product #edu-modal.path-modal {
        --edu-landscape-inset-x: clamp(60px, 9vw, 150px);
        --edu-landscape-inset-y: clamp(32px, 8dvh, 76px);
        --edu-landscape-box-w: min(920px, calc(100vw - (var(--edu-landscape-inset-x) * 2)));
        --edu-landscape-box-h: min(620px, calc(100dvh - (var(--edu-landscape-inset-y) * 2)));
        --edu-landscape-footer-h: clamp(48px, 7dvh, 58px);
        --edu-landscape-header-h: var(--edu-landscape-footer-h);
        --review-size: clamp(66px, 15dvh, 156px);
        --edu-fit-card-h: clamp(34px, 6.4dvh, 50px);
    }

    body.page-product #edu-modal .path-modal-header,
    body.page-product #edu-modal.compare-mode .path-modal-header {
        min-height: var(--edu-landscape-header-h) !important;
        height: var(--edu-landscape-header-h) !important;
        padding-inline: clamp(46px, 5.2vw, 58px) !important;
    }

    body.page-product #edu-modal .edu-progress-bar,
    body.page-product #edu-modal .edu-progress-dots {
        min-height: 26px !important;
        height: 26px !important;
    }

    body.page-product #edu-modal .edu-progress-dots {
        gap: clamp(18px, 2.7vw, 24px) !important;
    }

    body.page-product #edu-modal .progress-dot {
        width: 40px !important;
        height: 26px !important;
        grid-template-rows: 10px 10px !important;
        gap: 3px !important;
        align-content: start !important;
    }

    body.page-product #edu-modal .dot-inner {
        width: 10px !important;
        height: 10px !important;
    }

    body.page-product #edu-modal .dot-label {
        font-size: 9.5px !important;
        line-height: 10px !important;
    }

    body.page-product #edu-modal .edu-modal-close {
        width: 30px !important;
        height: 30px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode {
        grid-template-columns: minmax(0, 1.22fr) minmax(clamp(176px, 28vw, 320px), 0.78fr) !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-product {
        --stage3-touch-card-gap: 18px;
        --stage3-final-cta-gap: 12px;
        --stage3-faq-help-card-h: 156px;
        --stage3-faq-help-card-padding: 20px 18px;
        --stage3-faq-help-card-shell-gap: 10px;
        --stage3-faq-help-icon-size: 42px;
        --stage3-faq-help-kicker-size: 10px;
        --stage3-faq-help-kicker-line: 1.2;
        --stage3-faq-help-kicker-spacing: 0.15em;
        --stage3-faq-help-title-size: 11px;
        --stage3-faq-help-title-line: 1.35;
        --product-support-sheet-row-min: 36px;
        --product-support-sheet-row-pad-y: 7px;
        --product-support-sheet-row-pad-x: 9px;
    }

    html body.page-product .chat-panel,
    html body.page-product .chat-panel.is-thread {
        width: min(430px, calc(100vw - 36px)) !important;
        height: min(520px, calc(100dvh - 28px)) !important;
        max-height: calc(100dvh - 28px) !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-shell {
        padding: 18px 18px 20px !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-eyebrow {
        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-title {
        margin-top: 8px !important;
        font-size: 26px !important;
        line-height: 1 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-copy {
        margin-top: 7px !important;
        max-width: 27ch !important;
        font-size: 11px !important;
        line-height: 1.24 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-actions {
        gap: 7px !important;
        margin-top: 12px !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-btn {
        min-height: 52px !important;
        grid-template-columns: 30px minmax(0, 1fr) !important;
        gap: 9px !important;
        padding: 9px 42px 9px 11px !important;
        border-radius: 12px !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-glyph {
        width: 30px !important;
        height: 30px !important;
        font-size: 10px !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-label {
        font-size: 9px !important;
        letter-spacing: 0.12em !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-meta {
        font-size: 10px !important;
        line-height: 1.12 !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-btn::after {
        right: 11px !important;
        width: 24px !important;
        height: 24px !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-messages {
        padding-top: 22px !important;
        gap: 10px !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-bubble:first-child {
        margin-top: 4px !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-bubble {
        padding: 12px 16px !important;
        font-size: 12px !important;
        line-height: 1.38 !important;
    }

    body.page-product .chat-consent {
        margin-top: 4px !important;
        padding-top: 3px !important;
        border-top-color: rgba(112, 152, 232, 0.035) !important;
        font-size: 8px !important;
        line-height: 1.05 !important;
        color: rgba(180, 194, 226, 0.58) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .section-title {
        font-size: 28px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-split-layout {
        margin-top: 9px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary {
        min-height: 33px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }

    body.page-product .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta {
        min-height: 38px !important;
        height: 38px !important;
    }
}

@media (max-width: 1180px), (min-width: 1181px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-product .footer-nav::after {
        background:
            radial-gradient(22% 180% at 50% 50%, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.045) 44%, rgba(0, 0, 0, 0) 76%),
            linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.13) 50%, rgba(255, 255, 255, 0.045) 100%) !important;
        box-shadow:
            0 0 8px rgba(255, 255, 255, 0.025),
            0 0 14px rgba(0, 0, 0, 0.32) !important;
    }
}

/* Stage 3b: complete confirmed Term promotions across the product family.
   This widens the first Stage 3 pass beyond Term/group-only selectors. */
body.page-product {
    --stage3-radius-card: var(--abc-radius-card, 14px);
    --stage3-radius-pill: var(--abc-radius-control, 12px);
    --stage3-radius-tile: var(--abc-radius-control-tight, 10px);
    --stage3-popup-ctrl: 28px;
    --stage3-popup-ctrl-line: 8px;
    --stage3-popup-chrome-min: 57px;
}

body.page-product #topic-101 > .section-title,
body.page-product #group-education > .section-title,
body.page-product .path-subsection[id$="-facts"] > .section-title,
body.page-product .product-video-section .video-section-title,
body.page-product .product-testimonials .testimonials-title {
    color: var(--stage3-ivory) !important;
    letter-spacing: 0.32px !important;
    text-wrap: balance;
    position: relative;
}

body.page-product #topic-101 > .section-title::after,
body.page-product #group-education > .section-title::after,
body.page-product .path-subsection[id$="-facts"] > .section-title::after {
    display: none !important;
}

body.page-product .path-subsection[id$="-facts"] > .section-title {
    margin-bottom: 32px !important;
}

body.page-product .product-video-section {
    border-radius: 16px !important;
    border-color: rgba(255, 255, 255, 0.06) !important;
}

body.page-product .product-video-section .video-kicker,
body.page-product .product-testimonials .testimonials-kicker {
    display: none !important;
}

body.page-product .product-video-section .video-summary,
body.page-product .product-testimonials .testimonials-summary {
    color: rgba(212, 218, 230, 0.84) !important;
    text-wrap: balance;
    overflow: visible !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
}

body.page-product .product-video-section .video-card-link {
    border-radius: var(--stage3-radius-card) !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
    transition: transform 0.2s var(--stage3-ease), border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body.page-product .product-video-section .video-card-link:hover,
body.page-product .product-video-section .video-card-link:focus-visible {
    border-color: var(--stage3-accent-line) !important;
    box-shadow:
        0 18px 28px rgba(0, 0, 0, 0.46),
        0 0 18px rgba(168, 188, 220, 0.14),
        inset 0 0 0 1px rgba(255, 255, 255, 0.06) !important;
}

body.page-product .product-video-section .video-play-pill {
    border-radius: var(--stage3-radius-pill) !important;
    border-color: rgba(214, 224, 241, 0.28) !important;
    background: linear-gradient(180deg, rgba(10, 13, 20, 0.92), rgba(4, 6, 10, 0.88)) !important;
    padding: 10px 16px !important;
    transition: transform 0.2s var(--stage3-ease), border-color 0.2s ease, box-shadow 0.2s ease !important;
    box-shadow:
        0 16px 30px rgba(0, 0, 0, 0.52),
        0 0 18px rgba(168, 188, 220, 0.13),
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        inset 0 -1px 0 rgba(168, 188, 220, 0.10) !important;
}

body.page-product .product-video-section .video-card-link:hover .video-play-pill,
body.page-product .product-video-section .video-card-link:focus-visible .video-play-pill {
    transform: translate(-50%, calc(-50% - 1px)) !important;
    border-color: rgba(226, 234, 247, 0.42) !important;
    box-shadow:
        0 18px 34px rgba(0, 0, 0, 0.56),
        0 0 22px rgba(168, 188, 220, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        inset 0 -1px 0 rgba(168, 188, 220, 0.14) !important;
}

body.page-product .product-video-section .video-play-icon {
    background: linear-gradient(135deg, rgba(226, 233, 244, 0.98), rgba(151, 174, 211, 0.96)) !important;
    box-shadow:
        0 0 14px rgba(168, 188, 220, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.45) !important;
}

body.page-product .product-video-section .video-play-icon::before {
    border-left-color: rgba(8, 12, 20, 0.94) !important;
}

body.page-product .product-video-section .video-play-text {
    color: rgba(246, 248, 252, 0.96) !important;
    letter-spacing: 0.42px !important;
}

body.page-product .process-launch-side .journey-entry-tail,
body.page-product .faq-chat-trigger-card .journey-entry-tail {
    display: none !important;
}

/* Journey entry motion: white rest ring; Resources-neon hover/focus ring and pulse. Idle bounce is shared across both journey cards and reduced-motion safe. */
body.page-product,
body.page-life-term {
    --journey-ring-rest-border: rgba(255, 255, 255, 0.92);
    --journey-ring-rest-glow:
        0 0 2px rgba(255, 255, 255, 0.48),
        0 0 10px rgba(255, 255, 255, 0.26),
        0 0 22px rgba(255, 255, 255, 0.12);
    --journey-ring-active-border: rgba(214, 228, 255, 0.98);
    --journey-ring-active-glow:
        0 0 2px rgba(255, 255, 255, 0.45),
        0 0 14px rgba(111, 135, 255, 0.88),
        0 0 30px rgba(130, 112, 255, 0.44),
        0 0 52px rgba(154, 100, 255, 0.26);
    --journey-ring-active-filter:
        drop-shadow(0 0 8px rgba(111, 135, 255, 0.82))
        drop-shadow(0 0 20px rgba(154, 100, 255, 0.32));
    --journey-pulse-active-fill: rgba(111, 135, 255, 0.96);
    --journey-pulse-active-shadow: 0 0 0 0 rgba(130, 112, 255, 0.5);
}

body.page-product .process-launch-side .journey-entry-button,
body.page-product .faq-chat-trigger-card.journey-entry-button {
    border-color: rgba(255, 255, 255, 0.28) !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.10), transparent 38%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.072), rgba(255, 255, 255, 0.022) 36%, rgba(0, 0, 0, 0.96) 100%),
        #050506 !important;
    box-shadow:
        0 24px 44px rgba(0, 0, 0, 0.62),
        0 0 0 1px rgba(255, 255, 255, 0.045),
        inset 0 1px 0 rgba(255, 255, 255, 0.13),
        inset 0 -1px 0 rgba(255, 255, 255, 0.08) !important;
}

body.page-product .process-launch-side .journey-entry-button::before,
body.page-product .faq-chat-trigger-card.journey-entry-button::before {
    background: conic-gradient(
        from var(--snake-angle),
        transparent 0%,
        transparent 66%,
        rgba(255, 255, 255, 0.12) 74%,
        rgba(255, 255, 255, 0.60) 82%,
        rgba(255, 255, 255, 0.86) 86%,
        rgba(255, 255, 255, 0.44) 92%,
        transparent 100%
    ) !important;
    filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.24)) drop-shadow(0 0 14px rgba(255, 255, 255, 0.10)) !important;
}

body.page-product .process-launch-side .journey-entry-button:hover,
body.page-product .process-launch-side .journey-entry-button:focus-visible,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible {
    border-color: rgba(255, 255, 255, 0.34) !important;
    box-shadow:
        0 30px 52px rgba(0, 0, 0, 0.64),
        0 0 22px rgba(255, 255, 255, 0.085),
        0 0 0 1px rgba(255, 255, 255, 0.18),
        0 0 28px rgba(255, 255, 255, 0.13),
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        inset 0 -1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product .process-launch-side .journey-entry-button:hover::before,
body.page-product .process-launch-side .journey-entry-button:focus-visible::before,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover::before,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible::before {
    background: conic-gradient(
        from var(--snake-angle),
        transparent 0%,
        transparent 64%,
        rgba(255, 255, 255, 0.10) 72%,
        rgba(255, 255, 255, 0.52) 80%,
        rgba(255, 255, 255, 0.82) 85%,
        rgba(255, 255, 255, 0.42) 92%,
        rgba(255, 255, 255, 0.12) 96%,
        transparent 100%
    ) !important;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.34)) drop-shadow(0 0 20px rgba(255, 255, 255, 0.16)) brightness(1.08) !important;
}

body.page-product .process-launch-side .journey-entry-button:hover .journey-entry-icon,
body.page-product .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon {
    border-color: rgba(255, 255, 255, 0.46) !important;
    background:
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.72), transparent 30%),
        linear-gradient(180deg, rgba(246, 248, 252, 0.95), rgba(104, 108, 116, 0.94)) !important;
    box-shadow:
        0 10px 20px rgba(0, 0, 0, 0.48),
        0 0 14px rgba(255, 255, 255, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.40),
        inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
}

body.page-product .process-launch-side .journey-entry-button:hover .journey-entry-pulse,
body.page-product .process-launch-side .journey-entry-button:focus-visible .journey-entry-pulse,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-pulse,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-pulse {
    background: var(--journey-pulse-active-fill) !important;
    box-shadow: var(--journey-pulse-active-shadow) !important;
}

body.page-product .process-launch-side .journey-entry-icon,
body.page-product .faq-chat-trigger-card .journey-entry-icon {
    border-radius: 12px !important;
    border-color: rgba(255, 255, 255, 0.46) !important;
    background:
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.72), transparent 30%),
        linear-gradient(180deg, rgba(246, 248, 252, 0.95), rgba(104, 108, 116, 0.94)) !important;
    box-shadow:
        0 10px 20px rgba(0, 0, 0, 0.48),
        0 0 14px rgba(255, 255, 255, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.40),
        inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
}

body.page-product .process-launch-side .journey-entry-icon::before,
body.page-product .faq-chat-trigger-card .journey-entry-icon::before {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.96), rgba(36, 38, 42, 0.94)) !important;
}

body.page-product .process-launch-side .journey-entry-icon::after,
body.page-product .faq-chat-trigger-card .journey-entry-icon::after {
    border-color: var(--journey-ring-rest-border) !important;
    box-shadow: var(--journey-ring-rest-glow) !important;
    filter: none !important;
}

body.page-product .process-launch-side .journey-entry-button:hover .journey-entry-icon::after,
body.page-product .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon::after,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon::after,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon::after {
    border-color: var(--journey-ring-active-border) !important;
    box-shadow: var(--journey-ring-active-glow) !important;
    filter: var(--journey-ring-active-filter) !important;
}

body.page-product .process-launch-side .journey-entry-kicker,
body.page-product .faq-chat-trigger-card .journey-entry-kicker {
    color: rgba(210, 214, 220, 0.80) !important;
}

body.page-product .process-launch-side .journey-entry-title,
body.page-product .faq-chat-trigger-card .journey-entry-title {
    color: rgba(255, 255, 255, 0.98) !important;
}

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1180px) and (orientation: portrait),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-product .process-launch-side .journey-entry-button,
    body.page-product .faq-chat-trigger-card.journey-entry-button {
        border-color: rgba(255, 255, 255, 0.18) !important;
        background:
            radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.055), transparent 38%),
            linear-gradient(145deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.012) 42%, rgba(0, 0, 0, 0.97) 100%),
            #040405 !important;
        box-shadow:
            0 18px 34px rgba(0, 0, 0, 0.52),
            0 0 0 1px rgba(255, 255, 255, 0.026),
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            inset 0 -1px 0 rgba(255, 255, 255, 0.045) !important;
    }

    body.page-product .process-launch-side .journey-entry-button::before,
    body.page-product .faq-chat-trigger-card.journey-entry-button::before {
        opacity: 0.56 !important;
    }

    body.page-product .process-launch-side .journey-entry-icon,
    body.page-product .faq-chat-trigger-card .journey-entry-icon {
        opacity: 0.82 !important;
    }
}

body.page-product .product-testimonials .testimonials-summary-desktop {
    display: inline;
}

body.page-product .product-testimonials .testimonials-summary-mobile {
    display: none;
}

body.page-product .product-testimonials .testimonial-card {
    animation: none !important;
    border-radius: var(--stage3-radius-card) !important;
    border: 1px solid rgba(168, 188, 220, 0.10) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.034) 0%, rgba(255, 255, 255, 0.008) 28%, rgba(255, 255, 255, 0) 100%),
        linear-gradient(160deg, rgba(8, 10, 14, 0.92) 0%, rgba(4, 4, 6, 0.99) 56%, rgba(0, 0, 0, 1) 100%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(115%) !important;
    backdrop-filter: blur(14px) saturate(115%) !important;
    box-shadow:
        0 18px 32px rgba(0, 0, 0, 0.5),
        0 0 12px rgba(168, 188, 220, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    transition:
        transform 0.6s var(--stage3-ease),
        opacity 0.6s var(--stage3-ease),
        filter 0.6s var(--stage3-ease),
        border-color 0.28s ease,
        box-shadow 0.4s var(--stage3-ease) !important;
}

body.page-product .product-testimonials .testimonial-card::after {
    animation: none !important;
    display: none !important;
}

body.page-product .product-testimonials .testimonial-card::before {
    background:
        linear-gradient(180deg, rgba(168, 188, 220, 0.10) 0%, rgba(168, 188, 220, 0) 7%),
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.04), transparent 30%) !important;
    opacity: 0.6 !important;
}

body.page-product .product-testimonials .testimonial-rating {
    border-radius: 4px !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
    background: linear-gradient(180deg, rgba(8, 8, 10, 0.96), rgba(2, 2, 3, 1)) !important;
    color: rgba(232, 236, 244, 0.88) !important;
    font-size: 10px !important;
    letter-spacing: 1.6px !important;
    padding: 6px 11px !important;
}

body.page-product .product-testimonials .testimonial-quote {
    font-style: normal !important;
    font-weight: 500 !important;
    color: rgba(232, 236, 244, 0.94) !important;
    letter-spacing: 0.04px !important;
}

body.page-product .product-testimonials .testimonial-attribution {
    border-top-color: rgba(168, 188, 220, 0.12) !important;
}

body.page-product .product-testimonials .testimonial-name,
body.page-product .product-testimonials .testimonial-location {
    font-size: 10.5px !important;
    letter-spacing: 0.5px !important;
}

body.page-product .product-testimonials .testimonial-name {
    color: rgba(238, 242, 248, 0.94) !important;
}

body.page-product .product-testimonials .testimonial-location {
    color: rgba(190, 202, 220, 0.80) !important;
}

body.page-product .product-testimonials .testimonial-nav {
    min-width: 80px !important;
    min-height: 38px !important;
    padding: 0 13px !important;
    gap: 8px !important;
    border-radius: var(--stage3-radius-pill) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.008)),
        linear-gradient(145deg, rgba(14, 18, 28, 0.84), rgba(4, 4, 6, 0.98)) !important;
    box-shadow:
        0 12px 22px rgba(0, 0, 0, 0.46),
        0 0 12px rgba(168, 188, 220, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
    color: rgba(232, 236, 244, 0.94) !important;
    transition: transform 0.2s var(--stage3-ease), box-shadow 0.2s ease, color 0.2s ease !important;
}

body.page-product .product-testimonials .testimonial-nav::before {
    background: linear-gradient(130deg,
        rgba(168, 188, 220, 0.62),
        rgba(255, 255, 255, 0.08) 38%,
        rgba(168, 188, 220, 0.42) 72%,
        rgba(255, 255, 255, 0.06) 100%) !important;
    opacity: 0.7 !important;
}

body.page-product .product-testimonials .testimonial-nav::after {
    display: none !important;
}

body.page-product .product-testimonials .testimonial-nav:hover,
body.page-product .product-testimonials .testimonial-nav:focus-visible {
    transform: translateY(-1.5px) !important;
    box-shadow:
        0 16px 28px rgba(0, 0, 0, 0.52),
        0 0 20px rgba(125, 149, 255, 0.20),
        0 0 0 1px rgba(125, 149, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
    color: rgba(244, 247, 252, 0.99) !important;
}

body.page-product .product-testimonials .testimonial-nav-label {
    font-size: 9.5px !important;
    letter-spacing: 1.4px !important;
}

body.page-product .product-testimonials .testimonials-progress-dot::before {
    background: linear-gradient(90deg, rgba(168, 188, 220, 0.96), rgba(220, 226, 236, 0.86)) !important;
}

body.page-product .find-doctor-gate,
body.page-product .sidebar-call-pop {
    border-radius: 12px !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
}

body.page-product .find-doctor-gate-head,
body.page-product .sidebar-call-pop-head {
    min-height: var(--stage3-popup-chrome-min) !important;
    padding: 7px 12px 7px 18px !important;
    border-bottom-color: rgba(168, 188, 220, 0.10) !important;
}

body.page-product .find-doctor-gate-footer,
body.page-product .sidebar-call-pop-footer {
    min-height: var(--stage3-popup-chrome-min) !important;
    padding: 7px 18px !important;
}

body.page-product .find-doctor-gate-copy {
    max-width: 42ch !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-wrap: balance;
}

body.page-product .find-doctor-gate-actions {
    gap: 8px !important;
}

body.page-product .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
body.page-product .drug-plan-bridge .find-doctor-choice {
    min-height: 56px !important;
    padding: 11px 14px 11px 16px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
    transition: all 0.3s var(--stage3-ease) !important;
}

body.page-product .find-doctor-gate .find-doctor-choice:hover,
body.page-product .find-doctor-gate .find-doctor-choice:focus-visible {
    background: rgba(255, 255, 255, 0.10) !important;
    border-color: rgba(168, 188, 220, 0.4) !important;
    box-shadow:
        0 12px 32px rgba(0, 0, 0, 0.5),
        inset 0 1px 0 rgba(255, 255, 255, 0.25),
        0 0 20px rgba(168, 188, 220, 0.15) !important;
    transform: translateY(-1px) !important;
}

body.page-product .fdc-label {
    color: #ffffff !important;
    font-size: 12px !important;
    letter-spacing: 0.09em !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.8) !important;
}

body.page-product .fdc-arrow {
    transform: scale(0.86) !important;
}

body.page-product .find-doctor-gate-close,
body.page-product .sidebar-call-pop-close {
    width: var(--stage3-popup-ctrl) !important;
    height: var(--stage3-popup-ctrl) !important;
    min-width: var(--stage3-popup-ctrl) !important;
    min-height: var(--stage3-popup-ctrl) !important;
    border-radius: 7px !important;
}

body.page-product .find-doctor-gate-close::before,
body.page-product .find-doctor-gate-close::after,
body.page-product .sidebar-call-pop-close::before,
body.page-product .sidebar-call-pop-close::after {
    width: var(--stage3-popup-ctrl-line) !important;
}

@media (min-width: 961px) and (hover: hover) and (pointer: fine) {
    body.page-product .path-subsection[id$="-facts"] .topic-list {
        gap: 12px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item {
        border-radius: 12px !important;
        border-color: rgba(168, 188, 220, 0.065) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.026) 0%, rgba(255, 255, 255, 0.006) 38%, rgba(255, 255, 255, 0) 100%),
            linear-gradient(160deg, rgba(7, 9, 13, 0.84) 0%, rgba(4, 4, 6, 0.965) 64%, rgba(0, 0, 0, 0.99) 100%) !important;
        box-shadow:
            0 12px 24px rgba(0, 0, 0, 0.42),
            0 0 0 1px rgba(255, 255, 255, 0.018),
            inset 0 1px 0 rgba(255, 255, 255, 0.04),
            inset 0 -1px 0 rgba(168, 188, 220, 0.018) !important;
        transition:
            border-color 0.28s ease,
            box-shadow 0.34s var(--stage3-ease),
            background 0.28s ease !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item:hover,
    body.page-product .path-subsection[id$="-facts"] .topic-item:focus-within,
    body.page-product .path-subsection[id$="-facts"] .topic-item[open] {
        border-color: rgba(168, 188, 220, 0.22) !important;
        box-shadow:
            0 16px 30px rgba(0, 0, 0, 0.5),
            0 0 0 1px rgba(168, 188, 220, 0.075),
            0 0 18px rgba(168, 188, 220, 0.055),
            inset 0 1px 0 rgba(255, 255, 255, 0.07),
            inset 0 -1px 0 rgba(168, 188, 220, 0.035) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary {
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary:focus-visible {
        outline: none !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary::after {
        align-self: center !important;
        width: 8px !important;
        height: 8px !important;
        border: 1px solid rgba(235, 238, 244, 0.075) !important;
        border-radius: 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.052) 0 18%, rgba(18, 18, 20, 0.82) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.018),
            inset 0 -1px 0 rgba(0, 0, 0, 0.78) !important;
        clip-path: none !important;
        filter: none !important;
        transform: translateY(0) rotate(0deg) !important;
        transition:
            transform 0.26s var(--stage3-ease),
            border-color 0.26s ease,
            width 0.26s var(--stage3-ease),
            height 0.26s var(--stage3-ease) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item:hover summary::after,
    body.page-product .path-subsection[id$="-facts"] .topic-item:focus-within summary::after {
        border-color: rgba(245, 247, 250, 0.14) !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.075) 0 18%, rgba(22, 22, 24, 0.86) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item[open] summary::after {
        width: 8px !important;
        height: 8px !important;
        border: 0 !important;
        border-top: 1.6px solid rgba(232, 238, 248, 0.76) !important;
        border-right: 1.6px solid rgba(232, 238, 248, 0.76) !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        clip-path: none !important;
        transform: translateY(-2px) rotate(135deg) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item[open] .topic-body {
        border-top: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-step {
        border-radius: 6px !important;
        border: 1px solid rgba(168, 188, 220, 0.11) !important;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, 0.075) 0%, rgba(255, 255, 255, 0.018) 42%, rgba(0, 0, 0, 0) 100%),
            linear-gradient(180deg, rgba(9, 10, 13, 0.98), rgba(1, 1, 2, 1)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            inset 0 -1px 0 rgba(0, 0, 0, 0.45),
            0 2px 5px rgba(0, 0, 0, 0.32) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-step::before {
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        color: rgba(242, 245, 250, 0.92) !important;
        text-shadow: 0 1px 5px rgba(0, 0, 0, 0.64) !important;
    }

    body.page-product .process-launch-side .journey-entry-button,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button {
        border-color: rgba(255, 255, 255, 0.18) !important;
        background:
            radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.055), transparent 38%),
            linear-gradient(145deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.012) 42%, rgba(0, 0, 0, 0.97) 100%),
            #040405 !important;
        box-shadow:
            0 18px 34px rgba(0, 0, 0, 0.52),
            0 0 0 1px rgba(255, 255, 255, 0.026),
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            inset 0 -1px 0 rgba(255, 255, 255, 0.045) !important;
    }

    body.page-product .process-launch-side .journey-entry-button::before,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button::before {
        opacity: 0.56 !important;
    }

    body.page-product .process-launch-side .journey-entry-icon,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-icon {
        opacity: 0.82 !important;
    }

    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:hover,
    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:focus-visible,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible {
        transform: translateY(-4px) !important;
        border-color: rgba(255, 255, 255, 0.34) !important;
        box-shadow:
            0 30px 52px rgba(0, 0, 0, 0.64),
            0 0 22px rgba(255, 255, 255, 0.085),
            0 0 0 1px rgba(255, 255, 255, 0.18),
            0 0 28px rgba(255, 255, 255, 0.13),
            inset 0 1px 0 rgba(255, 255, 255, 0.18),
            inset 0 -1px 0 rgba(255, 255, 255, 0.10) !important;
    }

    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:hover::before,
    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:focus-visible::before,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover::before,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible::before {
        background: conic-gradient(
            from var(--snake-angle),
            transparent 0%,
            transparent 64%,
            rgba(255, 255, 255, 0.10) 72%,
            rgba(255, 255, 255, 0.52) 80%,
            rgba(255, 255, 255, 0.82) 85%,
            rgba(255, 255, 255, 0.42) 92%,
            rgba(255, 255, 255, 0.12) 96%,
            transparent 100%
        ) !important;
        filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.34)) drop-shadow(0 0 20px rgba(255, 255, 255, 0.16)) brightness(1.08) !important;
    }

    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:hover .journey-entry-icon,
    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon {
        border-color: rgba(255, 255, 255, 0.46) !important;
        background:
            radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.72), transparent 30%),
            linear-gradient(180deg, rgba(246, 248, 252, 0.95), rgba(104, 108, 116, 0.94)) !important;
        box-shadow:
            0 10px 20px rgba(0, 0, 0, 0.48),
            0 0 14px rgba(255, 255, 255, 0.15),
            inset 0 1px 0 rgba(255, 255, 255, 0.40),
            inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
    }

    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:hover .journey-entry-pulse,
    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:focus-visible .journey-entry-pulse,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-pulse,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-pulse {
        background: var(--journey-pulse-active-fill) !important;
        box-shadow: var(--journey-pulse-active-shadow) !important;
    }

    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:hover .journey-entry-icon::after,
    body.page-product .path-subsection.flow-subsection .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon::after,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon::after,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon::after {
        border-color: var(--journey-ring-active-border) !important;
        box-shadow: var(--journey-ring-active-glow) !important;
        filter: var(--journey-ring-active-filter) !important;
    }
}

@media (max-width: 640px) {
    body.page-product .product-video-section {
        padding: 14px !important;
        margin-top: 32px !important;
    }

    body.page-product .product-video-section .video-section-title {
        font-size: clamp(18px, 6vw, 22px) !important;
        white-space: nowrap;
        line-height: 1.16 !important;
    }

    body.page-product .product-video-section .video-summary {
        font-size: 11.75px !important;
        line-height: 1.46 !important;
        max-width: 40ch;
        margin-bottom: 12px !important;
    }

    body.page-product .product-video-section .video-legal-note {
        font-size: 10px !important;
        line-height: 1.4 !important;
        text-wrap: balance;
        max-width: 44ch;
    }

    body.page-product .product-video-section .video-play-pill {
        padding: 7px 12px !important;
        gap: 7px !important;
    }

    body.page-product .product-video-section .video-play-text {
        font-size: 10.5px !important;
        letter-spacing: 0.4px !important;
    }

    body.page-product .product-testimonials .testimonials-title {
        font-size: clamp(17px, 5.2vw, 21px) !important;
        line-height: 1.16 !important;
        text-wrap: balance;
    }

    body.page-product .product-testimonials {
        margin-top: 36px !important;
    }

    body.page-product .product-testimonials .testimonials-summary {
        font-size: 11.5px !important;
        line-height: 1.42 !important;
        max-width: 36ch;
        margin: 0 auto 6px !important;
        text-align: left;
    }

    body.page-product .product-testimonials .testimonials-stage {
        min-height: 248px !important;
        padding: 4px 6px 6px !important;
        margin-top: 6px !important;
    }

    body.page-product .product-testimonials .testimonials-spotlight {
        min-height: 198px !important;
    }

    body.page-product .product-testimonials .testimonial-card {
        width: min(92%, 540px) !important;
        min-height: 174px !important;
        padding: 12px 13px 11px !important;
        border-radius: 9px !important;
        gap: 10px !important;
    }

    body.page-product .product-testimonials .testimonial-rating {
        font-size: 9px !important;
        letter-spacing: 1.4px !important;
        padding: 4px 9px !important;
        border-radius: 3px !important;
    }

    body.page-product .product-testimonials .testimonial-quote {
        font-size: 12.25px !important;
        line-height: 1.5 !important;
    }

    body.page-product .product-testimonials .testimonial-attribution {
        padding-top: 8px !important;
    }

    body.page-product .product-testimonials .testimonial-name,
    body.page-product .product-testimonials .testimonial-location {
        font-size: 9.5px !important;
        letter-spacing: 0.4px !important;
    }

    body.page-product .product-testimonials .testimonial-nav {
        min-width: 0 !important;
        min-height: 32px !important;
        padding: 0 10px !important;
        border-radius: 9px !important;
        gap: 6px !important;
    }

    body.page-product .product-testimonials .testimonial-nav-label {
        font-size: 8.5px !important;
        letter-spacing: 1.1px !important;
    }

    body.page-product .product-testimonials .testimonial-nav-icon {
        width: 11px !important;
        height: 11px !important;
        flex: 0 0 11px !important;
    }

    body.page-product .product-testimonials .testimonials-progress {
        margin-top: 8px !important;
        gap: 5px !important;
    }

    body.page-product .product-testimonials .testimonials-progress-dot {
        width: 18px !important;
        height: 3px !important;
    }

    body.page-product .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-product .drug-plan-bridge .find-doctor-choice {
        min-height: 50px !important;
        padding: 10px 12px 10px 14px !important;
    }

    body.page-product .fdc-label {
        font-size: 11px !important;
    }
}

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-product .product-testimonials .testimonials-summary-desktop {
        display: none;
    }

    body.page-product .product-testimonials .testimonials-summary-mobile {
        display: inline;
    }

    body.page-product .path-subsection[id$="-facts"] {
        padding-top: 14px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .section-title {
        font-size: clamp(26px, 5.2vw, 32px) !important;
        line-height: 1.02 !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-split-layout {
        gap: var(--stage3-touch-card-gap) !important;
        margin-top: 11px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-list {
        gap: 6px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item {
        border-radius: 11px !important;
        border-color: rgba(168, 188, 220, 0.07) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.024) 0%, rgba(255, 255, 255, 0.006) 40%, rgba(255, 255, 255, 0) 100%),
            linear-gradient(160deg, rgba(7, 9, 13, 0.84) 0%, rgba(4, 4, 6, 0.965) 64%, rgba(0, 0, 0, 0.99) 100%) !important;
        box-shadow:
            0 10px 20px rgba(0, 0, 0, 0.40),
            0 0 0 1px rgba(255, 255, 255, 0.016),
            inset 0 1px 0 rgba(255, 255, 255, 0.038),
            inset 0 -1px 0 rgba(168, 188, 220, 0.016) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary {
        min-height: 36px !important;
        padding: 7px 10px !important;
        gap: 7px !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary h3 {
        font-size: clamp(10.75px, 1.46vw, 12px) !important;
        line-height: 1.14 !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-step {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        border-radius: 6px !important;
        border: 1px solid rgba(168, 188, 220, 0.11) !important;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, 0.075) 0%, rgba(255, 255, 255, 0.018) 42%, rgba(0, 0, 0, 0) 100%),
            linear-gradient(180deg, rgba(9, 10, 13, 0.98), rgba(1, 1, 2, 1)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            inset 0 -1px 0 rgba(0, 0, 0, 0.45),
            0 2px 5px rgba(0, 0, 0, 0.32) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-step::before {
        font-size: 9px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        color: rgba(242, 245, 250, 0.92) !important;
        text-shadow: 0 1px 5px rgba(0, 0, 0, 0.64) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary::after {
        align-self: center !important;
        width: 7px !important;
        height: 7px !important;
        border: 1px solid rgba(235, 238, 244, 0.08) !important;
        border-radius: 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.052) 0 18%, rgba(18, 18, 20, 0.82) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.018),
            inset 0 -1px 0 rgba(0, 0, 0, 0.78) !important;
        clip-path: none !important;
        filter: none !important;
        transform: translateY(0) rotate(0deg) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item[open] summary::after {
        width: 7px !important;
        height: 7px !important;
        border: 0 !important;
        border-top: 1.5px solid rgba(232, 238, 248, 0.76) !important;
        border-right: 1.5px solid rgba(232, 238, 248, 0.76) !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: translateY(-1px) rotate(135deg) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-body {
        padding: 0 12px 10px !important;
        font-size: 11.5px !important;
        line-height: 1.36 !important;
        background: transparent !important;
        border-top: 0 !important;
        box-shadow: none !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-body p {
        padding-left: 27px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card.journey-entry-button,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-cta .faq-chat-trigger-card.journey-entry-button,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-shell {
        min-height: var(--stage3-faq-help-card-h) !important;
        height: var(--stage3-faq-help-card-h) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-shell,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .faq-chat-trigger-shell {
        padding: var(--stage3-faq-help-card-padding) !important;
        gap: var(--stage3-faq-help-card-shell-gap) !important;
        flex-direction: var(--stage3-faq-help-card-direction) !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-title {
        font-size: var(--stage3-faq-help-title-size) !important;
        line-height: var(--stage3-faq-help-title-line) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-kicker {
        font-size: var(--stage3-faq-help-kicker-size) !important;
        line-height: var(--stage3-faq-help-kicker-line) !important;
        letter-spacing: var(--stage3-faq-help-kicker-spacing) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-icon {
        width: var(--stage3-faq-help-icon-size) !important;
        height: var(--stage3-faq-help-icon-size) !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-copy {
        align-items: center !important;
        text-align: center !important;
    }

    body.page-product .path-subsection[id$="-facts"] + .product-video-section,
    body.page-product .panel-unified .path-subsection[id$="-facts"] + .product-video-section {
        margin-top: var(--stage3-touch-card-gap) !important;
    }

    body.page-product .find-doctor-gate,
    body.page-product .sidebar-call-pop {
        width: min(430px, calc(100vw - 28px)) !important;
        height: min(286px, calc(100dvh - 34px)) !important;
        max-height: calc(100dvh - 34px) !important;
        border-radius: 12px !important;
    }

    body.page-product .drug-plan-bridge {
        height: min(304px, calc(100dvh - 34px)) !important;
    }

    body.page-product .find-doctor-gate-head,
    body.page-product .sidebar-call-pop-head,
    body.page-product .find-doctor-gate-footer,
    body.page-product .sidebar-call-pop-footer {
        min-height: 52px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    body.page-product .find-doctor-gate-body,
    body.page-product .sidebar-call-pop-body {
        padding: 12px 14px !important;
    }

    body.page-product .find-doctor-gate-content {
        gap: 10px !important;
    }

    body.page-product .find-doctor-gate-copy {
        max-width: 38ch !important;
        font-size: 11.5px !important;
        line-height: 1.38 !important;
    }

    body.page-product .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-product .drug-plan-bridge .find-doctor-choice {
        min-height: 42px !important;
        padding: 8px 11px 8px 13px !important;
        border-radius: 9px !important;
    }

    body.page-product .find-doctor-gate-actions {
        gap: 7px !important;
    }

    body.page-product .fdc-label {
        font-size: 10.5px !important;
        line-height: 1.12 !important;
    }

    body.page-product .find-doctor-fallback,
    body.page-product .sidebar-call-pop-hours {
        font-size: 8.5px !important;
        line-height: 1.28 !important;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-product .find-doctor-gate-head,
    body.page-product .sidebar-call-pop-head,
    body.page-product .find-doctor-gate-footer,
    body.page-product .sidebar-call-pop-footer {
        min-height: 57px !important;
    }

    body.page-product .product-video-section .video-section-title {
        white-space: nowrap;
        font-size: clamp(20px, 4vw, 26px) !important;
    }

    body.page-product .product-video-section .video-summary {
        font-size: 12.5px !important;
        line-height: 1.5 !important;
        max-width: 56ch;
    }

    body.page-product .product-testimonials .testimonials-title {
        font-size: clamp(19px, 3.6vw, 24px) !important;
    }

    body.page-product .product-testimonials .testimonials-summary {
        font-size: 12px !important;
        line-height: 1.46 !important;
        max-width: 60ch;
    }

    body.page-product .product-testimonials .testimonials-stage {
        min-height: 270px !important;
    }

    body.page-product .product-testimonials .testimonials-spotlight {
        min-height: 218px !important;
    }

    body.page-product .product-testimonials .testimonial-card {
        min-height: 196px !important;
        padding: 14px 16px 13px !important;
        border-radius: 10px !important;
    }

    body.page-product .product-testimonials .testimonial-quote {
        font-size: 13.25px !important;
        line-height: 1.54 !important;
    }

    body.page-product .product-testimonials .testimonial-rating {
        font-size: 9.5px !important;
    }

    body.page-product .product-testimonials .testimonial-nav {
        min-height: 36px !important;
        padding: 0 12px !important;
        border-radius: 10px !important;
    }
}

@media (orientation: landscape) and (max-height: 900px) {
    body.page-product .find-doctor-gate,
    body.page-product .sidebar-call-pop {
        width: min(410px, calc(100vw - 36px)) !important;
        height: min(242px, calc(100dvh - 32px)) !important;
    }

    body.page-product .drug-plan-bridge {
        height: min(258px, calc(100dvh - 32px)) !important;
    }

    body.page-product .find-doctor-gate-head,
    body.page-product .sidebar-call-pop-head,
    body.page-product .find-doctor-gate-footer,
    body.page-product .sidebar-call-pop-footer {
        min-height: 42px !important;
    }

    body.page-product .find-doctor-gate-body,
    body.page-product .sidebar-call-pop-body {
        padding: 9px 12px !important;
    }

    body.page-product .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-product .drug-plan-bridge .find-doctor-choice {
        min-height: 38px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }
}

@media (hover: hover) and (pointer: fine) and (orientation: landscape) and (max-height: 900px) {
    body.page-product .find-doctor-gate-head,
    body.page-product .sidebar-call-pop-head,
    body.page-product .find-doctor-gate-footer,
    body.page-product .sidebar-call-pop-footer {
        min-height: 57px !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-product .path-subsection[id$="-facts"] .section-title {
        font-size: 28px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .faq-split-layout {
        margin-top: 9px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary {
        min-height: 33px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }
}

/* =============================================================================
   Premium ABC color hierarchy
   Resources desktop orbit: slightly stronger ion read than the cooled mega menu.
   Layout unchanged; border and outer glow only.
   ============================================================================= */
body.page-product .panel-side.advisor-orbit {
    border-color: rgba(111, 135, 255, 0.23);
    box-shadow:
        0 30px 54px rgba(0, 0, 0, 0.62),
        0 0 28px rgba(111, 135, 255, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        inset 4px 0 0 var(--neon-blue);
}

body.page-product .panel-side.advisor-orbit::after {
    border-color: rgba(111, 135, 255, 0.11);
}

body.page-product .panel-side.advisor-orbit:hover {
    border-color: rgba(111, 135, 255, 0.48);
    box-shadow:
        0 44px 68px rgba(0, 0, 0, 0.74),
        0 0 42px rgba(111, 135, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        inset 4px 0 0 var(--neon-blue);
}

@media (prefers-reduced-motion: reduce) {
    body.page-product .product-testimonials .testimonial-card,
    body.page-product .product-testimonials .testimonial-nav {
        animation: none !important;
        transition: none !important;
    }
}

/* Stage 3c: shared mobile/tablet polish from approved Term behavior. */
body.page-product .path-modal .path-modal-backdrop,
body.page-product #edu-modal .path-modal-backdrop,
body.page-product #edu-modal .edu-modal-backdrop,
body.page-product .mobile-support-sheet-backdrop,
body.page-product.product-support-open .mobile-support-sheet-backdrop,
body.page-product .chat-overlay,
body.page-product.chat-open .chat-overlay,
body.page-product .find-doctor-gate-backdrop,
body.page-product .sidebar-call-pop-backdrop {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.055) 0%, rgba(6, 8, 14, 0.22) 46%, rgba(3, 4, 8, 0.58) 100%),
        linear-gradient(180deg, rgba(2, 3, 6, 0.62) 0%, rgba(2, 3, 6, 0.72) 100%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(110%) !important;
    backdrop-filter: blur(12px) saturate(110%) !important;
}

body.page-product .path-modal .path-modal-backdrop::before,
body.page-product #edu-modal .path-modal-backdrop::before,
body.page-product #edu-modal .edu-modal-backdrop::before,
body.page-product .mobile-support-sheet-backdrop::before,
body.page-product.product-support-open .mobile-support-sheet-backdrop::before,
body.page-product .chat-overlay::before,
body.page-product.chat-open .chat-overlay::before,
body.page-product .find-doctor-gate-backdrop::before,
body.page-product .sidebar-call-pop-backdrop::before {
    display: none !important;
    opacity: 0 !important;
}

/* Small resource popups: backdrop-only cinematic dark scrim. */
body.page-product .find-doctor-gate-backdrop,
body.page-product .sidebar-call-pop-backdrop {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.055) 0%, rgba(6, 8, 14, 0.22) 46%, rgba(3, 4, 8, 0.58) 100%),
        linear-gradient(180deg, rgba(2, 3, 6, 0.62) 0%, rgba(2, 3, 6, 0.72) 100%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(110%) !important;
    backdrop-filter: blur(12px) saturate(110%) !important;
}

body.page-product .find-doctor-gate-backdrop::before,
body.page-product .sidebar-call-pop-backdrop::before {
    display: none !important;
    opacity: 0 !important;
}

@media (max-width: 768px), (min-width: 769px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-product .product-hero .cta-core.cta-primary.float-cta,
    body.page-product .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta,
    body.page-product .path-modal-footer .cta-core.cta-primary.float-cta {
        font-size: 8.25px !important;
        line-height: 1 !important;
        letter-spacing: 1px !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn,
    body.page-product #edu-modal .edu-modal-jump-cta,
    body.page-product #edu-modal .path-modal-cta {
        font-size: 8.25px !important;
        line-height: 1 !important;
        letter-spacing: 1px !important;
        white-space: nowrap !important;
    }

    body.page-product #topic-101 > .section-title,
    body.page-product #group-education > .section-title {
        white-space: nowrap !important;
        text-wrap: nowrap !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        max-width: 100% !important;
        font-size: clamp(20px, 5.9vw, 30px) !important;
        line-height: 1.04 !important;
    }

    body.page-product .product-video-section .video-title-desktop {
        display: none !important;
    }

    body.page-product .product-video-section .video-title-mobile {
        display: inline !important;
    }

    body.page-product .product-video-section .video-section-title {
        white-space: nowrap !important;
        text-wrap: nowrap !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        max-width: 100% !important;
        font-size: clamp(18px, 5vw, 24px) !important;
        line-height: 1.06 !important;
    }

    body.page-product .product-video-section .video-summary,
    body.page-product .product-video-section .video-legal-note,
    body.page-product .product-testimonials .testimonials-summary {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: auto !important;
        text-align: left !important;
        text-wrap: nowrap !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: clip !important;
    }

    body.page-product .product-testimonials .testimonials-summary-mobile {
        display: block !important;
        width: 100% !important;
        text-align: left !important;
        white-space: nowrap !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary {
        grid-template-columns: 20px minmax(0, 1fr) 10px !important;
        align-items: center !important;
        min-height: 34px !important;
        gap: 7px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary h3 {
        display: block !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        text-wrap: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        line-height: 1.08 !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary h3 {
        display: flex !important;
        align-items: center !important;
        align-self: stretch !important;
        transform: translateY(1px) !important;
    }
}

@media (max-width: 390px) {
    body.page-product #topic-101 > .section-title,
    body.page-product #group-education > .section-title {
        font-size: clamp(19px, 5.65vw, 24px) !important;
    }

    body.page-product .product-video-section .video-section-title {
        font-size: clamp(17px, 4.7vw, 21px) !important;
    }
}

@media (max-width: 1180px) {
    body.page-product .product-hero .cta-core.cta-primary.float-cta,
    body.page-product .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta,
    body.page-product .path-modal-footer .cta-core.cta-primary.float-cta {
        font-size: 8.25px !important;
        line-height: 1 !important;
        letter-spacing: 1px !important;
    }

    body.page-product .product-video-section .video-title-desktop,
    body.page-product .product-video-section .video-copy-desktop {
        display: none !important;
    }

    body.page-product .product-video-section .video-title-mobile,
    body.page-product .product-video-section .video-copy-mobile {
        display: inline !important;
    }

    body.page-product .product-video-section .video-section-title {
        font-size: clamp(16px, 4.4vw, 22px) !important;
        letter-spacing: 0 !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-product #topic-101 > .section-title,
    body.page-product #group-education > .section-title,
    body.page-product .product-video-section .video-section-title {
        white-space: nowrap !important;
        text-wrap: nowrap !important;
    }

    body.page-product .mobile-support-sheet {
        left: 12px !important;
        right: auto !important;
        top: auto !important;
        bottom: calc(var(--product-compact-footer-h) + 8px + env(safe-area-inset-bottom, 0px)) !important;
        width: min(306px, calc(100vw - 28px)) !important;
        max-width: min(306px, calc(100vw - 28px)) !important;
        height: auto !important;
        max-height: calc(
            100dvh
            - var(--product-compact-header-h)
            - var(--product-compact-footer-h)
            - env(safe-area-inset-top, 0px)
            - env(safe-area-inset-bottom, 0px)
            - 28px
        ) !important;
        overflow-y: auto !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    body.page-product .mobile-support-sheet::-webkit-scrollbar {
        width: 0 !important;
        height: 0 !important;
    }

    body.page-product .mobile-support-sheet-head {
        min-height: 0 !important;
        margin-bottom: 4px !important;
        padding: 6px 18px 4px !important;
    }

    body.page-product .mobile-support-sheet-title {
        font-size: 20px !important;
        line-height: 1 !important;
    }

    body.page-product .mobile-support-sheet-desc {
        display: none !important;
    }

    body.page-product .mobile-support-sheet .mobile-support-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 3px !important;
        margin-top: 0 !important;
        padding: 0 8px 0 !important;
    }

    body.page-product .mobile-support-sheet a.mobile-support-action,
    body.page-product .mobile-support-sheet button.mobile-support-action {
        min-height: 34px !important;
        padding: 6px 9px !important;
    }

    body.page-product .path-subsection[id$="-facts"] .topic-item summary h3 {
        white-space: nowrap !important;
        text-wrap: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}


/* Life Term page-scoped polish moved from life-term-polish-cursor.css.
   Active source-of-truth cleanup: keep these rules scoped to body.page-life-term.
   The original file remains on disk as rollback/reference and is no longer linked.
*/
/*
    life-term-polish-cursor.css
    Independent (CURSOR) polish pass for life-term.html.
    Single source of truth for Term polish (polish-test.css link was dropped).

    Locked keepers (per Greg, May 1, iteration 2):
      Term:
        - 101 / video / testimonial headings locked one-line (mobile + tablet)
        - Video summary protected from dot truncation
        - Testimonials COMPACT on mobile + tablet
        - Carrier logos: one shared baseline + capped widths + per-logo symmetry
        - X / Close / Back unified at 30 / 34 / 38 px on chat / video modal /
          edu modal (resource popups + sidebar call use a smaller 28 px variant)
        - Sub-popup radius + copy wraps tightened on the SHELL; interior glass
          button preview is Term-only pending final viewport verification
        - Chat panel reverts to baseline (no cool-slate tint)
        - Section title hairline underline applies ONLY to Term Life 101 and
          The Process â€” NOT to video, testimonials, or FAQ
        - Section break under final CTA reverts to baseline (gold fade hairline)
        - Resource popup footer height matches header (54 px), X close 28 px
        - Call Our Team backdrop matches other resource popups

    Color rule: cool slate ivory; no warm cream anywhere.
*/

body.page-life-term {
    --tlp-accent: rgba(168, 188, 220, 0.92);
    --tlp-accent-soft: rgba(168, 188, 220, 0.18);
    --tlp-accent-line: rgba(168, 188, 220, 0.42);
    --tlp-ivory: rgba(244, 247, 252, 0.96);
    --tlp-ivory-soft: rgba(220, 226, 236, 0.78);
    --tlp-ease: cubic-bezier(0.32, 0.72, 0, 1);
    --tlp-radius-card: var(--abc-radius-card, 14px);
    --tlp-radius-pill: var(--abc-radius-control, 12px);
    --tlp-radius-tile: var(--abc-radius-control-tight, 10px);
    --tlp-ctrl-phone: 30px;
    --tlp-ctrl-tablet: 34px;
    --tlp-ctrl-desktop: 38px;
    --tlp-ctrl-line: 9px;
    --tlp-popup-ctrl: 28px;
    --tlp-popup-ctrl-line: 8px;
    --tlp-popup-chrome-min: 57px;
}

html.alignment-tool-enabled body.page-life-term [data-alignment-tool],
html.alignment-tool-enabled body.page-life-term .alignment-tool-overlay {
    display: none !important;
}

/* Chat thread footer compact lock: keep the legal note present but stop it
   from stealing vertical room from the message panel. */
body.page-product .chat-panel.is-thread:not(.is-selecting),
html body.page-product .chat-panel.is-thread:not(.is-selecting) {
    padding-bottom: 9px !important;
}

body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-messages {
    margin-bottom: 8px !important;
}

body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-input-row {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
}

body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-consent {
    margin: 2px 0 0 !important;
    padding: 0 !important;
    border-top-color: transparent !important;
    font-size: 7.5px !important;
    line-height: 1 !important;
    color: rgba(180, 194, 226, 0.52) !important;
}

@media (max-width: 640px), (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-product .chat-panel.is-thread:not(.is-selecting),
    html body.page-product .chat-panel.is-thread:not(.is-selecting) {
        padding-bottom: 7px !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-messages {
        margin-bottom: 6px !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-input-row {
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-consent {
        margin-top: 1px !important;
        font-size: 7px !important;
    }
}

/* =========================================================================
   1. SECTION HEADINGS â€” locked one-line on mobile + tablet.
   Underline accent ONLY on Term Life 101 and The Process (text section).
   ========================================================================= */

body.page-life-term #topic-101 > .section-title,
body.page-life-term .product-video-section .video-section-title,
body.page-life-term .product-testimonials .testimonials-title,
body.page-life-term #group-facts > .section-title {
    color: var(--tlp-ivory) !important;
    letter-spacing: 0.32px !important;
    text-wrap: balance;
    position: relative;
}

body.page-life-term #group-facts > .section-title {
    margin-bottom: var(--section-title-gap) !important;
}

@media (max-width: 640px) {
    body.page-life-term #topic-101 > .section-title {
        font-size: clamp(20px, 6.4vw, 24px) !important;
        line-height: 1.18 !important;
        white-space: nowrap;
        letter-spacing: 0.2px !important;
    }
    body.page-life-term .product-video-section .video-section-title {
        font-size: clamp(18px, 6vw, 22px) !important;
        white-space: nowrap;
        line-height: 1.16 !important;
    }
    body.page-life-term .product-testimonials .testimonials-title {
        font-size: clamp(17px, 5.2vw, 21px) !important;
        line-height: 1.16 !important;
        text-wrap: balance;
    }
}

@media (min-width: 641px) and (max-width: 960px) {
    body.page-life-term #topic-101 > .section-title {
        font-size: clamp(22px, 4.6vw, 28px) !important;
        line-height: 1.18 !important;
        white-space: nowrap;
    }
    body.page-life-term .product-video-section .video-section-title {
        white-space: nowrap;
        font-size: clamp(20px, 4vw, 26px) !important;
    }
    body.page-life-term .product-testimonials .testimonials-title {
        font-size: clamp(19px, 3.6vw, 24px) !important;
    }
}

/* =========================================================================
   2. EDUCATIONAL VIDEO â€” clean rhythm, no truncation.
   ========================================================================= */

body.page-life-term .product-video-section {
    border-radius: 16px !important;
    border-color: rgba(255, 255, 255, 0.06) !important;
}

body.page-life-term .product-video-section .video-kicker {
    display: none !important;
}

body.page-life-term .product-video-section .video-summary {
    text-wrap: balance;
    color: rgba(212, 218, 230, 0.84) !important;
    overflow: visible !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
}

body.page-life-term .product-video-section .video-card-link {
    border-radius: var(--tlp-radius-card) !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
    transition: transform 0.2s var(--tlp-ease), border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body.page-life-term .product-video-section .video-card-link:hover {
    border-color: var(--tlp-accent-line) !important;
    box-shadow:
        0 18px 28px rgba(0, 0, 0, 0.46),
        0 0 18px rgba(168, 188, 220, 0.14),
        inset 0 0 0 1px rgba(255, 255, 255, 0.06) !important;
}

body.page-life-term .product-video-section .video-play-pill {
    border-radius: var(--tlp-radius-pill) !important;
    border-color: rgba(214, 224, 241, 0.28) !important;
    background: linear-gradient(180deg, rgba(10, 13, 20, 0.92), rgba(4, 6, 10, 0.88)) !important;
    padding: 10px 16px !important;
    transition: transform 0.2s var(--tlp-ease), border-color 0.2s ease, box-shadow 0.2s ease !important;
    box-shadow:
        0 16px 30px rgba(0, 0, 0, 0.52),
        0 0 18px rgba(168, 188, 220, 0.13),
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        inset 0 -1px 0 rgba(168, 188, 220, 0.10) !important;
}

body.page-life-term .product-video-section .video-card-link:hover .video-play-pill,
body.page-life-term .product-video-section .video-card-link:focus-visible .video-play-pill {
    transform: translate(-50%, calc(-50% - 1px)) !important;
    border-color: rgba(226, 234, 247, 0.42) !important;
    box-shadow:
        0 18px 34px rgba(0, 0, 0, 0.56),
        0 0 22px rgba(168, 188, 220, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        inset 0 -1px 0 rgba(168, 188, 220, 0.14) !important;
}

body.page-life-term .product-video-section .video-play-icon {
    background: linear-gradient(135deg, rgba(226, 233, 244, 0.98), rgba(151, 174, 211, 0.96)) !important;
    box-shadow:
        0 0 14px rgba(168, 188, 220, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.45) !important;
}

body.page-life-term .product-video-section .video-play-icon::before {
    border-left-color: rgba(8, 12, 20, 0.94) !important;
}

body.page-life-term .product-video-section .video-play-text {
    color: rgba(246, 248, 252, 0.96) !important;
    letter-spacing: 0.42px !important;
}

body.page-life-term .process-launch-side .journey-entry-tail,
body.page-life-term .faq-chat-trigger-card .journey-entry-tail {
    display: none !important;
}

body.page-life-term .process-launch-side .journey-entry-button,
body.page-life-term .faq-chat-trigger-card.journey-entry-button {
    border-color: rgba(255, 255, 255, 0.18) !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.055), transparent 38%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.012) 42%, rgba(0, 0, 0, 0.97) 100%),
        #040405 !important;
    box-shadow:
        0 18px 34px rgba(0, 0, 0, 0.52),
        0 0 0 1px rgba(255, 255, 255, 0.026),
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        inset 0 -1px 0 rgba(255, 255, 255, 0.045) !important;
}

body.page-life-term .process-launch-side .journey-entry-button::before,
body.page-life-term .faq-chat-trigger-card.journey-entry-button::before {
    background: conic-gradient(
        from var(--snake-angle),
        transparent 0%,
        transparent 66%,
        rgba(255, 255, 255, 0.12) 74%,
        rgba(255, 255, 255, 0.60) 82%,
        rgba(255, 255, 255, 0.86) 86%,
        rgba(255, 255, 255, 0.44) 92%,
        transparent 100%
    ) !important;
    filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.24)) drop-shadow(0 0 14px rgba(255, 255, 255, 0.10)) !important;
}

body.page-life-term .process-launch-side .journey-entry-button:hover,
body.page-life-term .process-launch-side .journey-entry-button:focus-visible,
body.page-life-term .faq-chat-trigger-card.journey-entry-button:hover,
body.page-life-term .faq-chat-trigger-card.journey-entry-button:focus-visible {
    border-color: rgba(255, 255, 255, 0.34) !important;
    box-shadow:
        0 30px 52px rgba(0, 0, 0, 0.64),
        0 0 22px rgba(255, 255, 255, 0.085),
        0 0 0 1px rgba(255, 255, 255, 0.18),
        0 0 28px rgba(255, 255, 255, 0.13),
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        inset 0 -1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-life-term .process-launch-side .journey-entry-button:hover::before,
body.page-life-term .process-launch-side .journey-entry-button:focus-visible::before,
body.page-life-term .faq-chat-trigger-card.journey-entry-button:hover::before,
body.page-life-term .faq-chat-trigger-card.journey-entry-button:focus-visible::before {
    background: conic-gradient(
        from var(--snake-angle),
        transparent 0%,
        transparent 64%,
        rgba(255, 255, 255, 0.10) 72%,
        rgba(255, 255, 255, 0.52) 80%,
        rgba(255, 255, 255, 0.82) 85%,
        rgba(255, 255, 255, 0.42) 92%,
        rgba(255, 255, 255, 0.12) 96%,
        transparent 100%
    ) !important;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.34)) drop-shadow(0 0 20px rgba(255, 255, 255, 0.16)) brightness(1.08) !important;
}

body.page-life-term .process-launch-side .journey-entry-icon,
body.page-life-term .faq-chat-trigger-card .journey-entry-icon {
    border-radius: 12px !important;
    border-color: rgba(255, 255, 255, 0.46) !important;
    background:
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.72), transparent 30%),
        linear-gradient(180deg, rgba(246, 248, 252, 0.95), rgba(104, 108, 116, 0.94)) !important;
    box-shadow:
        0 10px 20px rgba(0, 0, 0, 0.48),
        0 0 14px rgba(255, 255, 255, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.40),
        inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
}

body.page-life-term .process-launch-side .journey-entry-icon::before,
body.page-life-term .faq-chat-trigger-card .journey-entry-icon::before {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.96), rgba(36, 38, 42, 0.94)) !important;
}

body.page-life-term .process-launch-side .journey-entry-icon::after,
body.page-life-term .faq-chat-trigger-card .journey-entry-icon::after {
    border-color: var(--journey-ring-rest-border) !important;
    box-shadow: var(--journey-ring-rest-glow) !important;
    filter: none !important;
}

body.page-life-term .process-launch-side .journey-entry-button:hover .journey-entry-icon::after,
body.page-life-term .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon::after,
body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon::after,
body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon::after {
    border-color: var(--journey-ring-active-border) !important;
    box-shadow: var(--journey-ring-active-glow) !important;
    filter: var(--journey-ring-active-filter) !important;
}

body.page-life-term .process-launch-side .journey-entry-kicker,
body.page-life-term .faq-chat-trigger-card .journey-entry-kicker {
    color: rgba(210, 214, 220, 0.80) !important;
}

body.page-life-term .process-launch-side .journey-entry-title,
body.page-life-term .faq-chat-trigger-card .journey-entry-title {
    color: rgba(255, 255, 255, 0.98) !important;
}

/* TERM-ONLY PREVIEW: FAQ accordion aligned lightly with Trusted Results card language. */
@media (min-width: 961px) and (hover: hover) and (pointer: fine) {
    body.page-life-term #group-facts .topic-list {
        gap: 12px !important;
    }

    body.page-life-term #group-facts .topic-item {
        border-radius: 12px !important;
        border-color: rgba(168, 188, 220, 0.065) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.026) 0%, rgba(255, 255, 255, 0.006) 38%, rgba(255, 255, 255, 0) 100%),
            linear-gradient(160deg, rgba(7, 9, 13, 0.84) 0%, rgba(4, 4, 6, 0.965) 64%, rgba(0, 0, 0, 0.99) 100%) !important;
        box-shadow:
            0 12px 24px rgba(0, 0, 0, 0.42),
            0 0 0 1px rgba(255, 255, 255, 0.018),
            inset 0 1px 0 rgba(255, 255, 255, 0.04),
            inset 0 -1px 0 rgba(168, 188, 220, 0.018) !important;
        transition:
            border-color 0.28s ease,
            box-shadow 0.34s var(--tlp-ease),
            background 0.28s ease !important;
    }

    body.page-life-term #group-facts .topic-item:hover,
    body.page-life-term #group-facts .topic-item:focus-within {
        border-color: rgba(168, 188, 220, 0.22) !important;
        box-shadow:
            0 16px 30px rgba(0, 0, 0, 0.5),
            0 0 0 1px rgba(168, 188, 220, 0.075),
            0 0 18px rgba(168, 188, 220, 0.055),
            inset 0 1px 0 rgba(255, 255, 255, 0.07),
            inset 0 -1px 0 rgba(168, 188, 220, 0.035) !important;
    }

    body.page-life-term #group-facts .topic-item[open] {
        border-color: rgba(168, 188, 220, 0.24) !important;
        box-shadow:
            0 16px 32px rgba(0, 0, 0, 0.52),
            0 0 0 1px rgba(168, 188, 220, 0.08),
            0 0 18px rgba(168, 188, 220, 0.06),
            inset 0 1px 0 rgba(255, 255, 255, 0.07),
            inset 0 -1px 0 rgba(168, 188, 220, 0.04) !important;
    }

    body.page-life-term #group-facts .topic-item summary::after {
        align-self: center !important;
        width: 8px !important;
        height: 8px !important;
        border: 1px solid rgba(235, 238, 244, 0.075) !important;
        border-radius: 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.052) 0 18%, rgba(18, 18, 20, 0.82) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.018),
            inset 0 -1px 0 rgba(0, 0, 0, 0.78) !important;
        clip-path: none !important;
        filter: none !important;
        transform: translateY(0) rotate(0deg) !important;
        transition:
            transform 0.26s var(--tlp-ease),
            border-color 0.26s ease,
        width 0.26s var(--tlp-ease),
        height 0.26s var(--tlp-ease) !important;
    }

    body.page-life-term #group-facts .topic-item summary:focus-visible {
        outline: none !important;
    }

    body.page-life-term #group-facts .topic-item summary {
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    body.page-life-term #group-facts .topic-item[open] .topic-body {
        border-top: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    body.page-life-term #group-facts .topic-item:hover summary::after,
    body.page-life-term #group-facts .topic-item:focus-within summary::after {
        border-color: rgba(245, 247, 250, 0.14) !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.075) 0 18%, rgba(22, 22, 24, 0.86) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
    }

    body.page-life-term #group-facts .topic-step {
        border-radius: 6px !important;
        border: 1px solid rgba(168, 188, 220, 0.11) !important;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, 0.075) 0%, rgba(255, 255, 255, 0.018) 42%, rgba(0, 0, 0, 0) 100%),
            linear-gradient(180deg, rgba(9, 10, 13, 0.98), rgba(1, 1, 2, 1)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            inset 0 -1px 0 rgba(0, 0, 0, 0.45),
            0 2px 5px rgba(0, 0, 0, 0.32) !important;
    }

    body.page-life-term #group-facts .topic-step::before {
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        color: rgba(242, 245, 250, 0.92) !important;
        text-shadow: 0 1px 5px rgba(0, 0, 0, 0.64) !important;
    }

    body.page-life-term #group-facts .topic-item[open] summary::after {
        width: 8px !important;
        height: 8px !important;
        border: 0 !important;
        border-top: 1.6px solid rgba(232, 238, 248, 0.76) !important;
        border-right: 1.6px solid rgba(232, 238, 248, 0.76) !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        clip-path: none !important;
        transform: translateY(-2px) rotate(135deg) !important;
    }

    body.page-life-term .process-launch-side .journey-entry-button,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button {
        border-color: rgba(255, 255, 255, 0.18) !important;
        background:
            radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.055), transparent 38%),
            linear-gradient(145deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.012) 42%, rgba(0, 0, 0, 0.97) 100%),
            #040405 !important;
        box-shadow:
            0 18px 34px rgba(0, 0, 0, 0.52),
            0 0 0 1px rgba(255, 255, 255, 0.026),
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            inset 0 -1px 0 rgba(255, 255, 255, 0.045) !important;
    }

    body.page-life-term .process-launch-side .journey-entry-button::before,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button::before {
        opacity: 0.56 !important;
    }

    body.page-life-term .process-launch-side .journey-entry-icon,
    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-icon {
        opacity: 0.82 !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible {
        transform: translateY(-4px) !important;
        border-color: rgba(255, 255, 255, 0.34) !important;
        box-shadow:
            0 30px 52px rgba(0, 0, 0, 0.64),
            0 0 22px rgba(255, 255, 255, 0.085),
            0 0 0 1px rgba(255, 255, 255, 0.18),
            0 0 28px rgba(255, 255, 255, 0.13),
            inset 0 1px 0 rgba(255, 255, 255, 0.18),
            inset 0 -1px 0 rgba(255, 255, 255, 0.10) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover::before,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible::before,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover::before,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible::before {
        background: conic-gradient(
            from var(--snake-angle),
            transparent 0%,
            transparent 64%,
            rgba(255, 255, 255, 0.10) 72%,
            rgba(255, 255, 255, 0.52) 80%,
            rgba(255, 255, 255, 0.82) 85%,
            rgba(255, 255, 255, 0.42) 92%,
            rgba(255, 255, 255, 0.12) 96%,
            transparent 100%
        ) !important;
        filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.34)) drop-shadow(0 0 20px rgba(255, 255, 255, 0.16)) brightness(1.08) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover .journey-entry-icon,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon {
        border-color: rgba(255, 255, 255, 0.46) !important;
        background:
            radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.72), transparent 30%),
            linear-gradient(180deg, rgba(246, 248, 252, 0.95), rgba(104, 108, 116, 0.94)) !important;
        box-shadow:
            0 10px 20px rgba(0, 0, 0, 0.48),
            0 0 14px rgba(255, 255, 255, 0.15),
            inset 0 1px 0 rgba(255, 255, 255, 0.40),
            inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover .journey-entry-pulse,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible .journey-entry-pulse,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-pulse,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-pulse {
        background: var(--journey-pulse-active-fill) !important;
        box-shadow: var(--journey-pulse-active-shadow) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover .journey-entry-icon::after,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon::after,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon::after,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon::after {
        border-color: var(--journey-ring-active-border) !important;
        box-shadow: var(--journey-ring-active-glow) !important;
        filter: var(--journey-ring-active-filter) !important;
    }
}

@media (min-width: 961px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: reduce) {
    body.page-life-term #group-facts .topic-item summary::after {
        transition-duration: 0.01ms !important;
    }
}

/* Locked Term direction: mono resting support UI with blue-purple hover/focus only. */
body.page-life-term .product-testimonials .testimonial-nav:hover,
body.page-life-term .product-testimonials .testimonial-nav:focus-visible {
    box-shadow:
        0 16px 28px rgba(0, 0, 0, 0.52),
        0 0 20px rgba(125, 149, 255, 0.20),
        0 0 0 1px rgba(125, 149, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

@media (max-width: 640px) {
    body.page-life-term .product-video-section {
        padding: 14px !important;
        margin-top: 32px !important;
    }
    body.page-life-term .product-video-section .video-summary {
        font-size: 11.75px !important;
        line-height: 1.46 !important;
        max-width: 40ch;
        margin-bottom: 12px !important;
    }
    body.page-life-term .product-video-section .video-legal-note {
        font-size: 10px !important;
        line-height: 1.4 !important;
        text-wrap: balance;
        max-width: 44ch;
    }
    body.page-life-term .product-video-section .video-play-pill {
        padding: 7px 12px !important;
        gap: 7px !important;
    }
    body.page-life-term .product-video-section .video-play-text {
        font-size: 10.5px !important;
        letter-spacing: 0.4px !important;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-life-term .product-video-section .video-summary {
        font-size: 12.5px !important;
        line-height: 1.5 !important;
        max-width: 56ch;
    }
}

/* =========================================================================
   4. TESTIMONIALS â€” compact, sheen + glow OFF, squared rating pill.
   ========================================================================= */

body.page-life-term .product-testimonials .testimonials-kicker {
    display: none !important;
}

body.page-life-term .product-testimonials .testimonials-summary {
    color: rgba(212, 218, 230, 0.82) !important;
    text-wrap: balance;
}

/* Mobile / desktop summary swap (HTML now provides both spans) */
body.page-life-term .product-testimonials .testimonials-summary-desktop {
    display: inline;
}

body.page-life-term .product-testimonials .testimonials-summary-mobile {
    display: none;
}

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-life-term .product-testimonials .testimonials-summary-desktop {
        display: none;
    }
    body.page-life-term .product-testimonials .testimonials-summary-mobile {
        display: inline;
    }
}

body.page-life-term .product-testimonials .testimonial-card {
    animation: none !important;
    border-radius: var(--tlp-radius-card) !important;
    border: 1px solid rgba(168, 188, 220, 0.10) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.034) 0%, rgba(255, 255, 255, 0.008) 28%, rgba(255, 255, 255, 0) 100%),
        linear-gradient(160deg, rgba(8, 10, 14, 0.92) 0%, rgba(4, 4, 6, 0.99) 56%, rgba(0, 0, 0, 1) 100%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(115%) !important;
    backdrop-filter: blur(14px) saturate(115%) !important;
    box-shadow:
        0 18px 32px rgba(0, 0, 0, 0.5),
        0 0 12px rgba(168, 188, 220, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    transition:
        transform 0.6s var(--tlp-ease),
        opacity 0.6s var(--tlp-ease),
        filter 0.6s var(--tlp-ease),
        border-color 0.28s ease,
        box-shadow 0.4s var(--tlp-ease) !important;
}

body.page-life-term .product-testimonials .testimonial-card::after {
    animation: none !important;
    display: none !important;
}

body.page-life-term .product-testimonials .testimonial-card::before {
    background:
        linear-gradient(180deg, rgba(168, 188, 220, 0.10) 0%, rgba(168, 188, 220, 0) 7%),
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.04), transparent 30%) !important;
    opacity: 0.6 !important;
}

body.page-life-term .product-testimonials .testimonial-card[data-position="active"]:hover,
body.page-life-term .product-testimonials .testimonial-card[data-position="active"]:focus-within {
    border-color: var(--tlp-accent-line) !important;
    box-shadow:
        0 24px 42px rgba(0, 0, 0, 0.6),
        0 0 18px rgba(168, 188, 220, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

body.page-life-term .product-testimonials .testimonial-card[data-position="prev"]:hover,
body.page-life-term .product-testimonials .testimonial-card[data-position="prev"]:focus-visible,
body.page-life-term .product-testimonials .testimonial-card[data-position="next"]:hover,
body.page-life-term .product-testimonials .testimonial-card[data-position="next"]:focus-visible {
    border-color: rgba(168, 188, 220, 0.34) !important;
    box-shadow:
        0 22px 36px rgba(0, 0, 0, 0.56),
        0 0 14px rgba(168, 188, 220, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

body.page-life-term .product-testimonials .testimonial-quote {
    font-style: normal !important;
    font-weight: 500 !important;
    color: rgba(232, 236, 244, 0.94) !important;
    letter-spacing: 0.04px !important;
}

body.page-life-term .product-testimonials .testimonial-rating {
    border-radius: 4px !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
    background: linear-gradient(180deg, rgba(8, 8, 10, 0.96), rgba(2, 2, 3, 1)) !important;
    color: rgba(232, 236, 244, 0.88) !important;
    font-size: 10px !important;
    letter-spacing: 1.6px !important;
    padding: 6px 11px !important;
}

body.page-life-term .product-testimonials .testimonial-attribution {
    border-top-color: rgba(168, 188, 220, 0.12) !important;
}

body.page-life-term .product-testimonials .testimonial-name,
body.page-life-term .product-testimonials .testimonial-location {
    font-size: 10.5px !important;
    letter-spacing: 0.5px !important;
}

body.page-life-term .product-testimonials .testimonial-name {
    color: rgba(238, 242, 248, 0.94) !important;
}

body.page-life-term .product-testimonials .testimonial-location {
    color: rgba(190, 202, 220, 0.80) !important;
}

body.page-life-term .product-testimonials .testimonial-nav {
    min-width: 80px !important;
    min-height: 38px !important;
    padding: 0 13px !important;
    gap: 8px !important;
    border-radius: var(--tlp-radius-pill) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.008)),
        linear-gradient(145deg, rgba(14, 18, 28, 0.84), rgba(4, 4, 6, 0.98)) !important;
    box-shadow:
        0 12px 22px rgba(0, 0, 0, 0.46),
        0 0 12px rgba(168, 188, 220, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
    color: rgba(232, 236, 244, 0.94) !important;
    transition: transform 0.2s var(--tlp-ease), box-shadow 0.2s ease, color 0.2s ease !important;
}

body.page-life-term .product-testimonials .testimonial-nav::before {
    background: linear-gradient(130deg,
        rgba(168, 188, 220, 0.62),
        rgba(255, 255, 255, 0.08) 38%,
        rgba(168, 188, 220, 0.42) 72%,
        rgba(255, 255, 255, 0.06) 100%) !important;
    opacity: 0.7 !important;
}

body.page-life-term .product-testimonials .testimonial-nav::after {
    display: none !important;
}

body.page-life-term .product-testimonials .testimonial-nav:hover,
body.page-life-term .product-testimonials .testimonial-nav:focus-visible {
    transform: translateY(-1.5px) !important;
    box-shadow:
        0 16px 28px rgba(0, 0, 0, 0.52),
        0 0 18px rgba(168, 188, 220, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
    color: rgba(244, 247, 252, 0.99) !important;
}

body.page-life-term .product-testimonials .testimonial-nav-label {
    font-size: 9.5px !important;
    letter-spacing: 1.4px !important;
}

body.page-life-term .product-testimonials .testimonials-progress-dot::before {
    background: linear-gradient(90deg, rgba(168, 188, 220, 0.96), rgba(220, 226, 236, 0.86)) !important;
}

@media (max-width: 640px) {
    body.page-life-term .product-testimonials {
        margin-top: 36px !important;
    }
    body.page-life-term .product-testimonials .testimonials-kicker {
        display: none !important;
    }
    body.page-life-term .product-testimonials .testimonials-summary {
        font-size: 11.5px !important;
        line-height: 1.42 !important;
        max-width: 36ch;
        margin: 0 auto 6px !important;
        text-align: left;
    }
    body.page-life-term .product-testimonials .testimonials-stage {
        min-height: 248px !important;
        padding: 4px 6px 6px !important;
        margin-top: 6px !important;
    }
    body.page-life-term .product-testimonials .testimonials-spotlight {
        min-height: 198px !important;
    }
    body.page-life-term .product-testimonials .testimonial-card {
        width: min(92%, 540px) !important;
        min-height: 174px !important;
        padding: 12px 13px 11px !important;
        border-radius: 9px !important;
        gap: 10px !important;
    }
    body.page-life-term .product-testimonials .testimonial-rating {
        font-size: 9px !important;
        letter-spacing: 1.4px !important;
        padding: 4px 9px !important;
        border-radius: 3px !important;
    }
    body.page-life-term .product-testimonials .testimonial-quote {
        font-size: 12.25px !important;
        line-height: 1.5 !important;
    }
    body.page-life-term .product-testimonials .testimonial-attribution {
        padding-top: 8px !important;
    }
    body.page-life-term .product-testimonials .testimonial-name,
    body.page-life-term .product-testimonials .testimonial-location {
        font-size: 9.5px !important;
        letter-spacing: 0.4px !important;
    }
    body.page-life-term .product-testimonials .testimonial-nav {
        min-width: 0 !important;
        min-height: 32px !important;
        padding: 0 10px !important;
        border-radius: 9px !important;
        gap: 6px !important;
    }
    body.page-life-term .product-testimonials .testimonial-nav-label {
        font-size: 8.5px !important;
        letter-spacing: 1.1px !important;
    }
    body.page-life-term .product-testimonials .testimonial-nav-icon {
        width: 11px !important;
        height: 11px !important;
        flex: 0 0 11px !important;
    }
    body.page-life-term .product-testimonials .testimonials-progress {
        margin-top: 8px !important;
        gap: 5px !important;
    }
    body.page-life-term .product-testimonials .testimonials-progress-dot {
        width: 18px !important;
        height: 3px !important;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-life-term .product-testimonials .testimonials-summary {
        font-size: 12px !important;
        line-height: 1.46 !important;
        max-width: 60ch;
    }
    body.page-life-term .product-testimonials .testimonials-stage {
        min-height: 270px !important;
    }
    body.page-life-term .product-testimonials .testimonials-spotlight {
        min-height: 218px !important;
    }
    body.page-life-term .product-testimonials .testimonial-card {
        min-height: 196px !important;
        padding: 14px 16px 13px !important;
        border-radius: 10px !important;
    }
    body.page-life-term .product-testimonials .testimonial-quote {
        font-size: 13.25px !important;
        line-height: 1.54 !important;
    }
    body.page-life-term .product-testimonials .testimonial-rating {
        font-size: 9.5px !important;
    }
    body.page-life-term .product-testimonials .testimonial-nav {
        min-height: 36px !important;
        padding: 0 12px !important;
        border-radius: 10px !important;
    }
}

/* =========================================================================
   5. ONE MATCHED CONTROL FAMILY â€” 30 / 34 / 38 px (chat / video / edu modal).
   Resource popups + sidebar call use a smaller 28 px variant (item 6).
   ========================================================================= */

body.page-life-term {
    --product-surface-control-size: var(--tlp-ctrl-desktop);
    --product-surface-control-line: var(--tlp-ctrl-line);
}

@media (max-width: 640px) {
    body.page-life-term {
        --product-surface-control-size: var(--tlp-ctrl-phone);
        --product-surface-control-line: 8.5px;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-life-term {
        --product-surface-control-size: var(--tlp-ctrl-tablet);
        --product-surface-control-line: 9px;
    }
}

/* Apply the unified family ONLY to chat / video modal / edu modal / mobile resources */
body.page-life-term .mobile-support-sheet-close,
body.page-life-term .chat-panel .chat-close,
body.page-life-term .chat-panel .chat-thread-close,
body.page-life-term .chat-panel .chat-back,
body.page-life-term .path-modal-close,
body.page-life-term #edu-modal .edu-modal-close,
body.page-life-term .product-video-modal-close {
    width: var(--product-surface-control-size) !important;
    height: var(--product-surface-control-size) !important;
    min-width: var(--product-surface-control-size) !important;
    min-height: var(--product-surface-control-size) !important;
    border-radius: var(--tlp-radius-tile) !important;
}

body.page-life-term .mobile-support-sheet-close::before,
body.page-life-term .mobile-support-sheet-close::after,
body.page-life-term .chat-panel .chat-close::before,
body.page-life-term .chat-panel .chat-close::after,
body.page-life-term .chat-panel .chat-thread-close::before,
body.page-life-term .chat-panel .chat-thread-close::after,
body.page-life-term .path-modal-close::before,
body.page-life-term .path-modal-close::after,
body.page-life-term #edu-modal .edu-modal-close::before,
body.page-life-term #edu-modal .edu-modal-close::after,
body.page-life-term .product-video-modal-close::before,
body.page-life-term .product-video-modal-close::after {
    width: var(--product-surface-control-line) !important;
}

/* Repaint video modal X strokes cool slate (was neon-blue baseline) */
body.page-life-term .product-video-modal-close::before,
body.page-life-term .product-video-modal-close::after {
    background: var(--tlp-accent) !important;
    box-shadow: 0 0 8px rgba(168, 188, 220, 0.5) !important;
}

body.page-life-term .product-video-modal-close:hover::before,
body.page-life-term .product-video-modal-close:hover::after {
    background: rgba(239, 68, 68, 0.96) !important;
    box-shadow: 0 0 10px rgba(239, 68, 68, 0.78) !important;
}

/* Back buttons */
body.page-life-term .path-modal-back,
body.page-life-term #edu-modal .edu-back-btn {
    min-height: 38px !important;
    padding: 9px 16px !important;
    font-size: 10.5px !important;
    letter-spacing: 1.4px !important;
    border-radius: 9px !important;
}

@media (max-width: 640px) {
    body.page-life-term .path-modal-back,
    body.page-life-term #edu-modal .edu-back-btn {
        min-height: 34px !important;
        padding: 8px 14px !important;
        font-size: 10px !important;
        border-radius: 8px !important;
    }
}

/* Popup backdrop preview: Term-only clean dark-glass focus */
body.page-life-term .path-modal .path-modal-backdrop,
body.page-life-term #edu-modal .path-modal-backdrop,
body.page-life-term #edu-modal .edu-modal-backdrop,
body.page-life-term.product-support-open .mobile-support-sheet-backdrop,
body.page-life-term.chat-open .chat-overlay {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.055) 0%, rgba(6, 8, 14, 0.22) 46%, rgba(3, 4, 8, 0.58) 100%),
        linear-gradient(180deg, rgba(2, 3, 6, 0.62) 0%, rgba(2, 3, 6, 0.72) 100%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(110%) !important;
    backdrop-filter: blur(12px) saturate(110%) !important;
}

body.page-life-term .path-modal .path-modal-backdrop::before,
body.page-life-term #edu-modal .path-modal-backdrop::before,
body.page-life-term #edu-modal .edu-modal-backdrop::before {
    display: none !important;
}

/* Chat popup preview: Term-only black glass shell */
body.page-life-term .chat-panel,
body.page-life-term .chat-panel.is-thread,
html body.page-product.page-life-term .chat-panel,
html body.page-product.page-life-term .chat-panel.is-thread {
    border-color: rgba(232, 236, 244, 0.12) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.014) 28%, rgba(0, 0, 0, 0) 64%),
        radial-gradient(circle at 18% 0%, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.018) 26%, rgba(255, 255, 255, 0) 58%),
        linear-gradient(180deg, rgba(9, 10, 13, 0.985) 0%, rgba(2, 2, 4, 0.985) 100%) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.04),
        0 34px 84px rgba(0, 0, 0, 0.8),
        0 0 42px rgba(112, 152, 232, 0.13),
        0 0 110px rgba(255, 255, 255, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

body.page-life-term .chat-panel-header,
body.page-life-term .chat-thread-header {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.022) 30%, rgba(0, 0, 0, 0) 70%),
        linear-gradient(180deg, rgba(14, 14, 16, 0.99) 0%, rgba(2, 2, 4, 0.98) 100%) !important;
    border-color: rgba(232, 236, 244, 0.10) !important;
}

body.page-life-term .chat-messages {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.022) 0%, rgba(0, 0, 0, 0.24) 42%, rgba(0, 0, 0, 0.52) 100%),
        rgba(2, 2, 3, 0.955) !important;
}

body.page-life-term .chat-messages .chat-selector-shell {
    border-radius: 16px !important;
    gap: 9px !important;
    padding: 13px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.038) 0%, rgba(255, 255, 255, 0.008) 32%, rgba(0, 0, 0, 0.30) 100%),
        rgba(5, 5, 6, 0.965) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 14px 28px rgba(0, 0, 0, 0.40) !important;
}

body.page-life-term .chat-messages .chat-selector-eyebrow {
    font-size: 9px !important;
    letter-spacing: 0.22em !important;
    color: rgba(190, 196, 210, 0.58) !important;
}

body.page-life-term .chat-messages .chat-selector-copy {
    font-size: 13px !important;
    line-height: 1.35 !important;
}

body.page-life-term .chat-messages .chat-selector-actions {
    gap: 8px !important;
}

body.page-life-term .chat-messages .chat-selector-btn {
    min-height: 52px !important;
    padding: 10px 12px 10px 14px !important;
    border-radius: 12px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.056) 0%, rgba(255, 255, 255, 0.012) 36%, rgba(0, 0, 0, 0.30) 100%),
        rgba(7, 7, 8, 0.965) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.052),
        inset 0 1px 0 rgba(255, 255, 255, 0.065),
        0 8px 16px rgba(0, 0, 0, 0.28) !important;
}

body.page-life-term .chat-messages .chat-selector-btn:hover,
body.page-life-term .chat-messages .chat-selector-btn:focus-visible {
    box-shadow:
        inset 0 0 0 1px rgba(112, 152, 232, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 14px 28px rgba(0, 0, 0, 0.38),
        0 0 16px rgba(112, 152, 232, 0.12) !important;
}

body.page-life-term .chat-messages .chat-selector-label {
    font-size: 9.5px !important;
    letter-spacing: 0.21em !important;
}

body.page-life-term .chat-messages .chat-selector-meta {
    font-size: 12px !important;
    line-height: 1.25 !important;
}

body.page-life-term .chat-messages .chat-selector-arrow {
    width: 25px !important;
    height: 25px !important;
    border-color: rgba(232, 236, 244, 0.12) !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 0 10px rgba(255, 255, 255, 0.05) !important;
}

body.page-life-term .chat-messages .chat-selector-arrow::before,
body.page-life-term .chat-messages .chat-selector-arrow::after {
    background: rgba(230, 234, 242, 0.88) !important;
    box-shadow: 0 0 6px rgba(255, 255, 255, 0.12) !important;
}

body.page-life-term .chat-messages .chat-selector-btn:hover .chat-selector-arrow,
body.page-life-term .chat-messages .chat-selector-btn:focus-visible .chat-selector-arrow {
    border-color: rgba(112, 152, 232, 0.46) !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 0 12px rgba(112, 152, 232, 0.24) !important;
}

body.page-life-term .chat-messages .chat-selector-btn:hover .chat-selector-arrow::before,
body.page-life-term .chat-messages .chat-selector-btn:hover .chat-selector-arrow::after,
body.page-life-term .chat-messages .chat-selector-btn:focus-visible .chat-selector-arrow::before,
body.page-life-term .chat-messages .chat-selector-btn:focus-visible .chat-selector-arrow::after {
    background: #8aa8ff !important;
    box-shadow: 0 0 8px rgba(112, 152, 232, 0.58) !important;
}

body.page-life-term .chat-panel.is-selecting .chat-messages {
    justify-content: center !important;
    align-items: center !important;
    padding: 22px !important;
    margin-bottom: 0 !important;
}

body.page-life-term .chat-panel.is-selecting .chat-input-row,
body.page-life-term .chat-panel.is-selecting .chat-consent {
    display: none !important;
}

body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-shell {
    width: min(100%, 390px) !important;
    max-width: min(100%, 390px) !important;
    align-self: center !important;
    justify-self: center !important;
    gap: 0 !important;
    padding: 22px 20px !important;
    transform: translateY(-18px) !important;
}

body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-copy {
    display: block !important;
    max-width: 30ch !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
}

body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-btn {
    min-height: 56px !important;
}

body.page-life-term .chat-input-row {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-life-term .chat-input-row:focus-within {
    background: transparent !important;
    box-shadow: none !important;
}

body.page-life-term .chat-input {
    min-height: 40px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.022) 0%, rgba(0, 0, 0, 0.24) 100%),
        rgba(2, 2, 4, 0.93) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

body.page-life-term .chat-input:hover,
body.page-life-term .chat-input:focus,
body.page-life-term .chat-input:focus-visible {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.034) 0%, rgba(0, 0, 0, 0.22) 100%),
        rgba(4, 4, 6, 0.94) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.13),
        0 0 12px rgba(255, 255, 255, 0.045) !important;
}

body.page-life-term .chat-send {
    min-height: 40px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.055) 36%, rgba(0, 0, 0, 0.42) 100%),
        rgba(18, 18, 20, 0.98) !important;
}

/* Term Stage 3 preview: compact touch chat chooser, ready for shared promotion. */
@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-life-term .chat-panel.is-selecting .chat-messages {
        justify-content: center !important;
        align-items: stretch !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-shell {
        width: 100% !important;
        max-width: none !important;
        min-height: 100% !important;
        margin: 0 !important;
        padding: clamp(24px, 4dvh, 34px) clamp(16px, 4.2vw, 22px) !important;
        gap: 0 !important;
        transform: none !important;
        overflow: hidden !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-eyebrow,
    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-title,
    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-copy,
    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-actions {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-title {
        margin-top: clamp(9px, 1.7dvh, 14px) !important;
        font-size: clamp(28px, 7.2vw, 34px) !important;
        line-height: 1.02 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-copy {
        margin-top: clamp(7px, 1.4dvh, 10px) !important;
        max-width: 30ch !important;
        font-size: clamp(11.5px, 3.05vw, 12.5px) !important;
        line-height: 1.34 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-actions {
        gap: clamp(7px, 1.25dvh, 10px) !important;
        margin-top: clamp(12px, 2.2dvh, 16px) !important;
        padding: 0 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-btn {
        min-height: clamp(68px, 10.2dvh, 78px) !important;
        grid-template-columns: clamp(36px, 8vw, 42px) minmax(0, 1fr) !important;
        gap: clamp(10px, 2.4vw, 12px) !important;
        padding: 13px clamp(42px, 10vw, 50px) 13px 13px !important;
        border-radius: 14px !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-glyph {
        width: clamp(36px, 8vw, 42px) !important;
        height: clamp(36px, 8vw, 42px) !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-label {
        font-size: clamp(9.5px, 2.45vw, 10.5px) !important;
        letter-spacing: 0.12em !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-meta {
        font-size: clamp(10.4px, 2.65vw, 11.4px) !important;
        line-height: 1.18 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-btn::after {
        right: 13px !important;
        width: 27px !important;
        height: 27px !important;
    }
}

@media (orientation: landscape) and (max-height: 900px) {
    html body.page-life-term .chat-panel,
    html body.page-life-term .chat-panel.is-thread {
        top: 50% !important;
        bottom: auto !important;
        left: auto !important;
        right: clamp(18px, 4vw, 36px) !important;
        width: min(480px, calc(100vw - 36px)) !important;
        max-width: calc(100vw - 36px) !important;
        height: min(560px, calc(100dvh - 28px)) !important;
        max-height: calc(100dvh - 28px) !important;
        transform: translateY(-50%) !important;
        border-radius: 16px !important;
    }
}

/* =========================================================================
   6. RESOURCE POPUPS (find-doctor-gate) + CALL OUR TEAM
   - SHELL: architectural radius (12 px), tightened
   - HEAD: shorter (50 px), preserved from prior pass
   - FOOTER: matched to head height (50 px) â€” Greg note iter 2
   - X CLOSE: smaller compact 28 px box (was 38 px) â€” Greg note iter 2
   - BODY content: REVERTED to baseline (no border-radius / hover overrides
     on .find-doctor-choice, no copy color override)
   - CALL OUR TEAM backdrop: matched to other resource popups â€” Greg note iter 2
   ========================================================================= */

body.page-life-term .find-doctor-gate {
    border-radius: 12px !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
}

body.page-life-term .find-doctor-gate-head,
body.page-life-term .sidebar-call-pop-head {
    min-height: var(--tlp-popup-chrome-min) !important;
    padding: 7px 12px 7px 18px !important;
    border-bottom-color: rgba(168, 188, 220, 0.10) !important;
}

body.page-life-term .find-doctor-gate-footer,
body.page-life-term .sidebar-call-pop-footer {
    min-height: var(--tlp-popup-chrome-min) !important;
    padding: 7px 18px !important;
}

/* Call Our Team shell parity with the other resource popups */
body.page-life-term .sidebar-call-pop {
    border-radius: 12px !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
}

body.page-life-term .find-doctor-gate-title {
    color: rgba(232, 236, 244, 0.96) !important;
    letter-spacing: 0.22em !important;
}

/* ----- Body content unison: 2-line max copy, centered, tighter buttons ----- */

body.page-life-term .find-doctor-gate-copy {
    max-width: 42ch !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-wrap: balance;
}

body.page-life-term .find-doctor-gate-actions {
    gap: 8px !important;
}

body.page-life-term .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
body.page-life-term .drug-plan-bridge .find-doctor-choice {
    min-height: 56px !important;
    padding: 11px 14px 11px 16px !important;
}

body.page-life-term .fdc-label {
    font-size: 12px !important;
    letter-spacing: 0.09em !important;
}

body.page-life-term .fdc-arrow {
    transform: scale(0.86) !important;
}

/* TERM-ONLY PREVIEW: Ultra-premium glass buttons (keeps the photo, upgrades the UI) */
body.page-life-term .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
body.page-life-term .drug-plan-bridge .find-doctor-choice {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
    transition: all 0.3s cubic-bezier(0.32, 0.72, 0, 1) !important;
}

body.page-life-term .find-doctor-gate .find-doctor-choice:hover {
    background: rgba(255, 255, 255, 0.10) !important;
    border-color: rgba(168, 188, 220, 0.4) !important;
    box-shadow:
        0 12px 32px rgba(0, 0, 0, 0.5),
        inset 0 1px 0 rgba(255, 255, 255, 0.25),
        0 0 20px rgba(168, 188, 220, 0.15) !important;
    transform: translateY(-1px) !important;
}

body.page-life-term .fdc-label {
    color: #ffffff !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.8) !important;
}

@media (max-width: 640px) {
    body.page-life-term .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-life-term .drug-plan-bridge .find-doctor-choice {
        min-height: 50px !important;
        padding: 10px 12px 10px 14px !important;
    }
    body.page-life-term .fdc-label {
        font-size: 11px !important;
    }
}

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-life-term .find-doctor-gate,
    body.page-life-term .sidebar-call-pop {
        width: min(430px, calc(100vw - 28px)) !important;
        height: min(286px, calc(100dvh - 34px)) !important;
        max-height: calc(100dvh - 34px) !important;
        border-radius: 12px !important;
    }

    body.page-life-term .drug-plan-bridge {
        height: min(304px, calc(100dvh - 34px)) !important;
    }

    body.page-life-term .find-doctor-gate-head,
    body.page-life-term .sidebar-call-pop-head,
    body.page-life-term .find-doctor-gate-footer,
    body.page-life-term .sidebar-call-pop-footer {
        min-height: 52px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    body.page-life-term .find-doctor-gate-body,
    body.page-life-term .sidebar-call-pop-body {
        padding: 12px 14px !important;
    }

    body.page-life-term .find-doctor-gate-content {
        gap: 10px !important;
    }

    body.page-life-term .find-doctor-gate-copy {
        max-width: 38ch !important;
        font-size: 11.5px !important;
        line-height: 1.38 !important;
    }

    body.page-life-term .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-life-term .drug-plan-bridge .find-doctor-choice {
        min-height: 42px !important;
        padding: 8px 11px 8px 13px !important;
        border-radius: 9px !important;
    }

    body.page-life-term .find-doctor-gate-actions {
        gap: 7px !important;
    }

    body.page-life-term .fdc-label {
        font-size: 10.5px !important;
        line-height: 1.12 !important;
    }

    body.page-life-term .find-doctor-fallback,
    body.page-life-term .sidebar-call-pop-hours {
        font-size: 8.5px !important;
        line-height: 1.28 !important;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-life-term .find-doctor-gate-head,
    body.page-life-term .sidebar-call-pop-head,
    body.page-life-term .find-doctor-gate-footer,
    body.page-life-term .sidebar-call-pop-footer {
        min-height: 57px !important;
    }
}

@media (orientation: landscape) and (max-height: 900px) {
    body.page-life-term .find-doctor-gate,
    body.page-life-term .sidebar-call-pop {
        width: min(410px, calc(100vw - 36px)) !important;
        height: min(242px, calc(100dvh - 32px)) !important;
    }

    body.page-life-term .drug-plan-bridge {
        height: min(258px, calc(100dvh - 32px)) !important;
    }

    body.page-life-term .find-doctor-gate-head,
    body.page-life-term .sidebar-call-pop-head,
    body.page-life-term .find-doctor-gate-footer,
    body.page-life-term .sidebar-call-pop-footer {
        min-height: 42px !important;
    }

    body.page-life-term .find-doctor-gate-body,
    body.page-life-term .sidebar-call-pop-body {
        padding: 9px 12px !important;
    }

    body.page-life-term .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-life-term .drug-plan-bridge .find-doctor-choice {
        min-height: 38px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }
}

@media (hover: hover) and (pointer: fine) and (orientation: landscape) and (max-height: 900px) {
    body.page-life-term .find-doctor-gate-head,
    body.page-life-term .sidebar-call-pop-head,
    body.page-life-term .find-doctor-gate-footer,
    body.page-life-term .sidebar-call-pop-footer {
        min-height: 57px !important;
    }
}

/* ----- Backdrop: clean dark-glass focus for resource popups ----- */

body.page-life-term .find-doctor-gate-backdrop,
body.page-life-term .sidebar-call-pop-backdrop {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.055) 0%, rgba(6, 8, 14, 0.22) 46%, rgba(3, 4, 8, 0.58) 100%),
        linear-gradient(180deg, rgba(2, 3, 6, 0.62) 0%, rgba(2, 3, 6, 0.72) 100%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(110%) !important;
    backdrop-filter: blur(12px) saturate(110%) !important;
}

/* Compact X close inside resource popups + sidebar call */
body.page-life-term .find-doctor-gate-close,
body.page-life-term .sidebar-call-pop-close {
    width: var(--tlp-popup-ctrl) !important;
    height: var(--tlp-popup-ctrl) !important;
    min-width: var(--tlp-popup-ctrl) !important;
    min-height: var(--tlp-popup-ctrl) !important;
    border-radius: 7px !important;
}

body.page-life-term .find-doctor-gate-close::before,
body.page-life-term .find-doctor-gate-close::after,
body.page-life-term .sidebar-call-pop-close::before,
body.page-life-term .sidebar-call-pop-close::after {
    width: var(--tlp-popup-ctrl-line) !important;
}

/* Call Our Team backdrop â€” match other resource popup backdrops (glow -15%) */
body.page-life-term .find-doctor-gate-backdrop::before,
body.page-life-term .sidebar-call-pop-backdrop::before {
    display: none !important;
    opacity: 0 !important;
}

/* =========================================================================
   7. RESOURCES SHEET (mobile bottom sheet) â€” cool slate rail.
   ========================================================================= */

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-life-term .mobile-support-sheet {
        border-radius: 16px !important;
        overflow: hidden !important;
        box-shadow:
            0 24px 48px rgba(0, 0, 0, 0.66),
            0 0 22px rgba(168, 188, 220, 0.10),
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            inset 3px 0 0 var(--tlp-accent) !important;
    }
    body.page-life-term .mobile-support-sheet-kicker {
        color: rgba(200, 208, 220, 0.82) !important;
        letter-spacing: 1.5px !important;
    }
    body.page-life-term .mobile-support-sheet-title {
        color: rgba(238, 242, 248, 0.96) !important;
    }
    body.page-life-term .mobile-support-sheet-desc {
        line-height: 1.42 !important;
    }

    body.page-life-term .mobile-support-sheet-head {
        min-height: 0 !important;
        padding: 12px 14px 10px !important;
    }

    body.page-life-term .mobile-support-sheet-title {
        font-size: 18px !important;
        line-height: 1.05 !important;
    }

    body.page-life-term .mobile-support-sheet-desc {
        max-width: 42ch !important;
        margin-top: 5px !important;
        font-size: 11px !important;
        line-height: 1.24 !important;
    }

    body.page-life-term .mobile-support-list {
        gap: 5px !important;
        padding: 0 10px 10px !important;
    }

    body.page-life-term .mobile-support-action {
        min-height: 39px !important;
        padding: 8px 11px !important;
        border-radius: 10px !important;
    }

    body.page-life-term .mobile-support-action-label {
        font-size: 10.5px !important;
        line-height: 1.05 !important;
    }

    body.page-life-term .mobile-support-action-meta {
        margin-top: 2px !important;
        font-size: 9.5px !important;
        line-height: 1.12 !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-life-term .mobile-support-sheet {
        left: 12px !important;
        right: auto !important;
        width: min(306px, calc(100vw - 28px)) !important;
        max-width: min(306px, calc(100vw - 28px)) !important;
        max-height: calc(100dvh - 96px) !important;
        overflow-y: auto !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    body.page-life-term .mobile-support-sheet::-webkit-scrollbar {
        width: 0 !important;
        height: 0 !important;
    }

    body.page-life-term .mobile-support-sheet-head {
        padding: 10px 12px 8px !important;
    }

    body.page-life-term .mobile-support-sheet-desc {
        display: none !important;
    }

    body.page-life-term .mobile-support-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        padding: 0 8px 8px !important;
    }

    body.page-life-term .mobile-support-action {
        min-height: 36px !important;
        padding: 7px 9px !important;
    }
}

@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-life-term {
        --product-support-sheet-pad-top: 10px;
        --product-support-sheet-head-pad-x: 14px;
        --product-support-sheet-head-gap: 8px;
        --product-support-sheet-title-size: 18px;
        --product-support-sheet-close-size: 32px;
        --product-support-sheet-row-min: 39px;
        --product-support-sheet-row-pad-y: 8px;
        --product-support-sheet-row-pad-x: 11px;
        --product-support-sheet-row-font-size: 10.5px;
    }

    body.page-life-term .mobile-support-sheet .mobile-support-list {
        gap: 5px !important;
        padding: 0 10px 10px !important;
    }

    body.page-life-term .mobile-support-sheet {
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    body.page-life-term .mobile-support-sheet::-webkit-scrollbar {
        width: 0 !important;
        height: 0 !important;
    }

    body.page-life-term .mobile-support-sheet a.mobile-support-action,
    body.page-life-term .mobile-support-sheet button.mobile-support-action {
        min-height: 39px !important;
        padding: 8px 11px !important;
        border-radius: 10px !important;
        background-position: 11px 100% !important;
        background-size: calc(100% - 22px) 1px !important;
    }

    body.page-life-term .mobile-support-sheet .mobile-support-action-label {
        font-size: 10.5px !important;
        line-height: 1.05 !important;
    }

    body.page-life-term .mobile-support-sheet .mobile-support-action-meta {
        margin-top: 2px !important;
        font-size: 9.5px !important;
        line-height: 1.12 !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-life-term {
        --product-support-sheet-row-min: 36px;
        --product-support-sheet-row-pad-y: 7px;
        --product-support-sheet-row-pad-x: 9px;
    }

    body.page-life-term .mobile-support-sheet .mobile-support-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        padding: 0 8px 8px !important;
    }

    body.page-life-term .mobile-support-sheet a.mobile-support-action,
    body.page-life-term .mobile-support-sheet button.mobile-support-action {
        min-height: 36px !important;
        padding: 7px 9px !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    html body.page-life-term .chat-panel,
    html body.page-life-term .chat-panel.is-thread {
        width: min(430px, calc(100vw - 36px)) !important;
        height: min(520px, calc(100dvh - 28px)) !important;
        max-height: calc(100dvh - 28px) !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-shell {
        padding: 18px 18px 20px !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-eyebrow {
        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-title {
        margin-top: 8px !important;
        font-size: 26px !important;
        line-height: 1 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-copy {
        margin-top: 7px !important;
        max-width: 27ch !important;
        font-size: 11px !important;
        line-height: 1.24 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-actions {
        gap: 7px !important;
        margin-top: 12px !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-btn {
        min-height: 52px !important;
        grid-template-columns: 30px minmax(0, 1fr) !important;
        gap: 9px !important;
        padding: 9px 42px 9px 11px !important;
        border-radius: 12px !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-glyph {
        width: 30px !important;
        height: 30px !important;
        font-size: 10px !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-label {
        font-size: 9px !important;
        letter-spacing: 0.12em !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-meta {
        font-size: 10px !important;
        line-height: 1.12 !important;
    }

    body.page-life-term .chat-panel.is-selecting .chat-messages .chat-selector-btn::after {
        right: 11px !important;
        width: 24px !important;
        height: 24px !important;
    }

    body.page-life-term .chat-panel.is-thread:not(.is-selecting) .chat-messages {
        padding-top: 22px !important;
        gap: 10px !important;
    }

    body.page-life-term .chat-panel.is-thread:not(.is-selecting) .chat-bubble:first-child {
        margin-top: 4px !important;
    }

    body.page-life-term .chat-panel.is-thread:not(.is-selecting) .chat-bubble {
        padding: 12px 16px !important;
        font-size: 12px !important;
        line-height: 1.38 !important;
    }

    body.page-life-term .chat-consent {
        margin: 1px 0 0 !important;
        padding: 0 !important;
        border-top-color: transparent !important;
        font-size: 7px !important;
        line-height: 1 !important;
        color: rgba(180, 194, 226, 0.52) !important;
    }
}

/* =========================================================================
   8. GUIDED WALKTHROUGH â€” same architectural rhythm.
   ========================================================================= */

body.page-life-term #edu-modal .path-modal-box {
    border-color: rgba(154, 178, 235, 0.18) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055) 0%, rgba(255, 255, 255, 0.014) 34%, rgba(0, 0, 0, 0) 68%),
        radial-gradient(circle at 18% 0%, rgba(112, 152, 232, 0.13) 0%, rgba(112, 152, 232, 0.045) 26%, rgba(112, 152, 232, 0) 52%),
        radial-gradient(circle at 88% 10%, rgba(126, 88, 224, 0.12) 0%, rgba(126, 88, 224, 0.04) 24%, rgba(126, 88, 224, 0) 50%),
        linear-gradient(180deg, rgba(7, 8, 12, 0.985) 0%, rgba(3, 4, 8, 0.992) 100%) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.07),
        0 0 0 2px rgba(112, 152, 232, 0.075),
        0 30px 78px rgba(0, 0, 0, 0.80),
        0 0 42px rgba(112, 152, 232, 0.16),
        0 0 72px rgba(126, 88, 224, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        inset 0 0 30px rgba(112, 152, 232, 0.035) !important;
}

body.page-life-term #edu-modal .path-modal-cta,
body.page-life-term #edu-modal .edu-modal-next-btn {
    min-height: 40px !important;
    padding: 10px 24px !important;
    border-radius: 9px !important;
    font-size: 10px !important;
    letter-spacing: 1.4px !important;
    font-weight: 650 !important;
}

@media (max-width: 640px) {
    body.page-life-term #edu-modal .path-modal-cta,
    body.page-life-term #edu-modal .edu-modal-next-btn {
        min-height: 36px !important;
        padding: 8px 20px !important;
        border-radius: 8px !important;
    }
}

@media (orientation: landscape) and (max-height: 900px) {
    body.page-life-term #edu-modal.path-modal {
        --edu-landscape-inset-x: clamp(60px, 9vw, 150px);
        --edu-landscape-inset-y: clamp(32px, 8dvh, 76px);
        --edu-landscape-box-w: min(920px, calc(100vw - (var(--edu-landscape-inset-x) * 2)));
        --edu-landscape-box-h: min(620px, calc(100dvh - (var(--edu-landscape-inset-y) * 2)));
        --edu-landscape-footer-h: clamp(48px, 7dvh, 58px);
        --edu-landscape-header-h: var(--edu-landscape-footer-h);
        --review-size: clamp(66px, 15dvh, 156px);
        --edu-fit-card-h: clamp(34px, 6.4dvh, 50px);
    }

    body.page-life-term #edu-modal .path-modal-header,
    body.page-life-term #edu-modal.compare-mode .path-modal-header {
        min-height: var(--edu-landscape-header-h) !important;
        height: var(--edu-landscape-header-h) !important;
        padding-inline: clamp(46px, 5.2vw, 58px) !important;
    }

    body.page-life-term #edu-modal .edu-progress-bar,
    body.page-life-term #edu-modal .edu-progress-dots {
        min-height: 26px !important;
        height: 26px !important;
    }

    body.page-life-term #edu-modal .edu-progress-dots {
        gap: clamp(18px, 2.7vw, 24px) !important;
    }

    body.page-life-term #edu-modal .progress-dot {
        width: 40px !important;
        height: 26px !important;
        grid-template-rows: 10px 10px !important;
        gap: 3px !important;
        align-content: start !important;
    }

    body.page-life-term #edu-modal .dot-inner {
        width: 10px !important;
        height: 10px !important;
    }

    body.page-life-term #edu-modal .dot-label {
        font-size: 9.5px !important;
        line-height: 10px !important;
    }

    body.page-life-term #edu-modal .edu-modal-close {
        width: 30px !important;
        height: 30px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    body.page-life-term #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode {
        grid-template-columns: minmax(0, 1.22fr) minmax(clamp(176px, 28vw, 320px), 0.78fr) !important;
    }

    body.page-life-term #edu-modal[data-step="3"] .consult-visual-panel,
    body.page-life-term #edu-modal[data-step="4"] .consult-visual-panel {
        max-height: min(100%, 300px) !important;
    }
}

/* =========================================================================
   9. HERO GLASS â€” quieter, sharper edges.
   ========================================================================= */

body.page-life-term .product-hero-content {
    border-radius: 14px !important;
    border-color: rgba(168, 188, 220, 0.10) !important;
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.46),
        0 0 22px rgba(168, 188, 220, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
}

body.page-life-term .product-hero .hero-strap {
    border-color: rgba(168, 188, 220, 0.12) !important;
}

body.page-life-term .hero-trust-line {
    color: rgba(212, 218, 230, 0.78) !important;
    letter-spacing: 0.55px !important;
}

/* =========================================================================
   10. FOOTER / FINAL CTA â€” tightened legal stack only; section break
   reverts to baseline (gold fade hairline lives in product-page-group.css).
   ========================================================================= */

body.page-life-term .path-subsection-final .final-legal-lead {
    text-wrap: balance;
}

body.page-life-term .path-subsection-final .final-legal-copy {
    text-wrap: pretty;
}

@media (max-width: 640px) {
    body.page-life-term .path-subsection-final .final-legal-lead {
        font-size: 11.25px !important;
    }
    body.page-life-term .path-subsection-final .final-license-line {
        font-size: 10.25px !important;
    }
}

/* Term final touch compacting: FAQ, testimonial subhead, and final CTA. */
@media (max-width: 640px),
       (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
    body.page-life-term {
        --term-touch-card-gap: clamp(18px, 3.4vw, 28px);
        --term-faq-help-card-h: 156px;
        --term-faq-help-card-padding: 20px 18px;
        --term-faq-help-card-shell-gap: 10px;
        --term-faq-help-card-direction: column;
        --term-faq-help-icon-size: 42px;
        --term-faq-help-kicker-size: 10px;
        --term-faq-help-kicker-line: 1.2;
        --term-faq-help-kicker-spacing: 0.15em;
        --term-faq-help-title-size: 13px;
        --term-faq-help-title-line: 1.2;
    }

    body.page-life-term #group-education .process-split-layout {
        gap: var(--term-touch-card-gap) !important;
    }

    body.page-life-term .carrier-trust-divider {
        margin-top: 10px !important;
        padding-top: calc(var(--term-touch-card-gap) - 10px) !important;
    }

    body.page-life-term #group-facts {
        padding-top: 14px !important;
    }

    body.page-life-term #group-facts .section-title {
        font-size: clamp(26px, 5.2vw, 32px) !important;
        line-height: 1.02 !important;
    }

    body.page-life-term #group-facts .faq-split-layout {
        gap: var(--term-touch-card-gap) !important;
        margin-top: 11px !important;
    }

    body.page-life-term #group-facts .topic-list {
        gap: 6px !important;
    }

    body.page-life-term #group-facts .topic-item {
        border-radius: 11px !important;
        border-color: rgba(168, 188, 220, 0.07) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.024) 0%, rgba(255, 255, 255, 0.006) 40%, rgba(255, 255, 255, 0) 100%),
            linear-gradient(160deg, rgba(7, 9, 13, 0.84) 0%, rgba(4, 4, 6, 0.965) 64%, rgba(0, 0, 0, 0.99) 100%) !important;
        box-shadow:
            0 10px 20px rgba(0, 0, 0, 0.40),
            0 0 0 1px rgba(255, 255, 255, 0.016),
            inset 0 1px 0 rgba(255, 255, 255, 0.038),
            inset 0 -1px 0 rgba(168, 188, 220, 0.016) !important;
    }

    body.page-life-term #group-facts .topic-item summary {
        min-height: 36px !important;
        padding: 7px 10px !important;
        gap: 7px !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    body.page-life-term #group-facts .topic-item summary h3 {
        font-size: clamp(10.75px, 1.46vw, 12px) !important;
        line-height: 1.14 !important;
    }

    body.page-life-term #group-facts .topic-step {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        border-radius: 6px !important;
        border: 1px solid rgba(168, 188, 220, 0.11) !important;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, 0.075) 0%, rgba(255, 255, 255, 0.018) 42%, rgba(0, 0, 0, 0) 100%),
            linear-gradient(180deg, rgba(9, 10, 13, 0.98), rgba(1, 1, 2, 1)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            inset 0 -1px 0 rgba(0, 0, 0, 0.45),
            0 2px 5px rgba(0, 0, 0, 0.32) !important;
    }

    body.page-life-term #group-facts .topic-step::before {
        font-size: 9px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        color: rgba(242, 245, 250, 0.92) !important;
        text-shadow: 0 1px 5px rgba(0, 0, 0, 0.64) !important;
    }

    body.page-life-term #group-facts .topic-item summary::after {
        align-self: center !important;
        width: 7px !important;
        height: 7px !important;
        border: 1px solid rgba(235, 238, 244, 0.08) !important;
        border-radius: 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.052) 0 18%, rgba(18, 18, 20, 0.82) 19% 48%, rgba(1, 1, 2, 0.99) 49%),
            #020202 !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.018),
            inset 0 -1px 0 rgba(0, 0, 0, 0.78) !important;
        clip-path: none !important;
        filter: none !important;
        transform: translateY(0) rotate(0deg) !important;
    }

    body.page-life-term #group-facts .topic-item[open] summary::after {
        width: 7px !important;
        height: 7px !important;
        border: 0 !important;
        border-top: 1.5px solid rgba(232, 238, 248, 0.76) !important;
        border-right: 1.5px solid rgba(232, 238, 248, 0.76) !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: translateY(-1px) rotate(135deg) !important;
    }

    body.page-life-term #group-facts .topic-body {
        padding: 0 12px 10px !important;
        font-size: 11.5px !important;
        line-height: 1.36 !important;
        background: transparent !important;
        border-top: 0 !important;
        box-shadow: none !important;
    }

    body.page-life-term #group-facts .topic-body p {
        padding-left: 27px !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button,
    body.page-life-term #group-facts .faq-chat-cta .faq-chat-trigger-card.journey-entry-button,
    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-shell {
        min-height: var(--term-faq-help-card-h) !important;
        height: var(--term-faq-help-card-h) !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-shell,
    body.page-life-term #group-facts .faq-chat-trigger-card .faq-chat-trigger-shell {
        padding: var(--term-faq-help-card-padding) !important;
        gap: var(--term-faq-help-card-shell-gap) !important;
        flex-direction: var(--term-faq-help-card-direction) !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-title {
        font-size: var(--term-faq-help-title-size) !important;
        line-height: var(--term-faq-help-title-line) !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-kicker {
        font-size: var(--term-faq-help-kicker-size) !important;
        line-height: var(--term-faq-help-kicker-line) !important;
        letter-spacing: var(--term-faq-help-kicker-spacing) !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-icon {
        width: var(--term-faq-help-icon-size) !important;
        height: var(--term-faq-help-icon-size) !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-copy {
        align-items: center !important;
        text-align: center !important;
    }

    body.page-life-term #group-facts + .product-video-section,
    body.page-life-term .panel-unified #group-facts + .product-video-section {
        margin-top: var(--term-touch-card-gap) !important;
    }

    body.page-life-term .product-testimonials .testimonials-summary {
        margin-left: 0 !important;
        margin-right: auto !important;
        text-align: left !important;
    }

    body.page-life-term .product-testimonials + .path-subsection-final {
        margin-top: clamp(34px, 5.2vw, 44px) !important;
    }

    body.page-life-term .path-subsection-final {
        --term-final-cta-gap: clamp(14px, 2.6vw, 20px);
        padding-top: var(--term-final-cta-gap) !important;
    }

    body.page-life-term .path-subsection-final .section-title {
        margin-bottom: 0 !important;
        font-size: clamp(20px, 5.4vw, 26px) !important;
        line-height: 1.08 !important;
    }

    body.page-life-term .path-subsection-final .final-cta-standalone {
        padding-top: var(--term-final-cta-gap) !important;
        padding-bottom: 0 !important;
    }

    body.page-life-term .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta {
        width: min(282px, calc(100vw - 68px)) !important;
        min-height: 42px !important;
        height: 42px !important;
        padding: 0 18px !important;
        font-size: 8.25px !important;
    }

    body.page-life-term .path-subsection-final .final-section-break {
        margin-top: var(--term-final-cta-gap) !important;
        padding-top: var(--term-final-cta-gap) !important;
    }

    body.page-life-term .path-subsection-final .final-legal-block {
        padding-top: 0 !important;
    }

    body.page-life-term .path-subsection-final .final-legal-lead {
        font-size: 10.5px !important;
        line-height: 1.34 !important;
        margin-bottom: 0 !important;
    }

    body.page-life-term .path-subsection-final .final-license-line {
        font-size: 9.5px !important;
        line-height: 1.34 !important;
        margin-bottom: 0 !important;
    }

    body.page-life-term .path-subsection-final .final-legal-copy {
        font-size: 9.6px !important;
        line-height: 1.42 !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-life-term {
        --term-touch-card-gap: 18px;
        --term-faq-help-card-h: 76px;
        --term-faq-help-card-padding: 11px 13px;
        --term-faq-help-card-shell-gap: 9px;
        --term-faq-help-card-direction: row;
        --term-faq-help-icon-size: 32px;
        --term-faq-help-kicker-size: 7.5px;
        --term-faq-help-kicker-line: 1.2;
        --term-faq-help-kicker-spacing: 0.15em;
        --term-faq-help-title-size: 9.5px;
        --term-faq-help-title-line: 1.14;
    }
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-life-term {
        --term-touch-card-gap: 18px;
        --term-final-cta-gap: 12px;
        --term-faq-help-card-h: 156px;
        --term-faq-help-card-padding: 20px 18px;
        --term-faq-help-card-shell-gap: 10px;
        --term-faq-help-icon-size: 42px;
        --term-faq-help-kicker-size: 10px;
        --term-faq-help-kicker-line: 1.2;
        --term-faq-help-kicker-spacing: 0.15em;
        --term-faq-help-title-size: 11px;
        --term-faq-help-title-line: 1.35;
    }

    body.page-life-term #group-facts .section-title {
        font-size: 28px !important;
    }

    body.page-life-term #group-facts .faq-split-layout {
        margin-top: 9px !important;
    }

    body.page-life-term #group-facts .topic-item summary {
        min-height: 33px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }

    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button,
    body.page-life-term #group-facts .faq-chat-cta .faq-chat-trigger-card.journey-entry-button,
    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-shell {
        min-height: var(--term-faq-help-card-h) !important;
        height: var(--term-faq-help-card-h) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible {
        transform: translateY(-4px) !important;
        border-color: rgba(255, 255, 255, 0.34) !important;
        box-shadow:
            0 30px 52px rgba(0, 0, 0, 0.64),
            0 0 22px rgba(255, 255, 255, 0.085),
            0 0 0 1px rgba(255, 255, 255, 0.18),
            0 0 28px rgba(255, 255, 255, 0.13),
            inset 0 1px 0 rgba(255, 255, 255, 0.18),
            inset 0 -1px 0 rgba(255, 255, 255, 0.10) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover::before,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible::before,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover::before,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible::before {
        background: conic-gradient(
            from var(--snake-angle),
            transparent 0%,
            transparent 64%,
            rgba(255, 255, 255, 0.10) 72%,
            rgba(255, 255, 255, 0.52) 80%,
            rgba(255, 255, 255, 0.82) 85%,
            rgba(255, 255, 255, 0.42) 92%,
            rgba(255, 255, 255, 0.12) 96%,
            transparent 100%
        ) !important;
        filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.34)) drop-shadow(0 0 20px rgba(255, 255, 255, 0.16)) brightness(1.08) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover .journey-entry-icon,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon {
        border-color: rgba(255, 255, 255, 0.46) !important;
        background:
            radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.72), transparent 30%),
            linear-gradient(180deg, rgba(246, 248, 252, 0.95), rgba(104, 108, 116, 0.94)) !important;
        box-shadow:
            0 10px 20px rgba(0, 0, 0, 0.48),
            0 0 14px rgba(255, 255, 255, 0.15),
            inset 0 1px 0 rgba(255, 255, 255, 0.40),
            inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover .journey-entry-pulse,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible .journey-entry-pulse,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-pulse,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-pulse {
        background: var(--journey-pulse-active-fill) !important;
        box-shadow: var(--journey-pulse-active-shadow) !important;
    }

    body.page-life-term #group-education .process-launch-side .journey-entry-button:hover .journey-entry-icon::after,
    body.page-life-term #group-education .process-launch-side .journey-entry-button:focus-visible .journey-entry-icon::after,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:hover .journey-entry-icon::after,
    body.page-life-term #group-facts .faq-chat-trigger-card.journey-entry-button:focus-visible .journey-entry-icon::after {
        border-color: var(--journey-ring-active-border) !important;
        box-shadow: var(--journey-ring-active-glow) !important;
        filter: var(--journey-ring-active-filter) !important;
    }

    body.page-life-term .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta {
        min-height: 38px !important;
        height: 38px !important;
    }
}

body.page-product .process-launch-side .journey-entry-icon,
body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-icon,
body.page-life-term #group-education .process-launch-side .journey-entry-icon,
body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-icon {
    animation: journey-icon-click 2.4s ease-in-out infinite !important;
}

@media (prefers-reduced-motion: reduce) {
    body.page-product .process-launch-side .journey-entry-icon,
    body.page-product .path-subsection[id$="-facts"] .faq-chat-trigger-card .journey-entry-icon,
    body.page-life-term #group-education .process-launch-side .journey-entry-icon,
    body.page-life-term #group-facts .faq-chat-trigger-card .journey-entry-icon {
        animation: none !important;
        transform: none !important;
    }
}

@media (max-width: 1180px), (min-width: 1181px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-life-term.page-product .footer-nav::after {
        background:
            radial-gradient(22% 180% at 50% 50%, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.045) 44%, rgba(0, 0, 0, 0) 76%),
            linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.13) 50%, rgba(255, 255, 255, 0.045) 100%) !important;
        box-shadow:
            0 0 8px rgba(255, 255, 255, 0.025),
            0 0 14px rgba(0, 0, 0, 0.32) !important;
    }
}

/* =========================================================================
   11. REDUCED MOTION â€” keep premium feel, drop residual animation.
   ========================================================================= */

@media (prefers-reduced-motion: reduce) {
    body.page-life-term .product-testimonials .testimonial-card {
        animation: none !important;
        transition: none !important;
    }
    body.page-life-term .product-testimonials .testimonial-nav {
        transition: none !important;
    }
    body.page-life-term .carrier-scroll-strip {
        animation: none !important;
    }
}

/* Desktop Chat rim polish: black/white glass depth without the gray box outline. */
@media (hover: hover) and (pointer: fine) {
    html body.page-product .chat-panel,
    html body.page-product .chat-panel.is-thread {
        border-color: rgba(255, 255, 255, 0.045) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.048) 0%, rgba(255, 255, 255, 0.009) 30%, rgba(0, 0, 0, 0) 62%),
            linear-gradient(180deg, rgba(7, 8, 11, 0.98) 0%, rgba(1, 2, 4, 0.99) 100%) !important;
        box-shadow:
            0 38px 84px rgba(0, 0, 0, 0.84),
            0 0 38px rgba(255, 255, 255, 0.028),
            inset 0 1px 0 rgba(255, 255, 255, 0.052),
            inset 0 -20px 38px rgba(0, 0, 0, 0.20) !important;
    }

    body.page-product .chat-thread-header,
    body.page-product .chat-input-row {
        box-shadow:
            0 14px 30px rgba(0, 0, 0, 0.44),
            inset 0 1px 0 rgba(255, 255, 255, 0.042),
            inset 0 -10px 22px rgba(0, 0, 0, 0.14) !important;
    }

    body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-messages,
    body.page-product .chat-panel.is-selecting .chat-messages {
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.038),
            inset 0 -16px 30px rgba(0, 0, 0, 0.18) !important;
    }

    body.page-product .chat-input {
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.032),
            inset 0 -10px 18px rgba(0, 0, 0, 0.16) !important;
    }

    body.page-product .chat-input:hover,
    body.page-product .chat-input:focus,
    body.page-product .chat-input:focus-visible {
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.046),
            inset 0 -10px 18px rgba(0, 0, 0, 0.16) !important;
    }
}

@media (pointer: coarse), (max-width: 640px) {
    body.page-product #edu-modal.compare-mode .modal-takeaway {
        border-top: 0 !important;
        padding-top: 0 !important;
        margin-top: clamp(10px, 1.4dvh, 14px) !important;
        margin-bottom: 0 !important;
        position: static !important;
        top: auto !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
    }

    body.page-product #edu-modal.compare-mode .edu-compliance-note {
        border-top: 0 !important;
        padding-top: 0 !important;
        margin-top: -5px !important;
        margin-bottom: 0 !important;
        position: static !important;
        top: auto !important;
        line-height: 1.25 !important;
    }
}

/* Guided Walkthrough 1-5 cards: keep gold as a left rail, not a full outline. */
body.page-product #edu-modal .path-modal-points.detail-card-mode.consult-split-mode li:not(.edu-detail-card-link) {
    border-color: rgba(255, 255, 255, 0.105) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.048) 0%, rgba(255, 255, 255, 0.014) 46px, rgba(6, 8, 12, 0.60) 100%),
        rgba(5, 7, 10, 0.86) !important;
    -webkit-backdrop-filter: blur(2px) saturate(108%) !important;
    backdrop-filter: blur(2px) saturate(108%) !important;
    box-shadow:
        0 16px 34px rgba(0, 0, 0, 0.58),
        0 0 0 1px rgba(255, 255, 255, 0.032),
        inset 0 -1px 0 rgba(0, 0, 0, 0.36),
        inset 4px 0 0 rgba(201, 160, 80, 0.38) !important;
}

body.page-product #edu-modal .path-modal-points.detail-card-mode.consult-split-mode li:not(.edu-detail-card-link)::before {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.042) 0%, rgba(255, 255, 255, 0.01) 42%, transparent 70%),
        radial-gradient(circle at 0% 50%, rgba(201, 160, 80, 0.062), transparent 40%) !important;
}

/* Guided Walkthrough Compare: true label rail with Gold Spine Advisor Pick column. */
body.page-product #edu-modal[data-step="2"] .path-modal-points.compare-grid-mode {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    overflow: visible !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-item {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product #edu-modal.compare-mode .path-modal-body {
    background:
        linear-gradient(180deg, rgba(20, 21, 24, 0.86), rgba(4, 5, 7, 0.92)),
        radial-gradient(circle at 52% 14%, rgba(255, 255, 255, 0.035), transparent 26%) !important;
}

body.page-product #edu-modal.compare-mode .modal-lead,
body.page-product #edu-modal.compare-mode .modal-takeaway,
body.page-product #edu-modal.compare-mode .edu-compliance-note {
    text-shadow:
        0 1px 2px rgba(0, 0, 0, 0.88),
        0 0 14px rgba(0, 0, 0, 0.72) !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-label-rail {
    --edu-compare-label-col: 176px;
    display: grid !important;
    grid-template-columns: var(--edu-compare-label-col) repeat(3, minmax(0, 1fr)) !important;
    position: relative !important;
    isolation: isolate !important;
    width: 100% !important;
    overflow: hidden !important;
    border: 1px solid rgba(232, 236, 246, 0.12) !important;
    border-radius: 14px !important;
    background:
        linear-gradient(180deg, rgba(2, 2, 3, 0.60), rgba(2, 2, 3, 0.66)),
        rgba(2, 2, 3, 0.12) !important;
    -webkit-backdrop-filter: blur(2px) saturate(108%) !important;
    backdrop-filter: blur(2px) saturate(108%) !important;
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.38) !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-label-rail::before {
    display: none !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-label-rail::after {
    display: none !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-cell {
    position: relative !important;
    z-index: 1 !important;
    min-width: 0 !important;
    min-height: 58px !important;
    padding: 17px 14px !important;
    border-top: 1px solid rgba(232, 236, 246, 0.075) !important;
    border-left: 1px solid rgba(232, 236, 246, 0.075) !important;
    color: rgba(238, 242, 250, 0.86) !important;
    font-size: 11.5px !important;
    line-height: 1.25 !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-label,
body.page-product #edu-modal[data-step="2"] .edu-compare-rail-value {
    overflow: hidden !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-cell:nth-child(4n+1) {
    border-left: 0 !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-label {
    background: rgba(255, 255, 255, 0.025) !important;
    color: rgba(226, 232, 244, 0.86) !important;
    font-weight: 850 !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head {
    display: flex !important;
    min-height: 106px !important;
    border-top: 0 !important;
    color: rgba(248, 250, 255, 0.96) !important;
    flex-direction: column !important;
    justify-content: center !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head:first-child {
    background: rgba(255, 255, 255, 0.012) !important;
    justify-content: center !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head:first-child::before {
    content: "Compare Factors" !important;
    display: block !important;
    margin: 0 !important;
    color: rgba(236, 240, 250, 0.78) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: 0.11em !important;
    line-height: 1.3 !important;
    text-transform: uppercase !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-cell.is-featured {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.008)),
        rgba(0, 0, 0, 0.16) !important;
    color: rgba(250, 252, 255, 0.92) !important;
    border-left: 1px solid rgba(201, 160, 80, 1) !important;
    box-shadow: none !important;
    z-index: 3 !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head.is-featured {
    margin-top: -1px !important;
    border-top: 1px solid rgba(201, 160, 80, 1) !important;
    border-left: 1px solid rgba(201, 160, 80, 1) !important;
    box-shadow: none !important;
    z-index: 4 !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head.is-featured::before {
    display: none !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head.is-featured::after {
    content: "Advisor Pick" !important;
    position: absolute !important;
    top: 15px !important;
    right: 12px !important;
    color: rgba(235, 198, 118, 0.74) !important;
    font-size: 7px !important;
    font-weight: 900 !important;
    letter-spacing: 0.18em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    transform: rotate(180deg) !important;
    writing-mode: vertical-rl !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-plan {
    margin: 0 !important;
    color: rgba(252, 253, 255, 0.96) !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    text-wrap: balance !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-sub {
    margin: 6px 0 0 !important;
    padding: 0 !important;
    color: rgba(204, 212, 226, 0.68) !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-cards {
    display: none !important;
}

body.page-product #edu-modal[data-step="2"] .edu-compare-sub::after,
body.page-product #edu-modal[data-step="2"] .edu-compare-ribbon,
body.page-product #edu-modal[data-step="2"] .edu-compare-rows,
body.page-product #edu-modal[data-step="2"] .edu-compare-row,
body.page-product #edu-modal[data-step="2"] .edu-compare-bestfor {
    display: none !important;
}

@media (max-width: 1180px) and (min-width: 981px) {
    body.page-product #edu-modal[data-step="2"] .edu-compare-label-rail {
        --edu-compare-label-col: 158px;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-rail-cell {
        min-height: 54px !important;
        padding: 15px 12px !important;
        font-size: 10.6px !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-rail-head {
        min-height: 100px !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-plan {
        font-size: 14px !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-sub {
        font-size: 10px !important;
    }
}

@media (max-width: 980px), (pointer: coarse) {
    body.page-product #edu-modal[data-step="2"] .edu-compare-label-rail {
        display: none !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-cards {
        display: grid !important;
        gap: 10px !important;
        width: 100% !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-card {
        position: relative !important;
        overflow: hidden !important;
        isolation: isolate !important;
        border: 1px solid rgba(232, 236, 246, 0.14) !important;
        border-radius: 12px !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.044), rgba(255, 255, 255, 0.012)),
            rgba(2, 3, 5, 0.88) !important;
        -webkit-backdrop-filter: blur(9px) saturate(112%) !important;
        backdrop-filter: blur(9px) saturate(112%) !important;
        box-shadow:
            0 14px 30px rgba(0, 0, 0, 0.28),
            inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-card::before {
        content: "" !important;
        position: absolute !important;
        inset: 0 !important;
        z-index: 0 !important;
        pointer-events: none !important;
        background:
            linear-gradient(118deg, rgba(255, 255, 255, 0.034), rgba(255, 255, 255, 0.01) 36%, transparent 58%),
            radial-gradient(circle at 80% 10%, rgba(118, 132, 255, 0.022), transparent 34%) !important;
        opacity: 0.44 !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-card > * {
        position: relative !important;
        z-index: 1 !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-card.is-featured {
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.044), rgba(255, 255, 255, 0.012)),
            rgba(2, 3, 5, 0.88) !important;
        box-shadow:
            inset 0 3px 0 rgba(201, 160, 80, 0.74),
            inset 1px 0 0 rgba(201, 160, 80, 0.42),
            inset -1px 0 0 rgba(255, 255, 255, 0.11),
            0 14px 30px rgba(0, 0, 0, 0.28) !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-card.is-featured::after {
        content: "Advisor Pick" !important;
        position: absolute !important;
        top: 15px !important;
        right: 14px !important;
        color: rgba(235, 198, 118, 0.78) !important;
        font-size: 8px !important;
        font-weight: 900 !important;
        letter-spacing: 0.16em !important;
        line-height: 1 !important;
        text-transform: uppercase !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-head {
        padding: 16px 14px 14px !important;
        border-bottom: 1px solid rgba(232, 236, 246, 0.075) !important;
        text-align: left !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-card.is-featured .edu-compare-mobile-head {
        padding-right: 116px !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-rows {
        display: grid !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-row {
        display: grid !important;
        grid-template-columns: minmax(120px, 0.56fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: center !important;
        min-height: 48px !important;
        padding: 11px 14px !important;
        border-top: 1px solid rgba(232, 236, 246, 0.07) !important;
        text-align: left !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-row:first-child {
        border-top: 0 !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-label {
        overflow: hidden !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
        color: rgba(226, 232, 244, 0.86) !important;
        font-size: 10.5px !important;
        font-weight: 850 !important;
        line-height: 1.25 !important;
        text-align: left !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-value {
        overflow: hidden !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
        color: rgba(244, 247, 252, 0.9) !important;
        font-size: 11px !important;
        font-weight: 730 !important;
        line-height: 1.3 !important;
        text-align: right !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-plan {
        font-size: 15px !important;
        text-align: left !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-sub {
        font-size: 10.5px !important;
        text-align: left !important;
    }
}

@media (max-width: 520px) {
    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-row {
        grid-template-columns: minmax(102px, 0.48fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        align-items: center !important;
        min-height: auto !important;
        padding: 10px 14px !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-value {
        text-align: right !important;
    }
}

@media (max-width: 340px) {
    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-row {
        grid-template-columns: 1fr !important;
        gap: 4px !important;
        align-items: start !important;
    }

    body.page-product #edu-modal[data-step="2"] .edu-compare-mobile-value {
        text-align: left !important;
    }
}

/* Enrollment-family resource popups: quieter black/silver treatment, gold CTA kept. */
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close {
    width: var(--stage3-popup-ctrl) !important;
    height: var(--stage3-popup-ctrl) !important;
    min-width: var(--stage3-popup-ctrl) !important;
    min-height: var(--stage3-popup-ctrl) !important;
    border-radius: 7px !important;
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 12px rgba(111, 135, 255, 0.18),
        0 0 14px rgba(111, 135, 255, 0.12),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close::after {
    width: var(--stage3-popup-ctrl-line) !important;
    background: var(--neon-blue) !important;
    box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible {
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product #edu-modal .edu-modal-close {
    width: var(--stage3-popup-ctrl) !important;
    height: var(--stage3-popup-ctrl) !important;
    min-width: var(--stage3-popup-ctrl) !important;
    min-height: var(--stage3-popup-ctrl) !important;
    border-radius: 7px !important;
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 12px rgba(111, 135, 255, 0.18),
        0 0 14px rgba(111, 135, 255, 0.12),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product #edu-modal .edu-modal-close::before,
body.page-product #edu-modal .edu-modal-close::after {
    width: var(--stage3-popup-ctrl-line) !important;
    background: var(--neon-blue) !important;
    box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
}

body.page-product #edu-modal .edu-modal-close:hover,
body.page-product #edu-modal .edu-modal-close:focus-visible {
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 0 16px rgba(239, 68, 68, 0.13),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product #edu-modal .edu-modal-close:hover::before,
body.page-product #edu-modal .edu-modal-close:focus-visible::before {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(225deg) !important;
}

body.page-product #edu-modal .edu-modal-close:hover::after,
body.page-product #edu-modal .edu-modal-close:focus-visible::after {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(135deg) !important;
}

/* Shared close-button glow: keep each button's current shape, add the options-page inner glow. */
body.page-product .find-doctor-gate-close,
body.page-product .sidebar-call-pop-close,
body.page-product .mobile-support-sheet-close,
body.page-product .chat-panel .chat-close,
body.page-product .chat-panel .chat-thread-close,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close,
body.page-product #edu-modal .edu-modal-close {
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 12px rgba(111, 135, 255, 0.18),
        0 0 14px rgba(111, 135, 255, 0.12),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product .find-doctor-gate-close:hover,
body.page-product .find-doctor-gate-close:focus-visible,
body.page-product .sidebar-call-pop-close:hover,
body.page-product .sidebar-call-pop-close:focus-visible,
body.page-product .mobile-support-sheet-close:hover,
body.page-product .mobile-support-sheet-close:focus-visible,
body.page-product .chat-panel .chat-close:hover,
body.page-product .chat-panel .chat-close:focus-visible,
body.page-product .chat-panel .chat-thread-close:hover,
body.page-product .chat-panel .chat-thread-close:focus-visible,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible,
body.page-product #edu-modal .edu-modal-close:hover,
body.page-product #edu-modal .edu-modal-close:focus-visible {
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 0 16px rgba(239, 68, 68, 0.13),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
    border-color: rgba(255, 255, 255, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.043) 0%, rgba(255, 255, 255, 0.010) 34%, rgba(0, 0, 0, 0) 68%),
        linear-gradient(180deg, rgba(7, 8, 11, 0.98) 0%, rgba(3, 4, 7, 0.984) 100%) !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.08),
        0 0 0 2px rgba(111, 80, 220, 0.07),
        0 30px 76px rgba(0, 0, 0, 0.78),
        0 0 64px rgba(102, 76, 210, 0.23),
        0 0 34px rgba(201, 160, 80, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    box-sizing: border-box !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
    margin: 0 !important;
    padding: 0 !important;
    color: transparent !important;
    background-image: linear-gradient(135deg, rgba(214, 228, 255, 0.98), var(--neon-blue), var(--neon-purple), rgba(206, 186, 255, 0.96)) !important;
    background-size: 230% 230% !important;
    background-repeat: no-repeat !important;
    background-position: 50% 50% !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: none !important;
    animation: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
    border-top: 0 !important;
    box-shadow: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .modal-lead,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal:not(.compare-mode) .modal-lead {
    font-size: 12px !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal::-webkit-scrollbar,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box::-webkit-scrollbar,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

@media (max-width: 640px), (min-width: 768px) and (max-width: 960px), (min-width: 821px) and (max-width: 1024px) and (orientation: portrait), (min-width: 961px) and (max-width: 1180px) and (orientation: landscape), (min-width: 1181px) and (max-width: 1440px) and (orientation: landscape) and (pointer: coarse) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        padding: 20px 10px 22px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        width: min(760px, calc(100vw - 20px)) !important;
        max-height: min(92svh, 760px) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        padding: 12px 16px !important;
        min-height: 56px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
        font-size: 10.5px !important;
        letter-spacing: 1.6px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding: 18px 16px !important;
        overflow-y: auto !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-body {
        gap: 12px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .modal-lead {
        max-width: 52ch !important;
        line-height: 1.45 !important;
        text-wrap: balance !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        font-size: 10px !important;
        letter-spacing: 0.14em !important;
        margin-top: 4px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-periods {
        gap: 10px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        gap: 10px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        min-height: 132px !important;
        padding: 14px !important;
        gap: 8px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title {
        font-size: 13px !important;
        line-height: 1.2 !important;
        letter-spacing: 0.05em !important;
        text-wrap: balance !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        margin-bottom: 2px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-copy {
        position: static !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 30ch !important;
        margin: 0 auto !important;
        font-size: 10.5px !important;
        line-height: 1.36 !important;
        letter-spacing: 0 !important;
        text-wrap: pretty !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        min-height: calc(3 * 1.36em) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        min-height: 64px !important;
        padding: 14px 16px 16px !important;
        gap: 10px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta {
        min-height: 46px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .find-doctor-fallback {
        margin-top: 4px !important;
        font-size: 9.5px !important;
        line-height: 1.45 !important;
    }
}

@media (max-width: 640px) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        grid-template-columns: 1fr !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        min-height: 0 !important;
        padding: 14px 16px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-copy {
        max-width: 36ch !important;
        min-height: calc(2 * 1.36em) !important;
    }
}

@media (max-width: 1024px) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 76px !important;
        padding: 14px 16px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 0 !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title {
        position: relative !important;
        opacity: 1 !important;
        transform: none !important;
        font-size: 12px !important;
        letter-spacing: 0.08em !important;
        line-height: 1.22 !important;
        transition: opacity 0.22s ease, transform 0.22s ease !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-copy {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -44%) !important;
        width: min(92%, 340px) !important;
        margin: 0 !important;
        font-size: 12.5px !important;
        line-height: 1.42 !important;
        letter-spacing: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        text-wrap: pretty !important;
        transition: opacity 0.22s ease, transform 0.22s ease !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-copy {
        opacity: 1 !important;
        transform: translate(-50%, -50%) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:not(.is-revealed):hover .enrollment-period-title,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:not(.is-revealed):focus-within .enrollment-period-title {
        opacity: 1 !important;
        transform: none !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:not(.is-revealed):hover .enrollment-period-copy,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:not(.is-revealed):focus-within .enrollment-period-copy {
        opacity: 0 !important;
        transform: translate(-50%, -44%) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-title,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed:hover .enrollment-period-title,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed:focus-within .enrollment-period-title {
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-6px) !important;
        pointer-events: none !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 10px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta {
        flex: 0 0 auto !important;
        width: calc((100% - 10px) / 2) !important;
        max-width: 220px !important;
        min-width: 0 !important;
        padding: 10px 12px !important;
        font-size: 11px !important;
        letter-spacing: 1.4px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        padding: 14px 12px calc(82px + env(safe-area-inset-bottom, 0px)) !important;
        align-items: center !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        width: min(400px, calc(100vw - 24px)) !important;
        max-height: calc(100svh - 116px - env(safe-area-inset-bottom, 0px)) !important;
        border-radius: 10px !important;
        overflow: hidden !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        min-height: 50px !important;
        padding: 10px 12px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
        max-width: calc(100% - 48px) !important;
        font-size: 10px !important;
        line-height: 1.15 !important;
        letter-spacing: 0.14em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        border-radius: 7px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close::before,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close::after {
        width: 8.5px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding: 14px 16px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-body {
        gap: 9px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .modal-lead {
        max-width: 31ch !important;
        font-size: 11.5px !important;
        line-height: 1.34 !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        margin-top: 2px !important;
        font-size: 9px !important;
        letter-spacing: 0.12em !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        gap: 8px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        min-height: 56px !important;
        padding: 10px 14px !important;
        border-radius: 9px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title {
        font-size: 11px !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        min-height: 58px !important;
        padding: 10px 14px 12px !important;
        gap: 8px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta {
        width: calc((100% - 8px) / 2) !important;
        min-height: 38px !important;
        padding: 9px 10px !important;
        border-radius: 9px !important;
        font-size: clamp(8px, 2.45vw, 9.25px) !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .enrollment-dates-source {
        letter-spacing: 0.04em !important;
    }
}

@media (hover: hover) and (pointer: fine) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        width: min(1200px, calc(100vw - 40px)) !important;
        height: auto !important;
        max-height: min(860px, calc(100vh - 40px)) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        min-height: 58px !important;
        padding: 8px 58px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        min-height: 78px !important;
        padding: 10px 22px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-periods {
        display: flex !important;
        flex-direction: column !important;
        gap: var(--stack-sublead-content-gap, 14px) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        position: relative !important;
        margin: 0 !important;
        min-height: 186px !important;
        padding: 16px !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        transition:
            transform 0.28s ease,
            border-color 0.28s ease,
            box-shadow 0.28s ease,
            background 0.28s ease !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title {
        margin: 0 !important;
        font-size: 17px !important;
        font-weight: 700 !important;
        letter-spacing: 0.04em !important;
        line-height: 1.3 !important;
        text-transform: uppercase !important;
        transition: opacity 0.24s ease, transform 0.24s ease !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-copy {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -44%) !important;
        width: min(90%, 332px) !important;
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        letter-spacing: 0 !important;
        opacity: 0 !important;
        text-align: center !important;
        text-wrap: balance !important;
        pointer-events: none !important;
        transition: opacity 0.24s ease, transform 0.24s ease !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-deadline .enrollment-period-copy {
        width: min(92%, 372px) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-special .enrollment-period-copy {
        width: min(92%, 366px) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-medicaid .enrollment-period-copy {
        width: min(92%, 386px) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:hover,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:focus-within {
        transform: none !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:hover .enrollment-period-title,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:focus-within .enrollment-period-title {
        opacity: 0 !important;
        transform: translateY(-8px) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:hover .enrollment-period-copy,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:focus-within .enrollment-period-copy {
        opacity: 1 !important;
        transform: translate(-50%, -50%) !important;
        font-size: 15px !important;
    }
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
    overflow: hidden !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close {
    flex-shrink: 0 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-cta {
    overflow: hidden !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta::after {
    contain: paint;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body::before {
    filter: blur(7px) grayscale(0.32) saturate(0.48) brightness(0.54) contrast(1.02) !important;
    opacity: 0.42 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-body::before {
    filter: blur(2px) grayscale(0.24) saturate(0.56) brightness(0.64) contrast(1.02) !important;
    opacity: 0.64 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body::after {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.022) 0%, rgba(0, 0, 0, 0.08) 42%, rgba(0, 0, 0, 0.18) 100%),
        radial-gradient(ellipse 96% 78% at 50% 45%, rgba(255, 255, 255, 0.018), rgba(0, 0, 0, 0.14) 64%, rgba(0, 0, 0, 0.24) 100%) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
    margin: 0 !important;
    border-color: rgba(255, 255, 255, 0.038) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.036) 0%, rgba(255, 255, 255, 0.012) 36%, rgba(0, 0, 0, 0.16) 100%),
        rgba(7, 8, 11, 0.72) !important;
    box-shadow:
        0 16px 30px rgba(0, 0, 0, 0.62),
        0 0 0 1px rgba(255, 255, 255, 0.014),
        inset 0 1px 0 rgba(255, 255, 255, 0.030),
        inset 0 -6px 14px rgba(0, 0, 0, 0.24) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0) 52%) !important;
    pointer-events: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
    font-weight: 700 !important;
    color: rgba(229, 218, 192, 0.88) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-copy,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-deadline .enrollment-period-copy,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-special .enrollment-period-copy,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-medicaid .enrollment-period-copy {
    color: rgba(232, 237, 246, 0.92) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:hover,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card:focus-within,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed {
    border-color: rgba(255, 255, 255, 0.075) !important;
    background:
        linear-gradient(120deg, rgba(255, 255, 255, 0.048) 0%, transparent 30%, transparent 100%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.026) 0%, rgba(255, 255, 255, 0.008) 100%),
        rgb(5, 6, 8) !important;
    box-shadow:
        0 16px 30px rgba(0, 0, 0, 0.64),
        0 0 18px rgba(255, 255, 255, 0.035),
        inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-source {
    border-color: rgba(255, 255, 255, 0.075) !important;
    color: rgba(218, 224, 236, 0.84) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.026), rgba(255, 255, 255, 0.006) 42%, rgba(0, 0, 0, 0.14)),
        rgba(5, 6, 9, 0.90) !important;
    box-shadow:
        0 14px 30px rgba(0, 0, 0, 0.50),
        inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-source::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-source::after {
    display: none !important;
    animation: none !important;
    opacity: 0 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-source:hover,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-source:focus-visible {
    border-color: rgba(255, 255, 255, 0.13) !important;
    color: rgba(236, 240, 248, 0.92) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.040), rgba(255, 255, 255, 0.010) 42%, rgba(0, 0, 0, 0.12)),
        rgba(7, 8, 11, 0.94) !important;
    box-shadow:
        0 16px 34px rgba(0, 0, 0, 0.54),
        0 0 8px rgba(255, 255, 255, 0.030),
        inset 0 1px 0 rgba(255, 255, 255, 0.050) !important;
}

/* Enrollment-family shell lock: match guided walkthrough chrome/backdrop, without its full-height body. */
body.page-product .path-modal.edu-modal.enrollment-dates-modal {
    --edu-shell-pad-x: 18px;
    --edu-shell-pad-y: 18px;
    --edu-header-h: 90px;
    --edu-footer-h: 78px;
    --stack-top-gap: 20px;
    --stack-lead-sublead-gap: 10px;
    --stack-sublead-content-gap: 14px;
    --edu-body-gutter: 22px;
    --edu-body-pad-top: var(--stack-top-gap, 12px);
    --edu-body-pad-bottom: 16px;
    align-items: center !important;
    justify-content: center !important;
    padding:
        var(--edu-shell-pad-y)
        var(--edu-shell-pad-x)
        calc(var(--edu-shell-pad-y) + env(safe-area-inset-bottom, 0px)) !important;
    background: rgba(4, 6, 14, 0.88) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-backdrop {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.055) 0%, rgba(6, 8, 14, 0.22) 46%, rgba(3, 4, 8, 0.58) 100%),
        linear-gradient(180deg, rgba(2, 3, 6, 0.62) 0%, rgba(2, 3, 6, 0.72) 100%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(110%) !important;
    backdrop-filter: blur(12px) saturate(110%) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-backdrop::before {
    display: none !important;
    opacity: 0 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-box,
body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-box {
    animation: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    animation: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.04) 22%, rgba(0, 0, 0, 0.88) 100%),
        rgba(0, 0, 0, 0.92) !important;
    border: 0 !important;
    box-shadow: none !important;
    animation: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
    min-height: var(--edu-header-h) !important;
    padding: 8px var(--edu-body-gutter) 8px 54px !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
    animation: none !important;
    background-position: 50% 50% !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
    min-height: var(--edu-footer-h) !important;
    padding: 5.5px var(--edu-body-gutter) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    flex: 0 1 auto !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 var(--edu-body-gutter) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-body {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--stack-lead-sublead-gap) !important;
    padding: var(--edu-body-pad-top) 0 var(--edu-body-pad-bottom) !important;
    min-height: 0 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-periods {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--stack-sublead-content-gap) !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body::before {
    filter: blur(4.8px) grayscale(0.18) saturate(0.7) brightness(0.6) contrast(1.04) !important;
    opacity: 0.46 !important;
    transform: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body::after {
    background:
        linear-gradient(180deg, rgba(46, 48, 52, 0.50) 0%, rgba(20, 21, 24, 0.64) 46%, rgba(5, 6, 8, 0.78) 100%),
        linear-gradient(90deg, rgba(4, 6, 10, 0.32) 0%, rgba(10, 12, 16, 0.16) 50%, rgba(4, 6, 10, 0.30) 100%) !important;
    opacity: 1 !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-body::before {
    filter: blur(1.6px) grayscale(0.12) saturate(0.82) brightness(0.72) contrast(1.02) !important;
    opacity: 0.62 !important;
    transform: none !important;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-body::after {
    opacity: 0 !important;
}

@media (orientation: landscape) and (max-height: 900px) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        --edu-header-h: 78px;
        --edu-footer-h: 78px;
        --edu-body-gutter: clamp(12px, 2vw, 22px);
        --edu-body-pad-top: clamp(7px, 1dvh, 12px);
        --edu-body-pad-bottom: clamp(5px, 0.8dvh, 10px);
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        --edu-shell-pad-x: 8px;
        --edu-shell-pad-y: 8px;
        --edu-header-h: 66px;
        --edu-footer-h: 58px;
        --edu-body-gutter: 14px;
        --edu-body-pad-top: 8px;
        --edu-body-pad-bottom: 14px;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }
}

@media (min-width: 641px) and (max-width: 820px) and (orientation: portrait) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        --edu-shell-pad-x: 8px;
        --edu-shell-pad-y: 8px;
        --edu-header-h: 74px;
        --edu-footer-h: 66px;
        --edu-body-gutter: 16px;
        --edu-body-pad-top: 10px;
        --edu-body-pad-bottom: 14px;
    }
}

@media (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        --edu-shell-pad-x: 8px;
        --edu-shell-pad-y: 8px;
        --edu-header-h: 82px;
        --edu-footer-h: 72px;
        --edu-body-gutter: 18px;
    }
}

@media (max-width: 767px) and (orientation: landscape) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        --edu-shell-pad-x: 8px;
        --edu-shell-pad-y: 6px;
        --edu-header-h: 66px;
        --edu-footer-h: 58px;
        --edu-body-gutter: 14px;
        --edu-body-pad-top: 6px;
        --edu-body-pad-bottom: 10px;
    }
}

@media (hover: hover) and (pointer: fine) and (orientation: landscape) and (max-height: 900px) {
    body.page-product #edu-modal {
        --edu-header-h: 78px;
        --edu-footer-h: 78px;
        --edu-landscape-header-h: 78px;
        --edu-landscape-footer-h: 78px;
        --edu-body-pad-top: 10px;
    }

    body.page-product #edu-modal .path-modal-header,
    body.page-product #edu-modal.compare-mode .path-modal-header,
    body.page-product #edu-modal .path-modal-footer {
        min-height: 78px !important;
        height: 78px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .modal-lead {
        max-width: min(96ch, 100%) !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-body {
        align-items: stretch !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-body {
        align-self: stretch !important;
        height: 100% !important;
    }
}

@media (pointer: coarse) {
    body.page-product #edu-modal.compare-mode .edu-modal-sublead:not([hidden]) {
        display: block !important;
        margin-top: -4px !important;
        font-size: clamp(6.3px, calc(1.16dvh - 2px), 8px) !important;
        line-height: clamp(9.13px, 1.276dvh, 11px) !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .modal-lead,
    body.page-product #edu-modal.compare-mode .modal-lead {
        max-width: min(360px, 100%) !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        text-wrap: balance !important;
    }

    body.page-product #edu-modal.compare-mode .modal-lead::after {
        display: none !important;
    }

    body.page-product #edu-modal.compare-mode .edu-modal-sublead:not([hidden]) + .path-modal-points {
        margin-top: 0 !important;
    }

    body.page-product #edu-modal .path-modal-footer {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 14px !important;
    }

    body.page-product #edu-modal .path-modal-footer-right {
        display: flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 14px !important;
    }

    body.page-product #edu-modal .edu-back-btn:not([hidden]) {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    body.page-product #edu-modal .edu-back-btn,
    body.page-product #edu-modal .edu-modal-next-btn,
    body.page-product #edu-modal .edu-modal-jump-cta {
        align-self: center !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        top: auto !important;
        transform: none !important;
    }

    body.page-product #edu-modal .edu-back-btn {
        min-height: 34px !important;
        height: 34px !important;
        padding: 0 10px !important;
        font-size: 8.25px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        letter-spacing: 1px !important;
    }
}

@media (orientation: landscape) and (pointer: coarse) {
    body.page-product #edu-modal.compare-mode .edu-modal-body {
        padding-top: 0 !important;
    }
}

@media (hover: hover) and (pointer: fine) and (min-width: 1000px) and (min-height: 901px) {
    body.page-product #edu-modal .path-modal-footer {
        min-height: 90px !important;
        height: 90px !important;
    }
}

@media (pointer: coarse) and (orientation: portrait) and (min-width: 641px) and (max-width: 1024px) {
    body.page-product #edu-modal .path-modal-footer {
        min-height: 82px !important;
        height: 82px !important;
    }
}

@media (orientation: landscape) and (max-height: 540px) and (pointer: coarse) {
    body.page-product #edu-modal.path-modal {
        --edu-fit-card-h: 34px;
        --edu-fit-card-pad-y: 4px;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode li:not(.edu-detail-card-link) {
        gap: 2px !important;
        row-gap: 2px !important;
        align-content: center !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode .edu-detail-text {
        margin-top: 0 !important;
        line-height: 1.1 !important;
    }

    body.page-product #edu-modal .path-modal-footer {
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn,
    body.page-product #edu-modal .edu-modal-jump-cta {
        width: 118px !important;
        min-width: 118px !important;
        max-width: 118px !important;
        min-height: 34px !important;
        height: 34px !important;
        padding: 0 10px !important;
        border-radius: 10px !important;
        font-size: 7.25px !important;
        line-height: 1 !important;
        letter-spacing: 0.075em !important;
        white-space: nowrap !important;
    }

    body.page-product #edu-modal .edu-modal-jump-cta {
        font-size: 7px !important;
        letter-spacing: 0.065em !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn.is-final {
        padding-right: 8px !important;
        padding-left: 8px !important;
        font-size: 6.75px !important;
        letter-spacing: 0.045em !important;
    }

    body.page-product #edu-modal .edu-back-btn {
        min-height: 34px !important;
        height: 34px !important;
        padding: 0 10px !important;
    }
}

@media (hover: hover) and (pointer: fine) {
    body.page-product #edu-modal:not(.compare-mode) .modal-lead,
    body.page-product #edu-modal:not(.compare-mode) .edu-modal-sublead:not([hidden]),
    body.page-product #edu-modal.compare-mode .modal-lead,
    body.page-product #edu-modal.compare-mode .edu-modal-sublead:not([hidden]) {
        margin-left: 8px !important;
        margin-right: 0 !important;
        text-align: left !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .modal-lead,
    body.page-product #edu-modal.compare-mode .modal-lead {
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 15.5px !important;
        text-wrap: balance !important;
    }

    body.page-product #edu-modal.compare-mode .modal-lead {
        max-width: min(64ch, calc(100% - 16px)) !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    body.page-product #edu-modal.compare-mode .modal-lead::after {
        display: none !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-sublead:not([hidden]),
    body.page-product #edu-modal.compare-mode .edu-modal-sublead:not([hidden]) {
        display: block !important;
        margin-top: -1px !important;
        font-size: 9.5px !important;
        line-height: 13.5px !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product #edu-modal.compare-mode .edu-modal-sublead:not([hidden]) + .path-modal-points {
        margin-top: 4px !important;
    }

    body.page-product #edu-modal.compare-mode .edu-modal-sublead:not([hidden]) {
        margin-top: -9px !important;
    }

    body.page-product #edu-modal .modal-takeaway,
    body.page-product #edu-modal.compare-mode .modal-takeaway {
        border-top: 0 !important;
        padding-top: 0 !important;
        margin-top: 13px !important;
        position: relative !important;
        top: 4px !important;
    }

    body.page-product #edu-modal.compare-mode .modal-takeaway {
        margin-top: auto !important;
        max-width: min(62ch, 100%) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 15.5px !important;
        top: 10px !important;
    }

body.page-product #edu-modal.compare-mode .edu-compliance-note {
        max-width: min(124ch, 100%) !important;
        border-top: 0 !important;
        padding-top: 0 !important;
        margin-top: -7px !important;
        margin-bottom: 8px !important;
        font-size: 9.5px !important;
        line-height: 13.5px !important;
        position: relative !important;
        top: 10px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) {
        --abc-gw-lead-sublead-gap: 2px;
        --abc-gw-sublead-content-gap: 7px;
    }

    body.page-product #edu-modal:not(.compare-mode) .modal-lead {
        line-height: 1.28 !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-sublead:not([hidden]) {
        margin-top: var(--abc-gw-lead-sublead-gap) !important;
        line-height: 1.28 !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-sublead:not([hidden]) + .path-modal-points {
        margin-top: var(--abc-gw-sublead-content-gap) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        --stack-lead-sublead-gap: 2px;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .modal-lead,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        margin-left: 8px !important;
        margin-right: 0 !important;
        text-align: left !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal:not(.compare-mode) .modal-lead {
        max-width: min(96ch, 100%) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 15.5px !important;
        text-wrap: balance !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        margin-top: -1px !important;
        font-size: 9.5px !important;
        line-height: 13.5px !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        height: 186px !important;
        min-height: 186px !important;
        box-sizing: border-box !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .enrollment-dates-cta {
        width: 192px !important;
        min-width: 192px !important;
        max-width: 192px !important;
        font-weight: 700 !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn.is-final,
    body.page-product #edu-modal .edu-modal-jump-cta {
        width: 192px !important;
        min-width: 192px !important;
        max-width: 192px !important;
        font-weight: 700 !important;
        letter-spacing: 0.075em !important;
    }
}

@media (pointer: coarse) {
    body.page-product #edu-modal:not(.compare-mode) {
        --abc-gw-lead-sublead-gap: 2px;
        --abc-gw-sublead-content-gap: 7px;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-body {
        padding-top: clamp(4px, 0.45dvh, 6px) !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-body {
        padding-top: clamp(2px, 0.3dvh, 4px) !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .modal-lead {
        line-height: 1.28 !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-sublead:not([hidden]) {
        margin-top: var(--abc-gw-lead-sublead-gap) !important;
        line-height: 1.28 !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-sublead:not([hidden]) + .path-modal-points {
        margin-top: var(--abc-gw-sublead-content-gap) !important;
    }
}

@media (pointer: coarse) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #edu-modal.path-modal {
        --edu-fit-card-h: 31px;
        --edu-fit-card-pad-y: 3px;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-body {
        padding-top: 9px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .edu-modal-body {
        padding-top: 0 !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode {
        gap: 3px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .modal-takeaway {
        margin-top: 5px !important;
        font-size: 6.5px !important;
        line-height: 1.15 !important;
        top: 0 !important;
    }
}

@media (max-width: 1024px), (min-width: 1025px) and (max-width: 1440px) and (pointer: coarse) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        justify-content: flex-start !important;
        padding-left: 16px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
        flex: 1 1 auto !important;
        max-width: calc(100% - 48px) !important;
        margin-right: auto !important;
        text-align: left !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close {
        margin-left: auto !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding-top: 13px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-body {
        gap: 4px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .modal-lead,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        text-align: left !important;
        text-wrap: balance !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .modal-lead {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        line-height: 15.36px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        margin-top: 0 !important;
        font-size: 8px !important;
        line-height: 12.2px !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-periods {
        width: 100% !important;
        max-width: 100% !important;
        align-self: stretch !important;
        gap: 6px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        display: grid !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        list-style: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.page-product .find-doctor-gate-title,
    body.page-product .sidebar-call-pop-title {
        font-family: 'Montserrat', 'Arial', sans-serif !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        letter-spacing: 0.14em !important;
        text-transform: uppercase !important;
    }
}

@media (min-width: 641px) and (max-width: 1024px), (min-width: 1025px) and (max-width: 1440px) and (pointer: coarse) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        width: min(430px, calc(100vw - 48px)) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding-left: 22px !important;
        padding-right: 22px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding-top: 16.5px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-periods {
        gap: 7px !important;
    }
}

@media (max-width: 1024px), (min-width: 1025px) and (max-width: 1366px) and (orientation: landscape), (min-width: 1367px) and (max-width: 1440px) and (orientation: landscape) and (pointer: coarse) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding-top: 10px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-body {
        padding-top: 4px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-copy {
        width: min(88%, 30ch) !important;
        font-size: 10.25px !important;
        line-height: 1.33 !important;
        font-weight: 680 !important;
        text-wrap: balance !important;
    }
}

@media (max-width: 640px) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-copy {
        width: min(86%, 28ch) !important;
        font-size: 10px !important;
        line-height: 1.32 !important;
    }
}

@media (min-width: 1025px) and (max-width: 1366px) and (orientation: landscape), (min-width: 1367px) and (max-width: 1440px) and (orientation: landscape) and (pointer: coarse) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        width: min(430px, calc(100vw - 48px)) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 7px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        position: relative !important;
        width: 100% !important;
        min-height: 72px !important;
        height: auto !important;
        padding: 12px 16px !important;
        border-radius: 9px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title {
        position: relative !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        font-size: 11.5px !important;
        line-height: 1.2 !important;
        letter-spacing: 0.075em !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-copy {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -44%) !important;
        width: min(88%, 30ch) !important;
        margin: 0 !important;
        font-size: 10.25px !important;
        line-height: 1.33 !important;
        font-weight: 680 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        text-align: center !important;
        text-wrap: balance !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-copy {
        opacity: 1 !important;
        transform: translate(-50%, -50%) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-title {
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-6px) !important;
        pointer-events: none !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta {
        width: calc((100% - 10px) / 2) !important;
        max-width: 220px !important;
        min-width: 0 !important;
        white-space: nowrap !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .enrollment-dates-source {
        font-size: 8.5px !important;
        letter-spacing: 0.045em !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 1024px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .path-modal.edu-modal.enrollment-dates-modal {
        padding: 8px 10px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        width: min(430px, calc(100vw - 24px)) !important;
        max-height: calc(100svh - 32px - env(safe-area-inset-bottom, 0px)) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        min-height: 48px !important;
        padding: 8px 12px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        padding: 9px 14px 0 !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-body {
        gap: 4px !important;
        padding-top: 0 !important;
    }

    body.page-product #enrollment-dates-modal.path-modal.edu-modal.enrollment-dates-modal .modal-lead {
        width: 100% !important;
        max-width: none !important;
        font-size: 9.85px !important;
        line-height: 1.12 !important;
        letter-spacing: -0.005em !important;
        white-space: normal !important;
        text-wrap: balance !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .edu-modal-sublead {
        font-size: 7px !important;
        line-height: 1.1 !important;
        margin-top: 0 !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-period-grid {
        gap: 4px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card {
        min-height: 40px !important;
        padding: 8px 14px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed {
        min-height: 62px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-title {
        font-size: 10.5px !important;
        line-height: 1.15 !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .enrollment-period-card.is-revealed .enrollment-period-copy {
        width: min(86%, 30ch) !important;
        font-size: 9.35px !important;
        line-height: 1.22 !important;
        font-weight: 660 !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        min-height: 48px !important;
        height: 48px !important;
        padding: 6px 14px !important;
        gap: 8px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .path-modal-cta {
        min-height: 32px !important;
        height: 32px !important;
        padding: 7px 10px !important;
        font-size: 8px !important;
        line-height: 1.05 !important;
        letter-spacing: 0.045em !important;
        white-space: nowrap !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .enrollment-dates-source {
        font-size: 7.6px !important;
        line-height: 1.05 !important;
        letter-spacing: 0.02em !important;
        white-space: nowrap !important;
    }
}

/* Shared popup outside atmosphere lock:
   one cinematic backdrop + outer shell glow; interiors stay family-specific. */
body.page-product {
    --abc-popup-outside-backdrop:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.055) 0%, rgba(6, 8, 14, 0.22) 46%, rgba(3, 4, 8, 0.58) 100%),
        linear-gradient(180deg, rgba(2, 3, 6, 0.62) 0%, rgba(2, 3, 6, 0.72) 100%);
    --abc-small-popup-outside-backdrop:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.032) 0%, rgba(6, 8, 14, 0.08) 42%, rgba(1, 2, 5, 0.42) 100%),
        linear-gradient(180deg, #020306 0%, #000000 100%);
    --abc-popup-outside-filter: blur(12px) saturate(110%);
    --abc-popup-shell-border: rgba(154, 178, 235, 0.05);
    --abc-popup-shell-shadow:
        0 0 0 1px rgba(154, 178, 235, 0.045),
        0 0 0 2px rgba(132, 92, 235, 0.050),
        0 30px 78px rgba(0, 0, 0, 0.80),
        0 0 44px rgba(112, 152, 232, 0.15),
        0 0 78px rgba(132, 92, 235, 0.16),
        0 0 30px rgba(91, 118, 255, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.09);
    --abc-popup-shell-shadow-peak:
        0 0 0 1px rgba(154, 178, 235, 0.060),
        0 0 0 2px rgba(136, 98, 245, 0.070),
        0 32px 82px rgba(0, 0, 0, 0.82),
        0 0 58px rgba(112, 152, 232, 0.22),
        0 0 102px rgba(132, 92, 235, 0.23),
        0 0 38px rgba(91, 118, 255, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.105);
}

body.page-product #edu-modal.path-modal,
body.page-product .path-modal.edu-modal.enrollment-dates-modal {
    background: rgba(4, 6, 14, 0.88) !important;
}

body.page-product #edu-modal .path-modal-backdrop,
body.page-product #edu-modal .edu-modal-backdrop,
body.page-product #edu-modal.path-modal[aria-hidden="false"] .path-modal-backdrop,
body.page-product #edu-modal.path-modal.modal-opening .path-modal-backdrop,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-backdrop,
body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-backdrop,
body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-backdrop {
    background: var(--abc-popup-outside-backdrop) !important;
    -webkit-backdrop-filter: var(--abc-popup-outside-filter) !important;
    backdrop-filter: var(--abc-popup-outside-filter) !important;
}

/* Small resource popups do not have the modal container layer that Enrollment Dates
   has, so this backdrop carries the full dark outside atmosphere by itself. */
body.page-product .find-doctor-gate-backdrop,
body.page-product .sidebar-call-pop-backdrop {
    background: var(--abc-small-popup-outside-backdrop) !important;
    -webkit-backdrop-filter: var(--abc-popup-outside-filter) !important;
    backdrop-filter: var(--abc-popup-outside-filter) !important;
}

body.page-product #edu-modal .path-modal-backdrop::before,
body.page-product #edu-modal .edu-modal-backdrop::before,
body.page-product #edu-modal.path-modal[aria-hidden="false"] .path-modal-backdrop::before,
body.page-product #edu-modal.path-modal.modal-opening .path-modal-backdrop::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-backdrop::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-backdrop::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-backdrop::before,
body.page-product .find-doctor-gate-backdrop::before,
body.page-product .sidebar-call-pop-backdrop::before {
    display: none !important;
    opacity: 0 !important;
}

body.page-product #edu-modal .path-modal-box,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box,
body.page-product .find-doctor-gate,
body.page-product .sidebar-call-pop {
    border-color: var(--abc-popup-shell-border) !important;
    box-shadow: var(--abc-popup-shell-shadow) !important;
}

body.page-product #edu-modal .path-modal-box,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
    --abc-popup-rest-transform: translateY(0) scale(1);
    --abc-popup-start-transform: translateY(12px) scale(0.982);
    --abc-popup-lift-transform: translateY(-2px) scale(1.004);
}

body.page-product .find-doctor-gate,
body.page-product .sidebar-call-pop {
    --abc-popup-rest-transform: translate(-50%, -50%) scale(1);
    --abc-popup-start-transform: translate(-50%, calc(-50% + 12px)) scale(0.982);
    --abc-popup-lift-transform: translate(-50%, calc(-50% - 2px)) scale(1.004);
}

body.page-product #edu-modal[aria-hidden="false"] .path-modal-box,
body.page-product #edu-modal.modal-opening .path-modal-box,
body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-box,
body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-box,
body.page-product .find-doctor-gate.is-open,
body.page-product .sidebar-call-pop.is-open {
    animation:
        abc-popup-cinematic-enter 520ms cubic-bezier(0.16, 1, 0.3, 1) both,
        abc-popup-cinematic-aura 5.8s ease-in-out 520ms infinite !important;
    transform-origin: center center !important;
    will-change: opacity, transform, filter, box-shadow;
}

body.page-product #edu-modal[aria-hidden="false"] .path-modal-backdrop,
body.page-product #edu-modal.modal-opening .path-modal-backdrop,
body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-backdrop,
body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-backdrop,
body.page-product .find-doctor-gate-backdrop.is-open,
body.page-product .sidebar-call-pop-backdrop.is-open {
    animation: abc-popup-backdrop-cinematic 420ms ease-out both !important;
}

@keyframes abc-popup-cinematic-enter {
    0% {
        opacity: 0;
        filter: blur(4px) brightness(0.76);
        transform: var(--abc-popup-start-transform);
    }

    62% {
        opacity: 1;
        filter: blur(0) brightness(1.045);
        transform: var(--abc-popup-lift-transform);
    }

    100% {
        opacity: 1;
        filter: none;
        transform: var(--abc-popup-rest-transform);
    }
}

@keyframes abc-popup-cinematic-aura {
    0%, 100% {
        box-shadow: var(--abc-popup-shell-shadow);
    }

    50% {
        box-shadow: var(--abc-popup-shell-shadow-peak);
    }
}

@keyframes abc-popup-backdrop-cinematic {
    0% {
        opacity: 0;
        filter: brightness(1.08);
    }

    100% {
        opacity: 1;
        filter: brightness(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    body.page-product #edu-modal[aria-hidden="false"] .path-modal-box,
    body.page-product #edu-modal.modal-opening .path-modal-box,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-box,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-box,
    body.page-product .find-doctor-gate.is-open,
    body.page-product .sidebar-call-pop.is-open,
    body.page-product #edu-modal[aria-hidden="false"] .path-modal-backdrop,
    body.page-product #edu-modal.modal-opening .path-modal-backdrop,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-backdrop,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-backdrop,
    body.page-product .find-doctor-gate-backdrop.is-open,
    body.page-product .sidebar-call-pop-backdrop.is-open {
        animation: none !important;
        filter: none !important;
    }

    body.page-product #edu-modal[aria-hidden="false"] .path-modal-box,
    body.page-product #edu-modal.modal-opening .path-modal-box,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] .path-modal-box,
    body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening .path-modal-box,
    body.page-product .find-doctor-gate.is-open,
    body.page-product .sidebar-call-pop.is-open {
        transform: var(--abc-popup-rest-transform) !important;
        box-shadow: var(--abc-popup-shell-shadow) !important;
    }
}

/* Resource popup 1E replacement for TEST.
   This intentionally resets the older page-specific find-doctor popup styling
   so the live dialogs match the approved Taste Pass 1E mockup instead of
   blending with the legacy compact popup family. */
body.page-product .find-doctor-gate-backdrop {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.032) 0%, rgba(6, 8, 14, 0.08) 42%, rgba(1, 2, 5, 0.42) 100%),
        linear-gradient(180deg, #020306 0%, #000 100%) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-product .find-doctor-gate-backdrop::before {
    display: none !important;
}

body.page-product .find-doctor-gate {
    width: min(100% - 32px, 560px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: min(94svh, 640px) !important;
    display: grid !important;
    grid-template-rows: auto auto auto !important;
    border: 1px solid rgba(255, 255, 255, 0.055) !important;
    border-radius: 36px !important;
    overflow: visible !important;
    background:
        radial-gradient(ellipse 82% 74% at 50% 5%, rgba(255, 255, 255, 0.185), rgba(255, 255, 255, 0.072) 34%, rgba(255, 255, 255, 0) 62%),
        radial-gradient(ellipse 92% 96% at 50% 54%, rgba(255, 255, 255, 0.042), rgba(8, 8, 9, 0.68) 56%, rgba(0, 0, 0, 0.92)),
        rgba(0, 0, 0, 0.86) !important;
    box-shadow:
        0 42px 110px rgba(0, 0, 0, 0.90),
        0 0 62px rgba(255, 255, 255, 0.060),
        0 0 74px rgba(111, 130, 255, 0.105),
        0 0 132px rgba(137, 96, 255, 0.055),
        0 0 0 1px rgba(255, 255, 255, 0.018),
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        inset 0 -28px 70px rgba(0, 0, 0, 0.40) !important;
    -webkit-backdrop-filter: blur(28px) saturate(145%) !important;
    backdrop-filter: blur(28px) saturate(145%) !important;
}

body.page-product .find-doctor-gate-head,
body.page-product .find-doctor-gate-footer {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.page-product .find-doctor-gate-head {
    min-height: 58px !important;
    height: auto !important;
    padding: 16px 20px 0 !important;
}

body.page-product .find-doctor-gate-title {
    margin: 0 !important;
    color: transparent !important;
    background-image: linear-gradient(135deg, rgba(214, 228, 255, 0.98), var(--neon-blue), var(--neon-purple), rgba(206, 186, 255, 0.96)) !important;
    background-size: 230% 230% !important;
    background-repeat: no-repeat !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    text-shadow: none !important;
    animation: abcResourceTitleShift var(--interactive-shift-duration, 5.6s) ease-in-out infinite !important;
}

@keyframes abcResourceTitleShift {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

body.page-product .find-doctor-gate-close {
    position: relative !important;
    display: inline-flex !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border: 1px solid rgba(0, 0, 0, 0) !important;
    border-radius: 7px !important;
    color: transparent !important;
    background: rgba(9, 12, 28, 0.74) !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    transform: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-product .find-doctor-gate-close::before,
body.page-product .find-doctor-gate-close::after {
    content: "" !important;
    position: absolute !important;
    width: 8px !important;
    height: 2px !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: #6f87ff !important;
    box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
}

body.page-product .find-doctor-gate-close::before {
    transform: rotate(45deg) !important;
}

body.page-product .find-doctor-gate-close::after {
    transform: rotate(-45deg) !important;
}

body.page-product .find-doctor-gate-close:hover,
body.page-product .find-doctor-gate-close:focus-visible,
body.page-product .sidebar-call-pop-close:hover,
body.page-product .sidebar-call-pop-close:focus-visible,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible {
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
    transform: none !important;
}

body.page-product .find-doctor-gate-close:hover::before,
body.page-product .find-doctor-gate-close:focus-visible::before,
body.page-product .sidebar-call-pop-close:hover::before,
body.page-product .sidebar-call-pop-close:focus-visible::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible::before {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(225deg) !important;
}

body.page-product .find-doctor-gate-close:hover::after,
body.page-product .find-doctor-gate-close:focus-visible::after,
body.page-product .sidebar-call-pop-close:hover::after,
body.page-product .sidebar-call-pop-close:focus-visible::after,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover::after,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible::after {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(135deg) !important;
}

body.page-product .find-doctor-gate-body {
    position: relative !important;
    display: grid !important;
    min-height: 292px !important;
    height: auto !important;
    padding: 42px 30px 24px !important;
    place-items: center !important;
    grid-template-columns: 1fr !important;
    overflow: hidden !important;
    text-align: initial !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-product .find-doctor-gate-body::before {
    content: "" !important;
    position: absolute !important;
    inset: 24px 24px 6px !important;
    z-index: 0 !important;
    border-radius: 24px !important;
    background-clip: padding-box !important;
    clip-path: inset(0 round 24px) !important;
    opacity: 1;
    filter: blur(4.4px) grayscale(0.16) saturate(0.82) brightness(0.66) contrast(1.08);
    transform: none !important;
    transition: none !important;
    pointer-events: none !important;
}

body.page-product .find-doctor-gate.is-open .find-doctor-gate-body::before {
    animation: abcResourceImageSettle 900ms cubic-bezier(0.16, 1, 0.3, 1) both !important;
}

body.page-product .find-doctor-gate-body::after {
    content: "" !important;
    position: absolute !important;
    inset: 24px 24px 6px !important;
    z-index: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.065) !important;
    border-radius: 24px !important;
    box-sizing: border-box !important;
    clip-path: inset(0 round 24px) !important;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.54) 46%, rgba(0, 0, 0, 0.62) 100%),
        linear-gradient(180deg, transparent 0%, transparent 58%, rgba(255, 255, 255, 0.050) 76%, rgba(255, 255, 255, 0.115) 100%),
        linear-gradient(180deg, rgba(3, 5, 9, 0.46), rgba(0, 0, 0, 0.34) 48%, rgba(0, 0, 0, 0.50)),
        radial-gradient(ellipse 82% 68% at 50% 32%, rgba(255, 255, 255, 0.092), transparent 64%) !important;
    box-shadow:
        0 20px 54px rgba(0, 0, 0, 0.54),
        inset 0 1px 0 rgba(255, 255, 255, 0.075),
        inset 0 -18px 34px rgba(0, 0, 0, 0.24) !important;
    opacity: 1;
    pointer-events: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-product .find-doctor-gate.is-open .find-doctor-gate-body::after {
    animation: abcResourceShadeSettle 900ms cubic-bezier(0.16, 1, 0.3, 1) both !important;
}

/* Accepted regular resource-popup lip: Call Our Team inner card edge, scoped off Enrollment and Guided Walkthrough. */
body.page-product .find-doctor-gate .find-doctor-gate-body::after {
    border-color: rgba(255, 255, 255, 0.072) !important;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.64) 0%, rgba(0, 0, 0, 0.50) 46%, rgba(0, 0, 0, 0.60) 100%),
        linear-gradient(180deg, transparent 0%, transparent 56%, rgba(255, 255, 255, 0.052) 76%, rgba(255, 255, 255, 0.118) 100%),
        linear-gradient(90deg, rgba(255, 255, 255, 0.026) 0%, rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, 0) 82%, rgba(255, 255, 255, 0.024) 100%),
        radial-gradient(ellipse 82% 68% at 50% 32%, rgba(255, 255, 255, 0.082), transparent 64%) !important;
    box-shadow:
        0 20px 54px rgba(0, 0, 0, 0.52),
        inset 0 1px 0 rgba(255, 255, 255, 0.098),
        inset 0 -1px 0 rgba(255, 255, 255, 0.070),
        inset 0 -18px 34px rgba(0, 0, 0, 0.22) !important;
}

body.page-product .find-doctor-gate-body > *,
body.page-product .find-doctor-gate.resource-pop-opening .find-doctor-gate-body > * {
    position: relative !important;
    z-index: 1 !important;
    opacity: 1;
    transform: none;
    transition: none !important;
}

body.page-product .find-doctor-gate.is-open .find-doctor-gate-body > * {
    animation: abcResourceContentIn 900ms cubic-bezier(0.16, 1, 0.3, 1) both !important;
}

@keyframes abcResourceImageSettle {
    0%, 38% {
        opacity: 0.9;
        filter: blur(0.8px) grayscale(0.04) saturate(1) brightness(0.86) contrast(1.02);
    }

    100% {
        opacity: 1;
        filter: blur(4.4px) grayscale(0.16) saturate(0.82) brightness(0.66) contrast(1.08);
    }
}

@keyframes abcResourceShadeSettle {
    0%, 44% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes abcResourceContentIn {
    0%, 54% {
        opacity: 0;
        transform: translateY(7px);
    }

    100% {
        opacity: 1;
        transform: none;
    }
}

body.page-product .find-doctor-gate-content,
body.page-product .find-doctor-gate:not(.instant-quote-modal) .find-doctor-gate-content,
body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-content,
body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-content {
    display: grid !important;
    justify-items: center !important;
    gap: 0 !important;
    width: min(100%, 500px) !important;
    max-width: 500px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    text-align: center !important;
}

body.page-product .find-doctor-gate-copy,
body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-copy,
body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-copy {
    display: block !important;
    width: min(45ch, 100%) !important;
    max-width: 45ch !important;
    min-height: 0 !important;
    margin: 0 auto 18px !important;
    padding: 0 2px !important;
    color: rgba(255, 255, 255, 0.96) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 520 !important;
    line-height: 1.42 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-wrap: balance !important;
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.050),
        0 2px 14px rgba(0, 0, 0, 0.94) !important;
}

body.page-product .find-doctor-gate-actions,
body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-actions,
body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    flex-direction: initial !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
}

body.page-product .find-doctor-choice,
body.page-product .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
body.page-product .drug-plan-bridge .find-doctor-choice,
body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-choice {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 28px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    width: 100% !important;
    min-height: 62px !important;
    height: 62px !important;
    padding: 0 14px 0 18px !important;
    border: 1px solid rgba(255, 255, 255, 0.034) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.028) !important;
    border-radius: 16px !important;
    color: rgba(255, 255, 255, 0.96) !important;
    text-decoration: none !important;
    background:
        radial-gradient(ellipse 100% 72% at 50% 0%, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.030) 48%, rgba(255, 255, 255, 0) 74%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.050), rgba(255, 255, 255, 0.014) 44%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.42) !important;
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.64),
        0 0 12px rgba(255, 255, 255, 0.020),
        inset 0 1px 0 rgba(255, 255, 255, 0.105),
        inset 0 0 0 1px rgba(255, 255, 255, 0.014),
        inset 0 -14px 24px rgba(0, 0, 0, 0.36) !important;
    overflow: hidden !important;
    isolation: isolate !important;
    transform: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease !important;
}

@property --abc-resource-snake-angle {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}

body.page-product .find-doctor-choice::before,
body.page-product .find-doctor-choice::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1 !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
    border: 0 !important;
    filter: drop-shadow(0 0 3px rgba(104, 132, 224, 0.34)) drop-shadow(0 0 8px rgba(76, 102, 208, 0.16)) !important;
}

body.page-product .find-doctor-choice::before {
    --abc-resource-snake-angle: 0deg;
    border-radius: 16px !important;
    padding: 2px !important;
    background:
        conic-gradient(
            from calc(270deg - var(--abc-resource-snake-angle)) at 50% 50%,
            rgba(108, 138, 226, 0.86) 0deg calc(var(--abc-resource-snake-angle) * 2),
            rgba(108, 138, 226, 0) 0deg
        ) !important;
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0) border-box !important;
    -webkit-mask-composite: xor !important;
    mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0) border-box !important;
    mask-composite: exclude !important;
}

body.page-product .find-doctor-choice::after {
    display: none !important;
}

body.page-product .find-doctor-choice:hover::before,
body.page-product .find-doctor-choice:focus-visible::before {
    opacity: 1 !important;
    animation: abcResourceSnakeWrap 0.72s linear forwards !important;
}

body.page-product .find-doctor-gate .find-doctor-choice:hover,
body.page-product .find-doctor-gate .find-doctor-choice:focus-visible {
    transform: translateY(-3px) !important;
    border-color: rgba(255, 255, 255, 0.060) !important;
    border-left-color: rgba(255, 255, 255, 0.052) !important;
    background:
        radial-gradient(ellipse 100% 72% at 50% 0%, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.038) 48%, rgba(255, 255, 255, 0) 74%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.062), rgba(255, 255, 255, 0.018) 44%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.46) !important;
    box-shadow:
        0 12px 32px rgba(0, 0, 0, 0.55),
        0 0 18px rgba(68, 94, 204, 0.15),
        0 0 34px rgba(68, 94, 204, 0.055),
        inset 0 1px 0 rgba(255, 255, 255, 0.13),
        inset 0 0 0 1px rgba(255, 255, 255, 0.026) !important;
}

body.page-product .find-doctor-gate .fdc-label {
    display: flex !important;
    align-items: center !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 100% !important;
    color: rgba(255, 255, 255, 0.96) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 780 !important;
    letter-spacing: 0.065em !important;
    line-height: 1 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    white-space: normal !important;
    transform: translateY(0.5px) !important;
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.045),
        0 2px 10px rgba(0, 0, 0, 0.78) !important;
    position: relative !important;
    z-index: 5 !important;
}

body.page-product .find-doctor-gate .fdc-arrow {
    position: relative !important;
    display: block !important;
    align-self: stretch !important;
    justify-self: center !important;
    width: 28px !important;
    height: 100% !important;
    min-height: 100% !important;
    color: #6f82ff !important;
    transform: none !important;
    text-shadow:
        0 0 12px rgba(111, 130, 255, 0.56),
        0 0 20px rgba(137, 96, 255, 0.18) !important;
    z-index: 5 !important;
}

body.page-product .find-doctor-gate .fdc-arrow svg {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 20px !important;
    height: 20px !important;
    transform: translate(-50%, -50%) !important;
}

body.page-product .find-doctor-gate-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 8px 18px !important;
    text-align: center !important;
}

body.page-product .find-doctor-fallback {
    max-width: 46ch !important;
    color: rgba(139, 149, 173, 0.72) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

@keyframes abcResourceSnakeWrap {
    0% {
        --abc-resource-snake-angle: 0deg;
        opacity: 0;
    }

    100% {
        --abc-resource-snake-angle: 180deg;
        opacity: 1;
    }
}

/* Call Our Team: simpler action popup, aligned with the accepted small resource family. */
body.page-product .sidebar-call-pop-backdrop {
    background:
        radial-gradient(ellipse 92% 70% at 50% 44%, rgba(255, 255, 255, 0.032) 0%, rgba(6, 8, 14, 0.08) 42%, rgba(1, 2, 5, 0.42) 100%),
        linear-gradient(180deg, #020306 0%, #000 100%) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-product .sidebar-call-pop {
    width: min(100% - 32px, 500px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: min(94svh, 560px) !important;
    display: grid !important;
    grid-template-rows: auto auto auto !important;
    border: 1px solid rgba(255, 255, 255, 0.052) !important;
    border-radius: 32px !important;
    overflow: visible !important;
    background:
        radial-gradient(ellipse 82% 74% at 50% 5%, rgba(255, 255, 255, 0.155), rgba(255, 255, 255, 0.060) 34%, rgba(255, 255, 255, 0) 62%),
        radial-gradient(ellipse 92% 96% at 50% 54%, rgba(255, 255, 255, 0.036), rgba(8, 8, 9, 0.66) 56%, rgba(0, 0, 0, 0.92)),
        rgba(0, 0, 0, 0.86) !important;
    box-shadow:
        0 42px 110px rgba(0, 0, 0, 0.90),
        0 0 58px rgba(255, 255, 255, 0.050),
        0 0 68px rgba(111, 130, 255, 0.090),
        0 0 112px rgba(137, 96, 255, 0.046),
        0 0 0 1px rgba(255, 255, 255, 0.016),
        inset 0 1px 0 rgba(255, 255, 255, 0.13),
        inset 0 -26px 64px rgba(0, 0, 0, 0.38) !important;
    -webkit-backdrop-filter: blur(28px) saturate(145%) !important;
    backdrop-filter: blur(28px) saturate(145%) !important;
}

body.page-product .sidebar-call-pop-head,
body.page-product .sidebar-call-pop-footer {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.page-product .sidebar-call-pop-head {
    min-height: 58px !important;
    height: auto !important;
    padding: 16px 20px 0 !important;
}

body.page-product .sidebar-call-pop-title {
    color: transparent !important;
    background-image: linear-gradient(135deg, rgba(214, 228, 255, 0.98), var(--neon-blue), var(--neon-purple), rgba(206, 186, 255, 0.96)) !important;
    background-size: 230% 230% !important;
    background-repeat: no-repeat !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.16em !important;
    animation: abcResourceTitleShift var(--interactive-shift-duration, 5.6s) ease-in-out infinite !important;
}

body.page-product .sidebar-call-pop-body {
    position: relative !important;
    display: grid !important;
    min-height: 236px !important;
    height: auto !important;
    padding: 34px 28px 24px !important;
    place-items: center !important;
    overflow: hidden !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-product .sidebar-call-pop-body::before {
    inset: 22px 24px 6px !important;
    border-radius: 24px !important;
    background: url('../SHARED/HEALTH/RESOURCES/CALL%20OUR%20TEAM.jpg') 50% 45% / cover no-repeat !important;
    clip-path: inset(0 round 24px) !important;
    opacity: 1 !important;
    filter: blur(4.4px) grayscale(0.16) saturate(0.82) brightness(0.66) contrast(1.08) !important;
    transform: none !important;
}

body.page-product .sidebar-call-pop-body::after {
    inset: 22px 24px 6px !important;
    border: 1px solid rgba(255, 255, 255, 0.060) !important;
    border-radius: 24px !important;
    clip-path: inset(0 round 24px) !important;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.64) 0%, rgba(0, 0, 0, 0.50) 46%, rgba(0, 0, 0, 0.60) 100%),
        linear-gradient(180deg, transparent 0%, transparent 58%, rgba(255, 255, 255, 0.048) 76%, rgba(255, 255, 255, 0.105) 100%),
        radial-gradient(ellipse 82% 68% at 50% 32%, rgba(255, 255, 255, 0.082), transparent 64%) !important;
    box-shadow:
        0 20px 54px rgba(0, 0, 0, 0.52),
        inset 0 1px 0 rgba(255, 255, 255, 0.070),
        inset 0 -18px 34px rgba(0, 0, 0, 0.22) !important;
    opacity: 1 !important;
}

body.page-product .sidebar-call-pop-body > * {
    position: relative !important;
    z-index: 1 !important;
}

body.page-product .sidebar-call-choice {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: center !important;
    width: min(100%, 444px) !important;
    min-height: 92px !important;
    padding: 18px 14px 18px 20px !important;
    border: 1px solid rgba(255, 255, 255, 0.034) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.028) !important;
    border-radius: 16px !important;
    background:
        radial-gradient(ellipse 100% 72% at 50% 0%, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.030) 48%, rgba(255, 255, 255, 0) 74%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.050), rgba(255, 255, 255, 0.014) 44%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.42) !important;
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.64),
        0 0 12px rgba(255, 255, 255, 0.020),
        inset 0 1px 0 rgba(255, 255, 255, 0.105),
        inset 0 0 0 1px rgba(255, 255, 255, 0.014),
        inset 0 -14px 24px rgba(0, 0, 0, 0.36) !important;
    overflow: hidden !important;
    isolation: isolate !important;
    cursor: pointer !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease !important;
}

body.page-product .sidebar-call-choice::before,
body.page-product .sidebar-call-choice::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0;
    z-index: 1 !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
    border: 0 !important;
}

body.page-product .sidebar-call-choice::before {
    --abc-resource-snake-angle: 0deg;
    border-radius: 16px !important;
    padding: 2px !important;
    background:
        conic-gradient(
            from calc(270deg - var(--abc-resource-snake-angle)) at 50% 50%,
            rgba(108, 138, 226, 0.86) 0deg calc(var(--abc-resource-snake-angle) * 2),
            rgba(108, 138, 226, 0) 0deg
        ) !important;
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0) border-box !important;
    -webkit-mask-composite: xor !important;
    mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0) border-box !important;
    mask-composite: exclude !important;
    filter: drop-shadow(0 0 3px rgba(104, 132, 224, 0.34)) drop-shadow(0 0 8px rgba(76, 102, 208, 0.16)) !important;
}

body.page-product .sidebar-call-choice::after {
    display: none !important;
}

body.page-product .sidebar-call-choice:hover::before,
body.page-product .sidebar-call-choice:focus-within::before,
body.page-product .sidebar-call-choice:focus-visible::before {
    opacity: 1 !important;
    animation: abcResourceSnakeWrap 0.72s linear forwards !important;
}

body.page-product .sidebar-call-choice:hover,
body.page-product .sidebar-call-choice:focus-within,
body.page-product .sidebar-call-choice:focus-visible {
    transform: translateY(-3px) !important;
    border-color: rgba(255, 255, 255, 0.060) !important;
    border-left-color: rgba(255, 255, 255, 0.052) !important;
    background:
        radial-gradient(ellipse 100% 72% at 50% 0%, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.038) 48%, rgba(255, 255, 255, 0) 74%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.062), rgba(255, 255, 255, 0.018) 44%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.46) !important;
    box-shadow:
        0 12px 32px rgba(0, 0, 0, 0.55),
        0 0 18px rgba(68, 94, 204, 0.15),
        0 0 34px rgba(68, 94, 204, 0.055),
        inset 0 1px 0 rgba(255, 255, 255, 0.13),
        inset 0 0 0 1px rgba(255, 255, 255, 0.026) !important;
}

body.page-product .sidebar-call-choice-content,
body.page-product .sidebar-call-copy {
    position: relative !important;
    z-index: 5 !important;
}

body.page-product .sidebar-call-pop-number {
    font-size: clamp(24px, 3.9vw, 29px) !important;
    line-height: 1.02 !important;
    color: rgba(255, 255, 255, 0.97) !important;
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.045),
        0 2px 12px rgba(0, 0, 0, 0.84) !important;
}

body.page-product .sidebar-call-pop-context {
    margin-top: 7px !important;
    color: rgba(211, 220, 244, 0.74) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
}

body.page-product .sidebar-call-copy {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    margin-left: 0 !important;
    color: #6f82ff !important;
    line-height: 1 !important;
    text-shadow:
        0 0 12px rgba(111, 130, 255, 0.50),
        0 0 20px rgba(137, 96, 255, 0.16) !important;
}

body.page-product .sidebar-call-copy-label {
    display: inline-block !important;
    min-width: 56px !important;
    line-height: 1 !important;
    text-align: left !important;
}

body.page-product .sidebar-call-copy-arrow {
    display: inline-flex !important;
    width: 20px !important;
    height: 20px !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 0 !important;
}

body.page-product .sidebar-call-copy-arrow svg {
    display: block !important;
}

body.page-product .sidebar-call-copy.is-copied {
    color: rgba(202, 220, 255, 0.98) !important;
    text-shadow:
        0 0 10px rgba(111, 130, 255, 0.62),
        0 0 18px rgba(137, 96, 255, 0.22) !important;
}

body.page-product .sidebar-call-copy.is-copied .sidebar-call-copy-label {
    color: rgba(202, 220, 255, 0.98) !important;
}

body.page-product .sidebar-call-copy.is-copied .sidebar-call-copy-arrow {
    transform: translateX(2px) scale(0.92) !important;
    opacity: 0.72 !important;
}

body.page-product .sidebar-call-pop-footer {
    min-height: 46px !important;
    height: 46px !important;
    padding: 8px 18px !important;
}

body.page-product .sidebar-call-pop-hours {
    color: rgba(139, 149, 173, 0.72) !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate {
        top: calc(var(--product-compact-header-h) + 6px + env(safe-area-inset-top, 0px)) !important;
        bottom: calc(var(--product-compact-footer-h) + 8px + env(safe-area-inset-bottom, 0px)) !important;
        left: 50% !important;
        width: min(520px, calc(100vw - 32px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: grid !important;
        grid-template-rows: auto minmax(0, 1fr) auto !important;
        overflow: hidden !important;
        transform: translateX(-50%) !important;
    }

    body.page-product .find-doctor-gate.is-open {
        transform: translateX(-50%) !important;
    }

    body.page-product .find-doctor-gate-head {
        min-height: 48px !important;
        padding: 10px 18px 8px 20px !important;
    }

    body.page-product .find-doctor-gate-body {
        min-height: 0 !important;
        padding: 6px 12px !important;
        overflow: hidden !important;
    }

    body.page-product .find-doctor-gate-body::before,
    body.page-product .find-doctor-gate-body::after {
        inset: 6px 12px 6px !important;
        border-radius: 18px !important;
        clip-path: inset(0 round 18px) !important;
    }

    body.page-product .find-doctor-gate-content,
    body.page-product .find-doctor-gate:not(.instant-quote-modal) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-content {
        gap: 10px !important;
    }

    body.page-product .find-doctor-gate-copy,
    body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-copy,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-copy {
        max-width: 44ch !important;
        margin-bottom: 10px !important;
        font-size: 11.4px !important;
        line-height: 1.32 !important;
    }

    body.page-product .find-doctor-gate-actions,
    body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-actions,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-actions {
        gap: 8px !important;
        width: calc(100% - 28px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    body.page-product .find-doctor-choice,
    body.page-product .find-doctor-gate:not(.drug-plan-bridge) .find-doctor-choice,
    body.page-product .drug-plan-bridge .find-doctor-choice,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-choice {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px 0 16px !important;
        border-radius: 14px !important;
    }

    body.page-product .find-doctor-gate-footer {
        min-height: 36px !important;
        height: 36px !important;
        padding: 6px 14px 9px !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product .find-doctor-gate {
        width: min(100% - 32px, 430px) !important;
    }

    body.page-product .find-doctor-gate-body {
        min-height: 274px !important;
        padding: 36px 26px 20px !important;
    }

    body.page-product .find-doctor-gate-body::before,
    body.page-product .find-doctor-gate-body::after {
        inset: 20px 20px 6px !important;
        border-radius: 22px !important;
        clip-path: inset(0 round 22px) !important;
    }

    body.page-product .find-doctor-gate-copy,
    body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-copy,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-copy {
        margin-bottom: 14px !important;
    }

    body.page-product .find-doctor-gate-actions,
    body.page-product .find-doctor-gate.drug-plan-bridge .find-doctor-gate-actions,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-actions {
        gap: 10px !important;
    }
}

@media (max-width: 640px) {
    body.page-product .sidebar-call-pop {
        width: min(100% - 24px, 430px) !important;
        border-radius: 28px !important;
    }

    body.page-product .sidebar-call-pop-body {
        min-height: 220px !important;
        padding: 30px 22px 20px !important;
    }

    body.page-product .sidebar-call-choice {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        justify-items: center !important;
        min-height: 116px !important;
        padding: 18px 16px !important;
        text-align: center !important;
    }

    body.page-product .sidebar-call-choice-content {
        text-align: center !important;
    }

    body.page-product .sidebar-call-copy {
        justify-content: center !important;
    }
}

/* Product popup close-button family lock: shared behavior, existing sizes preserved. */
body.page-product .find-doctor-gate-close,
body.page-product .sidebar-call-pop-close,
body.page-product .product-video-modal-close,
body.page-product #path-modal .path-modal-close,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close,
body.page-product #edu-modal .edu-modal-close {
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 12px rgba(111, 135, 255, 0.18),
        0 0 14px rgba(111, 135, 255, 0.12),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product .find-doctor-gate-close::before,
body.page-product .find-doctor-gate-close::after,
body.page-product .sidebar-call-pop-close::before,
body.page-product .sidebar-call-pop-close::after,
body.page-product .product-video-modal-close::before,
body.page-product .product-video-modal-close::after,
body.page-product #path-modal .path-modal-close::before,
body.page-product #path-modal .path-modal-close::after,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close::after,
body.page-product #edu-modal .edu-modal-close::before,
body.page-product #edu-modal .edu-modal-close::after {
    background: #6f87ff !important;
    box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
}

body.page-product #path-modal .path-modal-close svg path,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close svg path,
body.page-product #edu-modal .edu-modal-close svg path {
    stroke: #6f87ff !important;
}

body.page-product .find-doctor-gate-close:hover,
body.page-product .find-doctor-gate-close:focus-visible,
body.page-product .sidebar-call-pop-close:hover,
body.page-product .sidebar-call-pop-close:focus-visible,
body.page-product .product-video-modal-close:hover,
body.page-product .product-video-modal-close:focus-visible,
body.page-product #path-modal .path-modal-close:hover,
body.page-product #path-modal .path-modal-close:focus-visible,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible,
body.page-product #edu-modal .edu-modal-close:hover,
body.page-product #edu-modal .edu-modal-close:focus-visible {
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 0 16px rgba(239, 68, 68, 0.13),
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

body.page-product .find-doctor-gate-close:hover::before,
body.page-product .find-doctor-gate-close:focus-visible::before,
body.page-product .sidebar-call-pop-close:hover::before,
body.page-product .sidebar-call-pop-close:focus-visible::before,
body.page-product .product-video-modal-close:hover::before,
body.page-product .product-video-modal-close:focus-visible::before,
body.page-product #path-modal .path-modal-close:hover::before,
body.page-product #path-modal .path-modal-close:focus-visible::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover::before,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible::before,
body.page-product #edu-modal .edu-modal-close:hover::before,
body.page-product #edu-modal .edu-modal-close:focus-visible::before {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(225deg) !important;
}

body.page-product .find-doctor-gate-close:hover::after,
body.page-product .find-doctor-gate-close:focus-visible::after,
body.page-product .sidebar-call-pop-close:hover::after,
body.page-product .sidebar-call-pop-close:focus-visible::after,
body.page-product .product-video-modal-close:hover::after,
body.page-product .product-video-modal-close:focus-visible::after,
body.page-product #path-modal .path-modal-close:hover::after,
body.page-product #path-modal .path-modal-close:focus-visible::after,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover::after,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible::after,
body.page-product #edu-modal .edu-modal-close:hover::after,
body.page-product #edu-modal .edu-modal-close:focus-visible::after {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(135deg) !important;
}

body.page-product #path-modal .path-modal-close:hover svg path,
body.page-product #path-modal .path-modal-close:focus-visible svg path,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:hover svg path,
body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-close:focus-visible svg path,
body.page-product #edu-modal .edu-modal-close:hover svg path,
body.page-product #edu-modal .edu-modal-close:focus-visible svg path {
    stroke: rgba(239, 68, 68, 0.98) !important;
}

/* Product mobile/tablet shell rhythm: match the bottom content edge gap to the
   accepted top content edge gap between the fixed header and footer chrome. */
@media (max-width: 1180px),
       (min-width: 1181px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-product:not(.page-legal) {
        --product-shell-edge-gap: 16px;
    }

    body.page-product:not(.page-legal) .page-container {
        padding-top: var(--product-shell-edge-gap) !important;
        padding-bottom: calc(var(--product-shell-edge-gap) + env(safe-area-inset-bottom, 0px)) !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product:not(.page-legal) {
        --product-shell-edge-gap: 14px;
    }
}

@media (min-width: 641px) and (max-width: 1180px) and (orientation: portrait) {
    body.page-product:not(.page-legal) {
        --product-shell-edge-gap: 10px;
    }
}
