:root{
  --paper:#F7F9F8; --card:#FFFFFF; --ink:#12352A; --ink-2:#41594E; --ink-3:#6E8278;
  --line:#DFE7E2; --accent:#1F8A5D; --accent-ink:#136746; --accent-soft:#E4F2EA;
  --sand:#F1EEE6; --warn-soft:#F8F1DF; --warn-line:#E5D4A9; --warn-ink:#7A5E1E;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0; background:var(--paper); color:var(--ink);
  font:400 16.5px/1.65 "Public Sans", system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:"Outfit", system-ui, sans-serif; line-height:1.15; text-wrap:balance; margin:0 0 .5em}
h1{font-size:clamp(30px,6vw,44px); font-weight:700; letter-spacing:-.015em}
h2{font-size:clamp(22px,4vw,28px); font-weight:600; margin-top:1.6em}
h3{font-size:19px; font-weight:600; margin-top:1.4em}
p{margin:.9em 0}
a{color:var(--accent-ink); text-decoration-thickness:1px; text-underline-offset:3px}
a:focus-visible,.btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px}
img{max-width:100%}
.wrap{max-width:720px; margin:0 auto; padding:0 20px}
header.site{padding:18px 0; border-bottom:1px solid var(--line); background:var(--card)}
header.site .wrap{display:flex; align-items:center; gap:10px}
.logo{font-family:"Outfit",sans-serif; font-weight:700; font-size:18px; color:var(--ink); text-decoration:none}
.logo .dot{color:var(--accent)}
header.site nav{margin-left:auto; display:flex; gap:18px; font-size:14px}
header.site nav a{text-decoration:none; color:var(--ink-2); font-weight:500}
.hero{padding:56px 0 34px}
.eyebrow{font-size:12.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); margin:0 0 12px}
.lede{font-size:19px; color:var(--ink-2); max-width:56ch}
.trust{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px}
.chip{background:var(--accent-soft); color:var(--accent-ink); font-size:13px; font-weight:600;
  padding:5px 12px; border-radius:99px}
.disclosure{background:var(--warn-soft); border:1px solid var(--warn-line); color:var(--warn-ink);
  border-radius:10px; padding:12px 16px; font-size:14px; margin:26px 0}
.disclosure a{color:inherit; font-weight:600}
.hub{display:grid; gap:12px; margin:10px 0 8px}
.btn{display:block; background:var(--card); border:1px solid var(--line); border-radius:12px;
  padding:16px 18px; text-decoration:none; color:var(--ink);
  transition:border-color .15s, transform .15s}
.btn:hover{border-color:var(--accent); transform:translateY(-1px)}
.btn .t{font-family:"Outfit",sans-serif; font-weight:600; font-size:17px; display:flex; align-items:center; gap:8px}
.btn .t::after{content:"→"; margin-left:auto; color:var(--accent)}
.btn .d{color:var(--ink-2); font-size:14px; margin-top:3px}
.btn.primary{background:var(--accent); border-color:var(--accent)}
.btn.primary .t,.btn.primary .d{color:#fff}
.btn.primary .t::after{color:#fff}
section.band{background:var(--card); border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  padding:40px 0; margin:44px 0}
section.band.sand{background:var(--sand); border-color:#E3DECF}
.cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:12px; margin-top:18px}
.card{background:var(--paper); border:1px solid var(--line); border-radius:12px; padding:16px 18px;
  text-decoration:none; color:var(--ink)}
.card h3{margin:0 0 6px; font-size:16.5px}
.card p{margin:0; font-size:14px; color:var(--ink-2)}
.about{display:flex; gap:16px; align-items:flex-start}
article{padding:44px 0 10px}
article .meta{color:var(--ink-3); font-size:14px; margin-bottom:8px}
article ul,article ol{padding-left:1.3em}
article li{margin:.35em 0}
article .tblwrap{overflow-x:auto; border:1px solid var(--line); border-radius:10px; background:var(--card); margin:1.2em 0}
article table{border-collapse:collapse; width:100%; min-width:520px; font-size:15px}
article th{ text-align:left; font-weight:600; padding:10px 14px; border-bottom:1px solid var(--line); background:var(--accent-soft); color:var(--accent-ink)}
article td{padding:10px 14px; border-bottom:1px solid var(--line)}
article tr:last-child td{border-bottom:none}
footer.site{margin-top:56px; padding:28px 0 40px; border-top:1px solid var(--line); background:var(--card);
  color:var(--ink-3); font-size:13.5px}
footer.site p{margin:.4em 0}
footer.site a{color:var(--ink-2)}
@media (prefers-reduced-motion: reduce){ *{transition:none!important} html{scroll-behavior:auto} }
