/* 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?v=20260419b') 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?v=20260419b') 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?v=20260419b') 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?v=20260419b') 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-life-final-expense .product-hero-bg {
    background-image: url('../PAGES/LIFE/FINAL-EXPENSE/HERO/HERO.png');
}

body.page-life-final-expense .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-final-expense .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-final-expense .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-final-expense .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-final-expense .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-final-expense [data-dialog-modal="compare-plans"] .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg?v=20260419b') 50% 45% / cover no-repeat;
}

body.page-life-final-expense [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?v=20260419b') 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-job-change .product-hero-bg {
    background-image: url('../PAGES/RETIREMENT/JOB-CHANGE/HERO/HERO.png');
}

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

body.page-retirement-job-change [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?v=20260419b') 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?v=20260419b') 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?v=20260419b') 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;
    }
}

/* Request Quote final mobile corrections: landscape intro size and checkbox optical alignment. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: minmax(215px, 0.58fr) minmax(0, 1.42fr) !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-head > span {
        display: block !important;
        margin-bottom: 4px !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) {
        top: 50% !important;
        bottom: auto !important;
        width: min(520px, calc(100vw - 44px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 44px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
        --abc-popup-rest-transform: translate(-50%, -50%) scale(1);
        --abc-popup-start-transform: translate(-50%, calc(-50% + 10px)) scale(0.982);
        --abc-popup-lift-transform: translate(-50%, calc(-50% - 2px)) scale(1.004);
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-body {
        height: 202px !important;
        min-height: 202px !important;
        max-height: 202px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
        width: min(100% - 24px, 494px) !important;
        max-width: 494px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-copy {
        max-width: 410px !important;
    }
}

@media (max-width: 960px) {
    body.page-product .instant-quote-modal .instant-quote-consent input {
        transform: translateY(1px) !important;
    }
}

/* Request Quote form state: less stretched and less cramped on phone landscape. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(820px, calc(100vw - 56px)) !important;
        max-height: calc(100dvh - 24px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        box-sizing: border-box !important;
        height: auto !important;
        max-height: calc(100dvh - 64px) !important;
        padding: 22px 18px 32px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        width: 100% !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        gap: 7px 14px !important;
        padding: 0 !important;
        width: 100% !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        grid-template-columns: minmax(215px, 0.58fr) minmax(0, 1.42fr) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr) !important;
    }
}

/* Request Quote intro: match existing Compare Plans footprint on phone landscape. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) {
        top: 50% !important;
        bottom: auto !important;
        width: min(520px, calc(100vw - 44px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 44px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
        --abc-popup-rest-transform: translate(-50%, -50%) scale(1);
        --abc-popup-start-transform: translate(-50%, calc(-50% + 10px)) scale(0.982);
        --abc-popup-lift-transform: translate(-50%, calc(-50% - 2px)) scale(1.004);
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-body {
        height: 202px !important;
        min-height: 202px !important;
        max-height: 202px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
        width: min(100% - 24px, 494px) !important;
        max-width: 494px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-copy {
        max-width: 410px !important;
    }
}

/* Request Quote consent checkbox visual alignment. */
body.page-product .instant-quote-modal .instant-quote-consent input {
    transform: translateY(1px) !important;
}

@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,
body.page-product .chat-panel .chat-thread-close {
    font-size: 13.3333px !important;
    line-height: normal !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-thread-header {
    grid-template-columns: 40px minmax(0, 1fr) 40px !important;
    column-gap: 12px !important;
}

body.page-product .chat-panel .chat-back {
    box-shadow:
        0 12px 26px rgba(0,0,0,0.32),
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255,255,255,0.1) !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(22px, 3.5dvh, 30px) clamp(15px, 4vw, 20px) !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(26px, 6.6vw, 32px) !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(11px, 2.95vw, 12px) !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(62px, 9.4dvh, 72px) !important;
        grid-template-columns: clamp(34px, 7.4vw, 38px) minmax(0, 1fr) !important;
        gap: clamp(10px, 2.4vw, 12px) !important;
        padding: 12px clamp(38px, 9vw, 46px) 12px 12px !important;
        border-radius: 14px !important;
    }

    body.page-product .chat-panel.is-selecting .chat-messages .chat-selector-glyph {
        width: clamp(34px, 7.4vw, 38px) !important;
        height: clamp(34px, 7.4vw, 38px) !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 14px 18px !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 {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !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 {
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
        height: 0 !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 14px 18px !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 0 4px !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-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
}

body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-note {
    flex: 1 1 auto !important;
    max-width: 44ch !important;
    margin: 0 !important;
    color: rgba(166, 174, 197, 0.74) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-wrap: balance !important;
}

body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-cta {
    flex: 0 0 auto !important;
}

@media (max-width: 1024px) {
    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        gap: 8px !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-note {
        max-width: none !important;
        font-size: clamp(6.8px, 1.74vw, 8.8px) !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .enrollment-dates-cta {
        width: min(168px, 45%) !important;
        min-width: 0 !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
        font-size: clamp(7.4px, 1.88vw, 9px) !important;
        letter-spacing: 0.04em !important;
        white-space: nowrap !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: translateY(2px) !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: -6px !important;
        margin-bottom: 0 !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(371px, calc(100% - 16px)) !important;
        line-height: 1.28 !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: -6px !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: 14px;
    }

    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: 14px;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-body {
        padding-top: clamp(10px, 1.3dvh, 15px) !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: portrait) {
    body.page-product #edu-modal:not(.compare-mode) .path-modal-body {
        padding-top: clamp(15px, 1.65dvh, 19px) !important;
    }

    body.page-product #edu-modal.compare-mode .path-modal-body {
        padding-top: clamp(9px, 1.1dvh, 12.5px) !important;
    }
}

@media (pointer: coarse) and (orientation: landscape) {
    body.page-product #edu-modal:not(.compare-mode) .path-modal-body {
        padding-top: 8px !important;
    }
}

@media (pointer: coarse) and (max-width: 640px) and (orientation: portrait) {
    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode {
        gap: 6px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode li:not(.edu-detail-card-link) {
        min-height: 49px !important;
        height: 49px !important;
        flex-basis: 49px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
        gap: 3px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode .edu-detail-card-link,
    body.page-product #edu-modal:not(.compare-mode) .consult-visual-panel,
    body.page-product #edu-modal:not(.compare-mode) .cv-team-frame {
        height: clamp(278px, 30.5dvh, 286px) !important;
        max-height: clamp(278px, 30.5dvh, 286px) !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.48s 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;
    white-space: nowrap !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 {
    content: "" !important;
    position: absolute !important;
    inset: 22px 24px 6px !important;
    z-index: 0 !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;
    pointer-events: none !important;
    transition:
        filter 0.92s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.92s cubic-bezier(0.16, 1, 0.3, 1),
        transform 0.92s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.page-product .sidebar-call-pop.resource-pop-opening .sidebar-call-pop-body::before {
    opacity: 0.92 !important;
    filter: blur(0px) grayscale(0) saturate(1) brightness(0.84) contrast(1.02) !important;
    transform: scale(1) !important;
}

body.page-product .sidebar-call-pop-body::after {
    content: "" !important;
    position: absolute !important;
    inset: 22px 24px 6px !important;
    z-index: 0 !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;
    pointer-events: none !important;
    transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.page-product .sidebar-call-pop.resource-pop-opening .sidebar-call-pop-body::after {
    opacity: 0.12 !important;
}

body.page-product .sidebar-call-pop-body > * {
    position: relative !important;
    z-index: 1 !important;
    opacity: 1;
    transform: none;
    transition:
        opacity 0.92s cubic-bezier(0.16, 1, 0.3, 1),
        transform 0.92s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.page-product .sidebar-call-pop.resource-pop-opening .sidebar-call-pop-body > * {
    opacity: 0;
    transform: translateY(16px);
}

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.48s 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: #f6d779 !important;
    text-shadow:
        0 0 8px rgba(246, 215, 121, 0.78),
        0 0 18px rgba(246, 215, 121, 0.38),
        0 0 28px rgba(111, 130, 255, 0.24) !important;
}

body.page-product .sidebar-call-copy.is-copied .sidebar-call-copy-label {
    color: #f6d779 !important;
    font-weight: 950 !important;
}

body.page-product .sidebar-call-copy.is-copied .sidebar-call-copy-arrow {
    color: #f6d779 !important;
    transform: translateX(2px) scale(0.92) !important;
    opacity: 0.9 !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;
}

body.page-product #path-modal .path-modal-close {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    border-radius: 7px !important;
    border: 1px solid rgba(0, 0, 0, 0) !important;
}

body.page-product #path-modal .path-modal-close::before,
body.page-product #path-modal .path-modal-close::after {
    width: 8px !important;
    height: 2px !important;
    box-shadow: none !important;
}

body.page-product #path-modal .path-modal-header {
    min-height: 59px !important;
    padding: 11px 18px 12px 20px !important;
}

/* Product path modal: primary yellow review CTAs use the same white sweep as
   hero/final yellow CTAs even when the modal button is not a float-cta. */
body.page-product #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta {
    position: relative !important;
    overflow: hidden !important;
}

body.page-product #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    padding: 0 !important;
    background: linear-gradient(110deg,
        transparent 18%,
        rgba(255, 255, 255, 0.14) 38%,
        rgba(255, 255, 255, 0.42) 50%,
        rgba(255, 255, 255, 0.14) 62%,
        transparent 82%) !important;
    -webkit-mask: none !important;
    -webkit-mask-composite: source-over !important;
    mask: none !important;
    mask-composite: add !important;
    filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.24)) !important;
    transform: translateX(-140%);
    opacity: 0.76 !important;
    animation: hero-cta-sheen 4.2s ease-in-out infinite !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

body.page-product #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:not(:hover)::after {
    animation: hero-cta-sheen 4.2s ease-in-out infinite !important;
}

body.page-product #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:hover::after {
    opacity: 0.9 !important;
    animation: hero-cta-sheen-hover 1.1s linear infinite !important;
}

body.page-health-group #path-modal .path-modal-footer,
body.page-life-group #path-modal .path-modal-footer,
body.page-retirement-group #path-modal .path-modal-footer {
    background: rgba(0, 0, 0, 0.92) !important;
}

/* Group pages: match Dental/Vision yellow review buttons. Keep only the soft
   white left-to-right sheen on the button face; remove the line-sweep layer. */
body.page-health-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta,
body.page-life-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta,
body.page-retirement-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta {
    position: relative !important;
    border-color: rgba(224, 189, 108, 0.96) !important;
    background:
        linear-gradient(165deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.04) 28%, rgba(74, 52, 12, 0.18) 68%, rgba(74, 52, 12, 0.28) 100%),
        linear-gradient(180deg, rgba(236, 212, 150, 0.98), rgba(201, 160, 80, 0.92)) !important;
    color: rgba(18, 13, 7, 0.96) !important;
    overflow: hidden !important;
}

body.page-health-group .product-hero .cta-core.cta-primary.float-cta::before,
body.page-health-group .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta::before,
body.page-health-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::before,
body.page-life-group .product-hero .cta-core.cta-primary.float-cta::before,
body.page-life-group .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta::before,
body.page-life-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::before,
body.page-retirement-group .product-hero .cta-core.cta-primary.float-cta::before,
body.page-retirement-group .path-subsection-final .final-cta-standalone .cta-core.cta-primary.float-cta::before,
body.page-retirement-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::before {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    inset: auto !important;
    background: none !important;
    -webkit-mask: none !important;
    mask: none !important;
    animation: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.page-health-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::after,
body.page-life-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::after,
body.page-retirement-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    padding: 0 !important;
    background: linear-gradient(110deg,
        transparent 18%,
        rgba(255, 255, 255, 0.14) 38%,
        rgba(255, 255, 255, 0.42) 50%,
        rgba(255, 255, 255, 0.14) 62%,
        transparent 82%) !important;
    -webkit-mask: none !important;
    -webkit-mask-composite: source-over !important;
    mask: none !important;
    mask-composite: add !important;
    filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.24)) !important;
    transform: translateX(-140%);
    opacity: 0.76 !important;
    animation: hero-cta-sheen 4.2s ease-in-out infinite !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

body.page-health-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:not(:hover)::after,
body.page-life-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:not(:hover)::after,
body.page-retirement-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:not(:hover)::after {
    animation: hero-cta-sheen 4.2s ease-in-out infinite !important;
}

body.page-health-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:hover::after,
body.page-life-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:hover::after,
body.page-retirement-group #path-modal .path-modal-footer .cta-core.cta-primary.path-modal-cta:hover::after {
    opacity: 0.9 !important;
    animation: hero-cta-sheen-hover 1.1s linear infinite !important;
}

body.page-health-group .cta-core.cta-primary .hero-cta-label-desktop,
body.page-health-group .cta-core.cta-primary .hero-cta-label-mobile,
body.page-health-group .cta-core.cta-primary .cta-label,
body.page-life-group .cta-core.cta-primary .hero-cta-label-desktop,
body.page-life-group .cta-core.cta-primary .hero-cta-label-mobile,
body.page-life-group .cta-core.cta-primary .cta-label,
body.page-retirement-group .cta-core.cta-primary .hero-cta-label-desktop,
body.page-retirement-group .cta-core.cta-primary .hero-cta-label-mobile,
body.page-retirement-group .cta-core.cta-primary .cta-label {
    position: relative !important;
    z-index: 2 !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: var(--product-shell-edge-gap) !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;
    }
}
/* Shared Chat final polish: keep control centering globally; keep the outside halo touch-only. */
body.page-product .chat-panel,
html body.page-product .chat-panel,
body.page-product .chat-panel.is-thread,
html body.page-product .chat-panel.is-thread {
    isolation: isolate !important;
    overflow: visible !important;
}

body.page-product .chat-panel::before {
    content: none !important;
    display: none !important;
}

body.page-product .chat-panel > * {
    position: relative !important;
    z-index: 1 !important;
}

body.page-product .chat-panel .chat-close,
body.page-product .chat-panel .chat-thread-close,
body.page-product .chat-panel .chat-back {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
}

body.page-product .chat-panel .chat-close,
body.page-product .chat-panel .chat-thread-close {
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

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 {
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255, 255, 255, 0.10) !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 {
    left: 50% !important;
    top: 50% !important;
    margin: 0 !important;
    transform-origin: 50% 50% !important;
}

body.page-product .chat-panel .chat-close::before,
body.page-product .chat-panel .chat-thread-close::before {
    transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.page-product .chat-panel .chat-close::after,
body.page-product .chat-panel .chat-thread-close::after {
    transform: translate(-50%, -50%) rotate(-45deg) !important;
}

body.page-product .chat-panel .chat-close:hover::before,
body.page-product .chat-panel .chat-close:active::before,
body.page-product .chat-panel .chat-thread-close:hover::before,
body.page-product .chat-panel .chat-thread-close:active::before {
    transform: translate(-50%, -50%) rotate(225deg) !important;
}

body.page-product .chat-panel .chat-close:hover::after,
body.page-product .chat-panel .chat-close:active::after,
body.page-product .chat-panel .chat-thread-close:hover::after,
body.page-product .chat-panel .chat-thread-close:active::after {
    transform: translate(-50%, -50%) rotate(135deg) !important;
}

body.page-product .chat-panel .chat-back svg {
    display: block !important;
    margin: 0 !important;
    transform: none !important;
}

@media (max-width: 1180px),
       (min-width: 1181px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
    body.page-product.chat-open .chat-panel {
        box-shadow:
            0 0 0 1px rgba(154, 178, 235, 0.055),
            0 0 0 2px rgba(132, 92, 235, 0.045),
            0 30px 78px rgba(0, 0, 0, 0.80),
            0 0 44px rgba(112, 152, 232, 0.13),
            0 0 76px rgba(132, 92, 235, 0.12),
            0 0 28px rgba(91, 118, 255, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
    }

    body.page-product.chat-open .chat-panel::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        inset: -18px !important;
        border-radius: calc(var(--product-chat-panel-radius, var(--chat-radius, 16px)) + 18px) !important;
        pointer-events: none !important;
        z-index: -1 !important;
        background:
            radial-gradient(ellipse 82% 42% at 50% 50%, rgba(112, 152, 232, 0.14), rgba(112, 152, 232, 0) 72%),
            radial-gradient(ellipse 92% 66% at 50% 52%, rgba(132, 92, 235, 0.10), rgba(132, 92, 235, 0) 74%) !important;
        filter: blur(18px) !important;
        opacity: 0.76 !important;
        animation: chat-panel-aura 7.5s ease-in-out infinite !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.page-product.chat-open .chat-panel::before {
        animation: none !important;
        opacity: 0.66 !important;
    }
}

/* Temporary owner-review pass: Option 10 black luxury glass, preserving header controls and input row. */
body.page-product.chat-open .chat-overlay {
    background:
        radial-gradient(ellipse 42% 34% at 50% 50%, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018) 34%, rgba(0, 0, 0, 0) 64%),
        radial-gradient(ellipse 100% 80% at 50% 50%, rgba(255, 255, 255, 0.028), rgba(0, 0, 0, 0.68) 54%, rgba(0, 0, 0, 0.92) 100%),
        rgba(0, 0, 0, 0.88) !important;
    -webkit-backdrop-filter: blur(18px) saturate(92%) brightness(0.58) !important;
    backdrop-filter: blur(18px) saturate(92%) brightness(0.58) !important;
}

body.page-product.chat-open .chat-panel {
    box-shadow:
        0 34px 112px rgba(0, 0, 0, 1),
        0 0 46px rgba(255, 255, 255, 0.10),
        0 0 108px rgba(126, 132, 255, 0.10) !important;
}

body.page-product.chat-open .chat-panel::before {
    content: none !important;
    display: none !important;
}

body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-messages {
    background: #000 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.035) !important;
}

body.page-product.chat-open .chat-panel {
    background: #020207 !important;
    box-shadow:
        0 34px 92px rgba(0, 0, 0, 1),
        0 0 0 1px rgba(130, 110, 255, 0.22),
        0 0 30px rgba(120, 90, 255, 0.34),
        0 0 86px rgba(50, 180, 255, 0.16),
        0 0 128px rgba(150, 60, 255, 0.16) !important;
    filter:
        drop-shadow(0 0 22px rgba(105, 90, 255, 0.28))
        drop-shadow(0 0 58px rgba(54, 185, 255, 0.14));
}

body.page-product.chat-open .chat-panel::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: -44px !important;
    z-index: -1 !important;
    border-radius: calc(var(--product-chat-panel-radius, var(--chat-radius, 18px)) + 26px) !important;
    pointer-events: none !important;
    background:
        radial-gradient(ellipse 82% 64% at 50% 48%, rgba(120, 82, 255, 0.34), rgba(120, 82, 255, 0) 64%),
        radial-gradient(ellipse 76% 50% at 52% 48%, rgba(42, 190, 255, 0.16), rgba(42, 190, 255, 0) 68%) !important;
    filter: blur(28px) !important;
    opacity: 0.94 !important;
    animation: none !important;
}

body.page-product .chat-panel.is-selecting .chat-messages,
body.page-product .chat-panel.is-thread:not(.is-selecting) .chat-messages {
    background: #000 !important;
}

body.page-product .chat-selector-btn {
    background:
        linear-gradient(180deg, rgba(18, 20, 34, 0.98), rgba(2, 2, 7, 0.98)) !important;
    border-color: rgba(135, 116, 255, 0.24) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        0 14px 34px rgba(0, 0, 0, 0.62),
        0 0 22px rgba(112, 88, 255, 0.12) !important;
}

/* Approved Chat glow: Option 1, Nebula Crown. */
body.page-product.chat-open .chat-panel {
    isolation: isolate !important;
    overflow: visible !important;
    background: #020207 !important;
    box-shadow:
        0 34px 92px rgba(0, 0, 0, 1),
        0 0 30px rgba(120, 82, 255, 0.20),
        0 0 92px rgba(42, 190, 255, 0.08) !important;
    filter: none !important;
}

body.page-product.chat-open .chat-panel::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: -50px !important;
    z-index: -1 !important;
    border-radius: calc(var(--product-chat-panel-radius, var(--chat-radius, 18px)) + 32px) !important;
    pointer-events: none !important;
    background:
        radial-gradient(ellipse 76% 56% at 50% 46%, rgba(130, 72, 255, 0.42), rgba(130, 72, 255, 0) 66%),
        radial-gradient(ellipse 58% 42% at 50% 54%, rgba(36, 210, 255, 0.18), rgba(36, 210, 255, 0) 70%) !important;
    filter: blur(30px) !important;
    opacity: 0.9 !important;
    animation: chat-bottom-bloom-breathe 5.8s ease-in-out infinite !important;
}

body.page-product.chat-open .chat-panel::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: -10px !important;
    z-index: -1 !important;
    border-radius: calc(var(--product-chat-panel-radius, var(--chat-radius, 18px)) + 12px) !important;
    pointer-events: none !important;
    background:
        radial-gradient(ellipse 92% 72% at 50% 50%, rgba(150, 80, 255, 0.18), rgba(150, 80, 255, 0) 72%) !important;
    filter: blur(10px) !important;
    opacity: 0.72 !important;
    animation: chat-bottom-bloom-breathe 5.8s ease-in-out infinite reverse !important;
}

body.page-product.chat-open .chat-panel > * {
    position: relative !important;
    z-index: 1 !important;
}

body.page-product.chat-open .chat-panel.is-selecting .chat-messages,
body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-messages {
    background: #000 !important;
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-messages {
    background:
        repeating-linear-gradient(0deg, rgba(255,255,255,0.018) 0, rgba(255,255,255,0.018) 1px, transparent 1px, transparent 5px),
        repeating-linear-gradient(90deg, rgba(255,255,255,0.012) 0, rgba(255,255,255,0.012) 1px, transparent 1px, transparent 7px),
        radial-gradient(90% 46% at 50% 0%, rgba(255,255,255,0.08), transparent 70%),
        linear-gradient(180deg, rgba(255,255,255,0.022) 0%, rgba(0,0,0,0.24) 42%, rgba(0,0,0,0.52) 100%),
        #030305 !important;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
}

@media (prefers-reduced-motion: reduce) {
    body.page-product.chat-open .chat-panel::before,
    body.page-product.chat-open .chat-panel::after {
        animation: none !important;
    }
}

/* Approved chooser glass: Option 4, Glass Choice Cards. */
body.page-product.chat-open .chat-panel.is-selecting .chat-messages {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.016) 35%, rgba(0, 0, 0, 0) 74%),
        radial-gradient(ellipse 114% 76% at 50% 110%, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0) 64%),
        #000 !important;
}

/* Owner-review Chat input row: Option 4, Apple-style black glass. */
body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input-row {
    gap: 7px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input-row:focus-within {
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input {
    min-height: 40px !important;
    border: 1px solid rgba(255, 255, 255, 0.055) !important;
    border-radius: 8px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.008) 44%, rgba(0, 0, 0, 0.18)),
        rgba(4, 5, 9, 0.72) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.055),
        inset 0 -1px 0 rgba(0, 0, 0, 0.42),
        0 0 0 1px rgba(0, 0, 0, 0.34),
        0 8px 18px rgba(0, 0, 0, 0.24) !important;
    padding: 9px 12px !important;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    -webkit-backdrop-filter: blur(12px) saturate(118%) !important;
    backdrop-filter: blur(12px) saturate(118%) !important;
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input::placeholder {
    color: rgba(174, 182, 204, 0.58) !important;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 640px), (min-width: 641px) and (max-width: 1366px) and (pointer: coarse) {
    body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input,
    body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input::placeholder {
        font-size: 16px !important;
        line-height: 1.28 !important;
    }
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input:hover,
body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input:focus,
body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-input:focus-visible {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.012) 46%, rgba(0, 0, 0, 0.16)),
        rgba(5, 6, 11, 0.78) !important;
    border-color: rgba(255, 255, 255, 0.085) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.075),
        inset 0 -1px 0 rgba(0, 0, 0, 0.38),
        0 0 0 1px rgba(0, 0, 0, 0.28),
        0 0 16px rgba(130, 72, 255, 0.08),
        0 8px 18px rgba(0, 0, 0, 0.24) !important;
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-send {
    min-height: 40px !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 8px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.01) 45%, rgba(0, 0, 0, 0.22)),
        rgba(5, 6, 10, 0.82) !important;
    color: rgba(255, 255, 255, 0.96) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.07),
        inset 0 -1px 0 rgba(0, 0, 0, 0.44),
        0 0 0 1px rgba(0, 0, 0, 0.32),
        0 8px 18px rgba(0, 0, 0, 0.26) !important;
    -webkit-backdrop-filter: blur(12px) saturate(118%) !important;
    backdrop-filter: blur(12px) saturate(118%) !important;
}

body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-send:hover,
body.page-product.chat-open .chat-panel.is-thread:not(.is-selecting) .chat-send:focus-visible {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.014) 45%, rgba(0, 0, 0, 0.20)),
        rgba(6, 7, 12, 0.88) !important;
    border-color: rgba(255, 255, 255, 0.09) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        inset 0 -1px 0 rgba(0, 0, 0, 0.38),
        0 0 0 1px rgba(0, 0, 0, 0.26),
        0 0 15px rgba(130, 72, 255, 0.09),
        0 8px 18px rgba(0, 0, 0, 0.26) !important;
}

body.page-product.chat-open .chat-panel.is-selecting .chat-selector-btn {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.045) 44%, rgba(8, 9, 12, 0.88) 100%) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.20),
        0 18px 36px rgba(0, 0, 0, 0.62) !important;
}

body.page-product.chat-open .chat-panel.is-selecting .chat-selector-btn {
    border-radius: 10px !important;
}

/* Match chooser plus icons to the approved Nebula Crown glow. */
body.page-product.chat-open .chat-panel.is-selecting .chat-selector-arrow {
    border-color: rgba(143, 112, 255, 0.32) !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px rgba(34, 37, 52, 0.9),
        0 0 14px rgba(130, 72, 255, 0.24),
        0 0 22px rgba(36, 210, 255, 0.10) !important;
}

body.page-product.chat-open .chat-panel.is-selecting .chat-selector-arrow::before,
body.page-product.chat-open .chat-panel.is-selecting .chat-selector-arrow::after {
    background: linear-gradient(90deg, #c7a4ff 0%, #8a5cff 52%, #36d9ff 100%) !important;
    box-shadow:
        0 0 8px rgba(150, 80, 255, 0.70),
        0 0 13px rgba(36, 210, 255, 0.32) !important;
}

/* Embedded provider directory and prescription-savings resource surfaces. */
body.page-product .find-doctor-choice:is(button) {
    appearance: none;
    -webkit-appearance: none;
    font: inherit;
    cursor: pointer;
    text-align: left;
}

body.page-product .find-doctor-gate-backdrop.is-open {
    z-index: 22000 !important;
    background:
        radial-gradient(ellipse 92% 74% at 50% 36%, rgba(117,141,255,0.12), rgba(4,6,14,0.48) 46%, rgba(1,2,6,0.86) 100%),
        linear-gradient(180deg, rgba(0,0,0,0.74), rgba(0,0,0,0.92)) !important;
    -webkit-backdrop-filter: blur(18px) saturate(116%) brightness(0.72) !important;
    backdrop-filter: blur(18px) saturate(116%) brightness(0.72) !important;
}

body.page-product .find-doctor-gate.is-open {
    z-index: 22010 !important;
}

body.page-product .provider-directory-embed,
body.page-product .prescription-savings-embed {
    display: none;
}

body.page-product .provider-directory-gate.is-provider-directory-open,
body.page-product .prescription-savings-gate.is-prescription-savings-open {
    width: min(1440px, calc(100vw - 48px)) !important;
    height: min(90svh, 900px) !important;
    min-height: min(820px, calc(100svh - 48px)) !important;
    max-height: calc(100svh - 32px) !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    overflow: hidden !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-head,
body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-head {
    min-height: 76px !important;
    padding: 0 18px 0 24px !important;
    align-items: center !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-body,
body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body {
    justify-content: stretch !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::before,
body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::before {
    display: none !important;
    opacity: 0 !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-content,
body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content {
    display: flex !important;
    align-items: stretch !important;
    height: 100% !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    transform: none !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open.resource-pop-opening .find-doctor-gate-body > *,
body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-body > *,
body.page-product .prescription-savings-gate.is-prescription-savings-open.resource-pop-opening .find-doctor-gate-body > *,
body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body > * {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-copy,
body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-actions,
body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-footer,
body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-footer {
    display: none !important;
}

body.page-product .provider-directory-gate.is-provider-directory-open .provider-directory-embed,
body.page-product .prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed {
    display: flex !important;
    flex: 1 1 auto;
    align-self: stretch;
    width: 100%;
    min-height: 0;
    flex-direction: column;
    gap: 0;
}

body.page-product .provider-directory-frame-shell {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    border-radius: 0 0 20px 20px;
    border: 0;
    background: #ffffff;
    box-shadow: none;
}

body.page-product .provider-directory-frame {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #ffffff;
}

body.page-health-dental-vision #find-doctor-gate .provider-directory-embed,
body.page-medicare #find-doctor-gate .provider-directory-embed {
    display: flex !important;
    flex: 1 1 auto;
    align-self: stretch;
    width: 100%;
    min-height: 0;
    flex-direction: column;
}

body.page-health-dental-vision #find-doctor-gate .provider-directory-frame-shell,
body.page-medicare #find-doctor-gate .provider-directory-frame-shell {
    background:
        linear-gradient(180deg, #00106e 0%, #000535 46%, #00031f 100%) !important;
}

body.page-health-dental-vision #find-doctor-gate .provider-directory-frame,
body.page-medicare #find-doctor-gate .provider-directory-frame {
    opacity: 0 !important;
    background: #000535 !important;
    transition: none !important;
}

body.page-health-dental-vision #find-doctor-gate.is-provider-directory-loaded .provider-directory-frame,
body.page-medicare #find-doctor-gate.is-provider-directory-loaded .provider-directory-frame {
    opacity: 1 !important;
}

body.page-product .prescription-savings-card {
    flex: 1 1 auto;
    min-height: 0;
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, 0.88fr) minmax(420px, 1.12fr);
    align-items: center;
    gap: 34px;
    padding: clamp(36px, 4.6vw, 68px) clamp(30px, 4.4vw, 64px) clamp(78px, 7.4vh, 96px);
    border-radius: 0 0 20px 20px;
    overflow: hidden;
    background:
        radial-gradient(72% 68% at 20% 18%, rgba(112,135,255,0.24), transparent 62%),
        radial-gradient(74% 78% at 86% 82%, rgba(129,90,255,0.19), rgba(59,106,255,0.09) 38%, transparent 64%),
        linear-gradient(135deg, rgba(255,255,255,0.09), rgba(255,255,255,0.025) 42%, rgba(3,5,12,0.94) 100%),
        rgba(5,7,13,0.96);
}

body.page-product .prescription-savings-gate.is-prescription-savings-open.resource-pop-opening .prescription-savings-card,
body.page-product .prescription-savings-gate.is-prescription-savings-open .prescription-savings-card {
    opacity: 1 !important;
    transform: none !important;
}

body.page-product .prescription-savings-copy {
    max-width: 430px;
    transform: translateY(4px);
}

body.page-product .prescription-savings-kicker {
    display: block;
    margin-bottom: 12px;
    color: #9fb3ff;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.page-product .prescription-savings-title {
    margin: 0 0 14px;
    color: rgba(255,255,255,0.96);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(36px, 4vw, 62px);
    font-weight: 700;
    letter-spacing: 0;
    line-height: 0.98;
}

body.page-product .prescription-savings-title-line {
    display: inline;
}

body.page-product .prescription-savings-text {
    margin: 0;
    max-width: 36ch;
    color: rgba(226,232,246,0.82);
    font-family: 'Nunito', Arial, sans-serif;
    font-size: clamp(16px, 1.25vw, 20px);
    font-weight: 600;
    line-height: 1.45;
}

body.page-product .prescription-savings-form {
    --rx-suggestions-space: min(330px, 38vh);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(118px, 0.28fr);
    gap: 14px;
    transform: translateY(4px);
    padding: clamp(18px, 2.3vw, 28px);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 16px;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.09), rgba(255,255,255,0.035)),
        rgba(8,10,18,0.72);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.14),
        0 24px 62px rgba(0,0,0,0.42);
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    backdrop-filter: blur(16px) saturate(120%);
}

body.page-product .prescription-savings-field {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
    transition: margin-bottom 160ms ease;
}

body.page-product .prescription-savings-gate.has-rx-suggestions .prescription-savings-form .prescription-savings-field:first-child {
    margin-bottom: calc(var(--rx-suggestions-space) + 10px);
}

body.page-product .prescription-savings-field > span,
body.page-product .prescription-savings-field > label {
    display: block;
    color: rgba(197,210,245,0.84);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    text-align: center;
}

body.page-product .prescription-savings-field label {
    cursor: pointer;
}

body.page-product .prescription-savings-field input {
    width: 100%;
    min-width: 0;
    height: 58px;
    box-sizing: border-box;
    border: 1px solid rgba(151,173,255,0.22);
    border-radius: 10px;
    background: rgba(255,255,255,0.94);
    color: #0f172a;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    padding: 0 16px;
    outline: none;
}

body.page-product .prescription-savings-field input:focus {
    border-color: rgba(154,100,255,0.75);
    box-shadow: 0 0 0 3px rgba(111,135,255,0.22), 0 0 22px rgba(111,135,255,0.22);
}

body.page-product .prescription-savings-suggestions {
    position: absolute;
    z-index: 8;
    top: calc(100% + 9px);
    right: 0;
    left: 0;
    max-height: var(--rx-suggestions-space);
    overflow: hidden;
    padding: 8px;
    border: 1px solid rgba(151,173,255,0.22);
    border-radius: 14px;
    background:
        radial-gradient(ellipse 78% 92% at 18% 12%, rgba(111,135,255,0.16), rgba(111,135,255,0.035) 38%, transparent 72%),
        linear-gradient(180deg, rgba(255,255,255,0.095), rgba(255,255,255,0.038)),
        rgba(8,10,18,0.96);
    box-shadow:
        0 24px 58px rgba(0,0,0,0.58),
        inset 0 1px 0 rgba(255,255,255,0.12),
        inset 0 0 0 1px rgba(255,255,255,0.035);
    -webkit-backdrop-filter: blur(16px) saturate(118%);
    backdrop-filter: blur(16px) saturate(118%);
}

body.page-product .prescription-savings-suggestions[hidden] {
    display: none;
}

body.page-product .prescription-savings-suggestions-scroll {
    max-height: calc(var(--rx-suggestions-space) - 16px);
    overflow-x: hidden;
    overflow-y: auto;
    border-radius: 10px;
    padding-right: 6px;
    scrollbar-gutter: stable;
    clip-path: inset(0 round 10px);
}

body.page-product .prescription-savings-suggestions-scroll::-webkit-scrollbar {
    width: 10px;
}

body.page-product .prescription-savings-suggestions-scroll::-webkit-scrollbar-track {
    border-radius: 999px;
    background: rgba(255,255,255,0.06);
}

body.page-product .prescription-savings-suggestions-scroll::-webkit-scrollbar-thumb {
    border: 2px solid rgba(8,10,18,0.96);
    border-radius: 999px;
    background: linear-gradient(180deg, #8f70ff, #36d9ff);
}

body.page-product .prescription-savings-suggestion {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 12px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: rgba(246,248,255,0.94);
    cursor: pointer;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
    padding: 12px 12px;
    text-align: left;
}

body.page-product .prescription-savings-suggestion:hover,
body.page-product .prescription-savings-suggestion.is-active {
    background:
        linear-gradient(90deg, rgba(111,80,255,0.22), rgba(54,217,255,0.08)),
        rgba(255,255,255,0.055);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

body.page-product .prescription-savings-suggestion-icon {
    display: inline-flex;
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(111,135,255,0.24), rgba(154,100,255,0.14)),
        rgba(255,255,255,0.055);
    color: #b9c7ff;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0;
}

body.page-product .prescription-savings-submit {
    grid-column: 1 / -1;
    min-height: 58px;
    border: 1px solid rgba(151,173,255,0.5);
    border-radius: 10px;
    background:
        linear-gradient(135deg, rgba(143,112,255,0.98), rgba(54,217,255,0.86)),
        #6f87ff;
    color: #ffffff;
    box-shadow: 0 18px 34px rgba(40,60,180,0.36), inset 0 1px 0 rgba(255,255,255,0.28);
    cursor: pointer;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body.page-product .prescription-savings-footnote {
    position: absolute;
    right: clamp(24px, 4vw, 56px);
    bottom: clamp(24px, 3.6vh, 38px);
    left: clamp(24px, 4vw, 56px);
    margin: 0;
    color: rgba(201,211,235,0.72);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.35;
    text-align: center;
    transition: opacity 160ms ease;
    visibility: visible;
}

body.page-product .prescription-savings-gate.has-rx-suggestions .prescription-savings-footnote {
    opacity: 0;
    visibility: hidden;
}

@media (max-width: 900px) {
    body.page-product .provider-directory-gate.is-provider-directory-open,
    body.page-product .prescription-savings-gate.is-prescription-savings-open {
        width: min(100vw - 16px, 720px) !important;
        height: min(86svh, 720px) !important;
        min-height: 0 !important;
        max-height: calc(100svh - 16px) !important;
        border-radius: 18px;
    }

    body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-head,
    body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-head {
        min-height: 58px !important;
        padding: 0 12px 0 18px !important;
    }

    body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-body,
    body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body {
        padding: 0 !important;
    }

    body.page-product .prescription-savings-card {
        grid-template-columns: 1fr;
        align-content: center;
        gap: 16px;
        overflow-y: auto;
        padding: 24px 18px 52px;
        text-align: left;
    }

    body.page-product .prescription-savings-copy,
    body.page-product .prescription-savings-form {
        transform: none;
    }

    body.page-product .prescription-savings-copy {
        max-width: none;
    }

    body.page-product .prescription-savings-kicker {
        margin-bottom: 8px;
        font-size: 10px;
        letter-spacing: 0.12em;
        text-align: left;
    }

    body.page-product .prescription-savings-title {
        margin-bottom: 10px;
        font-size: clamp(28px, 9vw, 40px);
        text-align: left;
    }

    body.page-product .prescription-savings-title-line {
        display: block;
    }

    body.page-product .prescription-savings-text {
        max-width: 34ch;
        font-size: 15px;
        line-height: 1.32;
        text-align: left;
    }

    body.page-product .prescription-savings-form {
        --rx-suggestions-space: 176px;
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px;
        border-radius: 14px;
    }

    body.page-product .prescription-savings-gate.has-rx-suggestions .prescription-savings-form .prescription-savings-field:first-child {
        margin-bottom: 0;
    }

    body.page-product .prescription-savings-field {
        gap: 7px;
    }

    body.page-product .prescription-savings-field > span,
    body.page-product .prescription-savings-field > label {
        text-align: left;
    }

    body.page-product .prescription-savings-field input {
        height: 46px;
        border-radius: 9px;
        font-size: 15px;
        padding: 0 14px;
    }

    body.page-product .prescription-savings-submit {
        min-height: 48px;
        border-radius: 9px;
        font-size: 12px;
    }

    body.page-product .prescription-savings-suggestions {
        position: static;
        max-height: 176px;
        margin-top: 0;
    }

    body.page-product .prescription-savings-suggestions-scroll {
        max-height: 158px;
    }

    body.page-product .prescription-savings-footnote {
        bottom: 18px;
    }
}

@media (orientation: landscape) and (max-height: 560px) {
    body.page-product .provider-directory-gate.is-provider-directory-open,
    body.page-product .prescription-savings-gate.is-prescription-savings-open {
        position: fixed !important;
        top: 8px !important;
        right: auto !important;
        bottom: auto !important;
        left: 8px !important;
        width: calc(100vw - 16px) !important;
        height: calc(100dvh - 16px) !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 16px) !important;
        border-radius: 16px !important;
        animation: none !important;
        transform: none !important;
        transform-origin: center center !important;
    }

    body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-head,
    body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-head {
        min-height: 52px !important;
        padding: 0 10px 0 18px !important;
    }

    body.page-product .provider-directory-frame-shell {
        border-radius: 0 0 16px 16px;
    }

    body.page-product .prescription-savings-card {
        grid-template-columns: minmax(210px, 0.86fr) minmax(320px, 1.14fr);
        align-content: center;
        gap: 20px;
        overflow-y: auto;
        padding: 14px 24px 18px;
    }

    body.page-product .prescription-savings-copy,
    body.page-product .prescription-savings-form {
        transform: none;
    }

    body.page-product .prescription-savings-kicker {
        margin-bottom: 7px;
        font-size: 9px;
        letter-spacing: 0.12em;
    }

    body.page-product .prescription-savings-title {
        margin-bottom: 8px;
        font-size: clamp(26px, 4.8vw, 38px);
    }

    body.page-product .prescription-savings-text {
        max-width: 32ch;
        font-size: 13px;
        line-height: 1.26;
    }

    body.page-product .prescription-savings-form {
        --rx-suggestions-space: 160px;
        gap: 9px;
        padding: 12px;
        border-radius: 13px;
    }

    body.page-product .prescription-savings-field {
        gap: 6px;
    }

    body.page-product .prescription-savings-field > span,
    body.page-product .prescription-savings-field > label {
        font-size: 9px;
    }

    body.page-product .prescription-savings-field input {
        height: 42px;
        border-radius: 8px;
        font-size: 14px;
        padding: 0 12px;
    }

    body.page-product .prescription-savings-submit {
        min-height: 44px;
        border-radius: 8px;
        font-size: 11px;
    }

    body.page-product .prescription-savings-suggestions {
        max-height: 160px;
    }

    body.page-product .prescription-savings-suggestions-scroll {
        max-height: 142px;
    }

    body.page-product .prescription-savings-footnote {
        display: none;
    }
}

/* Instant Quote embedded request flow: compact in-modal quote/call forms. */
body.page-product .instant-quote-modal .instant-quote-flow {
    width: 100%;
    min-width: 0;
}

body.page-product .find-doctor-gate.instant-quote-modal.is-open .find-doctor-gate-body > * {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
}

body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::before {
    filter: blur(4px) grayscale(0.12) saturate(0.76) brightness(0.42) contrast(1.08) !important;
}

body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.76) 0%, rgba(0, 0, 0, 0.66) 48%, rgba(0, 0, 0, 0.72) 100%),
        linear-gradient(90deg, rgba(0, 0, 0, 0.32), rgba(0, 0, 0, 0.18) 36%, rgba(0, 0, 0, 0.28) 100%),
        radial-gradient(ellipse 82% 68% at 50% 32%, rgba(255, 255, 255, 0.048), transparent 64%) !important;
}

