:root{
  --map:#f7f3e8; --map2:#efe8d3; --road:#274156; --road2:#4a6a86;
  --sign:#1f5c3d; --sign2:#2e7d52; --amber:#c07f13; --ink:#22303c; --mut:#5a6a76;
  --line:#d9d0b4; --serif:Georgia,serif; --mono:'Courier New',ui-monospace,monospace;
  --sans:-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--map);color:var(--ink);font-family:var(--sans);line-height:1.62;
  background-image:linear-gradient(rgba(39,65,86,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(39,65,86,.045) 1px,transparent 1px);background-size:34px 34px}
a{color:var(--sign)} a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--road);color:#fff;padding:.5rem 1rem;z-index:9}.skip:focus{left:0}
header.mast{background:var(--road);color:#fff}
.mast-in{max-width:1080px;margin:0 auto;padding:.9rem 1.25rem;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between}
.brand{color:#fff;text-decoration:none;font-family:var(--serif);font-size:1.55rem;letter-spacing:.05em}
.brand b{color:#f2c14e}.brand small{display:block;font-family:var(--mono);font-size:.6rem;letter-spacing:.3em;color:#c9d6df}
nav.main a{color:#e8eef2;text-decoration:none;font-family:var(--mono);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;margin-left:1.1rem}
nav.main a:hover{color:#f2c14e;text-decoration:underline}
main{max-width:1080px;margin:0 auto;padding:0 1.25rem 3rem}
.hero{padding:2.4rem 0 1.2rem}
.kicker{font-family:var(--mono);letter-spacing:.25em;font-size:.7rem;text-transform:uppercase;color:var(--amber)}
.hero h1{font-family:var(--serif);font-size:2.45rem;line-height:1.16;margin:.3rem 0 .7rem}
.hero p.lede{font-size:1.12rem;color:var(--ink);max-width:46rem}
.signpost{background:var(--sign);color:#fff;border-radius:6px;padding:1.1rem 1.3rem;max-width:46rem;box-shadow:0 3px 0 var(--sign2);margin:1.2rem 0}
.signpost h2{color:#fff;margin:.1rem 0 .4rem;font-family:var(--serif);font-size:1.3rem}
.signpost a{color:#ffe9a8;font-weight:600}
section{padding:1.8rem 0;border-top:1px dashed var(--road2)}
h2{font-family:var(--serif);font-size:1.6rem;margin:.2rem 0 .6rem}
h2 .rt{font-family:var(--mono);font-size:.8rem;color:#fff;background:var(--road);border-radius:3px;padding:.15rem .5rem;vertical-align:middle;margin-right:.5rem;letter-spacing:.1em}
h3{font-family:var(--serif);font-size:1.12rem;margin:.5rem 0 .25rem}
.plates{display:grid;gap:.9rem;margin:1rem 0}
@media(min-width:720px){.plates{grid-template-columns:repeat(3,1fr)}}
.plate{display:block;background:#fff;border:1px solid var(--line);border-top:5px solid var(--sign);padding:1rem;text-decoration:none;color:var(--ink)}
.plate:hover{border-top-color:var(--amber)}
.plate b{font-family:var(--serif);font-size:1.15rem;display:block}
.plate span{font-size:.88rem;color:var(--mut)}
.plate .shield{display:inline-block;font-family:var(--mono);font-size:.68rem;background:var(--road);color:#fff;border-radius:3px;padding:.1rem .45rem;letter-spacing:.12em;margin-bottom:.4rem}
table.data{width:100%;border-collapse:collapse;background:#fff;font-size:.94rem}
table.data th{font-family:var(--mono);font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;text-align:left;background:var(--map2);border:1px solid var(--line);padding:.5rem}
table.data td{border:1px solid var(--line);padding:.55rem .5rem;vertical-align:top}
td.mono,th.mono{font-family:var(--mono);font-size:.84rem;white-space:nowrap}
.route{display:flex;gap:1rem;align-items:flex-start;margin:1rem 0}
.route .dot{flex:0 0 auto;width:2rem;height:2rem;border-radius:50%;background:var(--road);color:#fff;font-family:var(--mono);display:flex;align-items:center;justify-content:center;font-size:.85rem;margin-top:.15rem}
.btn{display:inline-block;background:var(--sign);color:#fff;text-decoration:none;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;padding:.75rem 1.3rem;border:2px solid var(--sign);border-radius:4px;cursor:pointer}
.btn:hover{background:var(--sign2)} .btn.alt{background:var(--road);border-color:var(--road)} .btn.ghost{background:transparent;color:var(--road);border-color:var(--road)}
.note{font-size:.9rem;color:var(--mut)} .small{font-size:.85rem}
fieldset{border:1px solid var(--line);background:#fff;padding:1rem 1.2rem;margin:1rem 0}
legend{font-family:var(--mono);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;background:var(--road);color:#fff;padding:.25rem .6rem;border-radius:3px}
label.opt{display:block;padding:.45rem .3rem;cursor:pointer} label.opt:hover{background:var(--map)}
footer.site{background:var(--road);color:#dbe5ec;margin-top:1rem}
footer.site .in{max-width:1080px;margin:0 auto;padding:1.6rem 1.25rem;font-size:.88rem}
footer.site a{color:#f2c14e}
ol.steps li{margin:.5rem 0}
.tag{display:inline-block;font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;border:1px solid var(--sign);color:var(--sign);padding:.1rem .45rem;text-transform:uppercase}
