:root{--navy:#17354A;--ocean:#5D8997;--ocean-dk:#3D6774;--glass:#DCE9E7;--ivory:#F6F0E4;--copper:#C87854;--copper-dk:#8E4A2B;--ink:#1d2b34;--muted:#4a5a64;--line:#d6cfc0;--white:#fff;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;overflow-wrap:break-word;font-family:var(--sans);font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--ivory)}
a{color:var(--ocean-dk);text-underline-offset:2px}a:hover{color:var(--navy)}
:focus-visible{outline:3px solid var(--copper);outline-offset:2px;border-radius:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:.6rem 1rem;z-index:10}.skip:focus{left:.5rem;top:.5rem;color:#fff}
.wrap{max-width:1120px;margin:0 auto;padding:0 1.1rem}
.preview-bar{background:var(--copper-dk);color:#fff;font-size:.85rem;text-align:center;padding:.3rem .8rem}
header.site{background:var(--navy);color:#fff}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;flex-wrap:wrap}
.brand{font-family:var(--sans);font-weight:800;letter-spacing:.06em;color:#fff;text-decoration:none;font-size:1.25rem;display:flex;align-items:center;gap:.5rem}
.brand:hover{color:var(--glass)}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;gap:.25rem;flex-wrap:wrap}
nav.main a{color:#fff;text-decoration:none;font-family:var(--serif);padding:.45rem .6rem;display:inline-block;border-radius:4px}
nav.main a:hover,nav.main a[aria-current]{background:rgba(255,255,255,.12);color:#fff}
h1,h2,h3{font-family:var(--serif);color:var(--navy);line-height:1.2}
h1{font-size:clamp(2rem,6vw,3rem);margin:.3rem 0 .4rem}
h2{font-size:1.5rem;margin:2rem 0 .6rem}h3{font-size:1.15rem;margin:1.2rem 0 .3rem}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-family:var(--sans);font-weight:800;font-size:1rem;color:var(--navy)}
/* hero */
.hero{background:var(--glass);position:relative;overflow:hidden}
.hero .wrap{position:relative;padding-top:2.4rem;padding-bottom:3.5rem;min-height:400px}
.hero h1{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.01em;max-width:13ch;font-size:clamp(2rem,7vw,3.2rem)}
.hero p.lede{position:relative;z-index:2;font-family:var(--serif);font-size:1.15rem;max-width:30ch;color:var(--ink)}
.hero svg.art{position:absolute;right:0;bottom:0;width:100%;height:auto;max-height:100%;pointer-events:none}
.hero .search{position:relative;z-index:2;margin:1.4rem 0 0;padding-bottom:2rem;max-width:560px}
.search label{position:absolute;left:-999px}
.search input{width:100%;font-size:1.05rem;padding:.9rem 1rem;border:2px solid var(--navy);border-radius:4px;background:#fff;color:var(--ink);font-family:var(--serif)}
.results{list-style:none;margin:.3rem 0 0;padding:0;background:#fff;border:1px solid var(--line);border-radius:4px;max-height:320px;overflow:auto;box-shadow:0 6px 18px rgba(23,53,74,.15)}
.results li a{display:block;padding:.55rem .9rem;text-decoration:none;color:var(--navy)}
.results li a:hover,.results li a:focus{background:var(--glass)}
.results li small{color:var(--muted)}
.results[hidden]{display:none}
/* tiles */
.band{background:var(--ivory);padding:1.8rem 0 2.2rem}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;margin-top:1rem}
.tile{display:block;background:#fff;border:1px solid var(--line);border-radius:4px;text-decoration:none;color:var(--ink);overflow:hidden}
.tile:hover{border-color:var(--ocean)}
.tile .art{height:110px;display:flex;align-items:flex-end;justify-content:flex-end;padding-right:1.2rem}
.tile .t{padding:.7rem .9rem .9rem}.tile strong{display:block;color:var(--navy);text-transform:uppercase;letter-spacing:.04em}
.tile span{font-family:var(--serif);color:var(--muted);font-size:.95rem}
.linkrow{font-family:var(--serif);margin-top:1.4rem}.linkrow a{color:var(--ink)}.linkrow span{color:var(--muted);padding:0 .4rem}
/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;margin:1rem 0;padding:0;list-style:none}
.card{background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}
.card img,.card .ph{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;background:var(--glass)}
.card .b{padding:.75rem .9rem 1rem}.card h3{margin:0 0 .2rem;font-size:1.1rem}.card h3 a{color:var(--navy);text-decoration:none}.card h3 a:hover{text-decoration:underline}
.card p{margin:.2rem 0;font-size:.95rem;color:var(--muted)}
.badge{display:inline-block;font-size:.78rem;font-weight:700;padding:.12rem .5rem;border-radius:999px;border:1px solid;margin:.15rem .25rem .15rem 0;line-height:1.4}
.b-ok{background:#e3efe9;color:#1f5137;border-color:#9cc3ae}.b-warn{background:#fbefe4;color:#7a3b17;border-color:#e2b593}.b-no{background:#f3e6e6;color:#6e1f1f;border-color:#d6a4a4}.b-info{background:var(--glass);color:var(--navy);border-color:#a9c6c1}
/* detail */
.crumbs{font-size:.92rem;margin:1.1rem 0 0}.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.3rem}.crumbs li+li:before{content:"/";color:var(--muted);margin-right:.3rem}
.crumbs a{color:var(--ocean-dk)}
.sub{font-family:var(--serif);margin:0 0 1rem;color:var(--ink)}
.detail-grid{display:grid;grid-template-columns:1fr;gap:1.2rem}
@media(min-width:860px){.detail-grid{grid-template-columns:minmax(0,1fr) 340px}}
figure.photo{margin:0;background:var(--glass);border:1px solid var(--line);border-radius:4px;overflow:hidden}
figure.photo img{width:100%;height:auto;display:block;max-height:520px;object-fit:cover}
figure.photo figcaption{font-size:.82rem;color:var(--muted);padding:.5rem .8rem;background:#fff}
.plan{background:#fff;border:1px solid var(--line);border-radius:4px;padding:1rem 1.1rem;align-self:start}
.plan h2{font-family:var(--sans);text-transform:uppercase;font-size:1.05rem;letter-spacing:.04em;margin:0 0 .6rem}
.plan dl{margin:0}.plan dt{font-weight:700;font-size:.9rem;color:var(--navy);margin-top:.6rem}.plan dd{margin:0;font-size:.93rem}
.plan .src{display:block;font-size:.8rem;color:var(--muted);margin-top:.1rem}
.notice{background:#fbefe4;border-left:4px solid var(--copper);padding:.7rem .9rem;font-size:.93rem;margin:1rem 0}
.facts{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);font-size:.95rem}
.facts th,.facts td{overflow-wrap:anywhere;text-align:left;padding:.5rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}
.facts th{width:38%;color:var(--navy);background:#fbf8f1;font-weight:700}
.facts .src{display:block;font-size:.8rem;color:var(--muted)}
.tabs{background:#fff;border:1px solid var(--line);border-radius:4px;padding:.6rem 1rem;margin:1.2rem 0}
.tabs ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.2rem 1rem;font-weight:700}
.tabs a{color:var(--navy)}
.map{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--glass)}
.map iframe{width:100%;height:320px;border:0;display:block}
#statemap{height:420px}
ol.sources{font-size:.92rem;padding-left:1.3rem;overflow-wrap:anywhere}ol.sources li{margin:.35rem 0}
.lead-box{background:#fff;border:1px dashed var(--ocean);padding:.7rem .9rem;font-size:.92rem;border-radius:4px}
.filters{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;background:#fff;border:1px solid var(--line);padding:.7rem .9rem;border-radius:4px}
.filters label{font-size:.95rem}
table.list{width:100%;border-collapse:collapse;background:#fff;font-size:.95rem}
table.list th,table.list td{padding:.5rem .6rem;border-bottom:1px solid var(--line);text-align:left}
table.list th{background:var(--navy);color:#fff;font-weight:600}
.prose{max-width:72ch}
footer.site{background:var(--navy);color:#e8eef0;margin-top:3rem;padding:2rem 0;font-size:.92rem}
footer.site a{color:#fff}footer.site ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
