:root{--white:#fff;--ink:#263442;--muted:#627180;--line:#e6edf1;--blue:#41b6e6;--red:#e4002b;--link:#005b99;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.7;font-weight:400;-webkit-font-smoothing:antialiased}a{color:var(--link);text-underline-offset:5px;text-decoration-thickness:1px}a:hover{text-decoration-color:var(--blue)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--link);outline-offset:5px}.wrap{max-width:1100px;padding:0 52px;margin:auto}.skip{position:absolute;left:12px;top:-80px;background:var(--ink);color:white;padding:12px;z-index:9}.skip:focus{top:12px}
header{display:flex;flex-direction:column;align-items:center;gap:27px;padding:55px 0 27px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;justify-content:center;gap:27px;color:var(--blue);text-decoration:none;white-space:nowrap;font-size:clamp(32px,6.2vw,70px);line-height:1.15;letter-spacing:-2.9px;font-weight:400}.brand:hover{color:var(--blue)}.chicago-star{width:32px;height:32px;flex-shrink:0;color:var(--red)}nav{display:flex;gap:35px;align-items:center;font-size:13px}nav a{color:var(--muted);text-decoration:none;padding:4px 0}nav a:hover,nav a[aria-current=page]{color:var(--link)}nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--blue);text-underline-offset:9px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--sans);font-weight:400}h1{font-size:clamp(34px,4.2vw,48px);line-height:1.2;letter-spacing:-1.6px;margin-bottom:25px}h1 em{font-style:normal}h2{font-size:33px;line-height:1.25;letter-spacing:-.9px;margin-bottom:24px}h3{font-size:27px;line-height:1.3;letter-spacing:-.5px}.eyebrow,.section-label{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:400;margin-bottom:23px}.dot{display:none}.muted{color:var(--muted)}.hero{text-align:center;padding:79px 0 75px;max-width:710px;margin:auto}.hero h1{font-size:42px}.intro{font-size:17px;line-height:1.8;max-width:595px;margin:0 auto 31px}.actions{display:flex;align-items:center;justify-content:center;gap:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;text-decoration:none;border:1px solid #c8dce8;background:white;color:var(--link);padding:13px 20px;font-size:14px;cursor:pointer;min-height:50px;border-radius:2px}.button:hover{background:#f6fbfe;border-color:var(--blue)}.textlink{font-size:14px}.stage{display:flex;justify-content:space-between;gap:24px;padding:19px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.section{padding:65px 0;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1.15fr;gap:85px}.bodycopy{max-width:550px}.bodycopy p{margin-bottom:19px;font-size:16px}.bodycopy p:last-child{margin-bottom:0}.experiment{padding:33px 0 0;margin-top:35px;border-top:1px solid var(--line);display:grid;grid-template-columns:1.1fr 1fr;gap:65px}.experiment p{font-size:15px;margin-bottom:0;line-height:1.8}.experiment .question{font-size:24px;line-height:1.4;letter-spacing:-.4px;margin-bottom:18px}.test-items{list-style:none;padding:0;margin:6px 0 0}.test-items li{display:flex;gap:18px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.test-items li:last-child{border-bottom:0}.test-items span{font-size:11px;color:var(--muted);padding-top:3px}.paths{display:grid;grid-template-columns:1fr 1fr;gap:85px}.path{padding-top:9px}.path .number{font-size:11px;color:var(--muted);margin-bottom:19px}.path h3{font-size:29px;margin-bottom:18px}.path p{font-size:16px;max-width:410px;margin-bottom:23px}.path a{font-size:14px}.founder{display:grid;grid-template-columns:1fr 1.15fr;gap:85px}.founder-title{font-size:29px}.founder p{font-size:16px}.footer{padding:26px 0 36px;border-top:1px solid var(--line);display:flex;gap:22px;justify-content:space-between;font-size:10px;color:var(--muted)}
.subhero{padding:45px 0 58px;max-width:760px}.subhero h1{font-size:48px;letter-spacing:-1.8px}.subhero .intro{max-width:630px;margin-left:0}.back{display:inline-block;font-size:12px;margin-bottom:37px;color:var(--muted);text-decoration:none}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.role ul{padding-left:19px;font-size:15px;line-height:1.9}.role p{font-size:16px}.commitments{display:grid;grid-template-columns:1fr 1fr;gap:70px}.commitments h3{font-size:26px}.commitments p{font-size:16px}.form-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.form-note{font-size:14px;max-width:350px}.form{padding:27px;border:1px solid var(--line);background:white}label,legend{display:block;font-size:13px;font-weight:500;margin-bottom:9px}input[type=text],textarea,select{display:block;width:100%;padding:12px;background:white;border:1px solid #c5d4de;color:var(--ink);border-radius:2px}textarea{resize:vertical;min-height:110px}fieldset{border:0;padding:0;margin:0 0 23px}.field{margin-bottom:22px}.radio-label{display:flex;align-items:center;gap:10px;font-weight:400;font-size:14px;margin:10px 0}input[type=checkbox]{accent-color:var(--link);width:15px;height:15px}.form small{font-size:12px;color:var(--muted);display:block;margin-bottom:24px;line-height:1.6}.optional{font-weight:400;color:var(--muted)}.status{font-size:13px;margin:15px 0 0;min-height:22px;color:var(--link)}.draft{white-space:pre-wrap;border:1px solid var(--line);background:white;padding:17px;font-size:13px;line-height:1.7;margin:22px 0;max-height:330px;overflow:auto}.draft[hidden]{display:none}.after-copy{font-size:13px;margin:18px 0 0}.example{border-left:2px solid var(--blue);padding:4px 0 4px 24px;max-width:750px;margin-top:36px}.example p{font-size:16px;margin:12px 0}.example small{font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:var(--muted)}
@media(max-width:800px){.wrap{padding:0 30px}.brand{gap:21px}.chicago-star{width:27px;height:27px}.split,.founder,.paths{gap:45px}.form-section,.role-grid,.commitments,.experiment{gap:37px}.subhero h1{font-size:43px}}
@media(max-width:620px){.wrap{padding:0 24px}header{padding:35px 0 24px;gap:23px}.brand{font-size:clamp(26px,7.5vw,42px);letter-spacing:-1.2px;gap:13px}.chicago-star{width:19px;height:19px}nav{gap:26px;font-size:12px}.hero{padding:52px 0 48px}.eyebrow,.section-label{font-size:9px;letter-spacing:1.1px;margin-bottom:21px}.hero h1{font-size:30px;letter-spacing:-1px;line-height:1.3;margin-bottom:23px}.intro{font-size:16px;line-height:1.8}.actions{gap:24px}.button{padding:12px 17px;font-size:13px}.textlink{font-size:13px}.stage{font-size:10px;gap:20px;padding:17px 0;align-items:flex-start}.stage span:last-child{max-width:165px;text-align:right}.section{padding:43px 0}.split,.founder,.paths,.experiment,.role-grid,.commitments,.form-section{grid-template-columns:1fr;gap:26px}h2{font-size:28px;letter-spacing:-.7px}.experiment{margin-top:28px;padding:28px 0 0;gap:22px}.experiment .question{font-size:23px}.paths{gap:40px}.path+.path{padding-top:32px;border-top:1px solid var(--line)}.path h3,.founder-title{font-size:27px}.footer{flex-direction:column;gap:9px;font-size:10px}.subhero{padding:30px 0 40px}.subhero h1{font-size:37px;letter-spacing:-1.2px}.back{margin-bottom:30px}.role-grid{gap:35px}.role+.role{padding-top:30px;border-top:1px solid var(--line)}.form{padding:22px}.form-section h2{font-size:30px}input[type=text],textarea,select{font-size:16px}.after-copy{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.evidence{margin:0;padding-left:19px;font-size:16px}.evidence li{padding-left:4px;margin-bottom:24px}.evidence strong{font-weight:500}.evidence a{display:inline-block;font-size:12px;margin-top:6px}.evidence-note{font-size:12px!important;line-height:1.7}

/* Civic watch: a visible, continuous news crawl. */
.watch-strip{border-top:3px solid var(--blue);border-bottom:1px solid #c1dfef;background:#edf8fe;font-size:14px}.watch-inner{max-width:1400px;margin:auto;padding:0 32px;min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center}.watch-label{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--link);text-decoration:none;white-space:nowrap}.watch-label:before{content:"";width:7px;height:7px;background:var(--red);border-radius:50%;flex:none}.watch-viewport{overflow-x:auto;scrollbar-width:none;min-width:0;padding:12px 0}.watch-viewport::-webkit-scrollbar{display:none}.watch-track,.watch-group{display:flex;align-items:center;width:max-content}.watch-group{min-width:var(--watch-width,0px)}.watch-entry{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.watch-entry time{font-size:11px;color:#526d7c}.watch-entry a{color:#173c52;text-decoration:none;font-weight:500}.watch-entry a:hover{text-decoration:underline}.watch-separator{color:var(--red);font-size:17px;margin:0 28px 0 16px}.watch-copy{display:none}.watch-strip[data-ready=true] .watch-viewport{overflow-x:hidden}.watch-strip[data-ready=true] .watch-copy{display:flex}.watch-strip[data-ready=true] .watch-track{animation:civic-crawl var(--crawl-duration,100s) linear infinite}.watch-strip[data-paused=true] .watch-track,.watch-strip:hover .watch-track{animation-play-state:paused}.watch-strip[data-browsing=true] .watch-track{animation:none}.watch-strip[data-browsing=true] .watch-copy{display:none}.watch-strip[data-browsing=true] .watch-viewport{overflow-x:auto}.watch-controls{display:flex;gap:16px;align-items:center}.watch-controls button{border:1px solid #b5d5e7;border-radius:2px;background:transparent;color:var(--link);min-height:36px;padding:4px 10px;font-size:11px;cursor:pointer}.watch-controls a{font-size:11px;text-decoration:none;white-space:nowrap}.watch-strip[data-state=stale] .watch-label{color:#735d36}@keyframes civic-crawl{to{transform:translateX(-50%)}}
.watch-toolbar{display:flex;gap:25px;justify-content:space-between;align-items:center;padding:0 0 25px;border-bottom:1px solid var(--line)}.watch-toolbar p{font-size:12px;color:var(--muted);margin:0}.watch-toolbar label{font-weight:400;margin:0;display:flex;gap:12px;align-items:center;font-size:12px}.watch-toolbar select{width:auto;font-size:12px;padding:8px 30px 8px 10px;border:1px solid var(--line);background:white}.watch-item{padding:35px 0;border-bottom:1px solid var(--line);max-width:850px;scroll-margin-top:24px}.watch-meta{display:flex;gap:17px;flex-wrap:wrap;color:var(--muted);font-size:10px;letter-spacing:.2px;margin-bottom:17px}.watch-item h2{font-size:27px;margin-bottom:17px}.watch-item h2 a{color:var(--ink);text-decoration:none}.watch-item h2 a:hover{color:var(--link)}.watch-item p{font-size:15px;line-height:1.8;margin-bottom:16px;max-width:730px}.watch-implication span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--link);margin-bottom:5px}.watch-limitation{color:var(--muted);font-size:13px!important}.watch-source{font-size:12px}.watch-method{font-size:12px;line-height:1.9;color:var(--muted);max-width:760px;margin:30px 0 55px}.watch-method a{white-space:nowrap}[data-watch-empty]{font-size:14px;padding:35px 0}
@media(max-width:800px){.watch-inner{padding:0 24px;gap:18px}}
@media(max-width:620px){.watch-inner{grid-template-columns:1fr auto;gap:0;padding:9px 20px 0}.watch-label{font-size:11px;grid-column:1;grid-row:1}.watch-controls{grid-column:2;grid-row:1;gap:16px}.watch-controls button{min-height:32px}.watch-viewport{grid-column:1 / -1;grid-row:2;margin-top:4px;padding:8px 0 12px}.watch-entry{gap:10px}.watch-entry a{font-size:13px}.watch-separator{margin:0 22px 0 12px}.watch-toolbar{align-items:flex-start;flex-direction:column;gap:15px}.watch-item h2{font-size:24px}.watch-item{padding:29px 0}.watch-meta{gap:8px 14px}.watch-method{font-size:11px}}
@media(prefers-reduced-motion:reduce){.watch-strip[data-ready=true] .watch-track{animation:none}.watch-strip[data-ready=true] .watch-copy{display:none}.watch-strip[data-ready=true] .watch-viewport{overflow-x:auto}}

/* A soft beacon that follows the ticker's motion controls. */
.watch-label:before{animation:civic-pulse 2.4s ease-out infinite}
@keyframes civic-pulse{0%{box-shadow:0 0 0 0 rgb(228 0 43 / 30%)}70%,100%{box-shadow:0 0 0 7px rgb(228 0 43 / 0%)}}
.watch-strip[data-paused=true] .watch-label:before,.watch-strip:hover .watch-label:before,.watch-strip:focus-within .watch-label:before{animation-play-state:paused}
.watch-strip[data-state=stale] .watch-label:before{animation:none}
@media(prefers-reduced-motion:reduce){.watch-label:before{animation:none}}
