/* Shared token + prose stylesheet for MtaaSmart sub-pages (privacy, thanks,
   audit, report, 404).
   The landing page (index.html) inlines its own full stylesheet so it needs zero
   render-blocking requests; these low-traffic pages link this file instead. Keep
   the token block below in sync with section 1 of index.html. */

:root{
  --bg:#FCFBF8; --bg-sunk:#F4F3EC; --surface:#FFFFFF; --surface-2:#F7F7F2;
  --text:#101A16; --muted:#4A5A53;
  --line:#E1E3DB; --border:#BFC6BE; --border-strong:#78877F;
  --primary:#0F5132; --primary-hover:#0A3D25; --primary-soft:#E8F0EA; --on-primary:#FFFFFF;
  --accent:#9A4708; --accent-soft:#FBF1E2;
  --danger:#9B2226; --danger-soft:#FBEBEB;
  --ring:#0F5132;
  --edge:inset 0 0 0 0 rgba(255,255,255,0);
  --shadow-sm:0 1px 2px rgba(16,26,22,.05), 0 1px 1px rgba(16,26,22,.04);
  --shadow-md:0 1px 2px rgba(16,26,22,.05), 0 10px 28px -12px rgba(16,26,22,.16);
  --r-sm:10px; --r-md:14px; --r-lg:20px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0A100E; --bg-sunk:#070C0A; --surface:#111A16; --surface-2:#17231E;
    --text:#ECF2ED; --muted:#A3B3AA;
    --line:#1E2A25; --border:#2F4038; --border-strong:#5A6E65;
    --primary:#56D394; --primary-hover:#82E4B3; --primary-soft:#0F241B; --on-primary:#04120B;
    --accent:#F1AC44; --accent-soft:#241A0B;
    --danger:#FF8F94; --danger-soft:#2A1113;
    --ring:#82E4B3;
    --edge:inset 0 1px 0 rgba(255,255,255,.045);
    --shadow-sm:0 1px 2px rgba(0,0,0,.5);
    --shadow-md:0 1px 2px rgba(0,0,0,.5), 0 12px 30px -14px rgba(0,0,0,.85);
  }
}
:root[data-theme="dark"]{
  --bg:#0A100E; --bg-sunk:#070C0A; --surface:#111A16; --surface-2:#17231E;
  --text:#ECF2ED; --muted:#A3B3AA;
  --line:#1E2A25; --border:#2F4038; --border-strong:#5A6E65;
  --primary:#56D394; --primary-hover:#82E4B3; --primary-soft:#0F241B; --on-primary:#04120B;
  --accent:#F1AC44; --accent-soft:#241A0B;
  --danger:#FF8F94; --danger-soft:#2A1113;
  --ring:#82E4B3;
  --edge:inset 0 1px 0 rgba(255,255,255,.045);
  --shadow-sm:0 1px 2px rgba(0,0,0,.5);
  --shadow-md:0 1px 2px rgba(0,0,0,.5), 0 12px 30px -14px rgba(0,0,0,.85);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:17px; line-height:1.65;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
h1,h2,h3{margin:0 0 .5em; font-weight:800; line-height:1.16; letter-spacing:-.028em; text-wrap:balance}
h1{font-size:clamp(2rem,1.4rem + 2.4vw,2.9rem); letter-spacing:-.036em}
h2{font-size:1.32rem; margin-top:2.5rem}
h3{font-size:1.05rem; font-weight:750; margin-top:1.75rem}
p,li{text-wrap:pretty}
p{margin:0 0 1.05rem}
ul{padding-left:1.2rem; margin:0 0 1.05rem}
li{margin:.4rem 0}
a{color:var(--primary); text-underline-offset:3px}
a:hover{color:var(--primary-hover)}
strong{font-weight:700}
:focus-visible{outline:2.5px solid var(--ring); outline-offset:3px; border-radius:8px}
::selection{background:var(--primary); color:var(--on-primary)}

.wrap{width:min(1160px,100% - clamp(1.5rem,5vw,4rem)); margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute; left:1rem; top:-100px; z-index:100; background:var(--primary); color:var(--on-primary); padding:.75rem 1.15rem; border-radius:var(--r-sm); font-weight:700; text-decoration:none}
.skip:focus{top:1rem; color:var(--on-primary)}

.topbar{border-bottom:1px solid var(--line); background:var(--bg)}
.topbar__inner{display:flex; align-items:center; min-height:76px}
.brand{display:inline-flex; align-items:center; gap:.62rem; color:var(--text); text-decoration:none; font-weight:800; font-size:1.16rem; letter-spacing:-.036em}
.brand:hover{color:var(--text)}
.brand__mark{flex:none; border-radius:9px}
.art-primary{fill:var(--primary)}
.art-accent{fill:var(--accent)}

main{padding:clamp(2.5rem,2rem + 3vw,4.5rem) 0 clamp(3.5rem,2rem + 4vw,6rem)}
.prose{max-width:72ch}
.meta{color:var(--muted); font-size:.95rem; margin:-.5rem 0 2.5rem}
.callout{
  background:var(--surface); border:1px solid var(--border); border-left:4px solid var(--accent);
  border-radius:0 var(--r-md) var(--r-md) 0; padding:1.25rem 1.5rem; margin:0 0 2rem;
  box-shadow:var(--edge);
}
.callout > :last-child{margin-bottom:0}
dl{margin:0 0 1.05rem}
dt{font-weight:700; margin-top:1rem}
dd{margin:.2rem 0 0}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  font:inherit; font-weight:700; font-size:1rem; line-height:1.2; text-decoration:none; cursor:pointer;
  padding:.9rem 1.45rem; min-height:50px; border-radius:var(--r-sm); border:1.5px solid transparent;
  transition:background-color .18s ease, border-color .18s ease, color .18s ease;
}
.btn--primary{background:var(--primary); color:var(--on-primary); border-color:var(--primary); box-shadow:var(--shadow-sm)}
.btn--primary:hover{background:var(--primary-hover); border-color:var(--primary-hover); color:var(--on-primary)}
.btn--ghost{background:var(--surface); color:var(--text); border-color:var(--border-strong)}
.btn--ghost:hover{background:var(--surface-2); color:var(--text); border-color:var(--text)}
.btn-row{display:flex; flex-wrap:wrap; gap:.85rem; margin-top:2rem}

