.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.process{--accent:var(--brand-primary);--accent-rgb:var(--brand-primary-rgb);position:relative;height:480svh;background:#212632;color:#FFFFFF;border-top:1px solid rgba(255,255,255,0.12)}
.process-sticky{position:sticky;top:0;height:100svh;min-height:560px;overflow:hidden;padding:34px clamp(24px,4.7vw,86px) 27px;display:flex;flex-direction:column;background:#212632}
.process-topline,.process-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;font-weight:700;letter-spacing:.19em;color:rgba(255,255,255,0.72)}
.process-topline{border-bottom:1px solid rgba(255,255,255,0.12);padding-bottom:25px}
.process-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(320px,.7fr) minmax(480px,1.3fr);align-items:center}
.process-copy{position:relative;z-index:2;align-self:center;min-height:315px}
.process-kicker{font-size:11px;letter-spacing:.24em;color:var(--accent);font-weight:700}
.process-stages{position:relative;height:275px;margin-top:42px}
.process-stage{position:absolute;inset:0;opacity:0;pointer-events:none;will-change:opacity,transform}
.process-stage:first-child{opacity:1}
.process-number{display:block;color:rgba(255,255,255,0.72);font-size:11px;letter-spacing:.22em;font-weight:700;margin-bottom:24px}
.process-stage h3{font-size:clamp(54px,6.1vw,104px);font-weight:400;line-height:1;letter-spacing:-.065em;margin:0;color:#FFFFFF}
.process-stage p{font-size:clamp(16px,1.2vw,19px);line-height:1.55;color:rgba(255,255,255,0.72);max-width:360px;margin:28px 0 0}
.process-visual{position:relative;width:100%;height:min(76vh,750px);min-height:430px;margin-left:-3vw;background:#212632}
.process-visual video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
/* Local field sits behind the transparent WebM; it never receives pointer events. */
.process-visual #process-sensing-field{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:0;pointer-events:none}
.process-visual video{z-index:1}
.process-footer{border-top:1px solid rgba(255,255,255,0.12);padding-top:25px}
.process-progress{display:block;flex:1;max-width:260px;height:1px;background:rgba(255,255,255,.18)}
.process-progress span{display:block;height:1px;width:0;background:var(--accent)}
.process-footer span:last-child{min-width:50px;text-align:right}
@media(max-width:900px){.process-layout{grid-template-columns:minmax(270px,.8fr) minmax(360px,1.2fr)}.process-visual{margin-left:-5vw}.process-stage h3{font-size:clamp(52px,6vw,76px)}}
@media(max-width:760px){.process{height:420svh}.process-sticky{min-height:500px;padding:23px 21px 24px}.process-topline{padding-bottom:20px;font-size:9px}.process-topline span:last-child{display:none}.process-layout{display:flex;flex-direction:column-reverse;justify-content:center;align-items:stretch}.process-visual{height:42svh;min-height:250px;margin:0 -21px;width:calc(100% + 42px)}.process-copy{align-self:stretch;min-height:190px;margin-top:-20px}.process-kicker{font-size:9px}.process-stages{height:185px;margin-top:22px}.process-number{margin-bottom:14px;font-size:10px}.process-stage h3{font-size:clamp(48px,11vw,76px)}.process-stage p{font-size:16px;margin-top:16px;max-width:330px}.process-footer{padding-top:20px;font-size:8px}.process-progress{max-width:120px}}
@media(max-height:620px) and (min-width:761px){.process-copy{min-height:260px}.process-stages{margin-top:22px}.process-visual{min-height:360px}}
@media(prefers-reduced-motion:reduce){.process-stage{will-change:auto;transform:none!important}}
