/* ============================================================
   OVERRIDES · design-overhaul + client-refinement waves. MUST LOAD LAST. Re-styles base selectors (hero/nav/cards/footer/colours/typography). Do not move earlier.
   Auto-split from main.css (Phase 1). Load order fixed in inc/enqueue.php.
   ============================================================ */


/* ============================================================
   DESIGN OVERHAUL — Source Serif 4 headings · Atkinson body ·
   no all-caps · beige surface · blue secondary · maroon accent
   ============================================================ */
/* Serif headings across homepage + inner pages */
.hero .hero__title,.about__head h2,.page-hero h1,.svc-h,.page-cta h2,.footer-cta h2,.section-head h2,
.videos h2,.dir-submit__title,.process__heading,.hub-cta h3,.case-card h3{font-family:var(--font-head)!important;text-transform:none!important;letter-spacing:-.02em;}
/* Kill every uppercase */
.hero .hero__title,.hero__eyebrow,.nav>ul>li>a,.sub li a,.button,.btn,.cta-band__eyebrow,.feature h3,
.pstep__body h3,.counter__label,.footer--mega .footer__col h4,.eyebrow,.page-hero h1,.mobile__menu a,
.about__head h2,.member__social a,.dir-fs legend{text-transform:none!important;}
/* Hero */
.hero .hero__title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:-.02em;}
.hero p{font-size:1.375rem;line-height:1.7;max-width:34rem;}
.hero__eyebrow{font-size:.95rem;letter-spacing:.03em;font-weight:600;color:var(--sb-lightblue);}
/* Inner-page hero */
.page-hero h1{font-family:var(--font-head)!important;font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:-.02em;}
.page-hero .eyebrow{color:var(--sb-lightblue);}
.page-lead{font-size:1.375rem;line-height:1.7;color:var(--text-2);}
.page-content{font-size:1.1875rem;line-height:1.8;}
.svc-h{font-size:1.5rem;font-weight:700;}
.page-card h3,.dir-card__name{font-size:1.25rem;font-weight:600;font-family:var(--font-head);}
/* Nav / menus — sentence case, readable */
.nav>ul>li>a{font-size:1rem;font-weight:500;letter-spacing:.01em;}
.sub li a,.mobile__menu a{font-size:1rem;}
/* Buttons — sentence case */
.button,.btn{font-size:1rem;font-weight:600;letter-spacing:.02em;}
.button--primary,.btn--solid,.header__cta-score{font-weight:700;}
/* Breadcrumbs / counters */
.breadcrumbs{font-size:.9375rem;}
.counter__num{font-family:var(--font-head);font-size:2.6rem;letter-spacing:0;}
.counter__label{font-size:1rem;letter-spacing:.02em;}

