:root{--color-bg:#f5f1e8;--color-surface:#fffaf0;--color-surface-strong:#ebe3d4;--color-ink:#1f2a28;--color-muted:#65736f;--color-border:#d8cfbf;--color-accent:#0f4f4a;--color-accent-strong:#0a3b37;--color-accent-soft:#dbe8e3;--color-warning:#795300;--color-warning-soft:#fff3cd;--container:1120px;--radius:18px;--shadow:0 20px 55px #1f2a2814;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{color:var(--color-ink);background:var(--color-bg);scroll-behavior:smooth}body{min-width:320px;margin:0;line-height:1.58}a{color:inherit;text-underline-offset:.18em}a:hover{color:var(--color-accent)}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.skip-link{background:var(--color-ink);color:#fff;z-index:50;border-radius:999px;padding:.7rem 1rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.site-header{border-bottom:1px solid var(--color-border);z-index:10;backdrop-filter:blur(16px);background:#f5f1e8f0;position:sticky;top:0}.nav{max-width:var(--container);justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:1rem;display:flex}.brand{letter-spacing:-.03em;gap:.05rem;font-weight:850;text-decoration:none;display:grid}.brand small{color:var(--color-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.76rem}.nav-links{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;font-size:.95rem;display:flex}.nav-links a,.footer-links a{text-decoration:none}main{max-width:var(--container);margin:0 auto;padding:2rem 1rem 4rem}.hero{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:end;gap:2rem;padding:4rem 0 2.5rem;display:grid}.hero-final{align-items:center;min-height:520px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent);margin:0 0 .6rem;font-size:.78rem;font-weight:850}h1,h2,h3{letter-spacing:-.035em;margin:0;line-height:1.08}h1{max-width:900px;font-size:clamp(2.35rem,7vw,5.15rem)}h2{margin-bottom:1rem;font-size:clamp(1.65rem,4vw,3rem)}h3{font-size:1.18rem}p{color:var(--color-muted);margin:.65rem 0 0}.lead{color:#40504c;max-width:760px;font-size:clamp(1.08rem,2.3vw,1.42rem)}.prose{max-width:760px}.grid{gap:1rem;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.35rem}.card.compact{box-shadow:none}.card.tall{min-height:100%}.editorial-card h2{margin-top:1rem;font-size:1.55rem}.section{margin:4.5rem 0}.section-head,.intro-grid{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:start;gap:2rem;display:grid}.feature-grid .card{min-height:190px}.callout{background:var(--color-accent-strong);color:#fff;border-radius:calc(var(--radius) + 10px);grid-template-columns:1fr 1fr;gap:2rem;padding:clamp(1.5rem,4vw,3rem);display:grid}.callout p,.callout .eyebrow{color:#ffffffd1}.callout h2{color:#fff}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.button{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent);border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.button.secondary{color:var(--color-accent);background:0 0}.button:hover{color:#fff;background:var(--color-accent-strong)}.button.secondary:hover{color:var(--color-accent-strong);background:var(--color-accent-soft)}.status-pill,.badge{border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;align-items:center;padding:.38rem .7rem;font-size:.8rem;font-weight:850;display:inline-flex}.status-pill.blocked{color:var(--color-warning);background:var(--color-warning-soft);border-color:#e9d08b}.status-pill.safe{color:var(--color-accent);background:var(--color-accent-soft)}.metric-grid{margin-top:1rem}.metric{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:clamp(1.55rem,4vw,2.1rem);font-weight:880}.meta-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.meta-list li{border-bottom:1px solid var(--color-border);color:var(--color-muted);padding-bottom:.65rem}.definition-list{gap:.8rem;margin:1rem 0 0;display:grid}.definition-list div{border-top:1px solid var(--color-border);padding-top:.8rem}dt{color:var(--color-ink);font-weight:800}dd{color:var(--color-muted);margin:.2rem 0 0}.city-card-head{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.table-wrap{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:.9rem 1rem}th{color:var(--color-ink);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}.footer{border-top:1px solid var(--color-border);color:var(--color-muted);padding:2rem 1rem}.footer-inner{max-width:var(--container);grid-template-columns:minmax(0,1.2fr) auto minmax(220px,.7fr);align-items:start;gap:1.5rem;margin:0 auto;display:grid}.footer strong{color:var(--color-ink)}.footer-links,.footer-meta{gap:.45rem;display:grid}.breadcrumbs{color:var(--color-muted);margin-bottom:1rem;font-size:.88rem}.breadcrumbs a{color:var(--color-accent)}.notice{background:var(--color-accent-soft);color:#173f3b;border-radius:var(--radius);border:1px solid #b5cbc2;padding:1rem}.indicator-notice{margin-top:1rem}@media (width<=1024px){.hero-final{min-height:auto}.footer-inner{grid-template-columns:1fr}}@media (width<=820px){.hero,.grid-2,.grid-3,.section-head,.intro-grid,.callout{grid-template-columns:1fr}.hero{padding-top:2.5rem}.nav{flex-direction:column;align-items:flex-start}.nav-links{gap:.6rem .85rem;width:100%}main{padding-top:1rem}.card{padding:1.05rem}.section{margin:3rem 0}}@media (width<=430px){.nav-links{font-size:.9rem}h1{font-size:clamp(2.1rem,13vw,3.2rem)}.hero-actions{flex-direction:column}.button{width:100%}}main,section,article,.card,.prose,.nav,.footer-inner{min-width:0}h1,h2,h3,.metric,.brand span{overflow-wrap:anywhere}@media (width<=640px){.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.nav-links{row-gap:.5rem}}
