/* Augmensis Design System, concatenated verbatim from the design system source.
   Source order matches styles.css. Do not edit by hand: rerun tools/build_site_assets.py. */

/* ---- tokens/fonts.css ---- */
/* System fonts only. No third-party font requests. These faces resolve to the
   installed system font via local(); nothing is downloaded. */
@font-face{font-family:"Segoe UI Variable Display";font-weight:100 900;font-display:swap;
  src:local("Segoe UI Variable Display"),local("SegoeUIVariable-Display"),local("Segoe UI Variable")}
@font-face{font-family:"Cascadia Mono";font-weight:200 700;font-display:swap;
  src:local("Cascadia Mono"),local("CascadiaMono-Regular")}
:root{
  --font-core:"Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-mono:ui-monospace,"Cascadia Mono","SF Mono",Consolas,Menlo,monospace;
  --font-display:var(--font-core);
  --font-body:var(--font-core);
  --font-label:var(--font-mono);
  --font-quote:var(--font-core);
}

/* ---- tokens/colors.css ---- */
/* Augmensis colour. Dark is the default theme (:root). Light is .aug-light / [data-theme="light"].
   Ramps are raw values; author UI against the semantic aliases below them. */

/* Base values ------------------------------------------------------------- */
:root{
  /* Navy — the dark theme's ground */
  --navy-950:#0D1024; /* ink: page background, text on teal */
  --navy-900:#14172E; /* panel: cards */
  --navy-800:#1E203E; /* navy: raised panels, glows */
  --navy-700:#2A2D50;
  --navy-500:#5A5F7A; /* light-theme muted text */
  --navy-400:#8A90AE; /* faint text on dark */
  --navy-300:#A8ADC6; /* muted text on dark */
  --navy-200:#D3D6E3;

  /* Mist — the light theme's ground */
  --mist-000:#FFFFFF; --mist-050:#F4F5F7; --mist-100:#E9EBF0; --mist-200:#DADDE5;

  /* Teal — the one accent. 400 is the brand value. */
  --teal-100:#B8F8F0;
  --teal-400:#04EBD3; /* fill, rule, highlight bar, bullet. Never text on light. */
  --teal-500:#03C9B5; /* hover on teal fills */
  --teal-600:#2B8C9E; /* numerals on dark (4.8:1 on ink) */
  --teal-700:#1D6172; /* deep teal: glows, accent text + links on light (6.4:1) */
  --teal-800:#143F4B;

  /* Status — hues kept clear of teal (174 deg) so severity never reads as brand */
  --green-400:#5CD38B; --green-700:#1F7A4A;
  --amber-400:#F2B84B; --amber-700:#8A5800;
  --red-400:#FF8A80;   --red-700:#B3261E;
  --blue-400:#8DB4F2;  --blue-700:#2B5DA8;
  --orange-400:#FF9F66; --orange-700:#B04A14;

  --white-a06:rgba(244,245,247,.06); --white-a12:rgba(244,245,247,.12); --white-a24:rgba(244,245,247,.24);
  --ink-a06:rgba(13,16,36,.06); --ink-a14:rgba(13,16,36,.14); --ink-a24:rgba(13,16,36,.24);
}

/* Semantic aliases — dark (default) --------------------------------------- */
:root,.aug-dark,.aug-inverse,[data-theme="dark"]{
  color-scheme:dark;
  --text-strong:#F4F5F7;
  --text-body:#F4F5F7;
  --text-muted:var(--navy-300);
  --text-faint:var(--navy-400);
  --text-on-accent:var(--navy-950);
  --text-accent:var(--teal-400);       /* eyebrows, small highlights */
  --text-numeral:var(--teal-600);
  --text-link:#F4F5F7;                 /* links are text-coloured, underlined in teal */
  --text-link-hover:var(--teal-400);
  --link-underline:var(--teal-400);

  --surface-page:var(--navy-950);
  --surface-panel:var(--navy-800);
  --surface-card:var(--navy-900);
  --surface-sunken:#0A0C1C;
  --surface-raised:var(--navy-800);
  --surface-overlay:var(--navy-800);
  --surface-selected:var(--white-a12);
  --surface-hover:var(--white-a06);

  --border-hairline:var(--white-a12);
  --border-subtle:var(--white-a12);
  --border-strong:var(--white-a24);
  --border-accent:var(--teal-400);

  --accent:var(--teal-400);            /* fills, rules, bars, bullets */
  --accent-hover:var(--teal-500);
  --accent-deep:var(--teal-700);       /* glows, secondary accent */
  --focus-color:var(--teal-400);
  --focus-outline:3px solid var(--teal-400);
  --focus-bar:#F4F5F7;                 /* underline under a focused link */

  --action-primary:var(--teal-400);
  --action-primary-hover:var(--teal-500);
  --action-primary-text:var(--navy-950);

  --status-success:var(--green-400);
  --status-warning:var(--amber-400);
  --status-danger:var(--red-400);
  --status-info:var(--blue-400);
  --status-success-quiet:rgba(92,211,139,.12);
  --status-warning-quiet:rgba(242,184,75,.12);
  --status-danger-quiet:rgba(255,138,128,.12);
  --status-info-quiet:rgba(141,180,242,.12);
  --severity-critical:var(--red-400);
  --severity-high:var(--orange-400);
  --severity-medium:var(--amber-400);
  --severity-low:var(--navy-300);

  --scrim:rgba(5,7,18,.72);
  --grid-line:rgba(244,245,247,.05);
  --glow:rgba(29,97,114,.55);
  --watermark-opacity:.10; /* @kind other */
}

