:root{--ink:#092b2d;--cream:#fff8ec;--paper:#f3eee4;--coral:#b83d2c;--mint:#9edfd3;--line:rgba(9,43,45,.16);--muted:#4d6060;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"IBM Plex Sans",sans-serif;font-size:16px;line-height:1.5}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:20;background:#fff;padding:.6rem 1rem}.topbar{height:72px;padding:0 4vw;display:flex;align-items:center;gap:2rem;background:var(--ink);color:#fff;position:relative;z-index:4}.brand,.footer-brand{color:inherit;text-decoration:none;font-weight:700;letter-spacing:-.03em;font-size:1.35rem;display:flex;align-items:center;gap:.65rem}.brand-mark{display:inline-block;width:25px;height:25px;border:2px solid var(--mint);border-radius:50%;position:relative}.brand-mark:after{content:"";position:absolute;width:7px;height:7px;background:var(--coral);border-radius:50%;top:7px;left:7px}.topbar nav{display:flex;gap:1.4rem;margin-left:auto}.topbar nav a,.top-cta{color:#d8e7e3;text-decoration:none;font-size:.9rem}.top-cta{background:var(--coral);color:#fff;padding:.7rem 1.1rem;border-radius:2px;font-weight:700}.hero{background:var(--ink)}.hero-map-wrap{height:min(780px,calc(100vh - 72px));min-height:620px;position:relative;overflow:hidden}.map{position:absolute;inset:0;background:#bdd4d2}.map-fallback{position:absolute;inset:45% auto auto 50%;transform:translate(-50%,-50%);background:#fff;padding:1rem 1.25rem;z-index:1;box-shadow:0 8px 30px #092b2d22}.map-fallback a,.map-credit a,.movement-links a,.story-card a,.text-link{color:inherit}.map-panel{position:absolute;top:42px;left:4vw;width:min(470px,40vw);padding:2.2rem;background:#092b2df2;color:#fff;box-shadow:0 16px 44px #092b2d38}.map-kicker,.eyebrow{color:var(--coral);font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;margin:0 0 1rem}.map-panel h1{font-size:clamp(2.8rem,5vw,5.25rem);line-height:.98;letter-spacing:-.06em;margin:0 0 1.4rem}.map-panel p{color:#d9e7e2;font-size:1.05rem}.map-panel .hero-ask{color:var(--mint);font-weight:600}.signup-form{margin-top:1.6rem}.signup-row{display:flex;background:#fff;padding:.35rem;gap:.35rem}.signup-row input{min-width:0;flex:1;border:0;padding:1rem;font:inherit;color:var(--ink);font-size:1rem}.signup-row input:focus{outline:2px solid var(--mint);outline-offset:-2px}.signup-row button{border:0;background:var(--coral);color:#fff;padding:.9rem 1.1rem;font:inherit;font-weight:700;cursor:pointer}.form-note{font-size:.78rem!important;color:#b8cfca!important}.inline-button{border:0;background:transparent;color:inherit;text-decoration:underline;padding:0;cursor:pointer;font:inherit}.honeypot{position:absolute;left:-9999px}.form-status:empty{display:none}.map-credit{position:absolute;right:1rem;bottom:1rem;background:#fffdf8dd;padding:.45rem .7rem;font-size:.75rem;z-index:2}.map-key{position:absolute;top:1rem;right:1rem;display:flex;gap:.65rem;align-items:center;background:#fffdf8ee;padding:.55rem .8rem;font-size:.78rem;z-index:2}.camera-dot{width:10px;height:10px;background:var(--coral);border-radius:50%;box-shadow:0 0 0 4px #ef5a4333}.city-picker{position:absolute;left:4vw;right:4vw;bottom:24px;background:#fffdf8f4;padding:.55rem;display:flex;flex-wrap:wrap;gap:.35rem;z-index:2;box-shadow:0 10px 34px #092b2d32}.city-choice{border:0;background:transparent;color:var(--ink);padding:.65rem .9rem;font:inherit;font-weight:600;cursor:pointer}.city-choice:hover,.city-choice.is-active{background:var(--ink);color:#fff}.hero-stats{max-width:var(--max);margin:auto;padding:1.4rem 4vw;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;color:#fff}.hero-stats div{display:flex;align-items:baseline;gap:1rem;border-top:1px solid #ffffff33;padding-top:1rem}.hero-stats strong{color:var(--mint);font-size:2.25rem;letter-spacing:-.05em;white-space:nowrap}.hero-stats span{color:#c6d8d2;font-size:.9rem}.section{max-width:var(--max);margin:auto;padding:7rem 4vw}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:2.3rem}.section-heading h2{font-size:clamp(2.3rem,4vw,4.4rem);line-height:1;letter-spacing:-.06em;margin:0}.section-heading>p{color:var(--muted);font-size:1.05rem;max-width:38rem;margin:0}.city-panel{display:grid;grid-template-columns:1.35fr .65fr;border-top:4px solid var(--coral);background:#fff;padding:2.2rem;box-shadow:0 12px 30px #092b2d0d}.city-meta{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.status-pill{background:var(--mint);padding:.3rem .6rem;font-weight:700;font-size:.76rem}.city-meta span:last-child{color:var(--muted);font-size:.85rem}.city-vendor{color:var(--muted);font-size:.85rem;margin:1rem 0 .4rem}.city-panel h3{font-size:2.5rem;letter-spacing:-.05em;margin:0}.city-summary{font-size:1.25rem;max-width:44rem}.city-facts{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:.85rem}.city-facts li{padding-left:1.4rem;position:relative}.city-facts li:before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;background:var(--coral);border-radius:50%}.city-watch{border-left:1px solid var(--line);padding-left:2rem;margin-left:2rem}.city-watch h4{font-size:1.4rem;margin:.4rem 0}.city-watch>p:not(.eyebrow){color:var(--muted)}.policy-flags{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.2rem 0}.policy-flags span{border:1px solid var(--coral);color:#aa3827;padding:.35rem .5rem;font-size:.76rem;font-weight:600}.text-link{font-weight:700;text-decoration:none}.mission-section{background:var(--paper);max-width:none;padding-left:max(4vw,calc((100% - var(--max))/2 + 4vw));padding-right:max(4vw,calc((100% - var(--max))/2 + 4vw))}.mission-grid,.movement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.mission-grid article,.movement-grid article{background:var(--paper);padding:2rem}.mission-grid span{color:var(--coral);font-weight:700}.mission-grid h3,.movement-grid h3{font-size:1.35rem;margin:.8rem 0}.mission-grid p,.movement-grid p{color:var(--muted);margin:0}.movement-section{background:var(--ink);color:#fff;max-width:none;padding-left:max(4vw,calc((100% - var(--max))/2 + 4vw));padding-right:max(4vw,calc((100% - var(--max))/2 + 4vw))}.movement-section .section-heading>p{color:#bcd0cb}.movement-section .eyebrow{color:var(--mint)}.movement-grid{background:#ffffff33}.movement-grid article{background:var(--ink)}.movement-grid strong{font-size:3.3rem;color:var(--mint);letter-spacing:-.06em}.movement-links{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:1.8rem}.movement-links a{color:#fff;text-underline-offset:4px}.join-section{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;background:var(--coral);max-width:none;padding-left:max(4vw,calc((100% - var(--max))/2 + 4vw));padding-right:max(4vw,calc((100% - var(--max))/2 + 4vw));color:#fff}.join-section .eyebrow{color:#fff}.join-section h2{font-size:clamp(2.5rem,4vw,4rem);line-height:.98;letter-spacing:-.06em;margin:0}.join-section p{font-size:1.05rem}.join-section .signup-form{margin:0}.join-section .signup-row button{background:var(--ink)}.join-section .form-note{color:#fff!important}.stories-section{background:var(--cream)}.story-stream{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.story-card{background:#fff;padding:1.7rem;display:grid;grid-template-columns:2.2rem 1fr;gap:1rem}.story-index{color:var(--coral);font-weight:700}.story-meta{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;margin:0}.story-card h3{margin:.35rem 0;font-size:1.25rem;line-height:1.15}.story-card p:not(.story-meta){color:var(--muted);margin:.5rem 0 1rem}.story-card a{font-weight:700;text-underline-offset:4px}.site-footer{background:var(--ink);color:#bad0cb;padding:3rem 4vw;display:flex;gap:2rem;align-items:center;flex-wrap:wrap}.footer-brand{color:#fff}.site-footer p{margin:0;max-width:36rem;font-size:.85rem}.site-footer div{display:flex;gap:1rem;margin-left:auto}.site-footer button,.site-footer a:not(.footer-brand){background:transparent;border:0;color:#fff;text-decoration:underline;cursor:pointer;font:inherit}dialog{border:0;max-width:34rem;padding:2rem;color:var(--ink);box-shadow:0 20px 80px #0005}dialog::backdrop{background:#092b2d99}.dialog-close{float:right;border:0;background:var(--ink);color:#fff;padding:.45rem .7rem;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:850px){.topbar{height:62px;padding:0 1rem;gap:.8rem}.topbar nav{display:none}.top-cta{margin-left:auto;padding:.55rem .7rem;font-size:.8rem}.brand{font-size:1.1rem}.hero-map-wrap{height:auto;min-height:0;display:flex;flex-direction:column}.map{position:relative;inset:auto;height:68vh;min-height:520px;order:1}.map-panel{position:relative;inset:auto;width:auto;order:2;background:var(--ink);padding:2rem 1.2rem;box-shadow:none}.map-panel h1{font-size:3.2rem}.map-key{top:.7rem;right:.7rem;flex-wrap:wrap;max-width:12rem}.map-credit{bottom:1rem}.city-picker{position:relative;left:auto;right:auto;bottom:auto;order:3;padding:.7rem;box-shadow:none}.city-choice{flex:1 0 31%;font-size:.82rem;padding:.65rem .35rem}.hero-stats{grid-template-columns:1fr;padding:1rem}.hero-stats div{gap:.8rem}.hero-stats strong{font-size:1.8rem}.section{padding:4rem 1rem}.section-heading{grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem}.section-heading h2{font-size:2.7rem}.city-panel,.join-section{grid-template-columns:1fr;padding:1.4rem}.city-watch{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0 0;margin:2rem 0 0}.city-panel h3{font-size:2rem}.mission-section,.movement-section,.join-section{padding-left:1rem;padding-right:1rem}.mission-grid,.movement-grid,.story-stream{grid-template-columns:1fr}.movement-links{display:grid;gap:.8rem}.site-footer{padding:2rem 1rem}.site-footer div{margin-left:0;width:100%;flex-wrap:wrap}.signup-row{display:grid}.signup-row button{width:100%}}

/* Map-first campaign layout */
.campaign-banner{height:auto;min-height:112px;padding:18px 4vw;display:grid;grid-template-columns:1fr minmax(320px,480px);gap:24px;align-items:center}
.banner-intro .brand{font-size:16px;margin-bottom:6px}.banner-intro h1{font-size:clamp(21px,2.4vw,32px);line-height:1.15;letter-spacing:-.035em;margin:0}.banner-intro p{margin:5px 0 0;color:#bed7d0;font-size:14px}
.campaign-banner .signup-form{margin:0}.campaign-banner .signup-row{display:flex;border-radius:5px;padding:4px}.campaign-banner .signup-row input{padding:11px;min-width:0}.campaign-banner .signup-row button{white-space:nowrap;font-size:14px;border-radius:3px;padding:11px 15px}.campaign-banner .form-note{margin:7px 0 0}.campaign-banner .form-status{font-size:13px;margin:5px 0}
.hero-map-wrap{height:clamp(520px,72svh,850px);min-height:0;display:block}.hero-map-wrap .map{position:absolute;inset:0;height:100%;min-height:0}.map-key{top:18px;left:20px;right:auto;border:1px solid #092b2d18;border-radius:4px}.map-credit{bottom:3px;left:12px;right:auto;font-size:11px}.city-picker{position:absolute;left:50%;right:auto;bottom:34px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);display:flex;flex-wrap:wrap;justify-content:center;border-radius:8px;padding:6px;gap:3px;box-shadow:0 8px 24px #092b2d26}.city-choice{border-radius:4px;font-size:14px;min-height:44px;flex:0 0 auto;transition:background .15s,color .15s}.city-choice:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.hero-stats{padding-top:20px;padding-bottom:24px}.hero-stats div{display:block}.hero-stats strong{display:block;font-size:clamp(26px,3vw,40px);line-height:1.2;margin-bottom:6px}.hero-stats span{display:block;max-width:290px}.cities-section{padding-top:48px}.city-panel{border-top-width:2px;box-shadow:none;border-radius:6px}.city-facts li{padding:14px 0 14px 20px;border-bottom:1px solid var(--line)}.city-facts li:before{top:23px}.city-facts{gap:0;margin-top:18px}.city-watch{background:#f7f3eb;border-left:0;padding:24px;border-radius:4px}.policy-flags span{border:0;background:#f7ded6;border-radius:3px}.story-index{display:none}.story-card{grid-template-columns:1fr}.section-heading h2{font-size:clamp(30px,3.5vw,48px)}
@media(max-width:850px){.campaign-banner{grid-template-columns:1fr;gap:12px;padding:16px}.banner-intro .brand{margin-bottom:5px}.banner-intro h1{font-size:24px}.banner-intro p{display:none}.campaign-banner .signup-row{display:flex}.campaign-banner .signup-row button{width:auto;padding:10px;font-size:13px}.campaign-banner .form-note{font-size:11px!important}.hero-map-wrap{height:68svh;min-height:440px}.city-picker{width:calc(100% - 24px);max-width:none;bottom:32px;gap:2px}.city-choice{flex:1 0 22%;font-size:12px;padding:6px 4px}.map-key{left:12px;top:12px;max-width:calc(100% - 64px);font-size:12px}.map-key>span:last-child{display:none}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 14px}.hero-stats strong{font-size:23px;white-space:normal}.hero-stats span{font-size:12px}.cities-section{padding-top:32px}.city-watch{margin:20px 0 0;padding:18px}.city-panel{padding:20px}.city-summary{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.city-choice{transition:none}}

/* Direct map-to-records transition. */
.cities-section{padding-top:16px}.hero-map-wrap{height:clamp(420px,62svh,700px)}.city-panel{scroll-margin-top:16px}.city-picker{bottom:28px}.city-choice{padding:.6rem .7rem}.city-meta span[hidden]{display:none}@media(max-width:850px){.hero-map-wrap{height:58svh;min-height:390px}.cities-section{padding-top:12px}.city-picker{bottom:26px}.city-choice{flex:1 0 29%;font-size:13px}.city-panel{padding:18px}.city-panel h3{margin-top:8px}}

/* Launch QA: preserve readable contrast and prevent form intrinsic widths from overflowing phones. */
.campaign-banner>*{min-width:0}.banner-intro h1{white-space:normal;overflow-wrap:normal}.campaign-banner .signup-row{min-width:0}.campaign-banner .signup-row input{width:100%;min-width:0}.campaign-banner .signup-row button{flex-shrink:0}
@media(max-width:850px){.campaign-banner{grid-template-columns:minmax(0,1fr)}.banner-intro h1{font-size:24px}.campaign-banner .form-note{font-size:14px!important}.city-choice{font-size:14px}.hero-stats span{font-size:14px}}
@media(max-width:380px){.campaign-banner .signup-row{display:grid;grid-template-columns:minmax(0,1fr)}.campaign-banner .signup-row button{width:100%}}

.movement-grid article p{color:#c6d8d2}

.agency-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.agency-document-group{border-top:1px solid #acb5ae;padding:1rem 0;scroll-margin-top:2rem}.agency-document-group summary{cursor:pointer;font-size:1.12rem;font-weight:700}.agency-document-group summary span,.document-format{font-size:.875rem;font-weight:400}.agency-document-group ul{padding-left:1.25rem}.agency-document-group li{margin:.85rem 0;overflow-wrap:anywhere}.agency-document-group a{color:#185e58;text-decoration:underline}.politician-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.politician-grid article{border-top:3px solid #ef5a43;padding-top:1rem}.politician-grid a{color:#185e58;text-decoration:underline}@media(max-width:700px){.agency-document-grid,.politician-grid{grid-template-columns:1fr}}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("ibm-plex-sans-latin-400-normal.woff2") format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url("ibm-plex-sans-latin-500-normal.woff2") format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url("ibm-plex-sans-latin-600-normal.woff2") format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;font-display:swap;src:url("ibm-plex-sans-latin-700-normal.woff2") format("woff2")}

/* September 20: action-first reviewer layout */
.banner-intro p{max-width:52rem}.action-plan{padding-top:32px;padding-bottom:24px}.plan-heading{max-width:800px;margin-bottom:24px}.plan-heading .eyebrow{margin-bottom:8px}.plan-heading h2{font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.045em;margin:0 0 12px}.plan-heading p:last-child{color:var(--muted);margin:0}.action-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.action-steps>a{display:block;padding:24px;background:var(--ink);color:var(--cream);text-decoration:none;border-top:4px solid var(--mint);transition:background .15s}.action-steps>a:hover{background:#15494b}.step-number{font-size:12px;letter-spacing:.12em;color:var(--mint);font-weight:700}.action-steps h3{font-size:22px;letter-spacing:-.03em;margin:10px 0}.action-steps h3 span{color:var(--mint)}.action-steps p{font-size:15px;color:#d0e2dc;margin:0}.action-details{padding-top:36px}.action-detail{display:grid;grid-template-columns:90px minmax(0,1fr);gap:30px;padding:36px 0;border-top:1px solid var(--line);scroll-margin-top:24px}.detail-number{font-size:48px;font-weight:700;color:var(--coral);line-height:1}.action-detail h3{font-size:30px;letter-spacing:-.035em;line-height:1.15;margin:0 0 18px}.action-detail>div:last-child{max-width:850px}.action-detail .eyebrow{margin-bottom:8px}.action-detail p{color:var(--muted)}.case-example{background:var(--paper);border-left:3px solid var(--coral);padding:20px 24px;margin:22px 0}.case-example p{margin:8px 0 12px}.case-example a{color:var(--ink)}.source-note{font-size:13px}.action-link{display:inline-block;background:var(--coral);color:#fff;text-decoration:none;font-weight:700;padding:12px 18px}.official-portrait{margin:16px 0 0;position:relative}.official-portrait img{display:block;width:100%;height:280px;object-fit:cover;object-position:center 22%;background:var(--paper)}.official-portrait figcaption{position:absolute;bottom:8px;right:8px;background:#fff8ecee;padding:3px 7px;font-size:11px}.politician-grid article{background:#fff;padding:18px;border-top:3px solid var(--coral)}.politician-grid h3{font-size:25px;letter-spacing:-.025em;margin:16px 0 10px}.politician-grid .eyebrow{margin-bottom:0}.archive-hint{font-size:14px;color:var(--muted)}.stories-section .story-stream{max-height:640px;max-height:min(72svh,640px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;align-items:start;border:1px solid var(--line);background:var(--paper);gap:1px}.story-stream:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.story-navigation{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:18px 0}.story-navigation button{font:inherit;font-weight:600;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:10px 14px;cursor:pointer}.story-navigation button:disabled{opacity:.4;cursor:default}.story-navigation span{font-size:14px;color:var(--muted)}.compliance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.compliance-grid article{padding:24px;background:var(--paper);border-top:3px solid var(--coral)}.compliance-grid h3{margin-top:0}.compliance-grid a{color:var(--ink)}
@media(max-width:850px){.banner-intro p{display:block;font-size:14px}.action-steps{grid-template-columns:1fr}.action-steps>a{padding:20px}.action-detail{grid-template-columns:44px minmax(0,1fr);gap:16px}.detail-number{font-size:32px}.action-detail h3{font-size:25px}.official-portrait img{height:320px}.compliance-grid{grid-template-columns:1fr}.story-navigation{gap:8px;flex-wrap:wrap}.story-navigation button{font-size:13px;padding:10px}.story-navigation span{font-size:12px}.stories-section .story-stream{max-height:65svh}}

.policy-context{margin-top:24px;padding:20px;border:1px solid var(--line)}.policy-context summary{font-weight:700;cursor:pointer}.policy-context p{color:var(--muted)}.policy-context a{color:var(--ink)}

/* Compact evidence ledger: twenty rows, remaining stories scroll internally. */
#story-stream{display:block!important;gap:0!important;padding:0!important;height:calc(var(--visible-story-rows,20)*2rem);max-height:none!important;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid #cbd4d0;background:#fffdf8}
#story-stream .story-row{box-sizing:border-box;display:grid;grid-template-columns:7.2rem minmax(0,1.4fr) 11rem minmax(0,1fr);align-items:center;gap:.75rem;height:2rem;min-height:2rem;padding:0 .75rem;border-bottom:1px solid #e3e7e2;color:var(--ink,#092b2d);text-decoration:none;font-size:.875rem;line-height:1.3}
.story-row:nth-child(even){background:#f1f4ef}.story-row:hover,.story-row:focus-visible{background:#dceee8;outline:2px solid #b9432c;outline-offset:-2px}
.story-row>*{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.story-row-title{font-weight:650}.story-row time,.story-row-source,.story-row-summary{font-size:.8125rem;color:#415b5b}.story-row-summary{color:#586a66}
#stories-newer[hidden],#stories-older[hidden]{display:none!important}
@media(max-width:900px){#story-stream .story-row{grid-template-columns:7.2rem minmax(0,1fr) 9rem}.story-row-summary{display:none}}
@media(max-width:540px){#story-stream .story-row{grid-template-columns:5.9rem minmax(0,1fr) 4.8rem;gap:.4rem;padding:0 .4rem;font-size:.875rem}.story-row time,.story-row-source{font-size:.75rem}}

/* Full headlines take priority over rigid one-line rows. */
#story-stream .story-row{grid-template-columns:7.2rem minmax(0,1fr) 11rem;height:auto;min-height:2rem;padding:.45rem .75rem;align-items:start}
#story-stream .story-row-title{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.4}
#story-stream .story-row-summary{display:none}
@media(max-width:540px){#story-stream .story-row{grid-template-columns:1fr 1fr;gap:.25rem .5rem;padding:.55rem .65rem}#story-stream .story-row-title{grid-column:1/-1;grid-row:1}#story-stream .story-row time{grid-column:1;grid-row:2}#story-stream .story-row-source{grid-column:2;grid-row:2;text-align:right}}

.map-key.county-map-badge{display:block;max-width:calc(100% - 92px);padding:16px 20px;background:rgba(255,253,247,.97);border:1px solid #d5ded8;border-top:4px solid #bd432e;border-radius:8px;box-shadow:0 6px 24px #092b2d18;pointer-events:none}
.county-map-identity{display:flex;align-items:center;gap:12px}.county-map-monogram{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:#092b2d;color:#fff8ec;font-size:15px;font-weight:800;letter-spacing:.05em}.county-map-region{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:#586c69;margin-bottom:3px}.county-map-identity strong{display:block;font-size:clamp(17px,1.7vw,25px);line-height:1.15;color:#092b2d}.county-map-legend{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid #dce3dc;font-size:13px;line-height:1.35}.county-map-hint{color:#536c69}
@media(max-width:540px){.map-key.county-map-badge{top:10px;left:10px;padding:10px 12px;max-width:calc(100% - 70px)}.county-map-monogram{width:34px;height:34px;font-size:11px}.county-map-identity{gap:8px}.county-map-region{font-size:9px;letter-spacing:.08em}.county-map-identity strong{font-size:16px}.county-map-legend{margin-top:8px;padding-top:7px;font-size:12px}.county-map-hint{display:none}}

/* Mobile map controls: keep the county visible and cities in one swipeable rail. */
@media (max-width:850px){
  .hero-map-wrap{height:clamp(460px,68svh,620px);min-height:460px}
  .city-picker{
    left:12px;right:12px;bottom:12px;transform:none;width:auto;max-width:none;
    display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;padding:6px;
    overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;scroll-padding-inline:6px;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:10px;
    background:rgba(255,253,248,.96);box-shadow:0 8px 24px #092b2d38
  }
  .city-picker::-webkit-scrollbar{display:none}
  .city-choice{
    flex:0 0 auto;min-height:42px;padding:.58rem .82rem;font-size:13px;
    line-height:1;white-space:nowrap;scroll-snap-align:start
  }
  .map-credit{left:10px;right:auto;bottom:68px;max-width:calc(100% - 20px)}
}
@media (max-width:420px){
  .hero-map-wrap{height:66svh;min-height:430px}
  .map-key.county-map-badge{max-width:calc(100% - 58px)}
  .city-picker{left:8px;right:8px;bottom:8px}
  .city-choice{min-height:40px;padding:.55rem .72rem;font-size:12.5px}
  .map-credit{left:8px;bottom:62px}
}

/* Brevo-hosted signup: one consent form, with a lightweight hero path. */
.banner-signup-link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.75rem 1.2rem;border-radius:4px;background:var(--coral);color:#fff;text-decoration:none;font-weight:700;white-space:nowrap}.banner-signup-link:focus-visible,.signup-embed-fallback a:focus-visible{outline:3px solid var(--mint);outline-offset:3px}.signup-embed{min-width:0;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 14px 35px #092b2d26}.signup-embed iframe{display:block;width:100%;min-height:560px;border:0;background:#fff}.signup-embed-fallback{margin:0!important;padding:.75rem 1rem 1.1rem!important;color:var(--ink);font-size:.85rem!important}.signup-embed-fallback a{color:#145b51;font-weight:700}@media(max-width:850px){.banner-signup-link{width:100%}.signup-embed iframe{min-height:620px}}
