.drive-story{height:800vh;height:800svh}
.performance-ui{position:absolute;inset:0;z-index:3;pointer-events:none;color:#e8edf2;overflow:hidden}.performance-ui[hidden]{display:none}
.is-performance .stage-topline,.is-performance .concept-note,.is-performance .scroll-cue,.is-performance .scroll-cue>span:last-child{color:#bdc7d1}.is-performance .stage-grid{opacity:.35}.is-performance .brand-tab,.is-performance .brand-side{display:none}.is-performance .story-steps button{color:#c0cbd6}.is-performance .story-steps button.selected{background:#d8e0e8;color:#23303d}
.sim-heading{position:absolute;left:7%;top:16%}.sim-heading p{font:10px Consolas,monospace;letter-spacing:2px;margin:0 0 12px;color:#b6c4d1}.sim-heading h2{font-size:clamp(29px,3vw,45px);margin:0 0 10px;letter-spacing:1px}.sim-heading>span{font-size:10px;color:#bdc8d3}
.speed-dial{position:absolute;left:8%;top:35%;width:20%;aspect-ratio:1;border:1px solid #d5dfe977;border-radius:50%;outline:5px double #a8b8c444;outline-offset:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#26364322}.speed-dial>p{font-size:9px;letter-spacing:1.4px}.speed-dial>div{display:flex;align-items:baseline;gap:6px}.sim-speed{font:italic 600 clamp(44px,5vw,76px) Arial;color:#f4f7fa;font-variant-numeric:tabular-nums}.speed-dial span{font-size:11px}.speed-dial small{font:8px Consolas,monospace;letter-spacing:2px;color:#bac8d5}
.rotor-target{position:absolute;left:50%;top:50%;width:32%;aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid #c1ccd53b;border-radius:50%;background:linear-gradient(90deg,transparent 49.8%,#bdc9d326 50%,transparent 50.2%),linear-gradient(transparent 49.8%,#bdc9d326 50%,transparent 50.2%)}.rotor-target:before,.rotor-target:after{content:'';position:absolute;inset:7%;border:1px dashed #b6c7d23d;border-radius:50%}.rotor-target:after{inset:-6%;border-style:solid}
.sim-telemetry{position:absolute;right:5%;top:31%;width:25%}.sim-telemetry>p{font-size:9px;letter-spacing:1px;text-align:center}.sim-radar{display:block;width:100%;height:auto}
.temperature{position:absolute;right:8%;top:66%;width:20%;border:1px solid #9daeba77;padding:15px 20px;background:#28344255}.temperature>p{font-size:8px;letter-spacing:1px;margin:0 0 5px}.sim-temp{font:italic 500 clamp(35px,4vw,60px) Arial;color:#ff7c85;font-variant-numeric:tabular-nums}.temperature>span{font-size:18px;color:#ffabb1}.heat-track{height:3px;background:#b0bdc32b;margin-top:8px}.heat-fill{height:100%;background:#e66473}
.sim-control{position:absolute;left:7%;width:27%;top:73%;pointer-events:auto}.control-label{display:flex;justify-content:space-between;gap:10px;font:9px Consolas,monospace;letter-spacing:.7px}.lever-value{white-space:nowrap;color:#d2dce5}#speed-lever{appearance:none;-webkit-appearance:none;width:100%;height:28px;margin:20px 0 2px;background:repeating-linear-gradient(90deg,#adbbc8 0 1px,transparent 1px 10px) center/100% 10px no-repeat;cursor:ew-resize;touch-action:pan-y}#speed-lever::-webkit-slider-runnable-track{height:4px;background:#a1aeb955}#speed-lever::-webkit-slider-thumb{appearance:none;width:22px;height:34px;border:2px solid #e0e8ef;border-radius:3px;background:linear-gradient(90deg,#3a4653,#9baab7,#364350);margin-top:-15px;box-shadow:0 4px 12px #0005}#speed-lever::-moz-range-thumb{width:20px;height:32px;background:#92a3b3;border:2px solid #e0e8ef}#speed-lever:focus-visible{outline:2px solid #edf4fa;outline-offset:6px}.speed-presets{display:flex;justify-content:space-between}.speed-presets button{background:none;border:0;color:#b8c7d5;padding:6px 10px;cursor:pointer;font:14px Consolas,monospace}.speed-presets button[aria-pressed=true]{background:#c4ced7;color:#263340}.sim-control>p{font-size:10px;color:#bac8d5;margin-top:7px}
.sim-load-card{position:absolute;left:40%;top:76%;font-size:10px;letter-spacing:1px}.sim-load-card strong{display:block;font:30px Consolas,monospace;margin:7px 0}.sim-load-card small{font-size:11px;color:#bdcbd5}.sim-load-card p{font-size:10px;line-height:1.7;color:#b6c4d0;margin:0}
.sim-actions{position:absolute;right:8%;top:84%;display:flex;gap:8px;pointer-events:auto}.sim-actions button{background:#344352;border:1px solid #a3b3c377;color:#dce6ee;font-size:10px;padding:9px 12px;cursor:pointer}.sim-actions button:hover{background:#596d7f}
@media(max-width:640px){.drive-story{height:640svh}.sim-heading{left:7%;top:14%}.sim-heading p{font-size:8px;margin-bottom:7px}.sim-heading h2{font-size:25px}.sim-heading>span{font-size:8px}.speed-dial{left:8%;top:27%;width:25%;outline-offset:3px;outline-width:3px}.speed-dial>p{font-size:6px;letter-spacing:0;margin:0}.sim-speed{font-size:33px}.speed-dial span{font-size:7px}.speed-dial small{font-size:5px;letter-spacing:1px}.rotor-target{top:44%;width:57%}.sim-telemetry{left:5%;right:auto;top:61%;width:42%}.sim-telemetry>p{font-size:6px}.temperature{right:7%;top:28%;width:27%;padding:8px}.temperature>p{font-size:6px;letter-spacing:0}.sim-temp{font-size:29px}.temperature>span{font-size:12px}.sim-control{left:auto;right:7%;width:43%;top:66%}.control-label{font-size:7px;flex-wrap:wrap;gap:6px}.speed-presets button{font-size:11px;padding:5px 8px}.sim-control>p{font-size:8px}.sim-load-card{left:8%;top:82%;font-size:8px}.sim-load-card strong{font-size:20px;margin:3px 0}.sim-load-card p{display:none}.sim-actions{right:7%;top:84%}.sim-actions button{font-size:8px;padding:8px}.is-performance .scroll-cue{display:none}.is-performance .stage-footer{justify-content:center}.stage-footer .story-steps{gap:2px}.stage-footer .story-steps button{padding:7px}.stage-footer .story-steps i{width:3px}}
@media(prefers-reduced-motion:reduce){.drive-story{height:100svh}}

@media(max-width:640px){.speed-dial,.temperature{top:24.5%}.rotor-target{top:48%;width:50%}}

.performance-ui .rotor-target{display:none}

/* Direct braking feedback replaces the radar. */
.sim-telemetry{right:8%;width:20%;top:32%}.sim-telemetry>p{text-align:left}.response-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #b5c3cd44;padding:12px 0;font-size:11px}.response-row strong{font:30px Consolas,monospace}.response-row small{font-size:12px;color:#b9c8d3}.clamp-demo{height:48px;position:relative;margin-top:14px}.clamp-demo i{position:absolute;top:4px;height:40px;border:1px solid #dce5ea}.demo-disc{left:calc(50% - 3px);width:6px;background:#c8d0d5}.pad-left,.pad-right{width:13px;background:#be3547}.pad-left{right:calc(50% + 5px);transform:translateX(calc(-14px + var(--brake-pressure,0)*14px))}.pad-right{left:calc(50% + 5px);transform:translateX(calc(14px - var(--brake-pressure,0)*14px))}.sim-load-card{left:40%;top:77%;width:24%;pointer-events:auto}.sim-brake{width:100%;padding:17px 18px;background:#d2dae0;color:#26323d;border:1px solid #e3e9ed;font-size:16px;letter-spacing:2px;cursor:pointer;touch-action:none;user-select:none}.sim-brake span{float:right;font:16px Consolas,monospace}.sim-brake[aria-pressed=true]{background:#b9364a;color:white;box-shadow:0 0 28px #e4526355}.sim-brake:focus-visible{outline:2px solid white;outline-offset:4px}.sim-load-card p{margin-top:7px;letter-spacing:0}.sim-state{color:#f0f4f7!important}.temperature{top:63%}
@media(max-width:640px){.sim-telemetry{left:7%;top:60%;width:38%}.sim-telemetry>p{font-size:7px}.response-row{padding:5px 0;font-size:8px}.response-row strong{font-size:19px}.clamp-demo{height:24px;margin-top:6px}.clamp-demo i{height:20px}.sim-load-card{left:7%;top:79%;width:53%}.sim-brake{font-size:12px;padding:10px}.sim-brake span{font-size:12px}.sim-load-card p{display:block;font-size:7px;margin-top:4px}.temperature{top:24.5%}}

/* Live telemetry and technical line drawing. */
.sim-telemetry{top:30%;width:23%;right:5%}.response-row{padding:7px 0}.response-row strong{font-size:25px}.brake-chart{margin-top:14px}.chart-legend{display:flex;justify-content:space-between;gap:4px;font:8px Consolas,monospace}.chart-legend span:nth-child(1){color:#edf2f6}.chart-legend span:nth-child(2){color:#e76a7c}.chart-legend span:nth-child(3){color:#dfb079}.brake-chart svg{width:100%;display:block;overflow:visible;margin-top:8px}.brake-chart path{fill:none;stroke-width:1.6;vector-effect:non-scaling-stroke}.brake-chart .chart-grid{stroke:#b8c6d222;stroke-width:1}.trace-speed{stroke:#edf2f6}.trace-force{stroke:#e76a7c}.trace-temp{stroke:#dfb079}.chart-axis{display:flex;justify-content:space-between;font:7px Consolas,monospace;color:#b5c1ca}.clamp-demo{height:56px;margin-top:12px}.clamp-demo svg{display:block;width:100%;height:100%;fill:none;stroke:#dbe4eb;stroke-width:1;overflow:visible}.clamp-guides{stroke:#b6c5cf55;stroke-dasharray:3 4}.wire-pad{stroke:#ec8290}.wire-left{transform:translateX(calc(-17px + var(--brake-pressure,0)*17px))}.wire-right{transform:translateX(calc(17px - var(--brake-pressure,0)*17px))}.clamp-arrows{stroke:#dce5eb88}.sim-telemetry .clamp-caption{font-size:8px;text-align:center;margin:0}.temperature{top:69%;padding:10px 16px}.sim-temp{font-size:42px}
@media(max-width:640px){.sim-telemetry{left:7%;right:auto;top:59%;width:86%;display:grid;grid-template-columns:42% 54%;column-gap:4%}.sim-telemetry>p:first-child{grid-column:1/-1;margin:0 0 4px}.response-row{grid-column:1;padding:3px 0;font-size:8px}.response-row strong{font-size:17px}.brake-chart{grid-column:2;grid-row:2/5;margin-top:4px}.chart-legend{flex-wrap:wrap;justify-content:flex-start;font-size:6px;gap:3px 6px}.chart-axis{font-size:5px}.brake-chart svg{margin-top:5px}.clamp-demo{grid-column:1;height:29px;margin-top:4px}.sim-telemetry .clamp-caption{grid-column:1;font-size:6px}.sim-control{left:7%;right:auto;top:78%;width:40%}.sim-control #speed-lever{margin-top:10px}.sim-control>p{font-size:7px}.sim-load-card{left:51%;top:79%;width:42%}.sim-load-card p{font-size:6px}.sim-brake{font-size:10px;padding:10px 6px}.sim-actions{top:87%}.temperature{top:24.5%;padding:8px}.sim-temp{font-size:29px}}

.stage-topline,.concept-note,.scroll-cue,.scroll-cue>span:last-child{transition:color .5s ease}.stage-grid{transition:opacity .5s ease}

.clamp-demo.supplier-pad{height:83px;margin-top:6px}.supplier-left{transform:translateX(calc(-20px + var(--brake-pressure,0)*20px))}.supplier-right{transform:translateX(calc(20px - var(--brake-pressure,0)*20px))}.pad-backing{stroke:#c6d5df88}.supplier-pad .wire-disc{stroke:#e5818e}.supplier-pad image{opacity:.95}
@media(max-width:640px){.clamp-demo.supplier-pad{height:42px;margin-top:3px}.sim-telemetry .clamp-caption{font-size:5px}}

.supplier-left{transform:translateX(calc(var(--brake-pressure,0)*20px))}.supplier-right{transform:translateX(calc(var(--brake-pressure,0)*-20px))}
