/* The Ops Layer · Execution Proof. Builds on tokens/base/components (Home v3 system). */

/* hero */
.hero{position:relative;overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.3) 52%,rgba(0,0,0,0) 74%),linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.2) 45%,rgba(0,0,0,0) 60%)}
.sentinel{position:absolute;top:120px;left:0;width:1px;height:1px}
.ol.js:not(.is-static) .hero [data-h]{opacity:0;translate:0 24px;filter:blur(6px);transition:opacity 1.3s var(--ex),translate 1.5s var(--ex),filter 1.3s var(--ex);transition-delay:var(--d,0ms)}
.ol.js:not(.is-static).loaded .hero [data-h]{opacity:1;translate:0 0;filter:blur(0)}
.pf-hero{min-height:max(700px,min(90vh,900px));display:flex;flex-direction:column}
.pf-hero>.wrap{width:100%}
.pf-in{flex:1;display:flex;flex-direction:column;justify-content:center;padding-top:120px;padding-bottom:72px}
.pf-h1{font-size:clamp(64px,8.4vw,136px);line-height:.92}
.pf-h1 .ln+.ln{padding-left:clamp(0px,12vw,200px)}
.pf-promise{margin-top:clamp(36px,3.4vw,56px);max-width:16em;font-family:var(--disp);font-size:clamp(26px,2.6vw,42px);line-height:1.18;letter-spacing:-.014em;color:var(--fg);text-wrap:balance}
.pf-own{margin-top:22px;max-width:44ch;font-size:clamp(15.5px,1.1vw,17px);line-height:1.7;color:var(--on-d2)}

/* the ledger: one number, one line, its own scale */
.lg{list-style:none;margin:clamp(48px,4.4vw,72px) 0 0;padding:0;border-top:1px solid rgb(0 0 0 / .16)}
.lg li{display:grid;grid-template-columns:minmax(170px,.42fr) minmax(0,1fr) minmax(160px,220px);gap:12px clamp(24px,4vw,64px);align-items:center;padding:26px 0;border-bottom:1px solid rgb(0 0 0 / .09)}
.lg-n{font-family:var(--disp);font-weight:700;font-size:clamp(48px,5vw,80px);line-height:.9;letter-spacing:-.04em;color:var(--fg);font-variant-numeric:lining-nums}
.lg-t span{display:block;font-family:var(--disp);font-size:clamp(21px,1.9vw,29px);line-height:1.15;letter-spacing:-.01em;color:var(--fg)}
.lg-t small{display:block;margin-top:6px;font-size:13.5px;line-height:1.5;color:var(--on-d3)}
.lg-f{margin:0;justify-self:end;width:100%}
.lg-v{display:block;width:100%;height:auto;overflow:visible}
.lg-v .g{fill:rgb(0 0 0 / .12)}
.lg-v .o{fill:none;stroke:#0F0F0F;stroke-width:1;vector-effect:non-scaling-stroke}
.lg-v .k{fill:#0F0F0F}
.lg-v .m{stroke:#0F0F0F;stroke-width:1.5;vector-effect:non-scaling-stroke}
.lg-v rect.k:not(.t){transform:scaleX(0);transform-box:fill-box;transform-origin:left;transition:transform 1.4s var(--ex) .3s}
.lg-v .t{opacity:0;transition:opacity .25s var(--ease);transition-delay:calc(var(--k) * 8ms + .3s)}
.lg.in .lg-v rect.k:not(.t),.ol:not(.js) .lg-v rect.k,.ol.is-static .lg-v rect.k{transform:none}
.lg.in .lg-v .t,.ol:not(.js) .lg-v .t,.ol.is-static .lg-v .t{opacity:1}

/* cases: one outcome line, one voice */
.cs-h2{font-size:clamp(46px,5.6vw,96px)}
.css{margin-top:clamp(40px,4vw,64px)}
.cs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:32px clamp(48px,7vw,120px);align-items:start;padding:clamp(56px,6vw,96px) 0;border-top:1px solid var(--hair2);scroll-margin-top:100px}
.cs-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:13px;font-weight:700;color:var(--on-d3)}
.co-logo{display:block;height:15px;width:auto;filter:brightness(0) invert(1);opacity:.55}
.co-sw{height:19px}
.cs-o{margin-top:22px;font-size:clamp(34px,3.7vw,60px);line-height:1.04;letter-spacing:-.02em;color:var(--fg);text-wrap:balance}
.cs-more{margin-top:28px;border-top:1px solid var(--hair);interpolate-size:allow-keywords}
.cs-more::details-content{height:0;overflow:hidden;transition:height .7s var(--ex),content-visibility .7s allow-discrete}
.cs-more[open]::details-content{height:auto}
.cs-more summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:12px;padding:16px 0;font-size:13.5px;font-weight:700;color:var(--on-d2);transition:color .3s}
.cs-more summary::-webkit-details-marker{display:none}
.cs-more summary:hover,.cs-more[open] summary{color:var(--fg)}
.cs-more[open] .pm{transform:rotate(135deg)}
.cs-more dl{margin:0;padding-bottom:6px}
.cs-more dl div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:12px 0;border-top:1px solid var(--hair)}
.cs-more dt{font-size:12.5px;font-weight:700;color:var(--on-d3)}
.cs-more dd{margin:0;font-size:15px;line-height:1.65;color:var(--on-d2)}
.cs-q{margin:0;padding-top:6px}
.cs-q p{position:relative;font-family:var(--disp);font-size:clamp(20px,1.7vw,26px);line-height:1.45;color:var(--on-d3);text-wrap:pretty}
.cs-q p::before{content:"\201C";position:absolute;left:-.6em;top:-.02em;color:rgb(255 255 255 / .3)}
.cs-q mark{background:none;color:var(--fg);font-weight:700}
.cs-q footer{margin-top:22px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;font-size:14px;color:var(--on-d3)}
.cs-q footer::before{content:"";width:32px;height:1px;background:rgb(255 255 255 / .5);align-self:center}
.cs-q footer b{color:var(--fg);font-weight:700}
.cs-q2{margin-top:44px;padding-top:28px;border-top:1px solid var(--hair)}
.cs-q2 p{font-size:clamp(18px,1.4vw,21px)}

