/* BodyCodes: page-local editorial layout, shared by draft and final. */
body.bc-editorial{--bg:#faf9f6;--surface:#eeede7;--ink:#202620;--muted:#656c61;--bc-accent:#376abe;--bc-rule:color-mix(in srgb,var(--ink) 20%,transparent)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]):not([data-lights="on"]) body.bc-editorial{--bg:#141612;--surface:#1d201a;--ink:#ecebe1;--muted:#a3a89c;--bc-accent:#9cbeff}}
:root[data-theme="dark"]:not([data-lights="on"]) body.bc-editorial,:root[data-lights="off"] body.bc-editorial{--bg:#141612;--surface:#1d201a;--ink:#ecebe1;--muted:#a3a89c;--bc-accent:#9cbeff}

.bc-editorial .torch{display:none}
.bc-editorial #top{--olive:var(--bc-accent);--lime:var(--bc-accent);--bc-gap:8%;padding:0 clamp(22px,4.6vw,76px) 34px;margin-top:24px;overflow-x:clip}
.bc-editorial #top section{scroll-margin-top:125px}
.bc-editorial #top p{font-size:13px;line-height:1.85}
.bc-editorial #top .bc-draft-label{font:500 10px/1.5 var(--body);color:var(--muted);margin:0 0 16px;letter-spacing:.06em}
.bc-editorial #top .cs-hero{background:#e9edf1;--hero-ink:#232720;--hero-muted:#616a73;--hero-accent:#376abe;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:5%;align-items:center;min-height:560px;margin:0 calc(clamp(22px,4.6vw,76px)*-1);padding:36px clamp(30px,3.3vw,52px);border-radius:10px}
.bc-editorial #top .cs-hero h1{font-size:clamp(56px,6.8vw,94px)!important;line-height:.94;margin:16px 0 20px}
.bc-editorial #top .cs-hero .label{font-size:9px;color:var(--hero-muted)}
.bc-editorial #top .cs-hero .label::before{content:"";display:inline-block;width:8px;height:8px;background:#376abe;margin-right:9px;border-radius:1px}
.bc-editorial #top .cs-hero .cs-sub{font-size:clamp(22px,2vw,29px)!important;max-width:26ch;margin:0 0 17px}
.bc-editorial #top .cs-hero .cs-intro{font-size:12px;line-height:1.75;max-width:47ch;margin:0 0 22px}
.bc-editorial #top .cs-hero .fig{width:100%;height:auto;min-height:0;align-self:center;overflow:visible;border-radius:0}
.bc-editorial #top .cs-hero .fig img{width:100%;height:auto;object-fit:contain;border-radius:2px}
.bc-editorial #top .cs-hero figcaption{color:#616a73}
.bc-editorial #top .chapter{margin:76px 0 0;gap:20px;font-size:10px;font-weight:500;letter-spacing:.11em;line-height:1.7}
.bc-editorial #top .chapter b{font-weight:500;color:var(--bc-accent)}
.bc-editorial #top .chapter::after{background:var(--bc-rule)}
.bc-editorial #top :is(.disc,.big-q,h3){font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.025em}
.bc-editorial #top :is(.disc,.big-q){font-size:clamp(30px,3.5vw,50px);line-height:1.18;margin:0 0 22px;max-width:24ch}
.bc-editorial #top .disc span{color:var(--bc-accent)}
.bc-editorial #top :is(.split,.sec-head,.role,.bc-brief-grid){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:var(--bc-gap);align-items:start}
.bc-editorial #top .sec-head{margin:32px 0 36px}
.bc-editorial #top .sec-head>p{margin:0;color:var(--muted);max-width:50ch}
.bc-editorial #top .split h3{font-size:clamp(24px,2.4vw,33px);line-height:1.25;margin:0 0 20px}
.bc-editorial #top .split p{max-width:50ch;color:var(--muted)}
.bc-editorial #top .fig{background:transparent;border-radius:0;box-shadow:none;margin:0;min-width:0;overflow:visible}
.bc-editorial #top .fig img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:2px}
.bc-editorial #top .fig figcaption{display:block;background:transparent;border:0;padding:12px 0 0;color:var(--muted);font-size:10px;line-height:1.75;font-weight:400;letter-spacing:.01em;text-transform:none}
.bc-editorial #top .label{font-size:10px;font-weight:500;letter-spacing:.1em}
.bc-editorial #top .bc-brief-grid>div{padding:22px 0 0;border-top:1px solid var(--bc-rule)}
.bc-editorial #top .bc-brief-grid .label{margin:0 0 14px;color:var(--bc-accent)}
.bc-editorial #top .bc-brief-grid p:not(.label){margin:0;font-size:12px;color:var(--muted)}
.bc-editorial #top .bc-shortlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4%;margin-top:42px}
.bc-editorial #top .bc-shortlist article{border-top:1px solid var(--bc-rule);padding-top:22px;min-width:0}
.bc-editorial #top .bc-shortlist small{font:500 10px/1.5 var(--body);color:var(--bc-accent)}
.bc-editorial #top .bc-shortlist h3{font-size:clamp(23px,2.2vw,31px);line-height:1.3;margin:17px 0}
.bc-editorial #top .bc-shortlist p{font-size:12px;line-height:1.85;color:var(--muted)}
.bc-editorial #top .bc-shortlist .bc-decision{margin-top:20px;color:var(--bc-accent)}
.bc-editorial #top :is(.bc-decision-note,.bc-blueprint-readout){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:var(--bc-gap);border-top:1px solid var(--bc-rule);margin-top:38px;padding-top:25px}
.bc-editorial #top :is(.bc-decision-note,.bc-blueprint-readout) h3{font-size:clamp(23px,2.3vw,32px);line-height:1.3;margin:0}
.bc-editorial #top :is(.bc-decision-note,.bc-blueprint-readout) p{font-size:12px;color:var(--muted);margin:0}
.bc-editorial #top .bc-supporting{border-block:1px solid var(--bc-rule);padding:18px 0;margin-top:34px}
.bc-editorial #top .bc-supporting summary{cursor:pointer;font:500 11px/1.8 var(--body);color:var(--bc-accent)}
.bc-editorial #top .bc-supporting>.fig{margin-top:24px}
.bc-editorial #top .bc-supporting>p{max-width:70ch;color:var(--muted);font-size:12px}
.bc-editorial #top .bc-supporting img{max-height:480px;object-position:left top}
.bc-editorial #top .bc-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin-top:38px}
.bc-editorial #top table{width:100%;border-collapse:collapse;text-align:left;min-width:610px;font:400 12px/1.8 var(--body);table-layout:fixed}
.bc-editorial #top :is(th,td){border-bottom:1px solid var(--bc-rule);padding:18px 20px 18px 0;vertical-align:top}
.bc-editorial #top th{color:var(--bc-accent);font-weight:500;font-size:10px;border-top:1px solid var(--bc-rule)}
.bc-editorial #top th:first-child{width:27%}
.bc-editorial #top th:nth-child(2){width:45%}
.bc-editorial #top .bc-world img{max-height:460px}
.bc-editorial #top .bc-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4%;margin:38px 0 44px}
.bc-editorial #top .bc-flow li{border-top:1px solid var(--bc-rule);padding-top:22px;min-width:0}
.bc-editorial #top .bc-flow small{font:500 10px/1.5 var(--body);color:var(--bc-accent)}
.bc-editorial #top .bc-flow h3{font-size:clamp(21px,2vw,28px);line-height:1.3;margin:15px 0}
.bc-editorial #top .bc-flow p{font-size:12px;color:var(--muted);margin:0}
.bc-editorial #top .bc-journeys{margin-top:40px;gap:4%}
.bc-editorial #top .bc-journeys img{height:240px;object-fit:contain;object-position:left top}
.bc-editorial #top .note{font-size:11px;line-height:1.85;color:var(--muted);max-width:90ch;margin-top:22px}
.bc-editorial #top .bc-validation .fig{margin-top:24px}
.bc-editorial #top .role{margin-top:32px}
.bc-editorial #top .role li{grid-template-columns:80px minmax(0,1fr);gap:16px;padding:15px 0;border-color:var(--bc-rule);font-size:12px;line-height:1.8}
.bc-editorial #top .role li b{font-size:10px;font-weight:500}
.bc-editorial #top .bc-reflection{font:400 clamp(22px,2.4vw,34px)/1.45 var(--serif);max-width:46ch;margin:48px 0 0;letter-spacing:-.02em}
.bc-editorial #top .bc-extension{margin-bottom:50px}
.bc-editorial .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1000px){
 body.bc-editorial #top .cs-hero.cs-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;padding:32px;gap:5%}
 .bc-editorial #top .cs-hero h1{font-size:clamp(50px,6.5vw,75px)!important}
 .bc-editorial #top .bc-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 6%}
 .bc-editorial #top .bc-journeys{grid-template-columns:repeat(3,minmax(0,1fr))}
 .bc-editorial #top .bc-journeys img{height:180px}
}
@media(max-width:760px){
 body.bc-editorial #top .cs-hero.cs-hero{grid-template-columns:minmax(0,1fr);padding:32px 22px;gap:30px}
 .bc-editorial #top .cs-hero .fig{max-width:650px}
 .bc-editorial #top .cs-hero .cs-sub{font-size:24px!important}
 .bc-editorial #top :is(.split,.sec-head,.role,.bc-brief-grid,.bc-decision-note,.bc-blueprint-readout){grid-template-columns:minmax(0,1fr);gap:24px}
 .bc-editorial #top :is(.disc,.big-q){font-size:clamp(29px,5.5vw,42px);max-width:28ch}
 .bc-editorial #top .bc-shortlist{grid-template-columns:minmax(0,1fr);gap:28px}
 .bc-editorial #top .bc-shortlist h3{font-size:28px;margin:12px 0}
 .bc-editorial #top .bc-shortlist .bc-decision{margin-bottom:0}
 .bc-editorial #top .bc-journeys{grid-template-columns:minmax(0,1fr);gap:32px}
 .bc-editorial #top .bc-journeys img{height:auto;max-height:360px}
 .bc-editorial #top .bc-reflection{font-size:25px;line-height:1.5}
}
@media(max-width:600px){
 .bc-editorial .top .mark{font-size:22px}
 .bc-editorial .top .right{gap:10px}
 .bc-editorial .top .cv{font-size:9px;padding:9px 10px;white-space:nowrap}
 .bc-editorial .top .lang{font-size:10px}
 .bc-editorial .top .lang span{padding:5px 6px}
 .bc-editorial .top .cord{width:20px;flex:none}
 .bc-editorial #top{padding-inline:12px;--bc-gap:24px}
 .bc-editorial #top .cs-hero{margin-inline:-12px}
 .bc-editorial #top .cs-hero h1{font-size:clamp(47px,13vw,65px)!important}
 .bc-editorial #top .chapter{margin-top:56px}
 .bc-editorial #top .bc-flow{gap:28px 7%}
 .bc-editorial #top table{font-size:11px}
}
@media(max-width:380px){
 .bc-editorial .top .mark{font-size:20px}
 .bc-editorial .top .cv{font-size:0}
 .bc-editorial .top .cv::after{content:"CV ↗";font-size:9px}
 .bc-editorial #top .bc-flow{grid-template-columns:minmax(0,1fr);gap:24px}
 .bc-editorial #top .bc-flow li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px}
 .bc-editorial #top .bc-flow h3{margin:0 0 12px}
}
