/* Shell: the shared editorial system, with the project's sea-blue accent. */
body.sh-editorial{--bg:#faf9f6;--surface:#eeede7;--ink:#202620;--muted:#656c61;--sea:#2f5f80;--sea-soft:#dce6ec;--sh-rule:color-mix(in srgb,var(--ink) 20%,transparent)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]):not([data-lights="on"]) body.sh-editorial{--bg:#141612;--surface:#1d201a;--ink:#ecebe1;--muted:#a3a89c;--sea:#96bdd9;--sea-soft:#1e2a31}}
:root[data-theme="dark"]:not([data-lights="on"]) body.sh-editorial,:root[data-lights="off"] body.sh-editorial{--bg:#141612;--surface:#1d201a;--ink:#ecebe1;--muted:#a3a89c;--sea:#96bdd9;--sea-soft:#1e2a31}

.sh-editorial .torch{display:none}
.sh-editorial #top{--olive:var(--sea);--lime:var(--sea);--sh-gap:8%;padding:0 clamp(22px,4.6vw,76px) 34px;margin-top:24px;overflow-x:clip}
.sh-editorial #top :is(section,.chapter){scroll-margin-top:120px}
.sh-editorial #top .cs-hero{--hero-bg:#e7e3db;--hero-ink:#232720;--hero-muted:#686b64;--hero-accent:#2f5f80;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:34px clamp(30px,3.3vw,52px);border-radius:10px}
.sh-editorial #top .cs-hero h1{font-size:clamp(65px,8vw,118px);margin:16px 0 20px}
.sh-editorial #top .cs-hero .label{font-size:9px;color:var(--hero-muted)}
.sh-editorial #top .cs-hero .label::before{content:"";display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:1px;background:var(--hero-accent)}
.sh-editorial #top .cs-hero .cs-sub{font-size:clamp(22px,2vw,29px)!important;max-width:26ch;margin:0 0 17px}
.sh-editorial #top .cs-hero .cs-intro{font-size:12px;line-height:1.75;max-width:47ch;margin:0 0 22px}
.sh-editorial #top .cs-hero .meta-grid{gap:10px 22px}
.sh-editorial #top .cs-hero>figure{width:100%;height:490px;min-height:0;align-self:center;border-radius:3px;background:transparent}
.sh-editorial #top .cs-hero>figure img{display:block;width:100%;height:100%;object-fit:contain;object-position:center!important}
.sh-editorial #top p{font-size:13px;line-height:1.85}
.sh-editorial #top :is(.big-q,.disc,.why-q,.meet,.pull,.ep-sum,h3,.takes b,.tests b){font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.025em}
.sh-editorial #top :is(.big-q,.disc){font-size:clamp(30px,3.5vw,50px);line-height:1.17;max-width:23ch;margin:0}
.sh-editorial #top :is(.big-q em,.disc span,.why-q em,.meet em,.ask){color:var(--sea)}
.sh-editorial #top .big-q em{font-style:normal!important}
.sh-editorial #top :is(.sec-head,.lead,.spread,.spread.flip,.insight,.field,.cat-hero,.role,.sc-stage){grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:var(--sh-gap);align-items:start}
.sh-editorial #top :is(.sec-head,.lead){margin:32px 0 36px}
.sh-editorial #top .sec-head p:not(.label),.sh-editorial #top .lead p{max-width:48ch;margin:0;color:var(--muted)}
.sh-editorial #top :is(.label,.tag,.chapter,.ep-step){font-size:10px;font-weight:500;letter-spacing:.11em}
.sh-editorial #top .tag{margin-bottom:12px}
.sh-editorial #top .tag::before{width:6px;height:6px;border-radius:1px}
.sh-editorial #top .chapter{margin:80px 0 0;gap:20px;line-height:1.7}
.sh-editorial #top .chapter b{font-weight:500;color:var(--sea)}
.sh-editorial #top .chapter::after{background:var(--sh-rule)}
.sh-editorial #top .fig{background:transparent;border-radius:0;box-shadow:none;margin:0;overflow:visible;min-width:0}
.sh-editorial #top .fig img{display:block;border-radius:2px}
.sh-editorial #top .fig figcaption{background:transparent;border:0;padding:12px 0 0;font-size:10px;line-height:1.65;font-weight:400;letter-spacing:.01em;text-transform:none;color:var(--muted);align-items:start;gap:12px}
.sh-editorial #top .fig figcaption span{font-size:inherit;line-height:inherit;letter-spacing:inherit;color:var(--muted);max-width:65%}
.sh-editorial #top :is(.why,.threads,.collage,.takes,.g-3eq){gap:30px 4%}
.sh-editorial #top .why{margin-top:30px}
.sh-editorial #top .why .fig img{aspect-ratio:4/3;object-fit:cover}
.sh-editorial #top .why figcaption{font-size:12px;line-height:1.8}
.sh-editorial #top .why figcaption b{font-size:10px;font-weight:500;color:var(--sea)}
.sh-editorial #top .why-note{font-size:10px;margin-top:14px}
.sh-editorial #top :is(.why-q,.meet){font-size:clamp(23px,2.7vw,37px);line-height:1.35;margin-top:42px;max-width:34ch}
.sh-editorial #top .threads{margin-top:38px}
.sh-editorial #top .thread{border-top:1px solid var(--sh-rule);padding-top:20px;grid-template-rows:auto 1fr;color:var(--ink)}
.sh-editorial #top .thread .n{font:400 42px/1 var(--serif);color:var(--sea)}
.sh-editorial #top .thread img{aspect-ratio:4/3;margin:22px 0 20px;border-radius:2px}
.sh-editorial #top .thread h3{font-size:clamp(22px,2.2vw,30px);line-height:1.25;margin:0 0 14px}
.sh-editorial #top .thread .tag{margin-bottom:9px}
.sh-editorial #top .thread p{font-size:12px;line-height:1.8}
.sh-editorial #top .markets{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr);gap:4%;align-items:start}
.sh-editorial #top .markets .fig img{aspect-ratio:900/1189;object-fit:contain}
.sh-editorial #top .markets .notes{padding:0;gap:22px}
.sh-editorial #top .notes blockquote{padding-left:17px;border-left:1px solid var(--sea)}
.sh-editorial #top .notes blockquote p{font:400 clamp(17px,1.6vw,22px)/1.4 var(--serif)}
.sh-editorial #top .notes cite{font-size:9px;font-weight:500;line-height:1.6}
.sh-editorial #top .note-line{font-size:12px}
.sh-editorial #top .side-ref{max-width:none;margin:30px 0 0;border-color:var(--sh-rule);gap:20px}
.sh-editorial #top .side-ref p{font-size:11px;max-width:70ch}
.sh-editorial #top .side-ref b{font-size:9px;font-weight:500}
.sh-editorial #top .side-ref span{white-space:normal}
.sh-editorial #top :is(.loop,.choose){margin-top:54px;align-items:center}
.sh-editorial #top .loop-art{background:transparent;padding:0;color:var(--ink)}
.sh-editorial #top .loop-p{max-width:44ch}
.sh-editorial #top .collage .fig img{aspect-ratio:4/5;object-fit:contain}
.sh-editorial #top .ref{gap:14px;align-content:start}
.sh-editorial #top .ref h3{font-size:clamp(22px,2.1vw,29px);line-height:1.25;margin:6px 0 0}
.sh-editorial #top .ref p{font-size:12px;line-height:1.85}
.sh-editorial #top .band{margin-top:40px}
.sh-editorial #top .band img{height:clamp(150px,22vw,300px)}
.sh-editorial #top .choose .fig img{max-height:460px!important;background:transparent!important}
.sh-editorial #top .tests{max-width:none;gap:4%;margin-top:38px}
.sh-editorial #top .tests li,.sh-editorial #top .tests li.on{border:0;border-top:1px solid var(--sh-rule);background:transparent;border-radius:0;padding-top:16px;overflow:visible}
.sh-editorial #top .tests li.on{border-top:2px solid var(--sea);padding-top:15px}
.sh-editorial #top .tests .ph{background:transparent}
.sh-editorial #top .tests .ph img{border-radius:2px}
.sh-editorial #top .tests .tx{padding:18px 0 0;gap:8px}
.sh-editorial #top .tests small{font-size:9px;font-weight:500;letter-spacing:.1em;color:var(--sea)}
.sh-editorial #top .tests b{font-size:25px;line-height:1.2}
.sh-editorial #top .tests span{font-size:12px;line-height:1.8}
.sh-editorial #top .pull{font-size:clamp(22px,2.4vw,33px);line-height:1.35;font-style:normal}
.sh-editorial #top .pull::before{font-size:70px}
.sh-editorial #top .pull cite{font-size:9px;font-weight:500;line-height:1.7}
.sh-editorial #top .spread>.fig[style*="max-width:520px"]{max-width:none!important;justify-self:stretch!important}
.sh-editorial #top .ep-flow{gap:24px;margin-top:38px}
.sh-editorial #top .ep-row{gap:4%}
.sh-editorial #top .ep-row.refs2{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:var(--sh-gap);max-width:none}
.sh-editorial #top .ep{background:transparent;border:0;border-top:1px solid var(--sh-rule);border-radius:0;padding:20px 0 0}
.sh-editorial #top .ep h3{font-size:23px;line-height:1.3;margin-bottom:20px}
.sh-editorial #top .ep .fig img{height:240px;aspect-ratio:auto;object-fit:contain;background:transparent;padding:0}
.sh-editorial #top .ep-row.refs2 .fig img{height:280px}
.sh-editorial #top .ep-k{margin:18px 0 3px;font-size:11px}
.sh-editorial #top .ep-s{font-size:10px;line-height:1.7}
.sh-editorial #top .ep-sum{font-size:clamp(23px,2.3vw,32px);line-height:1.35;max-width:36ch;justify-self:start;text-align:left}
.sh-editorial #top .ep-why{margin:0;max-width:58ch;text-align:left;font-size:12px;justify-self:end}
.sh-editorial #top .map-pics{grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);gap:5%;align-items:start}
.sh-editorial #top .map-img{border-radius:2px;background:transparent;overflow:visible}
.sh-editorial #top .map-img>img{border-radius:2px}
.sh-editorial #top .map-pics{margin-bottom:35px}
.sh-editorial #top .map-img>figcaption{position:absolute;left:0;top:100%;bottom:auto;color:var(--muted);text-shadow:none;padding-top:12px;font-size:10px;font-weight:400;letter-spacing:.01em;text-transform:none}
.sh-editorial #top .tip .tag{margin:0;color:#a6cce6}
.sh-editorial #top .tip p{font-size:12px;line-height:1.6}
.sh-editorial #top .sc-stage{align-items:center;top:max(110px,calc(50vh - 220px))}
.sh-editorial #top .sc-imgs{background:transparent}
.sh-editorial #top .sc-side{min-height:330px}
.sh-editorial #top .sc-t h3,.sh-editorial #top .sc-m h3{font-size:clamp(25px,2.8vw,38px);line-height:1.25;max-width:22ch;margin:8px 0 18px}
.sh-editorial #top .sc-t p,.sh-editorial #top .sc-m p{font-size:13px;line-height:1.85}
.sh-editorial #top .sc-frame .sc-cap{font-weight:400;letter-spacing:.01em;color:var(--muted)}
.sh-editorial #top .cat{gap:42px;margin-top:38px}
.sh-editorial #top .cat-hero{align-items:center}
.sh-editorial #top .cat-main img{max-height:600px;aspect-ratio:auto;object-fit:contain}
.sh-editorial #top .spec-name{font:400 clamp(50px,6vw,84px)/1 var(--serif);letter-spacing:-.04em}
.sh-editorial #top .spec-sub{font-size:10px;font-weight:500;margin:18px 0 30px}
.sh-editorial #top .spec dl{border-color:var(--sh-rule)}
.sh-editorial #top .spec dl div{grid-template-columns:75px minmax(0,1fr);gap:16px;padding:12px 0;border-color:var(--sh-rule);font-size:12px;line-height:1.7}
.sh-editorial #top .spec dt{font-size:10px;color:var(--sea)}
.sh-editorial #top .cat-pair{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--sh-gap);align-items:start}
.sh-editorial #top .cat-pair .fig img{height:430px;aspect-ratio:auto;object-fit:cover}
.sh-editorial #top .cat-room{width:100%}
.sh-editorial #top .cat-room img{max-height:580px;aspect-ratio:16/9}
.sh-editorial #top .role{padding:44px 0 60px;border-color:var(--sh-rule)}
.sh-editorial #top .role ul{margin:0;padding:0;list-style:none}
.sh-editorial #top .role li{display:grid;grid-template-columns:75px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--sh-rule);font-size:12px;line-height:1.8}
.sh-editorial #top .role li b{font-size:10px;font-weight:500;color:var(--sea)}
.sh-editorial #top .role .note{font-size:11px;line-height:1.85;margin-top:22px}
@media(max-width:1000px){
 body.sh-editorial #top .cs-hero.cs-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:0;padding:30px;gap:5%}
 .sh-editorial #top .cs-hero>figure{height:440px}
 .sh-editorial #top .cs-hero h1{font-size:clamp(58px,8vw,85px)}
 .sh-editorial #top .markets{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 4%}
 .sh-editorial #top .markets .notes{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:24px}
 .sh-editorial #top .markets .notes .tag{grid-column:1/-1;margin:0}
 .sh-editorial #top .markets .notes .note-line{grid-column:1/-1;grid-row:3}
 .sh-editorial #top .ep-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}
 .sh-editorial #top .ep .fig img{height:190px}
}
@media(max-width:820px){
 .sh-editorial #top{--sh-gap:30px}
 body.sh-editorial #top .cs-hero.cs-hero{grid-template-columns:minmax(0,1fr);padding:32px 22px;gap:28px}
 .sh-editorial #top .cs-hero>figure{height:360px}
 .sh-editorial #top .cs-hero .cs-intro{max-width:56ch}
 .sh-editorial #top :is(.sec-head,.lead,.spread,.spread.flip,.insight,.field,.cat-hero,.role){grid-template-columns:minmax(0,1fr);gap:24px}
 .sh-editorial #top :is(.big-q,.disc){font-size:clamp(29px,5vw,42px);max-width:26ch}
 .sh-editorial #top :is(.why,.threads,.collage){grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 4%}
 .sh-editorial #top .thread h3,.sh-editorial #top .ref h3{font-size:22px}
 .sh-editorial #top .ep-row.three{grid-template-columns:minmax(0,1fr)}
 .sh-editorial #top .ep-row.three .ep{display:grid;grid-template-columns:1fr 1.2fr;column-gap:5%}
 .sh-editorial #top .ep-row.three .fig{grid-column:2;grid-row:1/3}
 .sh-editorial #top .ep-row.three .ep-k{grid-column:1}
 .sh-editorial #top .ep-row.three .fig img{height:220px}
 .sh-editorial #top .tests{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 6%}
 .sh-editorial #top .map-pics{gap:5%}
 .sh-editorial #top .cat-pair{gap:5%}
 .sh-editorial #top .cat-pair .fig img{height:340px}
 .sh-editorial #top .sc-mstep{margin-bottom:42px}
 .sh-editorial #top .sc-mstep .fig img{max-height:440px;object-fit:contain}
 .sh-editorial #top .sc-m{margin-bottom:22px}
}
@media(max-width:600px){
 .sh-editorial .top{column-gap:12px}
 .sh-editorial .top .mark{font-size:22px}
 .sh-editorial .top .right{gap:10px}
 .sh-editorial .top .cv{font-size:9px;padding:9px 10px;white-space:nowrap}
 .sh-editorial .top .lang{font-size:10px}
 .sh-editorial .top .lang span{padding:5px 6px}
 .sh-editorial .top .cord{width:20px;flex:none}
 .sh-editorial #top{padding-inline:12px;--sh-gap:24px}
 .sh-editorial #top .cs-hero{margin-inline:-12px}
 .sh-editorial #top .cs-hero>figure{height:320px}
 .sh-editorial #top .cs-hero h1{font-size:68px}
 .sh-editorial #top .cs-hero .cs-sub{font-size:24px!important}
 .sh-editorial #top .meta-grid{gap:12px 16px}
 .sh-editorial #top :is(.why,.threads,.collage){grid-template-columns:minmax(0,1fr);gap:32px}
 .sh-editorial #top .thread{display:grid;grid-template-columns:38px minmax(0,1fr);gap:16px}
 .sh-editorial #top .thread img{margin-top:0;max-height:260px}
 .sh-editorial #top .thread .n{font-size:30px}
 .sh-editorial #top .why .fig img{max-height:250px}
 .sh-editorial #top .collage .fig img{max-height:300px}
 .sh-editorial #top .markets{gap:24px 5%}
 .sh-editorial #top .markets .notes{grid-template-columns:minmax(0,1fr)}
 .sh-editorial #top .markets .notes .note-line{grid-row:auto}
 .sh-editorial #top .chapter{margin-top:60px;font-size:9px}
 .sh-editorial #top .side-ref{align-items:start;gap:14px}
 .sh-editorial #top .side-ref img{width:75px;height:70px}
 .sh-editorial #top .ep-row.refs2{grid-template-columns:repeat(2,minmax(0,1fr));gap:5%}
 .sh-editorial #top .ep-row.refs2 .fig img{height:175px}
 .sh-editorial #top .ep h3{font-size:20px}
 .sh-editorial #top .ep-row.three .ep{display:flex}
 .sh-editorial #top .ep-row.three .fig img{height:240px}
 .sh-editorial #top .ep-why{justify-self:start}
 .sh-editorial #top .map-pics{grid-template-columns:minmax(0,1fr);gap:52px}
 .sh-editorial #top .map-img:last-child{width:80%;justify-self:end}
 .sh-editorial #top .map-img .hs{position:static}
 .sh-editorial #top .map-img .hs .dot{left:calc(var(--x) - 13px);top:calc(var(--y) - 13px);z-index:2}
 .sh-editorial #top .map-img .hs .tip{left:10px;right:10px;top:auto;bottom:10px;width:auto;padding:10px;z-index:3}
 .sh-editorial #top .tip b{font-size:16px}
 .sh-editorial #top .tip p{font-size:11px}
 .sh-editorial #top .cat-pair{grid-template-columns:minmax(0,1fr);gap:28px}
 .sh-editorial #top .cat-pair .fig img{height:auto;max-height:450px;object-fit:contain}
 .sh-editorial #top .cat-room img{aspect-ratio:4/3}
 .sh-editorial #top .fig figcaption{flex-wrap:wrap;gap:3px 12px}
 .sh-editorial #top .fig figcaption span{max-width:100%}
}
@media(max-width:380px){
 .sh-editorial .top .mark{font-size:20px}
 .sh-editorial .top .cv{font-size:0}
 .sh-editorial .top .cv::after{content:"CV ↗";font-size:9px}
}
