
:root{--paper:#F2F4F3;--paper2:#EAEDEB;--ink:#101D2E;--steel:#5A6875;--line:#C9D0CE;--seal:#96782F;--m:clamp(1.1rem,3vw,2rem)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{background:var(--paper);color:var(--ink);font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:1.0625rem;line-height:1.68;-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a{color:var(--ink)}
a:focus-visible{outline:2px solid var(--seal);outline-offset:3px}
.wrap{max-width:72rem;margin-inline:auto;padding-inline:var(--m);width:100%}
.label{font:500 .72rem/1.4 "IBM Plex Mono",monospace;letter-spacing:.2em;text-transform:uppercase;color:var(--steel)}
header{position:sticky;top:0;background:var(--paper);z-index:10;border-bottom:1px solid var(--ink)}
.bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:.85rem;position:relative}
.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none}
.brand img{width:34px;height:34px}
.brand span{font:500 .9rem/1 "IBM Plex Mono",monospace;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.brand b{color:var(--seal);font-weight:500}
nav.main{display:flex;gap:1.5rem;font:400 .78rem/1 "IBM Plex Mono",monospace;letter-spacing:.08em;flex-wrap:wrap}
nav.main a{text-decoration:none;color:var(--steel);padding-block:.3rem}
nav.main a:hover{color:var(--seal)}
nav.main a[aria-current="page"]{color:var(--ink);border-bottom:2px solid var(--seal)}
.datum{position:absolute;right:0;bottom:-.7rem;font:500 .66rem/1 "IBM Plex Mono",monospace;letter-spacing:.14em;color:var(--steel);background:var(--paper);padding-inline:.5rem;text-transform:uppercase}

.burger{display:none;background:none;border:1px solid var(--ink);padding:.55rem .7rem;cursor:pointer;border-radius:0}
.burger span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0;transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media (max-width:56rem){
  .datum{display:none}
  .burger{display:block}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--ink);flex-direction:column;gap:0;padding:.4rem var(--m) 1rem}
  nav.main.open{display:flex}
  nav.main a{padding-block:.85rem;border-bottom:1px solid var(--line);font-size:.9rem}
  nav.main a:last-child{border-bottom:0}
  nav.main a[aria-current="page"]{border-bottom:1px solid var(--line);color:var(--seal)}
}
.hero{padding-block:clamp(4rem,12vh,8rem) clamp(3rem,8vh,5.5rem);position:relative}
.eyebrow{margin-bottom:1.5rem}
h1{font-family:"Spectral",serif;font-weight:275;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.06;letter-spacing:-.012em;max-width:16ch}
h1 em{font-style:normal;text-decoration:underline;text-decoration-color:var(--seal);text-decoration-thickness:3px;text-underline-offset:.14em;text-decoration-skip-ink:none}
.sub{max-width:52ch;margin-top:1.9rem;color:var(--steel);font-size:1.07rem}
.heromark{position:absolute;right:var(--m);top:clamp(3.5rem,10vh,6rem);width:clamp(84px,11vw,132px);transform:rotate(-8deg);opacity:.94;animation:stamp .5s cubic-bezier(.2,1.4,.4,1) both .3s}
@keyframes stamp{from{transform:rotate(-8deg) scale(1.6);opacity:0}to{transform:rotate(-8deg) scale(1);opacity:.94}}
@media (max-width:48rem){.heromark{position:static;margin-top:2.2rem;transform:rotate(-6deg)}}
section{padding-block:clamp(3.2rem,8vh,6rem)}
section>.wrap>.label{display:block;margin-bottom:2.2rem}
h2.head{font-family:"Spectral",serif;font-weight:400;font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.2;max-width:26ch;margin-bottom:1.2rem}
.lead{font-family:"Spectral",serif;font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1.55;max-width:58ch}
.lead+.lead{margin-top:1.3rem}
.cols{display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.tick{display:block;width:1.1rem;height:3px;background:var(--ink);margin-bottom:1.1rem}
.cols h3{font-family:"Spectral",serif;font-weight:400;font-size:1.4rem;line-height:1.25;margin-bottom:.65rem}
.cols p{color:var(--steel);font-size:.98rem;max-width:40ch}
.steps{counter-reset:s;border-top:1px solid var(--ink)}
.step{display:grid;grid-template-columns:5.2rem 1fr;gap:1.4rem;padding-block:1.9rem;border-bottom:1px solid var(--line);counter-increment:s}
.step::before{content:"0" counter(s);font:400 1.7rem/1 "Spectral",serif;color:var(--seal)}
.step h3{font:600 1rem/1.35 "IBM Plex Sans",sans-serif;margin-bottom:.4rem}
.step p{color:var(--steel);font-size:.98rem;max-width:64ch}
@media (max-width:40rem){.step{grid-template-columns:3.2rem 1fr}}
table.gov{width:100%;border-collapse:collapse;font-size:.97rem}
.gov th{font:500 .72rem/1.4 "IBM Plex Mono",monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--steel);text-align:left;padding:.9rem .9rem .9rem 0;border-bottom:1px solid var(--ink)}
.gov td{padding:1rem .9rem 1rem 0;border-bottom:1px solid var(--line);vertical-align:top}
.gov td:first-child{font-weight:600;white-space:nowrap}
.gov td:last-child{color:var(--steel)}
.dark{background:var(--ink);color:var(--paper);--seal:#C9A24B}
.dark .label{color:#9AA7B4}
.dark h2.head{color:var(--paper)}
.dark .lead{color:#C9D2DB}
.dark .cols h3{color:var(--paper)}
.dark .cols p{color:#9AA7B4}
.dark .nb{font:400 .8rem/1.7 "IBM Plex Mono",monospace;color:#8794A2;max-width:66ch;margin-top:2.4rem;border-left:2px solid var(--seal);padding-left:1rem}
details.tos{border-bottom:1px solid var(--line)}
details.tos:first-of-type{border-top:1px solid var(--ink)}
details.tos summary{cursor:pointer;padding-block:1.1rem;font-weight:600;font-size:.98rem;list-style:none;display:flex;justify-content:space-between;align-items:center}
details.tos summary::-webkit-details-marker{display:none}
details.tos summary::after{content:"+";font-family:"IBM Plex Mono",monospace;color:var(--seal)}
details.tos[open] summary::after{content:"\2013"}
details.tos .body{padding-bottom:1.4rem;color:var(--steel);font-size:.95rem;max-width:72ch}
.mail{font-family:"Spectral",serif;font-size:clamp(1.35rem,3vw,2.1rem);font-weight:400;text-decoration:none;border-bottom:2px solid var(--seal)}
.mail:hover{color:var(--seal)}
.note{color:var(--steel);font-size:.95rem;margin-top:1.1rem;max-width:56ch}
.next{border-top:1px solid var(--line)}
.next a{font-family:"Spectral",serif;font-size:clamp(1.2rem,2.6vw,1.7rem);text-decoration:none}
.next a:hover{color:var(--seal)}
.next .label{margin-bottom:.6rem;display:block}
footer{border-top:1px solid var(--ink);padding-block:1.7rem 2.4rem;margin-top:auto}
footer .grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
footer p,footer li{font:400 .74rem/1.75 "IBM Plex Mono",monospace;color:var(--steel)}
footer ul{list-style:none;padding:0}
