/* ============================================================
   theme-v2.css — "new style" layer (v102, 2026-10-20)
   Loaded AFTER each page's own <style> so these rules win.
   Matches the redesigned homepage & provider pages:
   cream gradient heroes, gold-line eyebrows, Cormorant headings,
   pill buttons, rounded cards, navy->teal gradient CTAs.
   Remove the <link> to this file to revert a page to the old look.
   ============================================================ */

/* ---------- shared bits ---------- */
.svc-section-label,.ins-hero .section-tag,.v2-eyebrow{font-size:.76rem !important;font-weight:700 !important;letter-spacing:.16em !important;text-transform:uppercase;color:var(--teal) !important;display:flex !important;align-items:center;gap:12px;margin-bottom:12px !important}
.svc-section-label::before,.ins-hero .section-tag::before,.v2-eyebrow::before{content:"";width:28px;height:2px;background:var(--gold);display:inline-block}

/* ---------- SERVICE PAGES (svc-*) ---------- */
.svc-hero{background:linear-gradient(180deg,var(--cream) 0%,var(--warm-white) 100%) !important;padding:128px 80px 64px !important;gap:56px !important}
.svc-hero-left .breadcrumb{color:var(--muted) !important}
.svc-hero-left .breadcrumb a{color:var(--teal) !important}
.svc-hero h1{color:var(--navy) !important;font-size:clamp(2.6rem,5vw,4rem) !important;line-height:1.08 !important;letter-spacing:-.01em}
.svc-hero h1 em{color:var(--teal) !important;font-style:italic !important}
.svc-hero-desc{color:var(--muted) !important;font-weight:400 !important;font-size:1.06rem !important}
.svc-hero .btn-gold{background:var(--teal) !important;color:#fff !important;border-radius:999px !important;padding:14px 28px !important;font-weight:600 !important}
.svc-hero .btn-gold:hover{background:var(--navy) !important}
.svc-hero .btn-outline-white{border:2px solid var(--navy) !important;color:var(--navy) !important;border-radius:999px !important;padding:12px 26px !important;font-weight:600 !important}
.svc-hero .btn-outline-white:hover{background:var(--navy) !important;color:#fff !important}
.svc-hero-card{background:#fff !important;border:1px solid var(--border) !important;border-radius:20px !important;box-shadow:0 24px 50px rgba(15,39,68,.10)}
.svc-hero-card h3{color:var(--navy) !important;font-size:1.35rem !important;font-weight:600}
.svc-stat{background:var(--cream) !important;border:1px solid var(--border);border-radius:14px !important}
.svc-stat-num{color:var(--navy) !important;font-size:2rem !important}
.svc-stat-label{color:var(--muted) !important}
.svc-body{max-width:1140px !important;padding:72px 24px !important}
.svc-section h2{font-size:clamp(2rem,3.6vw,2.6rem) !important;line-height:1.12;margin-bottom:18px !important}
.svc-section p{font-weight:400 !important;color:#4a5160 !important}
.symptom-card,.tech-card,.edu-link-card{background:#fff !important;border-radius:16px !important;transition:border-color .2s,box-shadow .2s}
.symptom-card:hover,.tech-card:hover,.edu-link-card:hover{border-color:var(--teal) !important;box-shadow:0 12px 28px rgba(15,39,68,.07)}
.process-step,.faq-item{border-radius:16px !important}
.step-num{background:var(--navy) !important;color:#fff;box-shadow:0 0 0 4px rgba(201,168,76,.35)}
.dtype-card{border-radius:18px !important;background:#fff !important}
.doc-mini-card{background:#fff !important;border-radius:18px !important;transition:transform .15s,box-shadow .15s}
.doc-mini-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(15,39,68,.12)}
.doc-mini-photo{aspect-ratio:4/5 !important;background:var(--cream) !important}
.doc-mini-name{font-size:1.25rem !important}
.svc-cta-banner{background:linear-gradient(135deg,var(--navy) 0%,var(--teal) 100%) !important;border-radius:22px !important}
.svc-cta-banner h2{font-size:clamp(1.9rem,3.4vw,2.5rem) !important}
.svc-cta-banner p{color:rgba(255,255,255,.82) !important}
.svc-cta-banner .btn-gold,.svc-cta-right .btn-gold{background:#fff !important;color:var(--navy) !important;border-radius:999px !important;padding:14px 28px !important;font-weight:600 !important}
.svc-cta-right .phone,.svc-cta-right .phone a{color:rgba(255,255,255,.85) !important}
@media(max-width:960px){.svc-hero{padding:104px 24px 44px !important}.svc-body{padding:44px 20px !important}.svc-hero-card{display:none}}

/* ---------- INSURANCE PAGES (ins-*) ---------- */
.ins-hero{background:linear-gradient(180deg,var(--cream) 0%,var(--warm-white) 100%) !important;padding:128px 80px 64px !important}
.ins-hero::before{display:none !important}
.ins-hero h1{color:var(--navy) !important;font-weight:600 !important;font-size:clamp(2.6rem,5vw,4rem) !important;line-height:1.08 !important}
.ins-hero h1 em{color:var(--teal) !important}
.ins-hero p{color:var(--muted) !important}
.ins-badge{background:#fff !important;border:1px solid var(--border) !important}
.ins-badge span{color:var(--navy) !important}
.ins-hero .btn-primary,.ins-cta-box .btn-primary{border-radius:999px !important;background:var(--teal) !important;color:#fff !important;font-weight:600 !important}
.ins-hero .btn-outline-white,.ins-hero .btn-outline{border:2px solid var(--navy) !important;color:var(--navy) !important;border-radius:999px !important}
.ins-body{padding:72px 24px !important}
.ins-body-inner{max-width:1140px !important}
.ins-why h2,.ins-providers h2,.ins-conditions h2{font-weight:600 !important;font-size:clamp(2rem,3.6vw,2.6rem) !important}
.ins-cta-box{background:linear-gradient(135deg,var(--navy) 0%,var(--teal) 100%) !important;border-radius:22px !important}
.ins-cta-box .btn-outline-white{border-radius:999px !important}
.provider-chip{border-radius:18px !important}
.provider-chip img{width:96px !important;height:96px !important;border:3px solid #fff;box-shadow:0 8px 20px rgba(15,39,68,.15)}
.cond-item{border-radius:14px !important}
.ins-locs{background:var(--cream) !important;padding:72px 24px !important}
.ins-locs h2{color:var(--navy) !important;font-weight:600 !important;font-size:clamp(2rem,3.6vw,2.6rem) !important}
.ins-locs p{color:var(--muted) !important}
.loc-box{background:#fff !important;border:1px solid var(--border) !important;border-radius:18px !important}
.loc-box h3{color:var(--navy) !important}
.loc-box .loc-addr,.loc-box .loc-hrs{color:#4a5160 !important}
.loc-box .loc-quest{color:var(--muted) !important;border-top-color:var(--border) !important}
@media(max-width:900px){.ins-hero{padding:104px 24px 44px !important}.ins-body{padding:44px 20px !important}}
.ins-body > section{max-width:1140px;margin-left:auto;margin-right:auto}
.ins-body > section h2{font-size:clamp(2rem,3.6vw,2.6rem) !important}

/* ---------- EDUCATION ARTICLES & BLOG (article.css pages) ---------- */
.breadcrumb{background:transparent !important;border-bottom:0 !important}
.article-layout{position:relative;isolation:isolate}
.article-category{letter-spacing:.16em !important}
.article-category::before{background:var(--gold) !important;width:28px !important;height:2px !important}
.article-title{font-weight:600 !important;font-size:clamp(2.4rem,4.6vw,3.6rem) !important;line-height:1.08 !important;letter-spacing:-.01em}
.article-title em{color:var(--teal) !important;font-style:italic}
.article-body h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600 !important;font-size:clamp(1.7rem,2.8vw,2.1rem) !important;color:var(--navy)}
.article-body h3{color:var(--navy)}
.callout,.callout-info,.callout-warning{border-radius:14px !important;border-left-width:4px !important}
.key-points{background:linear-gradient(135deg,var(--navy) 0%,#163b5e 100%) !important;border-radius:20px !important}
.data-table-wrap{border-radius:14px !important;overflow:hidden;border:1px solid var(--border)}
.article-toc{border-radius:16px !important}
.quick-answer-box{border-radius:14px !important}
.sidebar-widget{background:#fff !important;border-radius:18px !important;box-shadow:0 8px 24px rgba(15,39,68,.05)}
.sidebar-widget h4{font-family:'Cormorant Garamond',serif;font-size:1.2rem !important;font-weight:600;color:var(--navy)}
.sidebar-links a{border-radius:10px}
.sidebar-cta{background:linear-gradient(135deg,var(--navy) 0%,var(--teal) 100%) !important;border-radius:18px !important}
.sidebar-btn{border-radius:999px !important}
.article-body .cta-banner,.cta-banner{background:linear-gradient(135deg,var(--navy) 0%,var(--teal) 100%) !important}
.cta-banner h2{font-weight:600 !important}
.cta-banner .btn-white,.cta-banner .btn-outline-white{border-radius:999px !important}
.pump-hero{background:linear-gradient(135deg,var(--navy) 0%,var(--teal) 100%) !important;border-radius:0 0 28px 28px}
.article-hero-img img{border-radius:18px}

/* ---------- LIBRARY / BLOG INDEX HEROES (edu-hero) ---------- */
.edu-hero{background:linear-gradient(180deg,var(--cream) 0%,var(--warm-white) 100%) !important}
.edu-hero::before{display:none !important}
.edu-badge{background:#fff !important;border:1px solid var(--border) !important;color:var(--teal) !important}
.edu-hero h1{color:var(--navy) !important;font-weight:600 !important;font-size:clamp(2.6rem,5.4vw,4.2rem) !important}
.edu-hero h1 em{color:var(--teal) !important}
.edu-hero p{color:var(--muted) !important;font-weight:400 !important}
.edu-stat-num{color:var(--navy) !important;font-weight:600 !important}
.edu-stat-label{color:var(--muted) !important}

/* ---------- OTHER PAGE HEROES (generic light hero) ---------- */
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero){background:linear-gradient(180deg,var(--cream) 0%,var(--warm-white) 100%) !important;color:var(--navy) !important;border-bottom:1px solid var(--border)}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero)::before,
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero)::after{display:none !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(h1,h2,h3){color:var(--navy) !important;font-weight:600 !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) h1{font-size:clamp(2.6rem,5.4vw,4.2rem) !important;line-height:1.08 !important;letter-spacing:-.01em}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) em{color:var(--teal) !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(p,li,small){color:var(--muted) !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(.section-tag,.eyebrow,.hero-tag,.badge,[class*="badge"],[class*="eyebrow"],[class*="-tag"]){color:var(--teal) !important;border-color:var(--border) !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) .section-tag{background:transparent !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(.breadcrumb,.breadcrumb a,[class*="breadcrumb"],[class*="crumb"] a){color:var(--teal) !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(.btn-outline-white,.btn-ghost,.btn-outline){border:2px solid var(--navy) !important;color:var(--navy) !important;background:transparent !important;border-radius:999px !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(.btn-gold,.btn-primary,.btn-white,.btn-teal){background:var(--teal) !important;color:#fff !important;border-radius:999px !important;border:0 !important}

/* generic CTA banners + common buttons site-wide (old-style pages) */
.cta-banner{background:linear-gradient(135deg,var(--navy) 0%,var(--teal) 100%) !important}
.cta-banner h2{font-weight:600 !important}
.cta-banner :is(.btn-white,.btn-outline-white){border-radius:999px !important}
.section-tag{letter-spacing:.16em}
.section-tag::before{background:var(--gold)}
/* hero text fixes for page-specific inline white text */
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) :is(strong,b,span,div[style]):not([class*="btn"]){color:inherit !important}
:is(.page-hero,.pr-hero,.lv-hero,.trn-hero,.calc-hero,.booking-hero,.handouts-hero,.proc-hero,.review-hero,.obs-hero,.lg-hero,.jobs-hero,.legal-hero,.np-hero) p :is(strong,b,a){color:var(--navy) !important}
:is(.lv-crumb,.lv-readtime,.lv-crumb a){color:var(--muted) !important}
.lv-crumb a{color:var(--teal) !important}
.proc-hero-inner > div[style]{color:var(--teal) !important}
.lg-meta span{color:var(--navy) !important;background:#fff !important;border:1px solid var(--border) !important}
.lg-print{color:var(--navy) !important;border:2px solid var(--navy) !important;background:transparent !important;border-radius:999px !important}
.review-hero{padding-top:128px !important}
.calc-hero{padding-top:128px !important}
.booking-hero,.handouts-hero,.jobs-hero,.legal-hero,.np-hero,.obs-hero{padding-top:max(128px,var(--hero-pt,0px)) }
.lg-hero .lg-meta{color:var(--navy) !important}
[class*="-hero"] :is(.lg-badge,.np-badge,.pr-badge,.obs-badge,.jobs-badge,.trn-badge,.lv-badge){background:#fff !important}
