:root{--navy:#1F3A5F;--blue:#2E75B6;--light:#EAF1F8;--grey:#F2F4F7;--line:#C9D3DF;--ink:#1a2430;--green:#2E7D32;--amber:#B26A00;--red:#C0392B}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Inter,system-ui,sans-serif;color:var(--ink);line-height:1.55;background:#fff}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.narrow{max-width:620px}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px;flex-wrap:wrap}
.brand{font-weight:800;letter-spacing:.04em;color:var(--navy);font-size:1.05rem}
nav a{color:var(--navy);margin-left:18px;font-size:.92rem}
body.ops header{background:var(--navy)}
body.ops .brand,body.ops nav a{color:#fff}
main{min-height:60vh}
.hero{background:linear-gradient(160deg,var(--navy),#16293f);color:#fff;padding:72px 0 56px}
.hero h1{font-size:3rem;margin:.1em 0 .2em;letter-spacing:-.01em;color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--blue);font-weight:700;margin:0 0 .4em}
.hero .eyebrow{color:#9ec3e8}
.lede{font-size:1.18rem;color:#3a4756;max-width:680px}
.hero .lede{color:#d7e3f0}
.pad{padding:56px 0}
h1{font-size:2.3rem;color:var(--navy);margin:.1em 0 .3em}
h2{font-size:1.5rem;color:var(--navy);margin:1.6em 0 .4em}
h3{color:var(--navy);margin:.2em 0 .4em}
.btn{display:inline-block;background:var(--blue);color:#fff;padding:12px 22px;border-radius:8px;font-weight:700;border:0;cursor:pointer;font-size:1rem;margin-top:8px}
.btn:hover{background:#255f96;text-decoration:none}
.btn.secondary{background:#fff;color:var(--blue);border:1px solid var(--line)}
.btn.secondary:hover{background:var(--light);border-color:var(--blue)}
.btn.small{padding:8px 12px;font-size:.86rem;margin-top:0}
.stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:32px}
.stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:16px 22px;min-width:120px}
.pad .stats .stat{background:var(--light);border-color:var(--line)}
.stat .n{font-size:1.8rem;font-weight:800;color:#fff}
.pad .stat .n{color:var(--navy)}
.stat .l{font-size:.82rem;opacity:.85;text-transform:uppercase;letter-spacing:.06em}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:24px}
.cards.compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{display:block;background:var(--grey);border:1px solid var(--line);border-radius:12px;padding:22px;color:inherit}
a.card:hover{border-color:var(--blue);text-decoration:none;box-shadow:0 4px 14px rgba(31,58,95,.08)}
.card p{margin:.45em 0}
.card ul{margin:.4em 0 0;padding-left:1.1em}
.card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.tag{font-size:.7rem;background:#dfe7f1;color:var(--navy);padding:2px 8px;border-radius:20px;vertical-align:middle;font-weight:700}
.tag.new{background:var(--blue);color:#fff}
.facts{list-style:none;padding:0;margin:1em 0}
.facts li{padding:10px 0;border-bottom:1px solid var(--line)}
.facts b{color:var(--navy);display:inline-block;min-width:120px}
.map{width:100%;height:380px;border:1px solid var(--line);border-radius:12px;margin-top:18px}
.mt{margin-top:32px}
.muted{color:#6b7785;font-size:.9rem}
.c{text-align:center}
.error{background:#fdecea;color:var(--red);padding:10px 14px;border-radius:8px;border:1px solid #f5c6c0}
/* forms */
.form{display:flex;flex-direction:column;gap:14px;max-width:560px;margin-top:18px}
.form.row{flex-direction:row;flex-wrap:wrap;max-width:none;align-items:flex-end}
.form label{display:flex;flex-direction:column;font-size:.85rem;font-weight:700;color:var(--navy);gap:5px}
.form.row label{flex:0 0 auto}
.form.row label.grow,.form.row label.growx{flex:1 1 200px}
input,select,textarea{font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff}
input:focus,select,textarea:focus{outline:2px solid var(--blue);outline-offset:0}
/* tables */
.grid{width:100%;border-collapse:collapse;margin-top:18px;font-size:.9rem}
.grid th{background:var(--navy);color:#fff;text-align:left;padding:9px 11px;font-size:.82rem}
.grid td{padding:8px 11px;border:1px solid var(--line);vertical-align:top}
.grid tbody tr:nth-child(even){background:var(--grey)}
.var{font-weight:700;padding:2px 7px;border-radius:5px}
.var.ok{background:#e3f3e6;color:var(--green)}
.var.hi{background:#fdecea;color:var(--red)}
.var.lo{background:#fdf0df;color:var(--amber)}
.link-btn{background:none;border:0;color:var(--red);cursor:pointer;font-size:1rem}
footer{border-top:1px solid var(--line);margin-top:48px;padding:28px 0;color:#6b7785;font-size:.85rem}
body.ops footer{border-color:var(--line)}
@media(max-width:640px){.hero h1{font-size:2.1rem}.nav{height:auto;padding:10px 0}nav a{margin:6px 10px 0 0}}
