:root{--body-size:20px;--body-weight:400;--body-leading:1.5;--fragment-gap:24px;--group-gap:32px;--text-zone:240px}
/* One small-text style for narrative, controls, header, footer and dialogs. */
body,p,.small,.label,.btn,.btn.primary,.hero .lead,.signature,.nav,.footer .wrap,.replay-intro,.intro-skip,.dialog-copy,.status,label,select,textarea,.narrative-copy>p,#thought .narrative-copy>p,.statement-copy .small,.scene-experiment .panel p,.scene-experiment blockquote,.scene-actions .btn,.option-choices button,.scene-actions .people-choices .controls button,.fallback{font-size:20px;font-weight:400;line-height:1.5}
.narrative-copy>p,.statement-copy .small,.scene-experiment .panel p,.scene-experiment blockquote{color:rgba(255,255,255,.5)}
.narrative-copy>p{margin:0!important}.narrative-copy>p+p{margin-top:var(--fragment-gap)!important}
.statement-copy .small{margin-top:var(--group-gap)!important}.hero-ending{gap:var(--fragment-gap)}.hero .lead{margin:0}.hero .lead span{line-height:1.5}
.scene-actions,.offer-layout .narrative-copy>.scene-actions{gap:var(--fragment-gap);padding:0}.offer-options{gap:var(--group-gap);padding:0}.option-row,.people-choices{gap:16px}
.option-choices,.scene-actions .people-choices .controls{gap:16px}.option-choices button+button::before,.scene-actions .people-choices .controls button+button::before{margin-right:16px}
.terminal{font-size:20px;font-weight:400;line-height:1.5;gap:var(--fragment-gap)}.terminal-row{min-height:30px}.dialog-copy,textarea{margin-top:var(--fragment-gap)}.dialog-top h2{font-weight:300}
.horizontal-mode main>.hero{padding-bottom:24px}
.district-roads{fill:none;stroke:#444d46;stroke-width:1}.city-outline{fill:#191c1a;stroke:#758077;stroke-width:1.1}.city-river{stroke:#648b77;stroke-width:1.5}.offer-map-scene .map-zone{stroke:#39473c;stroke-width:.7;fill:transparent}.offer-map-scene .map-zone.active{stroke:#566e5d;fill:rgba(25,237,106,.03)}
@media(max-width:1500px){.step-full{display:none}.step-compact{display:inline}.scene-actions .people-choices .controls button{font-size:20px;white-space:nowrap}.scene-actions .people-choices .controls{gap:8px}.scene-actions .people-choices .controls button+button::before{margin-right:8px}.option-choices button,.scene-actions .btn,.narrative-copy>p{font-size:20px}}
@media(max-width:800px){.statement-copy .small,.hero .lead,.hero-ending .btn,.option-choices button,.narrative-copy>p,.scene-experiment .panel p,.scene-experiment blockquote,.signature,.nav,.scene-actions .people-choices .controls button{font-size:20px}.scene-actions .people-choices .controls{gap:6px}.scene-actions .people-choices .controls button+button::before{margin-right:6px}.option-choices{gap:8px 16px}.footer .wrap{font-size:20px}.hero-layout{gap:24px}.hero-ending{gap:24px}.header .wrap{gap:12px}.nav{gap:12px}.signature{gap:6px}.horizontal-mode main>.hero{overflow-y:auto}}
@media(max-width:520px){.header .signature{display:block;min-width:0;text-overflow:ellipsis;overflow:hidden}.header .signature img{display:inline-block;vertical-align:middle;margin-right:8px}.nav{flex-shrink:0}.scene-actions .people-choices .controls{gap:4px}.scene-actions .people-choices .controls button+button::before{margin-right:4px}}
@media(max-width:360px){.scene-actions .people-choices .controls{gap:8px}.scene-actions .people-choices .controls button+button::before{display:none}}
