:root{--red:#c8aa60}.header{position:absolute;top:0;left:0;right:0;background:#111214f2;height:86px;border-bottom:1px solid #ffffff14;padding:0 5%;z-index:20}.logo>b{color:#d3b569;font-size:46px;letter-spacing:-5px}.logo>span{font-size:14px;letter-spacing:2px}.logo small{font-size:8px}nav{font-weight:700;gap:32px}nav a{font-size:13px}.nav-cta{border:1px solid #6b6860;padding:12px 17px}.nav-cta span{margin-left:24px}.drive-story{height:290vh;height:290svh;position:relative;background:#969799}.drive-stage{height:100vh;height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden;background:linear-gradient(140deg,#c7c8c9,#a3a4a5 48%,#898b8d);isolation:isolate;color:#151618}.stage-grid{position:absolute;inset:0;background-image:linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px);background-size:100px 100px;opacity:.13;z-index:-1}.stage-topline{position:absolute;left:5%;right:5%;top:115px;display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:2px;color:#45474a;z-index:3}.drive-copy,.brake-copy{position:absolute;left:7%;top:27%;z-index:4;width:43%;will-change:opacity,transform}.drive-copy .eyebrow,.brake-copy .eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:23px}.drive-copy h1{font-family:Arial,sans-serif;font-size:clamp(56px,6.5vw,105px);font-weight:900;letter-spacing:-5px;line-height:.95;margin-bottom:28px;font-style:italic}.drive-copy h1 span{color:#fff}.drive-subtitle{font-size:17px;letter-spacing:2px;font-weight:700;margin:20px 0 32px}.drive-link{display:inline-flex;gap:42px;align-items:center;border-bottom:1px solid #252525;padding:0 0 10px;font-size:14px;font-weight:700}.drive-link:hover{color:#725820}.car-scene{position:absolute;width:1000px;aspect-ratio:1.5;left:43%;top:10%;transform-origin:29% 65%;will-change:transform;z-index:2;pointer-events:none}.race-car{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;will-change:opacity}.brake-focus{position:absolute;width:22%;aspect-ratio:1;left:18%;top:48.5%;opacity:0;will-change:opacity,transform}.brake-focus>img{display:block;width:100%;height:100%;object-fit:contain}.part-tag{position:absolute;top:52%;left:95%;display:flex;align-items:center;gap:6px;font-size:4px;letter-spacing:.8px;white-space:nowrap;border-bottom:1px solid #555;padding:0 0 3px 15px;color:#161616}.part-tag i{width:3px;height:3px;background:#c02a22;border-radius:50%}.brake-copy{opacity:0;pointer-events:none;transform:translateY(20px)}.brake-copy h2{font-size:clamp(44px,4.4vw,70px);line-height:1.25;font-weight:900}.brake-copy p:not(.eyebrow){color:#343638;font-size:16px;line-height:1.9;margin:25px 0}.stage-footer{position:absolute;left:5%;right:5%;bottom:38px;display:flex;align-items:center;justify-content:space-between;z-index:5}.scroll-cue{display:flex;flex-direction:column;gap:9px;font-size:10px;letter-spacing:1.7px}.scroll-cue>span:last-child{font-size:12px;letter-spacing:1px;color:#424446}.story-steps{display:flex;align-items:center;gap:18px}.story-steps button{background:none;border:0;color:#55585b;display:flex;gap:8px;align-items:center;cursor:pointer;padding:8px 2px}.story-steps b{font-size:16px}.story-steps span{font-size:12px}.story-steps button.selected{color:#121314}.story-steps button.selected b{border-bottom:2px solid #8a6b2d;padding-bottom:4px}.story-steps i{width:30px;height:1px;background:#7778}.concept-note{font-size:9px;letter-spacing:1.4px;color:#535557}.story-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0002;z-index:6}.story-progress span{display:block;height:100%;background:#b6974f;transform:scaleX(0);transform-origin:left}.ticker{background:#c3a65e;color:#111}.section .eyebrow{color:#c8aa60}.finish h2 span{color:#c8aa60}.card{border-radius:0}.drive-story a:focus-visible,.drive-story button:focus-visible{outline-color:#574217}.brake-copy.is-active{pointer-events:auto}.drive-copy.is-hidden{pointer-events:none}
@media(min-width:1600px){.car-scene{width:1250px;top:8%}}@media(max-width:1050px){.car-scene{width:850px;left:36%;top:16%}.drive-copy,.brake-copy{left:6%;width:44%}.drive-copy h1{font-size:64px}.concept-note{display:none}.header nav{gap:18px}.header nav a{font-size:12px}}@media(max-width:640px){.header{height:76px}.header nav{top:76px;background:#111214}.header nav a{font-size:14px}.header .nav-cta{padding:10px 0;border:0}.drive-story{height:240svh}.drive-stage{min-height:640px}.stage-topline{top:98px;font-size:8px;letter-spacing:1.2px}.stage-topline>span:last-child{display:none}.drive-copy,.brake-copy{top:22%;left:7%;width:86%}.drive-copy h1{font-size:58px;letter-spacing:-3px;line-height:.97}.drive-copy .eyebrow,.brake-copy .eyebrow{font-size:9px;margin-bottom:16px}.drive-subtitle{font-size:14px;margin:18px 0 20px}.drive-link{font-size:12px;gap:30px}.car-scene{width:650px;left:2%;top:33%}.brake-copy h2{font-size:43px}.brake-copy p:not(.eyebrow){font-size:14px;margin:16px 0}.stage-footer{bottom:25px;align-items:end}.scroll-cue{font-size:8px;letter-spacing:.8px}.scroll-cue>span:last-child{font-size:10px;letter-spacing:0}.story-steps{gap:9px}.story-steps span{display:none}.story-steps i{width:16px}.story-steps b{font-size:14px}.logo>b{font-size:39px}}@media(prefers-reduced-motion:reduce){.drive-story{height:auto}.drive-stage{position:relative;height:100svh}.race-car{opacity:1!important}.brake-focus{display:none}.story-steps{display:none}.drive-copy{opacity:1!important;transform:none!important}.brake-copy{display:none}}
#webgl-stage{position:absolute;inset:0;z-index:2;pointer-events:none}#webgl-stage canvas{width:100%;height:100%;display:block}.webgl-fallback{position:absolute;right:5%;top:26%;width:45%;text-align:center}.webgl-fallback img{width:100%;max-height:50vh;object-fit:contain}.webgl-fallback p{font-size:12px}.drive-stage.no-webgl .drive-copy{opacity:1!important;transform:none!important}.drive-stage.no-webgl .brake-copy,.drive-stage.no-webgl .story-steps{display:none}.drive-story.no-webgl{height:100svh}@media(max-width:640px){.webgl-fallback{width:64%;top:53%;right:10%}.webgl-fallback img{max-height:25vh}}@media(prefers-reduced-motion:reduce){.drive-stage .story-steps{display:flex}.drive-story{height:100svh}.drive-stage .brake-copy{display:block}.drive-stage .drive-copy{opacity:var(--intro-opacity,1)!important}}
/* BC Racing art direction: graphite studio, champagne accents, editorial type. */
.drive-stage{background:radial-gradient(ellipse at 72% 46%,#393c3f 0,#222426 35%,#101112 78%);color:#f1f1ef}.header{background:#101112dd;border-bottom:1px solid #ffffff10}.stage-topline{color:#aaa9a3}.drive-copy h1{font-size:clamp(56px,5.6vw,90px);letter-spacing:-3px}.drive-copy h1 span{color:#cdb475}.drive-copy .eyebrow,.brake-copy .eyebrow{color:#bba575}.drive-subtitle{color:#c8c8c4;font-weight:400;font-size:15px}.drive-link{border-color:#9d8c61;color:#e2d8bf}.drive-link:hover{color:#fff}.brake-copy p:not(.eyebrow){color:#b2b3b1}.scroll-cue,.scroll-cue>span:last-child{color:#a5a6a3}.story-steps button{color:#858681}.story-steps button.selected{color:#ddd1ac}.concept-note{color:#858681}.language-label{font-size:12px;color:#b2b0a8}.stage-grid{opacity:.05}.story-progress{background:#ffffff0d}.stage-footer{bottom:34px}.drive-stage::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#bba57560;z-index:1}@media(max-width:640px){.drive-copy h1{font-size:54px}.header nav{background:#111}.language-label{display:none}}
.header .logo{display:block;line-height:0}.header .logo img{width:225px;height:auto;max-height:57px;filter:brightness(0) invert(1)}@media(max-width:640px){.header .logo img{width:184px;max-height:48px}}
/* Neutral grey studio direction. Product red remains the only accent. */
:root{--red:#575d64;--bg:#b8bcc1;--line:#969ca3;--muted:#4c525a}
body,.drive-story{background:#b8bcc1;color:#20252a}
.header{background:rgba(226,228,231,.94);border-bottom:1px solid #969ba34d}
.header .logo img{filter:brightness(0);opacity:.88}
.header nav a,.language-label{color:#343a42}.header nav a:hover{color:#000}
.drive-stage{background:radial-gradient(ellipse at 68% 35%,#e0e2e5 0%,#c5c9ce 41%,#a4aab1 100%);color:#24292f}
.drive-stage::after{background:#7f868f}
.stage-topline{color:#535b65}.drive-copy h1{font-style:normal;letter-spacing:-3.5px;line-height:1.02;font-weight:800}
.drive-copy h1 span{color:#f8f9fa;text-shadow:0 1px 1px #9299a044}
.drive-copy .eyebrow,.brake-copy .eyebrow{color:#4a535e;letter-spacing:2.2px}
.drive-subtitle,.brake-copy p:not(.eyebrow){color:#434c57}
.drive-link{color:#242c35;border-color:#58616d}.drive-link:hover{color:#000;border-color:#111}
.scroll-cue,.scroll-cue>span:last-child,.concept-note{color:#454e59}
.story-steps button{color:#5e6874}.story-steps button.selected{color:#1c232c}
.story-steps button.selected b{border-color:#303944}
.story-progress{background:#8b929a44}.story-progress span{background:#343e4a}
.story-steps i{background:#67717d66}
.stage-grid{opacity:0}
.menu{color:#242c35;border-color:#959ca5}.menu span{color:#343e4a}
.drive-story a:focus-visible,.drive-story button:focus-visible{outline-color:#303b49}
@media(max-width:640px){.header nav{background:#e1e4e8}.drive-copy h1{font-size:51px;letter-spacing:-2px}.header .logo img{opacity:.9}}
/* Photographic assets share one camera; the product stays attached to the wheel hub. */
.drive-stage{background:linear-gradient(145deg,#b9bdc2 0,#a5a9af 56%,#c2c6cb 100%)}
.photo-viewport{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}
.photo-scene{position:absolute;will-change:transform;transform-origin:22.7% 59.8%}
.photo-car{display:block;width:100%;height:100%;object-fit:fill;will-change:opacity;mask-image:linear-gradient(to bottom,transparent 0,#000 18%,#000 82%,transparent 100%)}
.photo-brake{position:absolute;opacity:0;will-change:opacity;isolation:isolate}
.photo-brake::before{content:'';position:absolute;z-index:-1;inset:-12%;border-radius:50%;background:radial-gradient(ellipse at center,#edf0f338 0,transparent 65%);pointer-events:none}
.photo-brake::after{content:'';position:absolute;z-index:-1;width:70%;height:9%;left:19%;bottom:0;background:radial-gradient(ellipse,#252d3b66 0,#30394922 43%,transparent 72%);transform:rotate(-3deg);filter:blur(7px);pointer-events:none}
.brake-product{display:block;width:100%;height:auto;transform-origin:46.7% 51.1%;transform:perspective(1100px) rotateY(var(--product-turn,0deg)) rotateX(var(--product-pitch,0deg)) rotateZ(var(--product-roll,0deg));filter:contrast(1.045) saturate(.94) drop-shadow(3px 3px 1px #20293565) drop-shadow(12px 18px 14px #20293538);backface-visibility:hidden}
.brake-official-logo{position:absolute;width:29%;height:auto;left:79.1%;top:50.5%;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center;filter:none}
.drive-copy{top:19%;width:46%}.drive-copy h1{font-size:clamp(52px,5.2vw,84px);line-height:1.02}.drive-copy .eyebrow{margin-bottom:18px}
.drive-copy .drive-subtitle{margin:22px 0}.drive-copy h1 span{color:#f7f8fa}.stage-topline{z-index:4}.stage-footer{z-index:5}
@media(max-width:640px){.drive-copy{top:21%;width:86%}.drive-copy h1{font-size:49px}.photo-car{mask-image:linear-gradient(to bottom,transparent 0,#000 23%,#000 82%,transparent 100%)}.brake-copy{top:20%}}
@media(prefers-reduced-motion:reduce){.drive-story{height:100svh}.photo-scene,.photo-car,.photo-brake{will-change:auto}}
/* Live GLB car replaces the photo when WebGL is ready. */
.car-webgl{position:absolute;inset:0;z-index:0;pointer-events:none}
.car-webgl canvas{display:block;width:100%;height:100%}
.has-car-model .photo-scene{visibility:hidden}
.has-car-model{background:radial-gradient(ellipse at 65% 46%,#d6dbe1 0,#b8bec6 52%,#9ba3ad 100%)}

.brake-webgl{position:absolute;inset:0;z-index:1;pointer-events:none;filter:drop-shadow(8px 16px 12px #20293533)}
.brake-webgl canvas{display:block;width:100%;height:100%}
/* Precision industrial direction: neutral metal, fine rules, restrained motion. */
.has-car-model{background:radial-gradient(ellipse at 66% 43%,#e1e4e5 0,#bfc5c9 52%,#9aa3aa 100%)}
.stage-grid{opacity:.3;background-size:25% 100%;background-image:linear-gradient(90deg,#38444e26 1px,transparent 1px)}
.stage-topline,.drive-copy .eyebrow,.brake-copy .eyebrow,.concept-note{font-family:Consolas,monospace;letter-spacing:1.8px}
.drive-copy h1{font-weight:500;letter-spacing:-4px}.drive-copy h1 span{color:#28313a;text-shadow:none}
.drive-copy .drive-subtitle{font-size:13px;letter-spacing:3px}
.motion-toggle{position:absolute;right:5%;bottom:100px;z-index:6;border:1px solid #45515b55;background:#dce1e566;color:#26323d;padding:10px 15px;font-size:11px;letter-spacing:1.5px;cursor:pointer;backdrop-filter:blur(8px)}
.motion-toggle:hover{background:#eef1f4}.motion-toggle[hidden]{display:none}
@media(max-width:640px){.motion-toggle{bottom:86px;font-size:10px;padding:8px 11px}.drive-copy h1{letter-spacing:-2px}}

/* Keep the wheel in front of the product while the two views crossfade. */
.car-webgl{z-index:2}
