/* ═══════════════════════════════════════════════════════════════════════════
   GlobalCalc v4 — "Blocks"
   A colour-block modernist instrument. Every category owns one saturated flat
   colour; the figure you came for is printed on it in a wide engineered mono.
   Cool grey canvas, black 2px rules, 4px gutters, zero radius, no gradients.
   Archivo (variable, wdth 62–125) for titles and text · Martian Mono (variable)
   for every figure, label and control. Refero grounding: Composer, Raw
   Materials, Uniswap Cup, Mode, Convex, Tilt — docs/HANDOFF.md 2026-08-29.
   Same page anatomy as v3 (scripts/overhaul/transform-pages.mjs).
   ═══════════════════════════════════════════════════════════════════════════ */
@font-face{font-family:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/assets/fonts/archivo-latin-var.woff2) format("woff2")}
@font-face{font-family:"Martian Mono";font-style:normal;font-weight:100 800;font-stretch:75% 112.5%;font-display:swap;src:url(/assets/fonts/martian-mono-latin-var.woff2) format("woff2")}

/* ── Tokens ─────────────────────────────────────────────────────────────── */
:root{
  --canvas:#eef0f3;--sheet:#ffffff;--sheet-2:#f4f5f8;--ink:#15171c;--ink-2:#474a53;--ink-3:#5a5d66;--rule:#383b44;--rule-soft:#c5c8d1;--action:#262930;--on-action:#f4f5f8;
  /* --stage: the deepest tone of the page, at the very top; the canvas is where it settles.
     The masthead and the field the drones fly in sit on it, and it fades into --canvas down the page. */
  --stage:#dee3ec;
  --c-property:#2b3cff;--on-property:#fff;--c-tax:#ff4a1c;--on-tax:#0a0a0b;--c-income:#d6ff3a;--on-income:#0a0a0b;--c-savings:#1db866;--on-savings:#0a0a0b;
  --c-super:#6a2bff;--on-super:#fff;--c-debt:#ff3d8e;--on-debt:#0a0a0b;--c-business:#ffb01f;--on-business:#0a0a0b;--c-living-costs:#37c6ff;--on-living-costs:#0a0a0b;--c-health:#5df2b0;--on-health:#0a0a0b;
  --cat:#0a0a0b;--on-cat:#ffffff;
  --good:#0a7a3a;--warn:#955300;--bad:#c41a32;
  --sans:"Archivo",Helvetica,Arial,sans-serif;--mono:"Martian Mono",ui-monospace,Menlo,Consolas,monospace;
  --fs-xs:11px;--fs-sm:13px;--fs-base:15px;--fs-md:16px;--fs-lg:17px;--fs-xl:19px;--fs-h3:22px;--fs-h2:30px;--fs-h1:clamp(34px,4.6vw,58px);--fs-hero:clamp(48px,7vw,96px);
  --gap:4px;--content:1200px;--main:760px;--rail:300px;--focus:0 0 0 2px var(--sheet),0 0 0 5px var(--ink);
  /* legacy aliases read by the hashed privacy/feedback runtime and charts */
  --gc-bg:var(--canvas);--gc-surface:var(--sheet);--gc-surface-hover:var(--sheet-2);--gc-surface-2:var(--sheet-2);--gc-border:var(--rule-soft);--gc-border-strong:var(--rule);
  --gc-text:var(--ink);--gc-text-muted:var(--ink-2);--gc-text-dim:var(--ink-3);--gc-primary:var(--cat);--gc-primary-soft:var(--sheet-2);--gc-primary-text:var(--on-cat);--gc-accent:var(--cat);
  --gc-success:var(--good);--gc-warning:var(--warn);--gc-error:var(--bad);--gc-input-bg:var(--sheet);--gc-input-border:var(--rule);--gc-input-focus:var(--ink);
  --gc-chart-base:var(--c-property);--gc-chart-positive:var(--c-savings);--gc-chart-caution:var(--c-business);--gc-chart-negative:var(--c-debt);--gc-chart-principal:var(--c-property);--gc-chart-interest:var(--c-super);--gc-chart-total:var(--c-business);--gc-chart-tax:var(--c-tax);--gc-chart-fees:var(--c-business);--gc-chart-balloon:var(--c-debt);
  --gc-result-gradient:none;--gc-result-border:var(--rule);--gc-shadow:none;--gc-shadow-lg:none;--gc-radius:0;--gc-radius-lg:0;--gc-r-sm:0;--gc-r-pill:0;
  --gc-font:var(--sans);--gc-font-display:var(--sans);--gc-font-mono:var(--mono);--gc-focus:var(--focus);--gc-error-soft:rgba(209,33,58,.12);
  --gc-fs-xs:var(--fs-xs);--gc-fs-sm:var(--fs-sm);--gc-fs-base:var(--fs-base);--gc-fs-md:var(--fs-md);--gc-fs-lg:var(--fs-lg);--gc-fs-h3:var(--fs-h3);--gc-fs-h2:var(--fs-h2);--gc-fs-h1:var(--fs-h1);--gc-fs-hero:var(--fs-hero);
  color-scheme:light;
}
/* dark takes the blacker black at the top of the page (Adam, 2026-08-31: the drones have far more
   definition on it) and gradients into the lighter canvas below — see --stage and the body rule */
:root[data-theme=dark]{--canvas:#14171c;--sheet:#1c1f26;--sheet-2:#252932;--ink:#eceef2;--ink-2:#c0c3cb;--ink-3:#979aa3;--rule:#c6c9d1;--rule-soft:#4a4f5a;--action:#e4e6ec;--on-action:#15171c;--good:#3fd27a;--warn:#ffb54a;--bad:#ff6b7f;--stage:#05070b;color-scheme:dark}
@media (prefers-color-scheme:dark){:root[data-theme=auto]{--canvas:#14171c;--sheet:#1c1f26;--sheet-2:#252932;--ink:#eceef2;--ink-2:#c0c3cb;--ink-3:#979aa3;--rule:#c6c9d1;--rule-soft:#4a4f5a;--action:#e4e6ec;--on-action:#15171c;--good:#3fd27a;--warn:#ffb54a;--bad:#ff6b7f;--stage:#05070b;color-scheme:dark}}
/* ── The accessibility theme (v7.1, 2026-08-31) ───────────────────────────────
   Adam: "dark and high contrast seem extremely similar" — they did, because High Contrast
   followed the OS scheme and on a dark machine it was just a blacker dark. It is now its own
   scheme and follows nothing: a deep IBM-navy ground, white ink, white rules, held to WCAG AAA
   (7:1 text, 4.5:1 chart marks) by check:theme-contrast. Its twelve category colours are a
   separate palette — IBM Carbon hues, evenly spread and laddered in lightness so two colours a
   colour-blind reader may confuse in hue still differ in luminance — declared in the generated
   block at the end of this file. Named in the theme menu with its numbers, never just "high
   contrast". Flat by definition: no stage gradient (--stage is the canvas), nothing dimmed. */
:root[data-theme=colourblind]{--canvas:#000d2e;--sheet:#001141;--sheet-2:#001d6c;--ink:#ffffff;--ink-2:#e8eeff;--ink-3:#d0e2ff;--rule:#ffffff;--rule-soft:#78a9ff;--action:#ffffff;--on-action:#000d2e;--good:#6fdc8c;--warn:#f1c21b;--bad:#ffb3b8;--dot:rgba(255,255,255,.22);--stage:#000d2e;color-scheme:dark}
/* the page's category → the accent it owns. Declared on :root via :has() as well as on body,
   because the charts and the injected runtimes read tokens from documentElement */
:root:has(>body[data-gc-cat=property]){--cat:var(--c-property);--on-cat:var(--on-property)}
:root:has(>body[data-gc-cat=tax]){--cat:var(--c-tax);--on-cat:var(--on-tax)}
:root:has(>body[data-gc-cat=income]){--cat:var(--c-income);--on-cat:var(--on-income)}
:root:has(>body[data-gc-cat=savings]){--cat:var(--c-savings);--on-cat:var(--on-savings)}
:root:has(>body[data-gc-cat=super]),:root:has(>body[data-gc-cat=pension]),:root:has(>body[data-gc-cat=retirement]){--cat:var(--c-super);--on-cat:var(--on-super)}
:root:has(>body[data-gc-cat=debt]){--cat:var(--c-debt);--on-cat:var(--on-debt)}
:root:has(>body[data-gc-cat=business]){--cat:var(--c-business);--on-cat:var(--on-business)}
:root:has(>body[data-gc-cat=living-costs]){--cat:var(--c-living-costs);--on-cat:var(--on-living-costs)}
:root:has(>body[data-gc-cat=health]){--cat:var(--c-health);--on-cat:var(--on-health)}
:root:not(:has(>body[data-gc-cat])){--cat:var(--c-property);--on-cat:#fff;--gc-chart-1:var(--viz-property);--gc-primary:var(--c-property);--gc-primary-text:#fff}
body[data-gc-cat=property]{--cat:var(--c-property);--on-cat:var(--on-property)}
body[data-gc-cat=tax]{--cat:var(--c-tax);--on-cat:var(--on-tax)}
body[data-gc-cat=income]{--cat:var(--c-income);--on-cat:var(--on-income)}
body[data-gc-cat=savings]{--cat:var(--c-savings);--on-cat:var(--on-savings)}
body[data-gc-cat=super],body[data-gc-cat=pension],body[data-gc-cat=retirement]{--cat:var(--c-super);--on-cat:var(--on-super)}
body[data-gc-cat=debt]{--cat:var(--c-debt);--on-cat:var(--on-debt)}
body[data-gc-cat=business]{--cat:var(--c-business);--on-cat:var(--on-business)}
body[data-gc-cat=living-costs]{--cat:var(--c-living-costs);--on-cat:var(--on-living-costs)}
body[data-gc-cat=health]{--cat:var(--c-health);--on-cat:var(--on-health)}
[data-cat=property]{--cat:var(--c-property);--on-cat:var(--on-property)}[data-cat=tax]{--cat:var(--c-tax);--on-cat:var(--on-tax)}[data-cat=income]{--cat:var(--c-income);--on-cat:var(--on-income)}[data-cat=savings]{--cat:var(--c-savings);--on-cat:var(--on-savings)}[data-cat=super],[data-cat=pension],[data-cat=retirement]{--cat:var(--c-super);--on-cat:var(--on-super)}[data-cat=debt]{--cat:var(--c-debt);--on-cat:var(--on-debt)}[data-cat=business]{--cat:var(--c-business);--on-cat:var(--on-business)}[data-cat=living-costs]{--cat:var(--c-living-costs);--on-cat:var(--on-living-costs)}[data-cat=health]{--cat:var(--c-health);--on-cat:var(--on-health)}
/* category colour by link target (topnav, footer, rails) */
[href*="/property/"]{--lc:var(--c-property)}[href*="/tax/"]{--lc:var(--c-tax)}[href*="/income/"]{--lc:var(--c-income)}[href*="/savings/"]{--lc:var(--c-savings)}[href*="/super/"],[href*="/pension/"],[href*="/retirement/"]{--lc:var(--c-super)}[href*="/debt/"]{--lc:var(--c-debt)}[href*="/business/"]{--lc:var(--c-business)}[href*="/living-costs/"]{--lc:var(--c-living-costs)}[href*="/health/"]{--lc:var(--c-health)}

/* ── Base ───────────────────────────────────────────────────────────────── */
*,::before,::after{box-sizing:border-box;margin:0;padding:0}
html{font-family:var(--sans);font-size:15px;line-height:1.5;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}
/* the stage: the top of every page is the deepest tone the theme owns, fading into the canvas by the
   end of the hero, so the field's drones are read against contrast instead of against flat paper */
body{min-height:100vh;background-color:var(--canvas);background-image:linear-gradient(180deg,var(--stage) 0,var(--canvas) clamp(360px,64vh,820px));background-repeat:no-repeat;color:var(--ink)}
a{color:var(--ink);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{text-decoration-color:var(--cat)}
img,svg{max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--sans);font-weight:900;font-stretch:112%;line-height:.98;letter-spacing:-.035em;text-wrap:balance}
h1{font-size:var(--fs-h1);margin:0 0 14px}
h2{font-size:var(--fs-h2);margin:36px 0 12px}
h3{font-size:var(--fs-h3);margin:24px 0 8px;font-stretch:106%}
h4{font-size:var(--fs-lg);font-weight:700;font-stretch:100%;margin:16px 0 8px;letter-spacing:-.01em}
p{margin:0 0 12px}
code,kbd,pre{font-family:var(--mono)}
strong{font-weight:700}
.gc-visually-hidden,.visually-hidden,.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[role=option]:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 2px var(--sheet)}
.gc-skip-link{position:absolute;left:8px;top:-48px;z-index:1000;padding:8px 12px;background:var(--action);color:var(--canvas);font:700 12px var(--mono)}
.gc-skip-link:focus{top:8px}
/* mono label — every eyebrow, section label, table header, control */
.gc-label,.gc-section-label,.gc-results-title,.gc-chart-title,.gc-explorer-eyebrow,.gc-related-inline-label,.gc-jump-grid-label,.gc-related-label,.gc-interested-label,.gc-fcol-head,.gc-content-divider span,.gc-section-tag,.gc-qa-group-label,.gc-qa-fact-label,.gc-qa-impacts-label,.gc-period-label,.gc-freq-label,.gc-fallback-metric-label,.gc-ia-eyebrow,.gc-eyebrow,.sec-label,.gc-group-label,.gc-other-cats-label,.gc-toc-title,.gc-static-meta,.gs-meta,.s-cnt,.gc-position-badge,.gc-primary-label,.gc-field-label,.gc-crumb-label{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.gc-num,.gc-primary-value,.gc-row-value,.gc-period-value,.gc-freq-value,.gc-qa-chip-val,.gc-qa-fact-val,.gc-ia-value,.gc-fallback-metric-value,.gc-mini-result-value,.gc-index-fact b{font-family:var(--mono);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.gc-rule{border:0;border-top:2px solid var(--rule);margin:24px 0}

/* ── Chrome: topbar ─────────────────────────────────────────────────────── */
.gc-topbar{position:sticky;top:0;z-index:200;background:var(--stage);border-bottom:2px solid var(--rule)}
.gc-topbar-inner{max-width:var(--content);margin:0 auto;padding:0 20px;height:60px;display:flex;align-items:center;gap:8px}
.gc-logo-link{display:flex;align-items:center;gap:0;flex-shrink:0;margin-right:18px;color:var(--ink);text-decoration:none}
.gc-logo-mark{display:none}
.gc-logo-text{font-weight:900;font-stretch:118%;font-size:24px;letter-spacing:-.05em;line-height:1;white-space:nowrap;color:var(--ink)}
.gc-topnav{display:flex;align-items:stretch;gap:2px;flex:1;min-width:0;overflow:hidden;align-self:stretch}
@media (max-width:1300px){.gc-region-name{display:none}}
.gc-tnav-link{display:inline-flex;align-items:center;gap:6px;padding:0 8px;font-size:12.5px;font-weight:700;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-2px}
.gc-tnav-link::before{content:"";width:11px;height:11px;background:var(--lc,var(--ink));flex-shrink:0}
.gc-tnav-link:hover{border-bottom-color:var(--lc,var(--ink))}
.gc-tnav-link.gc-tnav-active{border-bottom-color:var(--ink)}
.gc-topbar-right{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:auto}
.gc-region-wrap,.gc-theme-wrap{position:relative}
.gc-region-btn,.gc-theme-btn-top,.gc-topbar-back{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 10px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;white-space:nowrap;text-decoration:none}
.gc-region-btn:hover,.gc-theme-btn-top:hover,.gc-topbar-back:hover{background:var(--action);color:var(--canvas)}
.gc-region-flag{font-size:13px;line-height:1;font-family:var(--sans)}
.gc-region-caret,.gc-theme-caret{font-size:9px}
.gc-theme-btn-top svg{width:14px;height:14px}
.gc-region-dropdown,.gc-theme-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:280px;background:var(--sheet);border:2px solid var(--rule);overflow:hidden;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s,transform .12s;z-index:300}
.gc-theme-dropdown{min-width:200px}
.gc-region-wrap.open .gc-region-dropdown,.gc-theme-wrap.open .gc-theme-dropdown{opacity:1;pointer-events:auto;transform:none}
.gc-region-option,.gc-theme-option{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 14px;border:0;background:0 0;text-align:left;color:var(--ink);font-family:var(--sans);font-size:var(--fs-base);cursor:pointer;border-top:2px solid var(--rule-soft);text-decoration:none}
.gc-region-option:first-child,.gc-theme-option:first-child,.gc-region-detect-bar+.gc-region-option{border-top:0}
.gc-region-option:hover,.gc-theme-option:hover{background:var(--action);color:var(--canvas)}
.gc-region-option.active,.gc-theme-option.active{background:var(--cat);color:var(--on-cat)}
.gc-region-option[data-soon=true]{display:none}
.gc-region-option-flag{font-size:16px;line-height:1;width:24px;text-align:center}
.gc-region-option-info{flex:1;min-width:0}
.gc-region-option-name{font-weight:700}
.gc-region-option-sub{font-family:var(--mono);font-size:var(--fs-xs);opacity:.9;margin-top:2px}
.gc-region-option-badge{display:none}
.gc-region-soon{font-family:var(--mono);font-size:var(--fs-xs);color:var(--ink-3);padding:10px 14px 12px;border-top:2px solid var(--rule-soft);line-height:1.4}
.gc-region-detect-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:12px 14px;background:var(--action);color:var(--canvas);font-size:var(--fs-sm)}
.gc-region-detect-bar svg{width:14px;height:14px;flex-shrink:0}
#gcRegionDetectMsg{flex:1 1 60%;min-width:0;line-height:1.35}
#gcRegionConfirm,#gcRegionDismiss{font:700 11px var(--mono)!important;letter-spacing:.04em;text-transform:uppercase;min-height:30px;padding:4px 12px!important;border-radius:0!important;margin-left:0!important;border:2px solid var(--canvas)!important}
#gcRegionConfirm{background:var(--canvas)!important;color:var(--ink)!important}
#gcRegionDismiss{background:transparent!important;color:var(--canvas)!important}
.gc-theme-option svg{width:16px;height:16px;flex-shrink:0}
/* a theme that makes an accessibility claim states the standard and the ratio it is held to, in the menu row itself */
.gc-theme-option-label small{display:block;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-top:3px}
.gc-theme-option:hover .gc-theme-option-label small,.gc-theme-option.active .gc-theme-option-label small{color:inherit}
.gc-theme-divider{height:2px;background:var(--rule-soft)}
.gc-theme-switcher,.gc-side-panel{display:none!important}
.gc-nav-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);cursor:pointer;flex-shrink:0}
.gc-nav-toggle svg{display:block}
@media (max-width:1079px){
  .gc-topbar-inner{height:56px;padding:0 16px}
  .gc-nav-toggle{display:inline-flex}
  .gc-topnav{display:none;position:absolute;top:56px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--stage);border-bottom:2px solid var(--rule);padding:0 16px 8px;gap:0;z-index:199;overflow:visible;max-height:calc(100vh - 56px);overflow-y:auto}
  .gc-topbar[data-nav=open] .gc-topnav{display:flex}
  .gc-topnav .gc-tnav-link{width:100%;min-height:52px;padding:12px 4px;font-size:16px;border-bottom:2px solid var(--rule-soft);margin:0}
  .gc-topnav .gc-tnav-link::before{width:14px;height:14px}
  .gc-topnav .gc-tnav-link.gc-tnav-active{border-bottom:2px solid var(--rule-soft);background:transparent}
  .gc-region-name,.gc-theme-btn-top span{display:none}
  .gc-region-dropdown{min-width:260px}
}
@media (max-width:480px){.gc-logo-text{font-size:21px}.gc-region-dropdown{position:fixed;left:12px;right:12px;top:66px;min-width:0}}

/* ── Chrome: ads ────────────────────────────────────────────────────────── */
[id^=gc-ad-],.ad-zone{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;min-height:0}
[id^=gc-ad-]::before{content:"Advertisement";display:block;font:700 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);text-align:center;width:100%;padding:6px 0 4px}
[id^=gc-ad-].gc-ad-empty::before{display:none}
[id^=gc-ad-][data-state=loading]::after{content:"";display:block;background:var(--sheet-2)}
/* the top slot sits inside the stage band, so it lets the page's own ground through (v7.1) */
#gc-ad-top{background:0 0;border-bottom:1px solid var(--rule-soft);padding:4px 0 8px}
#gc-ad-bottom{background:var(--sheet);border-bottom:1px solid var(--rule-soft);padding:4px 0 8px}
#gc-ad-bottom{border-bottom:0;border-top:1px solid var(--rule-soft);margin-top:32px}
#gc-ad-top[data-state=loading]::after,#gc-ad-bottom[data-state=loading]::after,#gc-ad-mid[data-state=loading]::after{width:min(728px,100%);height:90px}
#gc-ad-result[data-state=loading]::after{width:300px;height:250px}
#gc-ad-rail[data-state=loading]::after{width:300px;height:600px}
#gc-ad-mid{margin:24px 0}
#gc-ad-result{margin:4px 0 16px}
#gc-ad-rail{width:300px}
#gc-ad-top .adsbygoogle,#gc-ad-mid .adsbygoogle,#gc-ad-bottom .adsbygoogle{min-height:90px;width:100%;display:block}
#gc-ad-result .adsbygoogle{min-height:250px;width:100%;display:block}
#gc-ad-rail .adsbygoogle{min-height:600px;width:300px;display:block}
@media (max-width:767px){#gc-ad-top{display:none}#gc-ad-mid[data-state=loading]::after{width:min(300px,100%);height:250px}#gc-ad-mid .adsbygoogle{min-height:250px}}
[id^=gc-ad-][data-state=loading].gc-ad-stale{min-height:inherit;height:auto;overflow:visible}
.gc-house-ad{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;padding:12px 20px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);text-align:center;text-decoration:none}
.gc-house-ad:hover{background:var(--action);color:var(--canvas)}
.gc-house-ad:not(.gc-house-ad--rail):not(.gc-house-ad--mrec){flex-direction:row;gap:12px;padding:0 20px;height:90px;max-width:728px;justify-content:flex-start}
.gc-house-ad:not(.gc-house-ad--rail):not(.gc-house-ad--mrec) .gc-house-ad__sub,.gc-house-ad:not(.gc-house-ad--rail):not(.gc-house-ad--mrec) .gc-house-ad__cta,.gc-house-ad:not(.gc-house-ad--rail):not(.gc-house-ad--mrec) .gc-house-ad__eyebrow{display:none}
.gc-house-ad--mrec{width:300px;height:250px}
.gc-house-ad--rail{width:300px;height:600px}
.gc-house-ad__eyebrow{font:700 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.gc-house-ad__icon{display:none}
.gc-house-ad__label{font-weight:900;font-stretch:110%;font-size:var(--fs-xl);letter-spacing:-.03em;line-height:1.05}
.gc-house-ad--mrec .gc-house-ad__label,.gc-house-ad--rail .gc-house-ad__label{font-size:26px;margin-bottom:6px}
.gc-house-ad__sub{font-size:var(--fs-sm);max-width:220px;line-height:1.4}
.gc-house-ad__cta{font:700 var(--fs-xs) var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:12px;border:2px solid currentColor;padding:6px 10px}
@media (max-width:767px){.gc-house-ad:not(.gc-house-ad--rail):not(.gc-house-ad--mrec){height:50px;padding:0 12px;gap:8px}.gc-house-ad:not(.gc-house-ad--rail):not(.gc-house-ad--mrec) .gc-house-ad__label{font-size:var(--fs-base)}}
@keyframes gc-slot-reveal{from{opacity:0}to{opacity:1}}

/* ── Frame + rail ───────────────────────────────────────────────────────── */
.gc-page-with-rail{display:grid;grid-template-columns:minmax(0,1fr) var(--rail);gap:0 32px;max-width:var(--content);margin:0 auto;padding:0 20px;align-items:start}
.gc-main-col{min-width:0}
.gc-page{max-width:var(--main);margin:0;padding:0 0 64px;scroll-margin-top:60px}
.gc-rail-col{position:sticky;top:72px;align-self:start;padding-top:24px;display:flex;flex-direction:column;gap:16px;max-height:calc(100vh - 84px);overflow-y:auto;scrollbar-width:none}
.gc-rail-col::-webkit-scrollbar{display:none}
.gc-interested-wrap{max-width:var(--content);margin:0 auto;padding:0 20px;display:grid;grid-template-columns:minmax(0,1fr) var(--rail);gap:0 32px}
.gc-interested-card{grid-column:1;max-width:var(--main);margin:0 0 32px}
@media (max-width:1079px){.gc-page-with-rail,.gc-interested-wrap{grid-template-columns:1fr}.gc-rail-col{display:none!important}.gc-page,.gc-interested-card{max-width:var(--main);margin-left:auto;margin-right:auto}}
@media (max-width:767px){.gc-page-with-rail,.gc-interested-wrap{padding:0 12px}}

/* ── Masthead ───────────────────────────────────────────────────────────── */
.gc-masthead{padding:22px 0 18px;margin-bottom:var(--gap);display:flex;flex-direction:column;gap:10px}
.gc-breadcrumbs,.gc-breadcrumb{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.gc-breadcrumbs:has(.sep){gap:4px 0}
.gc-breadcrumbs a,.gc-breadcrumb a{color:var(--ink);text-decoration:none}
.gc-breadcrumbs a:hover{text-decoration:underline}
.gc-breadcrumbs .sep{margin:0 8px;opacity:.6}
.gc-eyebrow{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.gc-position-badge{display:inline-block;background:var(--cat);color:var(--on-cat);padding:5px 9px;margin:0}
.gc-masthead h1{margin:2px 0 0;font-stretch:112%}
.gc-subtitle{font-size:var(--fs-xl);color:var(--ink-2);line-height:1.45;max-width:58ch;margin:0;font-weight:500}
.gc-human-first{font-size:var(--fs-lg);color:var(--ink);line-height:1.45;max-width:60ch;margin:0;font-weight:500;border-left:6px solid var(--cat);padding-left:12px}
.gc-page>.gc-position-badge,.gc-page>.gc-human-first,.gc-page>.gc-subtitle{margin-top:0}

/* ── Instrument: precision, sheet, fields ──────────────────────────────── */
.gci-precision-bar{display:flex;gap:var(--gap);margin:0 0 var(--gap);overflow-x:auto;scrollbar-width:none}
.gci-precision-bar::-webkit-scrollbar{display:none}
.gci-prec-btn{flex:0 0 auto;min-height:44px;padding:10px 14px;border:2px solid var(--rule);background:var(--sheet);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:pointer;white-space:nowrap}
.gci-prec-btn:hover{background:var(--sheet-2)}
.gci-prec-btn.active{background:var(--action);color:var(--canvas);border-color:var(--ink)}
.gci-prec-desc{display:none;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin:6px 0 10px}
.gci-prec-desc.active{display:block}
.gc-card{background:var(--sheet);border:2px solid var(--rule);padding:20px;margin-bottom:var(--gap)}
.gc-section-label{grid-column:1/-1;padding:12px 0 6px;margin-bottom:2px;color:var(--ink)}
.gc-section-label:first-child{padding-top:0}
.gc-fields-grid{display:grid;grid-template-columns:1fr;gap:14px 16px}
.gc-fields-grid.gc-2col{grid-template-columns:1fr 1fr}
.gc-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.gc-field-label{color:var(--ink)}
.gc-field-hint{font-size:var(--fs-xs);color:var(--ink-3);line-height:1.4}
.gc-input-wrap{position:relative;display:flex;align-items:center}
.gc-prefix,.gc-suffix{position:absolute;font-family:var(--mono);font-size:var(--fs-sm);font-weight:700;color:var(--ink-3);pointer-events:none;z-index:1}
.gc-prefix{left:14px}.gc-suffix{right:14px}
.gc-input{width:100%;min-height:52px;padding:10px 14px;background:var(--sheet);border:2px solid var(--rule);font-family:var(--mono);font-size:19px;font-weight:700;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;transition:background .1s}
.gc-input.has-prefix{padding-left:34px}
.gc-input.has-suffix{padding-right:56px}
.gc-input::placeholder{color:var(--ink-3);font-weight:400}
.gc-input:hover{background:var(--sheet-2)}
.gc-input:focus-visible{outline:3px solid var(--ink);outline-offset:0;border-color:var(--cat)}
.gc-input[aria-invalid=true]{border-color:var(--bad);outline:3px solid var(--bad);outline-offset:0}
.gc-input:disabled{opacity:.5;cursor:not-allowed}
select.gc-input{font-family:var(--sans);font-weight:600;font-size:16px;letter-spacing:0;appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%230a0a0b' stroke-width='2.2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer}
:root[data-theme=dark] select.gc-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23f4f4f6' stroke-width='2.2' fill='none'/%3E%3C/svg%3E")}
.gc-field-msg{display:none;font-size:var(--fs-sm);font-weight:600;color:var(--bad);line-height:1.4;margin-top:2px}
.gc-field-msg.is-visible{display:block}
.gc-live-indicator{display:flex;align-items:center;gap:8px;padding:14px 0 0;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.gc-live-dot{width:8px;height:8px;background:var(--good)}
@media (max-width:639px){.gc-fields-grid.gc-2col{grid-template-columns:1fr}.gc-card{padding:16px}.gc-input{font-size:18px}}

/* ── The result block ──────────────────────────────────────────────────── */
.gc-results{background:var(--sheet);border:2px solid var(--rule);margin-bottom:var(--gap);overflow:hidden}
.gc-results-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:14px 20px 0;background:var(--cat);color:var(--on-cat)}
.gc-results-title{color:inherit;opacity:.85}
.gc-results-actions{display:flex;flex-wrap:wrap;gap:var(--gap);justify-content:flex-end}
.gc-mini-btn,.gc-share-btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;border:2px solid currentColor;background:transparent;color:inherit;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;line-height:1.2}
.gc-mini-btn:hover,.gc-share-btn:hover{background:var(--on-cat);color:var(--cat)}
.gc-mini-btn svg{width:14px;height:14px;flex-shrink:0}
.gc-mini-btn.is-done{background:var(--on-cat);color:var(--cat)}
.gc-primary-result{padding:26px 20px 20px;background:var(--cat);color:var(--on-cat)}
.gc-primary-label{color:inherit;opacity:.85;margin-bottom:8px}
.gc-primary-value{font-size:var(--fs-hero);line-height:1;letter-spacing:-.06em;color:inherit;overflow-wrap:anywhere;font-stretch:108%;overflow:hidden}
.gc-digit{display:inline-block}
.gc-digit-roll{animation:gc-roll .55s cubic-bezier(.2,.9,.2,1) both}
@keyframes gc-roll{from{transform:translateY(100%);opacity:0}to{transform:none;opacity:1}}
.gc-period-grid,.gc-freq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin:0;padding:0 20px 20px;background:var(--cat);color:var(--on-cat)}
.gc-freq-grid{grid-template-columns:repeat(4,1fr)}
.gc-period-cell,.gc-freq-cell{background:rgba(0,0,0,.14);padding:12px 12px;text-align:left}
[data-gc-cat=property] .gc-period-cell,[data-gc-cat=super] .gc-period-cell,[data-gc-cat=pension] .gc-period-cell,[data-gc-cat=retirement] .gc-period-cell,[data-gc-cat=property] .gc-freq-cell,[data-gc-cat=super] .gc-freq-cell,[data-gc-cat=pension] .gc-freq-cell,[data-gc-cat=retirement] .gc-freq-cell{background:rgba(255,255,255,.16)}
.gc-period-label,.gc-freq-label{color:inherit;opacity:.85;margin-bottom:4px}
.gc-period-value,.gc-freq-value{font-size:20px;color:inherit}
.gc-percentile{margin:16px 20px 0;padding:10px 12px;border:2px solid var(--rule);background:var(--sheet-2)}
.gc-percentile-text{font-size:var(--fs-sm);font-weight:600;color:var(--ink)}
.gc-bracket-badge{display:inline-block;font:700 var(--fs-xs) var(--mono);padding:3px 8px;background:var(--action);color:var(--canvas);margin-left:6px}
.gc-breakdown{padding:6px 20px 18px}
.gc-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-top:2px solid var(--rule-soft);font-size:var(--fs-base)}
.gc-row:first-child{border-top:0}
.gc-row-label{color:var(--ink-2);font-weight:500}
.gc-row-value{font-size:16px;text-align:right;white-space:nowrap;color:var(--ink)}
.gc-row-value.positive{color:var(--good)}.gc-row-value.negative{color:var(--bad)}.gc-row-value.warning{color:var(--warn)}.gc-row-value.muted{color:var(--ink-3)}
.gc-row.gc-row-total{border-top:3px solid var(--rule);padding-top:14px}
.gc-row.gc-row-total .gc-row-label{color:var(--ink);font-weight:800}
.gc-row.gc-row-total .gc-row-value{font-size:19px}
.gc-row-indent{padding-left:16px;font-size:var(--fs-sm)}
.gc-savings-callout,.gc-warning-callout,.gc-callout-positive,.gc-callout-warning{margin:0 20px 16px;padding:12px 14px;border:2px solid var(--rule);border-left:8px solid var(--good);background:var(--sheet-2);font-size:var(--fs-sm);font-weight:500;color:var(--ink);line-height:1.5}
.gc-savings-callout,.gc-warning-callout{display:none}
.gc-warning-callout,.gc-callout-warning{border-left-color:var(--warn)}
.gc-gauge-wrap{padding:8px 20px}
.gc-scenario-bar{display:flex;gap:var(--gap);flex-wrap:wrap;align-items:center;margin-bottom:12px}
.gc-scen-tab{min-height:36px;padding:6px 12px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;flex:1 1 140px;text-align:center}
.gc-scen-tab.active{background:var(--action);color:var(--canvas)}
.gc-scen-actions{display:flex;gap:var(--gap);width:100%}
.gc-sensitivity-table,.gc-compare-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);margin:8px 0;display:block;overflow-x:auto;white-space:nowrap}
.gc-sensitivity-table thead,.gc-sensitivity-table tbody,.gc-compare-table thead,.gc-compare-table tbody{display:table;width:100%;table-layout:fixed}
.gc-sensitivity-table th,.gc-sensitivity-table td{padding:8px;border-bottom:2px solid var(--rule-soft);text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}
.gc-sensitivity-table th{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-weight:700;background:var(--sheet-2)}
.gc-sensitivity-table td.hl{background:var(--cat);color:var(--on-cat);font-weight:700}
/* engines fill these only at higher precision levels — never show an empty frame */
.gc-chart-card:has(> .gc-formula-panel:empty),.gc-chart-card:has(> .gc-sensitivity-table:not(:has(td))),.gc-chart-card:has(> .gc-compare-table:not(:has(td))){display:none}
.gc-formula-panel{font-family:var(--mono);font-size:var(--fs-sm);color:var(--ink-2);line-height:1.7;white-space:pre-wrap;padding:12px 14px;border:2px solid var(--rule);background:var(--sheet-2);max-height:280px;overflow-y:auto;margin:8px 0}
.gc-fallback-card{margin-bottom:var(--gap)}
.gc-fallback-note{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.6}
.gc-fallback-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--gap);margin-top:12px}
.gc-fallback-metric{padding:10px 12px;background:var(--sheet-2)}
.gc-fallback-metric-value{font-size:18px}
@media (max-width:639px){.gc-results-header{padding:12px 16px 0}.gc-primary-result{padding:20px 16px 16px}.gc-period-grid,.gc-freq-grid{padding:0 16px 16px}.gc-freq-grid{grid-template-columns:repeat(2,1fr)}.gc-percentile,.gc-savings-callout,.gc-warning-callout,.gc-callout-positive,.gc-callout-warning{margin-left:16px;margin-right:16px}.gc-breakdown{padding:4px 16px 16px}}
@media (min-width:640px){.gc-freq-grid{grid-template-columns:repeat(6,1fr)}}
@media (min-width:640px) and (max-width:900px){.gc-freq-grid{grid-template-columns:repeat(3,1fr)}}