/* ---- Colours ---- */
.accent,.hero__title .accent{color:var(--sb-maroon);}
/* Primary actions = maroon */
.button--primary,.btn--solid,.header__cta-score,.dir-card__btn:hover{background:var(--sb-maroon);border-color:var(--sb-maroon);color:#fff;}
.button--primary:hover,.btn--solid:hover,.header__cta-score:hover{background:#520805;border-color:#520805;color:#fff;filter:none;}
/* Secondary = blue */
.button--outline,.btn--outline{border-color:var(--sb-blue);color:var(--sb-blue);background:transparent;}
.button--outline:hover,.btn--outline:hover{background:var(--sb-blue);color:#fff;}
.page-content a,.legal-doc a,.dir-card__btn,.page-card a,.svc-back a,.blogs a{color:var(--sb-blue);}
.page-content a:hover{color:var(--sb-maroon);}
.page-card__ic,.svc-icon{background:var(--sb-blue);}
/* Light-blue tints */
.page-sidebar__block,.hub-cta,.dir-submit,.svc-outcome{background:var(--sb-lightblue);}
.svc-outcome{border-left-color:var(--sb-maroon);}
.profile-tag,.page-hero::before{}
/* Footer (dark navy) — use light-blue for accents so they read on the dark bg */
.footer__brand span,.footer--mega .footer__col a:hover,.footer__social a:hover,.footer__legal a:hover,.footer__maps a,.footer-cta h2 .accent{color:var(--sb-lightblue)!important;}
/* Focus ring */
:focus-visible{outline:3px solid var(--sb-maroon);}

/* ================= CLIENT REFINEMENTS ================= */
/* No maroon on buttons/sections — maroon only for accent keywords + card icons */
.button--primary,.btn--solid{background:var(--sb-blue)!important;border-color:var(--sb-blue)!important;color:#fff!important;}
.button--primary:hover,.btn--solid:hover{background:#134262!important;border-color:#134262!important;color:#fff!important;}
.svc-outcome{border-left-color:var(--sb-blue)!important;}
.dir-card__btn:hover{background:transparent!important;color:var(--sb-maroon)!important;}

/* Header: keep dark bg; nav text turns beige on hover; CTA buttons blue */
.nav>ul>li>a:hover{color:var(--sb-light)!important;}
.nav>ul>li>a::after{background:var(--sb-light)!important;}
.header__cta-score{background:var(--sb-blue)!important;border-color:var(--sb-blue)!important;color:#fff!important;}
.header__cta-audit{background:transparent!important;border-color:var(--sb-blue)!important;color:#fff!important;}
.header__cta-audit:hover,.header__cta-score:hover{background:#134262!important;border-color:#134262!important;color:#fff!important;}
.mobile__ctas .btn--ghost{border-color:var(--sb-blue)!important;color:#fff!important;}
.mobile__ctas .btn--solid{background:var(--sb-blue)!important;border-color:var(--sb-blue)!important;color:#fff!important;}

/* Cards: light-blue fill, navy fonts, blue icon chips (readable) */
.page-card,.dir-card,.price-card,.case-card{background:var(--sb-lightblue)!important;border-color:#b9cfe6!important;}
.page-card h3,.page-card p,.page-card a,.dir-card__name,.dir-card__desc,.dir-card__state,.dir-card__svc,
.case-card h3,.case-card p,.case-metric,.price-card h3,.price-card li,.price-card__amt,.dir-card__btn{color:var(--sb-navy)!important;}
.page-card__ic,.svc-icon{background:var(--sb-blue)!important;color:#fff!important;}

/* Forms: submit button navy with beige text */
.gp-form button[type="submit"]{background:var(--sb-navy)!important;border-color:var(--sb-navy)!important;color:var(--sb-light)!important;}
.gp-form button[type="submit"]:hover{background:#12283a!important;color:#fff!important;}

/* Footer: beige background, navy fonts, blue links */
.footer--mega{background:var(--sb-light)!important;}
.footer--mega .footer__col h4,.footer__brand,.footer__brand span,.footer__tag,.footer--mega .footer__contact li,
.footer--mega .footer__bottom-inner span{color:var(--sb-navy)!important;}
.footer--mega .footer__col a,.footer--mega .footer__contact a,.footer__social a,.footer__legal a,.footer__maps a{color:var(--sb-blue)!important;}
.footer--mega .footer__col a:hover,.footer--mega .footer__contact a:hover,.footer__social a:hover,.footer__legal a:hover,.footer__maps a:hover{color:var(--sb-navy)!important;}
.footer--mega .footer__bottom{border-top-color:rgba(29,58,84,.22)!important;}

/* +2px readability bump (footer + card/section boxes) for older readers */
.footer--mega .footer__col a,.footer--mega .footer__contact li,.footer--mega .footer__contact a,.footer__social a,
.footer__legal a,.footer__maps a,.footer--mega .footer__bottom-inner span,.footer__tag{font-size:1.0625rem!important;}
.footer--mega .footer__col h4{font-size:1rem!important;}
.page-card p,.dir-card__desc,.case-card p,.price-card li,.hub-note,.price-note,.role p,.career-note,.svc-list li,.gp-steps li{font-size:1.0625rem!important;}
.dir-card__state,.dir-card__svc,.role__meta{font-size:1rem!important;}

/* ================= REFINEMENTS (wave 1) ================= */
/* Hero backgrounds → blue #1A5578 */
.hero{background:var(--sb-blue)!important;}
.hero__slide .ph,.hero__slide .ph--6{background:var(--sb-blue)!important;}
.hero__slide::after{background:rgba(0,21,38,.4)!important;}
.page-hero{background:var(--sb-blue)!important;}
.page-hero::before{display:none!important;}
.page-hero--full::after{background:rgba(0,21,38,.5)!important;}
/* Counters → blue (remove the brown gradient); dark CTA bands → lighter navy */
.counters{background:var(--sb-blue)!important;}
.counters__bg,.counters__overlay{display:none!important;}
.cta-band,.page-cta,.footer-cta{background:var(--sb-navy)!important;}
/* Card titles → sans (no serif / no Times) */
.page-card h3,.page-card h3 a,.dir-card__name,.case-card h3,.price-card h3{font-family:var(--font)!important;font-weight:700!important;}
/* Minimum 16px everywhere; below-hero body ≥18px; maroon labels larger */
.breadcrumbs,.dir-card__state,.dir-card__svc,.role__meta,.footer--mega .footer__col a,.footer--mega .footer__col h4,
.footer__legal a,.footer__social a,.footer__maps a,.mobile a,.sub li a,.nav>ul>li>a{font-size:1rem!important;}
.eyebrow,.hero__eyebrow,.cta-band__eyebrow,.page-hero .eyebrow{font-size:1.05rem!important;letter-spacing:.06em!important;font-weight:700!important;}
.page-content,.page-card p,.dir-card__desc,.case-card p,.price-card li,.svc-list li,.hub-note,.page-lead,.role p,.audit__check{font-size:1.125rem!important;line-height:1.75!important;}
/* Header dropdown → beige bg, navy text, maroon on hover */
.sub{background:var(--sb-light)!important;box-shadow:0 12px 30px -10px rgba(0,0,0,.35)!important;}
.sub li a{color:var(--sb-navy)!important;}
.sub li a:hover{color:var(--sb-maroon)!important;background:rgba(107,10,6,.07)!important;}
/* Footer hover → navy (never maroon) */
.footer--mega a:hover{color:var(--sb-navy)!important;}