/* Semantic aliases — light ------------------------------------------------ */
.aug-light,[data-theme="light"]{
  color-scheme:light;
  --text-strong:var(--navy-950);
  --text-body:var(--navy-950);
  --text-muted:var(--navy-500);
  --text-faint:#62677F;
  --text-on-accent:var(--navy-950);
  --text-accent:var(--teal-700);       /* bright teal fails on light: never text */
  --text-numeral:var(--teal-700);
  --text-link:var(--teal-700);
  --text-link-hover:var(--navy-950);
  --link-underline:var(--teal-700);

  --surface-page:var(--mist-050);
  --surface-panel:var(--mist-100);
  --surface-card:var(--mist-000);
  --surface-sunken:var(--mist-100);
  --surface-raised:var(--mist-000);
  --surface-overlay:var(--navy-950);
  --surface-selected:var(--ink-a06);
  --surface-hover:var(--ink-a06);

  --border-hairline:var(--ink-a14);
  --border-subtle:var(--ink-a14);
  --border-strong:var(--ink-a24);
  --border-accent:var(--teal-400);

  --accent:var(--teal-400);
  --accent-hover:var(--teal-500);
  --accent-deep:var(--teal-700);
  --focus-color:var(--teal-700);       /* bright teal is 1.4:1 on mist; deep teal is 6.4:1 */
  --focus-outline:3px solid var(--teal-700);
  --focus-bar:var(--navy-950);

  --action-primary:var(--teal-400);
  --action-primary-hover:var(--teal-500);
  --action-primary-text:var(--navy-950);

  --status-success:var(--green-700);
  --status-warning:var(--amber-700);
  --status-danger:var(--red-700);
  --status-info:var(--blue-700);
  --status-success-quiet:rgba(31,122,74,.09);
  --status-warning-quiet:rgba(138,88,0,.09);
  --status-danger-quiet:rgba(179,38,30,.08);
  --status-info-quiet:rgba(43,93,168,.08);
  --severity-critical:var(--red-700);
  --severity-high:var(--orange-700);
  --severity-medium:var(--amber-700);
  --severity-low:var(--navy-500);

  --scrim:rgba(13,16,36,.48);
  --grid-line:rgba(13,16,36,.05);
  --glow:rgba(4,235,211,.10);
  --watermark-opacity:.06; /* @kind other */
}

:where(.aug-dark,.aug-inverse,.aug-light,[data-theme]){color:var(--text-body);background:var(--surface-page)}

/* Legacy names — kept so older screens keep compiling. Do not use in new work. */
:root{
  --ink-900:var(--navy-950); --ink-800:var(--navy-900); --ink-700:var(--navy-800); --ink-600:var(--navy-700);
  --ink-300:var(--navy-300); --ink-100:var(--navy-200);
  --paper-000:#FFFFFF; --paper-050:#F4F5F7; --paper-100:var(--mist-100);
  --paper-a14:var(--white-a12);
  --signal-600:var(--teal-400); --verdigris-600:var(--green-400);
}

/* Logo -------------------------------------------------------------------- */
/* The mark keeps its geometry. Teal pair (current) puts the brand accent on the
   strut, so the raised bar of the A is the same "look here" as the highlight bar. */
:root{
  --logo-blade:#F4F5F7; --logo-strut:var(--teal-400);          /* on dark */
  --logo-blade-light:#0D1024; --logo-strut-light:var(--teal-700); /* on light */
  /* Previous blue pair, files retained unchanged in assets/ */
  --logo-blade-blue:#2C6FBF; --logo-strut-blue:#8CBBEC;
  --logo-blade-blue-inverse:#5C97DA; --logo-strut-blue-inverse:#A8CEF4;
}

/* ---- tokens/typography.css ---- */
:root{
  --size-3xs:11px; --size-2xs:12px; --size-xs:13px; --size-sm:14px; --size-base:17px;
  --size-md:19px; --size-lg:21px; --size-xl:24px; --size-2xl:clamp(1.75rem,1.4rem + 1.4vw,2.5rem);
  --size-3xl:clamp(2rem,1.5rem + 2vw,3rem);
  --size-display:clamp(2.5rem,1.6rem + 3.6vw,4.75rem);

  --leading-flat:1; --leading-display:1.05; --leading-tight:1.12; --leading-snug:1.3;
  --leading-normal:1.5; --leading-body:1.6;

  --weight-regular:400; --weight-text:400; --weight-medium:500; --weight-semibold:600; --weight-head:650; --weight-bold:700;

  --tracking-display:-0.03em; --tracking-tight:-0.02em; --tracking-normal:0;
  --tracking-label:0.08em; --tracking-eyebrow:0.16em;

  --type-display-1:var(--weight-head) var(--size-display)/var(--leading-display) var(--font-display);
  --type-display-2:var(--weight-head) var(--size-3xl)/var(--leading-tight) var(--font-display);
  --type-heading-1:var(--weight-head) var(--size-3xl)/var(--leading-tight) var(--font-display);
  --type-heading-2:var(--weight-head) var(--size-2xl)/var(--leading-tight) var(--font-display);
  --type-heading-3:var(--weight-head) var(--size-xl)/var(--leading-snug) var(--font-display);
  --type-heading-4:var(--weight-head) var(--size-md)/var(--leading-snug) var(--font-display);
  --type-lead:var(--weight-regular) var(--size-lg)/var(--leading-body) var(--font-body);
  --type-body-lg:var(--weight-regular) var(--size-md)/var(--leading-body) var(--font-body);
  --type-body:var(--weight-regular) var(--size-base)/var(--leading-body) var(--font-body);
  --type-body-sm:var(--weight-regular) var(--size-sm)/var(--leading-normal) var(--font-body);
  --type-ui:var(--weight-medium) var(--size-sm)/var(--leading-snug) var(--font-body);
  --type-ui-sm:var(--weight-medium) var(--size-xs)/var(--leading-snug) var(--font-body);
  --type-label:var(--weight-medium) var(--size-2xs)/var(--leading-flat) var(--font-label);
  --type-mono:var(--weight-regular) var(--size-xs)/var(--leading-normal) var(--font-mono);
  --type-numeral:var(--weight-head) var(--size-3xl)/var(--leading-flat) var(--font-display);
  --type-quote:var(--weight-regular) var(--size-xl)/var(--leading-snug) var(--font-quote);
}

/* ---- tokens/space.css ---- */
:root{
  --space-0:0; --space-px:1px; --space-2:2px; --space-4:4px; --space-6:6px; --space-8:8px;
  --space-10:10px; --space-12:12px; --space-14:14px; --space-16:16px; --space-20:20px; --space-24:24px;
  --space-32:32px; --space-40:40px; --space-48:48px; --space-56:56px; --space-72:72px;
  --space-96:96px; --space-128:128px; --space-160:160px;

  --measure-prose:66ch;
  --measure-lead:58ch;
  --width-container:1200px;
  --width-container-narrow:760px;
  --gutter:clamp(16px,4vw,32px); /* @kind spacing */
  --gutter-lg:clamp(16px,4vw,32px); /* @kind spacing */
  --section-y:clamp(64px,9vw,112px); /* @kind spacing */
  --section-y-lg:clamp(80px,12vw,144px); /* @kind spacing */
  --control-h-sm:36px; --control-h:44px; --control-h-lg:52px;
  --header-h:72px;
}

