:root{--ink:#14213d;--text:#1f2933;--muted:#4a5563;--accent:#1d4e89;--accent-dark:#163d6b;--bg:#ffffff;--soft:#f3f6fa;--line:#d9e0e8}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg)}
a{color:var(--accent)}
a:focus-visible,.btn:focus-visible{outline:3px solid #f5a623;outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:.5rem 1rem;z-index:10}
.skip:focus{left:1rem}
.wrap{max-width:1040px;margin:0 auto;padding:0 1.25rem}
header.hero{background:var(--ink);color:#fff;padding:3.5rem 0 3rem}
.hero .eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#c9d6e8;margin:0 0 .5rem}
.hero h1{font-size:clamp(2rem,5vw,3rem);line-height:1.15;margin:0 0 .5rem}
.hero .tagline{font-size:clamp(1.1rem,2.5vw,1.35rem);color:#e3ebf5;margin:0 0 1.5rem;max-width:40ch}
.hero .loc{color:#c9d6e8;margin:0 0 1.75rem}
.btn{display:inline-block;padding:.8rem 1.3rem;border-radius:6px;font-weight:600;text-decoration:none;margin:0 .5rem .5rem 0}
.btn-primary{background:#fff;color:var(--ink)}
.btn-primary:hover{background:#e3ebf5}
.btn-outline{border:2px solid #fff;color:#fff}
.btn-outline:hover{background:rgba(255,255,255,.12)}
nav.top{background:#0f1a30}
nav.top ul{list-style:none;margin:0;padding:.6rem 0;display:flex;flex-wrap:wrap;gap:1.25rem}
nav.top a{color:#dbe5f2;text-decoration:none;font-size:.95rem}
nav.top a:hover{text-decoration:underline}
main section{padding:3rem 0;border-bottom:1px solid var(--line)}
main section:nth-of-type(even){background:var(--soft)}
h2{color:var(--ink);font-size:1.6rem;margin:0 0 1.25rem}
h3{color:var(--ink);font-size:1.05rem;margin:0 0 .35rem}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:6px;padding:1rem 1.1rem}
.card p{margin:0;color:var(--muted);font-size:.95rem}
ul.checks{padding-left:1.2rem;margin:0}
ul.checks li{margin:.35rem 0}
dl.data{display:grid;grid-template-columns:max-content 1fr;gap:.55rem 1.5rem;margin:0;background:#fff;border:1px solid var(--line);border-radius:6px;padding:1.25rem}
dl.data dt{font-weight:600;color:var(--ink)}
dl.data dd{margin:0}
.naics li{margin:.15rem 0}
.naics{margin:0;padding-left:1.1rem}
.note{color:var(--muted);font-size:.9rem;margin-top:.75rem}
.contact-list{list-style:none;padding:0;margin:0 0 1.5rem;font-size:1.1rem}
.contact-list li{margin:.4rem 0}
.contact .btn-primary{background:var(--accent);color:#fff}
.contact .btn-primary:hover{background:var(--accent-dark)}
footer{padding:1.5rem 0;color:var(--muted);font-size:.875rem}
@media (max-width:560px){dl.data{grid-template-columns:1fr;gap:.15rem}dl.data dd{margin-bottom:.6rem}}
@media print{nav.top,.btn{display:none}header.hero{background:#fff;color:#000}}