.centred{text-align:center; max-width:56ch; margin-inline:auto}
.centred .btn-row{justify-content:center}
.centred p{color:var(--muted)}
.mark-ok{
  display:inline-flex; align-items:center; justify-content:center; width:66px; height:66px;
  border-radius:50%; background:var(--primary-soft); color:var(--primary); margin-bottom:1.75rem;
}

.foot{border-top:1px solid var(--line); background:var(--bg-sunk); padding:2rem 0; color:var(--muted); font-size:.92rem}
.foot__inner{display:flex; flex-wrap:wrap; gap:.6rem 2rem; justify-content:space-between}
.foot p{margin:0}
.foot a{color:var(--text); text-decoration:none}
.foot a:hover{color:var(--primary); text-decoration:underline}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important}
}

/* ── Thank-you page gift cards ─────────────────────────────────────────── */
.gifts{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1.35rem; margin:2.5rem 0}
.gift{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--r-lg);
  padding:1.75rem 1.6rem; box-shadow:var(--shadow-md), var(--edge); text-align:left;
}
.gift h2{margin:0 0 .6rem; font-size:1.2rem}
.gift p{color:var(--muted); font-size:.98rem}
.gift .btn{margin-top:.35rem}
.gift__tag{
  display:inline-block; font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;
  color:var(--accent); background:var(--accent-soft); border-radius:999px; padding:.3rem .7rem; margin-bottom:.9rem;
}
.hint{font-size:.9rem; color:var(--muted)}
