/* =========================================================================
   Policy Joe / Humana theme — loaded AFTER components.css.
   Palette taken from humana.com (computed styles, 2026-09-29):
     Humana Green  #5C9A1B  (buttons, accents)      Dark Green #114A21 (headings)
     Pale Green    #EFF5E6  (section tint)          Light Gray #F8F8F8 (footer)
     Teal link     #007481  (text links)
   Content and layout untouched; this file only recolors.
   ========================================================================= */
:root {
  --c-primary:        #114A21;   /* headings, dark surfaces */
  --c-primary-700:    #1D6B2F;
  --c-primary-50:     #EFF5E6;
  --c-action:         #5C9A1B;   /* was signal orange */
  --c-action-700:     #4A7F14;
  --c-accent:         #5C9A1B;
  --c-success:        #5C9A1B;
  --c-success-tint:   #EFF5E6;
  --c-cta-tel:        #5C9A1B;   /* was medical blue */
  --c-surface-alt:    #F5F8F0;
  --c-surface-tint:   #EFF5E6;
  --c-border:         #D9E2CF;
  --c-text:           #1B1B1B;
  --c-text-muted:     #4B5548;
  --focus-ring:       0 0 0 3px #A8D56E;
  --shadow-sm: 0 1px 2px rgba(17, 74, 33, 0.06), 0 1px 1px rgba(17, 74, 33, 0.04);
  --shadow-md: 0 2px 6px rgba(17, 74, 33, 0.08);
  --shadow-lg: 0 8px 24px rgba(17, 74, 33, 0.10);
}

/* Top notice bar: Humana green like humana.com's header band */
.gov-banner { background: #5C9A1B; color: #fff; }

/* Header */
.site-header { border-bottom-color: #D9E2CF; }
.header-tel { color: #114A21; border-color: #5C9A1B; }
.header-tel:hover { background: #EFF5E6; color: #114A21; }
.header-tel svg { color: #5C9A1B; }

/* Buttons: Humana green, white text, subtle darker edge */
.btn-tel, .btn-tel--lg, .sticky-call .btn-tel, .hero-bg__cta a.btn-tel {
  background: #5C9A1B !important; color: #fff !important; border-color: #4A7F14 !important;
  box-shadow: 0 2px 0 #3E6C10;
}
.btn-tel:hover, .hero-bg__cta a.btn-tel:hover { background: #4A7F14 !important; }

/* Hero: replace the brown 'alert' tone with deep Humana green */
.hero-bg, .hero-bg--alert { background-color: #0E3A1B; }
.hero-bg::before, .hero-bg--alert::before {
  background:
    linear-gradient(90deg, rgba(14,58,27,0.92) 0%, rgba(14,58,27,0.78) 38%, rgba(14,58,27,0.32) 62%, rgba(14,58,27,0.05) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.18) 0%, rgba(0,0,0,0.0) 30%, rgba(0,0,0,0.18) 100%);
}
.hero-bg--right::before, .hero-bg--alert.hero-bg--right::before {
  background:
    linear-gradient(270deg, rgba(14,58,27,0.92) 0%, rgba(14,58,27,0.80) 38%, rgba(14,58,27,0.35) 62%, rgba(14,58,27,0.05) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.18) 0%, rgba(0,0,0,0.0) 30%, rgba(0,0,0,0.18) 100%);
}
.hero-bg h1 strong, .hero-bg--alert h1 strong { color: #A8D56E; }         /* light Humana green, not gold */
.hero-bg h1 em { color: #A8D56E; }
.hero-bg__quals svg, .hero-bg--alert .hero-bg__quals svg { color: #A8D56E; }
.hero-bg__eyebrow, .hero-bg--alert .hero-bg__eyebrow { background: rgba(168,213,110,0.16); border-color: rgba(168,213,110,0.45); color: #E3F1CF; }
.hero-bg__eyebrow .pulse, .hero-bg--alert .hero-bg__eyebrow .pulse { background: #A8D56E; box-shadow: 0 0 0 0 rgba(168,213,110,0.5); }
.hero-bg__cta { border-color: #5C9A1B; box-shadow: 0 14px 32px rgba(0,0,0,0.25); }
.hero-bg__cta-label { color: #114A21; }
.hero-bg__cta-label .dot { background: #5C9A1B; }
.hero-bg__compliance { border-left-color: #A8D56E; }

/* Mid sections: white / pale green banding, dark green headings */
.section-tint, .section--tint { background: #EFF5E6; }
h1, h2, h3, .section h2, .section h3 { color: #114A21; }
.hero-bg h1, .site-footer h2, .site-footer h3 { color: #fff; }
.hero__notice .dot, .hero__h1 em { color: #5C9A1B; background: none; }
.testi__stars, .hero-clean__stars { color: #5C9A1B; }
a:not(.btn-tel):not(.header-tel):not(.brand) { color: #007481; }

/* Footer: dark Humana green. EVERY piece of text on the dark surfaces is pure white (Anthony 09-29) */
.site-footer { background: #0E3A1B; color: #fff; }
.site-footer, .site-footer p, .site-footer li, .site-footer span, .site-footer div { color: #fff; }
.site-footer a, .site-footer a:not(.btn-tel):not(.header-tel):not(.brand) { color: #fff; }
.footer__list a:hover { color: #A8D56E; }
.footer__heading { color: #fff; }
.disclaimer-strong { background: #0A2C14; border-color: #1D6B2F; border-left-color: #A8D56E; color: #fff; }
.disclaimer-strong strong { color: #fff; }
.footer__legal, .footer__legal p { color: #fff; border-top-color: #1D6B2F; }
.sticky-call { background: #0E3A1B; border-top-color: #5C9A1B; }

/* Hero: all copy on the dark green photo overlay is solid white too */
.hero-bg__copy, .hero-bg__sub, .hero-bg__proof, .hero-bg__proof-item, .hero-bg__compliance, .hero-bg__quals li { color: #fff; }
.hero-bg__img { filter: saturate(0.82) contrast(1.02); }

/* Legal pages (privacy / terms / ccpa / do-not-sell) share the same tokens via :root above */
.legal-hero, .page-hero { background: #EFF5E6; }