/* environments */
.envs-h{font-size:clamp(32px,3.4vw,56px);max-width:18em}
.envs-k{margin-top:clamp(40px,4vw,64px);font-size:14px;color:var(--on-d3)}
.envs{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--hair);border-left:1px solid var(--hair)}
.envs li{display:grid;place-items:center;height:clamp(96px,8.4vw,128px);padding:0 14px;border-right:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.envs img{display:block;height:calc(var(--h) * .9);width:auto;max-width:100%;filter:brightness(0) invert(1);opacity:.62;transition:opacity .4s var(--ease)}
.envs li:hover img{opacity:1}
.ol.js:not(.is-static) .envs img{opacity:0;translate:0 8px;transition:opacity .8s var(--ease),translate 1s var(--ex)}
.ol.js:not(.is-static) .envs.in img{opacity:.62;translate:0 0}
.ol.js:not(.is-static) .envs.in li:hover img{opacity:1}
.envs li:nth-child(1) img{transition-delay:0ms}.envs li:nth-child(2) img{transition-delay:60ms}.envs li:nth-child(3) img{transition-delay:120ms}.envs li:nth-child(4) img{transition-delay:180ms}.envs li:nth-child(5) img{transition-delay:240ms}.envs li:nth-child(6) img{transition-delay:300ms}.envs li:nth-child(7) img{transition-delay:360ms}.envs li:nth-child(8) img{transition-delay:420ms}.envs li:nth-child(9) img{transition-delay:480ms}.envs li:nth-child(10) img{transition-delay:540ms}.envs li:nth-child(11) img{transition-delay:600ms}.envs li:nth-child(12) img{transition-delay:660ms}.envs li:nth-child(13) img{transition-delay:720ms}.envs li:nth-child(14) img{transition-delay:780ms}
.envs-note{margin-top:clamp(48px,4.4vw,72px);padding-top:28px;border-top:1px solid var(--hair);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px clamp(40px,6vw,96px)}
.envs-note p{font-size:14px;line-height:1.7;color:var(--on-d3)}
.envs-note a,.faq-a a{color:var(--fg);text-underline-offset:3px}

@media (max-width:1100px){
.envs{grid-template-columns:repeat(4,minmax(0,1fr))}
.envs-note{grid-template-columns:minmax(0,1fr)}
.cs{grid-template-columns:minmax(0,1fr)}
.lg li{grid-template-columns:minmax(130px,auto) minmax(0,1fr)}
.lg-f{grid-column:1/-1;justify-self:start;max-width:240px}
}
@media (max-width:760px){
.envs{grid-template-columns:repeat(2,minmax(0,1fr))}
.envs li{height:84px}
.pf-h1 .ln+.ln{padding-left:0}
.lg li{grid-template-columns:minmax(0,1fr)}
.cs-q p::before{left:-.45em}
.cs-q{padding-left:12px}
.cs-more dl div{grid-template-columns:minmax(0,1fr);gap:4px}
}
@media (prefers-reduced-motion:reduce){
.ol *,.ol *::before,.ol *::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
}

/* Phone pass (6 Oct 2026): logo wall ran to ten rows at two across */
@media (max-width:760px){.envs{grid-template-columns:repeat(3,minmax(0,1fr))}.envs li{height:72px;padding-inline:10px}.envs img{height:calc(var(--h) * .7)}}