body.page-product .instant-quote-modal [hidden] {
    display: none !important;
}

body.page-product .instant-quote-modal .instant-quote-panel-intro {
    display: grid;
    width: 100%;
    justify-items: center;
}

body.page-product .instant-quote-modal .instant-quote-choice-grid .find-doctor-choice {
    border: 0;
    cursor: pointer;
    font: inherit;
    text-align: left;
}

body.page-product .instant-quote-modal .instant-quote-form {
    display: grid;
    width: min(100%, 560px);
    max-width: 560px;
    margin: 0 auto;
    gap: 10px;
    text-align: left;
}

body.page-product .instant-quote-modal .instant-quote-form-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    column-gap: 10px;
    row-gap: 2px;
}

body.page-product .instant-quote-modal .instant-quote-back {
    grid-row: 1 / span 2;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    color: rgba(224, 232, 255, 0.9);
    background: rgba(0, 0, 0, 0.42);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
}

body.page-product .instant-quote-modal .instant-quote-form-head > span {
    color: rgba(135, 154, 255, 0.96);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

body.page-product .instant-quote-modal .instant-quote-form-head h4,
body.page-product .instant-quote-modal .instant-quote-success h4 {
    margin: 0;
    color: rgba(255, 255, 255, 0.98);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: 0;
}

body.page-product .instant-quote-modal .instant-quote-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

body.page-product .instant-quote-modal .instant-quote-form-grid label,
body.page-product .instant-quote-modal .instant-quote-consent {
    min-width: 0;
}

body.page-product .instant-quote-modal .instant-quote-form-grid label {
    display: grid;
    gap: 5px;
}

body.page-product .instant-quote-modal .instant-quote-form-grid label > span {
    color: rgba(205, 214, 240, 0.72);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select,
body.page-product .instant-quote-modal .instant-quote-form textarea {
    width: 100%;
    min-width: 0;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 10px;
    color: rgba(255, 255, 255, 0.96);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.024)),
        rgba(2, 4, 12, 0.76);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 10px 22px rgba(0, 0, 0, 0.34);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 14px;
    line-height: 1.2;
    outline: none;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select {
    height: 40px;
    padding: 0 11px;
}

body.page-product .instant-quote-modal .instant-quote-form textarea {
    min-height: 54px;
    max-height: 82px;
    padding: 10px 11px;
    resize: vertical;
}

body.page-product .instant-quote-modal .instant-quote-form input[aria-invalid="true"],
body.page-product .instant-quote-modal .instant-quote-form select[aria-invalid="true"],
body.page-product .instant-quote-modal .instant-quote-form textarea[aria-invalid="true"] {
    border-color: rgba(248, 113, 113, 0.64);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 0 0 1px rgba(248, 113, 113, 0.18),
        0 10px 22px rgba(0, 0, 0, 0.26);
}

body.page-product .instant-quote-modal .instant-quote-wide {
    grid-column: 1 / -1;
}

body.page-product .instant-quote-modal .instant-quote-consent {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    color: rgba(230, 235, 250, 0.86);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.28;
    text-shadow: 0 1px 10px rgba(0, 0, 0, 0.72);
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    width: 16px;
    height: 16px;
    margin: 1px 0 0;
    accent-color: #6f87ff;
}

body.page-product .instant-quote-modal .instant-quote-notice {
    min-height: 14px;
    margin: -2px 0 0;
    color: rgba(248, 113, 113, 0.92);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.25;
}

body.page-product .instant-quote-modal .instant-quote-notice[data-state="success"] {
    color: rgba(122, 255, 188, 0.9);
}

body.page-product .instant-quote-modal .instant-quote-submit {
    display: grid;
    place-items: center;
    min-height: 42px;
    border: 1px solid rgba(111, 135, 255, 0.34);
    border-radius: 11px;
    color: rgba(255, 255, 255, 0.98);
    background:
        linear-gradient(135deg, rgba(111, 135, 255, 0.9), rgba(92, 65, 210, 0.84)),
        rgba(4, 6, 14, 0.9);
    box-shadow:
        0 14px 34px rgba(0, 0, 0, 0.42),
        0 0 24px rgba(111, 135, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.18);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
    cursor: pointer;
}

body.page-product .instant-quote-modal .instant-quote-submit:disabled {
    cursor: wait;
    color: rgba(255, 255, 255, 0.82);
    opacity: 0.82;
}

body.page-product .instant-quote-modal .instant-quote-turnstile {
    min-height: 1px;
}

body.page-product .instant-quote-modal .instant-quote-success {
    display: grid;
    justify-items: center;
    gap: 12px;
    width: min(100%, 500px);
    margin: 0 auto;
    padding: clamp(26px, 5vw, 44px) clamp(18px, 4vw, 34px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    background:
        radial-gradient(circle at 14% 0%, rgba(111, 135, 255, 0.26), transparent 34%),
        radial-gradient(circle at 88% 12%, rgba(201, 160, 80, 0.16), transparent 32%),
        linear-gradient(135deg, rgba(5, 6, 9, 0.93) 0%, rgba(16, 17, 26, 0.92) 54%, rgba(8, 6, 15, 0.92) 100%);
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        inset 5px 0 0 rgba(132, 148, 255, 0.72);
    text-align: center;
}

body.page-product .instant-quote-modal .instant-quote-success > span {
    color: rgba(135, 154, 255, 0.96);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

body.page-product .instant-quote-modal .instant-quote-success p {
    max-width: 34ch;
    margin: 0;
    color: rgba(224, 232, 248, 0.84);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.45;
}

body.page-product .instant-quote-modal .instant-quote-booking-success {
    width: min(100%, 360px);
    padding: clamp(6px, 2vw, 14px) 0 0;
    border: 0;
    background: none;
    box-shadow: none;
}

body.page-product .instant-quote-modal .instant-quote-booking-success h4 {
    max-width: 13ch;
    font-size: clamp(24px, 4.4vw, 36px);
    line-height: 0.94;
    text-transform: uppercase;
}

body.page-product .instant-quote-modal .instant-booking-success-time {
    display: grid;
    justify-items: center;
    width: min(100%, 340px);
    gap: 4px;
    margin-top: 2px;
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
        rgba(2, 4, 10, 0.46);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 16px 32px rgba(0, 0, 0, 0.18);
}

body.page-product .instant-quote-modal .instant-booking-success-time span {
    color: #c9a050;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
}

body.page-product .instant-quote-modal .instant-booking-success-time strong {
    color: rgba(255, 255, 255, 0.94);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 900;
    line-height: 1.15;
}

body.page-product .instant-quote-modal .instant-booking-success-actions {
    display: grid;
    width: 100%;
    justify-items: center;
    gap: 9px;
    padding-top: 4px;
}

body.page-product .instant-quote-modal .instant-booking-calendar-link {
    display: inline-grid;
    place-items: center;
    min-height: 40px;
    width: min(100%, 340px);
    padding: 0 16px;
    border: 1px solid rgba(140, 162, 255, 0.4);
    border-radius: 14px;
    color: rgba(255, 255, 255, 0.98);
    background:
        radial-gradient(ellipse 88% 130% at 50% -22%, rgba(255, 255, 255, 0.16), transparent 60%),
        linear-gradient(135deg, rgba(96, 132, 255, 0.96), rgba(149, 105, 255, 0.92));
    box-shadow:
        0 16px 32px rgba(0, 0, 0, 0.34),
        0 0 24px rgba(93, 119, 255, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 9.5px;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
}

body.page-product .instant-quote-modal .instant-booking-calendar-link:hover,
body.page-product .instant-quote-modal .instant-booking-calendar-link:focus-visible {
    border-color: rgba(158, 176, 255, 0.56);
    box-shadow:
        0 20px 48px rgba(0, 0, 0, 0.54),
        0 0 36px rgba(93, 119, 255, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

body.page-product .instant-quote-modal .instant-booking-calendar-options {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    width: min(100%, 340px);
    margin-top: 2px;
    padding: 7px 8px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
        rgba(2, 4, 10, 0.46);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 16px 32px rgba(0, 0, 0, 0.18);
}

body.page-product .instant-quote-modal .instant-booking-calendar-options[hidden] {
    display: none;
}

body.page-product .instant-quote-modal .instant-booking-calendar-options a {
    display: grid;
    grid-template-rows: auto auto;
    place-items: center;
    gap: 5px;
    min-height: 58px;
    padding: 6px 6px 5px;
    border: 0;
    border-radius: 12px;
    color: rgba(238, 242, 255, 0.9);
    background: transparent;
    box-shadow: none;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 6.8px;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition: background 160ms ease, color 160ms ease, transform 160ms ease;
}

body.page-product .instant-quote-modal .instant-booking-calendar-options a + a {
    border-left: 1px solid rgba(255, 255, 255, 0.07);
}

body.page-product .instant-quote-modal .instant-booking-calendar-options a:hover,
body.page-product .instant-quote-modal .instant-booking-calendar-options a:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, 0.045);
    transform: translateY(-1px);
}

body.page-product .instant-quote-modal .instant-calendar-mark {
    display: block;
    width: 25px;
    height: 25px;
    overflow: visible;
    filter: drop-shadow(0 8px 13px rgba(0, 0, 0, 0.35));
}

body.page-product .instant-quote-modal .instant-calendar-mark-apple {
    color: rgba(244, 247, 255, 0.94);
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) {
    width: min(720px, calc(100vw - 42px)) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-body {
    padding: clamp(16px, 4vw, 34px) !important;
}

@media (max-width: 760px) {
    body.page-product .instant-quote-modal .instant-quote-success {
        gap: 8px;
        padding: 20px 16px;
    }

    body.page-product .instant-quote-modal .instant-booking-success-time,
    body.page-product .instant-quote-modal .instant-booking-calendar-link {
        width: 100%;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .instant-quote-modal .instant-quote-booking-success {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 6px;
        width: min(100%, 620px);
        padding: 10px 14px;
        text-align: center;
    }

    body.page-product .instant-quote-modal .instant-booking-success-time,
    body.page-product .instant-quote-modal .instant-booking-success-actions,
    body.page-product .instant-quote-modal .instant-booking-calendar-options {
        width: 100%;
    }

    body.page-product .instant-quote-modal .instant-booking-calendar-link {
        width: 100%;
    }
}

@media (min-width: 769px) {
    body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(720px, calc(100vw - 42px)) !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal {
        top: calc(8px + env(safe-area-inset-top, 0px)) !important;
        bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
        width: min(760px, calc(100vw - 28px)) !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-head {
        min-height: 42px !important;
        padding: 8px 14px 6px 16px !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-body {
        padding: 6px 12px !important;
        overflow: hidden !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-body::before,
    body.page-product .instant-quote-modal .find-doctor-gate-body::after {
        inset: 6px 12px !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-content {
        width: 100% !important;
        max-width: 700px !important;
        max-height: 100% !important;
        overflow: hidden !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form {
        width: min(100%, 690px);
        max-height: calc(100dvh - 112px);
        gap: 7px;
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 0 4px 2px;
        scrollbar-width: thin;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        grid-template-columns: auto minmax(0, 1fr);
        column-gap: 8px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 18px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid label > span {
        font-size: 8px;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-quote-form select {
        height: 34px;
        border-radius: 8px;
        font-size: 12px;
        padding: 0 9px;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 38px;
        max-height: 52px;
        border-radius: 8px;
        font-size: 12px;
        padding: 8px 9px;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        font-size: 9.4px;
        line-height: 1.18;
    }

    body.page-product .instant-quote-modal .instant-quote-notice {
        min-height: 12px;
        font-size: 10px;
    }

    body.page-product .instant-quote-modal .instant-quote-submit {
        min-height: 34px;
        border-radius: 8px;
        font-size: 9.5px;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-footer {
        min-height: 30px !important;
        height: 30px !important;
        padding: 4px 12px 7px !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal {
        width: min(100% - 24px, 440px) !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-body {
        padding: 28px 20px 16px !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-body::before,
    body.page-product .instant-quote-modal .find-doctor-gate-body::after {
        inset: 16px 14px 6px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form {
        max-height: min(600px, calc(100dvh - 190px));
        overflow-y: auto;
        padding: 0 2px 2px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid {
        gap: 7px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 20px;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-quote-form select {
        height: 38px;
        font-size: 13px;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 48px;
        max-height: 64px;
        font-size: 13px;
    }
}

@media (max-width: 420px) and (orientation: portrait) {
    body.page-product .instant-quote-modal .instant-quote-form-grid {
        grid-template-columns: 1fr;
    }
}

/* Instant Quote second pass: larger embedded quote and real appointment picker. */
body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) {
    width: min(900px, calc(100vw - 42px)) !important;
}

body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content {
    width: min(100%, 760px) !important;
    max-width: 760px !important;
}

body.page-product .instant-quote-modal .instant-quote-form {
    width: min(100%, 760px);
    max-width: 760px;
    gap: 12px;
}

body.page-product .instant-quote-modal .instant-quote-form-head {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 4px;
}

body.page-product .instant-quote-modal .instant-quote-form-head h4,
body.page-product .instant-quote-modal .instant-quote-success h4 {
    font-size: 28px;
}

body.page-product .instant-quote-modal .instant-quote-form-grid {
    gap: 10px;
}

body.page-product .instant-quote-modal .instant-quote-form-grid label {
    position: relative;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select {
    height: 44px;
}

body.page-product .instant-quote-modal .instant-quote-form textarea {
    min-height: 62px;
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid label {
    grid-column: span 3;
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-notes-compact {
    grid-column: 1 / -1;
}

body.page-product .instant-booking-picker {
    display: grid;
    gap: 9px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.016)),
        rgba(2, 4, 12, 0.58);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.095),
        0 14px 30px rgba(0, 0, 0, 0.28);
}

body.page-product .instant-booking-picker-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: rgba(226, 232, 245, 0.82);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;
}

body.page-product .instant-booking-picker-head > span {
    color: rgba(135, 154, 255, 0.95);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

body.page-product .instant-booking-picker-head > strong {
    min-width: 0;
    color: rgba(255, 255, 255, 0.9);
    font-weight: 850;
    text-align: right;
}

body.page-product .instant-booking-slots {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

body.page-product .instant-booking-day-panel,
body.page-product .instant-booking-time-panel {
    display: grid;
    gap: 7px;
    min-width: 0;
}

body.page-product .instant-booking-select {
    width: 100%;
    min-width: 0;
    height: 44px;
    border: 1px solid rgba(255, 255, 255, 0.105);
    border-radius: 10px;
    color: rgba(255, 255, 255, 0.96);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.082), rgba(255, 255, 255, 0.018)),
        rgba(3, 6, 16, 0.78);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.095),
        0 12px 24px rgba(0, 0, 0, 0.28);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 13px;
    font-weight: 800;
    outline: none;
    padding: 0 12px;
}

body.page-product .instant-booking-select:focus {
    border-color: rgba(111, 135, 255, 0.56);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 0 0 1px rgba(111, 135, 255, 0.2),
        0 14px 28px rgba(0, 0, 0, 0.34);
}

body.page-product .instant-booking-summary {
    grid-column: 1 / -1;
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 10px;
    color: rgba(226, 232, 245, 0.86);
    background: rgba(0, 0, 0, 0.24);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.2;
    text-align: center;
}

body.page-product .instant-booking-panel-label {
    color: rgba(205, 214, 240, 0.72);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.13em;
    line-height: 1;
    text-transform: uppercase;
}

body.page-product .instant-booking-day-grid,
body.page-product .instant-booking-time-grid {
    display: grid;
    gap: 6px;
}

body.page-product .instant-booking-day-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

body.page-product .instant-booking-time-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

body.page-product .instant-booking-day,
body.page-product .instant-booking-time {
    appearance: none;
    min-width: 0;
    min-height: 48px;
    border: 1px solid rgba(255, 255, 255, 0.092);
    border-radius: 10px;
    color: rgba(241, 245, 255, 0.92);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.064), rgba(255, 255, 255, 0.014)),
        rgba(3, 6, 16, 0.72);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        0 10px 22px rgba(0, 0, 0, 0.24);
    cursor: pointer;
    font: inherit;
    text-align: center;
}

body.page-product .instant-booking-day {
    display: grid;
    align-content: center;
    gap: 2px;
    padding: 7px 5px;
}

body.page-product .instant-booking-day span,
body.page-product .instant-booking-day small {
    color: rgba(208, 217, 242, 0.72);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
}

body.page-product .instant-booking-day strong,
body.page-product .instant-booking-time strong {
    color: rgba(255, 255, 255, 0.96);
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
}

body.page-product .instant-booking-time {
    min-height: 38px;
    padding: 0 6px;
}

body.page-product .instant-booking-day:hover,
body.page-product .instant-booking-day:focus-visible,
body.page-product .instant-booking-time:hover,
body.page-product .instant-booking-time:focus-visible,
body.page-product .instant-booking-day.is-selected,
body.page-product .instant-booking-time.is-selected {
    border-color: rgba(111, 135, 255, 0.48);
    background:
        linear-gradient(135deg, rgba(111, 135, 255, 0.34), rgba(92, 65, 210, 0.22)),
        rgba(4, 7, 18, 0.86);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 0 0 1px rgba(111, 135, 255, 0.18),
        0 12px 26px rgba(0, 0, 0, 0.32);
    outline: none;
}

body.page-product .instant-booking-empty,
body.page-product .instant-booking-skeleton {
    grid-column: 1 / -1;
    min-height: 66px;
    border-radius: 10px;
    background: rgba(3, 6, 16, 0.62);
}

body.page-product .instant-booking-empty {
    display: grid;
    place-items: center;
    padding: 12px;
    color: rgba(230, 235, 250, 0.82);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
    text-align: center;
}

body.page-product .instant-booking-skeleton {
    position: relative;
    overflow: hidden;
}

body.page-product .instant-booking-skeleton::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, 0.08) 44%, transparent 74%);
    animation: instantQuoteSubmitSheen 1.35s ease-in-out infinite;
}

body.page-product .instant-booking-menu-panel.is-loading-panel .instant-booking-menu-button {
    position: relative;
    overflow: hidden;
    cursor: progress;
}

body.page-product .instant-booking-menu-panel.is-loading-panel .instant-booking-menu-button > span {
    opacity: 0.62;
}

body.page-product .instant-booking-menu-panel.is-loading-panel .instant-booking-menu-button i {
    opacity: 0.3;
}

body.page-product .instant-booking-menu-panel.is-loading-panel .instant-booking-menu-button::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, 0.07) 44%, transparent 74%);
    animation: instantQuoteSubmitSheen 1.35s ease-in-out infinite;
    pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
    body.page-product .instant-booking-menu-panel.is-loading-panel .instant-booking-menu-button::after {
        animation: none;
    }
}

body.page-product .instant-quote-email-suggestions {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 4px);
    z-index: 8;
    display: grid;
    gap: 3px;
    padding: 5px;
    border: 1px solid rgba(106, 89, 168, 0.54);
    border-radius: 10px;
    background:
        linear-gradient(180deg, rgba(19, 20, 27, 0.98), rgba(3, 4, 8, 0.98)),
        #050609;
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.56),
        inset 0 1px 0 rgba(255, 255, 255, 0.11);
}

body.page-product .instant-quote-email-suggestions[hidden] {
    display: none !important;
}

body.page-product .instant-quote-email-suggestion {
    appearance: none;
    min-height: 30px;
    border: 0;
    border-radius: 7px;
    color: rgba(235, 240, 255, 0.94);
    background: transparent;
    cursor: pointer;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    text-align: left;
    padding: 0 9px;
}

body.page-product .instant-quote-email-suggestion:hover,
body.page-product .instant-quote-email-suggestion.is-active {
    background:
        linear-gradient(180deg, rgba(124, 109, 220, 0.54), rgba(64, 53, 136, 0.54)),
        rgba(0, 0, 0, 0.42);
    box-shadow:
        inset 0 0 0 1px rgba(174, 156, 255, 0.36),
        0 0 18px rgba(108, 86, 216, 0.18);
}

body.page-product .instant-quote-modal .instant-quote-submit {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

body.page-product .instant-quote-modal .instant-quote-submit::before,
body.page-product .instant-quote-modal .instant-quote-submit::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
}

body.page-product .instant-quote-modal .instant-quote-submit::before {
    z-index: -1;
    background:
        linear-gradient(110deg, transparent 18%, rgba(255, 255, 255, 0.18) 42%, rgba(255, 255, 255, 0.36) 50%, rgba(255, 255, 255, 0.12) 58%, transparent 82%);
    transform: translateX(-140%);
    animation: instantQuoteSubmitSheen 3.2s ease-in-out infinite;
}

body.page-product .instant-quote-modal .instant-quote-submit::after {
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12);
}

body.page-product .instant-quote-modal .instant-quote-submit:hover::before,
body.page-product .instant-quote-modal .instant-quote-submit:focus-visible::before {
    animation-duration: 1.05s;
}

body.page-product .instant-quote-modal .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-submit:focus-visible {
    transform: translateY(-1px);
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.48),
        0 0 32px rgba(111, 135, 255, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    outline: none;
}

@keyframes instantQuoteSubmitSheen {
    0% {
        transform: translateX(-140%);
    }

    58%,
    100% {
        transform: translateX(140%);
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(900px, calc(100vw - 18px)) !important;
    }

    body.page-product .instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) {
        width: min(910px, calc(100vw - 18px)) !important;
    }

    body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content {
        max-width: 780px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form {
        width: min(100%, 780px);
        max-height: calc(100dvh - 108px);
        gap: 5px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 19px;
    }

    body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-form-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px 8px;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-quote-form select {
        height: 30px;
        font-size: 11px;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 34px;
        max-height: 40px;
        font-size: 11px;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form {
        gap: 4px;
    }

    body.page-product .instant-booking-picker {
        gap: 4px;
        padding: 6px;
        border-radius: 11px;
    }

    body.page-product .instant-booking-picker-head {
        font-size: 8.5px;
        line-height: 1;
    }

    body.page-product .instant-booking-day,
    body.page-product .instant-booking-time {
        min-height: 30px;
        border-radius: 8px;
    }

    body.page-product .instant-booking-select {
        height: 30px;
        border-radius: 8px;
        font-size: 10px;
        padding: 0 8px;
    }

    body.page-product .instant-booking-summary {
        min-height: 24px;
        padding: 4px 8px;
        border-radius: 8px;
        font-size: 9px;
    }

    body.page-product .instant-booking-day span,
    body.page-product .instant-booking-day small {
        font-size: 7.5px;
    }

    body.page-product .instant-booking-day strong,
    body.page-product .instant-booking-time strong {
        font-size: 8px;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: repeat(10, minmax(0, 1fr));
        gap: 4px 6px;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid label {
        grid-column: span 2;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-notes-compact {
        grid-column: span 2;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form textarea {
        min-height: 30px;
        max-height: 34px;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        font-size: 8.5px;
        line-height: 1.05;
        gap: 6px;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        width: 14px;
        height: 14px;
    }

    body.page-product .instant-quote-modal .instant-quote-notice {
        min-height: 5px;
        font-size: 8px;
    }

    body.page-product .instant-quote-modal .instant-quote-submit {
        min-height: 31px;
        font-size: 9px;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(100% - 18px, 450px) !important;
    }

    body.page-product .instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) {
        top: calc(28px + env(safe-area-inset-top, 0px)) !important;
        bottom: calc(18px + env(safe-area-inset-bottom, 0px)) !important;
        max-height: calc(100dvh - 46px) !important;
        transform: translateX(-50%) scale(1) !important;
        --abc-popup-rest-transform: translateX(-50%) scale(1);
        --abc-popup-start-transform: translateX(-50%) translateY(12px) scale(0.982);
        --abc-popup-lift-transform: translateX(-50%) translateY(-2px) scale(1.004);
    }

    body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content {
        max-width: 100% !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 22px;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form {
        max-height: none !important;
        overflow: visible !important;
    }

    body.page-product .instant-booking-slots {
        grid-template-columns: 1fr;
    }

    body.page-product .instant-booking-select {
        height: 40px;
        font-size: 12px;
    }

    body.page-product .instant-booking-day-grid,
    body.page-product .instant-booking-time-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    body.page-product .instant-booking-day,
    body.page-product .instant-booking-time {
        min-height: 38px;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid label {
        grid-column: span 1;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-notes-compact {
        grid-column: 1 / -1;
    }
}

/* Instant Quote final form polish: shared ABC form feel, custom dropdowns, clean consent. */
body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
    width: min(980px, calc(100vw - 38px)) !important;
    max-height: min(94svh, 820px) !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
}

body.page-product .instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) {
    width: min(1000px, calc(100vw - 38px)) !important;
    max-height: min(94svh, 840px) !important;
}

body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content {
    width: min(100%, 860px) !important;
    max-width: 860px !important;
}

body.page-product .instant-quote-modal .find-doctor-gate-body {
    overflow: hidden;
    min-height: 0;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014)),
        rgba(3, 5, 12, 0.82);
}

body.page-product .instant-quote-modal .find-doctor-gate-body::before,
body.page-product .instant-quote-modal .find-doctor-gate-body::after {
    opacity: 0.42;
    clip-path: inset(0 round 18px);
}

body.page-product .instant-quote-modal .instant-quote-form {
    width: min(100%, 860px);
    max-width: 860px;
    gap: 11px;
}

body.page-product .instant-quote-modal .instant-quote-form-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px 10px;
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-product .instant-quote-modal .instant-quote-form-grid label,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid label {
    grid-column: span 1;
    min-width: 0;
}

body.page-product .instant-quote-modal .instant-quote-form-grid .instant-quote-wide,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid .instant-quote-wide {
    grid-column: 1 / -1;
}

body.page-product .instant-quote-modal .instant-quote-form-head {
    gap: 2px;
}

body.page-product .instant-quote-modal .instant-quote-form-head h4 {
    font-size: 30px;
    line-height: 1.02;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select,
body.page-product .instant-quote-modal .instant-select-trigger {
    height: 42px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 10px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.068), rgba(255, 255, 255, 0.016)),
        rgba(8, 11, 22, 0.88);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.095),
        0 10px 22px rgba(0, 0, 0, 0.22);
    color: rgba(246, 248, 255, 0.96);
}

body.page-product .instant-quote-modal .instant-quote-form textarea {
    min-height: 48px;
    max-height: 62px;
    border-radius: 10px;
    resize: vertical;
}

body.page-product .instant-quote-modal .instant-native-select {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

body.page-product .instant-quote-modal .instant-select {
    position: relative;
    min-width: 0;
}

body.page-product .instant-quote-modal .instant-select-trigger,
body.page-product .instant-booking-menu-button {
    appearance: none;
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor: pointer;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 850;
    line-height: 1;
    padding: 0 12px;
    text-align: left;
}

body.page-product .instant-quote-modal .instant-select-trigger i,
body.page-product .instant-booking-menu-button i {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-right: 2px solid rgba(150, 166, 255, 0.95);
    border-bottom: 2px solid rgba(150, 166, 255, 0.95);
    transform: translateY(-2px) rotate(45deg);
}

body.page-product .instant-quote-modal .instant-select.is-open .instant-select-trigger i,
body.page-product .instant-booking-menu-button[aria-expanded="true"] i {
    transform: translateY(2px) rotate(225deg);
}

body.page-product .instant-quote-modal .instant-select-options,
body.page-product .instant-booking-menu {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 6px);
    z-index: 60;
    display: grid;
    gap: 4px;
    max-height: min(230px, 46dvh);
    overflow: auto;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 12px;
    background:
        linear-gradient(180deg, rgba(31, 34, 48, 0.98), rgba(8, 10, 22, 0.98)),
        #090b16;
    box-shadow:
        0 22px 44px rgba(0, 0, 0, 0.46),
        inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

body.page-product .instant-quote-modal .instant-select.is-drop-up .instant-select-options,
body.page-product .instant-booking-menu-panel.is-drop-up .instant-booking-menu {
    top: auto;
    bottom: calc(100% + 6px);
}

body.page-product .instant-quote-modal .instant-select-options[hidden],
body.page-product .instant-booking-menu[hidden] {
    display: none !important;
}

body.page-product .instant-quote-modal .instant-select-option,
body.page-product .instant-booking-menu-option {
    appearance: none;
    min-height: 32px;
    border: 0;
    border-radius: 8px;
    color: rgba(240, 244, 255, 0.94);
    background: transparent;
    cursor: pointer;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    text-align: left;
    padding: 0 10px;
}

body.page-product .instant-quote-modal .instant-select-option:hover,
body.page-product .instant-quote-modal .instant-select-option.is-active,
body.page-product .instant-quote-modal .instant-select-option.is-selected,
body.page-product .instant-booking-menu-option:hover,
body.page-product .instant-booking-menu-option[aria-pressed="true"] {
    color: #fff;
    background: linear-gradient(135deg, rgba(111, 135, 255, 0.28), rgba(93, 67, 210, 0.22));
}

body.page-product .instant-booking-picker {
    gap: 8px;
    padding: 10px;
    border-radius: 14px;
}

body.page-product .instant-booking-picker-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-height: 18px;
}

body.page-product .instant-booking-picker-head > strong {
    max-width: 270px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-product .instant-booking-slots {
    position: relative;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
}

body.page-product .instant-booking-menu-panel {
    position: relative;
    display: grid;
    gap: 6px;
    min-width: 0;
}

body.page-product .instant-booking-menu-button {
    height: 40px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 10px;
    color: rgba(246, 248, 255, 0.96);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.068), rgba(255, 255, 255, 0.016)),
        rgba(8, 11, 22, 0.88);
}

body.page-product .instant-booking-summary {
    min-height: 28px;
    padding: 5px 10px;
    font-size: 11px;
}

body.page-product .instant-quote-modal .instant-quote-consent {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    margin: 0;
    color: rgba(232, 237, 250, 0.86);
    font-size: 10.5px;
    line-height: 1.22;
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    appearance: none;
    width: 16px;
    height: 16px;
    min-width: 16px;
    margin: 1px 0 0;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 4px;
    background: rgba(8, 11, 22, 0.92);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 8px 16px rgba(0, 0, 0, 0.18);
    display: grid;
    place-items: center;
}

body.page-product .instant-quote-modal .instant-quote-consent input::before {
    content: "";
    width: 8px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) scale(0);
    transform-origin: center;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked {
    border-color: rgba(111, 135, 255, 0.86);
    background: linear-gradient(135deg, rgba(111, 135, 255, 0.94), rgba(91, 62, 209, 0.92));
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked::before {
    transform: rotate(-45deg) scale(1);
}

body.page-product .instant-quote-modal .find-doctor-gate-footer {
    min-height: 28px;
    padding: 8px 16px 11px;
}

body.page-product .instant-quote-modal .find-doctor-fallback {
    display: block;
    max-width: none;
    overflow: hidden;
    color: rgba(171, 181, 211, 0.92);
    font-size: 10.5px;
    line-height: 1.1;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])),
    body.page-product .instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) {
        width: min(1000px, calc(100vw - 14px)) !important;
    }

    body.page-product .instant-quote-modal .find-doctor-gate-body {
        padding: 4px 9px 5px;
    }

    body.page-product .instant-quote-modal .instant-quote-form {
        gap: 4px;
        max-height: calc(100dvh - 104px);
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        gap: 1px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head span {
        font-size: 7.5px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 18px;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 3px 7px;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid .instant-quote-wide {
        grid-column: span 3;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-select-trigger,
    body.page-product .instant-booking-menu-button {
        height: 26px;
        border-radius: 8px;
        font-size: 10px;
        padding: 0 9px;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 28px;
        max-height: 30px;
        font-size: 10.5px;
        padding: 6px 9px;
    }

    body.page-product .instant-booking-picker {
        gap: 3px;
        padding: 5px;
        border-radius: 11px;
    }

    body.page-product .instant-booking-picker-head {
        min-height: 12px;
    }

    body.page-product .instant-booking-picker-head > span {
        font-size: 7.5px;
    }

    body.page-product .instant-booking-picker-head > strong {
        font-size: 8.5px;
    }

    body.page-product .instant-booking-slots {
        gap: 6px;
    }

    body.page-product .instant-booking-panel-label,
    body.page-product .instant-quote-modal .instant-quote-form-grid label > span {
        font-size: 7.5px;
        line-height: 1;
    }

    body.page-product .instant-booking-summary {
        display: none;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        grid-template-columns: 14px minmax(0, 1fr);
        gap: 6px;
        font-size: 8px;
        line-height: 1;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        width: 14px;
        height: 14px;
        min-width: 14px;
    }

    body.page-product .instant-quote-modal .find-doctor-fallback {
        font-size: 9px;
    }

    body.page-product .instant-quote-modal .instant-quote-submit {
        min-height: 28px;
        border-radius: 8px;
        font-size: 8.5px;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid .instant-quote-wide,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid .instant-quote-wide {
        grid-column: 1 / -1;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 23px;
    }

    body.page-product .instant-booking-slots {
        grid-template-columns: 1fr;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        font-size: 9.5px;
    }
}

@media (max-width: 390px) and (orientation: portrait) {
    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: 1fr;
    }
}

/* Instant Quote black-glass pass: premium dark controls without blue field fill. */
body.page-product .instant-quote-modal {
    --instant-quote-glass: rgba(3, 4, 8, 0.86);
    --instant-quote-glass-strong: rgba(0, 0, 0, 0.92);
    --instant-quote-glass-line: rgba(255, 255, 255, 0.16);
    --instant-quote-glass-line-strong: rgba(255, 255, 255, 0.26);
    --instant-quote-gold: rgba(222, 183, 92, 0.96);
    --instant-quote-gold-soft: rgba(222, 183, 92, 0.22);
}

body.page-product .instant-quote-modal .find-doctor-gate-body {
    background:
        radial-gradient(ellipse 72% 56% at 50% 0%, rgba(255, 255, 255, 0.075), transparent 68%),
        linear-gradient(180deg, rgba(16, 16, 18, 0.9), rgba(2, 3, 7, 0.94)),
        #030407;
}

body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::before {
    filter: blur(5px) grayscale(0.18) saturate(0.62) brightness(0.34) contrast(1.14) !important;
}

body.page-product .instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.62) 46%, rgba(0, 0, 0, 0.8)),
        radial-gradient(ellipse 64% 48% at 50% 12%, rgba(255, 255, 255, 0.08), transparent 70%) !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head > span,
body.page-product .instant-booking-picker-head > span {
    color: var(--instant-quote-gold);
}

body.page-product .instant-quote-modal .instant-quote-form-grid label > span,
body.page-product .instant-booking-panel-label {
    color: rgba(235, 237, 243, 0.7);
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select,
body.page-product .instant-quote-modal .instant-quote-form textarea,
body.page-product .instant-quote-modal .instant-select-trigger,
body.page-product .instant-booking-menu-button {
    border-color: var(--instant-quote-glass-line);
    color: rgba(250, 251, 255, 0.97);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.125), rgba(255, 255, 255, 0.036) 46%, rgba(255, 255, 255, 0.018)),
        linear-gradient(180deg, var(--instant-quote-glass), var(--instant-quote-glass-strong));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        inset 0 -18px 30px rgba(0, 0, 0, 0.22),
        0 12px 28px rgba(0, 0, 0, 0.38);
}

body.page-product .instant-quote-modal .instant-quote-form input::placeholder,
body.page-product .instant-quote-modal .instant-quote-form textarea::placeholder {
    color: rgba(222, 226, 238, 0.42);
    font-size: 12px;
    font-weight: 520;
    letter-spacing: 0;
    line-height: 1.25;
}

body.page-product .instant-quote-modal .instant-quote-form input:focus,
body.page-product .instant-quote-modal .instant-quote-form textarea:focus,
body.page-product .instant-quote-modal .instant-select-trigger:focus-visible,
body.page-product .instant-booking-menu-button:focus-visible {
    border-color: var(--instant-quote-glass-line-strong);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.2),
        inset 0 -18px 30px rgba(0, 0, 0, 0.22),
        0 0 0 1px rgba(255, 255, 255, 0.07),
        0 0 0 4px rgba(222, 183, 92, 0.12),
        0 14px 32px rgba(0, 0, 0, 0.44);
}

body.page-product .instant-quote-modal .instant-select-trigger i,
body.page-product .instant-booking-menu-button i {
    border-color: rgba(232, 236, 246, 0.9);
}

body.page-product .instant-quote-modal .instant-select-options,
body.page-product .instant-booking-menu,
body.page-product .instant-quote-email-suggestions {
    border-color: var(--instant-quote-glass-line);
    background:
        linear-gradient(180deg, rgba(28, 29, 34, 0.98), rgba(4, 5, 9, 0.98)),
        #050609;
    box-shadow:
        0 24px 48px rgba(0, 0, 0, 0.58),
        inset 0 1px 0 rgba(255, 255, 255, 0.13);
}

body.page-product .instant-quote-modal .instant-select-option:hover,
body.page-product .instant-quote-modal .instant-select-option.is-active,
body.page-product .instant-quote-modal .instant-select-option.is-selected,
body.page-product .instant-booking-menu-option:hover,
body.page-product .instant-booking-menu-option[aria-pressed="true"],
body.page-product .instant-quote-email-suggestion:hover,
body.page-product .instant-quote-email-suggestion.is-active {
    color: #fff;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.05)),
        rgba(0, 0, 0, 0.62);
    box-shadow: inset 0 0 0 1px rgba(222, 183, 92, 0.22);
}

body.page-product .instant-quote-email-suggestion:hover,
body.page-product .instant-quote-email-suggestion.is-active {
    background:
        linear-gradient(180deg, rgba(124, 109, 220, 0.54), rgba(64, 53, 136, 0.54)),
        rgba(0, 0, 0, 0.42);
    box-shadow:
        inset 0 0 0 1px rgba(174, 156, 255, 0.36),
        0 0 18px rgba(108, 86, 216, 0.18);
}

body.page-product .instant-booking-picker,
body.page-product .instant-booking-summary,
body.page-product .instant-booking-empty,
body.page-product .instant-booking-skeleton {
    border-color: var(--instant-quote-glass-line);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        rgba(0, 0, 0, 0.62);
}

body.page-product .instant-booking-day,
body.page-product .instant-booking-time {
    border-color: rgba(255, 255, 255, 0.14);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.026)),
        rgba(0, 0, 0, 0.72);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.16),
        0 10px 24px rgba(0, 0, 0, 0.28);
}

