/* ONE BCG ONE BCG: editorial components and V3 hero treatments. Scoped by v3-* and sh--* classes; frozen pages do not use them. */
.v3s{padding-block:clamp(3.5rem,7vw,6.5rem)}
.v3s--stone{background:var(--stone)}
.v3s .eyebrow{display:block;margin-bottom:.9rem;color:var(--ink-3)}
.v3s h2{max-width:25ch}
.v3s .v3-two h2,.v3s .v3-h h2{max-width:22.5ch}
.v3-h{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:end;margin-bottom:clamp(2rem,4vw,3.5rem)}
.v3-h .sup{color:var(--ink-2)}
.v3-two{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.v3-two--flat{align-items:center}
.v3-lead{margin-top:1.5rem;color:var(--ink-2);max-width:30rem}
.v3-lead2{margin-top:2.5rem;max-width:46rem;color:var(--ink-2)}
.v3-st{max-width:30ch!important;margin-bottom:clamp(2rem,4vw,3.25rem);}
.v3-st--w{max-width:30ch!important}
.v3-h3{margin:0 0 .75rem;}
/* journey, vertical */
.v3-jv{list-style:none;margin:0;padding:0 0 0 2rem;border-left:1px solid var(--line-2)}
.v3-jv li{position:relative;padding:0 0 1.9rem;display:flex;gap:1.1rem;align-items:baseline}
.v3-jv li:last-child{padding-bottom:0}
.v3-jv li::before{content:"";position:absolute;left:calc(-2rem - 4.5px);top:.62rem;width:9px;height:9px;border-radius:50%;background:var(--ink)}
.v3-jv li:last-child::before{background:var(--red)}
.v3-jv .n{color:var(--ink-3);min-width:1.8rem;}

/* rail, horizontal */
.v3-rail{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 clamp(1rem,2.5vw,2rem)}
.v3-rail li{position:relative;border-top:1px solid var(--line-2);padding-top:1.5rem;padding-bottom:.5rem}
.v3-node{position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--ink)}
.v3-rail li:last-child .v3-node{background:var(--red)}
.v3-rail .n{display:block;color:var(--ink-3);margin-bottom:.5rem;}

.v3-rail p{margin-top:.7rem;font-size:var(--t-small);line-height:1.6;color:var(--ink-2)}

/* rows and grids */
.v3-rows{list-style:none;margin:clamp(2rem,4vw,3.25rem) 0 0;padding:0;border-bottom:1px solid var(--line-2)}
.v3-rows li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1rem,4vw,4rem);padding:1.5rem 0;border-top:1px solid var(--line-2)}