/* ---- tokens/shape.css ---- */
:root{
  /* Almost square. One radius for everything. */
  --radius-0:0; --radius-xs:2px; --radius-sm:2px; --radius-md:2px; --radius-lg:2px; --radius-xl:2px;
  --radius-control:2px; --radius-card:2px; --radius-sheet:2px;
  --radius-pill:2px; /* no pills: kept for legacy callers, resolves square */
  --radius-round:999px; /* switch knobs and radio dots only */

  --border-width:1px; --border-width-thick:3px;
  --hairline:1px solid var(--border-hairline);
  --rule:1px solid var(--border-subtle);
  --rule-accent:3px solid var(--accent);

  /* Motif: 72px square grid, faded by a radial mask (see .aug-motif in base.css) */
  --grid-size:72px;
  --grid-wash:linear-gradient(var(--grid-line) 1px,transparent 1px) 0 0/var(--grid-size) var(--grid-size),
              linear-gradient(90deg,var(--grid-line) 1px,transparent 1px) 0 0/var(--grid-size) var(--grid-size);
  --grid-mask:radial-gradient(ellipse 80% 70% at 70% 20%,#000 20%,transparent 75%); /* @kind other */
  --glow-top-right:radial-gradient(ellipse 60% 70% at 92% 0%,var(--glow),transparent 70%);
}

/* ---- tokens/elevation.css ---- */
:root{
  /* No drop shadows. Separation is a hairline; floating things get a border and a scrim. */
  --shadow-hairline:0 0 0 1px var(--border-hairline);
  --shadow-xs:none; --shadow-sm:none; --shadow-md:none; --shadow-lg:none;
  --bevel-top:none; /* @kind shadow */
  --bevel-inset:none; /* @kind shadow */
  /* Focus: 3px outline, 3px offset. Teal on dark, deep teal on light. */
  --focus-outline:3px solid var(--focus-color);
  --focus-offset:3px;
  --focus-ring:0 0 0 3px var(--surface-page),0 0 0 6px var(--focus-color);
}

/* ---- tokens/motion.css ---- */
:root{
  --duration-instant:80ms; /* @kind other */
  --duration-fast:120ms; /* @kind other */
  --duration-base:180ms; /* @kind other */
  --duration-slow:260ms; /* @kind other */
  --duration-slower:420ms; /* @kind other */
  --ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
  --ease-in-out:cubic-bezier(.65,0,.35,1); /* @kind other */
  --ease-entrance:cubic-bezier(.2,.8,.2,1); /* @kind other */
  --ease-linear:linear; /* @kind other */
  --transition-control:background-color var(--duration-fast) var(--ease-in-out),
                       border-color var(--duration-fast) var(--ease-in-out),
                       color var(--duration-fast) var(--ease-in-out),
                       box-shadow var(--duration-fast) var(--ease-in-out),
                       opacity var(--duration-fast) var(--ease-in-out); /* @kind other */
}
@media (prefers-reduced-motion:reduce){
  :root{
    --duration-instant:0ms; /* @kind other */
    --duration-fast:0ms; /* @kind other */
    --duration-base:0ms; /* @kind other */
    --duration-slow:0ms; /* @kind other */
    --duration-slower:0ms; /* @kind other */
  }
}

/* ---- tokens/base.css ---- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--type-body);
  text-wrap:pretty;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  font-variant-numeric:tabular-nums lining-nums;overflow-x:hidden}
h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-strong);letter-spacing:var(--tracking-tight);text-wrap:balance}
h1{font:var(--type-heading-1);letter-spacing:var(--tracking-display)}
h2{font:var(--type-heading-2)}h3{font:var(--type-heading-3)}h4{font:var(--type-heading-4)}
p{margin:0 0 var(--space-16)}
a{color:var(--text-link);text-decoration-line:underline;text-decoration-thickness:1px;
  text-underline-offset:.22em;text-decoration-color:var(--link-underline);
  transition:color var(--duration-fast) var(--ease-in-out)}
a:hover{color:var(--text-link-hover);text-decoration-thickness:2px}
:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
code,kbd,samp,pre{font-family:var(--font-mono);font-size:.9em}
hr{border:0;border-top:var(--rule);margin:var(--space-32) 0}
::selection{background:var(--accent);color:var(--text-on-accent)}
small{font-size:var(--size-xs)}
strong{font-weight:var(--weight-semibold);color:var(--text-strong)}
img,svg{max-width:100%}

/* Eyebrow: mono, uppercase, 0.16em, accent text */
.aug-eyebrow{font:var(--type-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-accent)}

/* Highlight bar: teal underline under the key phrase. Once per page or slide. */
.aug-highlight{background-image:linear-gradient(var(--accent),var(--accent));background-repeat:no-repeat;
  background-size:100% .13em;background-position:0 .98em;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.aug-light .aug-highlight,[data-theme="light"] .aug-highlight{color:var(--text-strong)}

/* Motif layers: grid (masked), glow, watermark. Put .aug-motif on a positioned section. */
.aug-motif{position:relative;isolation:isolate;overflow:hidden}
.aug-motif::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--grid-wash);
  -webkit-mask-image:var(--grid-mask);mask-image:var(--grid-mask);pointer-events:none}
.aug-motif::after{content:"";position:absolute;inset:0;z-index:-2;background:var(--glow-top-right);pointer-events:none}
.aug-watermark{position:absolute;z-index:-1;top:clamp(24px,6vw,72px);right:clamp(-40px,4vw,96px);
  width:clamp(180px,28vw,360px);opacity:var(--watermark-opacity);pointer-events:none;user-select:none}
.aug-grid-wash{background-image:var(--grid-wash)}
.aug-container{max-width:var(--width-container);margin:0 auto;padding:0 var(--gutter)}
.aug-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0ms!important;transition-duration:0ms!important;scroll-behavior:auto!important}}

/* ---- components/components.css ---- */
/* Augmensis component styles. Class-based so :hover/:active/:focus-visible are real CSS.
   Every colour is a semantic token, so each component works in dark (default) and .aug-light. */

