/* Civic stories share the site's editorial type, palette and data conventions. */
:root{--future-positive:#286c70}[data-theme=dark]{--future-positive:#8dcbd0}
.future-pair figcaption{direction:ltr}[dir=rtl] .future-pair figcaption>span{direction:rtl;text-align:right}
.future-home{margin-top:35px;padding-top:30px;border-top:1px solid var(--rule)}.future-home-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.future-home-heading>div{max-width:780px}.future-home-heading .eyebrow{font-size:11px}.future-home-heading h2{font:clamp(30px,3vw,42px)/1.15 var(--serif);letter-spacing:-.02em;margin:10px 0 12px}.future-home-heading p{font:15px/1.7 var(--sans);margin:0;max-width:650px}.future-home-heading>.text-link{font-size:13px;flex-shrink:0;min-height:44px}.future-home-ribbon>a{min-width:0}.future-home-ribbon small{display:block;color:var(--muted);font:10px/1.6 var(--mono);margin-bottom:5px}.future-home-ribbon>a>span:last-child{font-size:14px;line-height:1.5}.future-home-ribbon>a:nth-child(n+3),[data-home-ribbon]>a:nth-child(n+3){display:block}
@media(max-width:850px){.future-home-heading{display:block}.future-home-heading>.text-link{margin-top:16px}.future-home-ribbon>a>span:last-child{font-size:12px}.future-home-ribbon small{font-size:9px}}
.future-heading{padding-bottom:50px}.future-heading h1{max-width:1000px}.future-heading>p{max-width:850px}.future-heading>.text-link{margin-top:15px}
.future-catalogue{padding-top:30px}.future-filters{display:grid;grid-template-columns:minmax(230px,1.5fr) repeat(2,minmax(170px,1fr)) auto;gap:22px;align-items:end;border-block:1px solid var(--rule);padding:25px 0}.future-filters[hidden]{display:none}.future-filters label{display:grid;gap:10px;min-width:0}.future-filters label>span{font:11px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.future-filters input,.future-filters select{width:100%;min-width:0;min-height:48px;border:1px solid var(--rule);padding:10px 12px;background:var(--paper);color:var(--ink);font:15px/1.5 var(--sans)}.future-filters button{min-height:48px;margin:0;font-size:13px}
.future-result-count{font:12px/1.6 var(--mono);color:var(--muted);padding:18px 0;scroll-margin-top:30px}.future-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 32px}.future-entry[hidden]{display:none}.future-entry{min-width:0;border-bottom:1px solid var(--rule);padding-bottom:35px}.future-place{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;font:11px/1.6 var(--mono);letter-spacing:.02em;color:var(--muted);margin:0 0 15px}.future-pair{margin:0}.future-pair>img,.future-pair>noscript>img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}.future-pair figcaption{display:grid;grid-template-columns:1fr 1fr;gap:20px;font:11px/1.7 var(--mono);color:var(--muted);margin-top:12px;text-align:start}.future-entry-copy{padding-top:25px}.future-entry-copy>.eyebrow{font-size:10px}.section .future-entry h2{font:clamp(30px,3vw,44px)/1.12 var(--serif);letter-spacing:-.02em;margin:14px 0 15px;overflow-wrap:anywhere}.future-entry-copy>p{font:15px/1.7 var(--sans);max-width:650px;margin-bottom:20px}.future-entry .text-link{font-size:13px;min-height:44px}.future-method{border-top:1px solid var(--rule);max-width:100%;background:var(--wash)}.future-method>p{max-width:850px;font-size:17px;line-height:1.8}.future-method ol{display:grid;grid-template-columns:1fr 1fr;gap:15px 40px;padding-inline-start:22px;max-width:1000px;font-size:15px}.future-story-heading .future-place{margin-top:30px}.future-story-heading h1{max-width:1150px}.future-story-heading>.text-link{margin-top:20px}.future-story-body{padding-top:0}.future-story-body .future-pair figcaption{font-size:13px;gap:30px}.future-illustration-note{font:12px/1.7 var(--sans);color:var(--muted);max-width:850px;margin:24px 0 50px}
.future-mechanism{margin:40px 0 65px;padding-block:30px;border-block:1px solid var(--rule)}.future-mechanism h2,.future-metric h2{font-size:clamp(30px,3vw,42px);margin:10px 0 28px}.future-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;position:relative}.future-flow li{position:relative;min-width:0}.future-flow li:not(:last-child):after{content:'→';position:absolute;inset-inline-end:-27px;top:18px;font:25px var(--serif);color:var(--muted)}[dir=rtl] .future-flow li:not(:last-child):after{content:'←'}.future-node{display:block;width:64px;height:64px;margin-bottom:16px;color:var(--future-positive)}.future-node svg{width:100%;height:100%}.future-flow .eyebrow{font-size:10px}.future-flow p{font:clamp(21px,2vw,29px)/1.3 var(--serif);margin:12px 0}.future-mechanism>.viz-reading{font-size:15px;max-width:850px;margin-top:30px}
.future-evidence-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(30px,7vw,110px);align-items:start;scroll-margin-top:25px}.future-evidence-layout h2{font-size:clamp(32px,3vw,45px);margin:12px 0 20px}.future-evidence-layout h3{font:28px/1.25 var(--serif);margin-top:28px}.future-evidence-layout p{font-size:17px;line-height:1.8}.future-limits{border-block:1px solid var(--rule);padding:15px 0;margin:30px 0}.future-limits summary{font:24px/1.3 var(--serif);min-height:44px;padding-block:8px;cursor:pointer}.future-limits p{font-size:15px;margin:10px 0}.future-question{background:var(--wash);padding:clamp(22px,3vw,40px);border-top:2px solid var(--future-positive)}.future-question blockquote{font:clamp(26px,2.6vw,36px)/1.25 var(--serif);margin:25px 0 35px}.future-question h3{font-size:23px}.future-question ol{padding-inline-start:20px;font-size:14px;line-height:1.8}.future-question li{margin-block:12px}.future-question .text-link{font-size:13px;min-height:44px;white-space:normal}
.future-metric{margin:35px 0}.future-metric .viz-mode{font-size:10px}.future-data-drawing{display:block;width:100%;height:auto;margin:20px 0}.future-value-labels{display:grid;grid-template-columns:1fr 1fr;gap:20px}.future-value-labels p{display:grid;grid-template-columns:14px 1fr;gap:6px 10px;margin:0!important;align-items:baseline}.future-value-labels i{display:block;width:10px;height:10px}.future-value-labels strong{font:36px/1.2 var(--serif);font-variant-numeric:tabular-nums}.future-value-labels span{grid-column:2;font:12px/1.6 var(--sans)}.future-metric p.viz-boundary{font:13px/1.7 var(--sans);border-inline-start:2px solid var(--accent);padding-inline-start:14px;margin:22px 0}.future-metric .viz-data p{font:13px/1.7 var(--sans)}.future-metric .viz-data caption{text-align:start;font:12px/1.6 var(--mono);padding:15px 0}.future-bar-label{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin:18px 0 10px}.future-bar-label strong{font-weight:500}.future-bar-track{height:18px;position:relative;background:var(--wash)}.future-bar-track>svg{display:block;width:100%;height:100%}.future-swatch-positive{background:var(--future-positive)}.future-swatch-muted{background:var(--muted)}.future-swatch-neutral{background:var(--rule)}.future-zero{position:absolute;inset-inline-start:0;top:-2px;bottom:-2px;border-inline-start:2px solid var(--future-positive)}.future-bar-axis{display:flex;justify-content:space-between;font:11px/1.5 var(--mono);color:var(--muted);margin-top:12px;border-top:1px solid var(--rule);padding-top:10px}.future-bars{margin:25px 0 30px}
.future-sources{border-top:1px solid var(--rule);margin-top:65px;padding-top:35px}.future-sources h2{font-size:38px}.future-sources ol{list-style:none;counter-reset:source;display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:0;margin:28px 0}.future-sources li{counter-increment:source;border-top:1px solid var(--rule);padding:20px 0;min-width:0}.future-sources li>.eyebrow{display:block;margin-bottom:15px;font-size:10px}.future-sources a{font-size:17px;line-height:1.65;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.future-sources p{font-size:13px;line-height:1.7;margin-top:15px;max-width:600px}.future-sources>small{font:11px/1.6 var(--mono);color:var(--muted)}.future-related{background:var(--wash)}.future-related>p{max-width:850px;font-size:15px;line-height:1.8}.future-related .related-list{margin-top:30px}.future-connections{border-top:1px solid var(--rule)}.future-connections h2{font-size:36px;margin:15px 0}.future-connections>p{font-size:15px}.future-connections ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:28px 0 0}.future-connections a{align-items:start;white-space:normal;font-size:17px}.future-connections small{display:block;font:11px/1.6 var(--mono);color:var(--muted);margin-top:10px}.future-catalogue .pagination-number{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.future-catalogue .pagination-number[aria-current=page]{color:var(--paper);background:var(--ink)}
@media(max-width:1000px){.future-filters{grid-template-columns:1fr 1fr}.future-evidence-layout{gap:30px}.future-grid{gap:40px 24px}}
@media(max-width:750px){.future-grid,.future-evidence-layout{grid-template-columns:minmax(0,1fr)}.future-story-body .future-pair figcaption{font-size:11px;gap:18px}.future-question{margin-top:10px}.future-sources ol,.future-method ol{grid-template-columns:1fr}.future-connections ul{grid-template-columns:1fr}.future-sources{margin-top:35px}.future-flow{gap:25px}.future-flow li:not(:last-child):after{inset-inline-end:-20px}.future-flow p{font-size:21px}.future-flow .eyebrow{font-size:9px}}
@media(max-width:500px){.future-filters{grid-template-columns:1fr}.future-flow{grid-template-columns:1fr;gap:28px}.future-flow li{display:grid;grid-template-columns:55px 1fr;column-gap:18px;align-items:start}.future-node{width:50px;height:50px;grid-row:1/3;margin:0}.future-flow li:not(:last-child):after{content:'↓';inset-inline-start:18px;inset-inline-end:auto;top:auto;bottom:-25px;font-size:20px}.future-flow li>.eyebrow{grid-column:2}.future-flow p{grid-column:2;margin:6px 0 0}.future-flow .eyebrow{font-size:10px}.future-value-labels strong{font-size:30px}.future-method>p{font-size:15px}.future-evidence-layout p{font-size:16px}.future-entry .future-pair figcaption{font-size:10px;gap:12px}}
@media print{.future-filters,.future-question .text-link,.future-catalogue .pagination{display:none}.future-evidence-layout{display:block}.future-question{margin-top:30px}.future-story-body .future-pair,.future-metric,.future-mechanism{break-inside:avoid}.future-entry{break-inside:avoid}.future-entry[hidden]{display:block}}