body.page-product .instant-booking-day:hover,
body.page-product .instant-booking-day:focus-visible,
body.page-product .instant-booking-time:hover,
body.page-product .instant-booking-time:focus-visible,
body.page-product .instant-booking-day.is-selected,
body.page-product .instant-booking-time.is-selected {
    border-color: rgba(222, 183, 92, 0.5);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.055)),
        rgba(5, 5, 6, 0.88);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.22),
        0 0 0 1px rgba(222, 183, 92, 0.18),
        0 14px 30px rgba(0, 0, 0, 0.38);
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    border-color: rgba(255, 255, 255, 0.28);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.02)),
        rgba(0, 0, 0, 0.82);
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked {
    border-color: rgba(222, 183, 92, 0.84);
    background:
        linear-gradient(180deg, rgba(222, 183, 92, 0.92), rgba(157, 116, 42, 0.94)),
        #111;
}

body.page-product .instant-quote-modal .instant-quote-submit {
    border-color: rgba(255, 255, 255, 0.24);
    color: rgba(255, 255, 255, 0.98);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.075) 42%, rgba(255, 255, 255, 0.03)),
        linear-gradient(180deg, rgba(14, 14, 16, 0.98), rgba(0, 0, 0, 0.96));
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.52),
        0 0 0 1px rgba(222, 183, 92, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.22),
        inset 0 -18px 28px rgba(0, 0, 0, 0.24);
}

body.page-product .instant-quote-modal .instant-quote-submit::before {
    background:
        linear-gradient(110deg, transparent 20%, rgba(255, 255, 255, 0.14) 42%, rgba(255, 255, 255, 0.44) 50%, rgba(222, 183, 92, 0.18) 58%, transparent 82%);
}

body.page-product .instant-quote-modal .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-submit:focus-visible {
    border-color: rgba(222, 183, 92, 0.42);
    box-shadow:
        0 20px 44px rgba(0, 0, 0, 0.56),
        0 0 0 1px rgba(222, 183, 92, 0.2),
        0 0 28px rgba(222, 183, 92, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

/* Instant Quote owner feedback pass: less outlined, cleaner, sexier black glass. */
body.page-product .find-doctor-gate.instant-quote-modal {
    border-color: rgba(255, 255, 255, 0.075) !important;
    background:
        radial-gradient(ellipse 78% 48% at 50% 0%, rgba(255, 255, 255, 0.075), transparent 70%),
        linear-gradient(180deg, rgba(12, 12, 15, 0.96), rgba(0, 0, 0, 0.98)) !important;
    box-shadow:
        0 38px 110px rgba(0, 0, 0, 0.72),
        0 0 0 1px rgba(255, 255, 255, 0.045),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

body.page-product .instant-quote-modal .find-doctor-gate-body {
    border-color: rgba(255, 255, 255, 0.055) !important;
    background:
        radial-gradient(ellipse 72% 44% at 50% -6%, rgba(255, 255, 255, 0.055), transparent 72%),
        rgba(0, 0, 0, 0.38) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.075),
        inset 0 0 42px rgba(255, 255, 255, 0.018) !important;
}

body.page-product .instant-quote-modal .find-doctor-gate-body::before,
body.page-product .instant-quote-modal .find-doctor-gate-body::after {
    opacity: 0.28 !important;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select,
body.page-product .instant-quote-modal .instant-quote-form textarea,
body.page-product .instant-quote-modal .instant-select-trigger,
body.page-product .instant-booking-menu-button {
    border-color: rgba(255, 255, 255, 0.095) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.018) 38%, rgba(0, 0, 0, 0.06)),
        rgba(0, 0, 0, 0.78) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.13),
        inset 0 -14px 26px rgba(0, 0, 0, 0.28),
        0 10px 24px rgba(0, 0, 0, 0.24) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input:focus,
body.page-product .instant-quote-modal .instant-quote-form textarea:focus,
body.page-product .instant-quote-modal .instant-select-trigger:focus-visible,
body.page-product .instant-booking-menu-button:focus-visible {
    border-color: rgba(222, 183, 92, 0.34) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.16),
        inset 0 -14px 26px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(222, 183, 92, 0.11),
        0 12px 28px rgba(0, 0, 0, 0.3) !important;
}

body.page-product .instant-booking-picker {
    border-color: rgba(255, 255, 255, 0.07) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
        rgba(0, 0, 0, 0.36) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 16px 34px rgba(0, 0, 0, 0.22) !important;
}

body.page-product .instant-booking-summary {
    border: 0 !important;
    color: rgba(236, 239, 247, 0.64);
    background: rgba(255, 255, 255, 0.035) !important;
    box-shadow: none !important;
}