/* Button ------------------------------------------------------------------ */
.aug-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-8);
  min-height:var(--control-h);padding:0 22px;border:1px solid transparent;border-radius:var(--radius-control);
  font:var(--weight-semibold) var(--size-base)/1.2 var(--font-body);white-space:nowrap;cursor:pointer;text-decoration:none;
  transition:var(--transition-control)}
.aug-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.aug-btn--sm{min-height:var(--control-h-sm);padding:0 14px;font:var(--weight-semibold) var(--size-sm)/1.2 var(--font-body)}
.aug-btn--lg{min-height:var(--control-h-lg);padding:0 30px}
.aug-btn--block{width:100%}
.aug-btn--primary,.aug-btn--accent{background:var(--action-primary);color:var(--action-primary-text)}
.aug-btn--primary:hover,.aug-btn--accent:hover{background:var(--action-primary-hover)}
.aug-btn--primary:active,.aug-btn--accent:active{transform:translateY(1px)}
.aug-btn--secondary{background:transparent;color:var(--text-strong);border-color:var(--border-strong)}
.aug-btn--secondary:hover{border-color:var(--text-strong);background:var(--surface-hover)}
.aug-btn--ghost{background:transparent;color:var(--text-body)}
.aug-btn--ghost:hover{background:var(--surface-hover);color:var(--text-strong)}
.aug-btn--danger{background:transparent;color:var(--status-danger);border-color:currentColor}
.aug-btn--danger:hover{background:var(--status-danger-quiet)}
.aug-btn--link{min-height:0;padding:2px 0;background:none;color:var(--text-link);font-weight:var(--weight-regular);
  text-decoration:underline;text-decoration-color:var(--link-underline);text-decoration-thickness:1px;text-underline-offset:.24em}
.aug-btn--link:hover{color:var(--text-link-hover);text-decoration-thickness:2px}
.aug-btn[disabled],.aug-btn[aria-disabled=true]{opacity:.4;pointer-events:none}
.aug-btn__affix{display:inline-flex;align-items:center}

/* IconButton -------------------------------------------------------------- */
.aug-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:var(--control-h);height:var(--control-h);
  padding:0;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text-muted);
  cursor:pointer;transition:var(--transition-control)}
.aug-iconbtn:hover{background:var(--surface-hover);color:var(--text-strong)}
.aug-iconbtn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.aug-iconbtn--sm{width:var(--control-h-sm);height:var(--control-h-sm)}
.aug-iconbtn--lg{width:var(--control-h-lg);height:var(--control-h-lg)}
.aug-iconbtn--outline{border-color:var(--border-strong);color:var(--text-body)}
.aug-iconbtn--outline:hover{border-color:var(--text-strong)}
.aug-iconbtn--solid{background:var(--action-primary);color:var(--action-primary-text)}
.aug-iconbtn--solid:hover{background:var(--action-primary-hover);color:var(--action-primary-text)}
.aug-iconbtn[disabled]{opacity:.4;pointer-events:none}

/* Card -------------------------------------------------------------------- */
.aug-card{position:relative;background:var(--surface-card);border:1px solid var(--border-hairline);
  border-radius:var(--radius-card);color:var(--text-body)}
.aug-card--accent{border-top:var(--rule-accent)}
.aug-card--raised{background:var(--surface-raised)}
.aug-card--sunken{background:var(--surface-sunken)}
.aug-card--interactive{cursor:pointer;transition:border-color var(--duration-base) var(--ease-out),background-color var(--duration-base) var(--ease-out)}
.aug-card--interactive:hover{border-color:var(--border-strong);background:var(--surface-raised)}
.aug-card__pad{padding:var(--space-24)}
.aug-card__pad--sm{padding:var(--space-12) var(--space-16)}
.aug-card__pad--lg{padding:clamp(24px,4vw,48px)}
.aug-card__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-16);
  padding:var(--space-14) var(--space-24);border-bottom:var(--hairline)}
.aug-card__foot{padding:var(--space-14) var(--space-24);border-top:var(--hairline);font:var(--type-body-sm);color:var(--text-muted)}
.aug-card__title{font:var(--type-heading-4);color:var(--text-strong)}
.aug-card__eyebrow{font:var(--type-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-accent);margin-bottom:6px}

/* Badge / Tag ------------------------------------------------------------- */
.aug-badge{display:inline-flex;align-items:center;flex:none;width:fit-content;white-space:nowrap;gap:var(--space-6);height:22px;padding:0 var(--space-8);
  border-radius:var(--radius-xs);font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;
  background:transparent;color:var(--text-muted);border:1px solid var(--border-strong)}
.aug-badge--lg{height:26px;padding:0 var(--space-10)}
.aug-badge--solid{border-color:transparent;background:var(--text-strong);color:var(--surface-page)}
.aug-badge--info{background:var(--status-info-quiet);color:var(--status-info);border-color:transparent}
.aug-badge--success{background:var(--status-success-quiet);color:var(--status-success);border-color:transparent}
.aug-badge--warning{background:var(--status-warning-quiet);color:var(--status-warning);border-color:transparent}
.aug-badge--danger{background:var(--status-danger-quiet);color:var(--status-danger);border-color:transparent}
.aug-badge__dot{flex:none;width:6px;height:6px;border-radius:0;background:currentColor}

.aug-tag{display:inline-flex;align-items:center;flex:none;white-space:nowrap;gap:var(--space-6);height:28px;padding:0 var(--space-8) 0 var(--space-10);
  border-radius:var(--radius-xs);border:1px solid var(--border-strong);background:transparent;
  font:var(--type-ui-sm);color:var(--text-body);transition:var(--transition-control)}
.aug-tag--mono{font:var(--type-mono)}
.aug-tag--clickable{cursor:pointer}
.aug-tag--clickable:hover{border-color:var(--text-strong)}
.aug-tag--selected{background:var(--text-strong);border-color:var(--text-strong);color:var(--surface-page)}
.aug-tag__x{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:-2px;
  border:0;background:none;padding:0;color:inherit;opacity:.6;cursor:pointer;border-radius:var(--radius-xs)}
.aug-tag__x:hover{opacity:1;background:var(--surface-hover)}