.v3-rows p,.v3-g2 p{color:var(--ink-2);font-size:var(--ty-body);line-height:1.65;max-width:34rem}
.v3-g2{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,6vw,5rem)}
.v3-split+.v3-g2,.v3-h+.v3-g2{margin-top:clamp(2rem,4vw,3.25rem)}
.v3-g2 li{border-top:1px solid var(--line-2);padding:1.6rem 0 2.2rem}
.v3-g2 .n{display:block;color:var(--red);margin-bottom:.7rem;}
.v3-g2 h3{margin-bottom:.7rem}
/* split and figures */
.v3-split{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,6vw,6rem);align-items:center;margin-bottom:clamp(2rem,4vw,3.25rem)}
.v3-split:last-child{margin-bottom:0}
.v3-split--rev>:first-child{order:2}
.v3-fig{margin:0;position:relative;overflow:hidden;background:#0B1320}
.v3-fig img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.v3-fig--portrait img{aspect-ratio:430/560;max-height:560px;width:auto;margin-inline:auto}
.v3-fig--portrait{background:var(--stone-2);display:flex;justify-content:center}
.v3-fig--ui{background:#fff;border:1px solid var(--line-2)}.v3-fig--ui img{aspect-ratio:auto}
.v3-tag{position:absolute;left:.75rem;bottom:.75rem;max-width:calc(100% - 1.5rem);font-size:.75rem;line-height:1.35;letter-spacing:.01em;color:#fff;background:rgba(11,19,32,.82);padding:.3rem .6rem}
.v3-device{position:relative;display:flex;justify-content:center;align-items:center;padding:clamp(2rem,5vw,4rem);background:linear-gradient(135deg,var(--stone-2),var(--stone-3))}
.v3-phone{position:relative;width:min(250px,62%);height:auto;filter:drop-shadow(0 24px 40px rgba(11,19,32,.28))}
.v3-chk{list-style:none;margin:1.75rem 0 2rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.75rem}
.v3-chk li{position:relative;padding-left:1.3rem;color:var(--ink-2);line-height:1.5}
.v3-chk li::before{content:"";position:absolute;left:0;top:.7em;width:.55rem;height:1px;background:var(--red)}
/* chips, link rows, pairs, gap */
.v3-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}
.v3-chips li{border:1px solid var(--line-2);border-radius:999px;padding:.55rem 1.15rem;font-size:1.0625rem}
.v3-chips--lg{margin-top:clamp(2rem,4vw,3rem)}.v3-chips--lg li{padding:.7rem 1.5rem;}
.v3-lr{list-style:none;margin:clamp(2rem,4vw,3rem) 0 0;padding:0;border-bottom:1px solid var(--line-2)}
.v3-lr a{display:grid;grid-template-columns:2.5rem minmax(0,4fr) minmax(0,5fr) 3rem;gap:clamp(.75rem,3vw,2.5rem);align-items:baseline;padding:1.5rem 0;border-top:1px solid var(--line-2);text-decoration:none;color:var(--ink);transition:background .3s var(--ease),padding .4s var(--ease)}
.v3-lr a:hover{background:rgba(21,20,18,.03);padding-left:.75rem}
.v3-lr .n{color:var(--red);}
.v3-lr .p{color:var(--ink-2);font-size:var(--t-small);line-height:1.6}
.v3-lr .ar{justify-self:end;display:inline-block;width:22px;height:1px;background:currentColor;position:relative;align-self:center}
.v3-lr .ar::after{content:"";position:absolute;right:0;top:-3.5px;width:8px;height:8px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.v3-lr a:hover .ar{color:var(--red)}
.v3-pr{list-style:none;margin:clamp(2.5rem,5vw,4rem) 0 0;padding:0;border-bottom:1px solid var(--line-2)}
.v3-pr li{display:grid;grid-template-columns:minmax(0,1fr) 4rem minmax(0,1fr);gap:clamp(1rem,3vw,2.5rem);padding:1.9rem 0;border-top:1px solid var(--line-2);align-items:start}
.v3-pr .meta{display:block;color:var(--ink-3);margin-bottom:.6rem;}
.v3-pr h3{margin-bottom:.6rem;}
.v3-pr p{font-size:var(--t-small);line-height:1.65;color:var(--ink-2)}
.v3-pr__a h3,.v3-pr__a p{color:var(--ink-3)}
.v3-pr__x{align-self:center;justify-self:center;display:block;width:34px;height:1px;background:var(--red);position:relative}
.v3-pr__x::after{content:"";position:absolute;right:0;top:-3.5px;width:8px;height:8px;border-top:1px solid var(--red);border-right:1px solid var(--red);transform:rotate(45deg)}
.v3-gap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;margin-top:clamp(2.5rem,5vw,4rem)}

.v3-gap__b{text-align:right}
.v3-gap__m{color:var(--ink-2);border-left:1px solid var(--red);border-right:1px solid var(--red);padding:.25rem 1.75rem;}
.v3-areas{list-style:none;margin:0;padding:0;columns:3;column-gap:2.5rem}
.v3-areas li{break-inside:avoid;border-top:1px solid var(--line-2);padding:.95rem 0;font-size:clamp(1.0625rem,1rem + .4vw,1.3rem)}
.v3-early{margin-top:2.5rem;padding-top:1.75rem;border-top:1px solid var(--line-2)}
/* photographic band with statement */
.v3-pband{position:relative;overflow:hidden;background:#0B1320;color:#fff}
.v3-pband>img{display:block;width:100%;height:clamp(340px,42vw,560px);object-fit:cover}
.v3-pband--short>img{height:clamp(180px,22vw,300px)}
.v3-pband__o{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,13,22,.82),rgba(8,13,22,.25) 70%,rgba(8,13,22,.1))}
.v3-pband__c{position:absolute;left:0;right:0;bottom:0;padding-bottom:clamp(1.75rem,4vw,3.5rem)}
.v3-pband h2{color:#fff;max-width:32.5ch}
/* Insights review state */
.v3-status{border:1px dashed var(--line-2);background:#fff;padding:clamp(1.5rem,3vw,2.5rem);max-width:46rem}
.v3-status .meta{color:var(--red);display:block;margin-bottom:.8rem}
.v3-topics{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem}
.v3-topics li{border-top:1px solid var(--line-2);padding:1rem 0;font-size:1.125rem}
/* ---------- V3 heroes ---------- */
.sh--ph .sh__o{background:linear-gradient(90deg,rgba(8,13,22,.9) 0%,rgba(8,13,22,.78) 30%,rgba(8,13,22,.32) 52%,rgba(8,13,22,0) 70%),linear-gradient(0deg,rgba(8,13,22,.28),rgba(8,13,22,0) 38%)}
@media(min-width:901px){
 .sh--bl{align-items:flex-end}.sh--bl .sh__c{padding-bottom:clamp(2.5rem,5vw,4.5rem)}
 .sh--bl .sh__o{background:linear-gradient(0deg,rgba(8,13,22,.94) 0%,rgba(8,13,22,.88) 42%,rgba(8,13,22,.4) 66%,rgba(8,13,22,0) 84%),linear-gradient(90deg,rgba(8,13,22,.8) 0%,rgba(8,13,22,.55) 40%,rgba(8,13,22,0) 72%)}
 .sh--ph.sh--bright .sh__o{background:linear-gradient(90deg,rgba(8,13,22,.95) 0%,rgba(8,13,22,.9) 40%,rgba(8,13,22,.5) 62%,rgba(8,13,22,.05) 82%)}
}
@media(max-width:900px){
 .sh--ph{--pad:clamp(215px,80vw,420px);display:block;min-height:calc(100svh - var(--hdr) - var(--rv));padding:var(--pad) 0 2.25rem;align-items:initial}
 .sh--ph .sh__m{position:absolute;inset:0;height:auto;z-index:-2}
 .sh--ph .sh__m img{width:100%;height:100%;object-fit:cover;object-position:50% 0;-webkit-mask-image:none;mask-image:none}
 .sh--ph .sh__o,.sh--ph.sh--bright .sh__o,.sh--bl .sh__o{display:block;background:linear-gradient(180deg,rgba(8,13,22,0) 0,rgba(8,13,22,0) calc(var(--pad) - 70px),rgba(8,13,22,.8) calc(var(--pad) + 10px),rgba(8,13,22,.93) calc(var(--pad) + 120px),rgba(8,13,22,.95) 100%)}
 .sh--ph .sh__c{margin-top:0;position:relative;z-index:1}
}
@media(max-width:360px){.sh--ph{--pad:clamp(190px,66vw,420px)}}
/* ---------- responsive components ---------- */
@media(max-width:900px){
 .v3-h,.v3-two,.v3-split,.v3-gap{grid-template-columns:1fr}
 .v3-split--rev>:first-child{order:0}
 .v3-h{align-items:start}
 .v3-rows li{grid-template-columns:1fr;gap:.6rem}
 .v3-g2{grid-template-columns:1fr}
 .v3-lr a{grid-template-columns:2rem minmax(0,1fr) 2rem}.v3-lr .p{grid-column:2/3;grid-row:2}.v3-lr .ar{grid-column:3;grid-row:1}
 .v3-pr li{grid-template-columns:1fr;gap:1rem}.v3-pr__x{justify-self:start;transform:rotate(90deg);margin-left:12px}
 .v3-gap__a,.v3-gap__b{text-align:left}.v3-gap__m{border:0;border-left:1px solid var(--red);padding:.25rem 0 .25rem 1.25rem}
 .v3-areas{columns:2}.v3-chk,.v3-topics{grid-template-columns:1fr}
 .v3-rail{grid-template-columns:1fr}
 .v3-rail li{border-top:0;border-left:1px solid var(--line-2);padding:0 0 1.5rem 1.6rem}
 .v3-node{top:.35rem;left:-5px}
 .v3-fig--portrait img{max-height:420px}
}
@media(max-width:480px){.v3-areas{columns:1}}

.v3-pband--solid{border-top:1px solid #1d2a3d}.v3-pband--solid .v3-pband__c{position:static;padding-block:clamp(3rem,6vw,5rem)}.v3-pband--solid h2{max-width:37.5ch}

.v3-pp{margin:clamp(2rem,4vw,3rem) 0}.v3-pp .v3-chips li{background:#fff}
.v3-pp__line{position:relative;height:1px;background:var(--line-2);margin:1.75rem 0 1.25rem;max-width:30rem}.v3-pp__line span{position:absolute;left:0;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--red)}
.v3-pp__c{font-size:clamp(1.25rem,1.05rem + .8vw,1.75rem);line-height:1.3;color:var(--ink);margin:0;max-width:28ch}
.v3-topics{list-style:none;margin:1.75rem 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.75rem}
.v3-topics li{border-top:1px solid var(--line-2);padding-top:.8rem;color:var(--ink-2);line-height:1.45}
.v3-gdnote{font-size:.875rem;color:var(--ink-2);border-left:2px solid var(--red);padding-left:.9rem;margin:0 0 1.75rem}
/* V3 tonal unification of mixed photographs (CSS only, assets untouched) */
.stg__ph img,.mosaic img{filter:saturate(.55) contrast(1.04) brightness(.98)}

@media(max-width:360px){.chero .crumb,.chero .crumb a{text-shadow:0 1px 3px rgba(0,0,0,.75)}}
@media(max-width:360px){.chero__o{background:linear-gradient(0deg,rgba(18,12,8,.9) 0%,rgba(18,12,8,.8) 45%,rgba(18,12,8,.55) 75%,rgba(18,12,8,.5) 100%)}}
