:root{--ink:#0f2233;--paper:#f7f9fb;--band:#e9f0f5;--line:#cfdae3;--muted:#4d6275;--signal:#ffc93c;--signal-d:#e6ae12;--teal:#127c78;
--head:"Bricolage Grotesque",system-ui,sans-serif;--body:"Source Sans 3",system-ui,sans-serif}
@media (prefers-color-scheme:dark){:root{--ink:#e8eff5;--paper:#0d1b28;--band:#13273a;--line:#27425a;--muted:#9bb0c2;--teal:#4fd1c5}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.6 var(--body)}
h1,h2,h3{font-family:var(--head);line-height:1.15;margin:0 0 .6em}
h1{font-size:clamp(2rem,5vw,3.4rem);font-weight:700}h2{font-size:clamp(1.5rem,3vw,2.1rem)}h3{font-size:1.2rem}
a{color:var(--teal)}.wrap{max-width:1080px;margin:auto;padding:4rem 1.25rem}.narrow{max-width:760px}
.sr,.hp{position:absolute;left:-9999px}
.top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}
.brand{font:700 1.3rem var(--head);color:var(--ink);text-decoration:none}
.top nav{display:flex;gap:1.1rem;align-items:center;flex-wrap:wrap}.top nav a{color:var(--ink);text-decoration:none}
.top nav a.btn{color:#0f2233}
.btn{display:inline-block;background:var(--signal);color:#0f2233;font:700 1rem var(--head);border:0;border-radius:6px;padding:.8rem 1.4rem;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--signal-d)}.btn.small{padding:.5rem 1rem}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:2rem;align-items:center}
.lead-text,.hero .lead{font-size:1.2rem;color:var(--muted);max-width:52ch}
.zip{margin-top:1.5rem;max-width:460px}.zip label{font-weight:600;display:block;margin-bottom:.3rem}
.zip-row{display:flex;gap:.5rem}
input,select{width:100%;font:inherit;padding:.7rem .8rem;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink)}
.msg{min-height:1.5em;margin:.5rem 0 0;color:var(--teal);font-weight:600}.msg.err{color:#c0392b}
.signal{display:flex;align-items:flex-end;gap:.6rem;height:240px;justify-self:center}
.signal span{width:34px;height:var(--h);background:var(--teal);border-radius:4px 4px 0 0;opacity:.25;animation:lit 2.5s ease-out forwards}
.signal span:nth-child(2){animation-delay:.25s}.signal span:nth-child(3){animation-delay:.5s}.signal span:nth-child(4){animation-delay:.75s}.signal span:nth-child(5){animation-delay:1s}
@keyframes lit{to{opacity:1}}
.band{background:var(--band)}.band>.wrap{padding-block:3.5rem}
.two{display:grid;grid-template-columns:1fr 1.2fr;gap:2.5rem;align-items:start}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.7rem .5rem;border-bottom:1px solid var(--line)}th{font-family:var(--head)}
.steps{list-style:none;counter-reset:s;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.steps li{counter-increment:s;border-top:3px solid var(--signal);padding-top:1rem}
.steps li::before{content:counter(s);font:700 2rem var(--head);color:var(--teal)}
.types{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem 2.5rem;margin:0}.types dt{font:700 1.15rem var(--head)}.types dd{margin:.2rem 0 0;color:var(--muted)}
.lead{display:grid;gap:1rem}.lead label{display:grid;gap:.3rem;font-weight:600}
.lead .check{display:flex;gap:.6rem;font-weight:400;font-size:.92rem}.lead .check input{width:auto;margin-top:.3rem}
.note{font-size:.88rem;color:var(--muted);margin:0}
details{border-bottom:1px solid var(--line);padding:.9rem 0}summary{cursor:pointer;font:700 1.1rem var(--head)}details p{color:var(--muted);margin:.6rem 0 0}
footer{border-top:1px solid var(--line)}.foot{display:grid;gap:1rem;padding-block:2rem}.legal{font-size:.88rem;color:var(--muted);margin:0}
footer nav a{margin-right:1rem}
@media (max-width:760px){.hero-grid,.two,.steps,.types{grid-template-columns:1fr}.signal{height:120px}.zip-row{flex-direction:column}}
@media (prefers-reduced-motion:reduce){.signal span{animation:none;opacity:1}html{scroll-behavior:auto}}