/* Fields ------------------------------------------------------------------ */
.aug-field{display:flex;flex-direction:column;gap:var(--space-8)}
.aug-field__label{font:var(--type-ui);color:var(--text-strong);display:flex;align-items:baseline;gap:var(--space-6)}
.aug-field__req{color:var(--status-danger);font-size:var(--size-2xs)}
.aug-field__hint{font:var(--type-body-sm);color:var(--text-muted)}
.aug-field__error{font:var(--type-body-sm);color:var(--status-danger)}
.aug-input{width:100%;height:var(--control-h);padding:0 12px;background:var(--surface-sunken);color:var(--text-strong);
  border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--weight-regular) var(--size-base)/1.3 var(--font-body);
  transition:var(--transition-control)}
.aug-input::placeholder{color:var(--text-faint)}
.aug-input:hover{border-color:var(--text-muted)}
.aug-input:focus{outline:var(--focus-outline);outline-offset:var(--focus-offset);border-color:var(--text-muted)}
.aug-input--sm{height:var(--control-h-sm);font-size:var(--size-sm)}
.aug-input--lg{height:var(--control-h-lg)}
.aug-input--mono{font-family:var(--font-mono);font-size:16px;letter-spacing:.01em}
.aug-input--textarea{height:auto;min-height:104px;padding:10px 12px;line-height:var(--leading-normal);resize:vertical}
.aug-input--invalid{border-color:var(--status-danger)}
.aug-input[disabled]{opacity:.5}
.aug-input[readonly]{background:transparent;border-style:dashed}
.aug-input::-webkit-calendar-picker-indicator{opacity:.7;cursor:pointer}
.aug-input[type=number]{font-variant-numeric:tabular-nums}
/* Attached text addons (prefix/suffix): same 44px height, hairline divider */
.aug-addon{display:flex;align-items:stretch;width:100%}
.aug-addon__part{display:flex;align-items:center;flex:none;padding:0 12px;border:1px solid var(--border-strong);
  background:var(--surface-panel);color:var(--text-muted);font:var(--type-mono);font-size:var(--size-sm);white-space:nowrap}
.aug-addon__part--start{border-right:0;border-radius:var(--radius-control) 0 0 var(--radius-control)}
.aug-addon__part--end{border-left:0;border-radius:0 var(--radius-control) var(--radius-control) 0}
.aug-addon .aug-input{flex:1;min-width:0}
.aug-addon--start .aug-input{border-top-left-radius:0;border-bottom-left-radius:0}
.aug-addon--end .aug-input{border-top-right-radius:0;border-bottom-right-radius:0}
.aug-addon__btn{display:flex;align-items:center;justify-content:center;flex:none;min-width:44px;padding:0 12px;border:1px solid var(--border-strong);border-left:0;
  border-radius:0 var(--radius-control) var(--radius-control) 0;background:var(--surface-sunken);color:var(--text-muted);font:var(--type-ui);cursor:pointer}
.aug-addon__btn:hover{color:var(--text-strong);background:var(--surface-hover)}
.aug-addon__btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
/* File picker */
.aug-file{display:flex;align-items:center;gap:var(--space-12);min-height:var(--control-h);padding:6px 6px 6px 12px;
  border:1px dashed var(--border-strong);border-radius:var(--radius-control);background:var(--surface-sunken);cursor:pointer;
  font:var(--type-body-sm);color:var(--text-muted);transition:var(--transition-control)}
.aug-file:hover{border-color:var(--text-muted)}
.aug-file:focus-within{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.aug-file input{position:absolute;opacity:0;width:1px;height:1px}
.aug-file__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aug-file__btn{flex:none;white-space:nowrap;display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid var(--border-strong);
  border-radius:var(--radius-xs);color:var(--text-strong);font:var(--type-ui-sm)}
.aug-field__count{font:var(--type-mono);font-size:var(--size-2xs);color:var(--text-faint);margin-left:auto}
.aug-input-wrap{position:relative;display:flex;align-items:center}
.aug-input-wrap__affix{position:absolute;display:flex;align-items:center;color:var(--text-faint);pointer-events:none}
.aug-input-wrap__affix--start{left:12px}
.aug-input-wrap__affix--end{right:12px}
.aug-input--has-start{padding-left:36px}
.aug-input--has-end{padding-right:36px}

.aug-select{position:relative;display:inline-flex;width:100%}
.aug-select__btn{display:flex;align-items:center;gap:var(--space-8);width:100%;height:var(--control-h);padding:0 12px;background:var(--surface-sunken);
  color:var(--text-strong);border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--weight-regular) var(--size-base)/1.3 var(--font-body);
  text-align:left;cursor:pointer;transition:var(--transition-control)}
.aug-select__btn:hover{border-color:var(--text-muted)}
.aug-select__btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.aug-select--open .aug-select__btn{border-color:var(--text-muted)}
.aug-select__btn[disabled]{opacity:.5;cursor:default}
.aug-select--sm .aug-select__btn{height:var(--control-h-sm);font-size:var(--size-sm)}
.aug-select__value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aug-select__value--placeholder{color:var(--text-faint)}
.aug-select__caret{flex:none;display:flex;color:var(--text-muted);transition:transform var(--duration-base) var(--ease-out)}
.aug-select--open .aug-select__caret{transform:rotate(180deg)}
.aug-select__list{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;margin:0;padding:4px 0;list-style:none;
  max-height:min(300px,50vh);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-xs);
  animation:aug-fade var(--duration-fast) var(--ease-out) both}
.aug-select__list[hidden]{display:none}
.aug-light .aug-select__list,[data-theme="light"] .aug-select__list{background:var(--mist-000)}
.aug-select__opt{display:flex;align-items:center;gap:10px;min-width:0;min-height:var(--control-h);padding:0 12px 0 10px;
  font:var(--weight-regular) var(--size-base)/1.3 var(--font-body);color:var(--text-body);cursor:pointer;user-select:none}
.aug-select--sm .aug-select__opt{min-height:var(--control-h-sm);font-size:var(--size-sm)}
.aug-select__opt--active{background:var(--surface-hover);color:var(--text-strong)}
.aug-select__opt[aria-selected=true]{color:var(--text-strong);font-weight:var(--weight-medium)}
.aug-select__opt[aria-disabled=true]{opacity:.45;cursor:default}
.aug-select__tick{flex:none;width:14px;display:flex;color:var(--text-accent)}
.aug-select__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aug-select__list::-webkit-scrollbar{width:8px}.aug-select__list::-webkit-scrollbar-thumb{background:var(--border-strong)}.aug-select__list::-webkit-scrollbar-track{background:transparent}

