/* ==========================================================================
   Be Wise family look (October 2026) for three sets of guide pages:
     /health-library/     (Be Wellness Wise)    identifying colour sky blue
     /consumer-wise/      (Be Consumer Wise)    identifying colour amber
     /small-claims-wise/  (Be Small Claims Wise) identifying colour bronze
   Same publication as the restyled apps: navy header and footer, coral accents,
   Newsreader headings, Public Sans text, white cards on a pale grey-blue page.
   APPEARANCE ONLY: no wording, links or behaviour are changed.
   Each page sets --bw-accent (its identifying colour) in <style id="bw-family-app">;
   it is used only for the line under the header, the line over the footer
   and the small marks in front of section labels.
   Health "emergency" boxes stay red: that is a safety signal.
   The Health Library pages carry their own inline styles; the Consumer and
   Small Claims pages use their folder stylesheets. This file loads after both.
   ========================================================================== */

:root{
  --bw-ink:#14213D;          /* deep navy */
  --bw-harbour:#1B2A4A;      /* logo navy */
  --bw-coral:#E4572E;        /* accents and focus */
  --bw-coral-strong:#C2461F; /* filled buttons with white text */
  --bw-coral-deep:#A63B19;
  --bw-coral-light:#F4A58C;
  --bw-mist:#EEF1F6;         /* page background */
  --bw-soft:#F6F8FB;
  --bw-rule:#D9DFE8;
  --bw-rule-strong:#C3CCD9;
  --bw-steel:#56637A;
  --bw-text:#3E4A63;         /* body copy */
  --bw-blue:#2C5E8C;         /* "good": blue, never green */
  --bw-blue-bg:#E7EFF8;
  --bw-red:#B42318; --bw-red-dark:#8F1D14; --bw-red-bg:#FDECEA; --bw-red-rule:#F1C4BE;
  --bw-accent:#3D5A99;       /* overridden per page */
  --bw-serif:"Newsreader", Georgia, "Times New Roman", serif;
  --bw-sans:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* Health Library tokens (inline styles), re-pointed */
  --navy:#14213D; --navy-light:#1B2A4A; --navy-dark:#0D1629;
  --accent:#14213D; --gold:#C2461F; --red:#B42318; --red-dark:#8F1D14;
  --gray-50:#EEF1F6; --gray-100:#F6F8FB; --gray-200:#D9DFE8; --gray-400:#56637A; --gray-600:#3E4A63; --gray-800:#14213D;
  --surface:#FFFFFF;
  --font:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-serif:"Newsreader", Georgia, "Times New Roman", serif;
  --radius:8px;

  /* Consumer / Small Claims tokens (folder stylesheets), re-pointed */
  --ink:#14213D; --ink-soft:#3E4A63; --paper:#EEF1F6; --raised:#FFFFFF;
  --brass:#C2461F; --brass-dark:#A63B19; --brass-bg:#FCF1EC;
  --slate:#56637A; --rule:#D9DFE8; --rule-strong:#C3CCD9;
  --sage:#2C5E8C; --sage-bg:#E7EFF8;
  --focus:#E4572E;
  --serif:"Newsreader", Georgia, "Times New Roman", serif;
  --sans:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}

html{ -webkit-text-size-adjust:100%; }
body{ background:var(--bw-mist); color:var(--bw-ink); font-family:var(--bw-sans);
  -webkit-font-smoothing:antialiased; overflow-wrap:break-word; }