/* charts */
.gc-chart-card{background:var(--sheet);border:2px solid var(--rule);padding:16px;margin-bottom:var(--gap);overflow:hidden}
.gc-chart-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.gc-chart-title{color:var(--ink)}
.gc-chart-legend{display:flex;gap:14px;flex-wrap:wrap;max-width:100%}
.gc-legend-item{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;color:var(--ink-2);line-height:1.35}
.gc-legend-dot{width:10px;height:10px}
.gc-chart{position:relative;height:260px;min-height:140px;display:flex;align-items:center;justify-content:center;min-width:0;overflow:visible!important}
.gc-chart canvas{display:block;max-width:100%!important;width:100%!important;height:100%!important;margin:0 auto;flex:1 1 auto}
.gc-fallback-chart-card .gc-chart{height:220px}
@media (max-width:700px){.gc-chart{min-height:160px}}
.gc-reset-btn{display:block;width:100%;min-height:44px;padding:10px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;margin-bottom:var(--gap)}
.gc-reset-btn:hover{background:var(--action);color:var(--canvas)}
.gc-privacy{font-family:var(--mono);font-size:var(--fs-xs);color:var(--ink-3);line-height:1.5;text-align:left;padding:10px 0 12px;font-weight:600}

/* ── Context strip ─────────────────────────────────────────────────────── */
.gc-context{display:flex;flex-direction:column;gap:10px;padding:14px 0 16px;border-top:2px solid var(--rule);margin:8px 0 20px}
.gc-trust-banner{display:flex;flex-wrap:wrap;gap:var(--gap);margin:0;padding:0;font-size:var(--fs-xs);color:var(--ink);line-height:1.3}
.gc-trust-banner span{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:2px solid var(--rule);background:var(--sheet);font-family:var(--mono);font-weight:700;letter-spacing:.02em;max-width:100%;overflow-wrap:anywhere}
.gc-trust-banner svg{width:12px;height:12px;flex-shrink:0}
.gc-page .gc-market-context{font-size:var(--fs-sm)!important;color:var(--ink-2)!important;line-height:1.6;margin:0!important;max-width:70ch;font-weight:500}
.gc-section-divider{display:none!important}

/* ── Quick answers ──────────────────────────────────────────────────────── */
.gc-qa-section{margin:0 0 20px;background:var(--sheet);border:2px solid var(--rule);overflow:hidden;contain:layout;max-width:100%}
.gc-qa-row1,.gc-qa-row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2px;background:var(--rule)}
.gc-qa-row-divider{height:2px;background:var(--rule)}
.gc-qa-chip--primary{background:var(--sheet);border:0;padding:16px 18px;cursor:pointer;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:76px;font-family:var(--sans);color:var(--ink)}
.gc-qa-chip--primary:hover{background:var(--sheet-2)}
.gc-qa-chip--primary[aria-selected=true]{background:var(--action);color:var(--canvas)}
.gc-qa-chip--primary .gc-qa-chip-income{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:inherit;opacity:.9;line-height:1.4}
.gc-qa-chip--primary .gc-qa-chip-val{font-size:clamp(1.1rem,2vw,1.5rem)!important;line-height:1.1;color:inherit}
.gc-qa-chip--insight{background:var(--cat);color:var(--on-cat);position:relative}
.gc-qa-chip--insight:hover{background:var(--cat);filter:brightness(.95)}
.gc-qa-chip--insight::before{content:"Key insight";position:absolute;top:8px;right:10px;font:700 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.8}
.gc-qa-row3{display:flex;align-items:flex-start;gap:8px 16px;flex-wrap:wrap;padding:12px 18px;background:var(--sheet-2);border-top:2px solid var(--rule)}
.gc-qa-more-btn{flex-shrink:0;min-height:40px;padding:8px 14px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:6px}
.gc-qa-more-btn:hover,.gc-qa-more-btn[aria-expanded=true]{background:var(--action);color:var(--canvas)}
.gc-qa-more-arrow{font-size:10px;transition:transform .2s;display:inline-block}
.gc-qa-more-btn[aria-expanded=true] .gc-qa-more-arrow{transform:rotate(180deg)}
.gc-qa-disclaimer{flex:1;min-width:0;font-size:var(--fs-xs);color:var(--ink-3);line-height:1.5;margin:0;font-weight:500}
.gc-qa-expanded{border-top:2px solid var(--rule);padding:12px 18px 14px}
.gc-qa-group-label{padding:10px 0 6px;color:var(--ink)}
.gc-qa-group-label:first-child{padding-top:2px}
.gc-qa-row{display:flex;flex-wrap:wrap;gap:var(--gap);margin-bottom:4px}
.gc-qa-chip{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:44px;padding:8px 12px;border:2px solid var(--rule);background:var(--sheet);cursor:pointer;text-align:left;flex:1 1 200px;min-width:0;max-width:100%;font-family:var(--sans);color:var(--ink)}
.gc-qa-chip:hover{background:var(--sheet-2)}
.gc-qa-chip[aria-selected=true],.gc-qa-chip.is-shared-active{background:var(--action);color:var(--canvas);border-color:var(--ink)}
.gc-qa-chip-income{font-size:var(--fs-xs);color:inherit;opacity:.9;line-height:1.3;overflow-wrap:anywhere;font-weight:600}
.gc-qa-chip-val{font-size:var(--fs-sm);color:inherit;line-height:1.3;overflow-wrap:anywhere}
.gc-qa-panel{border-top:4px solid var(--cat);background:var(--sheet)}
.gc-qa-panel-inner{padding:16px 18px 12px}
.gc-qa-panel-inner h3{font-size:var(--fs-h3);margin:0 0 8px;line-height:1.1}
.gc-qa-panel-inner .qa-summary{font-size:var(--fs-base);color:var(--ink-2);line-height:1.65;margin:0 0 12px}
.gc-qa-panel-inner .qa-summary strong{color:var(--ink)}
.gc-qa-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--gap);margin-bottom:12px}
.gc-qa-fact{padding:10px 12px;background:var(--sheet-2)}
.gc-qa-fact-label{display:block;margin-bottom:3px}
.gc-qa-fact-val{font-size:16px;color:var(--ink)}
.gc-qa-fact-val.qa-pos,.gc-qa-fact.qa-pos .gc-qa-fact-val{color:var(--good)}
.gc-qa-fact-val.qa-neg,.gc-qa-fact.qa-neg .gc-qa-fact-val{color:var(--bad)}
.gc-qa-fact-val.qa-warn,.gc-qa-fact.qa-warn .gc-qa-fact-val{color:var(--warn)}
.gc-qa-impacts{display:flex;flex-direction:column}
.gc-qa-impact-row,.gc-qa-impact{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:8px 0;border-top:2px solid var(--rule-soft);font-size:var(--fs-sm)}
.gc-qa-impact-row:first-of-type,.gc-qa-impact:first-child{border-top:0}
.gc-qa-impact-desc{flex:1 1 auto;min-width:0;color:var(--ink-2);font-weight:500}
.gc-qa-impact-val{flex:0 1 46%;font-family:var(--mono);font-weight:700;color:var(--ink);white-space:normal;text-align:right;font-variant-numeric:tabular-nums}
.gc-qa-impact-val.qa-pos{color:var(--good)}.gc-qa-impact-val.qa-neg{color:var(--bad)}.gc-qa-impact-val.qa-warn{color:var(--warn)}
.gc-qa-panel-close{display:block;width:100%;min-height:40px;padding:8px;border:0;border-top:2px solid var(--rule);background:0 0;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:pointer}
.gc-qa-panel-close:hover{background:var(--action);color:var(--canvas)}
.gc-instant-answer{background:var(--sheet);border:2px solid var(--rule);padding:14px 16px;margin-bottom:var(--gap)}
.gc-ia-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--gap);margin-bottom:8px}
.gc-ia-item{padding:8px 10px;background:var(--sheet-2)}
.gc-ia-label{font-size:var(--fs-xs);color:var(--ink-2);margin-bottom:2px;font-weight:600}
.gc-ia-value{font-size:var(--fs-md)}
.gc-ia-note{font-size:var(--fs-sm);color:var(--ink-2);margin:4px 0 0}
@media (max-width:700px){.gc-qa-impact-row,.gc-qa-impact{flex-direction:column;gap:2px}.gc-qa-impact-val{text-align:left;flex-basis:auto}}