.aug-check{display:inline-flex;align-items:flex-start;gap:var(--space-10);cursor:pointer;font:var(--weight-regular) var(--size-base)/1.4 var(--font-body);color:var(--text-body)}
.aug-check input{position:absolute;opacity:0;width:0;height:0}
.aug-check__box{flex:none;width:18px;height:18px;margin-top:2px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);
  background:var(--surface-sunken);display:flex;align-items:center;justify-content:center;
  color:transparent;transition:var(--transition-control)}
.aug-check:hover .aug-check__box{border-color:var(--text-muted)}
.aug-check input:checked+.aug-check__box{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}
.aug-check input:focus-visible+.aug-check__box{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.aug-check--radio .aug-check__box{border-radius:var(--radius-round)}
.aug-check--radio input:checked+.aug-check__box{background:var(--surface-sunken);border-color:var(--accent);color:var(--accent)}
.aug-light .aug-check--radio input:checked+.aug-check__box{border-color:var(--text-strong);color:var(--text-strong)}
.aug-check__dot{width:8px;height:8px;border-radius:var(--radius-round);background:currentColor}
.aug-check--disabled{opacity:.42;pointer-events:none}
.aug-check__text{display:flex;flex-direction:column;gap:2px}
.aug-check__desc{font:var(--type-body-sm);color:var(--text-muted)}

.aug-switch{display:inline-flex;align-items:flex-start;gap:var(--space-10);cursor:pointer;font:var(--weight-regular) var(--size-base)/1.4 var(--font-body);color:var(--text-body)}
.aug-switch input{position:absolute;opacity:0;width:0;height:0}
.aug-switch__track{flex:none;position:relative;width:38px;height:22px;margin-top:1px;border-radius:var(--radius-xs);
  background:var(--surface-sunken);border:1px solid var(--border-strong);transition:background-color var(--duration-base) var(--ease-in-out)}
.aug-switch__knob{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:1px;
  background:var(--text-muted);transition:transform var(--duration-base) var(--ease-out),background-color var(--duration-base)}
.aug-switch:hover .aug-switch__track{border-color:var(--text-muted)}
.aug-switch input:checked+.aug-switch__track{background:var(--accent);border-color:var(--accent)}
.aug-switch__label{display:flex;flex-direction:column;gap:2px}
.aug-switch__desc{font:var(--type-body-sm);color:var(--text-muted)}
.aug-switch input:checked+.aug-switch__track .aug-switch__knob{transform:translateX(16px);background:var(--navy-950)}
.aug-switch input:focus-visible+.aug-switch__track{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
/* One switch size only: track and knob never change dimensions between states, so nothing shifts. */
.aug-switch--disabled{opacity:.42;pointer-events:none}

/* Tabs -------------------------------------------------------------------- */
.aug-tabs{display:flex;align-items:stretch;gap:var(--space-24);border-bottom:var(--hairline);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.aug-tabs::-webkit-scrollbar{display:none}
.aug-tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-8);padding:0 0 12px;border:0;background:none;
  font:var(--type-ui);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color var(--duration-fast) var(--ease-in-out)}
.aug-tab:hover{color:var(--text-strong)}
.aug-tab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent);
  transform:scaleX(0);transform-origin:left;transition:transform var(--duration-base) var(--ease-out)}
.aug-tab--active{color:var(--text-strong)}
.aug-tab--active::after{transform:scaleX(1)}
.aug-tab:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.aug-tab__count{font:var(--type-mono);font-size:var(--size-3xs);color:var(--text-faint)}
.aug-tabs--pills{border:1px solid var(--border-hairline);gap:0;padding:3px;border-radius:var(--radius-xs);display:inline-flex}
.aug-tabs--pills .aug-tab{padding:0 14px;height:32px;border-radius:var(--radius-xs)}
.aug-tabs--pills .aug-tab::after{display:none}
.aug-tabs--pills .aug-tab--active{background:var(--surface-selected)}

/* Tone chip — Dialog + Toast status glyph holder */
.aug-chip{display:flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;
  border-radius:var(--radius-xs);background:var(--surface-hover);color:var(--text-muted)}
.aug-chip svg{display:block}
.aug-chip--info{background:var(--status-info-quiet);color:var(--status-info)}
.aug-chip--success{background:var(--status-success-quiet);color:var(--status-success)}
.aug-chip--warning{background:var(--status-warning-quiet);color:var(--status-warning)}
.aug-chip--danger{background:var(--status-danger-quiet);color:var(--status-danger)}
.aug-chip--lg{width:28px;height:28px}

/* Dialog ------------------------------------------------------------------ */
.aug-dialog__scrim{position:fixed;inset:0;background:var(--scrim);
  display:flex;align-items:center;justify-content:center;padding:var(--space-16);z-index:60;
  animation:aug-fade var(--duration-base) var(--ease-out) both}
.aug-dialog{width:100%;max-width:480px;background:var(--surface-card);border:1px solid var(--border-strong);border-top:var(--rule-accent);
  border-radius:var(--radius-sheet);overflow:hidden;animation:aug-rise var(--duration-slow) var(--ease-out) both}
.aug-dialog__head{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:var(--space-12);
  padding:var(--space-24) var(--space-24) var(--space-12)}
.aug-dialog__head>.aug-chip{margin-top:2px}
.aug-dialog__title{font:var(--weight-head) var(--size-lg)/28px var(--font-display);color:var(--text-strong);letter-spacing:var(--tracking-tight)}
.aug-dialog__x{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-2px -6px 0 0;
  border:0;padding:0;background:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;transition:var(--transition-control)}
.aug-dialog__x:hover{background:var(--surface-hover);color:var(--text-strong)}
.aug-dialog__desc{margin:var(--space-6) 0 0;font:var(--type-body-sm);color:var(--text-muted)}
.aug-dialog__body{padding:0 var(--space-24) var(--space-24)}
.aug-dialog__foot{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-8);padding:var(--space-16) var(--space-24);border-top:var(--hairline)}
@keyframes aug-fade{from{opacity:0}to{opacity:1}}
@keyframes aug-rise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Toast ------------------------------------------------------------------- */
.aug-toast{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:var(--space-12);
  width:100%;max-width:400px;padding:var(--space-16);background:var(--surface-raised);
  border:1px solid var(--border-strong);border-radius:var(--radius-card);
  animation:aug-rise var(--duration-slow) var(--ease-out) both}
