/* ============================================================
   THE SISTER SYSTEM v1 - audhd.org.au as sibling of seen.org.au
   Direction: "shared grammar, own voice" (judged 2-0, 2026-08).
   Converges structure (type pairing, pills, band rhythm, chrome
   architecture) on seen.org.au; keeps audhd equity (navy ink,
   yellow action accent, sage, THE RECORD, crisis-first bar).
   Loaded LAST on every page: it must win the cascade over the
   inline design-v2 blocks and /assets/art-v3.css.
   Every token ships triple-guarded: bare :root (light), the
   media-dark guard, and [data-theme="dark"] - never fewer.
   ============================================================ */

/* ---------- 1. TOKEN REMAP: light ---------- */
:root {
  /* grounds: cream retires, white + sage-tint scaffolding arrives */
  --audhd-cream: #FFFFFF;
  --cream: #FFFFFF;
  --audhd-soft-cream: #EEF5F2;
  --softcream: #EEF5F2;
  --surface: #FFFFFF;
  --band-sage-surface: #FFFFFF;
  --tint: #E7F1ED;

  /* the one dark band deepens to the sister navy */
  --audhd-deep: #1B303A;
  --deep: #1B303A;
  --band-sage-ink: #1B303A;
  --band-sage-focus: #1B303A;
  --band-dark-bg: #1B303A;

  /* action accent unified (legacy #F6C63D retires) */
  --yellow: #FFCC33;
  --audhd-yellow: #FFCC33;
  --butter: #FFE59B;
  --audhd-butter: #FFE59B;

  /* ink family unified */
  --ink-soft: #4A626D;
  --ink-2: #4A626D;
  --ink-faint: #5F757F;
  --ink-3: #5F757F;

  /* hairlines: warm cream lines retire, sage-grey arrives */
  --line: #DCE4E2;
  --line-soft: #ECF1EF;
  --seam-rule: rgba(36, 63, 74, .30);

  /* crisis bar sits on ink navy in light mode (Seen footer=ink logic) */
  --util-bg: #243F4A;

  /* the RECORD paper scale: cream ground and cream band retire */
  --paper-0: #FFFFFF;
  --paper-2: #EEF5F2;
  --paper-4: #1B303A;
}

/* ---------- 1b. TOKEN REMAP: dark (restated so the late bare
   :root above cannot leak into either dark state) ---------- */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --audhd-cream: #FFF8E8;
    --cream: #FFF8E8;
    --audhd-soft-cream: #FFF4CC;
    --softcream: #FFF4CC;
    --surface: #1E2838;
    --band-sage-surface: #2A4746;
    --tint: #232F3C;
    --audhd-deep: #1E2838;
    --deep: #1E2838;
    --band-sage-ink: #FFF8E8;
    --band-sage-focus: #FFCC33;
    --band-dark-bg: #101820;
    --yellow: #FFCC33;
    --audhd-yellow: #FFCC33;
    --butter: #FFE59B;
    --audhd-butter: #FFE59B;
    --ink-soft: #C9D6DA;
    --ink-2: #D7E4E2;
    --ink-faint: #A2B3B9;
    --ink-3: #A9BFC4;
    --line: rgba(207, 227, 222, .20);
    --line-soft: #2A3542;
    --seam-rule: rgba(207, 227, 222, .38);
    --util-bg: #0C1219;
    --canvas: #141C24;
    --paper-0: #141C24;
    --paper-2: #24303F;
    --paper-4: #0C1219;
  }
}
:root[data-theme="dark"] {
  --audhd-cream: #FFF8E8;
  --cream: #FFF8E8;
  --audhd-soft-cream: #FFF4CC;
  --softcream: #FFF4CC;
  --surface: #1E2838;
  --band-sage-surface: #2A4746;
  --tint: #232F3C;
  --audhd-deep: #1E2838;
  --deep: #1E2838;
  --band-sage-ink: #FFF8E8;
  --band-sage-focus: #FFCC33;
  --band-dark-bg: #101820;
  --yellow: #FFCC33;
  --audhd-yellow: #FFCC33;
  --butter: #FFE59B;
  --audhd-butter: #FFE59B;
  --ink-soft: #C9D6DA;
  --ink-2: #D7E4E2;
  --ink-faint: #A2B3B9;
  --ink-3: #A9BFC4;
  --line: rgba(207, 227, 222, .20);
  --line-soft: #2A3542;
  --seam-rule: rgba(207, 227, 222, .38);
  --util-bg: #0C1219;
  --canvas: #141C24;
  --paper-0: #141C24;
  --paper-2: #24303F;
  --paper-4: #0C1219;
}

/* ---------- 2. TYPE POSTURE: the sister serif hand ----------
   Source Serif 4 now sits behind the 'Newsreader' alias. Display
   weight 500 (one step lighter than Seen's 600: the bookish own
   voice), tracking eased for SS4's wider fit. */