body.page-product .instant-quote-modal .instant-quote-consent {
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 8px;
    color: rgba(229, 233, 244, 0.68) !important;
    font-size: 10px;
    font-weight: 650;
    line-height: 1.24;
    text-shadow: none;
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    width: 15px;
    height: 15px;
    min-width: 15px;
    margin-top: 0;
    border-radius: 5px;
    border-color: rgba(255, 255, 255, 0.2) !important;
    background: rgba(0, 0, 0, 0.62) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.1),
        0 6px 14px rgba(0, 0, 0, 0.2) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked {
    border-color: rgba(222, 183, 92, 0.72) !important;
    background: rgba(222, 183, 92, 0.88) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit {
    position: relative;
    z-index: 3;
    min-height: 42px;
    border-color: rgba(222, 183, 92, 0.26) !important;
    background:
        radial-gradient(ellipse 68% 120% at 50% -12%, rgba(255, 255, 255, 0.22), transparent 56%),
        linear-gradient(180deg, rgba(33, 31, 24, 0.98), rgba(4, 4, 5, 0.98)) !important;
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.5),
        0 0 18px rgba(222, 183, 92, 0.085),
        inset 0 1px 0 rgba(255, 255, 255, 0.2),
        inset 0 -14px 24px rgba(0, 0, 0, 0.32) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit:disabled {
    color: rgba(255, 255, 255, 0.74);
    opacity: 1;
    border-color: rgba(222, 183, 92, 0.18) !important;
    background:
        radial-gradient(ellipse 68% 120% at 50% -12%, rgba(255, 255, 255, 0.16), transparent 56%),
        linear-gradient(180deg, rgba(24, 23, 19, 0.94), rgba(3, 3, 4, 0.96)) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit::before {
    opacity: 0.52;
    background:
        linear-gradient(110deg, transparent 23%, rgba(255, 255, 255, 0.12) 43%, rgba(255, 255, 255, 0.36) 50%, rgba(222, 183, 92, 0.12) 58%, transparent 78%) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-submit:focus-visible {
    border-color: rgba(222, 183, 92, 0.28) !important;
    box-shadow:
        0 20px 42px rgba(0, 0, 0, 0.54),
        0 0 24px rgba(222, 183, 92, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

body.page-product .instant-quote-modal .instant-quote-booking-form {
    gap: 8px;
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
    gap: 8px 10px;
}

body.page-product .instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .find-doctor-gate-footer {
    display: none !important;
}

/* Instant Quote checkbox fix: clean square, aligned fine print. */
body.page-product .instant-quote-modal .instant-quote-consent {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 1px 0 2px !important;
    color: rgba(226, 231, 242, 0.76) !important;
    font-family: 'Inter', Arial, sans-serif !important;
    font-size: 10.5px !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    appearance: none !important;
    box-sizing: border-box !important;
    flex: 0 0 14px !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(226, 231, 242, 0.28) !important;
    border-radius: 4px !important;
    background: rgba(0, 0, 0, 0.58) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 4px 10px rgba(0, 0, 0, 0.22) !important;
    display: grid !important;
    place-items: center !important;
    transform: translateY(-1px);
}

body.page-product .instant-quote-modal .instant-quote-consent input::before {
    content: "" !important;
    width: 7px !important;
    height: 4px !important;
    border-left: 2px solid rgba(0, 0, 0, 0.86) !important;
    border-bottom: 2px solid rgba(0, 0, 0, 0.86) !important;
    transform: rotate(-45deg) scale(0) !important;
    transform-origin: center !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked {
    border-color: rgba(222, 183, 92, 0.78) !important;
    background: rgba(222, 183, 92, 0.92) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked::before {
    transform: rotate(-45deg) scale(1) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent span {
    display: block !important;
    min-width: 0 !important;
}

/* Instant Quote booking cleanup: match resource-popup chrome, no nested picker card. */
body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-head {
    min-height: 58px !important;
    height: auto !important;
    padding: 16px 20px 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-title {
    font-size: 11px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.16em !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-close {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    border-radius: 7px !important;
    transform: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-close::before,
body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-close::after {
    top: calc(50% - 1px) !important;
    left: calc(50% - 4px) !important;
    width: 8px !important;
    height: 2px !important;
    transform-origin: center !important;
}

body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-close::before {
    transform: rotate(45deg) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-close::after {
    transform: rotate(-45deg) !important;
}

body.page-product .instant-quote-modal .instant-booking-picker {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product .instant-quote-modal .instant-booking-picker-head {
    display: none !important;
}

body.page-product .instant-quote-modal .instant-booking-summary {
    display: none !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input::before {
    width: 6px !important;
    height: 3px !important;
    border-left-width: 2px !important;
    border-bottom-width: 2px !important;
    transform: translate(0, -1px) rotate(-45deg) scale(0) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked::before {
    transform: translate(0, -1px) rotate(-45deg) scale(1) !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head > span,
body.page-product .instant-quote-modal .instant-booking-panel-label {
    color: rgba(222, 183, 92, 0.92) !important;
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .instant-quote-modal .instant-quote-consent {
        grid-template-columns: 15px minmax(0, 1fr);
        font-size: 7.8px;
        line-height: 1.02;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        width: 13px;
        height: 13px;
        min-width: 13px;
    }
}

/* Instant Quote owner correction: active form fills the resource-popup body. */
body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-head {
    min-height: 76px !important;
    padding: 0 18px 0 24px !important;
    align-items: center !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-title {
    line-height: 1 !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-close {
    align-self: center !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
    justify-content: stretch !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 0 22px 22px !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::before,
body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
    inset: 0 !important;
    border-radius: 0 0 22px 22px !important;
    clip-path: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::before {
    opacity: 0.38 !important;
    filter: blur(8px) grayscale(0.14) saturate(0.72) brightness(0.46) contrast(1.12) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
    opacity: 1 !important;
    border: 0 !important;
    background:
        radial-gradient(ellipse 82% 58% at 50% 0%, rgba(255, 255, 255, 0.105), transparent 66%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.64), rgba(0, 0, 0, 0.46) 45%, rgba(0, 0, 0, 0.72)),
        linear-gradient(90deg, rgba(255, 255, 255, 0.024), transparent 20%, transparent 80%, rgba(255, 255, 255, 0.022)),
        linear-gradient(180deg, rgba(18, 19, 24, 0.58), rgba(2, 3, 7, 0.74)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.085),
        inset 0 -22px 42px rgba(0, 0, 0, 0.28),
        inset 0 0 58px rgba(255, 255, 255, 0.018) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
    align-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 28px 34px 30px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
    padding-top: 26px !important;
}

@media (max-width: 760px) {
    body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-head {
        min-height: 64px !important;
        padding: 0 14px 0 18px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
        padding: 18px 18px 22px !important;
    }
}

/* Instant Quote selected direction: split body with violet board theme. */
body.page-product .find-doctor-gate.instant-quote-modal {
    --instant-quote-selected-accent: #9b8cff;
    --instant-quote-selected-accent-strong: #d8d2ff;
    --instant-quote-selected-accent-soft: rgba(142, 118, 255, 0.24);
    --instant-quote-selected-line: rgba(180, 166, 255, 0.14);
    --instant-quote-selected-line-strong: rgba(162, 139, 255, 0.34);
    --instant-quote-selected-text: rgba(248, 246, 255, 0.96);
    --instant-quote-selected-muted: rgba(238, 232, 255, 0.72);
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
    width: min(1040px, calc(100vw - 38px)) !important;
    max-height: min(94svh, 850px) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
    background:
        radial-gradient(circle at 12% 10%, rgba(128, 99, 255, 0.2), transparent 42%),
        radial-gradient(circle at 88% 16%, rgba(77, 91, 255, 0.12), transparent 38%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.58) 45%, rgba(0, 0, 0, 0.82)),
        linear-gradient(180deg, rgba(17, 18, 25, 0.62), rgba(2, 3, 8, 0.88)) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
    display: grid !important;
    grid-template-columns: minmax(240px, 0.78fr) minmax(0, 1.22fr) !important;
    grid-template-areas:
        "head fields"
        "head consent"
        "head notice"
        "head submit" !important;
    gap: 12px 24px !important;
    align-items: center !important;
    padding: 26px !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
    grid-template-areas:
        "head picker"
        "head fields"
        "head consent"
        "head notice"
        "head submit" !important;
    grid-template-columns: minmax(245px, 0.74fr) minmax(0, 1.26fr) !important;
    align-items: stretch !important;
    padding: 24px 26px !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head {
    grid-area: head !important;
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-self: stretch !important;
    align-content: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 22px !important;
    border: 1px solid rgba(255, 255, 255, 0.055) !important;
    border-left-color: rgba(154, 132, 255, 0.18) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(ellipse 94% 62% at 46% 0%, rgba(255, 255, 255, 0.115), rgba(255, 255, 255, 0.028) 48%, rgba(255, 255, 255, 0) 74%),
        radial-gradient(ellipse 68% 54% at 16% 10%, rgba(132, 99, 255, 0.28), transparent 62%),
        radial-gradient(ellipse 58% 44% at 90% 6%, rgba(70, 84, 255, 0.2), transparent 66%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014) 46%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.82) !important;
    box-shadow:
        0 20px 48px rgba(0, 0, 0, 0.5),
        0 0 26px rgba(85, 91, 220, 0.11),
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 0 0 1px rgba(255, 255, 255, 0.018),
        inset 0 -24px 40px rgba(0, 0, 0, 0.38) !important;
    overflow: hidden !important;
    isolation: isolate !important;
    -webkit-backdrop-filter: blur(10px) saturate(1.18) !important;
    backdrop-filter: blur(10px) saturate(1.18) !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background:
        linear-gradient(115deg, rgba(255, 255, 255, 0.09), transparent 32%),
        linear-gradient(290deg, rgba(113, 91, 255, 0.16), transparent 42%) !important;
    opacity: 0.72 !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head::after {
    content: "ABC will review the basics.";
    display: block;
    max-width: 240px;
    margin-top: 12px;
    color: var(--instant-quote-selected-muted);
    font-family: 'Inter', Arial, sans-serif;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.38;
    text-transform: none;
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-head::after {
    content: "Pick a time and send the basics.";
}

body.page-product .instant-quote-modal .instant-quote-form-head > span,
body.page-product .instant-quote-modal .instant-booking-panel-label {
    color: var(--instant-quote-selected-accent) !important;
    font-size: 11px !important;
    letter-spacing: 0 !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head h4 {
    max-width: 250px !important;
    color: var(--instant-quote-selected-text) !important;
    font-size: clamp(28px, 3.2vw, 40px) !important;
    line-height: 0.98 !important;
    letter-spacing: 0 !important;
}

body.page-product .instant-quote-modal .instant-quote-form-grid {
    grid-area: fields !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.page-product .instant-quote-modal .instant-quote-form-grid label {
    grid-column: span 1 !important;
}

body.page-product .instant-quote-modal .instant-quote-form-grid .instant-quote-wide,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid .instant-quote-wide {
    grid-column: 1 / -1 !important;
}

body.page-product .instant-quote-modal .instant-quote-form-grid label > span {
    color: rgba(238, 232, 255, 0.8) !important;
    font-size: 10.5px !important;
    letter-spacing: 0 !important;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select,
body.page-product .instant-quote-modal .instant-quote-form textarea,
body.page-product .instant-quote-modal .instant-select-trigger,
body.page-product .instant-booking-menu-button {
    border-color: rgba(255, 255, 255, 0.07) !important;
    border-radius: 12px !important;
    background:
        radial-gradient(ellipse 100% 82% at 50% 0%, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.022) 52%, rgba(255, 255, 255, 0) 76%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012) 46%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.5) !important;
    color: var(--instant-quote-selected-text) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        inset 0 -12px 22px rgba(0, 0, 0, 0.22),
        0 10px 22px rgba(0, 0, 0, 0.22) !important;
    -webkit-backdrop-filter: blur(7px) saturate(1.1) !important;
    backdrop-filter: blur(7px) saturate(1.1) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input:focus,
body.page-product .instant-quote-modal .instant-quote-form textarea:focus,
body.page-product .instant-quote-modal .instant-select-trigger:focus-visible,
body.page-product .instant-booking-menu-button:focus-visible {
    border-color: var(--instant-quote-selected-line-strong) !important;
    box-shadow:
        0 0 0 3px rgba(160, 134, 255, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.1),
        0 12px 26px rgba(0, 0, 0, 0.22) !important;
}

body.page-product .instant-quote-modal .instant-select-trigger i,
body.page-product .instant-booking-menu-button i {
    border-right-color: var(--instant-quote-selected-accent) !important;
    border-bottom-color: var(--instant-quote-selected-accent) !important;
}

body.page-product .instant-quote-modal .instant-select-options,
body.page-product .instant-booking-menu {
    border-color: var(--instant-quote-selected-line-strong) !important;
    background:
        linear-gradient(180deg, rgba(31, 27, 52, 0.98), rgba(9, 8, 20, 0.98)),
        #090814 !important;
    box-shadow:
        0 24px 48px rgba(0, 0, 0, 0.52),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

body.page-product .instant-quote-modal .instant-select-option,
body.page-product .instant-booking-menu-option {
    color: rgba(248, 246, 255, 0.92) !important;
}

body.page-product .instant-quote-modal .instant-select-option:hover,
body.page-product .instant-quote-modal .instant-select-option.is-active,
body.page-product .instant-quote-modal .instant-select-option.is-selected,
body.page-product .instant-booking-menu-option:hover,
body.page-product .instant-booking-menu-option[aria-pressed="true"] {
    color: #fff !important;
    background: linear-gradient(135deg, rgba(151, 126, 255, 0.36), rgba(67, 76, 255, 0.18)) !important;
}

body.page-product .instant-quote-modal .instant-booking-picker {
    grid-area: picker !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-product .instant-quote-modal .instant-booking-slots {
    gap: 12px !important;
}

body.page-product .instant-booking-menu-button {
    height: 42px !important;
}

body.page-product .instant-quote-modal .instant-booking-picker-head > span,
body.page-product .instant-quote-modal .instant-booking-summary {
    color: var(--instant-quote-selected-muted) !important;
}

body.page-product .instant-quote-modal .instant-booking-picker-head > strong {
    color: var(--instant-quote-selected-text) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent {
    grid-area: consent !important;
    align-items: center !important;
    grid-template-columns: 16px minmax(0, 1fr) !important;
    gap: 10px !important;
    color: var(--instant-quote-selected-muted) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    align-self: center !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    margin: 0 !important;
    transform: translateY(1px) !important;
    border-color: var(--instant-quote-selected-line-strong) !important;
    border-radius: 4px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015)),
        rgba(0, 0, 0, 0.72) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked {
    border-color: rgba(160, 134, 255, 0.95) !important;
    background: linear-gradient(135deg, rgba(154, 132, 255, 0.96), rgba(70, 84, 255, 0.78)) !important;
}

body.page-product .instant-quote-modal .instant-quote-notice {
    grid-area: notice !important;
}

body.page-product .instant-quote-modal .instant-quote-submit {
    grid-area: submit !important;
    position: relative !important;
    min-height: 48px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.075) !important;
    border-left-color: rgba(154, 132, 255, 0.2) !important;
    border-right-color: rgba(92, 105, 255, 0.18) !important;
    color: rgba(248, 246, 255, 0.96) !important;
    background:
        radial-gradient(ellipse 100% 72% at 50% 0%, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.03) 48%, rgba(255, 255, 255, 0) 74%),
        radial-gradient(ellipse 72% 120% at 50% 0%, rgba(136, 107, 255, 0.25), transparent 64%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014) 44%, rgba(255, 255, 255, 0)),
        rgba(0, 0, 0, 0.66) !important;
    box-shadow:
        0 16px 36px rgba(0, 0, 0, 0.42),
        0 0 20px rgba(83, 91, 220, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 -16px 28px rgba(0, 0, 0, 0.34) !important;
    overflow: hidden !important;
    -webkit-backdrop-filter: blur(8px) saturate(1.12) !important;
    backdrop-filter: blur(8px) saturate(1.12) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-submit:focus-visible {
    transform: translateY(-1px) !important;
    box-shadow: 0 18px 42px rgba(160, 134, 255, 0.28) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit:disabled {
    border-color: rgba(255, 255, 255, 0.06) !important;
    border-left-color: rgba(154, 132, 255, 0.16) !important;
    border-right-color: rgba(92, 105, 255, 0.13) !important;
    color: rgba(248, 246, 255, 0.56) !important;
    background:
        radial-gradient(ellipse 100% 72% at 50% 0%, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.022) 48%, rgba(255, 255, 255, 0) 74%),
        radial-gradient(ellipse 72% 120% at 50% 0%, rgba(132, 99, 255, 0.14), transparent 62%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.012)),
        rgba(0, 0, 0, 0.68) !important;
    opacity: 1 !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 10px 22px rgba(0, 0, 0, 0.22) !important;
    transform: none !important;
}

@media (max-width: 760px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        height: auto !important;
        min-height: 0 !important;
        align-self: start !important;
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "head"
            "picker"
            "fields"
            "consent"
            "notice"
            "submit" !important;
        gap: 12px !important;
        padding: 18px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) {
        grid-template-areas:
            "head"
            "fields"
            "consent"
            "notice"
            "submit" !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        display: grid !important;
        grid-template-columns: 1fr !important;
        align-content: start !important;
        justify-content: stretch !important;
        gap: 8px !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 18px !important;
        border-radius: 16px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        max-width: none !important;
        font-size: 28px !important;
        margin: 0 !important;
        line-height: 1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head::after {
        max-width: none !important;
        margin-top: 0 !important;
        font-size: 11.5px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        grid-template-columns: minmax(150px, 0.55fr) minmax(0, 1.45fr) !important;
        gap: 6px 12px !important;
        padding: 8px 10px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        padding: 12px !important;
        border-radius: 12px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 18px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head::after {
        margin-top: 7px !important;
        font-size: 9px !important;
        line-height: 1.18 !important;
    }
}

/* Instant Quote glass polish: match the clearer Call/Compare resource-button glass. */
body.page-product .instant-quote-modal .instant-quote-form-head {
    border-color: rgba(149, 132, 255, 0.16) !important;
    border-left-color: rgba(148, 126, 255, 0.22) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.014) 44%, rgba(255, 255, 255, 0.004)),
        radial-gradient(ellipse 84% 82% at 18% 8%, rgba(140, 104, 255, 0.115), transparent 64%),
        radial-gradient(ellipse 62% 70% at 92% 12%, rgba(73, 88, 255, 0.105), transparent 66%),
        rgba(0, 0, 0, 0.44) !important;
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.52),
        0 0 0 1px rgba(139, 126, 255, 0.035),
        0 0 34px rgba(87, 93, 230, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 0 0 1px rgba(149, 132, 255, 0.025),
        inset 0 -26px 44px rgba(0, 0, 0, 0.28) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.34) !important;
    backdrop-filter: blur(18px) saturate(1.34) !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head::before {
    background:
        linear-gradient(112deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.028) 30%, transparent 58%),
        linear-gradient(290deg, rgba(111, 91, 255, 0.105), transparent 46%) !important;
    opacity: 0.52 !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head > span,
body.page-product .instant-quote-modal .instant-booking-panel-label {
    color: rgba(150, 130, 255, 0.96) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input,
body.page-product .instant-quote-modal .instant-quote-form select,
body.page-product .instant-quote-modal .instant-quote-form textarea,
body.page-product .instant-quote-modal .instant-select-trigger,
body.page-product .instant-booking-menu-button {
    border-color: rgba(149, 132, 255, 0.13) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018) 42%, rgba(255, 255, 255, 0.004)),
        rgba(0, 0, 0, 0.58) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.075),
        inset 0 -14px 24px rgba(0, 0, 0, 0.24),
        0 10px 24px rgba(0, 0, 0, 0.24) !important;
    -webkit-backdrop-filter: blur(10px) saturate(1.18) !important;
    backdrop-filter: blur(10px) saturate(1.18) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input:focus,
body.page-product .instant-quote-modal .instant-quote-form textarea:focus,
body.page-product .instant-quote-modal .instant-select-trigger:focus-visible,
body.page-product .instant-booking-menu-button:focus-visible {
    border-color: rgba(150, 130, 255, 0.42) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.17),
        inset 0 -14px 24px rgba(0, 0, 0, 0.24),
        0 0 0 1px rgba(150, 130, 255, 0.15),
        0 12px 28px rgba(0, 0, 0, 0.3) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit {
    min-height: 46px !important;
    border-color: rgba(149, 132, 255, 0.14) !important;
    border-left-color: rgba(148, 126, 255, 0.22) !important;
    border-radius: 12px !important;
    color: rgba(255, 255, 255, 0.92) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.045) 42%, rgba(255, 255, 255, 0.012)),
        radial-gradient(ellipse 74% 125% at 50% -12%, rgba(143, 117, 255, 0.24), transparent 62%),
        rgba(0, 0, 0, 0.7) !important;
    box-shadow:
        0 20px 46px rgba(0, 0, 0, 0.5),
        0 0 28px rgba(87, 93, 230, 0.13),
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        inset 0 -16px 28px rgba(0, 0, 0, 0.32) !important;
    -webkit-backdrop-filter: blur(12px) saturate(1.2) !important;
    backdrop-filter: blur(12px) saturate(1.2) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit::before {
    background:
        linear-gradient(110deg, transparent 22%, rgba(255, 255, 255, 0.14) 42%, rgba(255, 255, 255, 0.4) 50%, rgba(148, 126, 255, 0.16) 58%, transparent 80%) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-submit:focus-visible {
    border-color: rgba(150, 130, 255, 0.42) !important;
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.54),
        0 0 30px rgba(101, 111, 255, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

body.page-product .instant-quote-modal .instant-quote-submit:disabled {
    border-color: rgba(149, 132, 255, 0.12) !important;
    border-left-color: rgba(148, 126, 255, 0.18) !important;
    color: rgba(255, 255, 255, 0.64) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.028) 42%, rgba(255, 255, 255, 0.008)),
        radial-gradient(ellipse 74% 125% at 50% -12%, rgba(143, 117, 255, 0.14), transparent 62%),
        rgba(0, 0, 0, 0.68) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1.18 !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input {
    flex: 0 0 14px !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    align-self: center !important;
    margin: 0 !important;
    transform: translateY(-2px) !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
    border-radius: 4px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.015)),
        rgba(0, 0, 0, 0.7) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input:checked {
    border-color: rgba(150, 130, 255, 0.86) !important;
    background: linear-gradient(135deg, rgba(150, 130, 255, 0.96), rgba(75, 89, 255, 0.82)) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent span {
    line-height: 1.18 !important;
}

/* Instant Quote dropdown polish: mostly black glass with restrained blue-purple accent. */
body.page-product .instant-quote-modal .instant-select-options,
body.page-product .instant-quote-modal .instant-booking-menu,
body.page-product .instant-quote-modal .instant-quote-email-suggestions {
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border-color: rgba(128, 144, 255, 0.24) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014) 34%, rgba(255, 255, 255, 0.004)),
        radial-gradient(ellipse 78% 58% at 50% 0%, rgba(88, 104, 255, 0.055), transparent 66%),
        rgba(0, 0, 0, 0.95) !important;
    box-shadow:
        0 24px 52px rgba(0, 0, 0, 0.58),
        0 0 0 1px rgba(128, 144, 255, 0.055),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.22) !important;
    backdrop-filter: blur(16px) saturate(1.22) !important;
    scrollbar-color: rgba(128, 112, 255, 0.78) rgba(0, 0, 0, 0.36) !important;
    scrollbar-width: thin !important;
    scrollbar-gutter: stable !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar {
    width: 9px !important;
    height: 9px !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-button:single-button,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-button:single-button {
    display: block !important;
    width: 9px !important;
    height: 9px !important;
    border-radius: 999px !important;
    background-color: rgba(0, 0, 0, 0.42) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 7px 7px !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-button:single-button:vertical:decrement,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-button:single-button:vertical:decrement {
    background-image:
        linear-gradient(135deg, transparent 50%, rgba(188, 196, 255, 0.95) 51% 62%, transparent 63%),
        linear-gradient(45deg, transparent 50%, rgba(188, 196, 255, 0.95) 51% 62%, transparent 63%) !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-button:single-button:vertical:increment,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-button:single-button:vertical:increment {
    background-image:
        linear-gradient(315deg, transparent 50%, rgba(188, 196, 255, 0.95) 51% 62%, transparent 63%),
        linear-gradient(225deg, transparent 50%, rgba(188, 196, 255, 0.95) 51% 62%, transparent 63%) !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-track,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-track {
    margin: 7px 0 !important;
    border-radius: 999px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01)),
        rgba(0, 0, 0, 0.38) !important;
    box-shadow: inset 0 0 0 1px rgba(128, 144, 255, 0.08) !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-thumb,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-thumb {
    min-height: 42px !important;
    border: 2px solid rgba(0, 0, 0, 0.62) !important;
    border-radius: 999px !important;
    background:
        linear-gradient(180deg, rgba(173, 181, 255, 0.95), rgba(118, 100, 255, 0.86) 48%, rgba(74, 98, 220, 0.9)),
        rgba(110, 112, 255, 0.85) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.38),
        0 0 14px rgba(105, 126, 255, 0.26) !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-thumb:hover,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-thumb:hover {
    background:
        linear-gradient(180deg, rgba(203, 208, 255, 1), rgba(143, 114, 255, 0.95) 48%, rgba(84, 120, 238, 0.98)),
        rgba(130, 128, 255, 0.95) !important;
}

body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar-corner,
body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar-corner {
    background: transparent !important;
}

body.page-product .instant-quote-modal .instant-menu-scrollbar {
    --instant-menu-scrollbar-height: 0px;
    --instant-menu-thumb-height: 42px;
    --instant-menu-thumb-top: 0px;
    display: none;
}

@media (max-width: 1024px) {
    body.page-product .instant-quote-modal .instant-select-options,
    body.page-product .instant-quote-modal .instant-booking-menu {
        padding-right: 20px !important;
        -ms-overflow-style: none !important;
        scrollbar-width: none !important;
    }

    body.page-product .instant-quote-modal .instant-select-options::-webkit-scrollbar,
    body.page-product .instant-quote-modal .instant-booking-menu::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar {
        position: absolute;
        top: calc(100% + 6px);
        right: 7px;
        z-index: 62;
        width: 9px;
        height: var(--instant-menu-scrollbar-height);
        grid-template-rows: 9px minmax(0, 1fr) 9px;
        pointer-events: none;
    }

    body.page-product .instant-quote-modal .instant-select.is-drop-up .instant-menu-scrollbar,
    body.page-product .instant-quote-modal .instant-booking-menu-panel.is-drop-up .instant-menu-scrollbar {
        top: auto;
        bottom: calc(100% + 6px);
    }

    body.page-product .instant-quote-modal .instant-select.is-open .instant-menu-scrollbar.is-scrollable,
    body.page-product .instant-quote-modal .instant-booking-menu-panel.is-open .instant-menu-scrollbar.is-scrollable {
        display: grid;
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-button {
        position: relative;
        display: block;
        width: 9px;
        height: 9px;
        border-radius: 999px;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
            rgba(0, 0, 0, 0.54);
        box-shadow:
            inset 0 0 0 1px rgba(128, 144, 255, 0.12),
            0 0 7px rgba(105, 126, 255, 0.16);
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-button::before,
    body.page-product .instant-quote-modal .instant-menu-scrollbar-button::after {
        content: "";
        position: absolute;
        left: 50%;
        width: 4px;
        height: 2px;
        border-radius: 999px;
        background: rgba(196, 202, 255, 0.96);
        transform-origin: center;
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-button-up::before {
        top: 4px;
        transform: translateX(-70%) rotate(-42deg);
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-button-up::after {
        top: 4px;
        transform: translateX(-30%) rotate(42deg);
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-button-down::before {
        bottom: 4px;
        transform: translateX(-70%) rotate(42deg);
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-button-down::after {
        bottom: 4px;
        transform: translateX(-30%) rotate(-42deg);
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-track {
        position: relative;
        display: block;
        width: 9px;
        min-height: 1px;
        margin: 1px 0;
        border-radius: 999px;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01)),
            rgba(0, 0, 0, 0.42);
        box-shadow: inset 0 0 0 1px rgba(128, 144, 255, 0.08);
    }

    body.page-product .instant-quote-modal .instant-menu-scrollbar-thumb {
        position: absolute;
        top: var(--instant-menu-thumb-top);
        left: 1px;
        width: 7px;
        height: var(--instant-menu-thumb-height);
        min-height: 36px;
        border-radius: 999px;
        background:
            linear-gradient(180deg, rgba(173, 181, 255, 0.95), rgba(118, 100, 255, 0.86) 48%, rgba(74, 98, 220, 0.9)),
            rgba(110, 112, 255, 0.85);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.38),
            0 0 14px rgba(105, 126, 255, 0.26);
    }
}

body.page-product .instant-quote-modal .instant-select-option,
body.page-product .instant-quote-modal .instant-booking-menu-option {
    color: rgba(244, 245, 255, 0.88) !important;
    background: transparent !important;
}

body.page-product .instant-quote-modal .instant-select-option:hover,
body.page-product .instant-quote-modal .instant-select-option.is-active,
body.page-product .instant-quote-modal .instant-select-option.is-selected,
body.page-product .instant-quote-modal .instant-booking-menu-option:hover,
body.page-product .instant-quote-modal .instant-booking-menu-option[aria-pressed="true"] {
    color: rgba(255, 255, 255, 0.96) !important;
    background:
        linear-gradient(135deg, rgba(92, 128, 255, 0.34), rgba(135, 86, 255, 0.22)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.028)),
        rgba(0, 0, 0, 0.72) !important;
    box-shadow:
        inset 0 0 0 1px rgba(140, 166, 255, 0.28),
        0 0 18px rgba(92, 128, 255, 0.16),
        0 8px 18px rgba(0, 0, 0, 0.22) !important;
}

/* Instant Quote atmosphere: match Call Our Team outer background and popup glow in every state. */
body.page-product #instant-quote-backdrop.find-doctor-gate-backdrop.is-open {
    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.instant-quote-modal {
    border-color: rgba(255, 255, 255, 0.052) !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;
}

/* Instant Quote open animation: mirror Call Our Team image reveal and content entrance. */
body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/INSTANT%20QUOTE.jpg') 50% 45% / cover no-repeat !important;
    transition:
        filter 0.92s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.92s cubic-bezier(0.16, 1, 0.3, 1),
        transform 0.92s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-body::after {
    transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-body > * {
    transition:
        opacity 0.92s cubic-bezier(0.16, 1, 0.3, 1),
        transform 0.92s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.resource-pop-opening .find-doctor-gate-body::before {
    opacity: 0.92 !important;
    filter: blur(0px) grayscale(0) saturate(1) brightness(0.84) contrast(1.02) !important;
    transform: scale(1) !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.resource-pop-opening .find-doctor-gate-body::after {
    opacity: 0.12 !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.resource-pop-opening .find-doctor-gate-body > * {
    opacity: 0 !important;
    transform: translateY(16px) !important;
}

/* Instant Quote request state: same split rhythm as Schedule Call, with blue-first glass accent. */
body.page-product .instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .find-doctor-gate-footer {
    display: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
    grid-template-columns: minmax(245px, 0.74fr) minmax(0, 1.26fr) !important;
    gap: 12px 24px !important;
    align-items: stretch !important;
    padding: 24px 26px !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .find-doctor-gate-body::after {
    background:
        radial-gradient(ellipse 70% 74% at 12% 10%, rgba(42, 94, 255, 0.2), transparent 54%),
        radial-gradient(ellipse 46% 42% at 70% 0%, rgba(96, 88, 255, 0.065), transparent 62%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.58) 45%, rgba(0, 0, 0, 0.82)),
        linear-gradient(180deg, rgba(13, 17, 28, 0.64), rgba(2, 3, 8, 0.88)) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-form-head {
    border-color: rgba(112, 150, 255, 0.16) !important;
    border-left-color: rgba(92, 128, 255, 0.24) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.014) 44%, rgba(255, 255, 255, 0.004)),
        radial-gradient(ellipse 90% 86% at 14% 8%, rgba(42, 94, 255, 0.15), transparent 66%),
        radial-gradient(ellipse 54% 60% at 72% 8%, rgba(102, 86, 255, 0.052), transparent 68%),
        rgba(0, 0, 0, 0.44) !important;
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.52),
        0 0 0 1px rgba(92, 128, 255, 0.04),
        0 0 34px rgba(75, 116, 255, 0.11),
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 0 0 1px rgba(92, 128, 255, 0.025),
        inset 0 -26px 44px rgba(0, 0, 0, 0.28) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-form-head::before {
    background:
        linear-gradient(112deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.028) 30%, transparent 58%),
        linear-gradient(290deg, rgba(42, 94, 255, 0.13), transparent 48%) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-form-head > span,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-form-grid label > span {
    color: rgba(174, 176, 205, 0.78) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) input,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) textarea,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-select-trigger {
    border-color: rgba(74, 88, 132, 0.13) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.055),
        inset 0 -14px 24px rgba(0, 0, 0, 0.24),
        0 10px 24px rgba(0, 0, 0, 0.24) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) input:focus,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) textarea:focus,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-select-trigger:focus-visible {
    border-color: rgba(86, 106, 178, 0.22) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.065),
        inset 0 -14px 24px rgba(0, 0, 0, 0.24),
        0 0 0 1px rgba(72, 92, 166, 0.08),
        0 12px 28px rgba(0, 0, 0, 0.32) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-submit {
    border-color: rgba(112, 150, 255, 0.14) !important;
    border-left-color: rgba(92, 128, 255, 0.24) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.045) 42%, rgba(255, 255, 255, 0.012)),
        radial-gradient(ellipse 74% 125% at 50% -12%, rgba(78, 123, 255, 0.26), transparent 62%),
        rgba(0, 0, 0, 0.7) !important;
    box-shadow:
        0 20px 46px rgba(0, 0, 0, 0.5),
        0 0 30px rgba(75, 116, 255, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        inset 0 -16px 28px rgba(0, 0, 0, 0.32) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-submit:focus-visible {
    border-color: rgba(112, 150, 255, 0.42) !important;
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.54),
        0 0 32px rgba(78, 123, 255, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

/* Instant Quote form breathing room: wider/taller body without changing header or input height. */
@media (min-width: 761px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(1120px, calc(100vw - 56px)) !important;
        max-height: min(94svh, 900px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        gap: 16px 30px !important;
        padding: 30px 34px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: minmax(275px, 0.74fr) minmax(0, 1.26fr) !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        gap: 14px 16px !important;
    }

    body.page-product .instant-quote-modal .instant-booking-slots {
        gap: 16px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 74px !important;
        max-height: 110px !important;
    }
}

@media (min-width: 761px) and (max-width: 900px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(760px, calc(100vw - 32px)) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: minmax(240px, 0.58fr) minmax(0, 1.42fr) !important;
        gap: 16px 18px !important;
        padding: 28px 32px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        padding: 26px 22px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 28px !important;
        line-height: 0.98 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        gap: 12px 14px !important;
    }
}

/* Request Quote responsive polish: scroll-safe mobile/tablet, compact landscape, blue-purple form CTAs. */
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-submit {
    border-color: rgba(132, 154, 255, 0.42) !important;
    border-left-color: rgba(160, 130, 255, 0.54) !important;
    color: rgba(255, 255, 255, 0.98) !important;
    background:
        radial-gradient(ellipse 90% 120% at 50% -18%, rgba(255, 255, 255, 0.2), transparent 58%),
        linear-gradient(135deg, rgba(84, 124, 255, 0.9), rgba(143, 91, 255, 0.78) 52%, rgba(24, 20, 64, 0.92)),
        rgba(0, 0, 0, 0.58) !important;
    box-shadow:
        0 18px 44px rgba(0, 0, 0, 0.48),
        0 0 30px rgba(93, 119, 255, 0.28),
        0 0 18px rgba(146, 100, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        inset 0 -16px 30px rgba(0, 0, 0, 0.32) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-submit {
    border-color: rgba(93, 130, 210, 0.34) !important;
    border-left-color: rgba(82, 119, 196, 0.44) !important;
    color: rgba(245, 248, 255, 0.96) !important;
    background:
        radial-gradient(ellipse 88% 120% at 18% -18%, rgba(92, 128, 214, 0.26), transparent 58%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.026) 44%, rgba(255, 255, 255, 0.008)),
        linear-gradient(135deg, rgba(32, 48, 86, 0.78), rgba(11, 15, 28, 0.94) 58%, rgba(0, 0, 0, 0.86)),
        rgba(0, 0, 0, 0.72) !important;
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.48),
        0 0 22px rgba(74, 108, 184, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        inset 0 -16px 30px rgba(0, 0, 0, 0.34) !important;
}

body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-submit:hover,
body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form) .instant-quote-submit:focus-visible {
    border-color: rgba(112, 150, 230, 0.48) !important;
    box-shadow:
        0 20px 46px rgba(0, 0, 0, 0.52),
        0 0 26px rgba(74, 108, 184, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}

body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-submit:disabled {
    border-color: rgba(118, 137, 255, 0.25) !important;
    border-left-color: rgba(150, 122, 255, 0.32) !important;
    color: rgba(255, 255, 255, 0.72) !important;
    background:
        radial-gradient(ellipse 88% 120% at 50% -18%, rgba(255, 255, 255, 0.13), transparent 58%),
        linear-gradient(135deg, rgba(56, 78, 164, 0.7), rgba(88, 58, 168, 0.58) 54%, rgba(5, 5, 16, 0.92)),
        rgba(0, 0, 0, 0.62) !important;
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.34),
        0 0 18px rgba(93, 119, 255, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

@media (max-width: 1024px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        overflow-y: auto !important;
        overscroll-behavior: contain !important;
        scrollbar-width: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::-webkit-scrollbar,
    body.page-product .instant-quote-modal .instant-quote-form::-webkit-scrollbar {
        display: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        height: auto !important;
        min-height: 100% !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
        height: auto !important;
        min-height: 100% !important;
        overflow: visible !important;
        scrollbar-width: none !important;
    }
}

@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        top: calc(18px + env(safe-area-inset-top, 0px)) !important;
        bottom: calc(14px + env(safe-area-inset-bottom, 0px)) !important;
        width: min(100% - 18px, 450px) !important;
        max-height: calc(100dvh - 32px) !important;
        transform: translateX(-50%) scale(1) !important;
        --abc-popup-rest-transform: translateX(-50%) scale(1);
        --abc-popup-start-transform: translateX(-50%) translateY(12px) scale(0.982);
        --abc-popup-lift-transform: translateX(-50%) translateY(-2px) scale(1.004);
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        border-radius: 0 0 18px 18px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        gap: 10px !important;
        padding: 14px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 25px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head::after {
        font-size: 10.5px !important;
        line-height: 1.28 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-select-trigger,
    body.page-product .instant-booking-menu-button {
        height: 39px !important;
        border-radius: 10px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 50px !important;
        max-height: 68px !important;
        border-radius: 10px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        gap: 7px !important;
        font-size: 9px !important;
        line-height: 1.12 !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        top: calc(6px + env(safe-area-inset-top, 0px)) !important;
        bottom: calc(6px + env(safe-area-inset-bottom, 0px)) !important;
        width: min(1000px, calc(100vw - 12px)) !important;
        max-height: calc(100dvh - 12px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-head {
        min-height: 44px !important;
        padding: 0 12px 0 16px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        overflow-y: auto !important;
        scrollbar-width: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        grid-template-columns: minmax(178px, 0.62fr) minmax(0, 1.38fr) !important;
        gap: 5px 12px !important;
        padding: 8px 10px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        padding: 14px 13px !important;
        border-radius: 10px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 19px !important;
        line-height: 1.02 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head::after {
        margin-top: 8px !important;
        font-size: 9px !important;
        line-height: 1.24 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        gap: 4px 7px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid label {
        gap: 3px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid label > span,
    body.page-product .instant-quote-modal .instant-booking-panel-label {
        font-size: 7.2px !important;
        line-height: 1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-select-trigger,
    body.page-product .instant-booking-menu-button {
        height: 28px !important;
        border-radius: 7px !important;
        font-size: 10px !important;
        padding: 0 8px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 29px !important;
        max-height: 32px !important;
        border-radius: 7px !important;
        font-size: 10px !important;
        padding: 6px 8px !important;
    }

    body.page-product .instant-quote-modal .instant-booking-picker,
    body.page-product .instant-quote-modal .instant-booking-slots {
        gap: 5px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        align-items: flex-start !important;
        gap: 6px !important;
        font-size: clamp(7px, 1.55vw, 8px) !important;
        line-height: 1.08 !important;
        white-space: nowrap !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        flex-basis: 13px !important;
        width: 13px !important;
        height: 13px !important;
        min-width: 13px !important;
        transform: translateY(1px) !important;
    }

    body.page-product .instant-quote-modal .instant-quote-notice {
        min-height: 8px !important;
        font-size: 8px !important;
        line-height: 1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-submit {
        min-height: 30px !important;
        border-radius: 8px !important;
        font-size: 8.5px !important;
    }
}

/* Request Quote mobile correction: fit phone portrait and remove landscape dead space. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        top: 50% !important;
        bottom: auto !important;
        height: auto !important;
        min-height: 0 !important;
        width: min(100% - 18px, 450px) !important;
        max-height: calc(100dvh - 20px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
        --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 .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        min-height: 54px !important;
        padding: 0 12px 0 18px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        align-items: start !important;
        height: auto !important;
        justify-items: stretch !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 74px) !important;
        overflow: hidden !important;
        place-items: start stretch !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        align-items: stretch !important;
        height: auto !important;
        min-height: 0 !important;
        justify-content: flex-start !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        align-self: start !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "head"
            "picker"
            "fields"
            "consent"
            "notice"
            "submit" !important;
        height: auto !important;
        min-height: 0 !important;
        gap: 7px !important;
        padding: 10px 12px 12px !important;
        overflow: visible !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-areas:
            "head"
            "fields"
            "consent"
            "notice"
            "submit" !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "head"
            "fields"
            "consent"
            "notice"
            "submit" !important;
        padding: 10px 12px 12px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        gap: 4px !important;
        padding: 11px 12px !important;
        border-radius: 12px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 21px !important;
        line-height: 0.96 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head::after {
        font-size: 9px !important;
        line-height: 1.14 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head > span {
        font-size: 8px !important;
        line-height: 1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 5px 7px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid label {
        gap: 2px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid label > span,
    body.page-product .instant-quote-modal .instant-booking-panel-label {
        font-size: 7.4px !important;
        line-height: 1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-select-trigger,
    body.page-product .instant-booking-menu-button {
        height: 30px !important;
        border-radius: 8px !important;
        font-size: 10.5px !important;
        padding: 0 8px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 35px !important;
        max-height: 38px !important;
        border-radius: 8px !important;
        font-size: 10.5px !important;
        padding: 6px 8px !important;
    }

    body.page-product .instant-quote-modal .instant-booking-picker,
    body.page-product .instant-quote-modal .instant-booking-slots {
        gap: 5px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form:not([hidden]) .instant-booking-slots {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: start !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form:not([hidden]) .instant-booking-summary,
    body.page-product .instant-quote-modal .instant-quote-booking-form:not([hidden]) .instant-booking-empty {
        grid-column: 1 / -1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form:not([hidden]) .instant-booking-menu-panel {
        min-width: 0 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        align-items: center !important;
        gap: 5px !important;
        font-size: 7.35px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        flex: 0 0 12px !important;
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        transform: none !important;
    }

    body.page-product .instant-quote-modal .instant-quote-notice {
        min-height: 6px !important;
        font-size: 8px !important;
        line-height: 1 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-submit {
        min-height: 34px !important;
        border-radius: 9px !important;
        font-size: 8.8px !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        top: 50% !important;
        bottom: auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 16px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
        --abc-popup-rest-transform: translate(-50%, -50%) scale(1);
        --abc-popup-start-transform: translate(-50%, calc(-50% + 10px)) scale(0.982);
        --abc-popup-lift-transform: translate(-50%, calc(-50% - 2px)) scale(1.004);
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 60px) !important;
        overflow: hidden !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        height: auto !important;
        min-height: 0 !important;
        justify-content: flex-start !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        align-self: start !important;
        align-items: start !important;
        height: auto !important;
        min-height: 0 !important;
        gap: 3px 12px !important;
        padding: 6px 10px 8px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head {
        align-self: stretch !important;
        align-content: center !important;
        padding: 12px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head h4 {
        font-size: 18px !important;
        line-height: 0.98 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form input,
    body.page-product .instant-quote-modal .instant-select-trigger,
    body.page-product .instant-booking-menu-button {
        height: 24px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 24px !important;
        max-height: 27px !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent {
        align-items: center !important;
        font-size: clamp(7px, 1.35vw, 7.8px) !important;
        min-height: 12px !important;
        height: 12px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        flex-basis: 12px !important;
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        transform: none !important;
    }

    body.page-product .instant-quote-modal .instant-quote-submit {
        min-height: 28px !important;
    }
}

@media (max-width: 960px) {
    body.page-product .instant-quote-modal .instant-quote-consent {
        align-items: center !important;
        display: flex !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        appearance: none !important;
        -webkit-appearance: none !important;
        align-self: center !important;
        border-radius: 3px !important;
        box-sizing: border-box !important;
        display: grid !important;
        flex: 0 0 12px !important;
        height: 12px !important;
        line-height: 1 !important;
        margin: 0 !important;
        min-width: 12px !important;
        padding: 0 !important;
        place-items: center !important;
        transform: translateY(1px) !important;
        width: 12px !important;
    }
}

/* Request Quote final landscape form spacing: narrower and less cramped. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(820px, calc(100vw - 56px)) !important;
        max-height: calc(100dvh - 24px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        box-sizing: border-box !important;
        height: auto !important;
        max-height: calc(100dvh - 64px) !important;
        padding: 22px 18px 32px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        width: 100% !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        gap: 7px 14px !important;
        padding: 0 !important;
        width: 100% !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        grid-template-columns: minmax(215px, 0.58fr) minmax(0, 1.42fr) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr) !important;
    }

    body.page-product .instant-quote-modal .instant-select-options,
    body.page-product .instant-quote-modal .instant-booking-menu {
        gap: 2px !important;
        padding: 4px 18px 4px 5px !important;
    }

    body.page-product .instant-quote-modal .instant-select-option,
    body.page-product .instant-quote-modal .instant-booking-menu-option {
        min-height: 27px !important;
        border-radius: 7px !important;
        font-size: 10.5px !important;
        line-height: 1.05 !important;
        padding: 0 8px !important;
    }
}

/* Request Quote intro parity: same shell metrics as Compare Plans. */
body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) {
    width: min(100% - 32px, 560px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: min(94svh, 640px) !important;
    grid-template-rows: auto auto auto !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
    min-height: 58px !important;
    height: auto !important;
    padding: 16px 20px 0 !important;
    align-items: initial !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-close {
    align-self: initial !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-body {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    min-height: 292px !important;
    height: auto !important;
    padding: 42px 30px 24px !important;
    place-items: center !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
    width: min(100%, 500px) !important;
    max-width: 500px !important;
    overflow: visible !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-actions {
    width: 100% !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-footer {
    min-height: 46px !important;
    height: 46px !important;
    padding: 8px 18px !important;
}

@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-body {
        min-height: 274px !important;
        padding: 36px 26px 20px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
        width: min(100%, 344px) !important;
        max-width: 344px !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) {
        top: 50% !important;
        bottom: auto !important;
        width: min(520px, calc(100vw - 44px)) !important;
        max-height: calc(100dvh - 44px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
        --abc-popup-rest-transform: translate(-50%, -50%) scale(1);
        --abc-popup-start-transform: translate(-50%, calc(-50% + 10px)) scale(0.982);
        --abc-popup-lift-transform: translate(-50%, calc(-50% - 2px)) scale(1.004);
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
        min-height: 48px !important;
        height: auto !important;
        padding: 10px 18px 8px 20px !important;
        align-items: initial !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-title {
        transform: translateY(8px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-body {
        min-height: 202px !important;
        height: 202px !important;
        max-height: 202px !important;
        padding: 6px 12px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
        width: 494px !important;
        max-width: 100% !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-copy {
        max-width: 410px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-actions {
        width: calc(100% - 28px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-footer {
        min-height: 36px !important;
        height: 36px !important;
        padding: 6px 14px 9px !important;
    }
}

@media (max-width: 1180px) {
    body.page-product .instant-quote-modal .instant-quote-form-head::after {
        content: "ABC will review the basics." !important;
        white-space: normal !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-head::after {
        content: "Pick a time and send the basics." !important;
        white-space: normal !important;
    }
}

/* Request Quote sideways form correction: match booking spacing and checkbox alignment. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-columns: minmax(215px, 0.58fr) minmax(0, 1.42fr) !important;
        gap: 7px 14px !important;
        padding: 0 !important;
        width: 100% !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-head > span {
        display: block !important;
        margin-bottom: 4px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-consent input {
        flex: 0 0 12px !important;
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        min-height: 12px !important;
        max-width: 12px !important;
        max-height: 12px !important;
        padding: 0 !important;
        transform: none !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input {
        flex: 0 0 12px !important;
        inline-size: 12px !important;
        block-size: 12px !important;
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        min-height: 12px !important;
        max-width: 12px !important;
        max-height: 12px !important;
        padding: 0 !important;
        transform: none !important;
    }
}

/* Request Quote field outline parity: plain fields match dropdown/textarea glass. */
body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]) {
    border-color: rgba(149, 132, 255, 0.13) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.018) 42%, rgba(255,255,255,0.004)),
        rgba(0,0,0,0.58) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.075),
        inset 0 -14px 24px rgba(0,0,0,0.24),
        0 10px 24px rgba(0,0,0,0.24) !important;
    -webkit-backdrop-filter: blur(10px) saturate(1.18) !important;
    backdrop-filter: blur(10px) saturate(1.18) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]):focus {
    border-color: rgba(150,130,255,0.42) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.17),
        inset 0 -14px 24px rgba(0,0,0,0.24),
        0 0 0 1px rgba(150,130,255,0.15),
        0 12px 28px rgba(0,0,0,0.3) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]):-webkit-autofill,
body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]):-webkit-autofill:hover,
body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]):-webkit-autofill:focus {
    -webkit-text-fill-color: rgba(255, 255, 255, 0.96) !important;
    caret-color: rgba(255, 255, 255, 0.96) !important;
    box-shadow:
        0 0 0 1000px rgba(0, 0, 0, 0.74) inset,
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 0 0 1px rgba(150, 130, 255, 0.2),
        0 12px 28px rgba(0, 0, 0, 0.3) !important;
    transition: background-color 9999s ease-out, color 9999s ease-out;
}

body.page-product .instant-quote-modal .instant-quote-form label.has-error input:not([type="checkbox"]):not([type="hidden"]),
body.page-product .instant-quote-modal .instant-quote-form label.has-error textarea,
body.page-product .instant-quote-modal .instant-quote-form label.has-error .instant-select-trigger,
body.page-product .instant-quote-modal .instant-quote-consent.has-error input[type="checkbox"] {
    border-color: rgba(248, 113, 113, 0.68) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.11),
        0 0 0 1px rgba(248, 113, 113, 0.2),
        0 10px 22px rgba(0, 0, 0, 0.3) !important;
}

/* Form intro spacing: keep eyebrow clear of the headline on every breakpoint. */
body.page-product .instant-quote-modal .instant-quote-form-head > span {
    display: block !important;
    margin-bottom: 5px !important;
}

/* Consent line: keep checkbox centered and compact on forms. */
body.page-product .instant-quote-modal .instant-quote-consent {
    align-items: center !important;
    gap: 7px !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 12px !important;
    inline-size: 12px !important;
    block-size: 12px !important;
    width: 12px !important;
    height: 12px !important;
    min-width: 12px !important;
    min-height: 12px !important;
    max-width: 12px !important;
    max-height: 12px !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
}

body.page-product .instant-quote-modal .instant-quote-consent span {
    display: block !important;
    min-width: 0 !important;
    font-size: 10px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

/* Landscape phone resource modals: centered panels instead of near-fullscreen sheets. */
@media (orientation: landscape) and (max-height: 560px) {
    body.page-product .provider-directory-gate.is-provider-directory-open,
    body.page-product .prescription-savings-gate.is-prescription-savings-open {
        top: 50% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        width: min(780px, calc(100vw - 80px)) !important;
        height: min(360px, calc(100dvh - 52px)) !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 52px) !important;
        border-radius: 17px !important;
        transform: translate(-50%, -50%) !important;
    }

    body.page-product .provider-directory-gate.is-provider-directory-open .find-doctor-gate-head,
    body.page-product .prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-head {
        min-height: 50px !important;
        padding: 0 12px 0 20px !important;
    }

    body.page-product .provider-directory-frame-shell,
    body.page-product .prescription-savings-card {
        border-radius: 0 0 17px 17px !important;
    }

    body.page-product .prescription-savings-card {
        grid-template-columns: minmax(210px, 0.9fr) minmax(310px, 1.1fr) !important;
        gap: 18px !important;
        padding: 18px 24px 24px !important;
    }
}

/* Request Quote vertical mobile form breathing room. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-title {
        transform: translateY(6px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-title {
        transform: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        gap: 9px !important;
        padding-top: 14px !important;
        padding-bottom: 18px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        gap: 7px 8px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]),
    body.page-product .instant-quote-modal .instant-select-trigger,
    body.page-product .instant-booking-menu-button {
        height: 33px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 40px !important;
        max-height: 44px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"] {
        appearance: none !important;
        -webkit-appearance: none !important;
        box-sizing: border-box !important;
        display: grid !important;
        flex: 0 0 12px !important;
        inline-size: 12px !important;
        block-size: 12px !important;
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        min-height: 12px !important;
        max-width: 12px !important;
        max-height: 12px !important;
        padding: 0 !important;
        margin: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }
}

/* Request Quote confirmation: phone portrait must show Add to calendar without scrolling. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) {
        top: 50% !important;
        bottom: auto !important;
        width: min(100% - 24px, 430px) !important;
        max-height: calc(100dvh - 32px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-head {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px !important;
        justify-content: end !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-title {
        display: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-body {
        box-sizing: border-box !important;
        min-height: 446px !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 14px 14px 18px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-flow {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-footer {
        display: none !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-success {
        box-sizing: border-box !important;
        gap: 8px !important;
        width: min(100%, 368px) !important;
        min-height: 360px !important;
        padding: 18px 16px 18px !important;
        align-content: center !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-success h4 {
        font-size: 27px !important;
        line-height: 0.92 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-success p {
        max-width: 34ch !important;
        font-size: 11px !important;
        line-height: 1.22 !important;
    }

    body.page-product .instant-quote-modal .instant-booking-success-time,
    body.page-product .instant-quote-modal .instant-booking-success-actions,
    body.page-product .instant-quote-modal .instant-booking-calendar-options {
        width: min(100%, 314px) !important;
    }

    body.page-product .instant-quote-modal .instant-booking-calendar-link {
        min-height: 36px !important;
    }
}

/* Request Quote forms: make text fields match the dropdown/textarea glass outline. */
body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]) {
    border-color: rgba(149, 132, 255, 0.13) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018) 42%, rgba(255, 255, 255, 0.004)),
        rgba(0, 0, 0, 0.58) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.075),
        inset 0 -14px 24px rgba(0, 0, 0, 0.24),
        0 10px 24px rgba(0, 0, 0, 0.24) !important;
    -webkit-backdrop-filter: blur(10px) saturate(1.18) !important;
    backdrop-filter: blur(10px) saturate(1.18) !important;
}

body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]):focus {
    border-color: rgba(150, 130, 255, 0.42) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.17),
        inset 0 -14px 24px rgba(0, 0, 0, 0.24),
        0 0 0 1px rgba(150, 130, 255, 0.15),
        0 12px 28px rgba(0, 0, 0, 0.3) !important;
}

/* Instant Quote intro header: keep the first step left-aligned unless a back button is active. */
body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
    padding: 16px 20px 0 !important;
    align-items: center !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-title {
    transform: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-close {
    align-self: center !important;
}

/* Instant Quote chrome correction: phone corners match resource popups. */
@media (max-width: 760px), (orientation: landscape) and (max-height: 560px) {
    body.page-product .find-doctor-gate.instant-quote-modal {
        border-radius: 17px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-body,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-body::before,
    body.page-product .find-doctor-gate.instant-quote-modal .find-doctor-gate-body::after {
        border-radius: 0 0 17px 17px !important;
    }
}

/* Portrait tablet intro title: keep the first step in the standard left-aligned header. */
@media (min-width: 761px) and (max-width: 1180px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
        padding: 16px 20px 0 !important;
        align-items: center !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-title {
        transform: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-close {
        align-self: center !important;
    }
}

/* Tablet landscape intro title: keep the first step in the standard left-aligned header. */
@media (min-width: 761px) and (max-width: 1180px) and (orientation: landscape) {
    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
        padding: 16px 20px 0 !important;
        align-items: center !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-title {
        transform: none !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-close {
        align-self: center !important;
    }
}

/* Form intro vertical rhythm: eyebrow, headline, and helper copy use one equal gap. */
body.page-product .instant-quote-modal .instant-quote-form-head {
    --instant-quote-head-stack-gap: 10px;
    gap: var(--instant-quote-head-stack-gap) !important;
}

body.page-product .instant-quote-modal .instant-quote-form-head > span,
body.page-product .instant-quote-modal .instant-booking-panel-label,
body.page-product .instant-quote-modal .instant-quote-form-head h4,
body.page-product .instant-quote-modal .instant-quote-form-head::after {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

@media (max-width: 1180px) {
    body.page-product .instant-quote-modal .instant-quote-form-head {
        --instant-quote-head-stack-gap: 7px;
    }
}

@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .instant-quote-modal .instant-quote-form-head {
        --instant-quote-head-stack-gap: 6px;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .instant-quote-modal .instant-quote-form-head {
        --instant-quote-head-stack-gap: 5px;
    }
}

/* Booking confirmation preview: keep Add to Calendar visible in short landscape. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) {
        top: 50% !important;
        bottom: auto !important;
        width: min(720px, calc(100vw - 24px)) !important;
        height: auto !important;
        max-height: calc(100dvh - 24px) !important;
        overflow: visible !important;
        transform: translate(-50%, -50%) scale(1) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-body {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 8px 14px 12px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-content,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-flow {
        height: auto !important;
        min-height: 0 !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-footer {
        display: none !important;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-success {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 5px;
        width: min(100%, 470px);
        padding: 8px 12px;
        text-align: center;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-success h4 {
        font-size: 22px;
        line-height: 0.94;
    }

    body.page-product .instant-quote-modal .instant-quote-booking-success p {
        max-width: 36ch;
        font-size: 10.5px;
        line-height: 1.25;
    }

    body.page-product .instant-quote-modal .instant-booking-success-time {
        padding: 7px 10px;
    }

    body.page-product .instant-quote-modal .instant-booking-success-time strong {
        font-size: 11px;
    }

    body.page-product .instant-quote-modal .instant-booking-success-actions {
        padding-top: 0;
    }

    body.page-product .instant-quote-modal .instant-booking-success-time,
    body.page-product .instant-quote-modal .instant-booking-success-actions,
    body.page-product .instant-quote-modal .instant-booking-calendar-options {
        width: min(100%, 286px);
    }

    body.page-product .instant-quote-modal .instant-booking-calendar-link {
        min-height: 30px;
        width: 100%;
        font-size: 8px;
    }

    body.page-product .instant-quote-modal .instant-booking-calendar-options {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        padding: 7px 8px;
    }

    body.page-product .instant-quote-modal .instant-booking-calendar-options a {
        min-height: 45px;
        padding: 5px 4px 4px;
        font-size: 5.8px;
    }

    body.page-product .instant-quote-modal .instant-calendar-mark {
        width: 20px;
        height: 20px;
    }
}

/* Chat glow motion: product pages must keep the approved Nebula Crown moving. */
body.page-product.chat-open .chat-panel::before {
    background-position: 50% 50%, 50% 50% !important;
    background-size: 100% 100%, 100% 100% !important;
    animation: chat-nebula-crown-drift 4.8s ease-in-out infinite !important;
}

body.page-product.chat-open .chat-panel::after {
    background-position: 50% 50% !important;
    background-size: 100% 100% !important;
    animation: chat-nebula-inner-drift 4.2s ease-in-out infinite reverse !important;
}

body.page-product.chat-open .main-header,
body.page-product.chat-open .footer-nav {
    z-index: 900 !important;
    pointer-events: none !important;
}

body.page-product.chat-open .chat-overlay {
    z-index: 21020 !important;
}

body.page-product.chat-open .chat-panel,
body.page-product.chat-open .chat-reply-nudge {
    z-index: 21040 !important;
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product.chat-open .chat-panel.is-thread {
        overflow: hidden !important;
    }

    body.page-product.chat-open .chat-panel.is-thread .chat-thread {
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body.page-product.chat-open .chat-panel.is-thread .chat-messages {
        min-height: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior-y: contain !important;
        -webkit-overflow-scrolling: touch !important;
    }
}

/* Request Quote Turnstile runs invisibly; do not show the challenge box in the popup. */
body.page-product .instant-quote-modal .instant-quote-turnstile {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Request Quote consent checkbox parity: match chat follow-up checkbox exactly. */
body.page-product .instant-quote-modal .instant-quote-consent {
    display: grid !important;
    grid-template-columns: 12px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 7px !important;
    min-height: 12px !important;
    margin: 1px 0 2px !important;
    color: rgba(204,214,234,0.8) !important;
    font-family: 'Inter', 'Arial', sans-serif !important;
    font-size: 10px !important;
    font-weight: 650 !important;
    line-height: 12px !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"],
body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"],
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-consent input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 12px !important;
    inline-size: 12px !important;
    block-size: 12px !important;
    width: 12px !important;
    height: 12px !important;
    min-width: 12px !important;
    min-height: 12px !important;
    max-width: 12px !important;
    max-height: 12px !important;
    align-self: start !important;
    justify-self: start !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(171,121,255,0.48) !important;
    border-radius: 3px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.065), rgba(255,255,255,0.016)),
        rgba(3,3,8,0.94) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.09),
        inset 0 -1px 2px rgba(0,0,0,0.48),
        0 7px 15px rgba(0,0,0,0.24),
        0 0 14px rgba(137,86,255,0.1) !important;
    cursor: pointer !important;
    line-height: 1 !important;
    transform: translateY(2px) !important;
    transition:
        background 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"]::before,
body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"]::before,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-consent input[type="checkbox"]::before {
    content: "" !important;
    width: 5px !important;
    height: 3px !important;
    border-left: 1.35px solid rgba(10,8,18,0.88) !important;
    border-bottom: 1.35px solid rgba(10,8,18,0.88) !important;
    opacity: 0 !important;
    transform: translate(-0.25px, -0.75px) rotate(-45deg) scale(0.82) !important;
    transform-origin: center !important;
    transition:
        opacity 160ms ease,
        transform 160ms ease !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"]:hover,
body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"]:hover,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-consent input[type="checkbox"]:hover {
    border-color: rgba(197,160,255,0.72) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.12),
        inset 0 -1px 2px rgba(0,0,0,0.44),
        0 8px 16px rgba(0,0,0,0.26),
        0 0 18px rgba(137,86,255,0.18) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"]:checked,
body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"]:checked,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-consent input[type="checkbox"]:checked {
    border-color: rgba(196,153,255,0.88) !important;
    background:
        linear-gradient(180deg, #caa2ff, #8f58ff 58%, #6f47e8),
        #8f58ff !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.34),
        inset 0 -1px 0 rgba(45,22,108,0.42),
        0 9px 18px rgba(83,43,180,0.28),
        0 0 18px rgba(148,90,255,0.34) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"]:checked::before,
body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"]:checked::before,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-consent input[type="checkbox"]:checked::before {
    opacity: 1 !important;
    transform: translate(-0.25px, -0.75px) rotate(-45deg) scale(1) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent input[type="checkbox"]:focus-visible,
body.page-product .instant-quote-modal .instant-quote-form .instant-quote-consent input[type="checkbox"]:focus-visible,
body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-consent input[type="checkbox"]:focus-visible {
    outline: none !important;
    border-color: rgba(225,205,255,0.96) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.18),
        0 0 0 3px rgba(137,86,255,0.24),
        0 0 22px rgba(148,90,255,0.32) !important;
}

body.page-product .instant-quote-modal .instant-quote-consent span {
    display: block !important;
    min-width: 0 !important;
    min-height: 12px !important;
    line-height: 12px !important;
    font-size: 10px !important;
}

/* Local Resource review pass: keep every resource popup in the Call Our Team visual family. */
body.page-product .find-doctor-gate-backdrop.is-open,
body.page-product .sidebar-call-pop-backdrop.is-open {
    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:not(.instant-quote-modal),
body.page-product .sidebar-call-pop {
    border-color: rgba(255,255,255,0.052) !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 .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"] {
    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;
}

body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-backdrop {
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

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 {
    animation: none !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-health-dental-vision .find-doctor-gate.dv-compare-flow .find-doctor-gate-body::before,
body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-gate-body::before,
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg?v=20260419b') 50% 45% / cover no-repeat !important;
}

body.page-health-dental-vision .find-doctor-gate.dv-compare-flow .find-doctor-gate-content[hidden],
body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-gate-content[hidden],
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-gate-content[hidden],
body.page-product .find-doctor-gate.abc-compare-flow .find-doctor-gate-content[hidden] {
    display: none !important;
}

body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-gate-head,
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-gate-head,
body.page-product .find-doctor-gate.abc-compare-flow .find-doctor-gate-head {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 28px !important;
    align-items: center !important;
    gap: 10px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-gate-title,
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-gate-title,
body.page-product .find-doctor-gate.abc-compare-flow .find-doctor-gate-title {
    grid-column: 2 !important;
    justify-self: center !important;
    text-align: center !important;
    transform: none !important;
}

body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-gate-close,
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-gate-close,
body.page-product .find-doctor-gate.abc-compare-flow .find-doctor-gate-close {
    grid-column: 3 !important;
    justify-self: end !important;
}

body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow:has([data-marketplace-compare-back][hidden]) .find-doctor-gate-title,
body.page-health-private .find-doctor-gate.private-compare-flow:has([data-private-compare-back][hidden]) .find-doctor-gate-title,
body.page-product .find-doctor-gate.abc-compare-flow:has([data-abc-compare-back][hidden]) .find-doctor-gate-title {
    grid-column: 1 / 3 !important;
    justify-self: start !important;
    text-align: left !important;
}

body.page-health-dental-vision .find-doctor-gate.dv-limits-flow .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/PLAN%20LIMITS.jpg') 50% 45% / cover no-repeat !important;
}

body.page-health-dental-vision .find-doctor-gate.dv-compare-flow .find-doctor-gate-footer,
body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-gate-footer,
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-gate-footer,
body.page-health-dental-vision .find-doctor-gate.dv-limits-flow .find-doctor-gate-footer {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

body.page-health-dental-vision .find-doctor-gate.dv-compare-flow .find-doctor-fallback,
body.page-health-marketplace .find-doctor-gate.marketplace-compare-flow .find-doctor-fallback,
body.page-health-private .find-doctor-gate.private-compare-flow .find-doctor-fallback,
body.page-health-dental-vision .find-doctor-gate.dv-limits-flow .find-doctor-fallback {
    max-width: min(360px, 100%) !important;
    margin: 0 auto !important;
    text-align: center !important;
}

body.page-health-dental-vision .find-doctor-gate-head .dv-flow-back,
body.page-health-marketplace .find-doctor-gate-head .dv-flow-back,
body.page-health-private .find-doctor-gate-head .dv-flow-back,
body.page-product .find-doctor-gate-head .abc-compare-back,
body.page-health-dental-vision .path-modal-header .dv-flow-back {
    flex: 0 0 28px !important;
}

body.page-health-dental-vision .dv-flow-back,
body.page-health-marketplace .dv-flow-back,
body.page-health-private .dv-flow-back,
body.page-product .abc-compare-back {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
    display: inline-flex !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;
    background: rgba(9,12,28,0.74) !important;
    color: #6f87ff !important;
    cursor: pointer !important;
    box-shadow:
        inset 3px 3px 6px #000000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255,255,255,0.10) !important;
    transition: border-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

body.page-health-dental-vision .dv-flow-back svg,
body.page-health-marketplace .dv-flow-back svg,
body.page-health-private .dv-flow-back svg,
body.page-product .abc-compare-back svg {
    width: 9px !important;
    height: 9px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    filter: drop-shadow(0 0 6px rgba(111,135,255,0.48)) !important;
}

body.page-health-dental-vision .dv-flow-back:hover,
body.page-health-dental-vision .dv-flow-back:focus-visible,
body.page-health-marketplace .dv-flow-back:hover,
body.page-health-marketplace .dv-flow-back:focus-visible,
body.page-health-private .dv-flow-back:hover,
body.page-health-private .dv-flow-back:focus-visible,
body.page-product .abc-compare-back:hover,
body.page-product .abc-compare-back:focus-visible {
    border-color: rgba(0,0,0,0) !important;
    color: rgba(239,68,68,0.98) !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-health-dental-vision .dv-flow-back[hidden],
body.page-health-marketplace .dv-flow-back[hidden],
body.page-health-private .dv-flow-back[hidden],
body.page-product .abc-compare-back[hidden] {
    display: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-head {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 28px !important;
    align-items: center !important;
    gap: 10px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-title {
    grid-column: 2 !important;
    justify-self: center !important;
    text-align: center !important;
    transform: none !important;
}

body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-close {
    grid-column: 3 !important;
    justify-self: end !important;
}

body.page-product .instant-quote-header-back {
    appearance: none !important;
    -webkit-appearance: none !important;
    grid-column: 1 !important;
    justify-self: start !important;
    position: relative !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !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;
    background: #050505 !important;
    color: #6f87ff !important;
    cursor: pointer !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;
    transition: border-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

body.page-product .instant-quote-header-back svg {
    display: none !important;
}

body.page-product .instant-quote-header-back::before,
body.page-product .instant-quote-header-back::after {
    content: "" !important;
    position: absolute !important;
    top: calc(50% - 1px) !important;
    left: calc(50% - 2px) !important;
    width: 6px !important;
    height: 2px !important;
    border-radius: 2px !important;
    background: currentColor !important;
    box-shadow: 0 0 6px rgba(111,135,255,0.56) !important;
    transform-origin: 1px 50% !important;
}

body.page-product .instant-quote-header-back::before {
    transform: rotate(-45deg) !important;
}

body.page-product .instant-quote-header-back::after {
    transform: rotate(45deg) !important;
}

body.page-product .instant-quote-header-back:hover,
body.page-product .instant-quote-header-back:focus-visible {
    border-color: rgba(0,0,0,0) !important;
    color: rgba(239,68,68,0.98) !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 .instant-quote-header-back:hover::before,
body.page-product .instant-quote-header-back:hover::after,
body.page-product .instant-quote-header-back:focus-visible::before,
body.page-product .instant-quote-header-back:focus-visible::after {
    box-shadow: 0 0 6px rgba(239,68,68,0.54) !important;
}

body.page-product .instant-quote-header-back[hidden] {
    display: none !important;
}

body.page-health-dental-vision .enrollment-dates-panel[hidden] {
    display: none !important;
}

body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 28px !important;
    align-items: center !important;
    gap: 10px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
    grid-column: 2 !important;
    justify-self: center !important;
    text-align: center !important;
    transform: none !important;
}

body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .dv-limits-back {
    grid-column: 1 !important;
    justify-self: start !important;
}

body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-close {
    grid-column: 3 !important;
    justify-self: end !important;
}

body.page-product.page-health-dental-vision .enrollment-dates-modal .enrollment-dates-panel[hidden] {
    display: none !important;
}

body.page-health-dental-vision .enrollment-dates-modal .path-modal-footer {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
}

body.page-health-dental-vision .enrollment-dates-modal .dv-limits-back {
    margin-right: 4px !important;
}

body.page-health-dental-vision #enrollment-dates-modal .enrollment-dates-panel {
    gap: 2px !important;
}

body.page-health-dental-vision #enrollment-dates-modal .enrollment-dates-period-grid {
    margin-top: 12px !important;
}

body.page-health-dental-vision.dv-limits-open .footer-mobile-action,
body.page-health-dental-vision.dv-limits-open .footer-nav {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(10px) !important;
}

@media (max-width: 640px) {
    body.page-health-dental-vision .find-doctor-gate.dv-compare-flow .find-doctor-fallback,
    body.page-health-dental-vision .find-doctor-gate.dv-limits-flow .find-doctor-fallback {
        max-width: min(270px, 100%) !important;
    }

    body.page-health-dental-vision .dv-flow-back {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        grid-template-columns: 26px minmax(0, 1fr) 26px !important;
        gap: 8px !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal.instant-quote-has-back .find-doctor-gate-head {
        grid-template-columns: 26px minmax(0, 1fr) 26px !important;
        gap: 8px !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body.page-product .instant-quote-header-back {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
    }

    body.page-health-dental-vision .enrollment-dates-modal .path-modal-footer {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.page-health-dental-vision .enrollment-dates-modal .enrollment-dates-cta {
        grid-column: 1 / -1 !important;
        justify-self: stretch !important;
    }
}

body.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/COMPARE%20PLANS.jpg?v=20260419b') 50% 45% / cover no-repeat !important;
}

body.page-medicare .medicare-compare-premium {
    width: min(880px, calc(100vw - 48px)) !important;
    height: auto !important;
    max-height: calc(100dvh - 40px) !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
    min-height: 430px !important;
    padding: 34px 32px 28px !important;
    place-items: stretch !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-content {
    transform: none !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
    width: min(760px, 100%) !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    gap: 16px !important;
    align-items: stretch !important;
}

body.page-medicare .medicare-compare-kicker {
    margin: 0 !important;
    color: rgba(176,196,255,0.82) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    letter-spacing: 0.18em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 12px rgba(0,0,0,0.72) !important;
}

body.page-medicare .medicare-compare-lead {
    max-width: 62ch !important;
    min-height: 0 !important;
    text-align: center !important;
}

body.page-medicare .medicare-compare-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
}

body.page-medicare .medicare-compare-card {
    min-height: 194px !important;
    padding: 18px 18px 46px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    border-left-width: 1px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0.052) 44%, rgba(0,0,0,0.18)),
        rgba(12,16,30,0.56) !important;
}

body.page-medicare .medicare-compare-card-top {
    display: flex !important;
    width: 100% !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
}

body.page-medicare .medicare-compare-card-label,
body.page-medicare .medicare-compare-review-label {
    color: rgba(247,249,255,0.98) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    letter-spacing: 0.055em !important;
    line-height: 1.22 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 12px rgba(0,0,0,0.72) !important;
}

body.page-medicare .medicare-compare-card-tag {
    flex: 0 0 auto !important;
    padding: 5px 8px !important;
    border: 1px solid rgba(160,190,255,0.20) !important;
    border-radius: 999px !important;
    color: rgba(196,214,255,0.86) !important;
    background: rgba(7,10,18,0.46) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 8px !important;
    font-weight: 850 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
}

body.page-medicare .medicare-compare-card-copy,
body.page-medicare .medicare-compare-review-copy {
    display: block !important;
    color: rgba(222,232,255,0.88) !important;
    font-size: 12px !important;
    line-height: 1.52 !important;
    text-align: left !important;
    text-shadow: 0 2px 10px rgba(0,0,0,0.68) !important;
}

body.page-medicare .medicare-compare-card-points {
    display: block !important;
    margin-top: auto !important;
    color: rgba(180,200,245,0.66) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 9px !important;
    font-weight: 750 !important;
    letter-spacing: 0.055em !important;
    line-height: 1.45 !important;
    text-align: left !important;
    text-transform: uppercase !important;
}

body.page-medicare .medicare-compare-card .fdc-arrow {
    position: absolute !important;
    right: 16px !important;
    bottom: 16px !important;
}

body.page-medicare .medicare-compare-review {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px 16px !important;
    align-items: center !important;
    min-height: 86px !important;
    padding: 16px 58px 16px 18px !important;
    border: 1px solid rgba(255,255,255,0.13) !important;
    border-left: 3px solid rgba(199,162,96,0.82) !important;
    border-radius: 10px !important;
    color: inherit !important;
    text-decoration: none !important;
    background:
        linear-gradient(135deg, rgba(255,228,170,0.13), rgba(255,255,255,0.042) 42%, rgba(0,0,0,0.18)),
        rgba(20,16,10,0.50) !important;
    box-shadow:
        0 12px 34px rgba(0,0,0,0.36),
        inset 0 1px 0 rgba(255,255,255,0.12) !important;
}

body.page-medicare .medicare-compare-review .fdc-arrow {
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
    color: rgba(231,199,126,0.92) !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-card {
    display: flex !important;
    min-height: 194px !important;
    padding: 18px 18px 46px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    border-left-width: 1px !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-card-top {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-card-copy,
body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-card-points {
    width: 100% !important;
    max-width: none !important;
}

@media (max-width: 760px) {
    body.page-medicare .medicare-compare-premium {
        width: min(520px, calc(100vw - 20px)) !important;
        max-height: calc(100dvh - 18px) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        min-height: 0 !important;
        max-height: calc(100dvh - 136px) !important;
        padding: 22px 18px 20px !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.page-medicare .medicare-compare-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-card {
        min-height: 138px !important;
        padding: 15px 16px 42px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-card {
        min-height: 138px !important;
        padding: 15px 16px 42px !important;
    }

    body.page-medicare .medicare-compare-card-copy,
    body.page-medicare .medicare-compare-review-copy {
        font-size: 11px !important;
        line-height: 1.44 !important;
    }

    body.page-medicare .medicare-compare-review {
        min-height: 78px !important;
        padding: 14px 50px 14px 15px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-review {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
        align-items: start !important;
        min-height: 112px !important;
        padding: 14px 50px 14px 15px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-review-label,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-review-copy {
        grid-column: 1 !important;
        max-width: 100% !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-medicare .medicare-compare-premium {
        width: min(820px, calc(100vw - 28px)) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        max-height: calc(100dvh - 122px) !important;
        padding: 16px 18px !important;
    }

    body.page-medicare .medicare-compare-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.page-medicare .medicare-compare-card {
        min-height: 126px !important;
        padding: 14px 15px 38px !important;
    }

    body.page-medicare .medicare-compare-card-points {
        display: none !important;
    }
}

/* Dental/Vision Compare handoff: direct form open, no intro fade/slide. */
body.page-health-dental-vision .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body > *,
body.page-health-dental-vision .find-doctor-gate.instant-quote-modal.dv-compare-direct-open.resource-pop-opening .find-doctor-gate-body > *,
body.page-health-marketplace .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body > *,
body.page-health-marketplace .find-doctor-gate.instant-quote-modal.dv-compare-direct-open.resource-pop-opening .find-doctor-gate-body > *,
body.page-health-private .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body > *,
body.page-health-private .find-doctor-gate.instant-quote-modal.dv-compare-direct-open.resource-pop-opening .find-doctor-gate-body > * {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

body.page-health-dental-vision .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body::before,
body.page-health-dental-vision .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body::after,
body.page-health-marketplace .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body::before,
body.page-health-marketplace .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body::after,
body.page-health-private .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body::before,
body.page-health-private .find-doctor-gate.instant-quote-modal.dv-compare-direct-open .find-doctor-gate-body::after {
    transition: none !important;
}

/* Medicare Compare Plans: large comparison surface, no advisor strip. */
body.page-medicare .medicare-compare-premium {
    width: min(980px, calc(100vw - 48px)) !important;
    max-height: calc(100dvh - 34px) !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
    min-height: 560px !important;
    max-height: calc(100dvh - 112px) !important;
    padding: 28px !important;
    overflow-y: auto !important;
    place-items: stretch !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-footer {
    display: none !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
    width: 100% !important;
    max-width: 100% !important;
    gap: 18px !important;
    align-items: stretch !important;
}

body.page-medicare .medicare-compare-intro {
    display: grid !important;
    gap: 8px !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

body.page-medicare .medicare-compare-kicker {
    margin: 0 !important;
    color: rgba(174,196,255,0.84) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    letter-spacing: 0.18em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

body.page-medicare .medicare-compare-lead {
    max-width: 72ch !important;
    margin: 0 auto !important;
    color: rgba(238,243,255,0.90) !important;
    font-size: 13px !important;
    line-height: 1.48 !important;
    text-align: center !important;
}

body.page-medicare .medicare-compare-table {
    display: grid !important;
    width: 100% !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 12px !important;
    background:
        radial-gradient(ellipse 74% 92% at 18% 0%, rgba(111,135,255,0.16), rgba(111,135,255,0.028) 46%, transparent 74%),
        linear-gradient(180deg, rgba(255,255,255,0.080), rgba(255,255,255,0.022)),
        rgba(5,8,16,0.64) !important;
    box-shadow:
        0 18px 54px rgba(0,0,0,0.34),
        inset 0 1px 0 rgba(255,255,255,0.12) !important;
}

body.page-medicare .medicare-compare-table-row {
    display: grid !important;
    grid-template-columns: minmax(128px, 0.78fr) repeat(2, minmax(0, 1fr)) !important;
    min-height: 64px !important;
    border-top: 1px solid rgba(255,255,255,0.095) !important;
}

body.page-medicare .medicare-compare-table-row:first-child {
    border-top: 0 !important;
}

body.page-medicare .medicare-compare-table-row > div {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    padding: 13px 15px !important;
    border-left: 1px solid rgba(255,255,255,0.080) !important;
    color: rgba(222,232,255,0.86) !important;
    font-size: 11.5px !important;
    line-height: 1.42 !important;
    text-align: left !important;
}

body.page-medicare .medicare-compare-table-row > div:first-child {
    border-left: 0 !important;
    color: rgba(247,249,255,0.98) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    letter-spacing: 0.07em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
}

body.page-medicare .medicare-compare-table-head {
    min-height: 48px !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,0.14), rgba(111,135,255,0.075) 52%, rgba(0,0,0,0.12)),
        rgba(12,16,28,0.82) !important;
}

body.page-medicare .medicare-compare-table-head > div {
    color: rgba(255,255,255,0.96) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body.page-medicare .medicare-compare-actions {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 58px !important;
    width: 100% !important;
    padding: 14px 44px 14px 16px !important;
    border: 1px solid rgba(255,255,255,0.13) !important;
    border-radius: 12px !important;
    color: rgba(247,249,255,0.98) !important;
    text-align: left !important;
    text-decoration: none !important;
    background:
        radial-gradient(ellipse 110% 120% at 15% 0%, rgba(255,255,255,0.14), rgba(255,255,255,0.028) 54%, transparent 80%),
        rgba(8,11,21,0.72) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.12),
        0 12px 28px rgba(0,0,0,0.28) !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action .fdc-label {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    font-size: 10.5px !important;
    letter-spacing: 0.07em !important;
    line-height: 1.28 !important;
    white-space: normal !important;
}

body.page-medicare .medicare-compare-action .fdc-arrow {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    margin: 0 !important;
    color: #6f87ff !important;
    transform: translateY(-50%) scale(0.78) !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-review {
    border-color: rgba(132,151,255,0.42) !important;
    background:
        radial-gradient(ellipse 110% 120% at 15% 0%, rgba(132,151,255,0.24), rgba(93,116,255,0.065) 54%, transparent 80%),
        rgba(8,11,24,0.76) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.14),
        0 0 0 1px rgba(132,151,255,0.10),
        0 16px 36px rgba(37,56,170,0.18) !important;
}

body.page-medicare .medicare-compare-review .fdc-arrow {
    color: rgba(142,160,255,0.96) !important;
}

body.page-medicare .medicare-compare-note {
    max-width: 74ch !important;
    margin: -2px auto 0 !important;
    color: rgba(181,196,225,0.72) !important;
    font-size: 10.5px !important;
    line-height: 1.42 !important;
    text-align: center !important;
}

@media (max-width: 860px) {
    body.page-medicare .medicare-compare-premium {
        width: min(640px, calc(100vw - 20px)) !important;
        max-height: calc(100dvh - 18px) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        min-height: 0 !important;
        max-height: calc(100dvh - 88px) !important;
        padding: 20px 16px !important;
    }

    body.page-medicare .medicare-compare-table {
        border-radius: 10px !important;
    }

    body.page-medicare .medicare-compare-table-head {
        display: none !important;
    }

    body.page-medicare .medicare-compare-table-row {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    body.page-medicare .medicare-compare-table-row > div {
        min-height: 0 !important;
        padding: 10px 13px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(255,255,255,0.070) !important;
        font-size: 11px !important;
    }

    body.page-medicare .medicare-compare-table-row > div:first-child {
        border-top: 0 !important;
        background: rgba(255,255,255,0.060) !important;
    }

    body.page-medicare .medicare-compare-actions {
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action {
        min-height: 52px !important;
        padding: 12px 42px 12px 14px !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-medicare .medicare-compare-premium {
        width: min(900px, calc(100vw - 28px)) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        max-height: calc(100dvh - 86px) !important;
        padding: 14px 16px !important;
    }

    body.page-medicare .medicare-compare-intro {
        gap: 4px !important;
    }

    body.page-medicare .medicare-compare-table-row {
        min-height: 52px !important;
    }

    body.page-medicare .medicare-compare-table-row > div {
        padding: 10px 12px !important;
        font-size: 10.6px !important;
        line-height: 1.32 !important;
    }

    body.page-medicare .medicare-compare-actions {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

/* Medicare Compare temporary cleanup: match the large embedded resource family. */
body.page-medicare .medicare-compare-premium {
    width: min(1440px, calc(100vw - 48px)) !important;
    height: min(90svh, 900px) !important;
    min-height: min(760px, calc(100svh - 48px)) !important;
    max-height: calc(100svh - 32px) !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    overflow: hidden !important;
    border-color: rgba(154, 178, 235, 0.05) !important;
    box-shadow:
        0 0 0 1px rgba(154, 178, 235, 0.043),
        0 0 0 2px rgba(132, 92, 235, 0.05),
        0 30px 78px rgba(0, 0, 0, 0.8),
        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.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium {
    border-color: rgba(154, 178, 235, 0.05) !important;
    box-shadow:
        0 0 0 1px rgba(154, 178, 235, 0.043),
        0 0 0 2px rgba(132, 92, 235, 0.05),
        0 30px 78px rgba(0, 0, 0, 0.8),
        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.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    gap: 14px !important;
    min-height: 76px !important;
    padding: 0 18px 0 24px !important;
    align-items: center !important;
    background:
        linear-gradient(90deg, rgba(0,0,0,0.94), rgba(28,28,30,0.76) 48%, rgba(0,0,0,0.96)),
        radial-gradient(ellipse 46% 80% at 48% 0%, rgba(255,255,255,0.070), transparent 68%) !important;
    border-bottom: 1px solid rgba(255,255,255,0.045) !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-title {
    grid-column: 1 !important;
    justify-self: start !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-close {
    grid-column: 3 !important;
    justify-self: end !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: hidden !important;
    place-items: stretch !important;
    border-radius: 0 !important;
    background:
        radial-gradient(ellipse 76% 78% at 50% 18%, rgba(111,135,255,0.105), rgba(111,135,255,0.024) 46%, transparent 72%),
        radial-gradient(ellipse 62% 56% at 50% 100%, rgba(221,190,120,0.060), transparent 68%),
        linear-gradient(180deg, rgba(8,10,17,0.96), rgba(2,4,10,0.98) 56%, rgba(0,0,0,0.98)) !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-body::before,
body.page-medicare .medicare-compare-premium .find-doctor-gate-body::after {
    inset: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
}

body.page-medicare #compare-plans-gate.medicare-compare-premium .find-doctor-gate-body::before,
body.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium .find-doctor-gate-body::before,
body.page-medicare .medicare-compare-premium .find-doctor-gate-body::before {
    background: url('../SHARED/HEALTH/RESOURCES/MEDICARE-COMPARE-PLANS.jpg?v=20260609resourcepop48') 50% 52% / cover no-repeat !important;
    filter: blur(2.4px) saturate(0.92) brightness(0.62) contrast(1.08) !important;
    opacity: 1 !important;
    transform: scale(1.012) !important;
    transition:
        filter 1.12s cubic-bezier(0.18, 0.82, 0.22, 1),
        opacity 1.12s cubic-bezier(0.18, 0.82, 0.22, 1),
        transform 1.12s cubic-bezier(0.18, 0.82, 0.22, 1) !important;
}

body.page-medicare .medicare-compare-premium .find-doctor-gate-body::after {
    border: 0 !important;
    background:
        radial-gradient(ellipse 62% 54% at 50% 43%, rgba(4,6,12,0.34), rgba(0,0,0,0.28) 46%, transparent 72%),
        linear-gradient(90deg, rgba(0,0,0,0.78), rgba(0,0,0,0.36) 24%, rgba(0,0,0,0.42) 66%, rgba(0,0,0,0.84)),
        linear-gradient(180deg, rgba(4,6,12,0.58), rgba(3,5,11,0.72) 54%, rgba(0,0,0,0.88)),
        radial-gradient(ellipse 82% 64% at 50% 31%, rgba(255,255,255,0.060), transparent 64%),
        radial-gradient(ellipse 78% 48% at 50% 100%, rgba(111,135,255,0.064), transparent 68%),
        linear-gradient(180deg, rgba(0,0,0,0.08) 0%, rgba(0,0,0,0.20) 54%, rgba(0,0,0,0.50) 100%),
        linear-gradient(180deg, rgba(255,255,255,0.040), transparent 18%, transparent 82%, rgba(255,255,255,0.030)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.045),
        inset 0 -1px 0 rgba(255,255,255,0.052) !important;
    opacity: 1 !important;
    transition: opacity 1.04s cubic-bezier(0.18, 0.82, 0.22, 1) !important;
}

body.page-medicare #compare-plans-gate.medicare-compare-premium .find-doctor-gate-body > *,
body.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium .find-doctor-gate-body > * {
    animation: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    filter: blur(0) !important;
    transition:
        opacity 0.44s cubic-bezier(0.18, 0.82, 0.22, 1),
        transform 0.44s cubic-bezier(0.18, 0.82, 0.22, 1),
        filter 0.44s cubic-bezier(0.18, 0.82, 0.22, 1) !important;
}

body.page-medicare #compare-plans-gate.medicare-compare-premium.resource-pop-opening .find-doctor-gate-body::before,
body.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium.resource-pop-opening .find-doctor-gate-body::before {
    filter: blur(0) saturate(1) brightness(0.84) contrast(1.02) !important;
    opacity: 0.92 !important;
    transform: scale(1) !important;
}

body.page-medicare #compare-plans-gate.medicare-compare-premium.resource-pop-opening .find-doctor-gate-body::after,
body.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium.resource-pop-opening .find-doctor-gate-body::after {
    opacity: 0.12 !important;
}

body.page-medicare #compare-plans-gate.medicare-compare-premium.resource-pop-opening .find-doctor-gate-body > *,
body.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium.resource-pop-opening .find-doctor-gate-body > * {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) scale(0.994) !important;
    filter: blur(5px) !important;
    pointer-events: none !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
    width: 100% !important;
    max-width: none !important;
    min-height: 100% !important;
    height: 100% !important;
    box-sizing: border-box !important;
    padding: clamp(44px, 4.5vw, 68px) clamp(44px, 5vw, 72px) clamp(34px, 3.6vw, 52px) !important;
    gap: clamp(18px, 2.2vw, 26px) !important;
    align-self: stretch !important;
    justify-self: center !important;
    align-items: stretch !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.is-detail .find-doctor-gate-content.medicare-compare-shell {
    padding-top: clamp(40px, 4.1vw, 60px) !important;
    padding-right: clamp(28px, 3vw, 44px) !important;
    padding-bottom: clamp(40px, 4.1vw, 60px) !important;
    padding-left: clamp(28px, 3vw, 44px) !important;
}

body.page-medicare .medicare-compare-view[hidden],
body.page-medicare .medicare-compare-detail-panel[hidden] {
    display: none !important;
}

body.page-medicare .medicare-compare-view {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}

body.page-medicare .medicare-compare-overview {
    display: grid !important;
    grid-template-rows: auto !important;
    align-content: center !important;
    gap: 0 !important;
}

body.page-medicare .medicare-compare-detail {
    display: grid !important;
    grid-template-rows: auto !important;
    align-content: center !important;
    gap: 0 !important;
    animation: medicareCompareBodyIn 0.28s ease both !important;
}

body.page-medicare .medicare-compare-switch button {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    min-width: clamp(62px, 6.4vw, 96px) !important;
    min-height: 54px !important;
    padding: 0 6px 1px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(170,178,202,0.62) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.1 !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: color 0.22s ease, opacity 0.22s ease !important;
}

body.page-medicare .medicare-compare-switch {
    grid-column: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(10px, 1.7vw, 24px) !important;
    min-width: 0 !important;
    align-self: center !important;
}

body.page-medicare .medicare-compare-switch button::before {
    content: "" !important;
    position: static !important;
    flex: 0 0 auto !important;
    width: 10px !important;
    height: 10px !important;
    border: 1px solid rgba(111, 135, 255, 0.52) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.18), transparent 38%),
        linear-gradient(180deg, rgba(14, 18, 40, 0.98), rgba(2, 3, 10, 0.98)) !important;
    box-shadow:
        0 0 0 1px rgba(137, 96, 255, 0.08),
        0 0 10px rgba(111, 135, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
    transform: none !important;
}

body.page-medicare .medicare-compare-switch button[aria-pressed="true"] {
    color: rgba(242,244,255,0.96) !important;
    font-weight: 900 !important;
}

body.page-medicare .medicare-compare-switch button[aria-pressed="true"]::before {
    border-color: rgba(142, 160, 255, 0.98) !important;
    background:
        radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.32), transparent 36%),
        linear-gradient(180deg, rgba(142, 160, 255, 0.98), rgba(96, 68, 224, 0.96)) !important;
    box-shadow:
        0 0 16px rgba(111, 135, 255, 0.48),
        0 0 26px rgba(137, 96, 255, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
    transform: translateY(-1px) !important;
}

body.page-medicare .medicare-compare-detail-panel {
    width: min(100%, 1260px) !important;
    min-height: clamp(300px, 38vh, 390px) !important;
    justify-self: center !important;
    display: grid !important;
    grid-template-columns: minmax(420px, 0.58fr) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(48px, 4vw, 72px) !important;
    animation: medicareCompareBodyIn 0.24s ease both !important;
}

body.page-medicare .medicare-compare-detail-copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 14px !important;
    padding: 4px 0 0 !important;
    min-height: 230px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-medicare .medicare-compare-detail-kicker,
body.page-medicare .medicare-compare-detail-grid span {
    color: #8f79ff !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
}

body.page-medicare .medicare-compare-detail-copy h4 {
    margin: 0 !important;
    color: rgba(244,247,255,0.94) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: clamp(30px, 2.45vw, 40px) !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
}

body.page-medicare .medicare-compare-detail-copy p,
body.page-medicare .medicare-compare-detail-grid p {
    margin: 0 !important;
    color: rgba(214,222,238,0.84) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.46 !important;
}

body.page-medicare .medicare-compare-detail-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    min-height: 230px !important;
    padding: 8px 0 !important;
    border-top: 1px solid rgba(188,204,238,0.16) !important;
    border-bottom: 1px solid rgba(188,204,238,0.11) !important;
}

body.page-medicare .medicare-compare-detail-grid > div {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 12px clamp(14px, 2vw, 24px) !important;
    border: 0 !important;
    border-left: 1px solid rgba(188,204,238,0.11) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-medicare .medicare-compare-detail-grid > div:first-child {
    border-left: 0 !important;
}

@media (hover: hover) and (pointer: fine) and (min-width: 861px) {
    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid > div {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy p,
    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid p {
        white-space: nowrap !important;
        text-wrap: nowrap !important;
    }
}

body.page-medicare .medicare-compare-summary-panel {
    grid-template-columns: minmax(340px, 0.78fr) minmax(0, 1fr) !important;
    gap: clamp(34px, 4.8vw, 72px) !important;
    min-height: clamp(330px, 39vh, 410px) !important;
    align-items: stretch !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy {
    position: relative !important;
    min-height: 100% !important;
    padding: clamp(28px, 3.4vw, 44px) clamp(24px, 3vw, 38px) !important;
    overflow: hidden !important;
    border: 1px solid rgba(224,189,108,0.20) !important;
    border-radius: 16px !important;
    background:
        radial-gradient(ellipse 72% 74% at 52% 28%, rgba(224,189,108,0.16), transparent 64%),
        radial-gradient(ellipse 86% 76% at 18% 0%, rgba(143,121,255,0.14), transparent 68%),
        linear-gradient(180deg, rgba(255,255,255,0.070), rgba(255,255,255,0.018)),
        rgba(2,4,10,0.62) !important;
    box-shadow:
        0 24px 64px rgba(0,0,0,0.36),
        0 0 26px rgba(224,189,108,0.10),
        inset 0 1px 0 rgba(255,255,255,0.12) !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy::before {
    content: "" !important;
    position: absolute !important;
    right: clamp(14px, 1.8vw, 24px) !important;
    top: clamp(14px, 1.8vw, 24px) !important;
    width: 58px !important;
    height: 58px !important;
    border: 1px solid rgba(224,189,108,0.52) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 50% 45%, rgba(244,222,168,0.92), rgba(201,160,80,0.68) 42%, rgba(88,62,14,0.34) 70%, transparent 71%) !important;
    box-shadow:
        0 0 20px rgba(224,189,108,0.28),
        inset 0 1px 0 rgba(255,255,255,0.32) !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy h4 {
    max-width: 100% !important;
    color: rgba(255,255,255,0.96) !important;
    font-size: clamp(34px, 2.7vw, 46px) !important;
    line-height: 0.98 !important;
    white-space: nowrap !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy p {
    max-width: 44ch !important;
    color: rgba(226,231,245,0.88) !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    min-height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    align-content: stretch !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
    position: relative !important;
    min-height: 0 !important;
    padding: 18px 22px 18px 24px !important;
    border: 1px solid rgba(143,121,255,0.18) !important;
    border-left: 3px solid rgba(224,189,108,0.50) !important;
    border-radius: 14px !important;
    background:
        linear-gradient(90deg, rgba(224,189,108,0.075), rgba(143,121,255,0.050) 46%, rgba(255,255,255,0.018)),
        rgba(3,6,14,0.56) !important;
    box-shadow:
        0 18px 38px rgba(0,0,0,0.26),
        inset 0 1px 0 rgba(255,255,255,0.095) !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div:first-child {
    border-left: 3px solid rgba(224,189,108,0.50) !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid span {
    color: rgba(224,189,108,0.92) !important;
}

body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid p {
    max-width: 48ch !important;
    color: rgba(224,231,247,0.88) !important;
    text-align: left !important;
}

@keyframes medicareCompareBodyIn {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

body.page-medicare .medicare-compare-intro {
    gap: 10px !important;
    max-width: 720px !important;
    margin: 0 auto 2px !important;
    padding-top: 2px !important;
}

body.page-medicare .medicare-compare-kicker {
    font-size: 11px !important;
    letter-spacing: 0.2em !important;
}

body.page-medicare .medicare-compare-lead {
    max-width: 66ch !important;
    font-size: 13.5px !important;
    line-height: 1.46 !important;
}

body.page-medicare .medicare-compare-table {
    width: min(100%, 1180px) !important;
    max-width: 1180px !important;
    justify-self: center !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    border: 1px solid rgba(143,121,255,0.24) !important;
    background:
        radial-gradient(ellipse 74% 88% at 50% 0%, rgba(143,121,255,0.13), transparent 66%),
        linear-gradient(180deg, rgba(255,255,255,0.060), rgba(255,255,255,0.018)),
        rgba(2,4,10,0.72) !important;
    box-shadow:
        0 26px 68px rgba(0,0,0,0.42),
        0 0 26px rgba(111,87,255,0.10),
        inset 0 1px 0 rgba(255,255,255,0.12),
        inset 0 -1px 0 rgba(224,189,108,0.08) !important;
}

body.page-medicare .medicare-compare-table-row {
    grid-template-columns: minmax(170px, 0.72fr) repeat(2, minmax(0, 1fr)) !important;
    min-height: 68px !important;
    border-top-color: rgba(143,121,255,0.105) !important;
    background:
        linear-gradient(90deg, rgba(255,255,255,0.030), rgba(255,255,255,0.010)),
        rgba(2,5,12,0.34) !important;
}

body.page-medicare .medicare-compare-table-row > div {
    padding: 15px 18px !important;
    border-left-color: rgba(143,121,255,0.105) !important;
    font-size: 12px !important;
    line-height: 1.43 !important;
}

body.page-medicare .medicare-compare-table-row > div:first-child,
body.page-medicare .medicare-compare-table-head > div {
    font-size: 10.5px !important;
    letter-spacing: 0.08em !important;
}

body.page-medicare .medicare-compare-table-row:not(.medicare-compare-table-head) > div:first-child {
    color: rgba(246,248,255,0.96) !important;
    background:
        linear-gradient(90deg, rgba(143,121,255,0.060), rgba(255,255,255,0.018)),
        rgba(0,0,0,0.12) !important;
}

body.page-medicare .medicare-compare-table-head {
    background:
        linear-gradient(135deg, rgba(143,121,255,0.22), rgba(54,50,92,0.34) 46%, rgba(0,0,0,0.28)),
        radial-gradient(ellipse 50% 120% at 80% 0%, rgba(224,189,108,0.14), transparent 62%),
        rgba(4,6,14,0.82) !important;
}

body.page-medicare .medicare-compare-table-head > div {
    color: rgba(246,248,255,0.96) !important;
}

body.page-medicare .medicare-compare-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: min(100%, 820px) !important;
    margin: 0 auto !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 28px !important;
    align-items: center !important;
    justify-content: stretch !important;
    min-height: 62px !important;
    padding: 0 16px 0 18px !important;
    border-color: rgba(188,204,238,0.22) !important;
    background:
        radial-gradient(ellipse 110% 120% at 15% 0%, rgba(255,255,255,0.15), rgba(255,255,255,0.026) 54%, transparent 80%),
        rgba(7,10,20,0.62) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.14),
        0 14px 30px rgba(0,0,0,0.24) !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action::before,
body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action::after {
    border-radius: inherit !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action .fdc-label {
    display: flex !important;
    align-items: center !important;
    min-height: 100% !important;
    padding: 0 !important;
    font-size: 10.8px !important;
    line-height: 1.18 !important;
    text-align: left !important;
}

body.page-medicare .medicare-compare-action .fdc-arrow,
body.page-medicare .medicare-compare-review .fdc-arrow {
    position: static !important;
    justify-self: center !important;
    margin: 0 !important;
    transform: scale(0.78) !important;
}

body.page-medicare .medicare-compare-note {
    max-width: 100% !important;
    align-self: auto !important;
    margin: -4px auto 0 !important;
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    transform: translateY(clamp(12px, 1.4vw, 16px)) !important;
    white-space: nowrap !important;
}

body.page-medicare .medicare-compare-premium .medicare-compare-footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 18px !important;
    min-height: 76px !important;
    height: 76px !important;
    padding: 0 22px 0 28px !important;
    border-top: 1px solid rgba(255,255,255,0.045) !important;
    background:
        linear-gradient(90deg, rgba(0,0,0,0.94), rgba(24,24,27,0.78) 48%, rgba(0,0,0,0.96)),
        radial-gradient(ellipse 42% 100% at 48% 100%, rgba(255,255,255,0.050), transparent 68%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.035),
        inset 0 20px 36px rgba(255,255,255,0.020) !important;
}

body.page-medicare .medicare-compare-footer-actions {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    justify-self: end !important;
}

body.page-medicare .medicare-compare-footer-back {
    display: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    min-height: 38px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: rgba(190,199,224,0.74) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: 0.10em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition: color 0.22s ease, transform 0.22s ease !important;
}

body.page-medicare .medicare-compare-footer-next {
    position: relative !important;
    display: inline-grid !important;
    place-items: center !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 148px !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 0 26px !important;
    border: 1px solid rgba(135,115,255,0.92) !important;
    border-radius: 12px !important;
    background:
        linear-gradient(165deg, rgba(255,255,255,0.18), rgba(255,255,255,0.04) 28%, rgba(42,22,108,0.26) 70%, rgba(22,13,66,0.34) 100%),
        linear-gradient(180deg, rgba(126,92,245,0.96), rgba(80,50,190,0.94)) !important;
    color: rgba(248,248,255,0.96) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10.8px !important;
    font-weight: 900 !important;
    letter-spacing: 0.10em !important;
    line-height: 1 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    box-shadow:
        0 18px 36px rgba(0,0,0,0.52),
        0 0 18px rgba(111,87,255,0.32),
        inset 0 1px 0 rgba(255,255,255,0.22) !important;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;
}

body.page-medicare .medicare-compare-footer-next:hover,
body.page-medicare .medicare-compare-footer-next:focus-visible {
    border-color: rgba(157,137,255,0.98) !important;
    box-shadow:
        0 20px 40px rgba(0,0,0,0.56),
        0 0 24px rgba(111,87,255,0.42),
        inset 0 1px 0 rgba(255,255,255,0.28) !important;
    outline: 0 !important;
    transform: translateY(-1px) !important;
}

body.page-medicare .medicare-compare-footer-next[hidden],
body.page-medicare .medicare-compare-footer .medicare-compare-review[hidden] {
    display: none !important;
}

body.page-medicare .medicare-compare-footer-back:hover,
body.page-medicare .medicare-compare-footer-back:focus-visible {
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(241,246,255,0.96) !important;
    outline: 0 !important;
    transform: translateY(-1px) !important;
}

body.page-medicare .medicare-compare-footer-back:active {
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(0) !important;
}

body.page-medicare .compare-plans-gate.is-detail .medicare-compare-footer-back {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body.page-medicare .compare-plans-gate.is-summary .medicare-compare-footer-next {
    display: none !important;
}

body.page-medicare .compare-plans-gate:not(.is-summary) .medicare-compare-footer .medicare-compare-review {
    display: none !important;
}

body.page-medicare .medicare-compare-footer .medicare-compare-note {
    max-width: 62ch !important;
    margin: 0 !important;
    color: rgba(181,196,225,0.72) !important;
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.32 !important;
    text-align: left !important;
    text-transform: none !important;
    transform: none !important;
    white-space: normal !important;
}

body.page-medicare .medicare-compare-footer .medicare-compare-review {
    position: relative !important;
    justify-self: end !important;
    width: auto !important;
    min-width: 185px !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 13px 24px !important;
    display: inline-grid !important;
    place-items: center !important;
    align-items: center !important;
    justify-content: center !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border: 1px solid rgba(224,189,108,0.96) !important;
    border-radius: 12px !important;
    background:
        linear-gradient(165deg, rgba(255,255,255,0.18), rgba(255,255,255,0.04) 28%, rgba(74,52,12,0.18) 68%, rgba(74,52,12,0.28) 100%),
        linear-gradient(180deg, rgba(236,212,150,0.98), rgba(201,160,80,0.92)) !important;
    color: rgba(18,13,7,0.96) !important;
    font-family: Inter, Roboto, sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.825px !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-shadow: none !important;
    text-transform: uppercase !important;
    box-shadow:
        0 22px 42px rgba(0,0,0,0.56),
        0 0 14px rgba(201,160,80,0.24),
        inset 0 1px 0 rgba(255,255,255,0.28) !important;
    transition:
        border-color 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease !important;
}

body.page-medicare .medicare-compare-footer .medicare-compare-review::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background: linear-gradient(110deg,
        transparent 18%,
        rgba(255,255,255,0.14) 38%,
        rgba(255,255,255,0.42) 50%,
        rgba(255,255,255,0.14) 62%,
        transparent 82%) !important;
    filter: drop-shadow(0 0 6px rgba(255,255,255,0.24)) !important;
    opacity: 0.76 !important;
    pointer-events: none !important;
    transform: translateX(-140%) !important;
    animation: hero-cta-sheen 4.2s ease-in-out infinite !important;
}

body.page-medicare .medicare-compare-footer .medicare-compare-review:hover,
body.page-medicare .medicare-compare-footer .medicare-compare-review:focus-visible {
    border-color: rgba(239,206,131,0.98) !important;
    background:
        linear-gradient(165deg, rgba(255,255,255,0.22), rgba(255,255,255,0.06) 28%, rgba(74,52,12,0.18) 68%, rgba(74,52,12,0.28) 100%),
        linear-gradient(180deg, rgba(244,222,168,0.99), rgba(212,169,84,0.95)) !important;
    box-shadow:
        0 24px 46px rgba(0,0,0,0.58),
        0 0 20px rgba(201,160,80,0.32),
        inset 0 1px 0 rgba(255,255,255,0.32) !important;
    transform: translateY(-1px) !important;
}

body.page-medicare .medicare-compare-footer .medicare-compare-review:hover::after,
body.page-medicare .medicare-compare-footer .medicare-compare-review:focus-visible::after {
    opacity: 0.9 !important;
    animation: hero-cta-sheen-hover 1.1s linear infinite !important;
}

body.page-medicare #path-modal .path-modal-box {
    width: min(960px, calc(100vw - 38px)) !important;
    max-width: min(960px, calc(100vw - 38px)) !important;
    min-height: min(620px, calc(100svh - 48px)) !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background:
        radial-gradient(ellipse 88% 80% at 50% 4%, rgba(255,255,255,0.14), rgba(255,255,255,0.045) 42%, rgba(0,0,0,0) 68%),
        linear-gradient(180deg, rgba(8,10,18,0.96), rgba(0,0,0,0.94)) !important;
    box-shadow:
        0 38px 108px rgba(0,0,0,0.72),
        0 0 56px rgba(111,135,255,0.12),
        inset 0 1px 0 rgba(255,255,255,0.13) !important;
}

body.page-medicare #path-modal .path-modal-header {
    min-height: 72px !important;
    padding: 0 20px 0 28px !important;
    display: flex !important;
    align-items: center !important;
    background: rgba(0,0,0,0.28) !important;
}

body.page-medicare #path-modal .path-modal-body {
    display: grid !important;
    gap: 22px !important;
    padding: 42px 54px 38px !important;
    background:
        radial-gradient(ellipse 86% 110% at 50% 0%, rgba(221,190,120,0.12), rgba(255,255,255,0.035) 48%, rgba(0,0,0,0.1)),
        rgba(255,255,255,0.04) !important;
}

body.page-medicare #path-modal .modal-lead {
    margin: 0 !important;
    max-width: 54ch !important;
    color: rgba(247,249,255,0.96) !important;
    font-size: 16px !important;
    line-height: 1.48 !important;
}

body.page-medicare #path-modal .path-modal-points {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-medicare #path-modal .path-modal-points li {
    margin: 0 !important;
    padding: 16px 16px 17px !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 12px !important;
    background: rgba(6,8,16,0.42) !important;
    color: rgba(226,234,250,0.90) !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
}

body.page-medicare #path-modal .modal-takeaway {
    margin: 0 !important;
    padding: 18px 0 0 !important;
    border-top: 1px solid rgba(255,255,255,0.12) !important;
    color: rgba(240,244,255,0.86) !important;
    font-size: 14px !important;
    line-height: 1.48 !important;
}

body.page-medicare #path-modal .path-modal-footer {
    min-height: 76px !important;
    padding: 16px 22px !important;
    background: rgba(0,0,0,0.54) !important;
}

@media (min-width: 861px) and (max-width: 1180px) and (orientation: landscape) {
    body.page-medicare .medicare-compare-premium {
        width: min(1040px, calc(100vw - 136px)) !important;
        height: min(78svh, 670px) !important;
        min-height: 0 !important;
        max-height: calc(100svh - 104px) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        position: relative !important;
        z-index: 2 !important;
        min-height: 64px !important;
        padding: 0 18px 0 22px !important;
        border-bottom: 0 !important;
        background:
            linear-gradient(90deg, rgba(0,0,0,0.96), rgba(18,18,21,0.84) 48%, rgba(0,0,0,0.97)) !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body::after {
        background:
            radial-gradient(ellipse 62% 54% at 50% 43%, rgba(4,6,12,0.34), rgba(0,0,0,0.30) 46%, transparent 72%),
            linear-gradient(90deg, rgba(0,0,0,0.78), rgba(0,0,0,0.36) 24%, rgba(0,0,0,0.42) 66%, rgba(0,0,0,0.88)),
            linear-gradient(180deg, rgba(4,6,12,0.60), rgba(3,5,11,0.74) 54%, rgba(0,0,0,0.90)) !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        position: relative !important;
        z-index: 1 !important;
        margin-top: -1px !important;
        margin-bottom: -1px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.is-detail .find-doctor-gate-content.medicare-compare-shell {
        padding: 28px clamp(34px, 4vw, 48px) 26px !important;
    }

    body.page-medicare .medicare-compare-premium .medicare-compare-footer {
        position: relative !important;
        z-index: 2 !important;
        min-height: 64px !important;
        height: 64px !important;
        padding: 0 20px 0 24px !important;
        border-top: 0 !important;
        background:
            linear-gradient(90deg, rgba(0,0,0,0.96), rgba(18,18,21,0.82) 48%, rgba(0,0,0,0.97)) !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-table-row {
        grid-template-columns: minmax(142px, 0.48fr) repeat(2, minmax(0, 1fr)) !important;
        min-height: 64px !important;
    }

    body.page-medicare .medicare-compare-table-row > div {
        padding: 14px 16px !important;
        font-size: 11.2px !important;
        line-height: 1.34 !important;
    }

    body.page-medicare .medicare-compare-table-row > div:first-child,
    body.page-medicare .medicare-compare-table-head > div {
        font-size: 10.2px !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) {
        width: min(100%, 760px) !important;
        min-height: 0 !important;
        grid-template-columns: 1fr !important;
        align-content: center !important;
        gap: 18px !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy {
        align-items: flex-start !important;
        min-height: 0 !important;
        padding: 0 0 16px !important;
        border-bottom: 1px solid rgba(188,204,238,0.12) !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-kicker,
    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy h4,
    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy p {
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy p {
        max-width: none !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid {
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid > div {
        display: grid !important;
        grid-template-columns: minmax(130px, 0.34fr) minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 16px !important;
        padding: 13px 0 !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(188,204,238,0.11) !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid > div:first-child {
        border-top: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid span,
    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid p {
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
        align-items: flex-start !important;
        justify-content: center !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid span,
    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid p {
        text-align: left !important;
    }
}

@media (max-width: 860px) {
    body.page-medicare .medicare-compare-premium {
        width: min(720px, calc(100vw - 20px)) !important;
        height: min(92svh, 860px) !important;
        min-height: 0 !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        min-height: 60px !important;
        grid-template-columns: minmax(94px, 1fr) auto minmax(28px, 1fr) !important;
        gap: 8px !important;
        padding: 0 12px 0 18px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        max-height: none !important;
        padding: 0 !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        gap: 14px !important;
        padding: 24px 18px 20px !important;
    }

    body.page-medicare .medicare-compare-overview {
        align-content: start !important;
        gap: 14px !important;
    }

    body.page-medicare .medicare-compare-detail {
        gap: 14px !important;
        overflow-y: auto !important;
    }

    body.page-medicare .medicare-compare-switch {
        justify-content: center !important;
        gap: 8px !important;
        width: auto !important;
    }

    body.page-medicare .medicare-compare-switch button {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        width: clamp(52px, 16vw, 86px) !important;
        min-height: 42px !important;
        padding: 20px 0 0 !important;
        font-size: 8.2px !important;
        line-height: 1.12 !important;
    }

    body.page-medicare .medicare-compare-detail-panel {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    body.page-medicare .medicare-compare-detail-copy {
        padding: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-copy h4 {
        font-size: 22px !important;
    }

    body.page-medicare .medicare-compare-detail-grid {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-grid > div {
        padding: 14px 0 !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(188,204,238,0.11) !important;
    }

    body.page-medicare .medicare-compare-detail-grid > div:first-child {
        border-top: 0 !important;
    }

    body.page-medicare .medicare-compare-note {
        white-space: normal !important;
    }

    body.page-medicare .medicare-compare-premium .medicare-compare-footer {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        height: auto !important;
        min-height: 100px !important;
        padding: 12px 18px 14px !important;
        text-align: center !important;
    }

    body.page-medicare .medicare-compare-footer-actions {
        justify-self: center !important;
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-note {
        max-width: 100% !important;
        text-align: center !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-review {
        justify-self: center !important;
        width: min(100%, 260px) !important;
        min-width: 0 !important;
        min-height: 42px !important;
        height: 42px !important;
    }

    body.page-medicare .medicare-compare-table-head {
        display: none !important;
    }

    body.page-medicare .medicare-compare-table {
        display: grid !important;
        gap: 10px !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-table-row {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
        border: 1px solid rgba(188,204,238,0.18) !important;
        border-radius: 12px !important;
        background:
            linear-gradient(180deg, rgba(255,255,255,0.070), rgba(255,255,255,0.018)),
            rgba(5,8,16,0.58) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.10) !important;
    }

    body.page-medicare .medicare-compare-table-row > div {
        padding: 10px 12px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(210,222,248,0.080) !important;
        font-size: 11px !important;
        line-height: 1.34 !important;
    }

    body.page-medicare .medicare-compare-table-row > div:first-child {
        border-top: 0 !important;
        background: rgba(255,255,255,0.070) !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2)::before,
    body.page-medicare .medicare-compare-table-row > div:nth-child(3)::before {
        display: block !important;
        margin: 0 0 5px !important;
        color: #8f79ff !important;
        font-family: 'Montserrat', Arial, sans-serif !important;
        font-size: 8.4px !important;
        font-weight: 900 !important;
        letter-spacing: 0.12em !important;
        line-height: 1 !important;
        text-transform: uppercase !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2)::before {
        content: "Orig + Medigap" !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(3)::before {
        content: "Med Advantage" !important;
    }

    body.page-medicare .medicare-compare-actions {
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action {
        width: 100% !important;
        min-height: 54px !important;
        padding: 0 14px 0 15px !important;
    }

    body.page-medicare #path-modal .path-modal-body {
        padding: 26px 22px 24px !important;
    }

    body.page-medicare #path-modal .path-modal-points {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-medicare .medicare-compare-premium {
        width: min(900px, calc(100vw - 28px)) !important;
        height: calc(100dvh - 112px) !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 112px) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        min-height: 60px !important;
        grid-template-columns: minmax(120px, 1fr) auto minmax(28px, 1fr) !important;
        gap: 10px !important;
        padding: 0 14px 0 18px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        grid-template-rows: auto auto auto !important;
        height: 100% !important;
        min-height: 0 !important;
        gap: 8px !important;
        padding: 10px 18px 12px !important;
        align-self: start !important;
        overflow-y: auto !important;
    }

    body.page-medicare .medicare-compare-overview {
        gap: 8px !important;
        min-height: 0 !important;
        overflow-y: auto !important;
    }

    body.page-medicare .medicare-compare-detail {
        gap: 8px !important;
        overflow-y: auto !important;
    }

    body.page-medicare .medicare-compare-switch button {
        min-height: 32px !important;
        width: clamp(62px, 10vw, 92px) !important;
        padding: 18px 0 0 !important;
        font-size: 8.2px !important;
    }

    body.page-medicare .medicare-compare-detail-panel {
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-detail-copy {
        padding: 16px !important;
    }

    body.page-medicare .medicare-compare-detail-copy h4 {
        font-size: 20px !important;
    }

    body.page-medicare .medicare-compare-detail-copy p,
    body.page-medicare .medicare-compare-detail-grid p {
        font-size: 10.5px !important;
        line-height: 1.34 !important;
    }

    body.page-medicare .medicare-compare-detail-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-grid > div {
        padding: 12px !important;
    }

    body.page-medicare .medicare-compare-table {
        align-self: start !important;
        max-height: none !important;
        overflow: visible !important;
        transform: none !important;
    }

    body.page-medicare .medicare-compare-table-row {
        min-height: 40px !important;
    }

    body.page-medicare .medicare-compare-table-row > div {
        padding: 7px 10px !important;
        font-size: 9.8px !important;
        line-height: 1.24 !important;
    }

    body.page-medicare .medicare-compare-actions {
        gap: 10px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-choice.medicare-compare-action {
        min-height: 42px !important;
    }

    body.page-medicare .medicare-compare-premium .medicare-compare-footer {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 12px !important;
        min-height: 60px !important;
        height: 60px !important;
        padding: 0 16px !important;
    }

    body.page-medicare .medicare-compare-footer-actions {
        justify-self: end !important;
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-note {
        font-size: 9px !important;
        line-height: 1.2 !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-review {
        width: auto !important;
        min-width: 176px !important;
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 16px !important;
        font-size: 9px !important;
    }
}

/* Compare footer specificity lock: keep the footer CTA from inheriting old body-card sizing. */
body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-review {
    display: inline-grid !important;
    place-items: center !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    grid-template-columns: none !important;
    width: auto !important;
    min-width: 185px !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 13px 24px !important;
    border-radius: 12px !important;
    font-family: Inter, Roboto, sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.825px !important;
    line-height: 1 !important;
    text-align: center !important;
}

@media (max-width: 860px) {
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-review {
        width: min(100%, 260px) !important;
        min-width: 0 !important;
        min-height: 42px !important;
        height: 42px !important;
        padding: 0 18px !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-review {
        width: auto !important;
        min-width: 176px !important;
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 16px !important;
        font-size: 9px !important;
    }
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate:not(.is-summary) .medicare-compare-footer .medicare-compare-review,
body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-review[hidden],
body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-footer-next[hidden] {
    display: none !important;
}

body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.is-summary .medicare-compare-footer .medicare-compare-review {
    display: inline-grid !important;
    place-items: center !important;
}

body.page-medicare .medicare-compare-switch button:focus {
    outline: 0 !important;
}

body.page-medicare .medicare-compare-switch button:focus-visible::before {
    border-color: rgba(224,189,108,0.86) !important;
    box-shadow:
        0 0 0 4px rgba(224,189,108,0.11),
        0 0 18px rgba(143,121,255,0.32),
        0 0 28px rgba(224,189,108,0.16) !important;
}

body.page-medicare .medicare-compare-mobile-clean {
    display: none !important;
}

/* Medicare Compare responsive refinement: keep desktop intact and rebuild the tight ranges. */
@media (max-width: 860px) {
    body.page-medicare .medicare-compare-premium {
        height: min(92svh, 820px) !important;
        max-height: calc(100svh - 20px) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        grid-template-columns: minmax(76px, 1fr) auto minmax(76px, 1fr) !important;
        min-height: 58px !important;
        padding: 0 10px 0 16px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title {
        width: 68px !important;
        font-size: 0 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title::after {
        content: "Compare" !important;
        font-size: 9.8px !important;
        line-height: 1 !important;
        letter-spacing: 0.18em !important;
    }

    body.page-medicare .medicare-compare-switch {
        width: auto !important;
        justify-content: center !important;
        gap: clamp(10px, 2.8vw, 18px) !important;
    }

    body.page-medicare .medicare-compare-switch button {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 68px !important;
        min-height: 58px !important;
        padding: 0 !important;
        gap: 6px !important;
        font-size: 0 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-switch button::before {
        width: 11px !important;
        height: 11px !important;
    }

    body.page-medicare .medicare-compare-switch button::after {
        content: "" !important;
        display: block !important;
        color: inherit !important;
        font-family: 'Montserrat', Arial, sans-serif !important;
        font-size: 8.4px !important;
        font-weight: 900 !important;
        letter-spacing: 0 !important;
        line-height: 1 !important;
        text-transform: none !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-switch button[data-compare-nav="overview"]::after {
        content: "Overview" !important;
    }

    body.page-medicare .medicare-compare-switch button[data-compare-nav="supplement"]::after {
        content: "Medigap" !important;
    }

    body.page-medicare .medicare-compare-switch button[data-compare-nav="advantage"]::after {
        content: "Advantage" !important;
    }

    body.page-medicare .medicare-compare-switch button[data-compare-nav="summary"]::after {
        content: "Summary" !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        padding: 18px 18px 16px !important;
        overflow-y: auto !important;
        scrollbar-width: thin !important;
    }

    body.page-medicare .medicare-compare-overview,
    body.page-medicare .medicare-compare-detail {
        align-content: start !important;
        overflow: visible !important;
    }

    body.page-medicare .medicare-compare-table {
        gap: 9px !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2),
    body.page-medicare .medicare-compare-table-row > div:nth-child(3) {
        display: grid !important;
        grid-template-columns: minmax(74px, 0.34fr) minmax(0, 1fr) !important;
        align-items: center !important;
        column-gap: 12px !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2)::before,
    body.page-medicare .medicare-compare-table-row > div:nth-child(3)::before {
        margin: 0 !important;
        align-self: center !important;
        letter-spacing: 0.10em !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2)::before {
        content: "Medigap" !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(3)::before {
        content: "Advantage" !important;
    }

    body.page-medicare .medicare-compare-detail-panel {
        min-height: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-copy {
        min-height: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-copy h4,
    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy h4 {
        white-space: normal !important;
    }
}

@media (min-width: 641px) and (max-width: 860px) and (orientation: portrait) {
    body.page-medicare .medicare-compare-premium {
        height: min(86svh, 800px) !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        padding: 24px 22px 22px !important;
    }

    body.page-medicare .medicare-compare-premium .medicare-compare-footer {
        grid-template-columns: minmax(0, 1fr) auto !important;
        min-height: 76px !important;
        height: 76px !important;
        padding: 0 22px 0 24px !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-footer-actions {
        justify-self: end !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-note {
        text-align: left !important;
    }
}

@media (max-width: 640px) {
    body.page-medicare .medicare-compare-premium {
        width: min(370px, calc(100vw - 18px)) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        padding-left: 14px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title {
        width: 62px !important;
    }

    body.page-medicare .medicare-compare-switch {
        gap: 4px !important;
    }

    body.page-medicare .medicare-compare-switch button::after {
        font-size: 7.8px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        padding: 16px 16px 14px !important;
    }

    body.page-medicare .medicare-compare-table-row > div {
        padding: 9px 11px !important;
        font-size: 10.7px !important;
        line-height: 1.28 !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2),
    body.page-medicare .medicare-compare-table-row > div:nth-child(3) {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        column-gap: 10px !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2)::before,
    body.page-medicare .medicare-compare-table-row > div:nth-child(3)::before {
        font-size: 7.6px !important;
    }

    body.page-medicare .medicare-compare-detail-copy p,
    body.page-medicare .medicare-compare-detail-grid p {
        font-size: 12.1px !important;
        line-height: 1.36 !important;
    }

    body.page-medicare .medicare-compare-detail-grid > div {
        padding: 11px 0 !important;
    }
}

@media (max-width: 860px) and (orientation: portrait) {
    body.page-medicare .medicare-compare-premium {
        height: min(88svh, 830px) !important;
        max-height: calc(100svh - 28px) !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        display: grid !important;
        align-content: center !important;
        padding: clamp(20px, 5vw, 34px) clamp(18px, 5vw, 34px) !important;
        overflow: hidden !important;
    }

    body.page-medicare .medicare-compare-overview {
        display: grid !important;
        align-content: center !important;
    }

    body.page-medicare .medicare-compare-overview .medicare-compare-table {
        display: none !important;
    }

    body.page-medicare .medicare-compare-mobile-clean {
        display: grid !important;
        gap: clamp(12px, 2.2vh, 18px) !important;
        width: min(100%, 610px) !important;
        margin: 0 auto !important;
    }

    body.page-medicare .medicare-compare-mobile-hero,
    body.page-medicare .medicare-compare-mobile-paths article,
    body.page-medicare .medicare-compare-mobile-check {
        border: 1px solid rgba(188,204,238,0.14) !important;
        background:
            linear-gradient(180deg, rgba(255,255,255,0.060), rgba(255,255,255,0.018)),
            rgba(4,7,15,0.62) !important;
        box-shadow:
            0 18px 42px rgba(0,0,0,0.28),
            inset 0 1px 0 rgba(255,255,255,0.10) !important;
    }

    body.page-medicare .medicare-compare-mobile-hero {
        display: grid !important;
        justify-items: center !important;
        gap: 8px !important;
        padding: clamp(22px, 5vw, 30px) clamp(18px, 5vw, 28px) !important;
        border-radius: 18px !important;
        text-align: center !important;
        background:
            radial-gradient(ellipse 70% 74% at 50% 0%, rgba(143,121,255,0.14), transparent 66%),
            linear-gradient(180deg, rgba(255,255,255,0.070), rgba(255,255,255,0.018)),
            rgba(4,7,15,0.66) !important;
    }

    body.page-medicare .medicare-compare-mobile-hero span,
    body.page-medicare .medicare-compare-mobile-paths article span {
        color: #8f79ff !important;
        font-family: 'Montserrat', Arial, sans-serif !important;
        font-size: 9px !important;
        font-weight: 900 !important;
        letter-spacing: 0.16em !important;
        line-height: 1 !important;
        text-transform: uppercase !important;
    }

    body.page-medicare .medicare-compare-mobile-hero h4,
    body.page-medicare .medicare-compare-mobile-paths article h5 {
        margin: 0 !important;
        color: rgba(248,250,255,0.96) !important;
        font-family: 'Montserrat', Arial, sans-serif !important;
        font-weight: 900 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
    }

    body.page-medicare .medicare-compare-mobile-hero h4 {
        font-size: clamp(24px, 6.4vw, 34px) !important;
        line-height: 1 !important;
    }

    body.page-medicare .medicare-compare-mobile-hero p,
    body.page-medicare .medicare-compare-mobile-paths article li,
    body.page-medicare .medicare-compare-mobile-check {
        margin: 0 !important;
        color: rgba(220,228,244,0.86) !important;
        font-size: clamp(11.5px, 3.1vw, 13.5px) !important;
        font-weight: 750 !important;
        line-height: 1.36 !important;
    }

    body.page-medicare .medicare-compare-mobile-hero p {
        max-width: 34ch !important;
    }

    body.page-medicare .medicare-compare-mobile-paths {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: clamp(10px, 2.4vw, 14px) !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article {
        display: grid !important;
        align-content: start !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: clamp(16px, 4vw, 22px) !important;
        border-radius: 16px !important;
    }

    body.page-medicare .medicare-compare-mobile-path-label {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article h5 {
        font-size: clamp(16px, 4.2vw, 21px) !important;
        line-height: 1.08 !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article ul {
        display: grid !important;
        gap: 8px !important;
        margin: 2px 0 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article li {
        padding-top: 8px !important;
        border-top: 1px solid rgba(188,204,238,0.10) !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article li:first-child {
        padding-top: 0 !important;
        border-top: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-check {
        padding: 14px 16px !important;
        border-radius: 14px !important;
        color: rgba(224,189,108,0.92) !important;
        text-align: center !important;
    }

    body.page-medicare .medicare-compare-premium .medicare-compare-footer {
        grid-template-columns: minmax(0, 1fr) auto !important;
        min-height: 58px !important;
        height: 58px !important;
        padding: 0 14px 0 18px !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-note {
        display: none !important;
    }

    body.page-medicare .medicare-compare-footer-actions {
        justify-self: end !important;
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-footer-next,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-review {
        min-width: 132px !important;
        min-height: 40px !important;
        height: 40px !important;
        padding: 0 18px !important;
    }
}

@media (max-width: 520px) and (orientation: portrait) {
    body.page-medicare .medicare-compare-premium {
        width: min(374px, calc(100vw - 22px)) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        grid-template-columns: minmax(62px, 1fr) auto minmax(62px, 1fr) !important;
        padding: 0 10px 0 14px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title {
        width: 61px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title::after {
        font-size: 9.2px !important;
        letter-spacing: 0.16em !important;
    }

    body.page-medicare .medicare-compare-switch {
        gap: 8px !important;
    }

    body.page-medicare .medicare-compare-switch button {
        max-width: 46px !important;
    }

    body.page-medicare .medicare-compare-switch button::after {
        font-size: 7.2px !important;
    }

    body.page-medicare .medicare-compare-mobile-paths {
        grid-template-columns: 1fr !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article {
        grid-template-columns: 1fr !important;
        align-items: start !important;
        column-gap: 0 !important;
        padding: 15px 16px !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article span,
    body.page-medicare .medicare-compare-mobile-paths article h5 {
        grid-column: auto !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article h5 {
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article ul {
        grid-column: auto !important;
        grid-row: auto !important;
        gap: 6px !important;
        margin-top: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article li {
        padding-top: 6px !important;
        font-size: 10.8px !important;
        line-height: 1.22 !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy h4 {
        font-size: 30px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }
}

@media (pointer: coarse) and (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium {
        width: min(82vw, calc(100vw - 22px)) !important;
        height: 84dvh !important;
        min-height: 0 !important;
        max-height: 84dvh !important;
        top: 8dvh !important;
        transform: translateX(-50%) !important;
        grid-template-rows: 48px minmax(0, 1fr) 48px !important;
        border-color: transparent !important;
        border-left-width: 0 !important;
        border-left-color: #000 !important;
        background: #000 !important;
        box-shadow:
            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) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        min-height: 48px !important;
        height: 48px !important;
        grid-template-columns: minmax(150px, 1fr) auto minmax(150px, 1fr) !important;
        padding: 0 10px 0 18px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        margin-right: -1px !important;
        margin-left: -1px !important;
        width: calc(100% + 2px) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title {
        width: 112px !important;
        font-size: 10px !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-title::after {
        content: none !important;
    }

    body.page-medicare .medicare-compare-switch {
        gap: 20px !important;
    }

    body.page-medicare .medicare-compare-switch button {
        max-width: 78px !important;
        min-height: 48px !important;
        padding: 0 !important;
        gap: 5px !important;
    }

    body.page-medicare .medicare-compare-switch button::after {
        font-size: 8px !important;
    }

    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .find-doctor-gate-content.medicare-compare-shell {
        display: grid !important;
        align-content: center !important;
        padding: 8px 18px !important;
        overflow: hidden !important;
    }

    body.page-medicare .medicare-compare-overview,
    body.page-medicare .medicare-compare-detail {
        align-content: center !important;
        overflow: visible !important;
    }

    body.page-medicare .medicare-compare-mobile-clean {
        display: none !important;
    }

    body.page-medicare .medicare-compare-table-head {
        display: grid !important;
    }

    body.page-medicare .medicare-compare-table {
        display: grid !important;
        gap: 0 !important;
        width: min(100%, 870px) !important;
        border: 1px solid rgba(143,121,255,0.28) !important;
        border-radius: 13px !important;
        overflow: hidden !important;
        background:
            radial-gradient(ellipse 74% 88% at 50% 0%, rgba(143,121,255,0.13), transparent 66%),
            linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.010)),
            rgba(4,6,15,0.76) !important;
        box-shadow:
            0 20px 46px rgba(0,0,0,0.32),
            inset 0 1px 0 rgba(255,255,255,0.08) !important;
    }

    body.page-medicare .medicare-compare-table-row {
        display: grid !important;
        grid-template-columns: minmax(145px, 0.5fr) repeat(2, minmax(0, 1fr)) !important;
        min-height: 38px !important;
        border: 0 !important;
        border-top: 1px solid rgba(143,121,255,0.10) !important;
        border-radius: 0 !important;
        background: rgba(5,8,18,0.34) !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-table-row:first-child {
        border-top: 0 !important;
        background: rgba(34,29,68,0.58) !important;
    }

    body.page-medicare .medicare-compare-table-row > div,
    body.page-medicare .medicare-compare-table-row > div:nth-child(2),
    body.page-medicare .medicare-compare-table-row > div:nth-child(3) {
        display: block !important;
        padding: 8px 12px !important;
        border-top: 0 !important;
        border-left: 1px solid rgba(143,121,255,0.10) !important;
        font-size: 9.2px !important;
        line-height: 1.18 !important;
    }

    body.page-medicare .medicare-compare-table-row > div:first-child {
        border-left: 0 !important;
    }

    body.page-medicare .medicare-compare-table-row > div:nth-child(2)::before,
    body.page-medicare .medicare-compare-table-row > div:nth-child(3)::before {
        content: none !important;
    }

    body.page-medicare .medicare-compare-detail-panel {
        grid-template-columns: minmax(190px, 0.56fr) minmax(0, 1fr) !important;
        align-items: stretch !important;
        gap: 14px !important;
        min-height: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-copy,
    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy {
        min-height: 0 !important;
        padding: 14px !important;
    }

    body.page-medicare .medicare-compare-detail-copy h4,
    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy h4 {
        font-size: 18px !important;
        line-height: 1.02 !important;
    }

    body.page-medicare .medicare-compare-detail-copy p,
    body.page-medicare .medicare-compare-detail-grid p {
        font-size: 10px !important;
        line-height: 1.28 !important;
    }

    body.page-medicare .medicare-compare-detail-grid,
    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-grid > div,
    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
        padding: 10px !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid p {
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-summary-panel {
        grid-template-columns: minmax(230px, 0.58fr) minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy {
        align-items: flex-start !important;
        gap: 8px !important;
        padding: 14px 18px !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy::before {
        right: 12px !important;
        top: 12px !important;
        width: 28px !important;
        height: 28px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy p {
        max-width: 38ch !important;
        white-space: nowrap !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
        align-items: flex-start !important;
        gap: 7px !important;
        padding: 10px 12px !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid p {
        font-size: 9.2px !important;
        line-height: 1.18 !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy::before {
        width: 28px !important;
        height: 28px !important;
    }

    body.page-medicare .medicare-compare-summary-panel {
        grid-template-columns: minmax(218px, 0.52fr) minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy {
        padding: 10px 12px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy p {
        max-width: 24ch !important;
        font-size: 9.2px !important;
        line-height: 1.18 !important;
        white-space: normal !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
        padding: 9px 10px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid p {
        font-size: 8.8px !important;
        line-height: 1.18 !important;
    }

    body.page-medicare .medicare-compare-premium .medicare-compare-footer {
        min-height: 48px !important;
        height: 48px !important;
        padding: 0 14px 0 18px !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-note {
        display: none !important;
    }

    body.page-medicare .medicare-compare-footer-actions {
        justify-self: end !important;
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-footer-next {
        min-width: 126px !important;
        min-height: 36px !important;
        height: 36px !important;
        padding: 0 18px !important;
        font-size: 9.4px !important;
    }

    body.page-medicare .medicare-compare-footer .medicare-compare-review,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate .medicare-compare-footer .medicare-compare-review {
        min-width: 156px !important;
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 18px !important;
    }
}

/* Medicare Compare portrait correction: one clean decision sheet, no header seam. */
@media (max-width: 860px) and (orientation: portrait) {
    body.page-medicare .compare-plans-gate.medicare-compare-premium,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium {
        border-color: rgba(154,178,235,0.04) !important;
        box-shadow:
            0 0 0 1px rgba(154,178,235,0.035),
            0 24px 62px rgba(0,0,0,0.82),
            0 0 34px rgba(112,152,232,0.12),
            0 0 64px rgba(132,92,235,0.12),
            inset 0 1px 0 rgba(255,255,255,0.07) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head {
        position: relative !important;
        z-index: 2 !important;
        border-bottom-color: transparent !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-head::after {
        content: none !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body {
        border-top: 0 !important;
        width: calc(100% + 2px) !important;
        margin-left: -1px !important;
        margin-right: -1px !important;
        background:
            radial-gradient(ellipse 72% 70% at 50% 18%, rgba(111,135,255,0.095), rgba(111,135,255,0.018) 46%, transparent 72%),
            linear-gradient(180deg, rgba(8,10,17,0.96), rgba(2,4,10,0.985) 58%, rgba(0,0,0,0.99)) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body::before,
    body.page-medicare .medicare-compare-premium .find-doctor-gate-body::after {
        top: -2px !important;
        right: -2px !important;
        bottom: -1px !important;
        left: -2px !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium .find-doctor-gate-body::before,
    body.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium .find-doctor-gate-body::before,
    body.page-medicare .medicare-compare-premium .find-doctor-gate-body::before {
        filter: blur(3.4px) saturate(0.88) brightness(0.50) contrast(1.08) !important;
    }

    body.page-medicare .medicare-compare-premium .find-doctor-gate-body::after {
        background:
            radial-gradient(ellipse 58% 50% at 50% 42%, rgba(4,6,12,0.34), rgba(0,0,0,0.30) 48%, transparent 72%),
            linear-gradient(90deg, rgba(0,0,0,0.86), rgba(0,0,0,0.50) 24%, rgba(0,0,0,0.62) 60%, rgba(0,0,0,0.93) 80%, rgba(0,0,0,1)),
            linear-gradient(180deg, rgba(4,6,12,0.56), rgba(3,5,11,0.74) 54%, rgba(0,0,0,0.90)) !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-switch button {
        min-height: 44px !important;
        padding: 2px 0 0 !important;
        gap: 3px !important;
        justify-content: center !important;
    }

    body.page-medicare .medicare-compare-switch button::before {
        width: 9px !important;
        height: 9px !important;
    }

    body.page-medicare .medicare-compare-switch button::after {
        line-height: 1 !important;
    }

    body.page-medicare .medicare-compare-mobile-clean {
        gap: 0 !important;
        width: min(100%, 620px) !important;
        padding: clamp(22px, 5.2vw, 30px) !important;
        overflow: hidden !important;
        border: 1px solid rgba(188,204,238,0.14) !important;
        border-radius: 18px !important;
        background:
            radial-gradient(ellipse 72% 68% at 50% 0%, rgba(143,121,255,0.10), transparent 68%),
            linear-gradient(180deg, rgba(255,255,255,0.052), rgba(255,255,255,0.014)),
            rgba(4,7,15,0.58) !important;
        box-shadow:
            0 20px 48px rgba(0,0,0,0.30),
            inset 0 1px 0 rgba(255,255,255,0.10) !important;
    }

    body.page-medicare .medicare-compare-mobile-hero,
    body.page-medicare .medicare-compare-mobile-paths article,
    body.page-medicare .medicare-compare-mobile-check {
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.page-medicare .medicare-compare-mobile-hero {
        padding: 0 0 clamp(17px, 3.8vw, 24px) !important;
        border-bottom: 1px solid rgba(188,204,238,0.11) !important;
    }

    body.page-medicare .medicare-compare-mobile-hero h4 {
        font-size: clamp(25px, 6.2vw, 34px) !important;
    }

    body.page-medicare .medicare-compare-mobile-hero p {
        max-width: none !important;
        font-size: clamp(10.8px, 2.65vw, 12.4px) !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-mobile-paths {
        gap: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article {
        border-top: 1px solid rgba(188,204,238,0.11) !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article:first-child {
        border-top: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-check {
        margin-top: clamp(2px, 0.8vw, 5px) !important;
        padding: clamp(8px, 2.1vw, 11px) 0 0 !important;
        border-top: 1px solid rgba(206,194,158,0.11) !important;
        color: rgba(211,201,174,0.78) !important;
        font-size: clamp(9.2px, 2.18vw, 10.4px) !important;
        line-height: 1.14 !important;
        white-space: nowrap !important;
    }

    body.page-medicare .compare-plans-gate.medicare-compare-premium {
        height: min(78svh, 720px) !important;
    }

    body.page-medicare .medicare-compare-summary-panel {
        width: min(100%, 620px) !important;
        grid-template-columns: 1fr !important;
        align-content: center !important;
        gap: 12px !important;
        min-height: 0 !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy {
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        min-height: 0 !important;
        padding: 22px 22px 20px !important;
        text-align: center !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy::before {
        right: 12px !important;
        top: 12px !important;
        width: 40px !important;
        height: 40px !important;
        box-shadow:
            0 0 14px rgba(224,189,108,0.22),
            inset 0 1px 0 rgba(255,255,255,0.30) !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy h4 {
        font-size: clamp(25px, 6.2vw, 32px) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy p {
        max-width: 34ch !important;
        font-size: clamp(10.6px, 2.65vw, 12px) !important;
        line-height: 1.28 !important;
        text-align: center !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
        justify-content: center !important;
        gap: 8px !important;
        min-height: 94px !important;
        padding: 14px 18px !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid p {
        max-width: none !important;
        font-size: clamp(10.5px, 2.62vw, 11.8px) !important;
        line-height: 1.24 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) {
        width: min(100%, 620px) !important;
        min-height: 0 !important;
        align-content: center !important;
        gap: 16px !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy {
        align-items: flex-start !important;
        justify-content: start !important;
        gap: 7px !important;
        min-height: 0 !important;
        padding: 0 0 15px !important;
        border-bottom: 1px solid rgba(188,204,238,0.12) !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy h4 {
        font-size: clamp(22px, 5.4vw, 30px) !important;
        line-height: 1.02 !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy p {
        max-width: none !important;
        font-size: clamp(11px, 2.65vw, 12.4px) !important;
        line-height: 1.28 !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid {
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid > div {
        display: grid !important;
        grid-template-columns: minmax(104px, 0.40fr) minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 14px !important;
        padding: 12px 0 !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(188,204,238,0.11) !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid > div:first-child {
        border-top: 0 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid span {
        font-size: 8.7px !important;
        letter-spacing: 0.13em !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid p {
        font-size: clamp(10.4px, 2.5vw, 11.5px) !important;
        line-height: 1.24 !important;
        text-align: left !important;
    }
}

@media (max-width: 520px) and (orientation: portrait) {
    body.page-medicare .medicare-compare-mobile-clean {
        width: min(100%, 330px) !important;
        padding: 21px 20px 16px !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article {
        grid-template-columns: minmax(96px, 0.38fr) minmax(0, 1fr) !important;
        align-items: start !important;
        column-gap: 15px !important;
        padding: 15px 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-path-label {
        grid-column: 1 !important;
        align-items: flex-start !important;
        align-self: start !important;
        gap: 6px !important;
        padding-top: 1px !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article h5 {
        font-size: 15.5px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article ul {
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: center !important;
        gap: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article li {
        padding: 6px 0 !important;
        font-size: 10.3px !important;
        line-height: 1.18 !important;
        text-align: left !important;
    }

    body.page-medicare .medicare-compare-mobile-check {
        font-size: 9.2px !important;
    }

    body.page-medicare .compare-plans-gate.medicare-compare-premium {
        height: min(74svh, 700px) !important;
    }

    body.page-medicare .medicare-compare-summary-panel {
        width: min(100%, 330px) !important;
        gap: 10px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy {
        padding: 20px 18px 18px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy::before {
        right: 10px !important;
        top: 10px !important;
        width: 30px !important;
        height: 30px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy h4 {
        font-size: 24px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-copy p {
        max-width: 31ch !important;
        font-size: 10.6px !important;
        line-height: 1.24 !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid {
        gap: 9px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid > div {
        min-height: 86px !important;
        padding: 12px 16px !important;
        gap: 7px !important;
    }

    body.page-medicare .medicare-compare-summary-panel .medicare-compare-detail-grid p {
        font-size: 10.3px !important;
        line-height: 1.22 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) {
        width: min(100%, 330px) !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid > div {
        grid-template-columns: minmax(92px, 0.38fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 11px 0 !important;
    }

    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-copy p,
    body.page-medicare .medicare-compare-detail-panel:not(.medicare-compare-summary-panel) .medicare-compare-detail-grid p {
        font-size: 10.7px !important;
    }
}

@media (min-width: 521px) and (max-width: 860px) and (orientation: portrait) {
    body.page-medicare .medicare-compare-mobile-clean {
        align-self: center !important;
        padding: 28px 30px 22px !important;
    }

    body.page-medicare .medicare-compare-mobile-paths {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article {
        padding: 20px 18px 18px !important;
        border-top: 0 !important;
        border-left: 1px solid rgba(188,204,238,0.11) !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article:first-child {
        border-left: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-path-label {
        align-self: stretch !important;
        padding-bottom: 11px !important;
        margin: 0 10px 10px !important;
        border-bottom: 1px solid rgba(188,204,238,0.12) !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article ul {
        margin-top: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-paths article li:first-child {
        padding-top: 0 !important;
    }

    body.page-medicare .medicare-compare-mobile-check {
        margin-top: 0 !important;
        padding-top: 10px !important;
        color: rgba(211,201,174,0.72) !important;
        font-size: 9.8px !important;
        line-height: 1 !important;
    }
}

/* Canonical final shared resource-popup icon back control. Keep this as the last rule. */
body.page-product .instant-quote-header-back,
body.page-product .abc-compare-back,
body.page-health-dental-vision .dv-flow-back,
body.page-health-marketplace .dv-flow-back,
body.page-health-private .dv-flow-back,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !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;
    background: #050505 !important;
    color: #6f87ff !important;
    cursor: pointer !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;
    transform: none !important;
    transition: border-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

body.page-product .instant-quote-header-back svg,
body.page-product .abc-compare-back svg,
body.page-health-dental-vision .dv-flow-back svg,
body.page-health-marketplace .dv-flow-back svg,
body.page-health-private .dv-flow-back svg,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back svg {
    display: none !important;
}

body.page-product .instant-quote-header-back::before,
body.page-product .instant-quote-header-back::after,
body.page-product .abc-compare-back::before,
body.page-product .abc-compare-back::after,
body.page-health-dental-vision .dv-flow-back::before,
body.page-health-dental-vision .dv-flow-back::after,
body.page-health-marketplace .dv-flow-back::before,
body.page-health-marketplace .dv-flow-back::after,
body.page-health-private .dv-flow-back::before,
body.page-health-private .dv-flow-back::after,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back::before,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back::after {
    content: "" !important;
    position: absolute !important;
    top: calc(50% - 1px) !important;
    left: calc(50% - 2px) !important;
    width: 6px !important;
    height: 2px !important;
    border-radius: 2px !important;
    background: currentColor !important;
    box-shadow: 0 0 6px rgba(111,135,255,0.56) !important;
    transform-origin: 1px 50% !important;
}

body.page-product .instant-quote-header-back::before,
body.page-product .abc-compare-back::before,
body.page-health-dental-vision .dv-flow-back::before,
body.page-health-marketplace .dv-flow-back::before,
body.page-health-private .dv-flow-back::before,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back::before {
    transform: rotate(-45deg) !important;
}

body.page-product .instant-quote-header-back::after,
body.page-product .abc-compare-back::after,
body.page-health-dental-vision .dv-flow-back::after,
body.page-health-marketplace .dv-flow-back::after,
body.page-health-private .dv-flow-back::after,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back::after {
    transform: rotate(45deg) !important;
}

body.page-product .instant-quote-header-back:hover,
body.page-product .instant-quote-header-back:focus-visible,
body.page-product .abc-compare-back:hover,
body.page-product .abc-compare-back:focus-visible,
body.page-health-dental-vision .dv-flow-back:hover,
body.page-health-dental-vision .dv-flow-back:focus-visible,
body.page-health-marketplace .dv-flow-back:hover,
body.page-health-marketplace .dv-flow-back:focus-visible,
body.page-health-private .dv-flow-back:hover,
body.page-health-private .dv-flow-back:focus-visible,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back:hover,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back:focus-visible {
    border-color: rgba(0,0,0,0) !important;
    color: rgba(239,68,68,0.98) !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 .instant-quote-header-back:hover::before,
body.page-product .instant-quote-header-back:hover::after,
body.page-product .instant-quote-header-back:focus-visible::before,
body.page-product .instant-quote-header-back:focus-visible::after,
body.page-product .abc-compare-back:hover::before,
body.page-product .abc-compare-back:hover::after,
body.page-product .abc-compare-back:focus-visible::before,
body.page-product .abc-compare-back:focus-visible::after,
body.page-health-dental-vision .dv-flow-back:hover::before,
body.page-health-dental-vision .dv-flow-back:hover::after,
body.page-health-dental-vision .dv-flow-back:focus-visible::before,
body.page-health-dental-vision .dv-flow-back:focus-visible::after,
body.page-health-marketplace .dv-flow-back:hover::before,
body.page-health-marketplace .dv-flow-back:hover::after,
body.page-health-marketplace .dv-flow-back:focus-visible::before,
body.page-health-marketplace .dv-flow-back:focus-visible::after,
body.page-health-private .dv-flow-back:hover::before,
body.page-health-private .dv-flow-back:hover::after,
body.page-health-private .dv-flow-back:focus-visible::before,
body.page-health-private .dv-flow-back:focus-visible::after,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back:hover::before,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back:hover::after,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back:focus-visible::before,
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back:focus-visible::after {
    box-shadow: 0 0 6px rgba(239,68,68,0.54) !important;
}

body.page-product .instant-quote-header-back[hidden],
body.page-product .abc-compare-back[hidden],
body.page-health-dental-vision .dv-flow-back[hidden],
body.page-health-marketplace .dv-flow-back[hidden],
body.page-health-private .dv-flow-back[hidden],
body.page-medicare #path-modal.is-compare-detail .path-modal-header-back[hidden] {
    display: none !important;
}

/* Guided Walkthrough shared accent pass: Compare-style process glow without changing walkthrough behavior. */
body.page-product #edu-modal {
    --abc-walkthrough-blue: #7e5cf5;
    --abc-walkthrough-blue-soft: rgba(126, 92, 245, 0.58);
    --abc-walkthrough-purple: #6f57ff;
    --abc-walkthrough-purple-soft: rgba(137, 96, 255, 0.36);
    --abc-walkthrough-panel: rgba(3, 5, 13, 0.82);
    --abc-walkthrough-line: rgba(166, 188, 255, 0.14);
}

body.page-product #edu-modal .path-modal-box {
    border-color: rgba(154, 178, 235, 0.08) !important;
    background:
        radial-gradient(ellipse 82% 74% at 50% 4%, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.052) 34%, rgba(255, 255, 255, 0) 64%),
        radial-gradient(ellipse 86% 78% at 50% 47%, rgba(111, 135, 255, 0.068), rgba(137, 96, 255, 0.038) 42%, rgba(0, 0, 0, 0) 70%),
        linear-gradient(180deg, rgba(8, 10, 18, 0.97), rgba(0, 0, 0, 0.95)) !important;
    box-shadow:
        0 38px 108px rgba(0, 0, 0, 0.74),
        0 0 42px rgba(111, 135, 255, 0.12),
        0 0 76px rgba(137, 96, 255, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.13) !important;
}

body.page-product #edu-modal .path-modal-footer {
    border-color: rgba(166, 188, 255, 0.075) !important;
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.97), rgba(10, 10, 14, 0.90) 48%, rgba(0, 0, 0, 0.98)),
        radial-gradient(ellipse 42% 100% at 50% 0%, rgba(111, 87, 255, 0.034), rgba(0, 0, 0, 0) 70%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.045),
        inset 0 -1px 0 rgba(255, 255, 255, 0.026) !important;
}

body.page-product #edu-modal .path-modal-body {
    background:
        radial-gradient(ellipse 86% 110% at 50% 0%, rgba(111, 135, 255, 0.08), rgba(137, 96, 255, 0.035) 42%, rgba(0, 0, 0, 0.12) 72%),
        rgba(255, 255, 255, 0.032) !important;
}

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

body.page-product #edu-modal .edu-progress-dots::before {
    content: none !important;
    display: none !important;
}

body.page-product #edu-modal .progress-dot {
    width: clamp(44px, 5vw, 56px) !important;
    min-width: clamp(44px, 5vw, 56px) !important;
    border-radius: 14px !important;
}

body.page-product #edu-modal .progress-dot:focus-visible {
    outline: 2px solid rgba(111, 135, 255, 0.94) !important;
    outline-offset: 5px !important;
}

body.page-product #edu-modal .dot-inner {
    position: relative !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    border: 1px solid rgba(111, 135, 255, 0.52) !important;
    background:
        radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.18), transparent 38%),
        linear-gradient(180deg, rgba(14, 18, 40, 0.98), rgba(2, 3, 10, 0.98)) !important;
    box-shadow:
        0 0 0 1px rgba(137, 96, 255, 0.08),
        0 0 10px rgba(111, 135, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
    overflow: visible !important;
}

body.page-product #edu-modal .dot-inner::after {
    content: "" !important;
    position: absolute !important;
    inset: -6px !important;
    border-radius: inherit !important;
    background: radial-gradient(circle, rgba(111, 135, 255, 0.26), rgba(137, 96, 255, 0.10) 42%, transparent 70%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.28s ease !important;
}

body.page-product #edu-modal .progress-dot:hover .dot-inner::after,
body.page-product #edu-modal .progress-dot:focus-visible .dot-inner::after,
body.page-product #edu-modal .progress-dot.is-active .dot-inner::after,
body.page-product #edu-modal .progress-dot.is-completed .dot-inner::after {
    opacity: 1 !important;
}

body.page-product #edu-modal .progress-dot.is-active .dot-inner {
    border-color: rgba(142, 160, 255, 0.98) !important;
    background:
        radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.32), transparent 36%),
        linear-gradient(180deg, rgba(142, 160, 255, 0.98), rgba(96, 68, 224, 0.96)) !important;
    box-shadow:
        0 0 16px rgba(111, 135, 255, 0.48),
        0 0 26px rgba(137, 96, 255, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
}

body.page-product #edu-modal .progress-dot.is-completed .dot-inner {
    border-color: rgba(111, 135, 255, 0.72) !important;
    background:
        radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.20), transparent 36%),
        linear-gradient(180deg, rgba(90, 112, 235, 0.84), rgba(76, 54, 190, 0.78)) !important;
    box-shadow:
        0 0 12px rgba(111, 135, 255, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.20) !important;
}

body.page-product #edu-modal .edu-progress-dots.all-complete .progress-dot .dot-inner {
    border-color: rgba(111, 135, 255, 0.76) !important;
    background:
        radial-gradient(circle at 38% 28%, rgba(255, 255, 255, 0.22), transparent 36%),
        linear-gradient(180deg, rgba(111, 135, 255, 0.88), rgba(87, 60, 205, 0.82)) !important;
    box-shadow:
        0 0 14px rgba(111, 135, 255, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

body.page-product #edu-modal .dot-label {
    color: rgba(190, 199, 224, 0.62) !important;
    font-weight: 760 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.78) !important;
}

body.page-product #edu-modal .progress-dot:hover .dot-label,
body.page-product #edu-modal .progress-dot:focus-visible .dot-label {
    color: rgba(230, 236, 255, 0.86) !important;
}

body.page-product #edu-modal .progress-dot.is-active .dot-label {
    color: rgba(244, 247, 255, 0.94) !important;
}

body.page-product #edu-modal .progress-dot.is-completed .dot-label,
body.page-product #edu-modal .edu-progress-dots.all-complete .progress-dot .dot-label {
    color: rgba(202, 212, 244, 0.74) !important;
}

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.062) !important;
    background:
        radial-gradient(ellipse 100% 76% at 50% 0%, rgba(255, 255, 255, 0.072), rgba(255, 255, 255, 0.022) 52%, rgba(255, 255, 255, 0) 76%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.044), rgba(255, 255, 255, 0.012) 44%, rgba(0, 0, 0, 0.24)),
        var(--abc-walkthrough-panel) !important;
    box-shadow:
        0 16px 34px rgba(0, 0, 0, 0.54),
        0 0 18px rgba(126, 92, 245, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        inset 4px 0 0 rgba(126, 92, 245, 0.90) !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.046) 0%, rgba(255, 255, 255, 0.012) 42%, transparent 70%),
        radial-gradient(circle at 0% 50%, rgba(126, 92, 245, 0.18), transparent 42%),
        radial-gradient(circle at 100% 0%, rgba(111, 87, 255, 0.09), transparent 36%) !important;
}

body.page-product #edu-modal .path-modal-points.detail-card-mode.consult-split-mode .edu-detail-index {
    color: rgba(226, 232, 255, 0.98) !important;
    text-shadow:
        0 0 11px rgba(126, 92, 245, 0.52),
        0 0 22px rgba(111, 87, 255, 0.24) !important;
}

body.page-product #edu-modal .path-modal-points.detail-card-mode.consult-split-mode .edu-detail-title {
    color: rgba(246, 248, 255, 0.94) !important;
}

body.page-product #edu-modal .path-modal-points.detail-card-mode.consult-split-mode .edu-detail-text {
    color: rgba(205, 215, 241, 0.78) !important;
}

body.page-product #edu-modal .edu-modal-sublead:not([hidden]) {
    color: rgba(142, 117, 255, 0.96) !important;
    text-shadow:
        0 0 12px rgba(126, 92, 245, 0.34),
        0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

body.page-product #edu-modal[data-step="5"] .edu-modal-sublead:not([hidden]) {
    color: rgba(212, 184, 128, 0.88) !important;
    text-shadow:
        0 0 10px rgba(201, 160, 80, 0.24),
        0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

body.page-product #edu-modal[data-step="5"] .path-modal-points.detail-card-mode.consult-split-mode li:not(.edu-detail-card-link) {
    border-color: rgba(255, 255, 255, 0.062) !important;
    box-shadow:
        0 16px 34px rgba(0, 0, 0, 0.54),
        0 0 18px rgba(201, 160, 80, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        inset 4px 0 0 rgba(201, 160, 80, 0.74) !important;
}

body.page-product #edu-modal[data-step="5"] .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.046) 0%, rgba(255, 255, 255, 0.012) 42%, transparent 70%),
        radial-gradient(circle at 0% 50%, rgba(201, 160, 80, 0.14), transparent 42%) !important;
}

body.page-product #edu-modal[data-step="5"] .path-modal-points.detail-card-mode.consult-split-mode .edu-detail-index {
    color: rgba(238, 211, 150, 0.98) !important;
    text-shadow:
        0 0 10px rgba(201, 160, 80, 0.38),
        0 0 20px rgba(201, 160, 80, 0.16) !important;
}

body.page-product #edu-modal .edu-modal-next-btn:not(.is-final) {
    border-color: rgba(135, 115, 255, 0.92) !important;
    background:
        linear-gradient(165deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.04) 28%, rgba(42, 22, 108, 0.26) 70%, rgba(22, 13, 66, 0.34) 100%),
        linear-gradient(180deg, rgba(126, 92, 245, 0.96), rgba(80, 50, 190, 0.94)) !important;
    box-shadow:
        0 18px 36px rgba(0, 0, 0, 0.52),
        0 0 18px rgba(111, 87, 255, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

body.page-product #edu-modal .edu-modal-next-btn:not(.is-final):hover,
body.page-product #edu-modal .edu-modal-next-btn:not(.is-final):focus-visible {
    border-color: rgba(157, 137, 255, 0.98) !important;
    box-shadow:
        0 20px 40px rgba(0, 0, 0, 0.56),
        0 0 24px rgba(111, 87, 255, 0.42),
        inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
}

@media (orientation: landscape) and (max-height: 540px) {
    body.page-product #edu-modal .edu-progress-dots::before {
        content: none !important;
        display: none !important;
    }

    body.page-product #edu-modal .progress-dot {
        width: 40px !important;
        min-width: 40px !important;
    }
}

/* Medicare Compare desktop shell match: inherit Guided Walkthrough sizing without touching touch layouts. */
@media (hover: hover) and (pointer: fine) and (min-width: 861px) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium {
        --abc-compare-guide-pad-x: 24px;
        --abc-compare-guide-pad-y: 20px;
        --abc-compare-guide-header-h: 90px;
        --abc-compare-guide-footer-h: 90px;
        width: min(1440px, calc(100vw - (var(--abc-compare-guide-pad-x) * 2))) !important;
        height: min(860px, calc(100vh - (var(--abc-compare-guide-pad-y) * 2) - env(safe-area-inset-bottom, 0px))) !important;
        min-height: 0 !important;
        max-height: calc(100vh - (var(--abc-compare-guide-pad-y) * 2) - env(safe-area-inset-bottom, 0px)) !important;
        grid-template-rows: var(--abc-compare-guide-header-h) minmax(0, 1fr) var(--abc-compare-guide-footer-h) !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium .find-doctor-gate-head {
        min-height: var(--abc-compare-guide-header-h) !important;
        height: var(--abc-compare-guide-header-h) !important;
        box-sizing: border-box !important;
        border: 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.027) 26%, rgba(0, 0, 0, 0) 66%),
            linear-gradient(180deg, rgba(7, 8, 11, 0.984) 0%, rgba(0, 0, 0, 0.97) 100%),
            #000 !important;
        box-shadow: none !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium .find-doctor-gate-body {
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium .medicare-compare-footer {
        min-height: var(--abc-compare-guide-footer-h) !important;
        height: var(--abc-compare-guide-footer-h) !important;
        box-sizing: border-box !important;
        border: 0 !important;
        background:
            linear-gradient(90deg, rgba(0, 0, 0, 0.97), rgba(10, 10, 14, 0.90) 48%, rgba(0, 0, 0, 0.98)),
            radial-gradient(ellipse 42% 100% at 50% 0%, rgba(111, 87, 255, 0.034), rgba(0, 0, 0, 0) 70%) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.045),
            inset 0 -1px 0 rgba(255, 255, 255, 0.026) !important;
    }
}

@media (hover: hover) and (pointer: fine) and (min-width: 900px) and (max-width: 1366px) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium {
        --abc-compare-guide-pad-x: clamp(8px, 2.6vw, 36px);
        --abc-compare-guide-pad-y: clamp(8px, 1.8vh, 18px);
        width: min(1240px, calc(100vw - (var(--abc-compare-guide-pad-x) * 2))) !important;
        height: min(860px, calc(100vh - (var(--abc-compare-guide-pad-y) * 2) - env(safe-area-inset-bottom, 0px))) !important;
        max-height: calc(100vh - (var(--abc-compare-guide-pad-y) * 2) - env(safe-area-inset-bottom, 0px)) !important;
    }
}

@media (hover: hover) and (pointer: fine) and (min-width: 861px) and (max-width: 899px) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium {
        --abc-compare-guide-pad-x: clamp(8px, 2vw, 18px);
        --abc-compare-guide-pad-y: clamp(8px, 1.8vh, 18px);
        --abc-compare-guide-header-h: 82px;
        --abc-compare-guide-footer-h: 82px;
        width: min(860px, calc(100vw - (var(--abc-compare-guide-pad-x) * 2))) !important;
        height: min(860px, calc(100vh - (var(--abc-compare-guide-pad-y) * 2) - env(safe-area-inset-bottom, 0px))) !important;
        max-height: calc(100vh - (var(--abc-compare-guide-pad-y) * 2) - env(safe-area-inset-bottom, 0px)) !important;
    }
}

@media (hover: hover) and (pointer: fine) and (min-width: 861px) and (max-height: 900px) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium {
        --abc-compare-guide-header-h: 78px;
        --abc-compare-guide-footer-h: 78px;
    }
}

/* Guided Walkthrough tablet chrome match: keep header/footer equal by orientation. */
@media (pointer: coarse) and (min-width: 641px) and (max-width: 1024px) and (orientation: landscape) {
    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: 64px !important;
        height: 64px !important;
    }

    body.page-product #edu-modal .path-modal-footer {
        padding: 0 20px 0 24px !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn {
        width: 148px !important;
        min-width: 148px !important;
        max-width: 148px !important;
        min-height: 46px !important;
        height: 46px !important;
        padding: 0 26px !important;
    }

    body.page-product #edu-modal .edu-modal-jump-cta {
        width: 185px !important;
        min-width: 185px !important;
        max-width: 185px !important;
        min-height: 46px !important;
        height: 46px !important;
        padding: 0 24px !important;
    }

    body.page-product #edu-modal .edu-back-btn {
        min-height: 46px !important;
        height: 46px !important;
    }
}

@media (pointer: coarse) and (min-width: 641px) and (max-width: 1024px) and (orientation: portrait) {
    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: 82px !important;
        height: 82px !important;
    }

    body.page-product #edu-modal .path-modal-footer {
        padding: 0 14px 0 18px !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn {
        width: 132px !important;
        min-width: 132px !important;
        max-width: 132px !important;
        min-height: 40px !important;
        height: 40px !important;
        padding: 0 18px !important;
    }

    body.page-product #edu-modal .edu-modal-jump-cta {
        width: 169px !important;
        min-width: 169px !important;
        max-width: 169px !important;
        min-height: 40px !important;
        height: 40px !important;
        padding: 0 18px !important;
    }

    body.page-product #edu-modal .edu-back-btn {
        min-height: 40px !important;
        height: 40px !important;
    }
}

/* Phone landscape modal fit: keep tablet landscape untouched while freeing body space. */
@media (pointer: coarse) and (orientation: landscape) and (max-width: 960px) and (max-height: 540px) {
    body.page-product #edu-modal.path-modal {
        --edu-landscape-header-h: 48px;
        --edu-landscape-footer-h: 48px;
        --edu-fit-card-h: 37px;
        --edu-fit-gap: 2px;
        --edu-fit-card-pad-y: 4px;
    }

    body.page-product #edu-modal .path-modal-header,
    body.page-product #edu-modal.compare-mode .path-modal-header {
        min-height: 48px !important;
        height: 48px !important;
    }

    body.page-product #edu-modal .path-modal-footer {
        min-height: 48px !important;
        height: 48px !important;
        padding: 0 18px 0 22px !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn:not(.is-final) {
        width: 126px !important;
        min-width: 126px !important;
        max-width: 126px !important;
        min-height: 36px !important;
        height: 36px !important;
        padding: 0 18px !important;
        border-radius: 12px !important;
        font-size: 9.4px !important;
        letter-spacing: 0.10em !important;
    }

    body.page-product #edu-modal .edu-modal-next-btn.is-final {
        width: 156px !important;
        min-width: 156px !important;
        max-width: 156px !important;
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 18px !important;
        border-radius: 12px !important;
        font-size: 9px !important;
        letter-spacing: 0.825px !important;
    }

    body.page-product #edu-modal .edu-modal-jump-cta,
    body.page-product #edu-modal .edu-back-btn {
        min-height: 34px !important;
        height: 34px !important;
    }

    body.page-product #edu-modal:not(.compare-mode) .path-modal-points.detail-card-mode.consult-split-mode li:not(.edu-detail-card-link) {
        min-height: 37px !important;
        height: 37px !important;
        flex-basis: 37px !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        border-radius: 22px !important;
        background:
            linear-gradient(180deg, rgba(7, 8, 11, 0.985), rgba(0, 0, 0, 0.975)) !important;
        overflow: hidden !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        border-radius: 22px 22px 0 0 !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.032) 24%, rgba(0, 0, 0, 0) 66%),
            linear-gradient(180deg, rgba(7, 8, 11, 0.985) 0%, rgba(0, 0, 0, 0.97) 100%),
            #000 !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-body {
        background:
            radial-gradient(ellipse 84% 110% at 50% 0%, rgba(111, 135, 255, 0.055), rgba(0, 0, 0, 0) 62%),
            rgba(0, 0, 0, 0.72) !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        border-radius: 0 0 22px 22px !important;
        background:
            linear-gradient(90deg, rgba(0, 0, 0, 0.97), rgba(10, 10, 14, 0.91) 48%, rgba(0, 0, 0, 0.985)),
            radial-gradient(ellipse 42% 100% at 50% 0%, rgba(201, 160, 80, 0.055), rgba(0, 0, 0, 0) 70%),
            #000 !important;
    }
}

/* Medicare Compare touch chrome color match only: preserve existing mobile/tablet layout and sizing. */
@media (pointer: coarse) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium .find-doctor-gate-head {
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.027) 26%, rgba(0, 0, 0, 0) 66%),
            linear-gradient(180deg, rgba(7, 8, 11, 0.984) 0%, rgba(0, 0, 0, 0.97) 100%),
            #000 !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium .medicare-compare-footer {
        background:
            linear-gradient(90deg, rgba(0, 0, 0, 0.97), rgba(10, 10, 14, 0.90) 48%, rgba(0, 0, 0, 0.98)),
            radial-gradient(ellipse 42% 100% at 50% 0%, rgba(111, 87, 255, 0.034), rgba(0, 0, 0, 0) 70%) !important;
    }
}

@media (pointer: coarse) and (orientation: portrait) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium .medicare-compare-footer {
        border-top: 0 !important;
        box-shadow:
            inset 0 -1px 0 rgba(255, 255, 255, 0.026) !important;
    }
}

/* Medicare Compare phone landscape final seam lock: non-summary body edge must match Summary. */
@media (pointer: coarse) and (orientation: landscape) and (max-width: 960px) and (max-height: 540px) {
    body.page-medicare #compare-plans-gate.medicare-compare-premium,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium {
        width: min(82vw, calc(100vw - 22px)) !important;
        height: 84dvh !important;
        min-height: 0 !important;
        max-height: 84dvh !important;
        top: 8dvh !important;
        transform: translateX(-50%) !important;
        grid-template-rows: 48px minmax(0, 1fr) 48px !important;
        border-color: transparent !important;
        border-left-color: #000 !important;
        background: #000 !important;
        box-shadow:
            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) !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium:not(.is-summary) .find-doctor-gate-body::after,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium:not(.is-summary) .find-doctor-gate-body::after {
        box-shadow:
            inset 5px 0 0 rgba(0, 0, 0, 0.95),
            inset 0 1px 0 rgba(255,255,255,0.045),
            inset 0 -1px 0 rgba(255,255,255,0.052) !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium:not(.is-summary) .find-doctor-gate-body,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium:not(.is-summary) .find-doctor-gate-body {
        margin-left: -2px !important;
        margin-right: -2px !important;
        width: calc(100% + 4px) !important;
        background:
            linear-gradient(90deg, rgba(0,0,0,1) 0 10px, rgba(0,0,0,0.70) 16px, rgba(0,0,0,0) 30px),
            radial-gradient(ellipse 76% 78% at 50% 18%, rgba(111,135,255,0.105), rgba(111,135,255,0.024) 46%, transparent 72%),
            radial-gradient(ellipse 62% 56% at 50% 100%, rgba(221,190,120,0.060), transparent 68%),
            linear-gradient(180deg, rgba(8,10,17,0.96), rgba(2,4,10,0.98) 56%, rgba(0,0,0,0.98)) !important;
    }

    body.page-medicare #compare-plans-gate.medicare-compare-premium:not(.is-summary)::after,
    body.page-product.page-medicare .find-doctor-gate.compare-plans-gate.medicare-compare-premium:not(.is-summary)::after {
        content: "" !important;
        position: absolute !important;
        top: 48px !important;
        bottom: 48px !important;
        left: -1px !important;
        z-index: 9 !important;
        width: 16px !important;
        border-radius: 0 !important;
        background: linear-gradient(90deg, rgba(0, 0, 0, 1) 0 5px, rgba(0, 0, 0, 0.76) 9px, rgba(0, 0, 0, 0) 100%) !important;
        pointer-events: none !important;
    }
}

/* Product modal layer lock: open popups must sit above fixed mobile header/footer chrome. */
body.page-product #edu-modal.path-modal[aria-hidden="false"],
body.page-product #edu-modal.path-modal.modal-opening,
body.page-product .path-modal.edu-modal.enrollment-dates-modal[aria-hidden="false"],
body.page-product .path-modal.edu-modal.enrollment-dates-modal.modal-opening {
    z-index: 23000 !important;
}

body.page-product .find-doctor-gate-backdrop.is-open,
body.page-product .sidebar-call-pop-backdrop.is-open {
    z-index: 23000 !important;
}

body.page-product .find-doctor-gate.is-open,
body.page-product .sidebar-call-pop.is-open {
    z-index: 23010 !important;
}

/* Resource panel popup glow: match Enrollment Dates aura without adding a blue outline. */
body.page-product .find-doctor-gate.is-open,
body.page-product .sidebar-call-pop.is-open {
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow:
        0 32px 78px rgba(0,0,0,0.70),
        0 0 42px rgba(76, 92, 210, 0.30),
        0 0 92px rgba(54, 68, 162, 0.22),
        inset 0 1px 0 rgba(255,255,255,0.09),
        inset 0 -1px 0 rgba(255,255,255,0.04) !important;
}

/* Dental/Vision Plan Limits touch footer/header lock. */
@media (max-width: 1024px), (min-width: 1025px) and (max-width: 1440px) and (pointer: coarse) {
    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-box {
        border-radius: 10px !important;
        overflow: hidden !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        border-radius: 10px 10px 0 0 !important;
        overflow: hidden !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-title {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: auto !important;
        max-width: calc(100% - 112px) !important;
        margin: 0 !important;
        text-align: center !important;
        transform: translate(-50%, -50%) !important;
        pointer-events: none !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .dv-limits-back,
    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-close {
        position: relative !important;
        z-index: 1 !important;
        flex: 0 0 auto !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-close {
        margin-left: auto !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        display: flex !important;
        grid-template-columns: none !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 0 !important;
        border-radius: 0 0 10px 10px !important;
        overflow: hidden !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .enrollment-dates-note {
        display: none !important;
    }

    body.page-health-dental-vision .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer .enrollment-dates-cta {
        flex: 0 0 auto !important;
        width: min(160px, 44vw) !important;
        max-width: 160px !important;
        min-width: 144px !important;
        justify-self: end !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }
}

/* Shared popup shell corners: match the Medicare Enrollment Dates outer radius only. */
body.page-product .find-doctor-gate,
body.page-product .sidebar-call-pop,
body.page-product .path-modal .path-modal-box,
body.page-product .product-video-modal {
    border-radius: 22px !important;
    overflow: hidden !important;
}

body.page-product .find-doctor-gate-body,
body.page-product .sidebar-call-pop-body,
body.page-product .find-doctor-gate-body::before,
body.page-product .find-doctor-gate-body::after,
body.page-product .sidebar-call-pop-body::before,
body.page-product .sidebar-call-pop-body::after {
    border-radius: 0 0 22px 22px !important;
}

body.page-product .find-doctor-gate:not(:has(.find-doctor-gate-footer)) .find-doctor-gate-body,
body.page-product .sidebar-call-pop:not(:has(.sidebar-call-pop-footer)) .sidebar-call-pop-body,
body.page-product .find-doctor-gate:not(:has(.find-doctor-gate-footer)) .find-doctor-gate-body::before,
body.page-product .find-doctor-gate:not(:has(.find-doctor-gate-footer)) .find-doctor-gate-body::after,
body.page-product .sidebar-call-pop:not(:has(.sidebar-call-pop-footer)) .sidebar-call-pop-body::before,
body.page-product .sidebar-call-pop:not(:has(.sidebar-call-pop-footer)) .sidebar-call-pop-body::after {
    border-radius: 0 0 22px 22px !important;
}

body.page-product .find-doctor-gate-head,
body.page-product .sidebar-call-pop-head,
body.page-product .path-modal-header,
body.page-product .product-video-modal-head {
    border-radius: 22px 22px 0 0 !important;
}

body.page-product .find-doctor-gate-footer,
body.page-product .sidebar-call-pop-footer,
body.page-product .path-modal-footer,
body.page-product .product-video-modal-body {
    border-radius: 0 0 22px 22px !important;
}

/* Touch Enrollment Dates modal corner lock: match header/footer to the touch shell. */
@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-box {
        border-radius: 10px !important;
        overflow: hidden !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-header {
        border-radius: 10px 10px 0 0 !important;
        overflow: hidden !important;
    }

    body.page-product .path-modal.edu-modal.enrollment-dates-modal .path-modal-footer {
        border-radius: 0 0 10px 10px !important;
        overflow: hidden !important;
    }
}

/* Touch Guided Walkthrough phone-portrait corner lock. */
@media (max-width: 640px) and (orientation: portrait) {
    body.page-product #edu-modal .path-modal-box {
        border-radius: 20px !important;
        overflow: hidden !important;
    }

    body.page-product #edu-modal .path-modal-header {
        border-radius: 20px 20px 0 0 !important;
        overflow: hidden !important;
    }

    body.page-product #edu-modal .path-modal-footer {
        border-radius: 0 0 20px 20px !important;
        overflow: hidden !important;
    }
}

/* Touch small-popup corner lock: keep the chrome layers aligned with the shell. */
@media (max-width: 1024px), (min-width: 1025px) and (max-width: 1440px) and (pointer: coarse) {
    body.page-product .find-doctor-gate,
    body.page-product .sidebar-call-pop {
        border-radius: 17px !important;
        overflow: hidden !important;
    }

    body.page-product .find-doctor-gate-head,
    body.page-product .sidebar-call-pop-head {
        border-radius: 17px 17px 0 0 !important;
        overflow: hidden !important;
    }

    body.page-product .find-doctor-gate-footer,
    body.page-product .sidebar-call-pop-footer,
    body.page-product .find-doctor-gate-body,
    body.page-product .sidebar-call-pop-body,
    body.page-product .find-doctor-gate-body::before,
    body.page-product .find-doctor-gate-body::after,
    body.page-product .sidebar-call-pop-body::before,
    body.page-product .sidebar-call-pop-body::after {
        border-radius: 0 0 17px 17px !important;
        overflow: hidden !important;
    }
}

/* Shared progress-dot optical baseline: active fill/glow must not read lower. */
body.page-product #edu-modal .progress-dot.is-active .dot-inner,
body.page-product #edu-modal .progress-dot[aria-current="step"] .dot-inner,
body.page-product #edu-modal .progress-dot[aria-selected="true"] .dot-inner,
body.page-product #edu-modal .progress-dot[aria-pressed="true"] .dot-inner {
    transform: translateY(-1px) !important;
}

/* Chat 3 typography audit: prevent narrow-phone CTA and 101 title clipping. */
@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 {
        letter-spacing: 0.055em !important;
        line-height: 1.12 !important;
    }

    body.page-product #topic-101 > .section-title,
    body.page-product #group-education > .section-title {
        line-height: 1.12 !important;
    }
}

@media (max-width: 390px) {
    body.page-product .product-hero .cta-core.cta-primary.float-cta {
        width: 176px !important;
        min-width: 176px !important;
        max-width: 176px !important;
    }

    body.page-product #topic-101 > .section-title,
    body.page-product #group-education > .section-title {
        font-size: clamp(18px, 5.4vw, 23px) !important;
        letter-spacing: 0.12px !important;
        line-height: 1.18 !important;
    }
}

/* Shared small resource popup fit: compact phone layouts without touching full forms. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) {
        width: min(430px, calc(100vw - 40px)) !important;
    }

    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-gate-content {
        max-width: min(100%, 410px) !important;
    }

    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-gate-actions {
        width: min(100%, 382px) !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-gate-body {
        min-height: 236px !important;
        padding: 26px 26px 16px !important;
    }

    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-gate-body::before,
    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-gate-body::after {
        inset: 14px 20px 6px !important;
    }

    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-choice,
    body.page-product .find-doctor-gate:not(.instant-quote-modal):not(.medicare-compare-premium):not(.drug-plan-bridge) .find-doctor-choice,
    body.page-product .find-doctor-gate.drug-plan-bridge:not(.instant-quote-modal):not(.medicare-compare-premium) .find-doctor-choice {
        min-height: 52px !important;
        height: 52px !important;
    }
}

/* Health/Medicare Find a Doctor WebMD embed: full-bleed under the ABC header, not a card inside the popup. */
body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body {
    padding: 0 !important;
}

body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::before,
body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::after,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::before,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::after,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::before,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::after,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::before,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-body::after {
    display: none !important;
    opacity: 0 !important;
}

body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-content,
body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-embed,
body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-content,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-embed,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-content,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-embed,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .find-doctor-gate-content,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-embed,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
}

body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell,
body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell,
body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell,
body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open .provider-directory-frame-shell {
    border-radius: 0 0 17px 17px !important;
}

@media (orientation: landscape) and (max-height: 560px) {
    body.page-medicare #find-doctor-gate.provider-directory-gate.is-provider-directory-open,
    body.page-health-dental-vision #find-doctor-gate.provider-directory-gate.is-provider-directory-open,
    body.page-health-marketplace #find-doctor-gate.provider-directory-gate.is-provider-directory-open,
    body.page-health-private #find-doctor-gate.provider-directory-gate.is-provider-directory-open {
        width: min(780px, calc(100vw - 80px)) !important;
    }
}

/* Health Prescription Savings: phone-landscape full-fit panel. */
@media (orientation: landscape) and (max-height: 560px) {
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open {
        width: min(780px, calc(100vw - 80px)) !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content {
        align-items: stretch !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card {
        grid-template-columns: minmax(190px, 0.82fr) minmax(0, 1.18fr) !important;
        gap: 16px !important;
        padding: 14px 20px 18px !important;
        border-radius: 0 0 17px 17px !important;
        overflow-x: hidden !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-form,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-form,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-form,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-form {
        min-width: 0 !important;
    }
}

/* Health Prescription Savings: phone-portrait full-fit panel. */
@media (max-width: 640px) and (orientation: portrait) {
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body {
        padding: 0 !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::before,
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::after,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::before,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::after,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::before,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::after,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::before,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-body::after {
        display: none !important;
        opacity: 0 !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .find-doctor-gate-content,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-embed,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: 100% !important;
        min-height: 0 !important;
    }

    body.page-health-dental-vision #dv-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-medicare #medicare-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-marketplace #marketplace-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card,
    body.page-health-private #private-rx-check.prescription-savings-gate.is-prescription-savings-open .prescription-savings-card {
        border-radius: 0 0 17px 17px !important;
        padding: 28px 24px 52px !important;
    }
}

/* Dental/Vision Request Quote: match the small-popup phone-landscape family. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-health-dental-vision #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) {
        width: min(430px, calc(100vw - 40px)) !important;
    }

    body.page-health-dental-vision #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
        min-height: 48px !important;
        padding: 10px 18px 8px 20px !important;
        align-items: center !important;
    }

    body.page-health-dental-vision #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
        width: 404px !important;
        max-width: 100% !important;
        transform: none !important;
    }

    body.page-health-dental-vision #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-actions {
        width: 382px !important;
        max-width: calc(100% - 22px) !important;
    }
}

/* Shared Request Quote intro: match the approved small-popup phone-landscape family.
   Applies only before the quote/call form opens. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) {
        width: min(430px, calc(100vw - 40px)) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-head {
        min-height: 48px !important;
        padding: 10px 18px 8px 20px !important;
        align-items: center !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-content {
        width: 404px !important;
        max-width: 100% !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .instant-quote-flow,
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .instant-quote-panel-intro {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-actions {
        width: min(100%, 382px) !important;
        max-width: calc(100% - 22px) !important;
    }
}

/* Request Quote form states: compact the oversized header on sideways phones only. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        min-height: 52px !important;
        height: 52px !important;
        padding: 0 18px !important;
        align-items: center !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-title {
        align-self: center !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back,
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close {
        align-self: center !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        max-height: calc(100dvh - 76px) !important;
    }
}

/* Request Quote notes field: more usable on mobile without changing desktop. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        max-height: calc(100dvh - 12px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        max-height: calc(100dvh - 64px) !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        gap: 13px 24px !important;
    }

    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        gap: 10px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        gap: 8px 9px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 54px !important;
        max-height: 64px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea::placeholder {
        font-size: 10px !important;
        line-height: 1.15 !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product .find-doctor-gate.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        padding: 20px 18px 24px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form-grid,
    body.page-product .instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        gap: 5px 8px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea {
        min-height: 32px !important;
        max-height: 32px !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form textarea::placeholder {
        font-size: 9.5px !important;
        line-height: 1.05 !important;
    }
}

/* Request Quote mobile field focus: prevent iPhone input auto-zoom without disabling pinch zoom. */
@media (max-width: 960px) {
    body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]),
    body.page-product .instant-quote-modal .instant-quote-form select,
    body.page-product .instant-quote-modal .instant-quote-form textarea {
        font-size: 16px !important;
    }
}

/* Request Quote intro: match the approved small-popup phone-portrait family.
   Applies only before the quote/call form opens. */
@media (max-width: 640px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) {
        min-height: 0 !important;
        height: auto !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .find-doctor-gate-body {
        min-height: 236px !important;
        height: 236px !important;
        padding: 26px 26px 16px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .find-doctor-gate-content,
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .instant-quote-flow,
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .instant-quote-panel-intro {
        width: 100% !important;
        max-width: 100% !important;
        gap: 14px !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .find-doctor-gate-actions {
        width: 100% !important;
        max-width: 100% !important;
        gap: 10px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .find-doctor-choice {
        min-height: 52px !important;
        height: 52px !important;
    }
}

@media (max-width: 640px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .find-doctor-gate-actions {
        transform: translateY(-6.35px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))):not(:has(.instant-quote-success:not([hidden]))) .find-doctor-gate-copy {
        transform: translateY(7.7px) !important;
    }
}

/* Request Quote confirmation: keep the phone-portrait success state out of intro sizing. */
@media (max-width: 640px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) {
        min-height: 0 !important;
        height: auto !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-head {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px !important;
        justify-content: end !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-title {
        display: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-body {
        box-sizing: border-box !important;
        min-height: 446px !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 14px 14px 18px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-content,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-flow {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-footer {
        display: none !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-actions {
        transform: translateY(4px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-copy {
        transform: translateY(-6px) !important;
    }
}

/* Small resource popups: mobile copy must not exceed two lines. */
@media (max-width: 960px) {
    body.page-product .find-doctor-gate:not(.medicare-compare-premium):not(:has(.instant-quote-form:not([hidden]))) .find-doctor-gate-copy {
        display: -webkit-box !important;
        max-height: 3.1em !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }
}

/* Request Quote final state polish: confirmation has its own header and grows only when calendar choices open. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) {
        top: 52% !important;
        bottom: auto !important;
        width: min(100% - 24px, 430px) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 32px) !important;
        transform: translate(-50%, -50%) scale(1) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-head {
        min-height: 54px !important;
        height: 54px !important;
        padding: 0 12px 0 20px !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-title {
        display: block !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        transform: none !important;
        text-align: left !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close {
        align-self: center !important;
        margin: 0 !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-body {
        box-sizing: border-box !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 12px 14px 14px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-content,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-flow {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-footer {
        display: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-booking-success {
        box-sizing: border-box !important;
        gap: 7px !important;
        width: min(100%, 368px) !important;
        min-height: 0 !important;
        padding: 18px 16px !important;
        align-content: center !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-booking-success h4 {
        font-size: 25px !important;
        line-height: 0.92 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-booking-success p {
        max-width: 34ch !important;
        font-size: 10.5px !important;
        line-height: 1.22 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-success-time,
    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-success-actions,
    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-calendar-options {
        width: min(100%, 314px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-calendar-link {
        min-height: 36px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-calendar-link[aria-expanded="true"] {
        border-color: rgba(184, 197, 255, 0.45) !important;
        background:
            radial-gradient(ellipse 88% 130% at 50% -22%, rgba(255, 255, 255, 0.14), transparent 60%),
            linear-gradient(135deg, rgba(76, 96, 190, 0.92), rgba(99, 70, 180, 0.88)) !important;
    }
}

/* Request Quote mobile/tablet field text should match the compact custom dropdown scale. */
@media (max-width: 1180px) {
    body.page-product .instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]),
    body.page-product .instant-quote-modal .instant-quote-form select,
    body.page-product .instant-quote-modal .instant-quote-form textarea {
        font-size: 10.5px !important;
        font-weight: 850 !important;
    }

    body.page-product .instant-quote-modal .instant-quote-form input::placeholder,
    body.page-product .instant-quote-modal .instant-quote-form textarea::placeholder {
        font-size: 10.5px !important;
    }
}

body.page-product .panel-side.advisor-orbit .tools-list button.cta-resource.abc-clarity-resource-trigger,
body.page-product .panel-side.advisor-orbit .tools-list button.cta-resource[data-iul-illustration-open] {
    font-family: Inter, Roboto, sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    letter-spacing: 0.4px !important;
    line-height: inherit !important;
    text-transform: inherit !important;
    appearance: none !important;
}

/* Request Quote sideways phones: size by available height, not device model. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        top: 50% !important;
        bottom: auto !important;
        left: 50% !important;
        width: min(820px, calc(100vw - 58px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 56px) !important;
        display: grid !important;
        grid-template-rows: 44px minmax(0, 1fr) !important;
        overflow: hidden !important;
        transform: translate(-50%, -50%) scale(1) !important;
        --abc-popup-rest-transform: translate(-50%, -50%) scale(1);
        --abc-popup-start-transform: translate(-50%, calc(-50% + 10px)) scale(0.982);
        --abc-popup-lift-transform: translate(-50%, calc(-50% - 1px)) scale(1.002);
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px 0 16px !important;
        align-items: center !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        box-sizing: border-box !important;
        min-height: 0 !important;
        height: 100% !important;
        max-height: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 12px 10px 10px !important;
        scrollbar-width: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::-webkit-scrollbar {
        display: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        min-height: 0 !important;
        height: auto !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
        box-sizing: border-box !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 0 0 max(10px, env(safe-area-inset-bottom, 0px)) !important;
        overflow: visible !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-footer {
        display: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-submit {
        position: relative !important;
        z-index: 2 !important;
        margin-bottom: 0 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-notice:empty {
        display: none !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 400px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        padding-top: 12px !important;
        padding-bottom: 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
        gap: 4px 10px !important;
        padding-bottom: max(8px, env(safe-area-inset-bottom, 0px)) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form textarea {
        min-height: 28px !important;
        max-height: 28px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-submit {
        min-height: 28px !important;
    }
}

/* Request Quote form header: match the Coverage Calculator mobile/tablet family. */
@media (max-width: 1180px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        min-height: 82px !important;
        height: 82px !important;
        padding: 16px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.075) !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.045) 28%, rgba(0, 0, 0, 0.82)),
            #05060a !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-title {
        color: transparent !important;
        background-image: linear-gradient(135deg, rgba(214, 228, 255, 0.98), var(--neon-blue, #6f86ff), var(--neon-purple, #8b5cf6), 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: 800 12px/1.2 'Montserrat', Arial, sans-serif !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
        text-shadow: none !important;
        animation: abcCoverageTitleShift var(--interactive-shift-duration, 5.6s) ease-in-out infinite !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        min-height: 28px !important;
        border: 1px solid rgba(0, 0, 0, 0) !important;
        border-radius: 7px !important;
        background: rgba(9, 12, 28, 0.74) !important;
        box-shadow:
            inset 3px 3px 6px #000,
            inset -1px -1px 4px #1a1a1a,
            0 1px 0 rgba(255, 255, 255, 0.1) !important;
        color: #6f87ff !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back svg {
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        width: 18px !important;
        height: 18px !important;
        margin: auto !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back svg path {
        fill: none !important;
        stroke: currentColor !important;
        stroke-width: 2.4 !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back::before,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back::after {
        content: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::before,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::after {
        width: 10px !important;
        height: 2px !important;
        background: #6f87ff !important;
        box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back:hover,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back:focus-visible {
        color: #e4c470 !important;
        background: #050505 !important;
        box-shadow:
            inset 3px 3px 6px #000,
            inset -1px -1px 4px #1a1a1a,
            inset 0 0 13px rgba(228, 196, 112, 0.16),
            0 1px 0 rgba(255, 255, 255, 0.1) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:hover,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:focus-visible {
        border-color: rgba(0, 0, 0, 0) !important;
        background: #050505 !important;
        box-shadow:
            inset 3px 3px 6px #000,
            inset -1px -1px 4px #1a1a1a,
            inset 0 0 13px rgba(239, 68, 68, 0.18),
            0 1px 0 rgba(255, 255, 255, 0.1) !important;
        transform: none !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px 0 16px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
        border-radius: 6px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back svg {
        width: 15px !important;
        height: 15px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::before,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::after {
        width: 8px !important;
        height: 1.5px !important;
        box-shadow: 0 0 6px rgba(111, 135, 255, 0.52) !important;
    }
}

/* Request Quote phone portrait: match Coverage Calculator lead-form rhythm. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        width: min(412px, calc(100vw - 18px)) !important;
        height: min(661px, calc(100dvh - 18px)) !important;
        max-height: calc(100dvh - 18px) !important;
        display: grid !important;
        grid-template-rows: 66px minmax(0, 1fr) !important;
        overflow: hidden !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        grid-template-columns: 28px minmax(0, 1fr) 28px !important;
        gap: 18px !important;
        min-height: 66px !important;
        height: 66px !important;
        padding: 12px 14px 12px 16px !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head::before,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head::after,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::before,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
        display: none !important;
        opacity: 0 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        background:
            linear-gradient(90deg, rgba(37, 99, 235, 0.075), rgba(10, 12, 18, 0.08) 42%, rgba(124, 58, 237, 0.06)),
            linear-gradient(rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0)) !important;
        border-top: 0 !important;
        box-shadow: none !important;
        padding: 14px 14px 18px !important;
        height: 100% !important;
        max-height: calc(100dvh - 84px) !important;
        align-content: start !important;
        align-items: start !important;
        overflow-y: auto !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        align-items: stretch !important;
        justify-content: flex-start !important;
        height: auto !important;
        min-height: 0 !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]) {
        align-self: start !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        gap: 8px 10px !important;
        padding: 0 0 4px !important;
        align-content: start !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-head {
        gap: 5px !important;
        min-height: 132px !important;
        padding: 12px 14px !important;
        border-radius: 12px !important;
        align-content: center !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-head h4 {
        font-size: 27px !important;
        line-height: 0.88 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-head::after {
        max-width: none !important;
        margin-top: 0 !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-grid,
    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 7px 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-grid label,
    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-booking-form .instant-quote-form-grid label {
        gap: 3px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-grid label > span,
    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-panel-label {
        font-size: 9.2px !important;
        line-height: 1.05 !important;
        letter-spacing: 0.045em !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]),
    body.page-product #instant-quote-modal.instant-quote-modal .instant-select-trigger,
    body.page-product #instant-quote-modal.instant-quote-modal .instant-booking-menu-button {
        height: 42px !important;
        padding: 0 9px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form textarea {
        min-height: 68px !important;
        max-height: 78px !important;
        padding: 8px 9px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-consent {
        margin-top: 2px !important;
        gap: 8px !important;
        font-size: 10.5px !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-submit {
        min-height: 36px !important;
        margin-top: 3px !important;
        border-radius: 9px !important;
        font-size: 12px !important;
        border-color: rgba(132, 154, 255, 0.42) !important;
        border-left-color: rgba(160, 130, 255, 0.54) !important;
        color: rgba(255, 255, 255, 0.98) !important;
        background:
            radial-gradient(ellipse 90% 120% at 50% -18%, rgba(255, 255, 255, 0.2), transparent 58%),
            linear-gradient(135deg, rgba(84, 124, 255, 0.9), rgba(143, 91, 255, 0.78) 52%, rgba(24, 20, 64, 0.92)),
            rgba(0, 0, 0, 0.58) !important;
        box-shadow:
            0 18px 44px rgba(0, 0, 0, 0.48),
            0 0 30px rgba(93, 119, 255, 0.28),
            0 0 18px rgba(146, 100, 255, 0.18),
            inset 0 1px 0 rgba(255, 255, 255, 0.18),
            inset 0 -16px 30px rgba(0, 0, 0, 0.32) !important;
    }
}

/* Request Quote mobile/tablet labels: blue labels, white values, muted placeholders. */
@media (max-width: 1180px), (max-width: 1366px) and (pointer: coarse) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head > span {
        color: rgba(168, 205, 255, 0.98) !important;
        text-shadow:
            0 0 14px rgba(82, 136, 255, 0.34),
            0 0 4px rgba(168, 205, 255, 0.14) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-grid label > span,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-panel-label {
        color: rgba(176, 196, 255, 0.88) !important;
        text-shadow: 0 0 10px rgba(82, 136, 255, 0.18) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form input:not([type="checkbox"]):not([type="hidden"]),
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form textarea,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select-trigger,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button {
        color: rgba(248, 250, 255, 0.97) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form input::placeholder,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form textarea::placeholder {
        color: rgba(166, 174, 197, 0.62) !important;
        opacity: 1 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select.is-placeholder .instant-select-trigger,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button.is-placeholder {
        color: rgba(166, 174, 197, 0.62) !important;
        font-size: 10.5px !important;
        line-height: 1.15 !important;
        font-weight: 800 !important;
        opacity: 1 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select-trigger i,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button i {
        width: 0 !important;
        height: 0 !important;
        flex: 0 0 auto !important;
        margin-left: 10px !important;
        border-left: 5px solid transparent !important;
        border-right: 5px solid transparent !important;
        border-top: 6px solid rgba(169, 145, 255, 0.96) !important;
        border-bottom: 0 !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select.is-open .instant-select-trigger i,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button[aria-expanded="true"] i {
        transform: rotate(180deg) !important;
    }
}

/* Request Quote cards: match calculator uppercase headline. */
body.page-product #instant-quote-modal.instant-quote-modal .instant-quote-form-head h4 {
    text-transform: uppercase !important;
}

/* Request Quote mobile/tablet: keep the header/body seam subtle like the calculator form. */
@media (max-width: 1180px), (max-width: 1366px) and (pointer: coarse) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        border-bottom: 1px solid rgba(145, 181, 255, 0.10) !important;
        box-shadow: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        border-top: 0 !important;
        box-shadow: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head::after,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::before,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body::after {
        display: none !important;
        opacity: 0 !important;
    }
}

/* Request Quote sideways phones: match the tighter calculator form-head type rhythm. */
@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select-trigger,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button {
        align-items: center !important;
        line-height: 1 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select-trigger span,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button span {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        line-height: 1 !important;
        transform: translateY(1px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head {
        gap: 4px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head > span {
        margin: 0 !important;
        font-size: 8.5px !important;
        line-height: 1 !important;
        letter-spacing: 0.04em !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head h4 {
        max-width: 170px !important;
        margin: 0 !important;
        font-size: 18px !important;
        line-height: 0.98 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head::after {
        max-width: 170px !important;
        margin-top: 0 !important;
        font-size: 9px !important;
        line-height: 1.18 !important;
    }
}

/* Request Quote phone portrait: keep the form-head text on the same compact family. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head > span,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head h4 {
        margin: 0 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head > span {
        font-size: 8px !important;
        line-height: 1 !important;
    }
}

/* Shared quote-form dropdown caret: filled calculator-style arrow on every viewport. */
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select-trigger i,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button i {
    width: 0 !important;
    height: 0 !important;
    flex: 0 0 auto !important;
    margin-left: 10px !important;
    border-left: 5px solid transparent !important;
    border-right: 5px solid transparent !important;
    border-top: 6px solid rgba(169, 145, 255, 0.96) !important;
    border-bottom: 0 !important;
    transform: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-select.is-open .instant-select-trigger i,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-booking-menu-button[aria-expanded="true"] i {
    transform: rotate(180deg) !important;
}

/* Request Quote schedule success: use the approved IUL/Coverage confirmation family. */
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) {
    width: min(1260px, calc(100vw - 56px)) !important;
    height: min(760px, calc(100dvh - 56px)) !important;
    max-height: calc(100dvh - 56px) !important;
    display: grid !important;
    grid-template-rows: 82px minmax(0, 1fr) !important;
    overflow: hidden !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    border-radius: 20px !important;
    background:
        radial-gradient(76% 58% at 18% 0%, rgba(29, 78, 216, 0.22), rgba(29, 78, 216, 0.04) 46%, rgba(0, 0, 0, 0) 74%),
        radial-gradient(74% 58% at 88% 16%, rgba(124, 58, 237, 0.16), rgba(124, 58, 237, 0.032) 42%, rgba(0, 0, 0, 0) 72%),
        linear-gradient(158deg, #101620, #06080d 50%, #020304) !important;
    box-shadow:
        0 38px 90px rgba(0, 0, 0, 0.78),
        0 0 70px rgba(37, 99, 235, 0.12),
        0 0 50px rgba(124, 58, 237, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.13) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-head {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 28px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 82px !important;
    height: 82px !important;
    padding: 16px 24px 16px 28px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.045) 28%, rgba(0, 0, 0, 0.82)),
        #05060a !important;
    box-shadow: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-header-back {
    display: flex !important;
    grid-column: 1 !important;
    justify-self: start !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-title {
    grid-column: 2 !important;
    justify-self: center !important;
    text-align: center !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-close {
    grid-column: 3 !important;
    justify-self: end !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-body {
    display: grid !important;
    align-items: center !important;
    justify-items: center !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: hidden !important;
    background:
        radial-gradient(84% 62% at 4% 0%, rgba(42, 104, 224, 0.18), rgba(42, 104, 224, 0.03) 48%, rgba(0, 0, 0, 0) 74%),
        radial-gradient(68% 58% at 86% 5%, rgba(112, 70, 220, 0.2), rgba(112, 70, 220, 0.032) 52%, rgba(0, 0, 0, 0) 76%),
        linear-gradient(150deg, rgba(9, 15, 27, 0.96), rgba(7, 8, 14, 0.98) 48%, rgba(4, 4, 9, 0.99)) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-body::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-body::after {
    display: none !important;
    opacity: 0 !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-content,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-flow {
    display: grid !important;
    align-items: center !important;
    justify-items: center !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 100% !important;
    transform: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-footer {
    display: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success {
    display: grid !important;
    justify-items: center !important;
    gap: 12px !important;
    width: min(100%, 360px) !important;
    max-width: 360px !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    text-align: center !important;
    transform: translateY(-41px) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success > span {
    color: rgba(154, 177, 255, 0.98) !important;
    font: 900 10px/1 'Montserrat', Arial, sans-serif !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success h4 {
    max-width: 13ch !important;
    margin: 0 !important;
    color: #f8fbff !important;
    font: 900 28px/0.94 'Montserrat', Arial, sans-serif !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success p {
    max-width: 34ch !important;
    margin: 0 auto !important;
    color: rgba(224, 232, 248, 0.84) !important;
    font: 700 13.5px/1.45 'Inter', Arial, sans-serif !important;
    text-align: center !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-quote-success:not([hidden])) .instant-quote-quote-success {
    transform: translateY(-41px) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time {
    display: grid !important;
    justify-items: center !important;
    width: min(100%, 340px) !important;
    gap: 4px !important;
    margin: 2px auto 0 !important;
    padding: 10px 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.075) !important;
    border-radius: 14px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
        rgba(2, 4, 10, 0.46) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 16px 32px rgba(0, 0, 0, 0.18) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time span {
    color: #c9a050 !important;
    font: 900 8px/1 'Montserrat', Arial, sans-serif !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time strong {
    color: rgba(255, 255, 255, 0.94) !important;
    font: 900 12.5px/1.15 'Montserrat', Arial, sans-serif !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-actions {
    display: grid !important;
    justify-items: center !important;
    gap: 9px !important;
    width: 340px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding-top: 4px !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-link,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options {
    width: 340px !important;
    max-width: 100% !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-link {
    display: inline-grid !important;
    place-items: center !important;
    min-height: 40px !important;
    padding: 0 16px !important;
    border-radius: 14px !important;
    font: 900 9.5px/1 'Montserrat', Arial, sans-serif !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin-top: 2px !important;
    padding: 7px 8px !important;
    border-radius: 14px !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options[hidden] {
    display: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options a {
    display: grid !important;
    grid-template-rows: auto auto !important;
    place-items: center !important;
    gap: 5px !important;
    min-height: 58px !important;
    padding: 6px 6px 5px !important;
    border-radius: 12px !important;
    font: 900 6.8px/1.2 'Montserrat', Arial, sans-serif !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options a > span {
    color: inherit !important;
    font: inherit !important;
    letter-spacing: inherit !important;
    line-height: inherit !important;
    text-transform: inherit !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-calendar-mark {
    width: 25px !important;
    height: 25px !important;
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) {
        --instant-success-landscape-width: min(820px, calc(100vw - 58px));
        --instant-success-landscape-height: min(346px, calc(100dvh - 56px));
        top: calc((100dvh - var(--instant-success-landscape-height)) / 2) !important;
        bottom: auto !important;
        left: calc((100vw - var(--instant-success-landscape-width)) / 2) !important;
        width: var(--instant-success-landscape-width) !important;
        height: var(--instant-success-landscape-height) !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 56px) !important;
        grid-template-rows: 44px minmax(0, 1fr) !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-head {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px 0 16px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-body {
        height: 100% !important;
        padding: 12px 10px 10px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success {
        gap: 5px !important;
        width: 470px !important;
        max-width: min(100%, 470px) !important;
        padding: 0 12px 8px !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success h4 {
        font-size: 22px !important;
        line-height: 0.94 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success p {
        max-width: 36ch !important;
        font-size: 10.5px !important;
        line-height: 1.25 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-actions,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-link,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options {
        width: 286px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time {
        padding: 7px 10px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time strong {
        font-size: 11px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-actions {
        padding-top: 0 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-link {
        min-height: 30px !important;
        font-size: 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options a {
        min-height: 45px !important;
        padding: 5px 4px 4px !important;
        font-size: 5.8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-calendar-mark {
        width: 20px !important;
        height: 20px !important;
    }
}

/* Request Quote form states: match the approved calculator shell geometry while keeping this flow's color family. */
@media (min-width: 1181px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) {
        box-sizing: border-box !important;
        width: min(1260px, calc(100vw - 56px)) !important;
        height: min(760px, calc(100dvh - 56px)) !important;
        max-height: calc(100dvh - 56px) !important;
        display: grid !important;
        grid-template-rows: 82px minmax(0, 1fr) !important;
        overflow: hidden !important;
        border-radius: 20px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
        display: grid !important;
        grid-template-columns: 28px minmax(0, 1fr) 28px !important;
        align-items: center !important;
        gap: 18px !important;
        min-height: 82px !important;
        height: 82px !important;
        padding: 16px 24px 16px 28px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.075) !important;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.045) 28%, rgba(0, 0, 0, 0.82)),
            #05060a !important;
        box-shadow: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-title {
        align-self: center !important;
        justify-self: center !important;
        margin: 0 !important;
        text-align: center !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
        height: 100% !important;
        padding: 28px 36px 30px !important;
        align-items: stretch !important;
        align-content: stretch !important;
        overflow: hidden !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-content,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-flow {
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        place-items: stretch !important;
        align-items: stretch !important;
        justify-content: stretch !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form:not([hidden]),
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        padding: 0 !important;
        column-gap: 30px !important;
        row-gap: 12px !important;
        grid-template-columns: minmax(360px, 0.58fr) minmax(0, 1fr) !important;
        align-self: stretch !important;
        justify-self: stretch !important;
        align-items: stretch !important;
        align-content: stretch !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not(.instant-quote-booking-form):not([hidden])) .instant-quote-form:not(.instant-quote-booking-form):not([hidden]) {
        grid-template-rows: auto 0 minmax(0, 1fr) 46px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form:not([hidden]) {
        grid-template-rows: auto auto minmax(0, 1fr) 46px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-head {
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        padding: 34px 32px !important;
        border-radius: 14px !important;
        align-content: center !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form-grid,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-form:not([hidden])) .instant-quote-booking-form .instant-quote-form-grid {
        width: 100% !important;
        max-width: none !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px 18px !important;
        align-self: start !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-submit {
        width: 100% !important;
        min-height: 46px !important;
        height: 46px !important;
        align-self: end !important;
        margin-top: 0 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form textarea {
        font-size: 14px !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-form textarea::placeholder {
        font-size: 14px !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
    }
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-consent {
    display: grid !important;
    grid-template-columns: 14px minmax(0, max-content) !important;
    align-items: center !important;
    align-self: start !important;
    gap: 10px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    margin-top: 0 !important;
    line-height: 1.35 !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-consent input[type="checkbox"] {
    box-sizing: border-box !important;
    inline-size: 14px !important;
    block-size: 14px !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    min-height: 14px !important;
    max-width: 14px !important;
    max-height: 14px !important;
    flex: 0 0 14px !important;
    margin: 0 !important;
    align-self: center !important;
    transform: none !important;
}

/* Request Quote form header controls: match Coverage Calculator button/icon behavior. */
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-head {
    border-bottom-color: rgba(255, 255, 255, 0.035) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-body {
    border-top: 0 !important;
    box-shadow: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close {
    position: relative !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(0, 0, 0, 0) !important;
    border-radius: 7px !important;
    background: rgba(9, 12, 28, 0.74) !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255, 255, 255, 0.1) !important;
    color: #6f87ff !important;
    cursor: pointer !important;
    transform: none !important;
    transition:
        transform var(--popup-transition-duration, 280ms) var(--popup-transition-ease, ease),
        box-shadow var(--popup-transition-duration, 280ms) var(--popup-transition-ease, ease) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back svg {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 18px !important;
    height: 18px !important;
    margin: auto !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back svg path {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.4 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back::after {
    content: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    width: 10px !important;
    height: 2px !important;
    margin: auto !important;
    border-radius: 999px !important;
    background: #6f87ff !important;
    box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
    transform-origin: center !important;
    transition: transform 0.28s ease, width 0.28s ease, background 0.28s ease, box-shadow 0.28s ease !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::before {
    transform: rotate(45deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close::after {
    transform: rotate(-45deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back:hover,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .instant-quote-header-back:focus-visible {
    color: #e4c470 !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(228, 196, 112, 0.2),
        0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:hover,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:focus-visible {
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.1) !important;
    transform: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:hover::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:focus-visible::before {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(225deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:hover::after,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:focus-visible::after {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(135deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-form:not([hidden])) .find-doctor-gate-close:active {
    transform: scale(0.95) !important;
}

/* Request Quote success header controls: keep the same calculator back arrow and close animation. */
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close {
    position: relative !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(0, 0, 0, 0) !important;
    border-radius: 7px !important;
    background: rgba(9, 12, 28, 0.74) !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px #1a1a1a,
        0 1px 0 rgba(255, 255, 255, 0.1) !important;
    color: #6f87ff !important;
    cursor: pointer !important;
    transform: none !important;
    transition:
        transform var(--popup-transition-duration, 280ms) var(--popup-transition-ease, ease),
        box-shadow var(--popup-transition-duration, 280ms) var(--popup-transition-ease, ease) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back svg {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 18px !important;
    height: 18px !important;
    margin: auto !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back svg path {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.4 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back::after {
    content: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    width: 10px !important;
    height: 2px !important;
    margin: auto !important;
    border-radius: 999px !important;
    background: #6f87ff !important;
    box-shadow: 0 0 8px rgba(111, 135, 255, 0.6) !important;
    transform-origin: center !important;
    transition: transform 0.28s ease, width 0.28s ease, background 0.28s ease, box-shadow 0.28s ease !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close::before {
    transform: rotate(45deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close::after {
    transform: rotate(-45deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back:hover,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .instant-quote-header-back:focus-visible {
    color: #e4c470 !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(228, 196, 112, 0.2),
        0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:hover,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:focus-visible {
    border-color: rgba(0, 0, 0, 0) !important;
    background: #050505 !important;
    box-shadow:
        inset 3px 3px 6px #000,
        inset -1px -1px 4px #1a1a1a,
        inset 0 0 13px rgba(239, 68, 68, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.1) !important;
    transform: none !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:hover::before,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:focus-visible::before {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(225deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:hover::after,
body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:focus-visible::after {
    background: rgba(239, 68, 68, 0.98) !important;
    box-shadow: none !important;
    transform: rotate(135deg) !important;
}

body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-success:not([hidden])) .find-doctor-gate-close:active {
    transform: scale(0.95) !important;
}

/* Request Quote success responsive sizing: match Coverage Calculator success across mobile/tablet. */
@media (max-width: 760px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) {
        width: min(412px, calc(100vw - 18px)) !important;
        height: min(661px, calc(100dvh - 18px)) !important;
        max-height: calc(100dvh - 18px) !important;
        grid-template-rows: 66px minmax(0, 1fr) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-head {
        min-height: 66px !important;
        height: 66px !important;
        padding: 12px 14px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success {
        transform: translateY(-33px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-quote-success:not([hidden])) .instant-quote-quote-success {
        transform: translateY(-33px) !important;
    }
}

@media (min-width: 761px) and (max-width: 900px) and (orientation: portrait) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) {
        width: min(736px, calc(100vw - 32px)) !important;
        height: min(634px, calc(100dvh - 32px)) !important;
        max-height: calc(100dvh - 32px) !important;
        grid-template-rows: 82px minmax(0, 1fr) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-head {
        min-height: 82px !important;
        height: 82px !important;
        padding: 16px 18px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success {
        transform: translateY(-33px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-quote-success:not([hidden])) .instant-quote-quote-success {
        transform: translateY(-41px) !important;
    }
}

@media (min-width: 901px) and (max-width: 1180px) and (orientation: landscape) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) {
        width: min(968px, calc(100vw - 56px)) !important;
        height: min(644px, calc(100dvh - 56px)) !important;
        max-height: calc(100dvh - 56px) !important;
        grid-template-rows: 82px minmax(0, 1fr) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-head {
        min-height: 82px !important;
        height: 82px !important;
        padding: 16px 18px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success {
        transform: translateY(-33px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-quote-success:not([hidden])) .instant-quote-quote-success {
        transform: translateY(-41px) !important;
    }
}

@media (max-width: 960px) and (orientation: landscape) and (max-height: 540px) {
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) {
        --instant-success-landscape-width: min(820px, calc(100vw - 58px));
        --instant-success-landscape-height: min(346px, calc(100dvh - 56px));
        top: calc((100dvh - var(--instant-success-landscape-height)) / 2) !important;
        bottom: auto !important;
        left: calc((100vw - var(--instant-success-landscape-width)) / 2) !important;
        width: var(--instant-success-landscape-width) !important;
        height: var(--instant-success-landscape-height) !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 56px) !important;
        grid-template-rows: 44px minmax(0, 1fr) !important;
        transform: none !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-head {
        min-height: 44px !important;
        height: 44px !important;
        padding: 0 12px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .find-doctor-gate-body {
        padding: 12px 10px 10px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success {
        gap: 5px !important;
        width: min(100%, 470px) !important;
        max-width: 470px !important;
        padding: 0 12px 8px !important;
        transform: translateY(6px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-quote-success:not([hidden])) .instant-quote-quote-success {
        transform: translateY(-22px) !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success > span {
        font-size: 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success h4 {
        font-size: 22px !important;
        line-height: 0.94 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-quote-booking-success p {
        max-width: 36ch !important;
        font-size: 10.5px !important;
        line-height: 1.25 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-actions,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-link,
    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options {
        width: 286px !important;
        max-width: 100% !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-actions {
        padding-top: 0 !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time {
        padding: 7px 10px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-success-time strong {
        font-size: 11px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-link {
        min-height: 30px !important;
        width: 100% !important;
        font-size: 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options {
        padding: 7px 8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-booking-calendar-options a {
        min-height: 45px !important;
        gap: 5px !important;
        padding: 5px 4px 4px !important;
        font-size: 5.8px !important;
    }

    body.page-product #instant-quote-modal.instant-quote-modal:has(.instant-quote-booking-success:not([hidden])) .instant-calendar-mark {
        width: 20px !important;
        height: 20px !important;
    }
}

/* Resources rail polished redesign. */
@media (min-width: 1025px) and (pointer: fine) {
    body.page-product .product-sidebar {
        position: sticky !important;
        top: 20px !important;
        align-self: start !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel {
        position: relative !important;
        top: auto !important;
        width: min(360px, 100%) !important;
        min-height: 420px !important;
        border-radius: 34px !important;
        border: 1px solid rgba(255, 255, 255, 0.090) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012) 18%, rgba(0, 0, 0, 0) 48%),
            radial-gradient(ellipse 125% 78% at 50% 0%, rgba(255, 255, 255, 0.026), rgba(255, 255, 255, 0.004) 48%, rgba(0, 0, 0, 0) 72%),
            linear-gradient(180deg, rgba(7, 8, 11, 0.998), rgba(2, 2, 4, 0.998) 46%, #000) !important;
        box-shadow:
            0 42px 90px rgba(0, 0, 0, 0.88),
            0 0 10px rgba(255, 255, 255, 0.020),
            inset 0 1px 0 rgba(255, 255, 255, 0.080),
            inset 0 -32px 76px rgba(0, 0, 0, 0.48) !important;
        overflow: visible !important;
        animation: none !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel::before {
        content: "" !important;
        position: absolute !important;
        inset: -1px !important;
        z-index: 0 !important;
        border-radius: 34px !important;
        padding: 1px !important;
        background:
            linear-gradient(115deg,
                rgba(255, 255, 255, 0.030),
                rgba(210, 219, 255, 0.10),
                rgba(142, 157, 219, 0.12),
                rgba(255, 255, 255, 0.040),
                rgba(255, 255, 255, 0.030)) !important;
        background-size: 280% 280% !important;
        opacity: 0.24 !important;
        -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0) !important;
        mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0) !important;
        -webkit-mask-composite: xor !important;
        mask-composite: exclude !important;
        pointer-events: none !important;
        animation: abcResourcesContainedEdge 6.4s ease-in-out infinite !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel::after {
        display: none !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .panel-body {
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        gap: 14px !important;
        padding: 34px 24px 24px !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .resources-panel-head {
        position: relative !important;
        display: grid !important;
        gap: 10px !important;
        padding: 0 0 8px !important;
        border: 0 !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .resources-panel-head::before {
        display: none !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .resources-panel-head::after {
        content: "" !important;
        display: block !important;
        width: 100% !important;
        height: 1px !important;
        background:
            linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(190, 198, 226, 0.22), rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0)) !important;
        box-shadow: 0 0 8px rgba(255, 255, 255, 0.045) !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .advisor-title {
        margin: 0 !important;
        color: #aebcff;
        background-image:
            linear-gradient(90deg, #8497ee 0%, #aebcff 24%, #edf2ff 42%, #a8b4ee 58%, #d3dcff 74%, #8497ee 100%);
        background-size: 260% 100%;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        text-shadow: 0 0 14px rgba(111, 135, 255, 0.14);
        filter: none;
        font-size: 32px !important;
        font-weight: 900 !important;
        line-height: 0.94 !important;
        letter-spacing: 0.06em !important;
        padding-left: 2px !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        animation: abcResourcesTitleLetterSweep 9.8s ease-in-out infinite !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list {
        display: grid !important;
        gap: 12px !important;
        margin: 0 !important;
        counter-reset: abc-resource-rail !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource {
        counter-increment: abc-resource-rail !important;
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        min-height: 54px !important;
        padding: 11px 48px 11px 24px !important;
        border: 1px solid rgba(255, 255, 255, 0.070) !important;
        border-radius: 18px !important;
        color: rgba(239, 244, 255, 0.94) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.030), rgba(255, 255, 255, 0.008) 44%, rgba(0, 0, 0, 0)),
            rgba(0, 0, 0, 0.58) !important;
        box-shadow:
            0 12px 22px rgba(0, 0, 0, 0.24),
            inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
        overflow: hidden !important;
        isolation: isolate !important;
        font-size: 15px !important;
        font-weight: 900 !important;
        line-height: 1.1 !important;
        letter-spacing: 0.01em !important;
        text-align: left !important;
        animation: none !important;
        transform: translateZ(0) !important;
        transition:
            transform 0.22s ease,
            border-color 0.22s ease,
            color 0.22s ease,
            box-shadow 0.22s ease,
            background 0.22s ease !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource::before {
        content: none !important;
        display: none !important;
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        bottom: 0 !important;
        z-index: 2 !important;
        width: 0 !important;
        height: auto !important;
        transform: none !important;
        border: 0 !important;
        border-radius: 0 999px 999px 0 !important;
        background: none !important;
        box-shadow:
            none !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: opacity 0.22s ease, width 0.22s ease, box-shadow 0.22s ease !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource::after {
        content: "" !important;
        position: absolute !important;
        inset: 0 !important;
        z-index: -1 !important;
        width: auto !important;
        height: auto !important;
        border: 0 !important;
        border-radius: inherit !important;
        background:
            linear-gradient(115deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.20) 46%, rgba(111, 135, 255, 0.18) 54%, rgba(255, 255, 255, 0) 72%) !important;
        opacity: 0 !important;
        transform: translateX(-65%) !important;
        transition: opacity 0.22s ease, transform 0.62s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:hover,
    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:focus-visible {
        color: #ffffff !important;
        border-color: rgba(214, 222, 255, 0.16) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.050), rgba(255, 255, 255, 0.012) 48%, rgba(0, 0, 0, 0)),
            rgba(3, 3, 5, 0.99) !important;
        box-shadow:
            0 16px 30px rgba(0, 0, 0, 0.34),
            0 0 12px rgba(214, 222, 255, 0.035),
            inset 0 1px 0 rgba(255, 255, 255, 0.11),
            inset 3px 0 0 rgba(174, 188, 255, 0.18) !important;
        transform: translateX(-2px) !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:hover::before,
    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:focus-visible::before {
        width: 0 !important;
        background: none !important;
        box-shadow:
            none !important;
        opacity: 0 !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:hover::after,
    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:focus-visible::after {
        opacity: 1 !important;
        transform: translateX(130%) !important;
        animation: none !important;
    }

    body.page-product .panel-side.advisor-orbit#resources-desktop-panel .tools-list .cta-resource:nth-child(n) {
        border-left-color: rgba(255, 255, 255, 0.070) !important;
    }

    body.page-product .resources-desktop-toggle,
    body.page-product .resources-desktop-open {
        width: 18px !important;
        height: 72px !important;
        border-color: rgba(132, 151, 238, 0.34) !important;
        background:
            radial-gradient(ellipse 130% 82% at 50% 0%, rgba(132, 151, 238, 0.26), rgba(111, 135, 255, 0.075) 52%, rgba(0, 0, 0, 0) 74%),
            linear-gradient(180deg, rgba(16, 22, 45, 0.99), rgba(3, 5, 12, 0.998) 58%, #000) !important;
        box-shadow:
            0 12px 24px rgba(0, 0, 0, 0.44),
            0 0 12px rgba(111, 135, 255, 0.16),
            0 0 26px rgba(111, 135, 255, 0.060),
            inset 0 1px 0 rgba(210, 219, 255, 0.16) !important;
        color: rgba(238, 243, 255, 0.98) !important;
        overflow: hidden !important;
    }

    body.page-product .resources-desktop-toggle {
        left: -2px !important;
        border-radius: 11px 0 0 11px !important;
        transform: translate(-100%, -50%) !important;
    }

    body.page-product .resources-desktop-open {
        border-radius: 0 11px 11px 0 !important;
    }

    body.page-product .product-layout.resources-collapsed + .resources-desktop-open {
        right: max(var(--resources-shell-edge), calc((100vw - 1370px) / 2)) !important;
        width: 20px !important;
        height: 70px !important;
        transform: translateX(72%) translateY(-50%) !important;
        border-left: 0 !important;
        border-radius: 0 12px 12px 0 !important;
        background:
            radial-gradient(ellipse 130% 82% at 50% 0%, rgba(132, 151, 238, 0.26), rgba(111, 135, 255, 0.075) 52%, rgba(0, 0, 0, 0) 74%),
            linear-gradient(180deg, rgba(16, 22, 45, 0.99), rgba(3, 5, 12, 0.998) 58%, #000) !important;
        box-shadow:
            0 14px 28px rgba(0, 0, 0, 0.50),
            0 0 14px rgba(111, 135, 255, 0.16),
            0 0 30px rgba(111, 135, 255, 0.065),
            inset 0 1px 0 rgba(210, 219, 255, 0.16),
            inset -1px 0 0 rgba(0, 0, 0, 0.52) !important;
    }

    body.page-product .resources-desktop-toggle::before,
    body.page-product .resources-desktop-open::before {
        display: none !important;
    }

    body.page-product .resources-desktop-toggle::after,
    body.page-product .resources-desktop-open::after {
        content: "" !important;
        position: absolute !important;
        inset: -18px auto -18px 50% !important;
        width: 18px !important;
        border-radius: 999px !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(210, 219, 255, 0.26), rgba(132, 151, 238, 0.18), rgba(255, 255, 255, 0)) !important;
        opacity: 0.42 !important;
        transform: translateX(-50%) translateY(-50%) !important;
        pointer-events: none !important;
    }

    body.page-product .resources-desktop-toggle-icon,
    body.page-product .resources-desktop-open-icon {
        position: relative !important;
        z-index: 2 !important;
        color: currentColor !important;
        filter: drop-shadow(0 0 7px rgba(132, 151, 238, 0.42)) !important;
    }

    body.page-product .resources-desktop-toggle-icon svg,
    body.page-product .resources-desktop-open-icon svg {
        display: none !important;
    }

    body.page-product .resources-desktop-toggle-icon::before,
    body.page-product .resources-desktop-open-icon::before {
        content: "" !important;
        display: block !important;
        width: 9px !important;
        height: 9px !important;
        background: currentColor !important;
        clip-path: polygon(24% 0%, 100% 50%, 24% 100%, 0% 78%, 48% 50%, 0% 22%) !important;
        box-shadow: 0 0 12px rgba(132, 151, 238, 0.52) !important;
    }

    body.page-product .resources-desktop-toggle-icon::before {
        transform: translateX(0.5px) !important;
    }

    body.page-product .resources-desktop-open-icon::before {
        transform: translateX(-0.5px) scaleX(-1) !important;
    }

    body.page-product .resources-desktop-toggle:hover,
    body.page-product .resources-desktop-open:hover {
        border-color: rgba(166, 184, 255, 0.52) !important;
        color: #ffffff !important;
        background:
            radial-gradient(ellipse 135% 86% at 50% 0%, rgba(166, 184, 255, 0.38), rgba(111, 135, 255, 0.14) 54%, rgba(0, 0, 0, 0) 76%),
            linear-gradient(180deg, rgba(20, 28, 58, 0.99), rgba(3, 5, 14, 0.998) 58%, #000) !important;
        box-shadow:
            0 14px 28px rgba(0, 0, 0, 0.50),
            0 0 18px rgba(111, 135, 255, 0.26),
            0 0 40px rgba(111, 135, 255, 0.095),
            inset 0 1px 0 rgba(210, 219, 255, 0.24) !important;
    }

    body.page-product .resources-desktop-toggle:hover::after,
    body.page-product .resources-desktop-open:hover::after {
        animation: abcResourcesTabSheen 0.78s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
    }

    body.page-product .resources-desktop-toggle:hover .resources-desktop-toggle-icon {
        transform: translateX(1px) !important;
    }

    body.page-product .resources-desktop-open:hover .resources-desktop-open-icon {
        transform: translateX(-1px) !important;
    }
}

@keyframes abcResourcesContainedEdge {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

@keyframes abcResourcesTitleSweep {
    0% {
        background-position: 120% 50%;
        filter: drop-shadow(0 0 18px rgba(111, 135, 255, 0.24));
    }
    100% {
        background-position: -120% 50%;
        filter: drop-shadow(0 0 18px rgba(111, 135, 255, 0.24));
    }
}

@keyframes abcResourcesTitleColor {
    0%, 100% {
        color: #7f98ff;
        text-shadow: 0 0 18px rgba(111, 135, 255, 0.24);
    }
    28% {
        color: #dce6ff;
        text-shadow: 0 0 24px rgba(111, 135, 255, 0.30);
    }
    52% {
        color: #9b8cff;
        text-shadow: 0 0 22px rgba(154, 124, 255, 0.30);
    }
    76% {
        color: #c7d4ff;
        text-shadow: 0 0 20px rgba(111, 135, 255, 0.24);
    }
}

@keyframes abcResourcesTitleLetterSweep {
    0%, 100% {
        background-position: -120% 50%;
        text-shadow: 0 0 17px rgba(111, 135, 255, 0.22);
    }
    45% {
        background-position: 0% 50%;
        text-shadow: 0 0 22px rgba(111, 135, 255, 0.28);
    }
    70% {
        background-position: 120% 50%;
        text-shadow: 0 0 20px rgba(154, 124, 255, 0.24);
    }
}

@keyframes abcResourcesCardSheen {
    0% {
        opacity: 0;
        background-position: -90% 0;
        transform: translateX(0);
    }
    14% {
        opacity: 0.98;
    }
    68% {
        opacity: 0.92;
    }
    100% {
        opacity: 0;
        background-position: 190% 0;
        transform: translateX(0);
    }
}

@keyframes abcResourcesTabSheen {
    0% {
        opacity: 0;
        transform: translateX(-50%) translateY(-80%);
    }
    22% {
        opacity: 0.86;
    }
    100% {
        opacity: 0;
        transform: translateX(-50%) translateY(80%);
    }
}