.aug-toast__title{font:var(--weight-semibold) var(--size-sm)/24px var(--font-body);color:var(--text-strong)}
.aug-toast__msg{margin:2px 0 0;font:var(--type-body-sm);color:var(--text-muted)}
.aug-toast__actions{display:flex;gap:var(--space-8);margin-top:var(--space-10)}
.aug-toast__x{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-2px -4px 0 0;
  border:0;padding:0;background:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;transition:var(--transition-control)}
.aug-toast__x:hover{color:var(--text-strong);background:var(--surface-hover)}

/* Tooltip ----------------------------------------------------------------- */
.aug-tip{position:relative;display:inline-flex}
.aug-tip__bubble{position:absolute;z-index:70;display:flex;align-items:center;gap:var(--space-8);
  padding:6px 9px;background:var(--surface-overlay);color:#F4F5F7;
  border:1px solid var(--white-a24);border-radius:var(--radius-xs);
  font:var(--type-ui-sm);white-space:nowrap;animation:aug-fade var(--duration-fast) var(--ease-out) both}
.aug-tip__bubble--top{bottom:calc(100% + 8px);left:50%;transform:translateX(-50%)}
.aug-tip__bubble--bottom{top:calc(100% + 8px);left:50%;transform:translateX(-50%)}
.aug-tip__bubble--right{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}
.aug-tip__bubble--left{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}
.aug-tip__key{display:inline-flex;align-items:center;height:18px;padding:0 5px;border-radius:var(--radius-xs);
  background:var(--white-a12);color:var(--navy-300);font:var(--type-mono);font-size:var(--size-3xs)}

/* Link focus: a teal marker, not a box. Teal fill + ink text + a 3px bar beneath.
   The bar carries the 3:1 indicator on light, where teal alone is 1.4:1. */
a:not([class]):focus-visible,.aug-btn--link:focus-visible,.aug-header__link:focus-visible,.aug-header__row:focus-visible,
.aug-footer__links a:focus-visible,.aug-contact__email:focus-visible,.aug-prose a:focus-visible{
  outline:none;background:var(--accent);color:var(--text-on-accent);text-decoration:none;
  box-shadow:0 -2px 0 var(--accent),0 3px 0 var(--focus-bar);border-radius:0}

/* ==== Site components ================================================== */

/* Header — solid bar, hairline bottom, teal current-page bar flush with the bottom edge.
   Container query, so it folds by its own width (works in previews and narrow columns). */
.aug-header{position:sticky;top:0;z-index:40;container-type:inline-size;container-name:aug-header;
  background:var(--surface-page);border-bottom:var(--hairline)}
.aug-header__inner{max-width:var(--width-container);margin:0 auto;height:var(--header-h);padding:0 var(--gutter);
  display:flex;align-items:stretch;gap:var(--space-32)}
.aug-header__brand{display:flex;align-items:center;flex:none;text-decoration:none;margin-right:auto}
.aug-header__brand:focus-visible{outline-offset:6px}
.aug-header__logo{height:30px;width:auto;display:block}
.aug-header__logo--light{display:none}
:is(.aug-light,[data-theme="light"]) .aug-header__logo--dark{display:none}
:is(.aug-light,[data-theme="light"]) .aug-header__logo--light{display:block}
.aug-header__nav{display:flex;gap:var(--space-32);align-items:stretch}
.aug-header__link{position:relative;display:flex;align-items:center;font:var(--weight-regular) var(--size-base)/1 var(--font-body);
  color:var(--text-muted);text-decoration:none;transition:color var(--duration-fast) var(--ease-in-out)}
.aug-header__link::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--accent);
  transform:scaleX(0);transform-origin:left;transition:transform var(--duration-base) var(--ease-out)}
.aug-header__link:hover{color:var(--text-strong);text-decoration:none}
.aug-header__link:hover::after{transform:scaleX(1);background:var(--border-strong)}
.aug-header__link[aria-current=page]{color:var(--text-strong)}
.aug-header__link[aria-current=page]::after{transform:scaleX(1);background:var(--accent)}
.aug-header__link:focus-visible{align-self:center}
.aug-header__action{display:flex;align-items:center;flex:none}
.aug-header__toggle{display:none;align-items:center;gap:10px;align-self:center;height:44px;padding:0 14px;
  border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:transparent;color:var(--text-strong);
  font:var(--type-ui);cursor:pointer;transition:var(--transition-control)}
.aug-header__toggle:hover{border-color:var(--text-strong)}
.aug-header__glyph{position:relative;width:16px;height:10px}
.aug-header__glyph i{position:absolute;left:0;right:0;height:2px;background:currentColor;transition:transform var(--duration-base) var(--ease-out)}
.aug-header__glyph i:first-child{top:0}.aug-header__glyph i:last-child{bottom:0}
.aug-header--open .aug-header__glyph i:first-child{transform:translateY(4px) rotate(45deg)}
.aug-header--open .aug-header__glyph i:last-child{transform:translateY(-4px) rotate(-45deg)}
.aug-header__panel{position:absolute;left:0;right:0;top:100%;background:var(--surface-page);border-bottom:var(--hairline);
  max-height:calc(100dvh - var(--header-h));overflow-y:auto;padding:0 var(--gutter) var(--space-24)}
.aug-header__panel[hidden]{display:none}
.aug-header__list{list-style:none;margin:0;padding:0}
.aug-header__row{position:relative;display:flex;align-items:center;min-height:56px;padding-left:16px;border-bottom:var(--hairline);
  font:var(--weight-medium) var(--size-md)/1.2 var(--font-body);color:var(--text-strong);text-decoration:none}
.aug-header__row:hover{color:var(--text-strong);background:var(--surface-hover)}
.aug-header__row[aria-current=page]::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;background:var(--accent)}
.aug-header__panel-action{margin-top:var(--space-24)}
.aug-header__panel-action .aug-btn{width:100%;min-height:var(--control-h)}
@container aug-header (max-width:720px){
  .aug-header__nav,.aug-header__action{display:none}
  .aug-header__toggle{display:inline-flex}
  .aug-header__inner{height:64px}
  .aug-header__logo{height:24px}
}
@container aug-header (min-width:721px){.aug-header__panel{display:none}}