h1, h2, .mast__h, .sec__h { font-weight: 500; }
h1, .mast__h { letter-spacing: -0.025em; line-height: 1.04; }
h2, .sec__h { letter-spacing: -0.02em; line-height: 1.09; }
h3, h4 { font-weight: 600; }

/* eyebrows: Seen tracking register */
.mast__eyebrow, .sec__num, .eyebrow, .kicker {
  letter-spacing: 0.15em;
  font-weight: 600;
}

/* ---------- 3. PILLS: converge the micro-grammar ---------- */
.pill, .btn, .nv-cta {
  font-weight: 600;
  transition: background-color .2s cubic-bezier(.16, 1, .3, 1),
              border-color .2s cubic-bezier(.16, 1, .3, 1),
              color .2s cubic-bezier(.16, 1, .3, 1);
}
.pill:hover, .btn:hover, .nv-cta:hover {
  transform: none;
  filter: none;
}

/* ---------- 4. CERTIFICATE (.stamp): restyled, not redesigned ---------- */
.stamp {
  background: var(--surface);
  border: 1px solid var(--line);
  border-top: 3px solid #2C6574;
  border-radius: 3px 3px 16px 16px;
  box-shadow: 0 1px 2px rgba(36, 63, 74, .04), 0 8px 30px -12px rgba(36, 63, 74, .12);
}

/* ---------- 5. CARDS: sister radius + navy-tinted soft shadow ---------- */
.card {
  border-radius: 16px;
  box-shadow: 0 1px 2px rgba(36, 63, 74, .04), 0 8px 30px -12px rgba(36, 63, 74, .12);
}

