/* Theme B: light, editorial. Big type with a green accent phrase, pill buttons, 22px cards, tabs and FAQ. */
:root { --r-btn: 999px; --r-card: 22px; --r-big: 28px; --h1: clamp(42px, 5.2vw, 68px); --h2: clamp(34px, 4.6vw, 60px); --sec-pad: 112px; }
.theme-b .bar { min-height: 96px; }
.theme-b .hero { padding: 40px 0 88px; }
.theme-b .hero h1 { line-height: .98; letter-spacing: -.04em; }
.theme-b .hero .lede { font-size: 21px; color: #3d4b47; }
.theme-b .eyebrow { color: var(--green); }
.theme-b .sec-black .eyebrow { color: var(--bright); }
.theme-b .sec-green .eyebrow { color: #fff; }
.theme-b .sec-head h2, .theme-b .stack h2, .theme-b .cta-end h2 { letter-spacing: -.035em; }
.theme-b .card { padding: 30px; min-height: 240px; }
.theme-b a.card:hover { background: #f1f8f6; transform: none; }
.theme-b .card h3, .theme-b .card .card-title { font-size: 25px; letter-spacing: -.02em; line-height: 1.15; margin-top: 10px; }
.theme-b .card p { font-size: 16px; }
.theme-b .contact-cards .card { min-height: 0; }
.theme-b .contact-cards .card h2 { font-size: 24px; }
.theme-b .ruled li { font-size: 21px; }
.theme-b .sec-black { border-radius: 0; }

/* inner pages: large light header with a mono breadcrumb */
.theme-b .page-hero { padding: 40px 0 24px; }
.theme-b .page-hero h1 { font-size: clamp(42px, 6.4vw, 84px); letter-spacing: -.04em; line-height: 1; }
.theme-b .page-hero .lede { color: #3d4b47; }
.theme-b .side-cta { background: var(--black); }

/* closing call to action: a black rounded card on white */
.theme-b .cta-end { background: #fff; color: #fff; padding: 0 0 96px; }
.theme-b .cta-end-in { background: var(--black); border-radius: 36px; padding: 64px; max-width: 1160px; width: calc(100% - 80px); margin: 0 auto; }
.theme-b .cta-end-in::before { content: none; }
.theme-b .cta-end .wrap { max-width: none; }
.theme-b .cta-end p { color: var(--soft); }
.theme-b .cta-end .btn-solid { background: var(--green); }
.theme-b .cta-end .btn-solid:hover { background: var(--green-d); }

/* light footer */
.theme-b .site-footer { background: #fff; color: var(--muted); border-top: 1px solid var(--line); }
.theme-b .site-footer h2 { color: var(--green); }
.theme-b .site-footer a:hover { color: var(--ink); }
.theme-b .foot-phone { color: var(--ink); }
.theme-b .site-footer .brand-word { color: var(--ink); }
.theme-b .site-footer .brand-word b { color: var(--green); }
.theme-b .foot-base { border-top-color: var(--line); color: var(--muted); }
.theme-b .site-footer :focus-visible { outline-color: var(--ink); }
.theme-b .sa-cookie-settings { color: var(--ink); }
.theme-b .foot-base a { color: var(--ink); }

@media (max-width: 600px) {
  .theme-b .cta-end-in { padding: 36px 24px; width: calc(100% - 40px); border-radius: 24px; }
}
.theme-b .page-banner { margin-top: 8px; }