/* ── Explorer ───────────────────────────────────────────────────────────── */
.gc-explorer{margin:0 0 20px;border-top:4px solid var(--rule);padding-top:16px}
.gc-explorer-hd{padding:0 0 8px}
.gc-explorer-eyebrow{margin-bottom:6px;color:var(--ink)}
.gc-explorer-intro{font-size:var(--fs-base);color:var(--ink-2);margin:0 0 12px;line-height:1.55;font-weight:500}
.gc-explorer-tabs-wrap{position:relative}
.gc-explorer-tabs{display:flex;flex-wrap:wrap;gap:var(--gap)}
.gc-etab{flex-shrink:0;min-height:44px;padding:10px 14px;border:2px solid var(--rule);background:var(--sheet);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);cursor:pointer;white-space:normal;line-height:1.25;text-align:left}
.gc-etab:hover{background:var(--sheet-2)}
.gc-etab.is-active{background:var(--action);color:var(--canvas)}
.gc-epanel{display:none;padding:16px 0 0}
.gc-epanel.is-active{display:block}
.gc-epanel-lead{margin-bottom:16px}
.gc-epanel-lead p{font-size:var(--fs-md);color:var(--ink-2);line-height:1.65;margin-bottom:8px}
.gc-epanel-lead p:last-child{margin-bottom:0}
.gc-ecard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin-bottom:16px}
.gc-ecard{padding:16px;background:var(--sheet);border:2px solid var(--rule)}
.gc-ecard.gc-ecard-full{grid-column:1/-1}
.gc-ecard-title{font-size:var(--fs-lg);font-weight:800;margin:0 0 6px;line-height:1.15;letter-spacing:-.02em;font-stretch:104%}
.gc-ecard p{font-size:var(--fs-base);color:var(--ink-2);line-height:1.55;margin:0}
.gc-ecard-link{display:inline-block;margin-top:10px;font:700 var(--fs-xs) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.gc-epanel-links{font-size:var(--fs-sm);color:var(--ink-3);padding:12px 0 0;border-top:2px solid var(--rule-soft);font-weight:600}
.gc-epanel-links span{margin-right:8px}
.gc-epanel-links a{margin-right:10px}
@media (max-width:700px){.gc-ecard-grid{grid-template-columns:1fr}.gc-ecard.gc-ecard-full{grid-column:1}}

/* ── Related · jump · interested ───────────────────────────────────────── */
.gc-related-inline,.gc-related-card,.gc-interested-card{margin:0 0 20px;border-top:4px solid var(--rule);padding-top:16px}
.gc-related-inline-label,.gc-related-label,.gc-interested-label{margin-bottom:10px;color:var(--ink)}
.gc-related-inline-grid,.gc-related-grid,.gc-interested-grid,.gc-related{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.gc-related-inline-item,.gc-related-item,.gc-interested-item,.gc-related-link{display:flex;align-items:center;gap:12px;min-height:60px;padding:12px 14px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);text-decoration:none}
.gc-related-inline-item:hover,.gc-related-item:hover,.gc-interested-item:hover,.gc-related-link:hover{background:var(--action);color:var(--canvas)}
.gc-related-inline-item::before,.gc-related-item::before,.gc-interested-item::before{content:"";width:12px;height:12px;flex-shrink:0;background:var(--lc,var(--cat))}
.gc-related-inline-item .gc-related-inline-icon,.gc-related-item .gc-related-icon,.gc-interested-item .gc-interested-icon{display:none!important}
.gc-related-inline-item>div,.gc-related-item>div,.gc-interested-item>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.gc-related-inline-item strong,.gc-related-item strong,.gc-interested-item strong{display:block;font-size:var(--fs-base);font-weight:800;letter-spacing:-.02em;line-height:1.2;color:inherit}
.gc-related-inline-item span,.gc-related-item span,.gc-interested-item span{display:block;font-size:var(--fs-xs);color:inherit;opacity:.85;line-height:1.35;font-weight:500}
.gc-related-inline-item::after,.gc-related-item::after,.gc-interested-item::after{content:"→";margin-left:auto;font-family:var(--mono);font-weight:700}
@media (max-width:640px){.gc-related-inline-grid,.gc-related-grid,.gc-interested-grid,.gc-related{grid-template-columns:1fr}}
.gc-jump-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap);margin:0 0 20px;border-top:4px solid var(--rule);padding-top:16px}
.gc-jump-grid-label{grid-column:1/-1;margin-bottom:6px;color:var(--ink)}
.gc-jump-item{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-size:var(--fs-sm);font-weight:700;letter-spacing:-.01em;white-space:normal;text-decoration:none}
.gc-jump-item:hover,.gc-jump-item.is-active{background:var(--action);color:var(--canvas)}
@media (min-width:768px){.gc-jump-grid{grid-template-columns:repeat(3,1fr)}}

/* ── Article ────────────────────────────────────────────────────────────── */
.gc-content-divider{display:flex;align-items:center;gap:12px;margin:40px 0 8px}
.gc-content-divider span{color:var(--ink)}
.gc-content-divider::after{content:"";flex:1;height:4px;background:var(--rule)}
.gc-content-card,.gc-seo-card{background:transparent;border:0;border-top:2px solid var(--rule);padding:20px 0;margin:0}
.gc-content-card[data-nth=alt]{background:transparent}
.gc-seo-card{padding:0!important;border-left:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
.gc-seo-card>details{padding:16px 0!important;margin:0!important;border:0!important;background:transparent!important;border-radius:0!important}
.gc-seo-card>details>summary,#faq-outer>summary{list-style:none;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-height:44px;padding:4px 0;font-weight:900;font-stretch:108%;font-size:var(--fs-h3);letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
.gc-seo-card>details>summary::-webkit-details-marker,#faq-outer>summary::-webkit-details-marker,#faq details details summary::-webkit-details-marker{display:none}
.gc-seo-card>details>summary::after,#faq-outer>summary::after,#faq details details summary::after{content:"+";flex-shrink:0;font-family:var(--mono);font-size:22px;font-weight:700;line-height:1;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--rule)}
.gc-seo-card>details[open]>summary::after,#faq-outer[open]>summary::after,#faq details details[open] summary::after{content:"−";background:var(--action);color:var(--canvas)}
.gc-seo-card>details[open]>summary{margin-bottom:12px}
.gc-seo-card>details:not([open])>.gc-seo-body{display:block;max-height:3.2em;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent);mask-image:linear-gradient(to bottom,#000 30%,transparent);margin-top:6px;pointer-events:none}
.gc-content-card h2{font-size:var(--fs-h2);margin:0 0 10px}
.gc-content-card h3,.gc-seo-body h3{font-size:var(--fs-lg);font-weight:800;font-stretch:104%;margin:16px 0 6px;letter-spacing:-.02em}
.gc-seo-body h3:first-child{margin-top:0}
.gc-content-card p,.gc-seo-body p,.gc-seo-body li,#faq details p{font-size:var(--fs-md);color:var(--ink-2);line-height:1.65;font-weight:500}
.gc-content-card p,.gc-seo-body p{margin-bottom:10px}
.gc-seo-body p strong,.gc-content-card p strong{color:var(--ink);font-weight:800}
.gc-seo-body ul,.gc-content-card ul,.gc-content-card ol{padding-left:20px;margin-bottom:10px}
.gc-seo-body li{padding:2px 0}
.gc-content-card table,.gc-data-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);margin:10px 0 16px;border:2px solid var(--rule)}
.gc-content-card th,.gc-content-card td,.gc-data-table th,.gc-data-table td{padding:9px 10px;border-bottom:2px solid var(--rule-soft);text-align:left;vertical-align:top;color:var(--ink-2);font-weight:500}
.gc-content-card th,.gc-data-table th{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--sheet-2)}
.gc-data-table td:first-child{color:var(--ink);font-weight:700;white-space:nowrap}
.gc-data-table td:nth-child(2){font-family:var(--mono);font-weight:700;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.gc-section-tag{display:inline-block;margin-bottom:8px;background:var(--cat);color:var(--on-cat);padding:4px 8px}
.gc-section-tag--method,.gc-section-tag--data,.gc-section-tag--guide,.gc-section-tag--faq{color:var(--on-cat)}
#faq-outer{padding:0}
#faq-outer>summary{padding:16px 0}
#faq-outer>summary>span{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:8px!important}
#faq-outer>summary>span>span:last-child{font-size:var(--fs-h3)!important;font-weight:900!important;font-stretch:108%;letter-spacing:-.03em;line-height:1.1}
#faq-outer .gc-faq-items{padding:0 0 12px}
.gc-seo-card .gc-content-card details,.gc-seo-card#faq details,.gc-seo-card details details,#faq details{margin:0;padding:12px 0;border:0;border-top:2px solid var(--rule-soft);background:transparent}
#faq details details summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;min-height:40px;font-size:var(--fs-md);font-weight:800;letter-spacing:-.01em;color:var(--ink);line-height:1.35}
#faq details details summary::after{width:26px;height:26px;font-size:18px}
#faq details details[open] summary{margin-bottom:8px}
#faq details p{margin:0}
.gc-close-section{display:flex;justify-content:center;padding:16px 0 4px;margin-top:12px;border-top:2px solid var(--rule)}
.gc-close-section button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 20px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.gc-close-section button:hover{background:var(--action);color:var(--canvas)}
.gc-embed-offer{margin:20px 0;border:2px solid var(--rule);padding:14px 16px;background:var(--sheet)}
.gc-embed-offer summary{cursor:pointer;font-weight:800;font-size:var(--fs-md);letter-spacing:-.01em}
.gc-embed-offer-note{font-size:var(--fs-sm);color:var(--ink-3);margin:10px 0 0;font-weight:500}
.gc-embed-offer textarea{width:100%;height:132px;margin-top:10px;font-family:var(--mono);font-size:var(--fs-xs);line-height:1.5;padding:10px;border:2px solid var(--rule);background:var(--sheet-2);color:var(--ink);resize:vertical}
.gc-embed-copy{margin-top:8px;min-height:36px;padding:8px 16px;border:2px solid var(--ink);background:var(--action);color:var(--canvas);font:700 var(--fs-xs) var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.gc-notify-link{font-size:var(--fs-sm)}
.gc-theme-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);padding:10px 16px;background:var(--action);color:var(--canvas);font:700 var(--fs-sm) var(--mono);z-index:400}
.gc-scroll-top{position:fixed;bottom:24px;right:20px;z-index:150;width:44px;height:44px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(12px);transition:opacity .2s,transform .2s;pointer-events:none}
.gc-scroll-top.visible{opacity:1;transform:none;pointer-events:auto}
.gc-scroll-top:hover{background:var(--action);color:var(--canvas)}
body.gc-has-mini .gc-scroll-top{bottom:88px}
body.gc-has-mini .gc-privacy-manage,body.gc-has-mini .gc-feedback-manage{bottom:84px!important}

/* ── Rating ─────────────────────────────────────────────────────────────── */
.gc-rating{text-align:left;padding:20px;margin:24px auto 0;max-width:var(--content);border:2px solid var(--rule);background:var(--sheet)}
@media (min-width:1080px){.gc-rating{max-width:calc(var(--content) - 40px)}}
.gc-rating-label{font-size:var(--fs-md);font-weight:800;color:var(--ink);margin-bottom:8px;letter-spacing:-.01em}
.gc-rating-stars{display:inline-flex;gap:4px;cursor:pointer}
.gc-rating-stars svg{width:30px;height:30px;fill:var(--rule-soft);transition:fill .12s;cursor:pointer}
.gc-rating-stars svg:hover,.gc-rating-stars svg.active,.gc-rating-stars svg.gc-star-active,.gc-rating-stars:hover svg{fill:var(--cat)}
.gc-rating-stars svg:hover~svg{fill:var(--rule-soft)}
.gc-rating-avg{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;color:var(--ink-3);margin-top:8px}
.gc-rating-thanks{font-size:var(--fs-base);color:var(--good);margin-top:6px;font-weight:700}

/* ── Footer ─────────────────────────────────────────────────────────────── */
.gc-footer{background:var(--action);color:var(--canvas);margin-top:32px}
.gc-footer a{color:inherit}
.gc-footer-inner{max-width:var(--content);margin:0 auto;padding:32px 20px 24px}
.gc-footer-trust{display:flex;gap:var(--gap);flex-wrap:wrap;padding-bottom:24px;border-bottom:2px solid rgba(255,255,255,.25);margin-bottom:24px}
:root[data-theme=dark] .gc-footer-trust{border-color:rgba(0,0,0,.25)}
.gc-trust-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:2px solid currentColor;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em}
.gc-trust-pill svg{width:12px;height:12px;flex-shrink:0}
.gc-footer-sitemap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 24px;margin-bottom:24px}
.gc-fcol-head{color:inherit;opacity:.9;margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid currentColor}
.gc-fcol a{display:block;font-size:var(--fs-sm);font-weight:600;padding:6px 0;min-height:28px;line-height:1.5;text-decoration:none}
.gc-fcol a:hover{text-decoration:underline;text-decoration-color:var(--lc,currentColor)}
.gc-footer-about{font-size:var(--fs-xs);opacity:.9;line-height:1.65;padding:14px 0;border-top:2px solid rgba(255,255,255,.25);border-bottom:2px solid rgba(255,255,255,.25);margin-bottom:14px;font-weight:500}
:root[data-theme=dark] .gc-footer-about{border-color:rgba(0,0,0,.25)}
.gc-footer-about strong{opacity:1}
.gc-footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 16px}
.gc-footer-copy{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;opacity:.9}
.gc-footer-legal{display:flex;gap:14px;flex-wrap:wrap}
.gc-footer-legal a{display:inline-block;padding:6px 0;font-size:var(--fs-xs);font-weight:700;opacity:.85;text-decoration:none}
.gc-footer-legal a:hover{text-decoration:underline}
@media (max-width:640px){.gc-footer-sitemap{grid-template-columns:repeat(2,1fr)}}

/* ── Injected footer feedback card (gc-analytics) brought onto the system ── */
.gc-footer-feedback{background:var(--sheet)!important;color:var(--ink)!important;border:2px solid var(--ink)!important;border-radius:0!important;box-shadow:none!important;background-image:none!important}
.gc-footer-feedback *{color:inherit!important}
.gc-footer-feedback__eyebrow{font:700 11px var(--mono)!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:var(--ink)!important}
.gc-footer-feedback h2{font-family:var(--sans)!important;font-weight:900!important;font-stretch:110%!important;letter-spacing:-.03em!important}
.gc-footer-feedback a,.gc-footer-feedback button{border-radius:0!important;font:700 11px var(--mono)!important;letter-spacing:.06em!important;text-transform:uppercase!important;box-shadow:none!important;border:2px solid var(--ink)!important}
.gc-footer-feedback a[href*="feedback"],.gc-footer-feedback a:first-of-type,.gc-footer-feedback button:first-of-type{background:var(--action)!important;color:var(--canvas)!important}
.gc-footer-feedback a:not(:first-of-type){background:var(--sheet)!important;color:var(--ink)!important}

/* ── Injected runtime pills (privacy centre, feedback) brought onto the system ── */
.gc-privacy-manage,.gc-feedback-manage{border-radius:0!important;border:2px solid var(--ink)!important;background:var(--sheet)!important;color:var(--ink)!important;box-shadow:none!important;font:700 11px var(--mono)!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:9px 12px!important}
.gc-privacy-manage:hover,.gc-feedback-manage:hover{background:var(--action)!important;color:var(--canvas)!important}

/* ── Mobile headline bar ───────────────────────────────────────────────── */
.gc-mini-result{position:fixed;left:0;right:0;bottom:0;z-index:180;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:var(--action);color:var(--canvas);border:0;border-top:4px solid var(--cat);cursor:pointer;font-family:var(--sans);text-align:left}
.gc-mini-result.is-visible{display:flex}
.gc-mini-result.is-hidden{display:none!important}
.gc-mini-result-label{display:block;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.9;margin-bottom:2px}
.gc-mini-result-value{display:block;font-size:24px;line-height:1.05}
.gc-mini-result-cta{font:700 var(--fs-xs) var(--mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:2px solid currentColor;padding:6px 10px}
@media (min-width:768px){.gc-mini-result{display:none!important}}

/* ── Category page ─────────────────────────────────────────────────────── */
.gc-cat-page{max-width:var(--main)}
#gcMain>.gc-cat-page{margin:0 auto;padding:0 20px}
@media (max-width:767px){#gcMain>.gc-cat-page{padding:0 12px}}
.gc-cat-hero{padding:24px;margin:20px 0 var(--gap);background:var(--cat);color:var(--on-cat);border-radius:0;box-shadow:none}
.gc-cat-hero::before{display:none}
.gc-cat-hero-meta{display:flex;flex-wrap:wrap;gap:var(--gap);margin:0 0 14px}
.gc-cat-pill,.gc-au-market-pill{display:inline-flex;align-items:center;min-height:26px;padding:3px 8px;border:2px solid currentColor;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:inherit;background:transparent}
.gc-cat-pill--muted,.gc-au-market-pill--muted{opacity:.9}
.gc-cat-hero .gc-breadcrumb,.gc-cat-hero .gc-breadcrumb a{color:inherit;opacity:.9}
.gc-cat-hero h1{margin:6px 0 10px;font-size:clamp(40px,6vw,72px);color:inherit;font-stretch:118%}
.gc-cat-hero p{font-size:var(--fs-xl);color:inherit;max-width:60ch;margin:0;font-weight:500;line-height:1.4}
.gc-group-label{grid-column:1/-1;margin:20px 0 var(--gap);padding:8px 10px;background:var(--action);color:var(--canvas)}
.gc-calc-grid>h2,.gc-calc-grid>h3,.gc-calc-grid>.gc-group-label:first-child{grid-column:1/-1;margin-top:0}
.gc-calc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.gc-calc-card{display:flex;flex-direction:column;gap:4px;padding:16px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);min-height:96px;text-decoration:none;position:relative}
.gc-calc-card::before{content:"";width:12px;height:12px;background:var(--cat);margin-bottom:4px}
.gc-calc-card:hover{background:var(--action);color:var(--canvas)}
.gc-calc-card-title{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;line-height:1.15}
.gc-calc-card-desc{font-size:var(--fs-sm);opacity:.85;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:500}
.gc-calc-card-arrow{font:700 var(--fs-xs) var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:auto;padding-top:8px}
.gc-cat-seo{margin-top:32px;border-top:4px solid var(--rule);padding-top:16px;max-width:66ch}
.gc-cat-seo h2{font-size:var(--fs-h2)}
.gc-cat-seo p{color:var(--ink-2);line-height:1.65;font-weight:500}
.gc-other-cats{margin-top:32px;border-top:4px solid var(--rule);padding-top:16px}
.gc-other-cats-label{color:var(--ink)}
.gc-other-cats-list{display:flex;flex-wrap:wrap;gap:var(--gap);margin-top:10px}
.gc-other-cats-list a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 12px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-size:var(--fs-sm);font-weight:700;text-decoration:none}
.gc-other-cats-list a::before{content:"";width:11px;height:11px;background:var(--lc,var(--ink))}
.gc-other-cats-list a:hover{background:var(--action);color:var(--canvas)}
@media (max-width:640px){.gc-calc-grid{grid-template-columns:1fr}.gc-cat-hero{padding:18px}}

