
/* /protections/ section styles (dark ground; reuses elderfacts.css tokens) */
.px-eyebrow{font:700 10.5px/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--green,#2ECC8F);margin:0 0 10px}
.px-h1{font:600 clamp(30px,5vw,50px)/1.06 var(--sans);letter-spacing:-.025em;color:#E8ECEF;margin:0 0 14px}
.px-h2{font:600 22px/1.2 var(--sans);letter-spacing:-.02em;color:#E8ECEF;margin:0 0 16px}
.px-sub{font:400 clamp(15px,2vw,18px)/1.6 var(--sans);color:#AEBAC9;max-width:70ch;margin:0 0 18px}
.px-back a{font:600 12px/1 var(--mono);letter-spacing:.06em;color:var(--green,#2ECC8F);text-decoration:none}
.px-hero{padding-top:28px}
.px-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.px-chip{font:700 10px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#DCE7F1;background:#131F2B;border:1px solid #24384A;border-radius:999px;padding:6px 12px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}
.px-chip:hover{border-color:#2ECC8F;color:#fff}
.px-chip.is-active{background:#2ECC8F;border-color:#2ECC8F;color:#08160F}
.px-chip:focus-visible{outline:2px solid #2ECC8F;outline-offset:2px}
.px-cards>.px-card[hidden]{display:none}
/* map (mirrors honor-roll) */
.usmap svg{width:100%;height:auto;max-width:940px;display:block;margin:8px auto 0}
.st{fill:#2A3A4C;stroke:#0f171f;stroke-width:.9;transition:fill .18s}
.st.live{cursor:pointer;outline:none}
.st.live:hover,.st.live:focus-visible{fill:var(--green,#2ECC8F)}
.usmap-cap{margin:16px auto 0;max-width:940px;display:flex;justify-content:center;gap:10px;font:700 10.5px/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--slate,#7D92AD)}
.usmap-cap .sw{width:12px;height:12px;border-radius:3px;display:inline-block}
.usmap-cap .sw-live{background:var(--green,#2ECC8F)}
.usmap-cap .lg{display:inline-flex;align-items:center;gap:8px}
/* who to call */
.px-who .px-contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:12px}
.px-contact{display:flex;flex-direction:column;gap:8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.11);border-radius:12px;padding:14px 16px}
.px-contact-name{font:600 13.5px/1.35 var(--sans);letter-spacing:-.006em;color:#E8ECEF}
.px-contact-role{margin:0;font:400 12px/1.5 var(--sans);color:#AEBAC9}
.px-contact-meta{display:flex;flex-direction:column;gap:6px;margin-top:2px;border-top:1px solid rgba(255,255,255,.08);padding-top:9px}
.px-meta{display:flex;gap:9px;align-items:baseline;font:400 12px/1.45 var(--mono);color:#DCE7F1;text-decoration:none}
a.px-meta:hover{color:var(--green,#2ECC8F)}
.px-lab{opacity:.62;font-size:.86em;margin-left:.35em}.px-meta-k{flex:0 0 58px;white-space:nowrap;font:700 8.5px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--slate,#7D92AD)}
.px-more{font:400 11px/1.4 var(--mono);color:var(--slate,#7D92AD)}
.px-meta>span:last-child{min-width:0;overflow-wrap:anywhere}
/* topic cards */
.px-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.px-also-h{margin-top:34px;color:var(--slate,#7D92AD)}
.px-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);border-radius:16px;padding:18px 20px;box-shadow:inset 0 1px 0 rgba(255,255,255,.10)}
.px-card-head h3{font:600 17px/1.25 var(--sans);letter-spacing:-.01em;color:#E8ECEF;margin:0 0 6px}
.px-lead{font:400 13.5px/1.55 var(--sans);color:#AEBAC9;margin:0 0 10px}
.px-counts{font:700 10.5px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--green,#2ECC8F);margin:0 0 4px}
.px-details{margin-top:10px;border-top:1px solid rgba(255,255,255,.09);padding-top:8px}
.px-details summary{cursor:pointer;font:600 12px/1.5 var(--mono);letter-spacing:.05em;color:#DCE7F1;list-style:none;display:flex;justify-content:space-between;align-items:center}
.px-details summary::-webkit-details-marker{display:none}
.px-details summary:after{content:"+";color:var(--green,#2ECC8F);font:400 18px/1 var(--sans)}
.px-details[open] summary:after{content:"\2013"}
.px-updated{font:400 9.5px/1.4 var(--mono);letter-spacing:.06em;color:var(--slate,#7D92AD);text-transform:uppercase}
.px-buckets{margin-top:12px;display:flex;flex-direction:column;gap:14px}
.px-bucket h4{font:700 9.5px/1.4 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--slate,#7D92AD);margin:0 0 8px}
.px-bucket .px-n{color:var(--green,#2ECC8F);margin-left:4px}
.px-empty .px-none{font:400 12px/1.5 var(--sans);color:var(--slate,#7D92AD);margin:0}
.px-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.px-item a{font:500 12.5px/1.45 var(--sans);color:#DCE7F1;text-decoration:none;border-bottom:1px solid rgba(46,204,143,.28)}
.px-item a:hover{color:#4FE0A6}
.px-go{color:var(--green,#2ECC8F);font-size:11px}
.px-host{display:block;font:400 10px/1.5 var(--mono);color:#7D92AD;margin-top:2px}
/* cta */
.px-cta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.px-cta-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);border-radius:16px;padding:20px}
.px-cta-card h3{font:600 16px/1.25 var(--sans);color:#E8ECEF;margin:0 0 8px}
.px-cta-card p{font:400 13px/1.55 var(--sans);color:#AEBAC9;margin:0 0 14px}
.px-alert{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.px-alert input{flex:1 1 150px;background:#0f171f;border:1px solid #24384A;border-radius:10px;padding:9px 12px;color:#DCE7F1;font:400 13px var(--sans)}
.px-alert-ok{font:400 12px/1.4 var(--sans);color:var(--green,#2ECC8F);flex-basis:100%}
.px-disclaimer{margin:22px 0 0;font:400 12px/1.6 var(--sans);color:var(--slate,#7D92AD);max-width:80ch}
.btn.ghost{background:transparent;border:1px solid var(--green,#2ECC8F);color:var(--green,#2ECC8F)}
/* return-to-national-map: small STICKY widget, bottom-right */
.px-return{position:fixed;right:20px;bottom:20px;z-index:80;display:block;width:190px;text-decoration:none;border:1px solid rgba(255,255,255,.14);border-radius:14px;overflow:hidden;background:rgba(15,23,31,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 16px 44px rgba(0,0,0,.55);transition:transform .22s,border-color .18s,opacity .22s}
.px-return.hushed{opacity:0;pointer-events:none;transform:translateY(16px)}
.px-return:hover,.px-return:focus-visible{transform:translateY(-2px);border-color:var(--green,#2ECC8F);outline:none}
.px-return-map{padding:8px 8px 0}
.px-return-map svg{width:100%;height:auto;display:block;opacity:.72;transition:opacity .2s}
.px-return:hover .px-return-map svg{opacity:1}
.px-return .st{fill:#2A3A4C;stroke:#0f171f;stroke-width:1}
.px-return .st.here{fill:var(--green,#2ECC8F)}
.px-return-banner{display:flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;padding:9px 10px;border-top:1px solid rgba(255,255,255,.10);font:700 9.5px/1.1 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:#E8ECEF}
.px-return:hover .px-return-banner,.px-return:focus-visible .px-return-banner{color:var(--green,#2ECC8F)}
.px-return-arrow{font:400 13px/1 var(--sans);color:var(--green,#2ECC8F)}
@media(max-width:640px){.px-return{width:132px;right:12px;bottom:12px}}
@media(max-width:640px){.px-cards{grid-template-columns:1fr}}