:focus-visible{ outline:2px solid var(--bw-coral); outline-offset:2px; }
::selection{ background:#F9D3C6; color:var(--bw-ink); }

/* "Be Wise Apps" strip added by bw-nav.js: same navy as the disclaimer bar */
.bw-strip{ background:#0D1629; }
/* Back / Back to top links */
.bw-bottom{ color:var(--bw-steel); }

/* ==========================================================================
   1. HEALTH LIBRARY  (.topnav header, <main>, footer.bw-footer)
   ========================================================================== */
.topnav{ background:var(--bw-ink); border-bottom:3px solid var(--bw-accent); padding:0.8rem 1.25rem; }
.nav-logo{ font-family:var(--bw-serif); font-weight:600; font-size:1.2rem; letter-spacing:-0.005em; gap:6px; color:#FFFFFF; }
.nav-logo svg{ width:30px; height:30px; margin-right:4px; }
.nav-logo span{ color:#FFFFFF; }
.nav-links{ gap:6px 18px; }
.nav-links a{ font-family:var(--bw-sans); font-size:0.84rem; font-weight:500; color:rgba(255,255,255,0.8); padding:4px 0; }
.nav-links a:hover{ color:#FFFFFF; text-decoration:underline; text-decoration-color:var(--bw-coral); text-underline-offset:4px; }

.topnav ~ main{ max-width:780px; padding:2rem 1.25rem 3rem; }
.topnav ~ main a{ color:var(--bw-ink); text-decoration:underline; text-decoration-color:var(--bw-coral); text-decoration-thickness:1px; text-underline-offset:3px; }
.topnav ~ main a:hover{ color:var(--bw-coral-strong); }
.topnav ~ main .breadcrumb{ font-size:0.8rem; color:var(--bw-steel); margin-bottom:1.1rem; }
.topnav ~ main .breadcrumb a{ color:var(--bw-steel); text-decoration:none; }
.topnav ~ main .breadcrumb a:hover{ color:var(--bw-ink); text-decoration:underline; }
.topnav ~ main h1{ font-family:var(--bw-serif); font-weight:500; font-size:clamp(2rem,5vw,2.75rem); line-height:1.1;
  letter-spacing:-0.018em; color:var(--bw-ink); margin-bottom:1rem; }
.topnav ~ main h2{ font-family:var(--bw-serif); font-weight:600; font-size:1.45rem; line-height:1.25; letter-spacing:-0.01em;
  color:var(--bw-ink); margin:2.2rem 0 0.6rem; }
.topnav ~ main h3{ font-family:var(--bw-serif); font-weight:600; color:var(--bw-ink); }
.topnav ~ main p{ font-size:1.02rem; line-height:1.68; color:var(--bw-text); margin-bottom:1rem; max-width:70ch; }
.topnav ~ main ul{ margin:0 0 1.1rem 1.3rem; max-width:68ch; }
.topnav ~ main li{ font-size:1.02rem; line-height:1.65; color:var(--bw-text); margin-bottom:0.4rem; padding-left:0.15rem; }
.topnav ~ main li::marker{ color:var(--bw-steel); }

.topnav ~ main .review-badge{ display:block; font-size:0.82rem; line-height:1.55; color:var(--bw-steel); margin-bottom:1.5rem; max-width:none;
  padding:0.55rem 0; border-top:1px solid var(--bw-rule); border-bottom:1px solid var(--bw-rule); }
.topnav ~ main .review-badge svg{ display:inline-block; vertical-align:-3px; margin-right:6px; color:var(--bw-blue); width:15px; height:15px; }
.topnav ~ main .review-badge a{ color:var(--bw-steel); }

/* Short answer box */
.topnav ~ main .quick-answer{ background:#FFFFFF; border:1px solid var(--bw-rule); border-left:4px solid var(--bw-harbour);
  border-radius:0 8px 8px 0; padding:1.1rem 1.3rem; margin-bottom:1.8rem; }
.topnav ~ main .quick-answer p{ color:var(--bw-ink); font-size:1.08rem; line-height:1.6; font-weight:400; max-width:none; margin-bottom:0; }

/* Emergency box: stays red (safety signal) */
.topnav ~ main .redflag-box{ background:var(--bw-red-bg); border:1px solid var(--bw-red-rule); border-left:4px solid var(--bw-red);
  border-radius:0 8px 8px 0; padding:1.1rem 1.3rem; margin:1.8rem 0; }
.topnav ~ main .redflag-box h2{ color:var(--bw-red-dark); margin-top:0; font-size:1.3rem; }
.topnav ~ main .redflag-box p, .topnav ~ main .redflag-box li{ color:#4A1A15; }
.topnav ~ main .redflag-box li::marker{ color:var(--bw-red); }
.topnav ~ main .redflag-box a{ color:var(--bw-red-dark); font-weight:700; text-decoration-color:var(--bw-red); }

/* "Look it up in the app" panel: navy, coral button */
.topnav ~ main .cta-box{ background:var(--bw-ink); border-radius:8px; padding:1.5rem 1.4rem; margin:2.2rem 0; }
.topnav ~ main .cta-box p{ color:rgba(255,255,255,0.84); font-size:0.98rem; max-width:none; }
.topnav ~ main .cta-box a{ text-decoration-color:var(--bw-coral-light); }
.topnav ~ main .cta-box a:hover{ color:#FFFFFF !important; }
.topnav ~ main .cta-btn{ background:var(--bw-coral-strong); color:#FFFFFF !important; font-family:var(--bw-sans); font-weight:600;
  font-size:0.95rem; padding:12px 22px; border-radius:4px; text-decoration:none !important; min-height:46px; line-height:1.4; transition:background .15s; }
.topnav ~ main .cta-btn:hover{ background:var(--bw-coral-deep); }

/* Common questions: accordions */
.topnav ~ main details{ background:#FFFFFF; border:1px solid var(--bw-rule); border-radius:8px; padding:0; margin-bottom:0.6rem; }
.topnav ~ main details[open]{ border-color:var(--bw-rule-strong); }
.topnav ~ main summary{ font-family:var(--bw-serif); font-weight:600; font-size:1.08rem; line-height:1.35; color:var(--bw-ink);
  list-style:none; position:relative; padding:0.85rem 2.8rem 0.85rem 1.1rem; border-radius:8px; }
.topnav ~ main summary::-webkit-details-marker{ display:none; }
.topnav ~ main summary::after{ content:""; position:absolute; right:1.1rem; top:50%; width:8px; height:8px; margin-top:-6px;
  border-right:2px solid var(--bw-coral-strong); border-bottom:2px solid var(--bw-coral-strong); transform:rotate(45deg); transition:transform .15s; }
.topnav ~ main details[open] > summary::after{ transform:rotate(-135deg); margin-top:-2px; }
.topnav ~ main summary:hover{ background:var(--bw-soft); }
.topnav ~ main details > p{ margin:0; padding:0 1.1rem 1rem; font-size:0.98rem; }

/* Topic cards */
.topnav ~ main .topic-grid{ gap:0.75rem; margin:0.9rem 0 2rem; }
.topnav ~ main .topic-card{ background:#FFFFFF; border:1px solid var(--bw-rule); border-radius:8px; padding:1rem 1.05rem;
  text-decoration:none; transition:border-color .15s, box-shadow .15s; }
.topnav ~ main .topic-card:hover{ border-color:var(--bw-harbour); box-shadow:0 4px 14px rgba(20,33,61,0.08); color:inherit; }
.topnav ~ main .topic-card h3{ font-size:1.08rem; line-height:1.3; margin-bottom:4px; color:var(--bw-ink); }
.topnav ~ main .topic-card p{ font-size:0.86rem; line-height:1.5; color:var(--bw-steel); margin:0; }

/* Section labels on the library index: small identifying-colour mark */
.topnav ~ main .cat-lbl{ font-family:var(--bw-sans); font-size:0.8rem; font-weight:600; color:var(--bw-steel);
  letter-spacing:0.06em; margin:2.2rem 0 0.2rem; display:flex; align-items:center; gap:10px; }
.topnav ~ main .cat-lbl::before{ content:""; width:18px; height:3px; border-radius:2px; background:var(--bw-accent); flex-shrink:0; }
.topnav ~ main .related-h{ margin-top:2.4rem; }

/* Tables (emergency numbers) */
.topnav ~ main .tbl-wrap{ margin:0.8rem 0 1.6rem; border:1px solid var(--bw-rule); border-radius:8px; background:#FFFFFF; }
.topnav ~ main .num-table{ border:0; background:#FFFFFF; font-size:0.95rem; }
.topnav ~ main .num-table th, .topnav ~ main .num-table td{ padding:0.65rem 0.9rem; border-bottom:1px solid var(--bw-rule); color:var(--bw-ink); line-height:1.5; }
.topnav ~ main .num-table tr:last-child th, .topnav ~ main .num-table tr:last-child td{ border-bottom:0; }
.topnav ~ main .num-table th{ font-family:var(--bw-sans); font-weight:600; background:var(--bw-soft); color:var(--bw-ink); font-size:0.9rem; }
.topnav ~ main .country{ border-top:1px solid var(--bw-rule); padding-top:0.5rem; }
.topnav ~ main .country h2{ margin-top:1.3rem; font-size:1.3rem; }

.topnav ~ main .srcs{ margin-left:1.2rem; }
.topnav ~ main .srcs li{ font-size:0.92rem; }
.topnav ~ main .disclaimer{ font-size:0.82rem; line-height:1.6; color:var(--bw-steel); border-top:1px solid var(--bw-rule); padding-top:1.1rem; margin-top:2.4rem; max-width:none; }
.topnav ~ main .disclaimer a{ color:var(--bw-steel); }

/* Footer: navy, identifying-colour line on top */
.topnav ~ footer.bw-footer{ background:var(--bw-ink); color:rgba(255,255,255,0.72); border-top:3px solid var(--bw-accent);
  font-family:var(--bw-sans); font-size:0.8rem; line-height:1.75; padding:1.4rem 1.25rem 1.6rem; }
.topnav ~ footer.bw-footer span{ color:#FFFFFF; }
.topnav ~ footer.bw-footer a{ color:#FFFFFF !important; text-decoration:underline; text-decoration-color:var(--bw-coral) !important; text-underline-offset:3px; }

/* ==========================================================================
   2. CONSUMER WISE + SMALL CLAIMS WISE  (header.site, main.wrap, footer.site)
   ========================================================================== */
.dis-bar{ background:#0D1629; color:rgba(255,255,255,0.82); font-family:var(--bw-sans); font-size:0.8rem; line-height:1.5; }

header.site{ background:var(--bw-ink); border-bottom:3px solid var(--bw-accent); }
header.site .wrap{ min-height:64px; padding-top:10px; padding-bottom:10px; }
header.site .brand{ color:#FFFFFF; font-family:var(--bw-serif); font-weight:600; font-size:1.32rem; letter-spacing:-0.005em; gap:10px; }
header.site .brand img{ width:34px; height:34px; }
header.site .snav a{ color:rgba(255,255,255,0.8); font-family:var(--bw-sans); font-weight:500; font-size:0.86rem; text-decoration:none; }
header.site .snav a:hover{ color:#FFFFFF; text-decoration:underline; text-decoration-color:var(--bw-coral); text-underline-offset:4px; }
/* 3-bar menu button now sits on navy: white icon */
header.site .bw-burger, header.site .bw-burger.bw-on-light{ color:#FFFFFF; border-color:rgba(255,255,255,0.35); border-radius:4px; }
header.site .bw-burger:hover, header.site .bw-burger[aria-expanded="true"],
header.site .bw-burger.bw-on-light:hover, header.site .bw-burger.bw-on-light[aria-expanded="true"]{ background:rgba(255,255,255,0.12); border-color:#FFFFFF; }
/* drop-down menu: white panel, navy text */
.bw-menu{ border-radius:8px; border-color:var(--bw-rule); box-shadow:0 16px 36px rgba(10,18,36,0.22); font-family:var(--bw-sans); color:var(--bw-ink); }
.bw-menu a, .bw-menu button{ color:var(--bw-ink) !important; border-radius:4px; }
.bw-menu a:hover, .bw-menu button:hover, .bw-menu a:focus-visible, .bw-menu button:focus-visible{ background:var(--bw-mist); }
.bw-menu .bw-sep{ background:var(--bw-rule); }
.bw-menu .bw-contact{ box-shadow:inset 3px 0 0 var(--bw-coral); }

/* Article column */
header.site ~ main{ font-family:var(--bw-sans); font-size:1.02rem; line-height:1.68; color:var(--bw-text); padding-top:10px; padding-bottom:44px; }
header.site ~ main a{ color:var(--bw-ink); text-decoration-color:var(--bw-coral); text-decoration-thickness:1px; text-underline-offset:3px; }
header.site ~ main a:hover{ color:var(--bw-coral-strong); }
header.site ~ main p, header.site ~ main li{ max-width:70ch; color:var(--bw-text); }
header.site ~ main ul, header.site ~ main ol{ color:var(--bw-text); }
header.site ~ main li{ margin-bottom:0.45em; }
header.site ~ main li::marker{ color:var(--bw-steel); }
header.site ~ main strong{ color:var(--bw-ink); font-weight:600; }
header.site ~ main h1, header.site ~ main h2, header.site ~ main h3{ font-family:var(--bw-serif); color:var(--bw-ink); }
header.site ~ main h1{ font-weight:500; font-size:clamp(2rem,4.8vw,2.85rem); line-height:1.1; letter-spacing:-0.018em; margin:0.25em 0 0.45em; }
header.site ~ main h2{ font-weight:600; font-size:1.5rem; line-height:1.25; letter-spacing:-0.01em; margin:1.8em 0 0.5em; padding-top:0; }
header.site ~ main h3{ font-weight:600; font-size:1.17rem; line-height:1.3; letter-spacing:0; }

header.site ~ main .crumbs{ font-size:0.8rem; color:var(--bw-steel); margin:22px 0 10px; }
header.site ~ main .crumbs a{ color:var(--bw-steel); text-decoration:none; }
header.site ~ main .crumbs a:hover{ color:var(--bw-ink); text-decoration:underline; }
header.site ~ main .lede{ font-size:1.16rem; line-height:1.6; color:var(--bw-ink); max-width:64ch; }
header.site ~ main .meta-line, header.site ~ main .checked{ font-size:0.84rem; line-height:1.55; color:var(--bw-steel);
  border-top:1px solid var(--bw-rule); border-bottom:1px solid var(--bw-rule); padding:9px 0; margin:18px 0 10px; max-width:70ch; }
header.site ~ main .meta-line a{ color:var(--bw-steel); }
header.site ~ main .updated, header.site ~ main .src, header.site ~ main .nd{ color:var(--bw-steel); }
header.site ~ main .src a{ color:var(--bw-steel); }

/* Tables */
header.site ~ main .tbl{ border:1px solid var(--bw-rule); border-radius:8px; background:#FFFFFF; margin:16px 0 22px; }
header.site ~ main .tbl table{ font-size:0.94rem; }
header.site ~ main .tbl th, header.site ~ main .tbl td{ padding:11px 14px; border-bottom:1px solid var(--bw-rule); line-height:1.5; color:var(--bw-text); }
header.site ~ main .tbl th{ font-family:var(--bw-sans); font-weight:600; font-size:0.88rem; color:var(--bw-ink); background:var(--bw-soft); }
header.site ~ main table.plain{ background:#FFFFFF; font-size:0.94rem; border:1px solid var(--bw-rule); margin:14px 0 20px; }
header.site ~ main table.plain th, header.site ~ main table.plain td{ border:0; border-bottom:1px solid var(--bw-rule); padding:10px 12px; line-height:1.5; color:var(--bw-text); }
header.site ~ main table.plain th{ background:var(--bw-soft); font-weight:600; font-size:0.88rem; color:var(--bw-ink); border-bottom:1px solid var(--bw-rule-strong); }
header.site ~ main table.plain tbody tr:last-child td{ border-bottom:0; }

/* Callouts and panels */
header.site ~ main .note{ background:#FFFFFF; border:1px solid var(--bw-rule); border-left:4px solid var(--bw-harbour);
  border-radius:0 8px 8px 0; padding:14px 18px; font-size:0.98rem; }
header.site ~ main .note p{ color:var(--bw-ink); }
header.site ~ main .panel{ background:#FFFFFF; border:1px solid var(--bw-rule); border-radius:8px; padding:20px 22px; }
header.site ~ main .panel h2{ font-size:1.3rem; }
header.site ~ main .bw-spot{ background:rgba(255,255,255,0.6); border:1px solid var(--bw-rule-strong); border-radius:8px; color:var(--bw-text); }
header.site ~ main .bw-spot strong{ color:var(--bw-steel); font-weight:600; }
header.site ~ main .bw-spot a{ color:var(--bw-ink); }

/* Question-and-answer blocks */
header.site ~ main section.qas{ border-top:2px solid var(--bw-ink); margin-top:2.6em; }
header.site ~ main article.qa{ border-bottom:1px solid var(--bw-rule); padding:16px 0 8px; }
header.site ~ main article.qa h3{ margin-bottom:0.35em; }
header.site ~ main .ans{ color:var(--bw-text); }
header.site ~ main .faq-cat{ border-top:1px solid var(--bw-rule-strong); padding-top:0.4em; margin-top:2em; }
header.site ~ main .qa-link{ color:var(--bw-coral-strong); text-decoration:none; font-family:var(--bw-sans); font-weight:500; }
header.site ~ main .qa:target{ background:var(--bw-blue-bg); outline:8px solid var(--bw-blue-bg); border-radius:2px; }
header.site ~ main .faq-toc li, header.site ~ main .qlist li{ margin-bottom:0.3em; }

/* Section labels (guide index groups): small identifying-colour mark */
header.site ~ main .group-h{ display:flex; align-items:center; gap:12px; }
header.site ~ main .group-h::before{ content:""; width:18px; height:3px; border-radius:2px; background:var(--bw-accent); flex-shrink:0; }

/* Related-guide cards */
header.site ~ main .related{ border-top:1px solid var(--bw-rule); margin-top:2.6em; padding-top:0.4em; }
header.site ~ main .related h2{ font-size:1.3rem; margin-top:0.8em; }
header.site ~ main .cards{ gap:12px; }
header.site ~ main .cards a{ background:#FFFFFF; border:1px solid var(--bw-rule); border-radius:8px; padding:14px 16px;
  color:var(--bw-ink); font-family:var(--bw-serif); font-weight:600; font-size:1.06rem; line-height:1.3; text-decoration:none;
  transition:border-color .15s, box-shadow .15s; }
header.site ~ main .cards a:hover{ border-color:var(--bw-harbour); box-shadow:0 4px 14px rgba(20,33,61,0.08); color:var(--bw-ink); }
header.site ~ main .cards small{ font-family:var(--bw-sans); font-weight:400; font-size:0.86rem; line-height:1.5; color:var(--bw-steel); margin-top:5px; }

/* Recent changes entries */
header.site ~ main .chg{ border-left:3px solid var(--bw-harbour); padding:4px 0 4px 16px; }
header.site ~ main .chg time{ color:var(--bw-steel); }

/* "Open the app" panel: navy band, coral button (both folders) */
header.site ~ main .cta{ background:var(--bw-ink); color:rgba(255,255,255,0.84); border:0; border-radius:8px; padding:24px 26px; margin:36px 0 14px; }
header.site ~ main .cta h2{ color:#FFFFFF; font-weight:500; font-size:1.45rem; margin:0 0 0.35em; padding:0; }
header.site ~ main .cta p{ color:rgba(255,255,255,0.82); }
header.site ~ main .cta a:not(.btn){ color:#FFFFFF; text-decoration-color:var(--bw-coral-light); }
header.site ~ main .cta a:not(.btn):hover{ color:#FFFFFF; text-decoration-color:#FFFFFF; }
header.site ~ main .btn{ display:inline-block; background:var(--bw-coral-strong); color:#FFFFFF; border:1px solid var(--bw-coral-strong);
  border-radius:4px; font-family:var(--bw-sans); font-weight:600; font-size:0.95rem; line-height:1.4; padding:11px 20px;
  text-decoration:none; margin:6px 10px 4px 0; transition:background .15s; }
header.site ~ main .btn:hover{ background:var(--bw-coral-deep); border-color:var(--bw-coral-deep); color:#FFFFFF; }
header.site ~ main .btn.alt{ background:transparent; border:1px solid rgba(255,255,255,0.45); color:#FFFFFF; }
header.site ~ main .btn.alt:hover{ background:rgba(255,255,255,0.1); border-color:#FFFFFF; }
header.site ~ main .more button{ background:#FFFFFF; border:1px solid var(--bw-rule-strong); border-radius:4px; color:var(--bw-ink); font-family:var(--bw-sans); }
header.site ~ main .more button:hover{ border-color:var(--bw-harbour); }

/* Footer: navy, identifying-colour line on top */
footer.site{ background:var(--bw-ink); color:rgba(255,255,255,0.72); border-top:3px solid var(--bw-accent);
  font-family:var(--bw-sans); font-size:0.82rem; line-height:1.7; padding:22px 0 28px; margin-top:40px; }
footer.site p{ color:rgba(255,255,255,0.72); }
footer.site a, footer.site a[style]{ color:#FFFFFF !important; text-decoration:underline; text-decoration-color:var(--bw-coral) !important; text-underline-offset:3px; }
footer.site span[style]{ color:#FFFFFF !important; }

/* ---------- Phones ---------- */
@media (max-width:640px){
  .topnav{ padding:0.7rem 1rem; }
  .topnav ~ main{ padding:1.4rem 1rem 2.5rem; }
  .topnav ~ main h2{ font-size:1.3rem; margin-top:1.9rem; }
  .topnav ~ main .cta-box{ padding:1.25rem 1.1rem; }
  header.site .brand{ font-size:1.18rem; }
  header.site ~ main h2{ font-size:1.32rem; }
  header.site ~ main .cta{ padding:20px 18px; }
  header.site ~ main .panel{ padding:16px 16px; }
  header.site ~ main table.plain{ font-size:0.88rem; }
  header.site ~ main table.plain th, header.site ~ main table.plain td{ padding:8px 7px; overflow-wrap:anywhere; hyphens:auto; }
}