/* ── Static pages ──────────────────────────────────────────────────────── */
.gc-static-wrap{max-width:var(--main);margin:0 auto;padding:24px 20px 64px}
.gc-static-header{padding:22px 24px;background:var(--action);color:var(--canvas);margin-bottom:var(--gap)}
.gc-static-header h1{margin-bottom:10px;color:inherit;font-stretch:116%}
.gc-static-header p{font-size:var(--fs-lg);color:inherit;opacity:.9;max-width:64ch;font-weight:500}
.gc-static-meta{display:block;margin-top:8px;color:inherit;opacity:.85}
.gc-toc{margin:0 0 var(--gap);padding:14px 16px;border:2px solid var(--rule);background:var(--sheet)}
.gc-toc-title{margin-bottom:8px;color:var(--ink)}
.gc-toc ol,.gc-toc ul{margin:0;padding-left:20px;columns:2;column-gap:24px}
.gc-toc li{font-size:var(--fs-sm);font-weight:600;padding:3px 0;break-inside:avoid}
.gc-content-section{padding:20px 24px;border:2px solid var(--rule);background:var(--sheet);margin-bottom:var(--gap);max-width:none}
.gc-content-section h2{margin-top:0;font-size:var(--fs-h2)}
.gc-content-section p,.gc-content-section li{font-size:var(--fs-md);line-height:1.65;color:var(--ink-2);font-weight:500;max-width:68ch}
.gc-content-section ul,.gc-content-section ol{padding-left:22px;margin-bottom:12px}
.gc-info-card{padding:14px 16px;border:2px solid var(--rule);border-left:8px solid var(--cat);background:var(--sheet-2);margin:14px 0}
.gc-sitemap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px 24px}
.gc-sitemap-group h3{font-size:var(--fs-base)}
.gc-sitemap-group a{display:block;padding:4px 0;font-size:var(--fs-sm);font-weight:600}
.gc-form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.gc-form-label{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.gc-form-input,.gc-form-textarea,.gc-form-select{width:100%;min-height:52px;padding:10px 14px;border:2px solid var(--rule);background:var(--sheet);font-family:var(--sans);font-size:var(--fs-lg);font-weight:600}
.gc-form-textarea{min-height:140px;resize:vertical}
.gc-submit-btn,.gc-btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border:2px solid var(--ink);background:var(--action);color:var(--canvas);font:700 var(--fs-sm) var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;text-decoration:none}
.gc-submit-btn:hover,.gc-btn-primary:hover{background:var(--cat);border-color:var(--cat);color:var(--on-cat)}
.gc-btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font:700 var(--fs-sm) var(--mono);letter-spacing:.06em;text-transform:uppercase;text-decoration:none}
.gc-btn-secondary:hover{background:var(--action);color:var(--canvas)}
.gc-feedback-card{padding:20px;border:2px solid var(--rule);background:var(--sheet)}
.gc-feedback-options{display:flex;flex-wrap:wrap;gap:var(--gap);margin-bottom:12px}
.gc-feedback-option{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 12px;border:2px solid var(--rule);cursor:pointer;font-weight:600}
.gc-feedback-field-meta,.gc-feedback-privacy,.gc-feedback-optional{font-size:var(--fs-xs);color:var(--ink-3);font-weight:500}
.gc-feedback-honeypot{position:absolute;left:-9999px}
.gc-feedback-actions{display:flex;gap:var(--gap);flex-wrap:wrap;margin-top:12px}
.gc-feedback-status{font-size:var(--fs-sm);margin-top:8px;font-weight:600}
.gcw-gen{border:2px solid var(--rule);padding:20px;background:var(--sheet);margin:var(--gap) 0}
.gcw-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:14px}
.gcw-field{display:flex;flex-direction:column;gap:6px}
.gcw-field label{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.gcw-field select{min-height:52px;padding:10px 14px;border:2px solid var(--rule);background:var(--sheet);font-size:var(--fs-lg);font-weight:600}
.gcw-code{margin-top:6px}
.gcw-code textarea{display:block;width:100%;min-height:150px;padding:12px;border:2px solid var(--rule);background:var(--sheet-2);color:var(--ink);font-family:var(--mono);font-size:var(--fs-sm);line-height:1.55;resize:vertical}
.gcw-copy{margin-top:10px;min-height:48px;padding:10px 20px;border:2px solid var(--ink);background:var(--action);color:var(--canvas);font:700 var(--fs-sm) var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.gcw-copy:hover{background:var(--cat);border-color:var(--cat);color:var(--on-cat)}
.gcw-preview-label{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:16px 0 8px}
.gcw-preview{width:100%;min-height:560px;border:2px dashed var(--rule);background:var(--sheet)}
@media (max-width:640px){.gcw-row{grid-template-columns:1fr}.gc-toc ol,.gc-toc ul{columns:1}}

/* ── Search page ───────────────────────────────────────────────────────── */
.gs-page{max-width:var(--main);margin:0 auto;padding:24px 20px 64px}
.gs-h1{margin:8px 0 8px;font-stretch:116%}
.gs-sub{font-size:var(--fs-lg);color:var(--ink-2);max-width:64ch;margin:0 0 16px;font-weight:500}
.gs-search{position:relative;display:flex;align-items:center;gap:8px;border:2px solid var(--rule);background:var(--sheet);padding:0 12px 0 14px;min-height:60px}
.gs-search:focus-within{outline:3px solid var(--ink)}
.gs-search svg{flex-shrink:0;color:var(--ink)}
.gs-input{flex:1;min-width:0;min-height:56px;border:0;background:0 0;font-size:var(--fs-xl);font-weight:600;color:var(--ink)}
.gs-input:focus-visible{outline:0}
.gs-input::-webkit-search-cancel-button{display:none}
.gs-clear{display:none;width:36px;height:36px;border:2px solid var(--rule);background:0 0;color:var(--ink);font-size:18px;cursor:pointer}
.gs-clear:hover{background:var(--action);color:var(--canvas)}
.gs-filters{display:flex;flex-wrap:wrap;gap:var(--gap);margin:var(--gap) 0 16px}
.gs-filter{min-height:40px;padding:6px 12px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font:700 var(--fs-xs) var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.gs-filter.active{background:var(--action);color:var(--canvas)}
.gs-count{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);padding:8px 10px;background:var(--sheet-2);border:2px solid var(--rule);border-bottom:0}
.gs-list{list-style:none;margin:0;padding:0;border:2px solid var(--rule);background:var(--sheet)}
.gs-item a{display:block;padding:14px 16px;border-bottom:2px solid var(--rule-soft);color:var(--ink);text-decoration:none}
.gs-item:last-child a{border-bottom:0}
.gs-item a:hover{background:var(--action);color:var(--canvas)}
.gs-meta{margin-bottom:4px;color:inherit;opacity:.85}
.gs-meta .gs-flag{margin-right:6px}
.gs-name{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;line-height:1.2}
.gs-snippet{font-size:var(--fs-sm);opacity:.85;margin-top:4px;line-height:1.45;font-weight:500}
.gs-hl{background:var(--c-income);color:#0a0a0b;font-weight:800;padding:0 2px}
.gs-empty{padding:40px 16px;text-align:left;border:2px solid var(--rule);background:var(--sheet)}
.gs-empty-title{font-size:var(--fs-h2);margin:0 0 8px}
.gs-empty-hint{font-size:var(--fs-base);color:var(--ink-2);margin:0 0 18px;line-height:1.5;font-weight:500}
.gs-empty-links{display:flex;flex-wrap:wrap;gap:var(--gap)}
.gs-empty-links a{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-size:var(--fs-sm);font-weight:700;text-decoration:none}
.gs-empty-links a:hover{background:var(--action);color:var(--canvas)}

/* ── 404 ────────────────────────────────────────────────────────────────── */
.gc-404{max-width:var(--main);margin:0 auto;padding:40px 20px 64px;text-align:left}
.gc-404-code{font-family:var(--mono);font-size:clamp(96px,18vw,200px);font-weight:700;line-height:.9;letter-spacing:-.08em;color:var(--on-cat);background:var(--cat);display:inline-block;padding:16px 24px 8px;margin-bottom:var(--gap)}
body:not([data-gc-cat]) .gc-404-code{--cat:var(--c-tax);--on-cat:var(--on-tax)}
.gc-404 h1{font-size:var(--fs-h1)}
.gc-404 p{font-size:var(--fs-lg);color:var(--ink-2);max-width:60ch;font-weight:500}
.gc-404-actions{display:flex;flex-wrap:wrap;gap:var(--gap);margin:16px 0 32px}
.gc-404-popular{border-top:4px solid var(--rule);padding-top:16px}
.gc-404-popular h3{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0 0 8px}
.gc-404-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--gap)}
.gc-404-links a{display:block;padding:12px 14px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-size:var(--fs-base);font-weight:700;text-decoration:none}
.gc-404-links a:hover{background:var(--action);color:var(--canvas)}

/* ── Index pages (home, hubs) ───────────────────────────────────────────── */
.gc-index{max-width:var(--content);margin:0 auto;padding:0 20px 64px}
.gc-index-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:var(--gap) 24px;align-items:start;padding:28px 0 0}
.gc-index-hero>div:first-child{display:flex;flex-direction:column;justify-content:flex-end;padding:0 0 4px;min-width:0}
.gc-index-hero h1{font-size:clamp(40px,5.6vw,84px);line-height:.9;letter-spacing:-.045em;font-stretch:114%;margin:10px 0 18px;overflow-wrap:anywhere}
.gc-index-hero h1 em{font-style:normal;color:var(--cat)}
.gc-index-lede{font-size:var(--fs-xl);color:var(--ink-2);max-width:48ch;line-height:1.45;margin:0 0 18px;font-weight:500}
.gc-index-search{display:flex;align-items:center;gap:8px;border:2px solid var(--rule);background:var(--sheet);padding:0 4px 0 14px;min-height:60px;max-width:640px}
.gc-index-search:focus-within{outline:3px solid var(--ink)}
.gc-index-search svg{flex-shrink:0;color:var(--ink)}
.gc-index-search input{flex:1;min-width:0;min-height:52px;border:0;background:0 0;font-size:var(--fs-lg);font-weight:600;color:var(--ink)}
.gc-index-search input:focus-visible{outline:0}
.gc-index-search button{min-height:48px;padding:8px 20px;border:0;background:var(--action);color:var(--canvas);font:700 var(--fs-sm) var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.gc-index-search button:hover{background:var(--cat);color:var(--on-cat)}
.gc-index-hero>div:last-child{display:flex;flex-direction:column;gap:var(--gap);padding-top:34px}
.gc-index-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.gc-index-fact{background:var(--sheet);border:2px solid var(--rule);padding:16px 18px;display:flex;flex-direction:column;justify-content:space-between;min-height:132px}
.gc-index-fact:first-child{background:var(--cat);color:var(--on-cat);border-color:var(--cat)}
body:not([data-gc-cat]) .gc-index-fact:first-child{--cat:var(--c-property);--on-cat:var(--on-property)}
.gc-index-fact b{display:block;font-size:clamp(34px,4vw,48px);line-height:1;letter-spacing:-.05em}
.gc-index-fact span{display:block;font-size:var(--fs-sm);font-weight:600;opacity:.85;margin-top:8px}
.gc-index-markets{display:flex;flex-wrap:wrap;gap:var(--gap)}
.gc-index-markets a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 14px;border:2px solid var(--rule);color:var(--ink);font-size:var(--fs-sm);font-weight:700;background:var(--sheet);text-decoration:none;flex:1}
.gc-index-markets a:hover{background:var(--action);color:var(--canvas)}
.gc-index-markets a.is-current{background:var(--action);color:var(--canvas)}
.gc-rail{display:grid;grid-template-columns:repeat(9,1fr);gap:var(--gap);margin-top:var(--gap)}
.gc-rail a{display:block;color:var(--on-cat);background:var(--cat);text-decoration:none;padding:10px 10px 12px;min-height:88px;position:relative}
.gc-rail a:hover{filter:brightness(.92)}
.gc-rail a b{display:block;font-size:14px;font-weight:800;letter-spacing:-.02em;line-height:1.1}
.gc-rail a i{position:absolute;right:10px;bottom:8px;font-style:normal;font:700 12px var(--mono)}
.gc-rail a small{display:block;font:700 10px var(--mono);letter-spacing:.06em;opacity:.9;margin-bottom:2px}
.sec-label{display:block;margin:28px 0 8px;color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:var(--gap)}
.chip{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-size:var(--fs-sm);font-weight:700;text-decoration:none}
.chip:hover{background:var(--action);color:var(--canvas)}
.chip-hot{background:var(--action);color:var(--canvas)}
.gc-s{padding:28px 0 0}
.s-head{display:grid;grid-template-columns:1fr auto;gap:var(--gap);align-items:stretch;margin-bottom:var(--gap)}
.s-hl{display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:18px 20px;background:var(--cat);color:var(--on-cat);min-height:132px}
.s-ico{display:none}
.s-ttl{font-size:clamp(34px,5vw,64px);font-stretch:118%;letter-spacing:-.045em;line-height:.9;margin:0;color:inherit;order:2}
.s-sub{font-size:var(--fs-base);color:var(--ink-2);max-width:60ch;margin:0 0 var(--gap);font-weight:500}
.s-cnt{color:var(--on-cat);opacity:.85;order:1}
.see-all{display:flex;align-items:flex-end;padding:14px 18px;background:var(--sheet);border:2px solid var(--rule);color:var(--ink);font:700 var(--fs-xs) var(--mono);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;min-width:140px}
.see-all:hover{background:var(--action);color:var(--canvas)}
.c-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.c-card{display:flex;flex-direction:column;gap:4px;min-height:96px;padding:14px 16px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);text-decoration:none;position:relative}
.c-card::before{content:"";width:12px;height:12px;background:var(--cat);margin-bottom:4px}
.c-card:hover{background:var(--action);color:var(--canvas)}
.c-top,.c-foot,.c-ico,.c-arr,.prec{display:none}
.c-name{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;line-height:1.15}
.c-desc{font-size:var(--fs-sm);opacity:.85;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:500}
.c-tag{display:inline-block;font:700 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.8}
.c-foot.is-visible{display:flex;gap:8px;margin-top:auto;padding-top:6px}
.c-card.gc-hidden{display:none}
#manifesto{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.mani-item{display:flex;flex-direction:column;gap:8px;padding:20px;border:2px solid var(--rule);background:var(--sheet)}
.mani-ico{display:none}
.mani-ttl{font-size:var(--fs-h3);font-weight:900;font-stretch:108%;letter-spacing:-.03em;line-height:1.05}
.mani-txt{font-size:var(--fs-base);color:var(--ink-2);line-height:1.55;font-weight:500}
#seo-block{margin-top:var(--gap);padding:24px;border:2px solid var(--rule);background:var(--sheet);max-width:none}
#seo-block h2{font-size:var(--fs-h2);margin-top:0}
#seo-block p,#seo-block li{font-size:var(--fs-md);color:var(--ink-2);line-height:1.65;max-width:70ch;font-weight:500}
.hub-intro{max-width:70ch}
.hub-intro p{font-size:var(--fs-lg);color:var(--ink-2);line-height:1.6;font-weight:500}
@media (max-width:960px){.gc-index-hero{grid-template-columns:1fr}.gc-index-hero h1{max-width:none}.c-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#manifesto{grid-template-columns:1fr 1fr}.gc-rail{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.gc-index{padding:0 12px 48px}.gc-index-hero{padding:20px 0 0}.c-grid{grid-template-columns:1fr}#manifesto{grid-template-columns:1fr}.gc-index-facts{grid-template-columns:1fr 1fr}.s-head{grid-template-columns:1fr}.see-all{min-width:0}}

/* ── Embed mode ─────────────────────────────────────────────────────────── */
html.gc-embed,html.gc-embed body{min-height:0;height:auto;background:var(--sheet)}
html.gc-embed body{margin:0;padding:12px}
html.gc-embed .gc-topbar,html.gc-embed .gc-masthead,html.gc-embed .gc-breadcrumbs,html.gc-embed .gc-position-badge,html.gc-embed .gc-trust-banner,html.gc-embed .gc-market-context,html.gc-embed .gc-context,html.gc-embed .gc-human-first,html.gc-embed .gc-subtitle,html.gc-embed .gc-qa-section,html.gc-embed .gc-section-divider,html.gc-embed .gc-jump-grid,html.gc-embed .gc-content-divider,html.gc-embed .gc-seo-card,html.gc-embed .gc-content-card,html.gc-embed .gc-explorer,html.gc-embed .gc-related-inline,html.gc-embed .gc-interested-wrap,html.gc-embed .gc-rail-col,html.gc-embed .gc-footer,html.gc-embed [id^=gc-ad-],html.gc-embed .gc-rating,html.gc-embed .gc-privacy,html.gc-embed .gc-embed-offer,html.gc-embed .gc-scroll-top,html.gc-embed .gc-mini-result{display:none!important}
html.gc-embed .gc-page-with-rail{display:block;max-width:none;margin:0;padding:0}
html.gc-embed .gc-page-with-rail .gc-main-col .gc-page{max-width:none;margin:0;padding:0 0 8px}
#gc-embed-attrib{text-align:center;padding:12px 0 4px;font:700 12px/1.4 var(--mono)}

/* ── Motion, print, utilities ───────────────────────────────────────────── */
.gc-lazy{content-visibility:auto;contain-intrinsic-size:auto 200px}
.gc-lazy-sm{content-visibility:auto;contain-intrinsic-size:auto 100px}
.gc-seo-card.gc-lazy{contain-intrinsic-size:auto 88px}
@keyframes gc-fade-up{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes gc-qa-in{from{opacity:0}to{opacity:1}}
@keyframes gc-detail-in{from{opacity:0}to{opacity:1}}
@keyframes gc-shimmer{from{opacity:.6}to{opacity:1}}
@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.gc-live-dot{animation:pulse 2s infinite}
@media (prefers-reduced-motion:reduce){*,::before,::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{
  .gc-topbar,.gc-footer,[id^=gc-ad-],.gc-rail-col,.gc-house-ad,.gci-precision-bar,.gc-live-indicator,.gc-reset-btn,.gc-mini-btn,.gc-results-actions,.gc-content-card,.gc-seo-card,.gc-scenario-bar,.gc-qa-section,.gc-explorer,.gc-jump-grid,.gc-related-inline,.gc-interested-wrap,.gc-rating,.gc-mini-result,.gc-field-msg,.gc-scroll-top,.gc-embed-offer{display:none!important}
  html,body{background:#fff;color:#000}
  .gc-page-with-rail{display:block;padding:0}
  .gc-page{max-width:100%}
  .gc-card,.gc-results,.gc-chart-card{border:2px solid #000;break-inside:avoid}
  .gc-results-header,.gc-primary-result,.gc-period-grid{background:#fff!important;color:#000!important}
  canvas{max-height:200px}
}

/* ── v4.1 alive layer ───────────────────────────────────────────────────── */
:root{--gc-chart-1:var(--viz-cat);--gc-chart-2:var(--viz-super);--gc-chart-3:var(--viz-savings);--gc-chart-4:var(--viz-tax);--gc-chart-5:var(--viz-living-costs);--gc-chart-6:var(--viz-business);--gc-chart-7:var(--viz-debt);--gc-chart-8:var(--viz-health);--gc-chart-9:var(--viz-income)}
body:not([data-gc-cat]){--gc-chart-1:var(--viz-property)}
/* reveal: only elements below the fold get the class (no layout shift, no flash) */
html.gc-js .gc-reveal{opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s cubic-bezier(.2,.8,.2,1)}
html.gc-js .gc-reveal.gc-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html.gc-js .gc-reveal{opacity:1;transform:none;transition:none}}
/* hover lift: the block steps off the page and its category colour shows underneath */
.c-card,.gc-calc-card,.gc-related-inline-item,.gc-jump-item,.gc-rail a,.chip,.gc-mkt-head,.gc-index-markets a,.gs-item a,.gc-404-links a{transition:transform .14s cubic-bezier(.2,.8,.2,1),box-shadow .14s,background .12s,color .12s}
.c-card:hover,.gc-calc-card:hover,.gc-related-inline-item:hover,.gc-jump-item:hover,.gs-item a:hover,.gc-404-links a:hover{transform:translate(-3px,-3px);box-shadow:4px 4px 0 var(--cat)}
.chip:hover,.gc-index-markets a:hover,.gc-mkt-head:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}
.gc-rail a:hover{transform:translate(-3px,-3px);box-shadow:4px 4px 0 var(--ink);filter:none}
.gc-reveal.gc-in:hover{transition:transform .14s cubic-bezier(.2,.8,.2,1),box-shadow .14s}
/* homepage: signal field behind the hero */
.gc-index-hero{position:relative;isolation:isolate}
.gc-index-hero>*{position:relative;z-index:1}
.gc-hero-field{position:absolute;inset:-28px -20px 0;z-index:0!important;pointer-events:none;width:calc(100% + 40px);height:calc(100% + 28px)}
/* homepage market blocks */
.gc-mkts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.gc-mkt{display:flex;flex-direction:column;gap:var(--gap);min-width:0}
.gc-mkt-head{display:grid;grid-template-columns:1fr auto;grid-template-areas:"lab lab" "h2 num" "cta cta";gap:6px 12px;padding:16px 18px;background:var(--action);color:var(--canvas);text-decoration:none;min-height:150px;align-content:start}
.gc-mkt-head .gc-label{grid-area:lab;color:inherit;opacity:.9}
.gc-mkt-head h2{grid-area:h2;font-size:clamp(28px,3vw,40px);font-stretch:116%;margin:0;color:inherit;align-self:end}
.gc-mkt-head b{grid-area:num;font-family:var(--mono);font-size:clamp(28px,3vw,40px);font-weight:700;letter-spacing:-.05em;line-height:1;align-self:end}
.gc-mkt-cta{grid-area:cta;font:700 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:8px;border-top:2px solid rgba(255,255,255,.25);padding-top:10px}
:root[data-theme=dark] .gc-mkt-cta{border-color:rgba(0,0,0,.25)}
.gc-mkt-grid{display:grid;grid-template-columns:1fr;gap:var(--gap)}
.gc-mkt .c-card{min-height:76px}
.gc-index-home #manifesto{margin-top:32px}
@media (max-width:900px){.gc-mkts{grid-template-columns:1fr}.gc-mkt-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.gc-mkt-grid{grid-template-columns:1fr}}

/* ── Design-system pages (internal, noindex) ─────────────────────────────── */
.gc-viz-page .gc-index-hero h1{font-size:clamp(40px,6vw,84px)}
.gc-viz-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-top:var(--gap)}
.gc-viz-rule{background:var(--sheet);border:2px solid var(--rule);padding:16px 18px}
.gc-viz-rule p{font-size:var(--fs-sm);color:var(--ink-2);margin:6px 0 0;line-height:1.5;font-weight:500}
.gc-viz-group{padding-top:28px}
.gc-viz-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.gc-viz-card{margin:0;background:var(--sheet);border:2px solid var(--rule);padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.gc-viz-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.gc-viz-head h3{font-size:var(--fs-lg);margin:0;font-stretch:106%}
.gc-viz-card canvas{display:block;width:100%;height:230px;background:var(--sheet)}
.gc-viz-card figcaption p{font-size:var(--fs-sm);color:var(--ink-2);margin:0 0 8px;font-weight:500;line-height:1.45}
.gc-viz-card dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:var(--fs-xs)}
.gc-viz-card dt{font-family:var(--mono);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.gc-viz-card dd{margin:0;color:var(--ink-2);font-weight:500;overflow-wrap:anywhere}
.gc-viz-card code,.gc-viz-api code{font-family:var(--mono);font-size:11px}
.gc-viz-api{background:var(--sheet);border:2px solid var(--rule);padding:18px 20px}
.gc-viz-api pre{overflow-x:auto;padding:12px 14px;background:var(--sheet-2);border:2px solid var(--rule);margin:0 0 12px;font-size:12px;line-height:1.6}
.gc-viz-api p{font-size:var(--fs-sm);color:var(--ink-2);margin:0;font-weight:500}
@media (max-width:1000px){.gc-viz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gc-viz-rules{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.gc-viz-grid,.gc-viz-rules{grid-template-columns:1fr}}

/* ── v4.3 calm: active and primary controls carry the category colour; slate is for hover/secondary ── */
.gci-prec-btn.active,.gc-scen-tab.active,.gc-qa-chip[aria-selected=true],.gc-qa-chip.is-shared-active,.gc-etab.is-active,.gc-submit-btn,.gc-btn-primary,.gc-index-search button,.gs-filter.active,.gc-jump-item.is-active:after{background:var(--cat);color:var(--on-cat);border-color:var(--cat)}
.gc-submit-btn:hover,.gc-btn-primary:hover,.gc-index-search button:hover{background:var(--action);color:var(--on-action);border-color:var(--action)}
.gc-mini-result,.gc-group-label,.gc-static-header,.gc-mkt-head,.gc-bracket-badge{color:var(--on-action)}
/* hairline instead of ink where a rule only separates, never frames */
.gc-topbar{border-bottom-width:1.5px}
.gc-row{border-bottom-color:var(--rule-soft)}
.gc-chart-card,.gc-ecard,.gc-content-card,.gc-seo-card,.gc-qa-section{border-width:1.5px}
/* the dot grid and the hero field are texture, not ink */
:root{--dot:rgba(21,23,28,.11)}
:root[data-theme=dark]{--dot:rgba(236,238,242,.14)}
@media (prefers-color-scheme:dark){:root[data-theme=auto]{--dot:rgba(236,238,242,.14)}}
/* ── v4.3 hero field: a faded, out-of-focus 3D surface behind the words, never over them ── */
.gc-hero-field{filter:blur(1.6px) saturate(1.15);opacity:.5;transform:translateZ(0);transition:filter 1.4s ease,opacity 1.4s ease}
.gc-hero-field.is-figure{filter:blur(.6px) saturate(1.1);opacity:.6}
/* v4.4 alive field on category and calculator heroes: the drawing sits to the right of the words */
.gc-cat-hero,.gc-masthead{position:relative;isolation:isolate}
.gc-cat-hero>:not(.gc-hero-field),.gc-masthead>:not(.gc-hero-field){position:relative;z-index:1}
.gc-cat-hero .gc-hero-field,.gc-masthead .gc-hero-field{inset:0;width:100%;height:100%;filter:blur(1px);opacity:.4}
.gc-cat-hero .gc-hero-field.is-figure,.gc-masthead .gc-hero-field.is-figure{filter:blur(.3px);opacity:.5}
.gc-cat-hero .gc-hero-field{opacity:.34}.gc-cat-hero .gc-hero-field.is-figure{opacity:.48}
/* full-bleed field (v4.6): the runtime sets left/top/width/height inline; the drawing sits in the empty gutter beside the column, so it can be sharp */
.gc-hero-field.is-bleed{filter:blur(1.2px) saturate(1.15);opacity:.55}
.gc-hero-field.is-bleed.is-figure{filter:none;opacity:.92}
:root[data-theme=dark] .gc-hero-field.is-bleed.is-figure{opacity:.9}
@media (prefers-color-scheme:dark){:root[data-theme=auto] .gc-hero-field.is-bleed.is-figure{opacity:.9}}
:root[data-theme=dark] .gc-hero-field{opacity:.42}:root[data-theme=dark] .gc-hero-field.is-figure{opacity:.55}
@media (prefers-color-scheme:dark){:root[data-theme=auto] .gc-hero-field{opacity:.42}:root[data-theme=auto] .gc-hero-field.is-figure{opacity:.55}}
@media (max-width:640px){.gc-hero-field{opacity:.34;filter:blur(1.2px)}.gc-hero-field.is-figure{opacity:.42;filter:blur(.8px)}}
/* ── chart library: option notes ── */
.gc-viz-note{max-width:64ch;margin:12px 0 6px;color:var(--ink-2);font-size:var(--fs-base)}
/* ── chart interaction: readout tip, keyboard focus, touch scrub ── */
.gc-viz-tip{position:fixed;z-index:60;pointer-events:none;background:var(--sheet);color:var(--ink);border:2px solid var(--ink);padding:8px 10px;font:600 11px/1.5 var(--mono);letter-spacing:.01em;max-width:260px;box-shadow:4px 4px 0 var(--cat)}
.gc-viz-tip[hidden]{display:none}
.gc-viz-tip b{display:block;font-weight:700;margin-bottom:2px;color:var(--ink-2)}
.gc-viz-tip span{display:flex;align-items:center;gap:8px;white-space:nowrap}
.gc-viz-tip i{display:inline-block;width:9px;height:9px;flex:none}
.gc-viz-tip em{font-style:normal;margin-left:auto;padding-left:10px}
.gc-chart canvas,.gc-viz-card canvas{cursor:crosshair;touch-action:pan-y}
.gc-chart canvas:focus-visible,.gc-viz-card canvas:focus-visible{outline:3px solid var(--ink);outline-offset:3px}

/* ── v4.5 contrast: chart marks use the category colour where it clears 3:1 on the sheet, else a deeper twin (light only) ── */
:root{--viz-property:var(--c-property);--viz-tax:var(--c-tax);--viz-super:var(--c-super);--viz-debt:var(--c-debt);--viz-savings:#159a55;--viz-business:#c77d00;--viz-living-costs:#0a93cf;--viz-health:#0f9e6e;--viz-income:#729000;--viz-cat:var(--viz-property)}
:root:has(>body[data-gc-cat=property]),body[data-gc-cat=property],[data-cat=property]{--viz-cat:var(--viz-property)}:root:has(>body[data-gc-cat=tax]),body[data-gc-cat=tax],[data-cat=tax]{--viz-cat:var(--viz-tax)}:root:has(>body[data-gc-cat=income]),body[data-gc-cat=income],[data-cat=income]{--viz-cat:var(--viz-income)}:root:has(>body[data-gc-cat=savings]),body[data-gc-cat=savings],[data-cat=savings]{--viz-cat:var(--viz-savings)}:root:has(>body[data-gc-cat=super]),body[data-gc-cat=super],[data-cat=super]{--viz-cat:var(--viz-super)}:root:has(>body[data-gc-cat=pension]),body[data-gc-cat=pension],[data-cat=pension]{--viz-cat:var(--viz-super)}:root:has(>body[data-gc-cat=retirement]),body[data-gc-cat=retirement],[data-cat=retirement]{--viz-cat:var(--viz-super)}:root:has(>body[data-gc-cat=debt]),body[data-gc-cat=debt],[data-cat=debt]{--viz-cat:var(--viz-debt)}:root:has(>body[data-gc-cat=business]),body[data-gc-cat=business],[data-cat=business]{--viz-cat:var(--viz-business)}:root:has(>body[data-gc-cat=living-costs]),body[data-gc-cat=living-costs],[data-cat=living-costs]{--viz-cat:var(--viz-living-costs)}:root:has(>body[data-gc-cat=health]),body[data-gc-cat=health],[data-cat=health]{--viz-cat:var(--viz-health)}
:root[data-theme=dark]{--viz-property:#5d6cff;--viz-super:#9b7bff;--viz-savings:var(--c-savings);--viz-business:var(--c-business);--viz-living-costs:var(--c-living-costs);--viz-health:var(--c-health);--viz-income:var(--c-income)}
@media (prefers-color-scheme:dark){:root[data-theme=auto]{--viz-property:#5d6cff;--viz-super:#9b7bff;--viz-savings:var(--c-savings);--viz-business:var(--c-business);--viz-living-costs:var(--c-living-costs);--viz-health:var(--c-health);--viz-income:var(--c-income)}}
.gc-period-grid,.gc-freq-grid,.gc-primary-result,.gc-cat-hero,.gc-section-tag,.gc-qa-chip--insight,.gc-index-fact:first-child,.gc-rail a{--gc-success:currentColor;--gc-error:currentColor;--gc-warning:currentColor;--gc-text:currentColor;--gc-text-muted:currentColor;--gc-text-dim:currentColor;--good:currentColor;--bad:currentColor;--warn:currentColor}
.gc-footer{--gc-text:var(--canvas);--gc-text-muted:var(--canvas);--gc-text-dim:var(--canvas)}.gc-footer-founder{opacity:.9}
[data-gc-cat=property] .gc-period-label,[data-gc-cat=property] .gc-freq-label,[data-gc-cat=super] .gc-period-label,[data-gc-cat=super] .gc-freq-label,[data-gc-cat=pension] .gc-period-label,[data-gc-cat=pension] .gc-freq-label,[data-gc-cat=retirement] .gc-period-label,[data-gc-cat=retirement] .gc-freq-label{opacity:1}
button.gc-seg-btn.is-active{color:var(--on-cat)}
body .gc-period-grid,body .gc-freq-grid{background:var(--cat);color:var(--on-cat);gap:var(--gap);margin:0;border-radius:0}
body .gc-scen-actions button:hover{color:var(--ink);border-color:var(--ink)}body .gc-sensitivity-table td.highlight{color:var(--ink)}
/* the accessibility theme is always its own navy: the select arrow is white on it, whatever the OS says */
:root[data-theme=colourblind] select.gc-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23ffffff' stroke-width='2.4' fill='none'/%3E%3C/svg%3E")}
/* ── v4.5 contrast (2): cells recede away from their text ── */
body .gc-period-cell,body .gc-freq-cell{background:rgba(255,255,255,.2)}
body:is([data-gc-cat=property],[data-gc-cat=super],[data-gc-cat=pension],[data-gc-cat=retirement]) :is(.gc-period-cell,.gc-freq-cell){background:rgba(0,0,0,.2)}
.gc-position-badge{--gc-text:var(--on-cat);--gc-text-muted:var(--on-cat);--gc-text-dim:var(--on-cat)}
/* high contrast: nothing is dimmed — every secondary label prints at full strength; veils follow the fill's text colour */
:root[data-theme=colourblind] :is(.gc-results-title,.gc-primary-label,.gc-period-label,.gc-freq-label,.gc-qa-chip-income,.gc-mini-result-label,.gc-related-inline-item span,.gc-related-item span,.gc-interested-item span,.gc-fcol-head,.gc-label,.gc-rail a small,.gc-region-option-sub,.gc-footer-about,.gc-footer-copy,.gc-footer-legal a,.gc-footer-founder,.gc-static-meta,.gs-meta,.gc-calc-card-desc,.c-desc,.gs-snippet,.gc-cat-pill--muted,.gc-au-market-pill--muted,.gc-index-fact span,.gc-static-header p,.s-cnt,.gc-cat-hero .gc-breadcrumb,.gc-cat-hero .gc-breadcrumb a,.gc-breadcrumbs .sep,.c-tag,.gc-mkt-head .gc-label,.gc-qa-chip--primary .gc-qa-chip-income,.gc-scen-tab,.gc-etab){opacity:1}
/* every accessibility-theme block is light with black ink, so the cell veil is always the dark one */
:root[data-theme=colourblind] body :is(.gc-period-cell,.gc-freq-cell){background:rgba(0,0,0,.28)}
/* ── v4.5 contrast (3): inline colours the bundles and legacy markup still write ── */
/* a value printed inside a colour block keeps the block's text colour, whatever hex the bundle set on it */
.gc-primary-result .gc-primary-value,.gc-period-grid .gc-period-value,.gc-freq-grid .gc-freq-value,.gc-period-cell .gc-period-value,.gc-freq-cell .gc-freq-value{color:inherit!important}
/* legacy inline links style="color:var(--gc-primary)": ink with a category underline, not lime/pink text on the sheet */
a[style*="--gc-primary"]{text-decoration-color:var(--cat)}
/* legacy inline notes that dim an already-dim colour: style="color:var(--gc-text-dim);opacity:.7" */
[style*="--gc-text-dim"][style*="opacity"]{--gc-text-dim:var(--ink)}
/* ── v4.5 contrast (4): the category colour as *text* — clears 4.5:1 on the sheet (7:1 in High Contrast) ── */
:root{--text-property:var(--c-property);--text-tax:#c9350c;--text-income:#5f7a00;--text-savings:#0f7a42;--text-super:var(--c-super);--text-debt:#d1176a;--text-business:#9a6200;--text-living-costs:#0072a8;--text-health:#0f7a55;--cat-text:var(--text-property)}
:root[data-theme=dark]{--text-property:#8b96ff;--text-tax:#ff5f36;--text-income:var(--c-income);--text-savings:var(--c-savings);--text-super:#b39bff;--text-debt:#ff5a9e;--text-business:var(--c-business);--text-living-costs:var(--c-living-costs);--text-health:var(--c-health)}
@media (prefers-color-scheme:dark){:root[data-theme=auto]{--text-property:#8b96ff;--text-tax:#ff5f36;--text-income:var(--c-income);--text-savings:var(--c-savings);--text-super:#b39bff;--text-debt:#ff5a9e;--text-business:var(--c-business);--text-living-costs:var(--c-living-costs);--text-health:var(--c-health)}}
/* the accessibility theme's text twins are generated from its own palette (end of this file) — nothing hand-set here */
:root:has(>body[data-gc-cat=property]),body[data-gc-cat=property],[data-cat=property]{--cat-text:var(--text-property)}:root:has(>body[data-gc-cat=tax]),body[data-gc-cat=tax],[data-cat=tax]{--cat-text:var(--text-tax)}:root:has(>body[data-gc-cat=income]),body[data-gc-cat=income],[data-cat=income]{--cat-text:var(--text-income)}:root:has(>body[data-gc-cat=savings]),body[data-gc-cat=savings],[data-cat=savings]{--cat-text:var(--text-savings)}:root:has(>body[data-gc-cat=super]),body[data-gc-cat=super],[data-cat=super]{--cat-text:var(--text-super)}:root:has(>body[data-gc-cat=pension]),body[data-gc-cat=pension],[data-cat=pension]{--cat-text:var(--text-super)}:root:has(>body[data-gc-cat=retirement]),body[data-gc-cat=retirement],[data-cat=retirement]{--cat-text:var(--text-super)}:root:has(>body[data-gc-cat=debt]),body[data-gc-cat=debt],[data-cat=debt]{--cat-text:var(--text-debt)}:root:has(>body[data-gc-cat=business]),body[data-gc-cat=business],[data-cat=business]{--cat-text:var(--text-business)}:root:has(>body[data-gc-cat=living-costs]),body[data-gc-cat=living-costs],[data-cat=living-costs]{--cat-text:var(--text-living-costs)}:root:has(>body[data-gc-cat=health]),body[data-gc-cat=health],[data-cat=health]{--cat-text:var(--text-health)}
/* bundles highlight a key figure with style="color:var(--gc-primary)": on the sheet that reads as the text-safe category colour */
[style^="color: var(--gc-primary)" i],[style*="; color: var(--gc-primary)" i],[style^="color:var(--gc-primary)" i],[style*=";color:var(--gc-primary)" i]{--gc-primary:var(--cat-text)}
/* the 2025 palette hexes still written as inline text colours by 35–50 bundles */
[style^="color: #d29922" i],[style*="; color: #d29922" i],[style^="color:#d29922" i],[style*=";color:#d29922" i],[style^="color: rgb(210, 153, 34)" i],[style*="; color: rgb(210, 153, 34)" i],[style^="color:rgb(210, 153, 34)" i],[style*=";color:rgb(210, 153, 34)" i]{color:var(--warn)!important}
[style^="color: #3fb950" i],[style*="; color: #3fb950" i],[style^="color:#3fb950" i],[style*=";color:#3fb950" i],[style^="color: rgb(63, 185, 80)" i],[style*="; color: rgb(63, 185, 80)" i],[style^="color:rgb(63, 185, 80)" i],[style*=";color:rgb(63, 185, 80)" i]{color:var(--good)!important}
[style^="color: #f85149" i],[style*="; color: #f85149" i],[style^="color:#f85149" i],[style*=";color:#f85149" i],[style^="color: rgb(248, 81, 73)" i],[style*="; color: rgb(248, 81, 73)" i],[style^="color:rgb(248, 81, 73)" i],[style*=";color:rgb(248, 81, 73)" i]{color:var(--bad)!important}
[style^="color: #ff7b72" i],[style*="; color: #ff7b72" i],[style^="color:#ff7b72" i],[style*=";color:#ff7b72" i],[style^="color: rgb(255, 123, 114)" i],[style*="; color: rgb(255, 123, 114)" i],[style^="color:rgb(255, 123, 114)" i],[style*=";color:rgb(255, 123, 114)" i]{color:var(--bad)!important}
[style^="color: #4f8ff7" i],[style*="; color: #4f8ff7" i],[style^="color:#4f8ff7" i],[style*=";color:#4f8ff7" i],[style^="color: rgb(79, 143, 247)" i],[style*="; color: rgb(79, 143, 247)" i],[style^="color:rgb(79, 143, 247)" i],[style*=";color:rgb(79, 143, 247)" i]{color:var(--cat-text)!important}
[style^="color: #a78bfa" i],[style*="; color: #a78bfa" i],[style^="color:#a78bfa" i],[style*=";color:#a78bfa" i],[style^="color: rgb(167, 139, 250)" i],[style*="; color: rgb(167, 139, 250)" i],[style^="color:rgb(167, 139, 250)" i],[style*=";color:rgb(167, 139, 250)" i]{color:var(--cat-text)!important}
[style^="color: #58a6ff" i],[style*="; color: #58a6ff" i],[style^="color:#58a6ff" i],[style*=";color:#58a6ff" i],[style^="color: rgb(88, 166, 255)" i],[style*="; color: rgb(88, 166, 255)" i],[style^="color:rgb(88, 166, 255)" i],[style*=";color:rgb(88, 166, 255)" i]{color:var(--cat-text)!important}
[style^="color: #8b949e" i],[style*="; color: #8b949e" i],[style^="color:#8b949e" i],[style*=";color:#8b949e" i],[style^="color: rgb(139, 148, 158)" i],[style*="; color: rgb(139, 148, 158)" i],[style^="color:rgb(139, 148, 158)" i],[style*=";color:rgb(139, 148, 158)" i]{color:var(--ink-3)!important}
[style^="color: #6e7681" i],[style*="; color: #6e7681" i],[style^="color:#6e7681" i],[style*=";color:#6e7681" i],[style^="color: rgb(110, 118, 129)" i],[style*="; color: rgb(110, 118, 129)" i],[style^="color:rgb(110, 118, 129)" i],[style*=";color:rgb(110, 118, 129)" i]{color:var(--ink-3)!important}
[style^="color: #e6edf3" i],[style*="; color: #e6edf3" i],[style^="color:#e6edf3" i],[style*=";color:#e6edf3" i],[style^="color: rgb(230, 237, 243)" i],[style*="; color: rgb(230, 237, 243)" i],[style^="color:rgb(230, 237, 243)" i],[style*=";color:rgb(230, 237, 243)" i]{color:var(--ink)!important}
/* ── v4.5 contrast (5): last inline/runtime patterns from the site-wide scan ── */
.gc-section-tag[style*="#3fb950"],.gc-section-tag[style*="#a371f7"]{background:var(--cat)!important;color:var(--on-cat)!important}
span[style*="opacity:0.6"]{opacity:.8!important}
body .gc-seg label:has(input:checked){color:var(--cat-text)}

/* ═══ v5.0 device classes (2026-08-30) — designed per device, not merely reflowed (docs/device-matrix.json).
   Phones (≤640): a phone app — compact masthead, the first field on the first screen, 44px targets, no
   floating clutter. Tablets (641–1079): one wide column with a readable measure. Laptops (1080–1799): the
   1200 layout. Desktops: the column and the type scale up at ≥1800 (24"), ≥2200 (27" QHD / 32" 4K at 150%)
   and ≥3200 (32" 4K at 100%), keeping ≥240px gutters so the alive field stays beside the content.
   Gate: scripts/check-viewports.mjs. ═══ */

/* ── phones ── */
@media (max-width:640px){
  .gc-breadcrumbs{font-size:12px;margin-bottom:4px}
  .gc-masthead{padding:12px 0 8px;gap:8px}
  .gc-masthead h1{font-size:clamp(28px,8vw,34px);line-height:1.02;margin-top:0}
  .gc-masthead .gc-position-badge,.gc-page>.gc-position-badge{display:none}
  /* the long intro yields to two lines; the one-line human-first carries the page */
  .gc-masthead .gc-subtitle,.gc-page>.gc-subtitle{font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-2)}
  .gc-masthead .gc-human-first,.gc-page>.gc-human-first{font-size:15px;line-height:1.4;padding-left:10px;border-left-width:4px}
  .gci-precision-bar{gap:3px}
  .gci-prec-btn{min-height:44px;padding:8px 6px;font-size:12px;flex:1 1 0;letter-spacing:.03em}
  .gci-prec-desc{margin:4px 0 6px;font-size:12px}
  .gc-card{padding:14px}
  .gc-primary-result{padding:18px 16px 14px}
  /* the figure is the point of the page: the legacy gc-calc-scenarios.css (still loaded on ~64 pages) shrank it to 1.7rem under 640px */
  body .gc-primary-result .gc-primary-value{font-size:clamp(44px,12.5vw,60px)}
  .gc-fcol a,.gc-footer-sitemap a{min-height:44px;display:flex;align-items:center}
  .gc-feedback-manage{display:none!important}                                  /* feedback lives in the footer on a phone */
  .gc-privacy-manage{padding:8px 10px!important}
  .gc-footer-sitemap a,.gc-footer-legal a{min-height:44px;display:inline-flex;align-items:center}
}
/* ── nothing under 12px on any screen: the micro-labels move from 10–11px to 12px ── */
:root{--fs-xs:12px}
.c-tag,.gc-rail a small,.gc-mini-result-label,.gc-house-ad__eyebrow,.gc-qa-chip--insight::before,.gc-region-option-sub{font-size:12px}
.gc-privacy-manage,.gc-feedback-manage{font-size:12px!important;min-height:44px!important}
.gc-mkt-cta{font-size:12px}.gc-footer-feedback__eyebrow{font-size:12px!important}
.gc-privacy-badge{font-size:12px!important}
button.gc-footer-privacy-link.gc-footer-privacy-link{font:700 12px var(--mono)!important;min-height:44px!important;display:inline-flex!important;align-items:center!important}
.gc-footer-privacy-link,.gc-footer-legal a{display:inline-flex;align-items:center}
/* ── touch targets on every touch device (phones, tablets in either orientation) ── */
@media (pointer:coarse),(max-width:1079px){
  .gc-logo-link{min-height:44px;display:inline-flex;align-items:center}
  .gc-nav-toggle{width:44px;height:44px}
  .gc-region-btn,.gc-theme-btn-top,.gc-topbar-back{min-height:44px;min-width:44px}
  .chip,.gs-filter,.gc-qa-more-btn,.gci-prec-btn{min-height:44px}
  .gs-clear{min-width:44px;min-height:44px}
  .gc-footer-privacy-link,.gc-mini-btn,.gc-share-btn,.gc-footer-legal a{min-height:44px}
  .gc-fcol a,.gc-footer-sitemap a{min-height:44px;display:flex;align-items:center}
  .gc-cats-btn,.gc-cats-link{min-height:44px}
}
/* ── tablets ── */
@media (min-width:641px) and (max-width:1079px){
  :root{--fs-base:16px;--fs-sm:14px}
  .gc-page p,.gc-content-card p,.gc-seo-card p,.gc-qa-section p,.gc-cat-page p{max-width:68ch}
}
@media (min-width:900px) and (max-width:1079px){:root{--main:860px}}
/* ── search and category pages use the full column from a laptop up ── */
@media (min-width:1080px){
  .gs-page{max-width:var(--content)}
  .gs-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);border:0;background:transparent}
  .gs-item{border:2px solid var(--rule);background:var(--sheet)}
  .gs-item a,.gs-item:last-child a{border-bottom:0;height:100%}
  .gc-cat-page,#gcMain>.gc-cat-page{max-width:var(--content)}
  .gc-cat-page p{max-width:70ch}
  .gc-calc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  /* a readable measure however wide the column grows */
  .gc-page p,.gc-content-card p,.gc-seo-card p,.gc-qa-section p,.gc-subtitle,.gc-human-first{max-width:72ch}
}
/* ── desktops ── */
@media (min-width:1800px){:root{--content:1280px;--main:820px;--rail:320px}}
@media (min-width:2200px){
  :root{--content:1440px;--main:920px;--rail:360px;--fs-xs:12px;--fs-sm:14px;--fs-base:16px;--fs-md:17px;--fs-lg:18px;--fs-xl:21px;--fs-h3:24px;--fs-h2:33px;--fs-h1:clamp(40px,3.4vw,66px);--fs-hero:clamp(56px,5.2vw,116px)}
  .gc-topbar-inner{height:64px}.gc-tnav-link{font-size:14px}
  .gc-input{min-height:56px;font-size:21px}
  body .gc-chart{height:300px}
  .c-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gs-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gc-calc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gc-index-hero h1{font-size:clamp(48px,4.6vw,100px)}
  .gc-cat-hero h1{font-size:clamp(48px,4.4vw,84px)}
}
@media (min-width:3200px){
  :root{--content:1760px;--main:1120px;--rail:440px;--fs-xs:13px;--fs-sm:16px;--fs-base:18px;--fs-md:19px;--fs-lg:21px;--fs-xl:24px;--fs-h3:27px;--fs-h2:38px;--fs-h1:clamp(48px,2.6vw,84px);--fs-hero:clamp(64px,4.2vw,140px)}
  .gc-topbar-inner{height:72px}.gc-tnav-link{font-size:16px}
  .gc-input{min-height:62px;font-size:24px}
  body .gc-chart{height:340px}
  .c-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .gs-list{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gc-index-hero h1{font-size:clamp(56px,3.6vw,120px)}
  .gc-cat-hero h1{font-size:clamp(56px,3.2vw,100px)}
}
/* the runtime-injected footer feedback / privacy card set several labels at 10–11px */
.gc-footer-feedback .gc-privacy-badge, .gc-privacy-card .gc-privacy-badge,
.gc-footer-feedback .gc-footer-feedback__eyebrow, .gc-privacy-card .gc-footer-feedback__eyebrow{font-size:12px!important}
.gc-footer-feedback a.gc-footer-feedback__primary.gc-footer-feedback__primary,.gc-footer-feedback a.gc-footer-feedback__secondary.gc-footer-feedback__secondary,.gc-footer-feedback .gc-footer-feedback__actions a{font-size:12px!important;min-height:44px!important}
.gc-footer-founder{font-size:12px!important}
/* ▼ GENERATED category colours — by scripts/design/build-colour-system.mjs from docs/colour-system/categories.json; do not edit by hand ▼
   12 nameable pastels applied by rule to 45 categories (and 1125 subcategories in docs/colour-system/sub/<category>.css).
   --p-<colour> is the block, --p-<colour>-on the text on it, --p-<colour>-text the colour as text on the sheet (≥4.5:1, ≥7:1 in
   the accessibility theme, which paints its own twelve colours on its own navy ground), --p-<colour>-mark the colour as a chart
   mark (≥3:1, ≥4.5:1 in the accessibility theme). --c/--on/--text/--viz-<category> are the aliases the
   stylesheet and runtimes read; [data-gc-cat] maps set --cat, --on-cat, --cat-text, --viz-cat and the nine chart slots. */
:root{--p-sky:#a1d7fe;--p-sky-on:#15171c;--p-sky-text:#1077ae;--p-sky-mark:#4695c9;--p-periwinkle:#c0c5ff;--p-periwinkle-on:#15171c;--p-periwinkle-text:#6669b8;--p-periwinkle-mark:#8388d2;--p-lavender:#e9bffc;--p-lavender-on:#15171c;--p-lavender-text:#8f5da5;--p-lavender-mark:#ab7cc0;--p-rose:#fcbbd7;--p-rose-on:#15171c;--p-rose-text:#a9557c;--p-rose-mark:#c6759a;--p-peach:#fdc7be;--p-peach-on:#15171c;--p-peach-text:#b05649;--p-peach-mark:#cc7769;--p-apricot:#fdc89b;--p-apricot-on:#15171c;--p-apricot-text:#a46015;--p-apricot-mark:#c08044;--p-lemon:#f7e693;--p-lemon-on:#15171c;--p-lemon-text:#827005;--p-lemon-mark:#a08e36;--p-lime:#c9ec9d;--p-lime-on:#15171c;--p-lime-text:#597a24;--p-lime-mark:#78984c;--p-mint:#a4eec3;--p-mint-on:#15171c;--p-mint-text:#108051;--p-mint-mark:#479e71;--p-aqua:#8ceaef;--p-aqua-on:#15171c;--p-aqua-text:#097d83;--p-aqua-mark:#1e9da4;--p-sand:#e7d9bd;--p-sand-on:#15171c;--p-sand-text:#8f6b04;--p-sand-mark:#ad8935;--p-slate:#c0ccd9;--p-slate-on:#15171c;--p-slate-text:#3174b3;--p-slate-mark:#5792cf;--c-income:var(--p-sky);--on-income:var(--p-sky-on);--text-income:var(--p-sky-text);--viz-income:var(--p-sky-mark);--c-tax:var(--p-apricot);--on-tax:var(--p-apricot-on);--text-tax:var(--p-apricot-text);--viz-tax:var(--p-apricot-mark);--c-personal-finance:var(--p-sand);--on-personal-finance:var(--p-sand-on);--text-personal-finance:var(--p-sand-text);--viz-personal-finance:var(--p-sand-mark);--c-banking-credit:var(--p-rose);--on-banking-credit:var(--p-rose-on);--text-banking-credit:var(--p-rose-text);--viz-banking-credit:var(--p-rose-mark);--c-debt:var(--p-mint);--on-debt:var(--p-mint-on);--text-debt:var(--p-mint-text);--viz-debt:var(--p-mint-mark);--c-property:var(--p-periwinkle);--on-property:var(--p-periwinkle-on);--text-property:var(--p-periwinkle-text);--viz-property:var(--p-periwinkle-mark);--c-mortgages:var(--p-lemon);--on-mortgages:var(--p-lemon-on);--text-mortgages:var(--p-lemon-text);--viz-mortgages:var(--p-lemon-mark);--c-savings:var(--p-slate);--on-savings:var(--p-slate-on);--text-savings:var(--p-slate-text);--viz-savings:var(--p-slate-mark);--c-super:var(--p-peach);--on-super:var(--p-peach-on);--text-super:var(--p-peach-text);--viz-super:var(--p-peach-mark);--c-insurance:var(--p-aqua);--on-insurance:var(--p-aqua-on);--text-insurance:var(--p-aqua-text);--viz-insurance:var(--p-aqua-mark);--c-business:var(--p-lavender);--on-business:var(--p-lavender-on);--text-business:var(--p-lavender-text);--viz-business:var(--p-lavender-mark);--c-accounting-bookkeeping:var(--p-lime);--on-accounting-bookkeeping:var(--p-lime-on);--text-accounting-bookkeeping:var(--p-lime-text);--viz-accounting-bookkeeping:var(--p-lime-mark);--c-hr-workforce:var(--p-sky);--on-hr-workforce:var(--p-sky-on);--text-hr-workforce:var(--p-sky-text);--viz-hr-workforce:var(--p-sky-mark);--c-entrepreneurship-freelance:var(--p-apricot);--on-entrepreneurship-freelance:var(--p-apricot-on);--text-entrepreneurship-freelance:var(--p-apricot-text);--viz-entrepreneurship-freelance:var(--p-apricot-mark);--c-ecommerce-retail:var(--p-sand);--on-ecommerce-retail:var(--p-sand-on);--text-ecommerce-retail:var(--p-sand-text);--viz-ecommerce-retail:var(--p-sand-mark);--c-marketing-growth:var(--p-rose);--on-marketing-growth:var(--p-rose-on);--text-marketing-growth:var(--p-rose-text);--viz-marketing-growth:var(--p-rose-mark);--c-product-saas:var(--p-mint);--on-product-saas:var(--p-mint-on);--text-product-saas:var(--p-mint-text);--viz-product-saas:var(--p-mint-mark);--c-legal-compliance:var(--p-periwinkle);--on-legal-compliance:var(--p-periwinkle-on);--text-legal-compliance:var(--p-periwinkle-text);--viz-legal-compliance:var(--p-periwinkle-mark);--c-education-study:var(--p-lemon);--on-education-study:var(--p-lemon-on);--text-education-study:var(--p-lemon-text);--viz-education-study:var(--p-lemon-mark);--c-time-productivity:var(--p-slate);--on-time-productivity:var(--p-slate-on);--text-time-productivity:var(--p-slate-text);--viz-time-productivity:var(--p-slate-mark);--c-health:var(--p-peach);--on-health:var(--p-peach-on);--text-health:var(--p-peach-text);--viz-health:var(--p-peach-mark);--c-fitness-performance:var(--p-aqua);--on-fitness-performance:var(--p-aqua-on);--text-fitness-performance:var(--p-aqua-text);--viz-fitness-performance:var(--p-aqua-mark);--c-food-nutrition:var(--p-lavender);--on-food-nutrition:var(--p-lavender-on);--text-food-nutrition:var(--p-lavender-text);--viz-food-nutrition:var(--p-lavender-mark);--c-events-planning:var(--p-lime);--on-events-planning:var(--p-lime-on);--text-events-planning:var(--p-lime-text);--viz-events-planning:var(--p-lime-mark);--c-sports-games:var(--p-sky);--on-sports-games:var(--p-sky-on);--text-sports-games:var(--p-sky-text);--viz-sports-games:var(--p-sky-mark);--c-living-costs:var(--p-apricot);--on-living-costs:var(--p-apricot-on);--text-living-costs:var(--p-apricot-text);--viz-living-costs:var(--p-apricot-mark);--c-travel-transport:var(--p-sand);--on-travel-transport:var(--p-sand-on);--text-travel-transport:var(--p-sand-text);--viz-travel-transport:var(--p-sand-mark);--c-vehicles-automotive:var(--p-rose);--on-vehicles-automotive:var(--p-rose-on);--text-vehicles-automotive:var(--p-rose-text);--viz-vehicles-automotive:var(--p-rose-mark);--c-energy-utilities:var(--p-mint);--on-energy-utilities:var(--p-mint-on);--text-energy-utilities:var(--p-mint-text);--viz-energy-utilities:var(--p-mint-mark);--c-environment-climate:var(--p-periwinkle);--on-environment-climate:var(--p-periwinkle-on);--text-environment-climate:var(--p-periwinkle-text);--viz-environment-climate:var(--p-periwinkle-mark);--c-construction-building:var(--p-lemon);--on-construction-building:var(--p-lemon-on);--text-construction-building:var(--p-lemon-text);--viz-construction-building:var(--p-lemon-mark);--c-engineering-mechanics:var(--p-slate);--on-engineering-mechanics:var(--p-slate-on);--text-engineering-mechanics:var(--p-slate-text);--viz-engineering-mechanics:var(--p-slate-mark);--c-science-chemistry:var(--p-peach);--on-science-chemistry:var(--p-peach-on);--text-science-chemistry:var(--p-peach-text);--viz-science-chemistry:var(--p-peach-mark);--c-math-statistics:var(--p-aqua);--on-math-statistics:var(--p-aqua-on);--text-math-statistics:var(--p-aqua-text);--viz-math-statistics:var(--p-aqua-mark);--c-units-conversions:var(--p-lavender);--on-units-conversions:var(--p-lavender-on);--text-units-conversions:var(--p-lavender-text);--viz-units-conversions:var(--p-lavender-mark);--c-physics:var(--p-lime);--on-physics:var(--p-lime-on);--text-physics:var(--p-lime-text);--viz-physics:var(--p-lime-mark);--c-biology:var(--p-sky);--on-biology:var(--p-sky-on);--text-biology:var(--p-sky-text);--viz-biology:var(--p-sky-mark);--c-manufacturing-industry:var(--p-apricot);--on-manufacturing-industry:var(--p-apricot-on);--text-manufacturing-industry:var(--p-apricot-text);--viz-manufacturing-industry:var(--p-apricot-mark);--c-technology-it:var(--p-sand);--on-technology-it:var(--p-sand-on);--text-technology-it:var(--p-sand-text);--viz-technology-it:var(--p-sand-mark);--c-ai-machine-learning:var(--p-rose);--on-ai-machine-learning:var(--p-rose-on);--text-ai-machine-learning:var(--p-rose-text);--viz-ai-machine-learning:var(--p-rose-mark);--c-government-public-policy:var(--p-mint);--on-government-public-policy:var(--p-mint-on);--text-government-public-policy:var(--p-mint-text);--viz-government-public-policy:var(--p-mint-mark);--c-urban-planning-cities:var(--p-periwinkle);--on-urban-planning-cities:var(--p-periwinkle-on);--text-urban-planning-cities:var(--p-periwinkle-text);--viz-urban-planning-cities:var(--p-periwinkle-mark);--c-architecture-design:var(--p-lemon);--on-architecture-design:var(--p-lemon-on);--text-architecture-design:var(--p-lemon-text);--viz-architecture-design:var(--p-lemon-mark);--c-astronomy-space:var(--p-slate);--on-astronomy-space:var(--p-slate-on);--text-astronomy-space:var(--p-slate-text);--viz-astronomy-space:var(--p-slate-mark);--c-meta-calculators:var(--p-peach);--on-meta-calculators:var(--p-peach-on);--text-meta-calculators:var(--p-peach-text);--viz-meta-calculators:var(--p-peach-mark)}
:root[data-theme=dark]{--p-sky:#a1d7fe;--p-sky-on:#15171c;--p-sky-text:#a1d7fe;--p-sky-mark:#a2d7fd;--p-periwinkle:#c0c5ff;--p-periwinkle-on:#15171c;--p-periwinkle-text:#c0c6fd;--p-periwinkle-mark:#c0c6fc;--p-lavender:#e9bffc;--p-lavender-on:#15171c;--p-lavender-text:#e9befd;--p-lavender-mark:#e9bffc;--p-rose:#fcbbd7;--p-rose-on:#15171c;--p-rose-text:#fdbbd7;--p-rose-mark:#fcbbd7;--p-peach:#fdc7be;--p-peach-on:#15171c;--p-peach-text:#fcc7be;--p-peach-mark:#ffc6bc;--p-apricot:#fdc89b;--p-apricot-on:#15171c;--p-apricot-text:#fdc99c;--p-apricot-mark:#ffc898;--p-lemon:#f7e693;--p-lemon-on:#15171c;--p-lemon-text:#fae685;--p-lemon-mark:#f8e68e;--p-lime:#c9ec9d;--p-lime-on:#15171c;--p-lime-text:#c7ee96;--p-lime-mark:#c9ec9d;--p-mint:#a4eec3;--p-mint-on:#15171c;--p-mint-text:#92f3bc;--p-mint-mark:#9af1bf;--p-aqua:#8ceaef;--p-aqua-on:#15171c;--p-aqua-text:#64eff7;--p-aqua-mark:#73eef4;--p-sand:#e7d9bd;--p-sand-on:#15171c;--p-sand-text:#fdd582;--p-sand-mark:#fcd583;--p-slate:#c0ccd9;--p-slate-on:#15171c;--p-slate-text:#a4cffc;--p-slate-mark:#a2cfff}
@media (prefers-color-scheme:dark){:root[data-theme=auto]{--p-sky:#a1d7fe;--p-sky-on:#15171c;--p-sky-text:#a1d7fe;--p-sky-mark:#a2d7fd;--p-periwinkle:#c0c5ff;--p-periwinkle-on:#15171c;--p-periwinkle-text:#c0c6fd;--p-periwinkle-mark:#c0c6fc;--p-lavender:#e9bffc;--p-lavender-on:#15171c;--p-lavender-text:#e9befd;--p-lavender-mark:#e9bffc;--p-rose:#fcbbd7;--p-rose-on:#15171c;--p-rose-text:#fdbbd7;--p-rose-mark:#fcbbd7;--p-peach:#fdc7be;--p-peach-on:#15171c;--p-peach-text:#fcc7be;--p-peach-mark:#ffc6bc;--p-apricot:#fdc89b;--p-apricot-on:#15171c;--p-apricot-text:#fdc99c;--p-apricot-mark:#ffc898;--p-lemon:#f7e693;--p-lemon-on:#15171c;--p-lemon-text:#fae685;--p-lemon-mark:#f8e68e;--p-lime:#c9ec9d;--p-lime-on:#15171c;--p-lime-text:#c7ee96;--p-lime-mark:#c9ec9d;--p-mint:#a4eec3;--p-mint-on:#15171c;--p-mint-text:#92f3bc;--p-mint-mark:#9af1bf;--p-aqua:#8ceaef;--p-aqua-on:#15171c;--p-aqua-text:#64eff7;--p-aqua-mark:#73eef4;--p-sand:#e7d9bd;--p-sand-on:#15171c;--p-sand-text:#fdd582;--p-sand-mark:#fcd583;--p-slate:#c0ccd9;--p-slate-on:#15171c;--p-slate-text:#a4cffc;--p-slate-mark:#a2cfff}}
/* the accessibility theme is one scheme on its own ground — it does not follow the OS colour scheme */
:root[data-theme=colourblind]{--p-sky:#73b6fa;--p-sky-on:#000000;--p-sky-text:#73b6fa;--p-sky-mark:#73b6fa;--p-periwinkle:#9c96fb;--p-periwinkle-on:#000000;--p-periwinkle-text:#aca8fb;--p-periwinkle-mark:#9c96fb;--p-lavender:#d6a0fd;--p-lavender-on:#000000;--p-lavender-text:#d6a0fd;--p-lavender-mark:#d6a0fd;--p-rose:#f881b3;--p-rose-on:#000000;--p-rose-text:#fe8ebb;--p-rose-mark:#f881b3;--p-peach:#fdaca4;--p-peach-on:#000000;--p-peach-text:#fdaca4;--p-peach-mark:#fdaca4;--p-apricot:#fdbf95;--p-apricot-on:#000000;--p-apricot-text:#fdbf95;--p-apricot-mark:#fdbf95;--p-lemon:#fee5b1;--p-lemon-on:#000000;--p-lemon-text:#fee5b1;--p-lemon-mark:#fee5b1;--p-lime:#d8e75e;--p-lime-on:#000000;--p-lime-text:#d8e75e;--p-lime-mark:#d8e75e;--p-mint:#85e189;--p-mint-on:#000000;--p-mint-text:#85e189;--p-mint-mark:#85e189;--p-aqua:#73edd7;--p-aqua-on:#000000;--p-aqua-text:#6ceed7;--p-aqua-mark:#73edd7;--p-sand:#99eefd;--p-sand-on:#000000;--p-sand-text:#94efff;--p-sand-mark:#95effe;--p-slate:#feccf1;--p-slate-on:#000000;--p-slate-text:#fdcdf1;--p-slate-mark:#ffccf2}
:root:has(>body[data-gc-cat=income]),body[data-gc-cat=income],[data-cat=income]{--cat:var(--p-sky);--on-cat:var(--p-sky-on);--cat-text:var(--p-sky-text);--viz-cat:var(--p-sky-mark);--cat-parent:var(--p-sky);--gc-chart-1:var(--p-sky-mark);--gc-chart-2:var(--p-apricot-mark);--gc-chart-3:var(--p-sand-mark);--gc-chart-4:var(--p-rose-mark);--gc-chart-5:var(--p-mint-mark);--gc-chart-6:var(--p-periwinkle-mark);--gc-chart-7:var(--p-lemon-mark);--gc-chart-8:var(--p-slate-mark);--gc-chart-9:var(--p-peach-mark)}
:root:has(>body[data-gc-cat=tax]),body[data-gc-cat=tax],[data-cat=tax]{--cat:var(--p-apricot);--on-cat:var(--p-apricot-on);--cat-text:var(--p-apricot-text);--viz-cat:var(--p-apricot-mark);--cat-parent:var(--p-apricot);--gc-chart-1:var(--p-apricot-mark);--gc-chart-2:var(--p-sand-mark);--gc-chart-3:var(--p-rose-mark);--gc-chart-4:var(--p-mint-mark);--gc-chart-5:var(--p-periwinkle-mark);--gc-chart-6:var(--p-lemon-mark);--gc-chart-7:var(--p-slate-mark);--gc-chart-8:var(--p-peach-mark);--gc-chart-9:var(--p-aqua-mark)}
:root:has(>body[data-gc-cat=personal-finance]),body[data-gc-cat=personal-finance],[data-cat=personal-finance]{--cat:var(--p-sand);--on-cat:var(--p-sand-on);--cat-text:var(--p-sand-text);--viz-cat:var(--p-sand-mark);--cat-parent:var(--p-sand);--gc-chart-1:var(--p-sand-mark);--gc-chart-2:var(--p-rose-mark);--gc-chart-3:var(--p-mint-mark);--gc-chart-4:var(--p-periwinkle-mark);--gc-chart-5:var(--p-lemon-mark);--gc-chart-6:var(--p-slate-mark);--gc-chart-7:var(--p-peach-mark);--gc-chart-8:var(--p-aqua-mark);--gc-chart-9:var(--p-lavender-mark)}
:root:has(>body[data-gc-cat=banking-credit]),body[data-gc-cat=banking-credit],[data-cat=banking-credit]{--cat:var(--p-rose);--on-cat:var(--p-rose-on);--cat-text:var(--p-rose-text);--viz-cat:var(--p-rose-mark);--cat-parent:var(--p-rose);--gc-chart-1:var(--p-rose-mark);--gc-chart-2:var(--p-mint-mark);--gc-chart-3:var(--p-periwinkle-mark);--gc-chart-4:var(--p-lemon-mark);--gc-chart-5:var(--p-slate-mark);--gc-chart-6:var(--p-peach-mark);--gc-chart-7:var(--p-aqua-mark);--gc-chart-8:var(--p-lavender-mark);--gc-chart-9:var(--p-lime-mark)}
:root:has(>body[data-gc-cat=debt]),body[data-gc-cat=debt],[data-cat=debt]{--cat:var(--p-mint);--on-cat:var(--p-mint-on);--cat-text:var(--p-mint-text);--viz-cat:var(--p-mint-mark);--cat-parent:var(--p-mint);--gc-chart-1:var(--p-mint-mark);--gc-chart-2:var(--p-periwinkle-mark);--gc-chart-3:var(--p-lemon-mark);--gc-chart-4:var(--p-slate-mark);--gc-chart-5:var(--p-peach-mark);--gc-chart-6:var(--p-aqua-mark);--gc-chart-7:var(--p-lavender-mark);--gc-chart-8:var(--p-lime-mark);--gc-chart-9:var(--p-sky-mark)}
:root:has(>body[data-gc-cat=property]),body[data-gc-cat=property],[data-cat=property]{--cat:var(--p-periwinkle);--on-cat:var(--p-periwinkle-on);--cat-text:var(--p-periwinkle-text);--viz-cat:var(--p-periwinkle-mark);--cat-parent:var(--p-periwinkle);--gc-chart-1:var(--p-periwinkle-mark);--gc-chart-2:var(--p-lemon-mark);--gc-chart-3:var(--p-slate-mark);--gc-chart-4:var(--p-peach-mark);--gc-chart-5:var(--p-aqua-mark);--gc-chart-6:var(--p-lavender-mark);--gc-chart-7:var(--p-lime-mark);--gc-chart-8:var(--p-sky-mark);--gc-chart-9:var(--p-apricot-mark)}
:root:has(>body[data-gc-cat=mortgages]),body[data-gc-cat=mortgages],[data-cat=mortgages]{--cat:var(--p-lemon);--on-cat:var(--p-lemon-on);--cat-text:var(--p-lemon-text);--viz-cat:var(--p-lemon-mark);--cat-parent:var(--p-lemon);--gc-chart-1:var(--p-lemon-mark);--gc-chart-2:var(--p-slate-mark);--gc-chart-3:var(--p-peach-mark);--gc-chart-4:var(--p-aqua-mark);--gc-chart-5:var(--p-lavender-mark);--gc-chart-6:var(--p-lime-mark);--gc-chart-7:var(--p-sky-mark);--gc-chart-8:var(--p-apricot-mark);--gc-chart-9:var(--p-sand-mark)}
:root:has(>body[data-gc-cat=savings]),body[data-gc-cat=savings],[data-cat=savings]{--cat:var(--p-slate);--on-cat:var(--p-slate-on);--cat-text:var(--p-slate-text);--viz-cat:var(--p-slate-mark);--cat-parent:var(--p-slate);--gc-chart-1:var(--p-slate-mark);--gc-chart-2:var(--p-peach-mark);--gc-chart-3:var(--p-aqua-mark);--gc-chart-4:var(--p-lavender-mark);--gc-chart-5:var(--p-lime-mark);--gc-chart-6:var(--p-sky-mark);--gc-chart-7:var(--p-apricot-mark);--gc-chart-8:var(--p-sand-mark);--gc-chart-9:var(--p-rose-mark)}
:root:has(>body[data-gc-cat=super]),body[data-gc-cat=super],[data-cat=super]{--cat:var(--p-peach);--on-cat:var(--p-peach-on);--cat-text:var(--p-peach-text);--viz-cat:var(--p-peach-mark);--cat-parent:var(--p-peach);--gc-chart-1:var(--p-peach-mark);--gc-chart-2:var(--p-aqua-mark);--gc-chart-3:var(--p-lavender-mark);--gc-chart-4:var(--p-lime-mark);--gc-chart-5:var(--p-sky-mark);--gc-chart-6:var(--p-apricot-mark);--gc-chart-7:var(--p-sand-mark);--gc-chart-8:var(--p-rose-mark);--gc-chart-9:var(--p-mint-mark)}
:root:has(>body[data-gc-cat=insurance]),body[data-gc-cat=insurance],[data-cat=insurance]{--cat:var(--p-aqua);--on-cat:var(--p-aqua-on);--cat-text:var(--p-aqua-text);--viz-cat:var(--p-aqua-mark);--cat-parent:var(--p-aqua);--gc-chart-1:var(--p-aqua-mark);--gc-chart-2:var(--p-lavender-mark);--gc-chart-3:var(--p-lime-mark);--gc-chart-4:var(--p-sky-mark);--gc-chart-5:var(--p-apricot-mark);--gc-chart-6:var(--p-sand-mark);--gc-chart-7:var(--p-rose-mark);--gc-chart-8:var(--p-mint-mark);--gc-chart-9:var(--p-periwinkle-mark)}
:root:has(>body[data-gc-cat=business]),body[data-gc-cat=business],[data-cat=business]{--cat:var(--p-lavender);--on-cat:var(--p-lavender-on);--cat-text:var(--p-lavender-text);--viz-cat:var(--p-lavender-mark);--cat-parent:var(--p-lavender);--gc-chart-1:var(--p-lavender-mark);--gc-chart-2:var(--p-lime-mark);--gc-chart-3:var(--p-sky-mark);--gc-chart-4:var(--p-apricot-mark);--gc-chart-5:var(--p-sand-mark);--gc-chart-6:var(--p-rose-mark);--gc-chart-7:var(--p-mint-mark);--gc-chart-8:var(--p-periwinkle-mark);--gc-chart-9:var(--p-lemon-mark)}
:root:has(>body[data-gc-cat=accounting-bookkeeping]),body[data-gc-cat=accounting-bookkeeping],[data-cat=accounting-bookkeeping]{--cat:var(--p-lime);--on-cat:var(--p-lime-on);--cat-text:var(--p-lime-text);--viz-cat:var(--p-lime-mark);--cat-parent:var(--p-lime);--gc-chart-1:var(--p-lime-mark);--gc-chart-2:var(--p-sky-mark);--gc-chart-3:var(--p-apricot-mark);--gc-chart-4:var(--p-sand-mark);--gc-chart-5:var(--p-rose-mark);--gc-chart-6:var(--p-mint-mark);--gc-chart-7:var(--p-periwinkle-mark);--gc-chart-8:var(--p-lemon-mark);--gc-chart-9:var(--p-slate-mark)}
:root:has(>body[data-gc-cat=hr-workforce]),body[data-gc-cat=hr-workforce],[data-cat=hr-workforce]{--cat:var(--p-sky);--on-cat:var(--p-sky-on);--cat-text:var(--p-sky-text);--viz-cat:var(--p-sky-mark);--cat-parent:var(--p-sky);--gc-chart-1:var(--p-sky-mark);--gc-chart-2:var(--p-apricot-mark);--gc-chart-3:var(--p-sand-mark);--gc-chart-4:var(--p-rose-mark);--gc-chart-5:var(--p-mint-mark);--gc-chart-6:var(--p-periwinkle-mark);--gc-chart-7:var(--p-lemon-mark);--gc-chart-8:var(--p-slate-mark);--gc-chart-9:var(--p-peach-mark)}
:root:has(>body[data-gc-cat=entrepreneurship-freelance]),body[data-gc-cat=entrepreneurship-freelance],[data-cat=entrepreneurship-freelance]{--cat:var(--p-apricot);--on-cat:var(--p-apricot-on);--cat-text:var(--p-apricot-text);--viz-cat:var(--p-apricot-mark);--cat-parent:var(--p-apricot);--gc-chart-1:var(--p-apricot-mark);--gc-chart-2:var(--p-sand-mark);--gc-chart-3:var(--p-rose-mark);--gc-chart-4:var(--p-mint-mark);--gc-chart-5:var(--p-periwinkle-mark);--gc-chart-6:var(--p-lemon-mark);--gc-chart-7:var(--p-slate-mark);--gc-chart-8:var(--p-peach-mark);--gc-chart-9:var(--p-aqua-mark)}
:root:has(>body[data-gc-cat=ecommerce-retail]),body[data-gc-cat=ecommerce-retail],[data-cat=ecommerce-retail]{--cat:var(--p-sand);--on-cat:var(--p-sand-on);--cat-text:var(--p-sand-text);--viz-cat:var(--p-sand-mark);--cat-parent:var(--p-sand);--gc-chart-1:var(--p-sand-mark);--gc-chart-2:var(--p-rose-mark);--gc-chart-3:var(--p-mint-mark);--gc-chart-4:var(--p-periwinkle-mark);--gc-chart-5:var(--p-lemon-mark);--gc-chart-6:var(--p-slate-mark);--gc-chart-7:var(--p-peach-mark);--gc-chart-8:var(--p-aqua-mark);--gc-chart-9:var(--p-lavender-mark)}
:root:has(>body[data-gc-cat=marketing-growth]),body[data-gc-cat=marketing-growth],[data-cat=marketing-growth]{--cat:var(--p-rose);--on-cat:var(--p-rose-on);--cat-text:var(--p-rose-text);--viz-cat:var(--p-rose-mark);--cat-parent:var(--p-rose);--gc-chart-1:var(--p-rose-mark);--gc-chart-2:var(--p-mint-mark);--gc-chart-3:var(--p-periwinkle-mark);--gc-chart-4:var(--p-lemon-mark);--gc-chart-5:var(--p-slate-mark);--gc-chart-6:var(--p-peach-mark);--gc-chart-7:var(--p-aqua-mark);--gc-chart-8:var(--p-lavender-mark);--gc-chart-9:var(--p-lime-mark)}
:root:has(>body[data-gc-cat=product-saas]),body[data-gc-cat=product-saas],[data-cat=product-saas]{--cat:var(--p-mint);--on-cat:var(--p-mint-on);--cat-text:var(--p-mint-text);--viz-cat:var(--p-mint-mark);--cat-parent:var(--p-mint);--gc-chart-1:var(--p-mint-mark);--gc-chart-2:var(--p-periwinkle-mark);--gc-chart-3:var(--p-lemon-mark);--gc-chart-4:var(--p-slate-mark);--gc-chart-5:var(--p-peach-mark);--gc-chart-6:var(--p-aqua-mark);--gc-chart-7:var(--p-lavender-mark);--gc-chart-8:var(--p-lime-mark);--gc-chart-9:var(--p-sky-mark)}
:root:has(>body[data-gc-cat=legal-compliance]),body[data-gc-cat=legal-compliance],[data-cat=legal-compliance]{--cat:var(--p-periwinkle);--on-cat:var(--p-periwinkle-on);--cat-text:var(--p-periwinkle-text);--viz-cat:var(--p-periwinkle-mark);--cat-parent:var(--p-periwinkle);--gc-chart-1:var(--p-periwinkle-mark);--gc-chart-2:var(--p-lemon-mark);--gc-chart-3:var(--p-slate-mark);--gc-chart-4:var(--p-peach-mark);--gc-chart-5:var(--p-aqua-mark);--gc-chart-6:var(--p-lavender-mark);--gc-chart-7:var(--p-lime-mark);--gc-chart-8:var(--p-sky-mark);--gc-chart-9:var(--p-apricot-mark)}
:root:has(>body[data-gc-cat=education-study]),body[data-gc-cat=education-study],[data-cat=education-study]{--cat:var(--p-lemon);--on-cat:var(--p-lemon-on);--cat-text:var(--p-lemon-text);--viz-cat:var(--p-lemon-mark);--cat-parent:var(--p-lemon);--gc-chart-1:var(--p-lemon-mark);--gc-chart-2:var(--p-slate-mark);--gc-chart-3:var(--p-peach-mark);--gc-chart-4:var(--p-aqua-mark);--gc-chart-5:var(--p-lavender-mark);--gc-chart-6:var(--p-lime-mark);--gc-chart-7:var(--p-sky-mark);--gc-chart-8:var(--p-apricot-mark);--gc-chart-9:var(--p-sand-mark)}
:root:has(>body[data-gc-cat=time-productivity]),body[data-gc-cat=time-productivity],[data-cat=time-productivity]{--cat:var(--p-slate);--on-cat:var(--p-slate-on);--cat-text:var(--p-slate-text);--viz-cat:var(--p-slate-mark);--cat-parent:var(--p-slate);--gc-chart-1:var(--p-slate-mark);--gc-chart-2:var(--p-peach-mark);--gc-chart-3:var(--p-aqua-mark);--gc-chart-4:var(--p-lavender-mark);--gc-chart-5:var(--p-lime-mark);--gc-chart-6:var(--p-sky-mark);--gc-chart-7:var(--p-apricot-mark);--gc-chart-8:var(--p-sand-mark);--gc-chart-9:var(--p-rose-mark)}
:root:has(>body[data-gc-cat=health]),body[data-gc-cat=health],[data-cat=health]{--cat:var(--p-peach);--on-cat:var(--p-peach-on);--cat-text:var(--p-peach-text);--viz-cat:var(--p-peach-mark);--cat-parent:var(--p-peach);--gc-chart-1:var(--p-peach-mark);--gc-chart-2:var(--p-aqua-mark);--gc-chart-3:var(--p-lavender-mark);--gc-chart-4:var(--p-lime-mark);--gc-chart-5:var(--p-sky-mark);--gc-chart-6:var(--p-apricot-mark);--gc-chart-7:var(--p-sand-mark);--gc-chart-8:var(--p-rose-mark);--gc-chart-9:var(--p-mint-mark)}
:root:has(>body[data-gc-cat=fitness-performance]),body[data-gc-cat=fitness-performance],[data-cat=fitness-performance]{--cat:var(--p-aqua);--on-cat:var(--p-aqua-on);--cat-text:var(--p-aqua-text);--viz-cat:var(--p-aqua-mark);--cat-parent:var(--p-aqua);--gc-chart-1:var(--p-aqua-mark);--gc-chart-2:var(--p-lavender-mark);--gc-chart-3:var(--p-lime-mark);--gc-chart-4:var(--p-sky-mark);--gc-chart-5:var(--p-apricot-mark);--gc-chart-6:var(--p-sand-mark);--gc-chart-7:var(--p-rose-mark);--gc-chart-8:var(--p-mint-mark);--gc-chart-9:var(--p-periwinkle-mark)}
:root:has(>body[data-gc-cat=food-nutrition]),body[data-gc-cat=food-nutrition],[data-cat=food-nutrition]{--cat:var(--p-lavender);--on-cat:var(--p-lavender-on);--cat-text:var(--p-lavender-text);--viz-cat:var(--p-lavender-mark);--cat-parent:var(--p-lavender);--gc-chart-1:var(--p-lavender-mark);--gc-chart-2:var(--p-lime-mark);--gc-chart-3:var(--p-sky-mark);--gc-chart-4:var(--p-apricot-mark);--gc-chart-5:var(--p-sand-mark);--gc-chart-6:var(--p-rose-mark);--gc-chart-7:var(--p-mint-mark);--gc-chart-8:var(--p-periwinkle-mark);--gc-chart-9:var(--p-lemon-mark)}
:root:has(>body[data-gc-cat=events-planning]),body[data-gc-cat=events-planning],[data-cat=events-planning]{--cat:var(--p-lime);--on-cat:var(--p-lime-on);--cat-text:var(--p-lime-text);--viz-cat:var(--p-lime-mark);--cat-parent:var(--p-lime);--gc-chart-1:var(--p-lime-mark);--gc-chart-2:var(--p-sky-mark);--gc-chart-3:var(--p-apricot-mark);--gc-chart-4:var(--p-sand-mark);--gc-chart-5:var(--p-rose-mark);--gc-chart-6:var(--p-mint-mark);--gc-chart-7:var(--p-periwinkle-mark);--gc-chart-8:var(--p-lemon-mark);--gc-chart-9:var(--p-slate-mark)}
:root:has(>body[data-gc-cat=sports-games]),body[data-gc-cat=sports-games],[data-cat=sports-games]{--cat:var(--p-sky);--on-cat:var(--p-sky-on);--cat-text:var(--p-sky-text);--viz-cat:var(--p-sky-mark);--cat-parent:var(--p-sky);--gc-chart-1:var(--p-sky-mark);--gc-chart-2:var(--p-apricot-mark);--gc-chart-3:var(--p-sand-mark);--gc-chart-4:var(--p-rose-mark);--gc-chart-5:var(--p-mint-mark);--gc-chart-6:var(--p-periwinkle-mark);--gc-chart-7:var(--p-lemon-mark);--gc-chart-8:var(--p-slate-mark);--gc-chart-9:var(--p-peach-mark)}
:root:has(>body[data-gc-cat=living-costs]),body[data-gc-cat=living-costs],[data-cat=living-costs]{--cat:var(--p-apricot);--on-cat:var(--p-apricot-on);--cat-text:var(--p-apricot-text);--viz-cat:var(--p-apricot-mark);--cat-parent:var(--p-apricot);--gc-chart-1:var(--p-apricot-mark);--gc-chart-2:var(--p-sand-mark);--gc-chart-3:var(--p-rose-mark);--gc-chart-4:var(--p-mint-mark);--gc-chart-5:var(--p-periwinkle-mark);--gc-chart-6:var(--p-lemon-mark);--gc-chart-7:var(--p-slate-mark);--gc-chart-8:var(--p-peach-mark);--gc-chart-9:var(--p-aqua-mark)}
:root:has(>body[data-gc-cat=travel-transport]),body[data-gc-cat=travel-transport],[data-cat=travel-transport]{--cat:var(--p-sand);--on-cat:var(--p-sand-on);--cat-text:var(--p-sand-text);--viz-cat:var(--p-sand-mark);--cat-parent:var(--p-sand);--gc-chart-1:var(--p-sand-mark);--gc-chart-2:var(--p-rose-mark);--gc-chart-3:var(--p-mint-mark);--gc-chart-4:var(--p-periwinkle-mark);--gc-chart-5:var(--p-lemon-mark);--gc-chart-6:var(--p-slate-mark);--gc-chart-7:var(--p-peach-mark);--gc-chart-8:var(--p-aqua-mark);--gc-chart-9:var(--p-lavender-mark)}
:root:has(>body[data-gc-cat=vehicles-automotive]),body[data-gc-cat=vehicles-automotive],[data-cat=vehicles-automotive]{--cat:var(--p-rose);--on-cat:var(--p-rose-on);--cat-text:var(--p-rose-text);--viz-cat:var(--p-rose-mark);--cat-parent:var(--p-rose);--gc-chart-1:var(--p-rose-mark);--gc-chart-2:var(--p-mint-mark);--gc-chart-3:var(--p-periwinkle-mark);--gc-chart-4:var(--p-lemon-mark);--gc-chart-5:var(--p-slate-mark);--gc-chart-6:var(--p-peach-mark);--gc-chart-7:var(--p-aqua-mark);--gc-chart-8:var(--p-lavender-mark);--gc-chart-9:var(--p-lime-mark)}
:root:has(>body[data-gc-cat=energy-utilities]),body[data-gc-cat=energy-utilities],[data-cat=energy-utilities]{--cat:var(--p-mint);--on-cat:var(--p-mint-on);--cat-text:var(--p-mint-text);--viz-cat:var(--p-mint-mark);--cat-parent:var(--p-mint);--gc-chart-1:var(--p-mint-mark);--gc-chart-2:var(--p-periwinkle-mark);--gc-chart-3:var(--p-lemon-mark);--gc-chart-4:var(--p-slate-mark);--gc-chart-5:var(--p-peach-mark);--gc-chart-6:var(--p-aqua-mark);--gc-chart-7:var(--p-lavender-mark);--gc-chart-8:var(--p-lime-mark);--gc-chart-9:var(--p-sky-mark)}
:root:has(>body[data-gc-cat=environment-climate]),body[data-gc-cat=environment-climate],[data-cat=environment-climate]{--cat:var(--p-periwinkle);--on-cat:var(--p-periwinkle-on);--cat-text:var(--p-periwinkle-text);--viz-cat:var(--p-periwinkle-mark);--cat-parent:var(--p-periwinkle);--gc-chart-1:var(--p-periwinkle-mark);--gc-chart-2:var(--p-lemon-mark);--gc-chart-3:var(--p-slate-mark);--gc-chart-4:var(--p-peach-mark);--gc-chart-5:var(--p-aqua-mark);--gc-chart-6:var(--p-lavender-mark);--gc-chart-7:var(--p-lime-mark);--gc-chart-8:var(--p-sky-mark);--gc-chart-9:var(--p-apricot-mark)}
:root:has(>body[data-gc-cat=construction-building]),body[data-gc-cat=construction-building],[data-cat=construction-building]{--cat:var(--p-lemon);--on-cat:var(--p-lemon-on);--cat-text:var(--p-lemon-text);--viz-cat:var(--p-lemon-mark);--cat-parent:var(--p-lemon);--gc-chart-1:var(--p-lemon-mark);--gc-chart-2:var(--p-slate-mark);--gc-chart-3:var(--p-peach-mark);--gc-chart-4:var(--p-aqua-mark);--gc-chart-5:var(--p-lavender-mark);--gc-chart-6:var(--p-lime-mark);--gc-chart-7:var(--p-sky-mark);--gc-chart-8:var(--p-apricot-mark);--gc-chart-9:var(--p-sand-mark)}
:root:has(>body[data-gc-cat=engineering-mechanics]),body[data-gc-cat=engineering-mechanics],[data-cat=engineering-mechanics]{--cat:var(--p-slate);--on-cat:var(--p-slate-on);--cat-text:var(--p-slate-text);--viz-cat:var(--p-slate-mark);--cat-parent:var(--p-slate);--gc-chart-1:var(--p-slate-mark);--gc-chart-2:var(--p-peach-mark);--gc-chart-3:var(--p-aqua-mark);--gc-chart-4:var(--p-lavender-mark);--gc-chart-5:var(--p-lime-mark);--gc-chart-6:var(--p-sky-mark);--gc-chart-7:var(--p-apricot-mark);--gc-chart-8:var(--p-sand-mark);--gc-chart-9:var(--p-rose-mark)}
:root:has(>body[data-gc-cat=science-chemistry]),body[data-gc-cat=science-chemistry],[data-cat=science-chemistry]{--cat:var(--p-peach);--on-cat:var(--p-peach-on);--cat-text:var(--p-peach-text);--viz-cat:var(--p-peach-mark);--cat-parent:var(--p-peach);--gc-chart-1:var(--p-peach-mark);--gc-chart-2:var(--p-aqua-mark);--gc-chart-3:var(--p-lavender-mark);--gc-chart-4:var(--p-lime-mark);--gc-chart-5:var(--p-sky-mark);--gc-chart-6:var(--p-apricot-mark);--gc-chart-7:var(--p-sand-mark);--gc-chart-8:var(--p-rose-mark);--gc-chart-9:var(--p-mint-mark)}
:root:has(>body[data-gc-cat=math-statistics]),body[data-gc-cat=math-statistics],[data-cat=math-statistics]{--cat:var(--p-aqua);--on-cat:var(--p-aqua-on);--cat-text:var(--p-aqua-text);--viz-cat:var(--p-aqua-mark);--cat-parent:var(--p-aqua);--gc-chart-1:var(--p-aqua-mark);--gc-chart-2:var(--p-lavender-mark);--gc-chart-3:var(--p-lime-mark);--gc-chart-4:var(--p-sky-mark);--gc-chart-5:var(--p-apricot-mark);--gc-chart-6:var(--p-sand-mark);--gc-chart-7:var(--p-rose-mark);--gc-chart-8:var(--p-mint-mark);--gc-chart-9:var(--p-periwinkle-mark)}
:root:has(>body[data-gc-cat=units-conversions]),body[data-gc-cat=units-conversions],[data-cat=units-conversions]{--cat:var(--p-lavender);--on-cat:var(--p-lavender-on);--cat-text:var(--p-lavender-text);--viz-cat:var(--p-lavender-mark);--cat-parent:var(--p-lavender);--gc-chart-1:var(--p-lavender-mark);--gc-chart-2:var(--p-lime-mark);--gc-chart-3:var(--p-sky-mark);--gc-chart-4:var(--p-apricot-mark);--gc-chart-5:var(--p-sand-mark);--gc-chart-6:var(--p-rose-mark);--gc-chart-7:var(--p-mint-mark);--gc-chart-8:var(--p-periwinkle-mark);--gc-chart-9:var(--p-lemon-mark)}
:root:has(>body[data-gc-cat=physics]),body[data-gc-cat=physics],[data-cat=physics]{--cat:var(--p-lime);--on-cat:var(--p-lime-on);--cat-text:var(--p-lime-text);--viz-cat:var(--p-lime-mark);--cat-parent:var(--p-lime);--gc-chart-1:var(--p-lime-mark);--gc-chart-2:var(--p-sky-mark);--gc-chart-3:var(--p-apricot-mark);--gc-chart-4:var(--p-sand-mark);--gc-chart-5:var(--p-rose-mark);--gc-chart-6:var(--p-mint-mark);--gc-chart-7:var(--p-periwinkle-mark);--gc-chart-8:var(--p-lemon-mark);--gc-chart-9:var(--p-slate-mark)}
:root:has(>body[data-gc-cat=biology]),body[data-gc-cat=biology],[data-cat=biology]{--cat:var(--p-sky);--on-cat:var(--p-sky-on);--cat-text:var(--p-sky-text);--viz-cat:var(--p-sky-mark);--cat-parent:var(--p-sky);--gc-chart-1:var(--p-sky-mark);--gc-chart-2:var(--p-apricot-mark);--gc-chart-3:var(--p-sand-mark);--gc-chart-4:var(--p-rose-mark);--gc-chart-5:var(--p-mint-mark);--gc-chart-6:var(--p-periwinkle-mark);--gc-chart-7:var(--p-lemon-mark);--gc-chart-8:var(--p-slate-mark);--gc-chart-9:var(--p-peach-mark)}
:root:has(>body[data-gc-cat=manufacturing-industry]),body[data-gc-cat=manufacturing-industry],[data-cat=manufacturing-industry]{--cat:var(--p-apricot);--on-cat:var(--p-apricot-on);--cat-text:var(--p-apricot-text);--viz-cat:var(--p-apricot-mark);--cat-parent:var(--p-apricot);--gc-chart-1:var(--p-apricot-mark);--gc-chart-2:var(--p-sand-mark);--gc-chart-3:var(--p-rose-mark);--gc-chart-4:var(--p-mint-mark);--gc-chart-5:var(--p-periwinkle-mark);--gc-chart-6:var(--p-lemon-mark);--gc-chart-7:var(--p-slate-mark);--gc-chart-8:var(--p-peach-mark);--gc-chart-9:var(--p-aqua-mark)}
:root:has(>body[data-gc-cat=technology-it]),body[data-gc-cat=technology-it],[data-cat=technology-it]{--cat:var(--p-sand);--on-cat:var(--p-sand-on);--cat-text:var(--p-sand-text);--viz-cat:var(--p-sand-mark);--cat-parent:var(--p-sand);--gc-chart-1:var(--p-sand-mark);--gc-chart-2:var(--p-rose-mark);--gc-chart-3:var(--p-mint-mark);--gc-chart-4:var(--p-periwinkle-mark);--gc-chart-5:var(--p-lemon-mark);--gc-chart-6:var(--p-slate-mark);--gc-chart-7:var(--p-peach-mark);--gc-chart-8:var(--p-aqua-mark);--gc-chart-9:var(--p-lavender-mark)}
:root:has(>body[data-gc-cat=ai-machine-learning]),body[data-gc-cat=ai-machine-learning],[data-cat=ai-machine-learning]{--cat:var(--p-rose);--on-cat:var(--p-rose-on);--cat-text:var(--p-rose-text);--viz-cat:var(--p-rose-mark);--cat-parent:var(--p-rose);--gc-chart-1:var(--p-rose-mark);--gc-chart-2:var(--p-mint-mark);--gc-chart-3:var(--p-periwinkle-mark);--gc-chart-4:var(--p-lemon-mark);--gc-chart-5:var(--p-slate-mark);--gc-chart-6:var(--p-peach-mark);--gc-chart-7:var(--p-aqua-mark);--gc-chart-8:var(--p-lavender-mark);--gc-chart-9:var(--p-lime-mark)}
:root:has(>body[data-gc-cat=government-public-policy]),body[data-gc-cat=government-public-policy],[data-cat=government-public-policy]{--cat:var(--p-mint);--on-cat:var(--p-mint-on);--cat-text:var(--p-mint-text);--viz-cat:var(--p-mint-mark);--cat-parent:var(--p-mint);--gc-chart-1:var(--p-mint-mark);--gc-chart-2:var(--p-periwinkle-mark);--gc-chart-3:var(--p-lemon-mark);--gc-chart-4:var(--p-slate-mark);--gc-chart-5:var(--p-peach-mark);--gc-chart-6:var(--p-aqua-mark);--gc-chart-7:var(--p-lavender-mark);--gc-chart-8:var(--p-lime-mark);--gc-chart-9:var(--p-sky-mark)}
:root:has(>body[data-gc-cat=urban-planning-cities]),body[data-gc-cat=urban-planning-cities],[data-cat=urban-planning-cities]{--cat:var(--p-periwinkle);--on-cat:var(--p-periwinkle-on);--cat-text:var(--p-periwinkle-text);--viz-cat:var(--p-periwinkle-mark);--cat-parent:var(--p-periwinkle);--gc-chart-1:var(--p-periwinkle-mark);--gc-chart-2:var(--p-lemon-mark);--gc-chart-3:var(--p-slate-mark);--gc-chart-4:var(--p-peach-mark);--gc-chart-5:var(--p-aqua-mark);--gc-chart-6:var(--p-lavender-mark);--gc-chart-7:var(--p-lime-mark);--gc-chart-8:var(--p-sky-mark);--gc-chart-9:var(--p-apricot-mark)}
:root:has(>body[data-gc-cat=architecture-design]),body[data-gc-cat=architecture-design],[data-cat=architecture-design]{--cat:var(--p-lemon);--on-cat:var(--p-lemon-on);--cat-text:var(--p-lemon-text);--viz-cat:var(--p-lemon-mark);--cat-parent:var(--p-lemon);--gc-chart-1:var(--p-lemon-mark);--gc-chart-2:var(--p-slate-mark);--gc-chart-3:var(--p-peach-mark);--gc-chart-4:var(--p-aqua-mark);--gc-chart-5:var(--p-lavender-mark);--gc-chart-6:var(--p-lime-mark);--gc-chart-7:var(--p-sky-mark);--gc-chart-8:var(--p-apricot-mark);--gc-chart-9:var(--p-sand-mark)}
:root:has(>body[data-gc-cat=astronomy-space]),body[data-gc-cat=astronomy-space],[data-cat=astronomy-space]{--cat:var(--p-slate);--on-cat:var(--p-slate-on);--cat-text:var(--p-slate-text);--viz-cat:var(--p-slate-mark);--cat-parent:var(--p-slate);--gc-chart-1:var(--p-slate-mark);--gc-chart-2:var(--p-peach-mark);--gc-chart-3:var(--p-aqua-mark);--gc-chart-4:var(--p-lavender-mark);--gc-chart-5:var(--p-lime-mark);--gc-chart-6:var(--p-sky-mark);--gc-chart-7:var(--p-apricot-mark);--gc-chart-8:var(--p-sand-mark);--gc-chart-9:var(--p-rose-mark)}
:root:has(>body[data-gc-cat=meta-calculators]),body[data-gc-cat=meta-calculators],[data-cat=meta-calculators]{--cat:var(--p-peach);--on-cat:var(--p-peach-on);--cat-text:var(--p-peach-text);--viz-cat:var(--p-peach-mark);--cat-parent:var(--p-peach);--gc-chart-1:var(--p-peach-mark);--gc-chart-2:var(--p-aqua-mark);--gc-chart-3:var(--p-lavender-mark);--gc-chart-4:var(--p-lime-mark);--gc-chart-5:var(--p-sky-mark);--gc-chart-6:var(--p-apricot-mark);--gc-chart-7:var(--p-sand-mark);--gc-chart-8:var(--p-rose-mark);--gc-chart-9:var(--p-mint-mark)}
/* pages without a category (hubs, search, static pages) take the Property scheme, as v4 did */
:root,body:not([data-gc-cat]){--cat:var(--p-periwinkle);--on-cat:var(--p-periwinkle-on);--cat-text:var(--p-periwinkle-text);--viz-cat:var(--p-periwinkle-mark);--cat-parent:var(--p-periwinkle);--gc-chart-1:var(--p-periwinkle-mark);--gc-chart-2:var(--p-lemon-mark);--gc-chart-3:var(--p-slate-mark);--gc-chart-4:var(--p-peach-mark);--gc-chart-5:var(--p-aqua-mark);--gc-chart-6:var(--p-lavender-mark);--gc-chart-7:var(--p-lime-mark);--gc-chart-8:var(--p-sky-mark);--gc-chart-9:var(--p-apricot-mark)}
/* nav squares and menu swatches read --lc: the mark twin, so a 12px square still reads on the canvas */
[href*="/income/"]{--lc:var(--viz-income)}[href*="/tax/"]{--lc:var(--viz-tax)}[href*="/personal-finance/"]{--lc:var(--viz-personal-finance)}[href*="/banking-credit/"]{--lc:var(--viz-banking-credit)}[href*="/debt/"]{--lc:var(--viz-debt)}[href*="/property/"]{--lc:var(--viz-property)}[href*="/mortgages/"]{--lc:var(--viz-mortgages)}[href*="/savings/"]{--lc:var(--viz-savings)}[href*="/super/"]{--lc:var(--viz-super)}[href*="/insurance/"]{--lc:var(--viz-insurance)}[href*="/business/"]{--lc:var(--viz-business)}[href*="/accounting-bookkeeping/"]{--lc:var(--viz-accounting-bookkeeping)}[href*="/hr-workforce/"]{--lc:var(--viz-hr-workforce)}[href*="/entrepreneurship-freelance/"]{--lc:var(--viz-entrepreneurship-freelance)}[href*="/ecommerce-retail/"]{--lc:var(--viz-ecommerce-retail)}[href*="/marketing-growth/"]{--lc:var(--viz-marketing-growth)}[href*="/product-saas/"]{--lc:var(--viz-product-saas)}[href*="/legal-compliance/"]{--lc:var(--viz-legal-compliance)}[href*="/education-study/"]{--lc:var(--viz-education-study)}[href*="/time-productivity/"]{--lc:var(--viz-time-productivity)}[href*="/health/"]{--lc:var(--viz-health)}[href*="/fitness-performance/"]{--lc:var(--viz-fitness-performance)}[href*="/food-nutrition/"]{--lc:var(--viz-food-nutrition)}[href*="/events-planning/"]{--lc:var(--viz-events-planning)}[href*="/sports-games/"]{--lc:var(--viz-sports-games)}[href*="/living-costs/"]{--lc:var(--viz-living-costs)}[href*="/travel-transport/"]{--lc:var(--viz-travel-transport)}[href*="/vehicles-automotive/"]{--lc:var(--viz-vehicles-automotive)}[href*="/energy-utilities/"]{--lc:var(--viz-energy-utilities)}[href*="/environment-climate/"]{--lc:var(--viz-environment-climate)}[href*="/construction-building/"]{--lc:var(--viz-construction-building)}[href*="/engineering-mechanics/"]{--lc:var(--viz-engineering-mechanics)}[href*="/science-chemistry/"]{--lc:var(--viz-science-chemistry)}[href*="/math-statistics/"]{--lc:var(--viz-math-statistics)}[href*="/units-conversions/"]{--lc:var(--viz-units-conversions)}[href*="/physics/"]{--lc:var(--viz-physics)}[href*="/biology/"]{--lc:var(--viz-biology)}[href*="/manufacturing-industry/"]{--lc:var(--viz-manufacturing-industry)}[href*="/technology-it/"]{--lc:var(--viz-technology-it)}[href*="/ai-machine-learning/"]{--lc:var(--viz-ai-machine-learning)}[href*="/government-public-policy/"]{--lc:var(--viz-government-public-policy)}[href*="/urban-planning-cities/"]{--lc:var(--viz-urban-planning-cities)}[href*="/architecture-design/"]{--lc:var(--viz-architecture-design)}[href*="/astronomy-space/"]{--lc:var(--viz-astronomy-space)}[href*="/meta-calculators/"]{--lc:var(--viz-meta-calculators)}
[href*="/pension/"],[href*="/retirement/"]{--lc:var(--viz-super)}
/* ▲ END GENERATED category colours ▲ */





/* ═══ v5.2 category surfaces (2026-08-30) — the taxonomy (docs/colour-system/categories.json, 35 categories in seven
   groups) drives the topbar menu, the home/hub category index and the section order, so a new category only needs
   its pages. Colours come from the generated palette block below (pastel blocks, ink text, mark twins for lines). ═══ */
/* topbar: "All categories" menu (details/summary — no script) */
.gc-cats{position:relative;margin-right:4px}
.gc-cats-btn{list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 10px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.gc-cats-btn::-webkit-details-marker{display:none}
.gc-cats-btn:hover{background:var(--action);color:var(--canvas)}
.gc-cats-caret{font-size:9px}
.gc-cats[open] .gc-cats-btn{background:var(--action);color:var(--canvas)}
.gc-cats-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:300;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 4px;width:min(92vw,980px);max-height:calc(100vh - 90px);overflow:auto;padding:12px 14px 14px;background:var(--sheet);border:2px solid var(--rule)}
.gc-cats-col{display:flex;flex-direction:column;min-width:0}
.gc-cats-group{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:8px 8px 6px;border-bottom:2px solid var(--rule-soft);margin-bottom:2px}
.gc-cats-link{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 8px;color:var(--ink);font-size:var(--fs-sm);font-weight:700;text-decoration:none}
.gc-cats-link::before{content:"";width:12px;height:12px;flex:none;background:var(--lc,var(--ink))}
.gc-cats-link:hover{background:var(--action);color:var(--canvas)}
@media (max-width:1079px){.gc-cats{display:none}}                       /* the phone menu lists every category under its group heading */
/* group headings inside the collapsed phone nav; hidden on the inline desktop row */
.gc-tnav-group{display:none}
@media (max-width:1079px){.gc-topnav .gc-tnav-group{display:block;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:14px 4px 4px}}
/* home + hubs: grouped category index (replaces the nine-tile rail) */
.gc-rail{display:flex;flex-direction:column;gap:12px;margin-top:var(--gap)}
.gc-rail-group{display:flex;flex-direction:column;gap:4px}
.gc-rail-group-h{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.gc-rail-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap)}
@media (max-width:960px){.gc-rail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.gc-rail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:2200px){.gc-rail-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* touch devices: the menu button and its links are tap targets */
@media (pointer:coarse),(max-width:1079px){.gc-cats-btn,.gc-cats-link{min-height:44px}}

/* ═══ v5.4 subcategory groups (2026-08-30) — a hub section lists its calculators by subcategory; each group carries
   its subcategory's pastel (inline --cat/--on-cat/--cat-parent from the taxonomy) and the category rides along as
   the tag square. Calculators not yet assigned to a subcategory stay in the category colour ("More …"). ═══ */
.s-groups{display:flex;flex-direction:column;gap:14px}
.s-group{display:flex;flex-direction:column;gap:6px}
.s-group-h{display:flex;align-items:center;gap:10px;margin:6px 0 2px;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.s-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 8px;background:var(--cat);color:var(--on-cat);border:2px solid var(--rule);font-family:var(--sans);font-size:14px;font-weight:800;letter-spacing:0;text-transform:none}
.s-chip::before{content:"";width:10px;height:10px;flex:none;background:var(--cat-parent,var(--cat));border:1.5px solid var(--on-cat)}
.s-chip--rest::before{display:none}
.s-group-n{white-space:nowrap}
.s-group .c-card{background:var(--cat);color:var(--on-cat)}
.s-group .c-card::before{background:var(--cat-parent,var(--on-cat));border:1.5px solid var(--on-cat)}
.s-group .c-card .c-desc{opacity:.88}
.s-group .c-card:hover{background:var(--action);color:var(--canvas);box-shadow:4px 4px 0 var(--ink)}
.s-group .c-card:hover::before{background:var(--canvas);border-color:var(--canvas)}
.s-group--rest .c-card{background:var(--sheet);color:var(--ink)}
.s-group--rest .c-card::before{background:var(--cat);border:0}
/* v5.8: a subcategory that belongs to another GCI category shows its parent after the name (car loans on the debt hub → Vehicles & Automotive) */
.s-chip-parent{margin-left:.45em;font-weight:500;opacity:.78}
.s-chip-parent::before{content:"· ";opacity:.7}

/* ═══ v6.0 hub panels (2026-08-30) — the hub is a category grid (every taxonomy category; planned ones marked "soon");
   a live category opens a panel (<dialog>, crawlable, still a link without script) with its top ten, its subcategories
   and a collapsed "every calculator" list — so a phone never scrolls 170 cards and a 4K screen never shows a wall. ═══ */
.gc-rail-soon{display:flex;flex-direction:column;min-height:88px;padding:10px 10px 12px;border:2px dashed var(--rule);color:var(--ink-3);background:transparent}
.gc-rail-soon small{display:block;font:700 var(--fs-xs) var(--mono);letter-spacing:.06em;margin-bottom:2px}
.gc-rail-soon b{display:block;font-size:14px;font-weight:800;letter-spacing:-.02em;line-height:1.1}
/* phones: the grid is two columns and the tiles are compact, so 35 categories fit in a couple of screens; a
   planned category is a single dashed line */
@media (max-width:640px){
  .gc-rail a{min-height:64px;padding:8px 10px 10px}
  .gc-rail-soon{flex-direction:row;align-items:center;gap:6px;min-height:44px;padding:6px 10px}
  .gc-rail-soon small{margin:0}
  .gc-rail-soon small::after{content:" ·"}
  .gc-rail-soon b{font-size:13px;font-weight:700}
}
.gc-rail a[data-panel]{cursor:pointer}
.gc-panels{display:contents}
.gc-cat-dlg{width:min(1120px,calc(100vw - 32px));max-width:none;max-height:min(90vh,90dvh);margin:auto;padding:0;border:2px solid var(--ink);background:var(--canvas);color:var(--ink);box-shadow:8px 8px 0 var(--ink);overflow:auto;overscroll-behavior:contain}
.gc-cat-dlg::backdrop{background:rgba(10,12,16,.6);backdrop-filter:blur(3px)}
.gc-cat-dlg .gc-s{padding:var(--gap)}
.gc-cat-dlg .s-head{grid-template-columns:1fr auto auto;align-items:start}
.gc-cat-dlg .s-hl{min-height:104px}
.gc-cat-dlg .s-ttl{font-size:clamp(28px,4vw,48px)}
.gc-cat-dlg form[method="dialog"]{display:contents}
.gc-dlg-close{min-width:44px;min-height:44px;border:2px solid var(--rule);background:var(--sheet);color:var(--ink);font:700 18px var(--mono);cursor:pointer;line-height:1}
.gc-dlg-close:hover{background:var(--action);color:var(--canvas)}
.s-h3{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:18px 0 8px}
.s-top .s-h3{margin-top:4px}
.s-sub-list{display:flex;flex-wrap:wrap;gap:8px}
.s-sub-list .s-chip{text-decoration:none;min-height:40px}
.s-sub-list a.s-chip:hover{background:var(--action);color:var(--canvas);border-color:var(--action)}
.s-chip-n{margin-left:.45em;font-family:var(--mono);font-size:var(--fs-xs);opacity:.8}
.s-chip--soon{background:transparent;color:var(--ink-3);border-style:dashed}
.s-chip--soon::before{display:none}
.s-all{margin-top:18px;border-top:2px solid var(--rule);padding-top:8px}
.s-all>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;min-height:44px;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.s-all>summary::-webkit-details-marker{display:none}
.s-all>summary::before{content:"+";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid var(--rule);font-size:15px}
.s-all[open]>summary::before{content:"−"}
.s-all[open]>summary{margin-bottom:10px}
.s-mkts{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 12px}
.s-mkts a{color:inherit;text-decoration:none;padding:4px 8px;border:2px solid var(--rule)}
.s-mkts a:hover{background:var(--action);color:var(--canvas)}
html.gc-dlg-open{overflow:hidden}
@media (pointer:coarse),(max-width:1079px){.s-sub-list .s-chip,.gc-dlg-close{min-height:44px}}
@media (max-width:960px){.gc-cat-dlg .c-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .gc-cat-dlg{width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;box-shadow:none}
  .gc-cat-dlg .gc-s{padding:12px 12px 32px}
  /* title with the ✕ beside it, the "All …" link underneath, full width */
  .gc-cat-dlg .s-head{grid-template-columns:1fr auto;grid-template-rows:auto auto}
  .gc-cat-dlg .s-hl{grid-column:1;grid-row:1;min-height:0}
  .gc-cat-dlg .gc-dlg-close{grid-column:2;grid-row:1;align-self:start}
  .gc-cat-dlg .see-all{grid-column:1/-1;grid-row:2;min-width:0;min-height:44px;align-items:center}
  .gc-cat-dlg .c-grid{grid-template-columns:1fr}
  .gc-cat-dlg .s-ttl{font-size:clamp(26px,8vw,36px)}
}

/* ═══ v7.0 field stage (2026-08-31) — Adam: the animation was "very hard to actually see … behind
   the search element", especially on mobile. The hero now ships an empty .gc-field-stage after the
   search row; gc-field.js fits and clips the formation to it (canvas gains .has-stage) and gives the
   small tiers a larger point budget there. Wide screens hide the stage and keep the side-gutter
   bleed, so the element is inert above 1800px. ═══ */
.gc-field-stage{display:block;width:100%;height:clamp(300px,44vh,400px);margin:18px 0 4px;pointer-events:none}
@media (min-width:1080px){.gc-field-stage{height:320px;margin:22px 0 6px}}
@media (min-width:1800px){.gc-field-stage{display:none}}
.gc-hero-field.has-stage,.gc-hero-field.has-stage.is-figure,.gc-hero-field.is-bleed.has-stage,.gc-hero-field.is-bleed.is-figure.has-stage{opacity:.95;filter:none}
:root[data-theme=dark] .gc-hero-field.has-stage,:root[data-theme=dark] .gc-hero-field.is-bleed.is-figure.has-stage{opacity:.92}
@media (prefers-color-scheme:dark){:root[data-theme=auto] .gc-hero-field.has-stage,:root[data-theme=auto] .gc-hero-field.is-bleed.is-figure.has-stage{opacity:.92}}
@media (max-width:640px){.gc-hero-field.has-stage,.gc-hero-field.has-stage.is-figure,.gc-hero-field.is-bleed.has-stage,.gc-hero-field.is-bleed.is-figure.has-stage{opacity:.95;filter:none}}

/* ═══ v7.3 field caption (2026-08-31) — Adam: "a fancy letters label at the bottom describing the
   scene". The engine creates it under the stage and names the subject or the act of its year. Styled
   here rather than inline so check:theme-contrast can see it; --ink-2 is a pairing the gate already
   tests. It beats .gc-index-hero>* (same specificity) by sitting later in the sheet. ═══ */
.gc-field-caption{position:absolute;z-index:2;margin:0;pointer-events:none;text-align:center;font:600 14px/1.35 var(--gc-font-display, Archivo, system-ui, sans-serif);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);opacity:0;transition:opacity .9s ease}
@media (min-width:1080px){.gc-field-caption{font-size:15px;letter-spacing:.16em}}
@media (prefers-reduced-motion:reduce){.gc-field-caption{transition:none}}

/* ═══ v8.0 · the drone show is parked (2026-08-31) — Adam: "just have all the wavy elements … it
   shatters apart, and then reforms as another one … something simple and elegant, a seamless loop."
   The hero animation is now the wave field (assets/js/gc-field.js v8.0): a background layer that
   spans the whole hero, with nothing to fit into a box. The .gc-field-stage above existed only to
   give the drone show's formation somewhere visible to land on phones and gutter-less laptops, and
   an empty 300–400px box in the flow is a hole without it. The builders still emit the element, so
   hiding it here is the whole switch — delete this block to bring the formation back
   (docs/parked/alive-field-drone-show/README.md, step 2). ═══ */
.gc-field-stage{display:none}