/* ---------- 6. NAV CHROME ---------- */
.nv {
  background: rgba(255, 255, 255, .92);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid #DCE4E2;
}
.nv .nv-burger { color: #243F4A; }
.nv .nv-burger svg { stroke: #243F4A; }

/* the CTA pill: unified action yellow, colour-only hover */
.nv-cta, .nv-drawer .nv-cta {
  background: #FFCC33;
  color: #1B303A;
}
.nv-cta:hover { background: #F0BC24; filter: none; }

/* mega-panel: plain lifted panel, notch retired */
.nv-panel {
  border-color: #DCE4E2;
  border-radius: 16px;
  box-shadow: 0 2px 4px rgba(36, 63, 74, .06), 0 24px 56px -24px rgba(36, 63, 74, .30);
}
.nv-panel::before { display: none; }
.nv-feat {
  background: #E7F1ED;
  border-color: #DCE4E2;
}
.nv-feat u { color: #A8760B; }

/* nav goes properly dark in dark mode (retires the white-bar oddity) */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .nv {
    background: rgba(20, 28, 36, .88);
    border-bottom-color: #2A3542;
  }
  :root:not([data-theme="light"]) .nv .nv-top,
  :root:not([data-theme="light"]) .nv .nv-link,
  :root:not([data-theme="light"]) .nv .nv-burger { color: #FFF8E8; }
  :root:not([data-theme="light"]) .nv .nv-burger svg { stroke: #FFF8E8; }
  :root:not([data-theme="light"]) .nv .nv-burger { border-color: #2A3542; }
  :root:not([data-theme="light"]) .nv-panel { background: #1E2838; border-color: #2A3542; }
  :root:not([data-theme="light"]) .nv-feat { background: #232F3C; border-color: #2A3542; }
}
:root[data-theme="dark"] .nv {
  background: rgba(20, 28, 36, .88);
  border-bottom-color: #2A3542;
}
:root[data-theme="dark"] .nv .nv-top,
:root[data-theme="dark"] .nv .nv-link,
:root[data-theme="dark"] .nv .nv-burger { color: #FFF8E8; }
:root[data-theme="dark"] .nv .nv-burger svg { stroke: #FFF8E8; }
:root[data-theme="dark"] .nv .nv-burger { border-color: #2A3542; }
:root[data-theme="dark"] .nv-panel { background: #1E2838; border-color: #2A3542; }
:root[data-theme="dark"] .nv-feat { background: #232F3C; border-color: #2A3542; }

/* ---------- 7. MOBILE: the dark takeover ---------- */
.nv-drawer {
  background: #1B303A;
  color: #FFF8E8;
}
.nv-drawer .nv-dhead { border-color: rgba(255, 248, 232, .14); }
.nv-drawer .nv-dgrp h4 {
  color: #CFE3DE;
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.28em;
}
.nv-drawer .nv-dgrp a {
  font-family: 'Newsreader', Georgia, serif;
  font-size: clamp(1.6rem, 6.5vw, 2.1rem);
  font-weight: 400;
  line-height: 1.3;
  color: #FFF8E8;
  letter-spacing: -0.01em;
}
.nv-drawer .nv-burger { color: #FFF8E8; border-color: rgba(255, 248, 232, .3); }
.nv-drawer .nv-burger svg { stroke: #FFF8E8; }
/* staggered fade-rise when the takeover opens */
@media (prefers-reduced-motion: no-preference) {
  .nv-drawer[data-open="true"] .nv-dgrp {
    animation: au-rise .5s cubic-bezier(.16, 1, .3, 1) both;
  }
  .nv-drawer[data-open="true"] .nv-dgrp:nth-of-type(2) { animation-delay: 60ms; }
  .nv-drawer[data-open="true"] .nv-dgrp:nth-of-type(3) { animation-delay: 115ms; }
  .nv-drawer[data-open="true"] .nv-dgrp:nth-of-type(4) { animation-delay: 170ms; }
  .nv-drawer[data-open="true"] .nv-dgrp:nth-of-type(5) { animation-delay: 225ms; }
}
@keyframes au-rise {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}

/* ---------- 8. LOGO LOCKUP (inline SVG, injected by chrome pass) ---------- */
.au-lockup { display: inline-flex; align-items: center; }
.au-lockup svg { height: 30px; width: auto; display: block; }
.au-lockup .lg-field { fill: #2C6574; }
.au-lockup .lg-lens { fill: #FFCC33; }
.au-lockup .lg-word { fill: #243F4A; }
/* on dark grounds the field and word flip to cream, the lens holds */
footer .lg-field, .nv-drawer .lg-field { fill: #FFF8E8; }
footer .lg-word, .nv-drawer .lg-word { fill: #FFF8E8; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .nv .lg-field { fill: #8FC4D3; }
  :root:not([data-theme="light"]) .nv .lg-word { fill: #FFF8E8; }
}
:root[data-theme="dark"] .nv .lg-field { fill: #8FC4D3; }
:root[data-theme="dark"] .nv .lg-word { fill: #FFF8E8; }

/* ---------- 9. CRISIS BAR on every page (self-contained: interiors
   have no util CSS of their own; values mirror the homepage bar) ---------- */
.util { background: var(--util-bg); color: #FFF8E8; }
.util-in {
  max-width: 1200px; margin-inline: auto; padding: 10px 1.5rem;
  display: flex; align-items: center; gap: 18px; flex-wrap: wrap;
  font-size: 0.923rem; line-height: 1.5;
}
.util .crisis, .util .util-crisis { margin-right: auto; }
.util .c-short { display: none; }
.util a { color: inherit; text-decoration: none; border-bottom: 1px solid rgba(255,248,232,.35); }
.util a:hover { border-bottom-color: #FFCC33; }
.util .sep { opacity: .45; }
@media (max-width: 720px) {
  .util .c-full { display: none; }
  .util .c-short { display: inline; }
  .util-link, .util .sep { display: none; }
}

/* ---------- 10. FOOTER: the dark sister footer ----------
   Same markup, new vessel: ink navy ground, cream cargo. */
footer {
  background: #243F4A;
  border-top: 0;
  color: rgba(255, 248, 232, .75);
}
footer .foot-brand > p,
footer .foot-cols p, footer .foot-note, footer .wrap > div > p {
  color: rgba(255, 248, 232, .55);
}
footer .foot-brand .logo .logo-mark,
footer .foot-brand .logo .logo-sub { color: #FFF8E8; }
footer summary { color: #FFF8E8; }
footer details { border-color: rgba(255, 248, 232, .14); }
footer details ul a, footer a { color: rgba(255, 248, 232, .78); }
footer a:hover { color: #FFF8E8; }
footer .chev { stroke: rgba(255, 248, 232, .6); }
footer .stay-note { color: rgba(255, 248, 232, .7); }
footer .stay-note a { color: #FFCC33; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) footer { background: #10181E; }
}
:root[data-theme="dark"] footer { background: #10181E; }

/* ---------- 11. GIANT SIGN-OFF (injected by chrome pass) ---------- */
.foot-signoff {
  display: flex; flex-direction: column; align-items: center; gap: 22px;
  padding: 40px 0 56px;
}
.foot-signoff .so-mark { height: clamp(72px, 12vw, 110px); width: auto; }
.foot-signoff .so-word { height: clamp(44px, 9vw, 72px); width: auto; max-width: 82vw; }
.foot-signoff .lg-field, .foot-signoff .lg-word { fill: #FFF8E8; }
.foot-signoff .lg-lens { fill: #FFCC33; }
.foot-legal {
  text-align: center; font-size: 0.75rem; color: rgba(255, 248, 232, .5);
  padding-bottom: 8px;
}

/* ---------- 12. HOMEPAGE BAND GRAMMAR ---------- */
/* the light tint band (Seen's sand role, sage-hued) */
.s-tint { background: #EEF5F2; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .s-tint { background: #24303F; }
}
:root[data-theme="dark"] .s-tint { background: #24303F; }

/* hero photo wash: cream stop retires (dark variant already navy) */
.hero-photo::after {
  background: linear-gradient(90deg,
    var(--canvas) 0%, var(--canvas) 13%,
    rgba(255, 255, 255, .80) 36%, rgba(255, 255, 255, 0) 74%);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-photo::after {
    background: linear-gradient(90deg, #141C24 0%, rgba(20, 28, 36, .88) 26%, rgba(20, 28, 36, 0) 62%);
  }
}
:root[data-theme="dark"] .hero-photo::after {
  background: linear-gradient(90deg, #141C24 0%, rgba(20, 28, 36, .88) 26%, rgba(20, 28, 36, 0) 62%);
}

/* ---------- 13. THE CLOSING GESTURE: s10 becomes the inset dark panel ---------- */
#stay { background: var(--canvas); }
#stay .stay {
  background: #1B303A;
  color: #FFF8E8;
  border-radius: clamp(24px, 4vw, 36px);
  padding: clamp(2.5rem, 5vw, 4.5rem);
  margin-inline: clamp(1rem, 3vw, 2rem);
}
#stay .stay h2 { color: #FFF8E8; }
#stay .stay p { color: rgba(255, 248, 232, .8); }
#stay .stay .stay-note { color: rgba(255, 248, 232, .7); }
#stay .stay .stay-note a { color: #FFCC33; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) #stay .stay { background: #1E2838; }
}
:root[data-theme="dark"] #stay .stay { background: #1E2838; }

/* hero curved-line art: it was the third wave; bands now meet at seams */
.hero-lines { display: none; }

/* footer specificity fixes: beat .linklist a / .foot-acc summary / .au-lockup */
footer .linklist a { color: rgba(255, 248, 232, .78); }
footer .linklist a:hover { color: #FFF8E8; }
footer .linkblock h3 { color: #8FC4D3; }
footer .foot-acc summary { color: #FFF8E8; }
footer .foot-acc details ul a { color: rgba(255, 248, 232, .78); }
footer .au-lockup .lg-word, .nv-drawer .au-lockup .lg-word { fill: #FFF8E8; }
footer .au-lockup .lg-field, .nv-drawer .au-lockup .lg-field { fill: #FFF8E8; }
/* ============================================================
   SISTER SYSTEM v1.1 - round-2 convergence patch.
   Appended after review R2; sections A1-A15 below.
   Nothing above this line changes.
   ============================================================ */

/* ---------- A1. THE MISSING FOURTH GUARD: explicit light toggle ----------
   [11][22][33][44][57][78][103][120][133][143]
   Pages pin the OLD warm palette on :root[data-theme="light"] at (0,2,0);
   sister's bare :root (0,1,0) loses. This block duplicates section 1
   verbatim at matching specificity; sister.css loads last, so it wins. */
:root[data-theme="light"] {
  --audhd-cream: #FFFFFF;
  --cream: #FFFFFF;
  --audhd-soft-cream: #EEF5F2;
  --softcream: #EEF5F2;
  --surface: #FFFFFF;
  --band-sage-surface: #FFFFFF;
  --tint: #E7F1ED;
  --audhd-deep: #1B303A;
  --deep: #1B303A;
  --band-sage-ink: #1B303A;
  --band-sage-focus: #1B303A;
  --band-dark-bg: #1B303A;
  --yellow: #FFCC33;
  --audhd-yellow: #FFCC33;
  --butter: #FFE59B;
  --audhd-butter: #FFE59B;
  --ink-soft: #4A626D;
  --ink-2: #4A626D;
  --ink-faint: #5F757F;
  --ink-3: #5F757F;
  --line: #DCE4E2;
  --line-soft: #ECF1EF;
  --seam-rule: rgba(36, 63, 74, .30);
  --util-bg: #243F4A;
  --paper-0: #FFFFFF;
  --paper-2: #EEF5F2;
  --paper-4: #1B303A;
}

/* ---------- A2. NEW TOKENS (paired so both light states agree) ----------
   [14][68][126] --soft was never remapped (quiz notice, money tiles, nav
   fallback). [126] --q-track-* light values were cream-era; art-v3.css's
   dark guards (0,2,0) keep the dark values, so light-only here.
   [65] section rhythm to the Seen register. [51][73] eyebrow tracking token.
   [110] radius/shadow tokens (converges pillcards, fcard5, item-card, cost
   card, opts, scroller, rail-item, callout in one move). [38][50] the Seen
   card shadow recipe for .au-page pages. */
:root,
:root[data-theme="light"] {
  --soft: #EEF5F2;
  --q-track-bg: #EEF2F1;
  --q-track-bd: #C8D4D1;
  --section-y: clamp(5rem, 7vw, 7rem);
  --sec-y: clamp(5rem, 7vw, 7rem);
  --sec-y-band: clamp(5rem, 7vw, 7rem);
  --tr-eyebrow: 0.15em;
  --audhd-radius-md: 16px;
  --audhd-shadow: 0 1px 2px rgba(36, 63, 74, .04), 0 8px 30px -12px rgba(36, 63, 74, .12);
  --shadow: 0 1px 2px rgba(36, 63, 74, .04), 0 8px 30px -12px rgba(36, 63, 74, .12);
  --shadow-lg: 0 2px 4px rgba(36, 63, 74, .06), 0 24px 56px -24px rgba(36, 63, 74, .30);
}

/* ---------- A3. TYPE POSTURE at .au-page specificity ----------
   [27][37][51][82][146] sister section 2 is dead CSS on every interior:
   the design-v2 overlay's .au-page rules (0,2,0) beat the bare selectors.
   Same declarations, matched scope; sister loads last and wins the ties.
   [73][74] eyebrow/stamp tracking. */
.au-page h1, .au-page h2, .au-page .mast__h, .au-page .sec__h { font-weight: 500; }
.au-page h1, .au-page .mast__h { letter-spacing: -0.025em; line-height: 1.04; }
.au-page h2, .au-page .sec__h { letter-spacing: -0.02em; line-height: 1.09; }
.au-page h3, .au-page h4 { font-weight: 600; }
.au-page .mast__eyebrow { font-size: 0.75rem; letter-spacing: 0.15em; font-weight: 600; }
.au-page .sec__num { font-size: 0.75rem; letter-spacing: 0.14em; font-weight: 600; }
/* the winning inline mast-eyebrow rule reads this token; teal in light,
   #8FC4D3 in dark via the page's own --accent-head [82] */
.au-page .mast { --mast-eyebrow-ink: var(--accent-head, #2C6574); }
.mast .stamp::before { letter-spacing: 0.14em; }

/* ---------- A4. EYEBROW + KICKER REGISTER (non-.au-page pages) ----------
   [2][17][107] eyebrows go teal at 0.75rem; [2] kickers follow the
   interior RECORD overlay's existing teal mapping (chosen over [108]'s
   mustard for cross-site consistency). .s-dark/.s-sage inline overrides
   (0,2,0) still win in-band in light mode. */
.eyebrow, .kicker { font-size: 0.75rem; color: #2C6574; }
.step-3 .kicker { font-size: 0.75rem; color: #2C6574; }

/* ---------- A5. PILL / BUTTON GRAMMAR ----------
   [4][100] colour-only hover replacements (sister killed the lift but
   only gave .nv-cta a colour step). [16] quiet ring to 1px + hover step,
   .btn colour hover. [61][117][9][153] size steps to the Seen register
   and the 16px arrow suffix as a masked ::after (no markup churn;
   currentColor keeps it correct in all three theme states; :has(svg)
   skips the checker Continue buttons that already carry an inline arrow). */
.pill { padding: 10px 20px; font-size: 0.875rem; }
.pill-lg { padding: 14px 28px; font-size: 1rem; }
.hero-acts .pill { min-height: 52px; padding-inline: 36px; }
.nv-cta { gap: 8px; padding: 10px 20px; font-size: 0.875rem; }
.btn { padding: 14px 28px; font-size: 1rem; gap: 8px; }
/* quiz result tag chips are .pill too; keep their chip metrics [61] */
:root:has(form#f) .pill { padding: 7px 16px; font-size: 14px; }

.pill-yellow:hover:not([disabled]) { background: #F0BC24; }
.pill-teal:hover:not([disabled]) { background: #245560; }
.pill-ghost:hover { box-shadow: inset 0 0 0 1.5px rgba(36, 63, 74, .55); }
.s-dark .pill-ghost:hover { box-shadow: inset 0 0 0 1.5px rgba(207, 227, 222, .55); }
.btn:not(.btn-quiet):hover:not([disabled]) { background: #F0BC24; }
.btn-quiet { box-shadow: inset 0 0 0 1px rgba(36, 63, 74, .28); }
.btn-quiet:hover { box-shadow: inset 0 0 0 1px rgba(36, 63, 74, .55); }

.nv-cta:not(:has(svg))::after,
.pill-yellow:not(:has(svg))::after,
.btn:not(.btn-quiet):not(:has(svg))::after {
  content: ""; display: inline-block; width: 16px; height: 16px; flex: none;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- A6. CARDS + RETIRED LIFT HOVER at .au-page specificity ----------
   [28][38][50] radius 16 (sister section 4/5 was dead CSS on interiors);
   shadow arrives via the --shadow/--audhd-shadow tokens in A2, so dark
   keeps its own ring recipe. FAQ rows and ruled figure columns keep
   radius 0 via their higher-specificity inline rules.
   [31][38][52][138] the translateY lift and brightness hovers survive
   sister's kill rule on specificity; killed here at matched scope. */
.au-page .card { border-radius: 16px; }
.au-page .stamp, .au-page .mast .stamp { border-radius: 3px 3px 16px 16px; }
@media (hover: hover) and (pointer: fine) {
  .au-page .tel:hover, .au-page .tbtn:hover,
  .au-page .card .nv-cta:hover, .au-page main .card .nv-cta:hover { transform: none; }
}
.au-page main .card .nv-cta { font-weight: 600; }
.au-page main .card .nv-cta:hover { background: #F0BC24; color: #1B303A; transform: none; filter: none; }
.au-page .tel:active, .au-page .card .nv-cta:active { filter: none; }

/* ---------- A7. NAV CHROME ----------
   [6][15][29][39][49][84][111][137][147] retire the warm cream item hover
   and the mustard top-level wash; mist arrives. Dark .nv-link:hover is
   already handled by the pages' own nv-dark-patch at higher specificity.
   [63] centre-link register; [90] nav centre; [56] one container width.
   [54][85][139][152] burger border off the warm cream.
   [60][151] the mega-panel footer card takes the butter role (light only;
   sister's existing dark guards keep #232F3C in dark). */
.nv-link:hover { background: #E7F1ED; }
.nv-top:hover, .nv-item[data-open="true"] .nv-top { background: #E7F1ED; }
.nv-top { font-size: 0.875rem; }
.nv-list { gap: 0; margin-inline: auto; }
.nv-in { max-width: 1200px; padding-inline: clamp(1.25rem, 3.2vw, 1.5rem); }
.au-page ~ footer .wrap { max-width: 1200px; }
.nv .nv-burger { border-color: #DCE4E2; }
.nv-feat { background: #FFE59B; border-color: transparent; }
.nv-feat:hover { background: #FFDD75; }
.nv-feat u { color: #7A5A08; }
.nv-feat i { color: #243F4A; }
.nv-feat span { color: #3E5560; }

/* ---------- A8. MOBILE DARK TAKEOVER ----------
   [8][54][85][139] group dividers to cream/14 (sister styled .nv-dhead,
   but the actual dividers are on .nv-dgrp). [21][43][85] group labels to
   the sans register. [64] takeover link scale, full-width bottom CTA
   (kept action yellow per the protected accent), vesica watermark scoped
   to the open state, and a scroll safety net for short viewports. */
.nv-drawer .nv-dgrp { border-top-color: rgba(255, 248, 232, .14); }
.nv-drawer .nv-dgrp h4 { font-family: 'Manrope', ui-sans-serif, system-ui, sans-serif; }
.nv-drawer .nv-dgrp a { font-size: clamp(2.25rem, 9vw, 2.75rem); }
.nv-drawer .nv-cta { width: 100%; min-height: 56px; justify-content: center; font-size: 1rem; }
.nv-drawer[data-open="true"] { overflow-y: auto; }
.nv-drawer[data-open="true"]::after {
  content: ""; position: fixed; right: -64px; bottom: -56px;
  width: 288px; height: 222px; opacity: .08; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 200'%3E%3Cpath fill-rule='evenodd' fill='%23FFF8E8' d='M92 24a76 76 0 1 0 0 152 76 76 0 0 0 0-152Zm76 0a76 76 0 1 0 0 152 76 76 0 0 0 0-152Z'/%3E%3Cpath fill='%23FFCC33' d='M130 34.2a76 76 0 0 1 0 131.6 76 76 0 0 1 0-131.6Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- A9. CRISIS BAR + THEME TOGGLE ----------
   [26][36][45][145] the bar (and the whole footer, A10) sat outside
   .au-page and fell back to the UA serif; Seen banner register is small
   sans 600. [42][53][87][127][136][150] the relocated toggle (see B3/B4)
   is styled here for every page, mirroring the homepage .themebtn.
   [81] the mast toggle is illegible in dark and its colour transition
   wedges overrides; safety-net fix, transition disabled. */
.util, footer {
  font-family: 'Manrope', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
}
.util-in { font-size: 0.8rem; font-weight: 600; }
.util .themebtn, .util .tbtn {
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(255, 255, 255, .14); color: #FFF8E8;
  border: 1px solid rgba(255, 255, 255, .26); border-radius: 999px;
  padding: 5px 13px; font: inherit; font-weight: 600;
  min-height: 0; cursor: pointer; transition: none;
}
.util .themebtn:hover, .util .tbtn:hover { background: rgba(255, 255, 255, .24); border-color: #FFCC33; }
.util .themebtn svg { width: 14px; height: 14px; }

/* ---------- A10. FOOTER: finish the dark vessel ----------
   [1][12][23][34][46][58][80][91][101][122][129][144] the legal strong
   ("AuDHD Australia is not a clinic.") was navy-on-navy in every theme.
   [5][13][25][40][55][83][109][113][134][148][149] warm/bright hairlines,
   dim chevrons, teal-on-navy accordion link hovers.
   [24][35][47][79][130] the legacy dark patch footer{color:#243F4A}
   out-ranked sister's bare footer rule; restated at guard specificity,
   plus a belt for accordion body text. [47] color-scheme.
   [19][32][41][88][141] UA list bullets retired.
   [45][98][112][142] link-column headings to the Seen micro-label.
   [89][131] long legal paragraphs read left; the short (c) line stays
   centred. */
footer { color-scheme: dark; }
footer .foot-legal p { color: rgba(255, 248, 232, .55); }
footer .foot-legal strong { color: rgba(255, 248, 232, .92); }
footer .foot-legal { border-top-color: rgba(255, 248, 232, .14); }
footer .foot-legal p:not(:last-of-type) { text-align: left; }
footer .foot-acc details,
footer .foot-acc details:last-of-type { border-color: rgba(255, 248, 232, .14); }
footer .foot-acc .chev { stroke: rgba(255, 248, 232, .6); }
footer .foot-acc a:hover { color: #FFF8E8; }
footer .foot-acc details ul li { color: rgba(255, 248, 232, .72); }
footer .linklist { list-style: none; padding-left: 0; margin: 0; }
footer .foot-acc ul { list-style: none; padding-left: 0; }
footer .linkblock h3 {
  font-family: 'Manrope', ui-sans-serif, system-ui, sans-serif;
  font-size: 0.75rem; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: rgba(255, 248, 232, .5); margin-bottom: 1.125rem;
}

/* ---------- A11. FOCUS ON DARK CHROME ----------
   [30][48][86][121][135] teal rings are invisible on the navy footer,
   drawer takeover, crisis bar and closing panel in light mode; yellow is
   the established dark-ground focus (matches the existing dark guards). */
footer :focus-visible,
.nv-drawer :focus-visible,
.util :focus-visible,
#stay .stay :focus-visible {
  outline: 3px solid #FFCC33;
  outline-offset: 2px;
}

/* ---------- A12. ACCORDION GRAMMAR: FAQ + STATE CARDS ----------
   [59][92][104] yellow plus-circle and [open] yellow border retire;
   divide-y hairline rows with a quiet sage chevron. The original "+"
   glyph is hidden (color: transparent), the chevron is drawn with
   borders so no glyph fonts are involved. [116] the eight state-card
   expanders drop the same retired yellow disc. */
.faq { gap: 0; }
.faq details {
  background: transparent; border: 0; border-radius: 0;
  border-top: 1px solid var(--line);
}
.faq details:last-of-type { border-bottom: 1px solid var(--line); }
.faq details[open] { border-color: var(--line); }
.faq summary { min-height: 56px; align-items: center; padding: 18px 4px; }
.faq .fa-body { padding: 0 4px 18px; }
.faq summary .plus,
.pillcard .plus {
  background: transparent; color: transparent; position: relative;
  transition: transform .2s cubic-bezier(.16, 1, .3, 1);
}
.faq summary .plus::before,
.pillcard .plus::before {
  content: ""; position: absolute; left: 8px; top: 7px;
  width: 8px; height: 8px;
  border-right: 2px solid #5E8A82; border-bottom: 2px solid #5E8A82;
  transform: rotate(45deg);
}
.faq details[open] summary .plus,
.pillcard[open] .plus { transform: rotate(180deg); }

/* ---------- A13. HOMEPAGE BAND SURGERY LEFTOVERS ----------
   [66][105][124] the notch triangle floats sage-on-white now that s4 is
   white; retired like .nv-panel::before. The inner cost panel regains
   its panel distinction. [67][97][106] the surviving wave strip (.s8-bg)
   and the dead padding reserved for retired art on s1/s8.
   [102][125] fcard5 numerals fail contrast (sage 1.34:1, yellow 1.51:1,
   mustard 2.48:1 on white); figures set in the head accent, the coloured
   bottom borders keep the per-tile coding.
   [114] link underlines leave action yellow for the clay slot.
   [115] the closing panel's art plate stops being a pasted white card.
   [118] mobile hero wash restored to the bottom-up fade. */
.notch-card::before { display: none; }
.notch-card { border-radius: 16px; }
#checker .cost { background: var(--surface-alt); }
.s8-bg { display: none; }
.s1 { padding-bottom: var(--section-y); }
.s8 { padding-bottom: var(--section-y); }
.fcard5 .glyph { color: var(--accent-head, #2C6574); }
.textlink { border-bottom-color: #D59A16; }
#stay .stay-art rect { fill: rgba(255, 248, 232, .06); }
#stay .stay-art circle[fill="#243F4A"] { fill: #FFF8E8; }
#stay .stay-art path[stroke="#2C6574"] { stroke: #8FC4D3; }
#stay .stay .pill { margin-top: var(--sp-4); }
@media (max-width: 900px) {
  .hero-photo::after { background: linear-gradient(0deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 70%); }
}

/* ---------- A14. QUIZ PAGE ----------
   [10][119] CRITICAL: sister's global dark guards remap --cream to the
   cream INK constant, turning the quiz canvas cream-on-cream in both
   dark states. The quiz is the only page with form#f; :has(form#f)
   carries id-level specificity, so these two blocks beat every global
   guard and restore the quiz page's OWN dark regime verbatim.
   [20] section legends join the weight-500 display posture. */
@media (prefers-color-scheme: dark) {
  :root:has(form#f):not([data-theme="light"]) {
    --cream: #12191D; --white: #182227; --soft: #1C272C;
    --ink: #EEF3F4; --ink-2: #A6B7BE; --ink-3: #7E9099;
    --line: #26343A; --sage: #243B38;
  }
}
:root[data-theme="dark"]:has(form#f) {
  --cream: #12191D; --white: #182227; --soft: #1C272C;
  --ink: #EEF3F4; --ink-2: #A6B7BE; --ink-3: #7E9099;
  --line: #26343A; --sage: #243B38;
}
.grp legend { font-weight: 500; }

/* ---------- A15. DARK GUARDS for everything new above ----------
   Every colour introduced in A2-A13 that must differ by theme is
   restated under BOTH dark guards, mirroring sister's convention.
   [14][68] --soft; [110] --audhd-shadow keeps the dark ring recipe;
   [132] dark canvas/card separation (--bg, --bg-alt);
   [17][107] eyebrows; [107] band eyebrows keep their in-band ink;
   [4][16] ghost/quiet rings; [15][39][49][63][84][111][137][147] nav
   top hover; [54] drawer ground; [75] certificate top rule;
   [59][92][104][116] chevrons; [114] underlines; [81] mast toggle. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --soft: #232F3C;
    --audhd-shadow: 0 18px 60px rgba(0, 0, 0, .5);
    --bg: #141C24;
    --bg-alt: #1A2331;
  }
  :root:not([data-theme="light"]) .eyebrow,
  :root:not([data-theme="light"]) .kicker,
  :root:not([data-theme="light"]) .step-3 .kicker { color: #8FC4D3; }
  :root:not([data-theme="light"]) .s-dark .eyebrow { color: var(--band-dark-soft, #CFE3DE); }
  :root:not([data-theme="light"]) .pill-ghost:hover { box-shadow: inset 0 0 0 1.5px rgba(207, 227, 222, .55); }
  :root:not([data-theme="light"]) .btn-quiet { box-shadow: inset 0 0 0 1px rgba(207, 227, 222, .35); }
  :root:not([data-theme="light"]) .btn-quiet:hover { box-shadow: inset 0 0 0 1px rgba(207, 227, 222, .60); }
  :root:not([data-theme="light"]) .nv-top:hover,
  :root:not([data-theme="light"]) .nv-item[data-open="true"] .nv-top { background: #232F3C; }
  :root:not([data-theme="light"]) .nv-drawer { background: #1B303A; }
  :root:not([data-theme="light"]) .stamp { border-top-color: #8FC4D3; }
  :root:not([data-theme="light"]) .faq summary .plus::before,
  :root:not([data-theme="light"]) .pillcard .plus::before { border-color: #9FC6BE; }
  :root:not([data-theme="light"]) .textlink { border-bottom-color: #E8B44A; }
  :root:not([data-theme="light"]) .mast .tbtn,
  :root:not([data-theme="light"]) .au-page .tbtn {
    color: #D7E4E2; border-color: rgba(215, 228, 226, .45); transition: none;
  }
  :root:not([data-theme="light"]) footer { color: rgba(255, 248, 232, .75); }
}
:root[data-theme="dark"] {
  --soft: #232F3C;
  --audhd-shadow: 0 18px 60px rgba(0, 0, 0, .5);
  --bg: #141C24;
  --bg-alt: #1A2331;
}
:root[data-theme="dark"] .eyebrow,
:root[data-theme="dark"] .kicker,
:root[data-theme="dark"] .step-3 .kicker { color: #8FC4D3; }
:root[data-theme="dark"] .s-dark .eyebrow { color: var(--band-dark-soft, #CFE3DE); }
:root[data-theme="dark"] .pill-ghost:hover { box-shadow: inset 0 0 0 1.5px rgba(207, 227, 222, .55); }
:root[data-theme="dark"] .btn-quiet { box-shadow: inset 0 0 0 1px rgba(207, 227, 222, .35); }
:root[data-theme="dark"] .btn-quiet:hover { box-shadow: inset 0 0 0 1px rgba(207, 227, 222, .60); }
:root[data-theme="dark"] .nv-top:hover,
:root[data-theme="dark"] .nv-item[data-open="true"] .nv-top { background: #232F3C; }
:root[data-theme="dark"] .nv-drawer { background: #1B303A; }
:root[data-theme="dark"] .stamp { border-top-color: #8FC4D3; }
:root[data-theme="dark"] .faq summary .plus::before,
:root[data-theme="dark"] .pillcard .plus::before { border-color: #9FC6BE; }
:root[data-theme="dark"] .textlink { border-bottom-color: #E8B44A; }
:root[data-theme="dark"] .mast .tbtn,
:root[data-theme="dark"] .au-page .tbtn {
  color: #D7E4E2; border-color: rgba(215, 228, 226, .45); transition: none;
}
:root[data-theme="dark"] footer { color: rgba(255, 248, 232, .75); }

/* ---------- A16. PRINT + FORCED COLORS ----------
   [123] the dark footer and closing panel print white-on-white; cream
   SVG lockup fills vanish on printed sheets and in light forced-colors. */
@media print {
  .util, footer, #stay .stay { background: #fff !important; color: #000 !important; }
  footer *, #stay .stay * { color: #000 !important; }
  .foot-signoff { display: none !important; }
  footer .lg-field, footer .lg-word { fill: #243F4A; }
}
@media (forced-colors: active) {
  footer .lg-field, footer .lg-word,
  .nv-drawer .lg-field, .nv-drawer .lg-word { fill: CanvasText; }
}
