/* Civic Atlas reference system: clear categories, open columns, quiet typography. */
:root{--ink:#153a54;--muted:#5b6e7a;--line:#d6e0e6;--accent:#a44761;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 "Atkinson Hyperlegible Next","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}button,input{font:inherit;color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}header,main,footer{width:min(1440px,100%);margin:auto;padding-left:clamp(24px,5vw,80px);padding-right:clamp(24px,5vw,80px)}.reference-header{padding-top:30px;padding-bottom:32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.reference-brand{display:flex;align-items:center;gap:20px;text-decoration:none}.reference-brand img{display:block;width:68px;height:68px}.reference-brand span{font-size:12px;letter-spacing:.035em}.return-link{font-size:13px;text-decoration:none}.return-link span{margin-left:10px}.page-tabs{display:flex;gap:30px;flex-wrap:wrap;margin:20px 0 0}.page-tabs a{font-size:14px;color:var(--muted);text-decoration:none;padding:7px 0}.page-tabs [aria-current]{color:var(--ink);box-shadow:0 2px 0 var(--accent)}.reference-hero{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:56px 0 55px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 15px}h1{font-size:clamp(34px,4vw,56px);line-height:1.1;font-weight:400;letter-spacing:-.045em;margin:0 0 18px}.intro{font-size:16px;line-height:1.6;max-width:560px;color:var(--muted);margin:0}.reference-search{width:280px;flex-shrink:0}.reference-search label{font-size:11px;letter-spacing:.04em;color:var(--muted)}.search-field{display:flex;border-bottom:1px solid #92a7b6;margin-top:5px;align-items:center}.search-field input{min-width:0;width:100%;border:0;padding:10px 0;background:none;font-size:14px;outline-offset:2px}.search-field input::placeholder{color:#637582}.search-field button{border:0;background:transparent;font-size:23px;padding:2px 8px;cursor:pointer}.reference-search p{font-size:11px;color:var(--muted);min-height:17px;margin:5px 0 0}main{padding-bottom:55px}.directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 54px;align-items:start}.directory section{min-width:0;margin:0;scroll-margin-top:24px}h2{font-size:18px;line-height:1.3;font-weight:500;letter-spacing:-.02em;margin:0 0 24px}ul{list-style:none;margin:0;padding:0}.directory li{padding:0;margin:0 0 20px;line-height:1.5;break-inside:avoid}.directory li>div>span{font-size:16px}.directory li:before{display:none}.directory li a{text-decoration:none}.directory li>a{font-size:16px}.directory li small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:5px;max-width:34em}.quiet-link{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;text-decoration:none;vertical-align:baseline;font-size:16px;color:var(--muted)}a:hover{text-decoration:underline;color:#003563}.contact-line{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;font-size:15px}.contact-line a{white-space:nowrap;text-decoration:none;font-variant-numeric:tabular-nums}.contact-line span{color:var(--muted);font-size:13px}.emergency-contacts{display:grid;grid-template-columns:1fr auto;font-size:14px;gap:8px;margin-top:20px}.quiet-note,.review-date,.method-note{font-size:13px;line-height:1.6;color:var(--muted);max-width:850px;margin:25px 0}.method-note summary{cursor:pointer}.method-note p{margin:12px 0}.reference-hero+.method-note{margin-top:-25px;margin-bottom:38px}.scan-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 54px;margin:0 0 55px}.scan-row{min-width:0;display:block;margin:0;padding:0}.scan-row dt,.scan-row .agency-name{font-size:17px;font-weight:400;line-height:1.45;color:var(--ink);letter-spacing:0}.scan-row dt{margin-bottom:5px}.scan-row dd{margin:0}.agency-name{margin:0 0 17px}.agency-description{font-size:15px;line-height:1.65;color:var(--muted);margin:0 0 17px}.scan-row .contact-line{display:flex;flex-direction:column;gap:3px;font-size:16px;margin:12px 0}.scan-row .contact-line>div{display:flex;flex-wrap:wrap;gap:4px 12px}.agency-website{font-size:13px;line-height:1.8;margin:13px 0 0}.agency-website a{text-decoration:none}.source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px 50px}.source-row{display:flex;flex-direction:column-reverse;justify-content:end;min-width:0;align-self:start;scroll-margin-top:25px}.source-row h3{font-size:16px;line-height:1.5;font-weight:400;margin:0}.source-meta{font-size:11px;color:var(--muted);margin-top:7px}.source-row details{font-size:12px;color:var(--muted);margin:5px 0}.source-row details p{overflow-wrap:anywhere}.source-row summary{cursor:pointer}.source-row p{margin:6px 0}.source-row h3>a{font-size:16px}#downloads{margin-top:48px}#downloads h2{margin-bottom:16px}#downloads ul{display:flex;flex-wrap:wrap;gap:15px 30px;font-size:14px}#downloads p{font-size:13px;color:var(--muted)}footer{font-size:12px;color:var(--muted);padding-top:30px;padding-bottom:26px;line-height:1.8}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:24px;font-size:11px}.footer-bottom a{text-decoration:none}.no-results{padding:30px 0;font-size:18px;color:var(--muted)}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:20px}.skip:focus{top:10px;background:white;padding:12px;z-index:3}.about-page-link{font-size:13px;margin-top:35px}
@media(min-width:1600px){header,main,footer{width:min(1600px,100%)}.source-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){.directory,.scan-list,.source-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px}.reference-hero{gap:30px}.reference-search{width:230px}}
@media(max-width:650px){.reference-header{padding-top:22px;padding-bottom:20px}.reference-brand{gap:12px}.reference-brand img{width:54px;height:54px}.reference-brand span{font-size:10px;max-width:110px}.page-tabs{gap:13px 22px;margin-top:15px}.page-tabs a{font-size:13px}.reference-hero{display:block;margin:35px 0}.reference-search{width:100%;margin-top:28px}.intro{font-size:14px}.directory,.scan-list,.source-grid{grid-template-columns:1fr;gap:34px}.scan-list{gap:32px;margin-bottom:45px}.directory li{margin-bottom:17px}h2{font-size:18px;margin-bottom:23px}.source-grid{gap:23px}.footer-bottom{flex-direction:column;gap:10px}.return-link{font-size:12px}.reference-hero+.method-note{margin-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.reference-search,.page-tabs,.return-link{display:none}.directory,.scan-list,.source-grid{grid-template-columns:repeat(2,1fr)}.source-row,.scan-row{break-inside:avoid}footer{position:static}}

/* Return path for preserved reference pages. */
.directory-back{margin:16px 0 0;font-size:14px}.directory-back a{display:inline-flex;align-items:center;min-height:44px;color:#0759b5;text-decoration:underline;text-underline-offset:4px}

/* D-114 (team PR #91, rebuilt Oct 22, 2026): the source register notes column stacks at every width (it was a flex row ~33,000px wide on desktop). */
#source-register{display:block}

/* Sources & Methods (Oct 24, 2026): five questions above the reference list. */
.sm-lede{margin:8px 0 0;max-width:70ch;color:#53636a}
.sm-questions{margin:24px 0 8px;border-top:1px solid #cbd0cb;padding-top:16px}
.sm-h2{font-size:22px;font-weight:600;color:#092c46;margin:0 0 8px}
.sm-q{margin:0 0 16px;max-width:80ch}
.sm-q h3{font-size:16px;font-weight:600;color:#092c46;margin:0 0 4px}
.sm-q p,.sm-q li{margin:4px 0;line-height:1.55}
.sm-changes{padding-left:20px;margin:4px 0}
.sm-q a{color:#0759b5;text-decoration:underline;text-underline-offset:3px}
.sm-q a:focus-visible{outline:2px solid #0759b5;outline-offset:3px}
