/* Full-width chapter backgrounds with a shared, readable content alignment. */
:root{--chapter-gutter:max(40px,calc((100vw - 1248px)/2))}
.capabilities{max-width:1328px;margin:0 auto;padding:36px 40px;gap:16px}
.capabilities>a{font-size:15px;padding:24px 20px;min-height:96px;background:#fff;border-color:#d9e4dc;border-radius:22px}
.capabilities span{font-size:12px}
.content-sections{max-width:none;padding:0;margin:0}
.section{max-width:none;margin:0;padding:96px var(--chapter-gutter);border:0;border-radius:0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px);align-items:start;background:#fff}
.section.tinted{background:#e7efe3}
#overview{background:#f3f6ee}
#technology{background:#fff}
#risks{background:#e5eeee}
#air-quality{background:#f3f6ee}
#systems{background:#e5eee3}
#future{background:#eff2f8}
.section-heading{padding-top:8px}
.section-heading .eyebrow{font-size:12px;letter-spacing:.14em;margin-bottom:30px}
.section-number{min-width:36px;height:36px;font-size:12px;background:#ffffff80;border-color:#adbfaa}
.section h2{font-size:clamp(36px,3.5vw,50px);line-height:1.16;letter-spacing:-.035em;margin-bottom:0;text-wrap:balance;overflow-wrap:normal}
.section-body{padding:32px 36px;background:#ffffffc7;border:1px solid #d7e0d570;border-radius:28px;color:#40554c;font-size:18px;line-height:1.8;min-width:0;overflow-wrap:break-word}
.section-body>p{margin-bottom:26px}
.section-body>p:first-child{font-size:21px;line-height:1.65}
.section-body h3{font-size:27px;line-height:1.35;letter-spacing:-.025em;margin:34px 0 20px}
.section-body li{padding-top:20px;padding-bottom:20px}
.section-body li:last-child{border-bottom:0}
.section-body summary{font-size:18px;padding:24px 0}
#systems .section-body{padding:0;background:transparent;border:0}
#systems .section-body li{padding:26px 26px 26px 52px;margin-bottom:16px;border-radius:22px;background:#ffffffd9}
#systems .section-body li:before{top:26px;left:24px}
#systems .section-body>p{padding:0 8px}
#references{padding-top:88px;padding-bottom:88px;background:#355c9d}
#references h2{font-size:clamp(42px,4.5vw,64px)}
#references .section-number{background:transparent}
#references .section-body{align-self:center;background:#ffffff0d;border-color:#ffffff38;color:#fff}
.film-section{margin:0;padding:88px var(--chapter-gutter);border-radius:0;background:#16382f}
.film-heading{gap:56px;margin-bottom:38px}
.film-heading>.eyebrow{font-size:12px;max-width:260px;line-height:1.7}
.film-heading h2{font-size:clamp(36px,3.5vw,48px);line-height:1.2;max-width:760px}
.video-frame{border-radius:26px}
.film-caption{font-size:14px;line-height:1.6}
.contact{max-width:none;margin:0;padding:96px var(--chapter-gutter);border:0;border-radius:0;background:#dcece4;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px)}
.contact .eyebrow{font-size:12px}
.contact h2{font-size:clamp(44px,4.5vw,64px);line-height:1.15}
.contact-details{font-size:18px;line-height:1.8;padding:32px 36px;background:#ffffffc7;border:1px solid #c6d9ce;border-radius:28px;min-width:0}
.contact-details h3{font-size:13px;margin-top:32px}
.contact .button{font-size:15px;padding:16px 24px}
.site-footer{max-width:none;padding:36px var(--chapter-gutter);background:#f6f8f3;font-size:13px}
@media(max-width:1100px){:root{--chapter-gutter:32px}.section,.contact{gap:36px;padding-top:72px;padding-bottom:72px}.section h2{font-size:38px}.section-body,.contact-details{padding:28px}.capabilities{padding:28px 32px}.capabilities>a{font-size:13px;padding:20px 16px}.film-section{padding-top:64px;padding-bottom:64px}}
@media(max-width:800px){:root{--chapter-gutter:26px}.section,.contact{grid-template-columns:1fr;gap:30px;padding-top:56px;padding-bottom:56px}.section h2{font-size:38px;max-width:680px;text-wrap:initial}.section-heading .eyebrow{margin-bottom:24px}.section-body{font-size:18px}.section-body>p:first-child{font-size:20px}.capabilities{padding:26px;gap:12px}.capabilities>a{font-size:14px}.film-heading{display:block}.film-heading>.eyebrow{max-width:none}.film-heading h2{font-size:36px}.contact-details{font-size:18px}#references{padding-top:56px;padding-bottom:56px}.site-footer{padding-top:28px;padding-bottom:28px}}
@media(max-width:480px){:root{--chapter-gutter:20px}.section,.contact{padding-top:46px;padding-bottom:46px;gap:26px}.section h2{font-size:32px;line-height:1.2}.section-heading .eyebrow{font-size:11px}.section-body,.contact-details{padding:25px 22px;border-radius:24px;font-size:17px;line-height:1.8}.section-body>p:first-child{font-size:19px}.section-body h3{font-size:24px}.section-body summary{font-size:17px}.capabilities{padding:22px 20px;gap:10px}.capabilities>a{font-size:12px;padding:18px 14px}.film-section{padding-top:46px;padding-bottom:46px}.film-heading h2{font-size:31px}.film-caption{font-size:12px;flex-wrap:wrap;gap:8px}.contact h2{font-size:44px}.contact-details{font-size:17px}#references h2{font-size:42px}.site-footer{font-size:12px}}
@media print{.section,.contact{padding:20px;background:white!important}.section-body,.contact-details{padding:0;border:0;background:none}.section h2{font-size:30px}.section-body{font-size:14px}#references,#references .section-body,#references .section-body h3,#references .eyebrow{color:var(--ink)}}
/* Climate risks: the landscape is the full-width chapter background. */
#risks{position:relative;isolation:isolate;overflow:hidden;background:#342b1e;color:#fff;min-height:900px;padding-top:100px;padding-bottom:80px;column-gap:clamp(48px,6vw,100px);row-gap:60px}
.film-anchor{position:absolute;top:0;left:0}
.risk-media{position:absolute;z-index:-2;inset:0;background:#342b1e url('/assets/environment-poster.jpg') center/cover no-repeat;pointer-events:none}
.risk-media video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
#risks:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#18150ee0 0%,#211b1394 48%,#19150ec7 100%);pointer-events:none}
#risks .section-heading{padding:0}
#risks .eyebrow{color:#f5e5bd;font-size:12px;letter-spacing:.16em;margin-bottom:32px}
#risks .section-number{color:#fff;border-color:#ffffff60;background:#ffffff10}
#risks h2{font-size:clamp(44px,4.8vw,68px);font-weight:650;line-height:1.18;letter-spacing:-.035em;text-wrap:balance}
#risks .section-body{padding:0;background:none;border:0;border-radius:0;color:#fff;font-size:18px;line-height:1.85}
#risks .section-body h3{color:#fff;font-size:28px;font-weight:650;line-height:1.45;letter-spacing:-.02em;margin-bottom:34px}
#risks .section-body p{margin-bottom:26px}
#risks .risk-highlight{background:#fff6df;color:#4d381a;padding:24px 28px;border-radius:16px;border-left:4px solid #d9b86b;font-weight:600;margin:34px 0 0}
.risk-controls{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:40px;font-size:13px}
.risk-motion-toggle{padding:12px 18px;color:#fff;background:#ffffff12;border:1px solid #ffffff80;border-radius:28px;font-size:13px;cursor:pointer}
.risk-motion-toggle[hidden]{display:none}
.risk-controls>a{color:#fff;text-decoration:underline;text-underline-offset:5px;padding:10px 0}
#risks #video-error{font-size:14px;margin-top:24px;border-color:#ffffff60}
.risk-evidence{grid-column:1/-1;border-top:1px solid #ffffff60;padding-top:22px}
.risk-evidence summary{cursor:pointer;padding:20px 0;font-size:clamp(25px,2.7vw,38px);font-weight:550;line-height:1.3;letter-spacing:-.025em}
.risk-evidence .detail-body{max-width:880px;margin:20px auto 0;color:#fff;font-size:18px;line-height:1.85}
.risk-evidence h3{font-size:26px;color:#fff;line-height:1.4}
#technology .section-body{border:0;background:none;padding-top:8px}
#technology .section-body h3{font-weight:600}
#technology .section-body li{background:#e6efea;border:0;border-radius:18px;margin:12px 0;padding:22px 24px 22px 48px;color:#173e32}
#technology .section-body li:before{left:22px;top:22px}
@media(max-width:800px){#risks{min-height:0;padding-top:64px;padding-bottom:56px;gap:38px}#risks h2{font-size:clamp(40px,7vw,58px);max-width:650px;text-wrap:initial}#risks .section-body h3{font-size:26px}#risks:after{background:linear-gradient(180deg,#18150ed9,#211b13ad 45%,#19150ee6)}.risk-controls{margin-top:28px}.risk-evidence{grid-column:auto}.risk-evidence .detail-body{font-size:17px}#technology .section-body{padding:0}}
@media(max-width:480px){#risks{padding-top:50px;padding-bottom:44px;gap:34px}#risks h2{font-size:41px}#risks .section-body{font-size:17px;line-height:1.85}#risks .section-body h3{font-size:24px}#risks .risk-highlight{padding:22px}.risk-controls{gap:14px}.risk-evidence summary{font-size:27px}}
@media print{#risks{display:block;color:#172b29!important;min-height:0}.risk-media,#risks:after,.risk-controls{display:none}#risks h2,#risks .section-body,#risks .section-body h3,#risks .eyebrow,.risk-evidence .detail-body,.risk-evidence h3{color:#172b29}.risk-evidence{border-color:#aaa}}
