/* Shared style for policy, welcome and 404 pages: same navy bar, road-sign headings and tokens as the home page. */
:root{
  --bg:#F3F5F9; --surface:#FFFFFF; --surface2:#E5EAF2; --ink:#121826; --muted:#58627A; --line:#D6DCE7;
  --navy:#111A36; --navy2:#1B2850; --on-navy:#F3F5FA; --navy-muted:#B1BBD6;
  --gold:#F4B400; --gold-text:#8A6400; --on-gold:#171717; --focus:#2F6FEB;
  --ok:#0B8F64; --ok-soft:#DDF3E8; --link:#1F57B5;
  --f-display:"Barlow Condensed","Arial Narrow","Roboto Condensed",sans-serif;
  --f-body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
}
@media (prefers-color-scheme: dark){:root{
  --bg:#0B0F1D; --surface:#151B2D; --surface2:#212941; --ink:#ECEFF6; --muted:#9AA3B9; --line:#2A3350;
  --navy:#0F1630; --navy2:#1A2550; --gold-text:#F4B400; --focus:#7FA8FF; --ok:#3BD38A; --ok-soft:#12352A; --link:#8DB4FF;
  color-scheme:dark}}
*{box-sizing:border-box}
html,body{background:var(--bg)}
body{margin:0;color:var(--ink);font:17px/1.6 var(--f-body)}
a{color:var(--link)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.wrap{max-width:820px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.top{background:var(--navy);color:var(--on-navy)}
.top .wrap{max-width:1140px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font:800 22px/1 var(--f-display);letter-spacing:.07em;text-transform:uppercase}
.brand b{font-weight:600;color:var(--navy-muted)}
.brand,.btn{white-space:nowrap}
@media (max-width:480px){.hide-sm{display:none}}
.flag{display:grid;grid-template-rows:repeat(3,6px);width:27px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.3)}
.flag i:nth-child(1){background:#111}.flag i:nth-child(2){background:#DD1C1A}.flag i:nth-child(3){background:#FFCC00}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border-radius:14px;font-weight:700;text-decoration:none;background:var(--gold);color:var(--on-gold);box-shadow:0 4px 0 #B88700}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 #B88700}
.doc{padding-block:48px 64px}
.doc .eyebrow,.welcome .eyebrow{margin:0 0 10px;font:700 15px/1.2 var(--f-display);text-transform:uppercase;letter-spacing:.14em;color:var(--gold-text)}
.doc h1{margin:0 0 8px;font:800 clamp(38px,6vw,56px)/.98 var(--f-display);text-transform:uppercase;text-wrap:balance}
.doc .updated{margin:0 0 32px;color:var(--muted);font-size:15px}
.doc h2{margin:34px 0 8px;font:800 26px/1.1 var(--f-display);text-transform:uppercase;letter-spacing:.02em}
.doc p,.doc li{max-width:68ch}
.doc ul{padding-left:22px}
.doc li{margin-bottom:6px}
.box{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px 22px;margin:20px 0}
.box dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 18px}
.box dt{font:700 15px/1.6 var(--f-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.box dd{margin:0;font-weight:700;overflow-wrap:anywhere}
@media (max-width:480px){.box dl{grid-template-columns:1fr;gap:2px}.box dd{margin-bottom:10px}}
.foot{border-top:1px solid var(--line);padding-block:26px 40px;font-size:14px;color:var(--muted)}
.foot .wrap{max-width:1140px;display:grid;gap:10px}
.foot .links{display:flex;flex-wrap:wrap;gap:6px 18px}
.foot a{color:inherit}
/* welcome page */
.welcome{padding-block:48px 64px;text-align:center;display:grid;gap:18px;justify-items:center}
.tick{width:92px;height:92px;border-radius:50%;background:var(--ok);display:grid;place-items:center;box-shadow:0 0 0 12px var(--ok-soft)}
.tick svg{width:50px;height:50px}
.welcome h1{margin:6px 0 0;font:800 clamp(40px,7vw,62px)/.95 var(--f-display);text-transform:uppercase;text-wrap:balance}
.welcome .lead{margin:0;color:var(--muted);font-size:19px;max-width:40ch}
.welcome .btn{min-height:64px;padding:14px 34px;font-size:20px}
.payid{font-size:14px;color:var(--muted);margin:0}
.payid code{font-size:15px;color:var(--ink);background:var(--surface2);padding:2px 8px;border-radius:6px}
.save{width:100%;text-align:left;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:640px){.save{grid-template-columns:1fr}}
.save .box{margin:0}
.save h2{margin:0 0 6px;font:800 22px/1.1 var(--f-display);text-transform:uppercase}
.save ol{margin:0;padding-left:20px}
.note{color:var(--muted);font-size:15px;max-width:52ch;margin:0}
