.case-visual-lab{background:#f6f5f2;color:#0a1428;padding:90px max(24px,6vw)}
.visual-lab-heading{max-width:1180px;margin:0 auto 42px}.visual-lab-heading h2{font-size:clamp(36px,5vw,68px)}
.visual-kicker{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;color:#657080;line-height:1.5;margin-bottom:15px}
.case-comparison{position:relative;width:min(1180px,100%);height:390px;margin:auto;border-radius:24px;overflow:hidden;isolation:isolate}
.comparison-plane{position:absolute;inset:0;background-color:#0a1428;background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:32px 32px}
.comparison-after{background-color:#c21e33;background-image:radial-gradient(ellipse at 90% 0%,#ecd0d066,transparent 70%),linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px)}
.comparison-before{clip-path:inset(0 calc(100% - var(--split)) 0 0)}
.comparison-state{position:absolute;top:50%;transform:translateY(-50%);right:5%;width:40%;color:#fff}
.comparison-before .comparison-state{left:5%;right:auto}
.comparison-state>span{font-size:12px;font-weight:500;line-height:1.4;display:block;margin-bottom:20px;color:#ffffffbb}
.comparison-state strong{font-size:clamp(25px,3.8vw,55px);font-weight:800;line-height:1.05;letter-spacing:-.06em;display:block;text-wrap:balance}
.comparison-state p{font-size:15px;line-height:1.5;color:#ffffffba;margin-top:18px}
.comparison-signal{display:block;width:38%;height:8px;margin-top:30px;border-radius:5px;background:#aab4c5}
.comparison-after .comparison-signal{width:100%;background:linear-gradient(90deg,#f7b4bd,#fff)}
.comparison-seam{position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:#fff;transform:translateX(-50%);pointer-events:none}
.comparison-seam>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#0a1428;font-size:22px;box-shadow:0 4px 22px #0003}
.comparison-control{display:block;max-width:1180px;margin:22px auto 0;font-size:12px;color:#505969}
.comparison-control input{width:100%;accent-color:#d91e2a;min-height:44px;display:block;margin-top:8px;cursor:ew-resize}
.visual-evidence-note{font-size:12px!important;line-height:1.6!important;color:#657080!important;font-weight:400!important;margin-top:22px!important}
.case-visual-lab>.visual-evidence-note{max-width:1180px;margin-left:auto;margin-right:auto}
.case-funnel{margin:40px 0;padding:38px 28px;background:#101b2e;border-radius:24px;color:#fff;overflow:hidden}
.case-funnel figcaption h3{font-size:clamp(30px,4vw,44px);line-height:1.02}.case-funnel figcaption h3 em{color:#f07382}
.case-funnel figcaption p{font-size:14px!important;line-height:1.5!important;color:#b7c3d5!important;font-weight:300!important;margin:18px 0 30px!important}
.case-funnel .visual-kicker{color:#b8c3d1;font-size:11px}
.case-funnel-bands{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.case-funnel-band{position:relative;min-height:140px;display:flex;align-items:center;justify-content:center;text-align:center}
.funnel-shape{position:absolute;inset:0;background:#ffffff09;clip-path:polygon(var(--inset) 0,calc(100% - var(--inset)) 0,calc(100% - var(--next)) 100%,var(--next) 100%)}
.funnel-shape i{position:absolute;inset:0;background:linear-gradient(110deg,#861e33,#d91e2a 65%,#f0a1ad);transform:scaleX(0);transform-origin:left;transition:transform 1.3s cubic-bezier(.7,0,.2,1);transition-delay:calc(var(--step) * 120ms)}
.visual-ready .funnel-shape i{transform:scaleX(1)}
.funnel-band-copy{position:relative;z-index:1;width:100%;padding:18px calc(var(--inset) + 7%)}
.funnel-band-copy>span{font-size:10px;letter-spacing:.1em;display:block;color:#ffcad0;margin-bottom:7px}.funnel-band-copy>strong{display:block;font-size:19px;font-weight:800;line-height:1.15}
.funnel-band-copy>p{font-size:12px!important;line-height:1.4!important;color:#ffe5e8!important;font-weight:400!important;margin-top:8px!important}
.funnel-footnote{font-size:10px!important;line-height:1.6!important;color:#a5b2c6!important;font-weight:400!important;text-align:center;margin-top:25px!important}
.case-result-chart{margin:38px 0;padding:30px;background:#f5f4f1;border-radius:22px}.case-result-chart h3{font-size:25px;line-height:1.15}
.case-result-chart svg{display:block;width:100%;height:auto;margin-top:42px;overflow:visible}.chart-value{font-family:inherit;font-weight:800;font-size:25px;fill:#0a1428}.chart-label{font-family:inherit;font-size:15px;fill:#657080}
.result-chart-bar{transform-box:fill-box;transform-origin:bottom;transform:scaleY(.03);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.visual-ready .result-chart-bar{transform:scaleY(1)}
.state-bridge{display:grid;grid-template-columns:1fr 30px 1fr;gap:16px;align-items:center;margin-top:35px}.state-bridge>div>span{font-size:11px;color:#697588}.state-bridge strong{display:block;font-size:clamp(23px,3vw,35px);line-height:1.08;letter-spacing:-.045em;margin-top:12px;color:#0a1428}.state-bridge>div:last-child strong{color:#b42138}.state-bridge p{font-size:12px!important;font-weight:400!important;margin-top:12px!important}.bridge-arrow{font-size:30px;color:#d91e2a}
.brand-transition{position:relative;height:125svh;min-height:700px;background:#f6f5f2;--turn:0;overflow:clip}
.brand-transition-sticky{position:sticky;top:10svh;height:80svh;min-height:540px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;isolation:isolate;color:color-mix(in srgb,#fff calc((1 - var(--turn)) * 100%),#0a1428)}
.brand-transition-sticky::before{content:'';position:absolute;inset:-10svh 0;z-index:-1;background:#0a1428;clip-path:inset(0 0 calc(var(--turn) * 100%) 0);box-shadow:0 20px 80px #0002}
.brand-transition-sticky>p{color:inherit;font-size:14px;font-style:italic;font-synthesis:style;font-weight:300}
.brand-transition-sticky h2{font-size:clamp(45px,6vw,80px);line-height:.95;margin-top:15px}.brand-transition-sticky h2 em{color:#d91e2a}
.crest-turntable{position:relative;width:240px;height:270px;max-width:65vw;margin:28px 0 0}.crest-turntable>img{width:120px;height:170px;object-fit:contain;margin:50px auto}.crest-turntable canvas{position:absolute;inset:0;width:100%;height:100%}.crest-turntable.is-ready>img{visibility:hidden}
@media(max-width:700px){
 .case-visual-lab{padding:65px 22px}.case-comparison{height:340px;border-radius:18px}.comparison-state{right:6%;width:36%}.comparison-before .comparison-state{left:6%}.comparison-state>span{font-size:10px;margin-bottom:16px}.comparison-state strong{font-size:27px;overflow-wrap:anywhere}.comparison-state p{font-size:12px}.comparison-seam>span{width:36px;height:36px;font-size:18px}
 .case-funnel{padding:26px 18px;margin:32px 0}.case-funnel-band{min-height:132px;justify-content:flex-start;text-align:left}.funnel-shape{clip-path:none;border-radius:16px}.funnel-shape i{inset:auto auto 0 0;width:calc(100% - var(--step) * 12%);height:9px;border-radius:9px}.funnel-band-copy{padding:18px}.funnel-band-copy>strong{font-size:18px}.funnel-band-copy>p{color:#c1ccdd!important}
 .case-result-chart{padding:24px 18px}.case-result-chart h3{font-size:22px}.case-result-chart svg{margin-top:28px}.chart-value{font-size:28px}.chart-label{font-size:19px}.state-bridge{grid-template-columns:1fr;gap:12px}.bridge-arrow{transform:rotate(90deg);width:30px}.state-bridge strong{font-size:29px}
 .brand-transition{height:105svh;min-height:630px}.brand-transition-sticky{top:8svh;height:75svh;min-height:520px}.crest-turntable{width:210px;height:230px}.brand-transition-sticky h2{font-size:52px}
}
@media(prefers-reduced-motion:reduce){.funnel-shape i,.result-chart-bar{transform:none;transition:none}.brand-transition{height:auto;min-height:520px}.brand-transition-sticky{position:relative;top:0;min-height:520px}.brand-transition-sticky::before{clip-path:none}}
.comparison-after{background-size:auto,32px 32px,32px 32px;background-repeat:no-repeat,repeat,repeat}
.case-visual-lab h2 em{background-image:linear-gradient(120deg,#11151c 0%,#24202a 58%,#9d263c 90%,#cf263c);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}

/* Controls live on the comparison, while native range keeps keyboard/touch support. */
.comparison-control{position:absolute;inset:0;margin:0;z-index:5;cursor:ew-resize}
.comparison-control input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.comparison-control:focus-within{outline:3px solid #fff;outline-offset:-5px;border-radius:inherit}
.comparison-seam{z-index:4;box-shadow:0 0 20px #0005}
.comparison-seam>span{width:30px;height:64px;border-radius:12px;background:#ffffffed;box-shadow:0 6px 22px #0005;display:flex;gap:4px;align-items:center;justify-content:center}
.comparison-seam i{width:2px;height:22px;border-radius:2px;background:#647080}
.comparison-hint,.comparison-image-note{max-width:1180px;margin:16px auto 0;font-size:12px!important;line-height:1.5!important;color:#657080!important}
.comparison-image-note{font-size:10px!important;margin-top:8px}
.comparison-plane:before{content:'';position:absolute;inset:0;background-image:var(--comparison-image);background-size:cover;background-position:center 48%;z-index:-1}
.comparison-plane{isolation:isolate;background:none}
.comparison-before:before{filter:grayscale(1) brightness(.45)}
.comparison-after:before{filter:saturate(1.1) brightness(.75)}
.comparison-plane:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071226c9,#07122699)}
.comparison-after:after{background:linear-gradient(100deg,#071226a8,#861e3370)}
.brand-transition{background:#0a1428;height:100svh;min-height:660px}
.brand-transition-sticky{color:#fff;top:8svh;height:84svh;min-height:540px}
.brand-transition-sticky::before{clip-path:none;box-shadow:none;background:radial-gradient(ellipse at 50% 42%,#26365080,transparent 60%),#0a1428}
.brand-transition-sticky>p,.brand-transition-sticky h2{color:#fff!important;-webkit-text-fill-color:#fff!important}
.brand-transition-sticky h2 em{background:none!important;color:#ed4558!important;-webkit-text-fill-color:#ed4558!important}
.crest-turntable{contain:layout paint}
@media(max-width:700px){.brand-transition{height:90svh;min-height:610px}.brand-transition-sticky{height:78svh;min-height:530px}.comparison-seam>span{width:28px;height:56px}.comparison-state{text-shadow:0 2px 12px #0008}}
@media(prefers-reduced-motion:reduce){.brand-transition{height:auto}.brand-transition-sticky{position:relative;top:0}}

.comparison-control .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