/* Hero */
.aug-hero{padding:clamp(72px,12vw,152px) 0 clamp(64px,10vw,128px);border-bottom:var(--hairline)}
.aug-hero__inner{max-width:var(--width-container);margin:0 auto;padding:0 var(--gutter)}
.aug-hero__title{margin:var(--space-24) 0 0;max-width:15ch;font:var(--type-display-1);letter-spacing:var(--tracking-display);color:var(--text-strong)}
.aug-hero__lead{margin:var(--space-32) 0 0;max-width:var(--measure-lead);font:var(--type-lead);color:var(--text-muted)}
.aug-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-16) var(--space-32);margin-top:var(--space-48)}

/* Section header */
.aug-sechead{display:flex;flex-direction:column;gap:var(--space-16);max-width:var(--measure-prose);margin-bottom:var(--space-48)}
.aug-sechead__title{font:var(--type-heading-1);letter-spacing:var(--tracking-tight);color:var(--text-strong)}
.aug-sechead__sub{margin:0;font:var(--type-body-lg);color:var(--text-muted)}

/* Section wrapper */
.aug-section{padding:var(--section-y) 0;border-bottom:var(--hairline)}

/* Service card */
.aug-service{display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--border-hairline);border-top:var(--rule-accent);
  border-radius:var(--radius-card);padding:clamp(24px,4vw,48px)}
.aug-service__num{font:var(--type-label);font-size:var(--size-sm);letter-spacing:.12em;color:var(--text-accent)}
.aug-service__title{margin:var(--space-24) 0 0;font:var(--type-heading-3);color:var(--text-strong)}
.aug-service__desc{margin:var(--space-16) 0 0;font:var(--type-body);color:var(--text-muted)}
.aug-service__sub{margin:var(--space-32) 0 var(--space-16);padding-top:var(--space-24);border-top:var(--hairline);
  font:var(--type-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.aug-ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-12)}
.aug-ticks li{position:relative;padding-left:24px;font:var(--type-body);color:var(--text-body)}
.aug-ticks li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;background:var(--accent)}
.aug-service__foot{margin:auto 0 0;padding-top:var(--space-32);font:var(--type-body-sm);color:var(--text-faint)}

/* Callout */
.aug-callout{border-left:3px solid var(--accent);background:var(--surface-card);padding:var(--space-24) var(--space-32);max-width:var(--measure-prose)}
.aug-callout__title{margin:0;font:var(--type-heading-4);color:var(--text-strong)}
.aug-callout__body{margin:var(--space-8) 0 0;font:var(--type-body);color:var(--text-muted)}

/* Numbered columns */
.aug-numcols{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--space-48) var(--space-40)}
.aug-numcols__num{display:block;font:var(--type-numeral);font-size:clamp(2.5rem,2rem + 2vw,3.5rem);letter-spacing:var(--tracking-display);color:var(--text-numeral)}
.aug-numcols__title{margin:var(--space-20) 0 0;font:var(--type-heading-4);color:var(--text-strong)}
.aug-numcols__body{margin:var(--space-10) 0 0;font:var(--type-body);color:var(--text-muted)}

/* Facts list */
.aug-facts{margin:0;border-top:var(--hairline)}
.aug-facts__row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-8) var(--space-24);
  padding:var(--space-16) 0;border-bottom:var(--hairline)}
.aug-facts__key{font:var(--type-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.aug-facts__val{margin:0;font:var(--type-body);color:var(--text-strong);text-align:right;margin-left:auto}

/* Contact block */
.aug-contact{display:flex;flex-direction:column;gap:var(--space-24);max-width:var(--measure-prose)}
.aug-contact__title{font:var(--type-heading-1);letter-spacing:var(--tracking-tight);color:var(--text-strong)}
.aug-contact__email{font:var(--weight-head) clamp(1.5rem,1rem + 2.4vw,2.5rem)/1.15 var(--font-display);letter-spacing:var(--tracking-tight);
  color:var(--text-strong);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:3px;text-underline-offset:.18em;overflow-wrap:anywhere}
.aug-contact__email:hover{color:var(--text-link-hover);text-decoration-thickness:3px}
.aug-light .aug-contact__email:hover{color:var(--text-accent)}
.aug-contact__note{margin:0;font:var(--type-body);color:var(--text-muted)}

/* Footer */
.aug-footer{border-top:var(--hairline);padding:var(--space-56) 0 var(--space-32);background:var(--surface-page)}
.aug-footer__inner{max-width:var(--width-container);margin:0 auto;padding:0 var(--gutter);display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-40)}
.aug-footer__logo{height:26px;width:auto;display:block}
.aug-footer__legal{margin:var(--space-20) 0 0;font:var(--type-body-sm);color:var(--text-muted);font-style:normal}
.aug-footer__label{font:var(--type-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-16)}
.aug-footer__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-10)}
.aug-footer__links a{font:var(--type-body-sm);color:var(--text-body)}
.aug-footer__base{max-width:var(--width-container);margin:var(--space-48) auto 0;padding:var(--space-20) var(--gutter) 0;border-top:var(--hairline);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-8);font:var(--type-mono);color:var(--text-faint)}

/* Plain text page (privacy, 404) */
.aug-textpage{max-width:var(--width-container);margin:0 auto;padding:var(--section-y) var(--gutter)}
.aug-textpage__head{max-width:var(--measure-prose);padding-bottom:var(--space-40);margin-bottom:var(--space-40);border-bottom:var(--hairline)}
.aug-textpage__title{margin:var(--space-16) 0 0;font:var(--type-display-2);letter-spacing:var(--tracking-display);color:var(--text-strong)}
.aug-textpage__meta{margin:var(--space-16) 0 0;font:var(--type-mono);color:var(--text-muted)}
.aug-prose{max-width:var(--measure-prose);font:var(--type-body);color:var(--text-body)}
.aug-prose h2{font:var(--type-heading-3);margin:var(--space-48) 0 var(--space-12)}
.aug-prose h2:first-child{margin-top:0}
.aug-prose p,.aug-prose ul{margin:0 0 var(--space-16);color:var(--text-muted)}
.aug-prose ul{padding-left:1.2em}
