.night-drive{--drive-color:#c9afff;color:#f5f2ff;color-scheme:dark;isolation:isolate;background:#04050e;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.night-drive::backdrop{background:#04050e}.night-canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.night-vignette{pointer-events:none;background:linear-gradient(#04050e9c,#0000 35% 65%,#04050ee8),radial-gradient(at 50% 60%,#0000 30%,#04050e65 100%);position:absolute;inset:0}.night-top{z-index:2;justify-content:space-between;align-items:center;gap:20px;padding:30px 40px;display:flex;position:absolute;inset:0 0 auto}.night-top>span{font:600 10px/1.5 var(--sans);letter-spacing:.2em}.night-top b{color:#bdb8d1;margin-left:12px;font-weight:400}.night-drive button{font:500 11px/1.4 var(--sans);color:#f5f2ff;cursor:pointer;background:#080b1cdc;border:1px solid #ffffff40;min-height:44px;transition:background .2s,border-color .2s}.night-drive button:hover{border-color:var(--drive-color);background:#18132f}.night-drive button:focus-visible{outline:2px solid var(--drive-color);outline-offset:5px}.night-top button{border-radius:30px;padding:10px 17px}.night-top button span{margin-left:25px;font-size:20px;line-height:1}.night-intro{text-align:center;pointer-events:none;transition:opacity .7s,transform .7s;position:absolute;top:17%;left:0;right:0}.night-eyebrow{font:500 9px/1.5 var(--sans);letter-spacing:.32em;color:var(--drive-color);margin:0 0 20px}.night-drive .night-intro h2{font:500 clamp(60px, 8vw, 122px)/.95 var(--sans);letter-spacing:-.07em;color:#f5f2ff;text-shadow:0 0 45px #000;margin:0}.night-drive .night-intro h2 em{font-family:var(--type-serif);font-size:var(--type-accent-ratio);font-style:italic;font-weight:400;line-height:inherit;color:var(--drive-color);letter-spacing:-.045em;text-shadow:0 0 45px color-mix(in srgb, var(--drive-color) 35%, transparent)}.night-intro>p:last-child{font:400 12px/1.6 var(--sans);color:#d1cce0;letter-spacing:.02em;margin-top:26px}.night-intro>p{margin-left:auto;margin-right:auto;padding-inline:20px}.night-drive .night-intro h2 em{margin-left:.08em}.night-hud{z-index:2;justify-content:space-between;align-items:end;gap:35px;padding:30px 40px 35px;display:flex;position:absolute;inset:auto 0 0}.night-readout>span{font:500 8px/1.5 var(--sans);letter-spacing:.22em;color:#bdb8d1;display:block}.night-readout strong{letter-spacing:.03em;font-variant-numeric:tabular-nums;color:var(--drive-color);margin:8px 0;font:400 43px/1.2 monospace;display:block}.night-readout small{font:400 7px/1.5 var(--sans);letter-spacing:.14em;color:#bdb8d1}.night-drive .night-boost{border:1px solid var(--drive-color);color:var(--drive-color);letter-spacing:.14em;box-shadow:0 0 35px color-mix(in srgb, var(--drive-color) 10%, transparent);user-select:none;touch-action:none;background:#090914e6;border-radius:4px;padding:19px 28px;font-size:10px}.night-boost>span{vertical-align:middle;margin-right:15px;font-size:20px}.night-controls{gap:8px;display:flex}.night-controls>button{border-radius:3px;padding:11px 16px;font-size:10px}.night-drive[data-boost=true] .night-intro{opacity:.22;transform:translateY(-12px)}.night-drive[data-boost=true] .night-boost{background:var(--drive-color);color:#090914;box-shadow:0 0 45px color-mix(in srgb, var(--drive-color) 35%, transparent)}.night-drive button:disabled{cursor:default;opacity:.6}@media (width<=800px){.night-top{padding:22px}.night-top>span{font-size:8px}.night-top b{margin:5px 0 0;display:block}.night-top button{padding:9px 14px;font-size:10px}.night-top button span{margin-left:12px}.night-hud{flex-wrap:wrap;gap:20px;padding:25px}.night-controls{justify-content:center;width:100%}.night-readout strong{font-size:35px}.night-intro{top:19%}.night-drive .night-intro h2{font-size:clamp(54px,10vw,85px)}.night-drive .night-boost{padding:15px 20px;font-size:9px}.night-boost>span{margin-right:8px}.night-intro>p:last-child{font-size:11px}.night-eyebrow{font-size:8px}}@media (width<=400px){.night-hud{gap:18px 10px;padding:20px}.night-drive .night-boost{padding:14px 12px;font-size:8px}.night-readout>span{font-size:7px}.night-readout small{font-size:6px}.night-intro>p:last-child{font-size:10px}.night-drive .night-intro h2{font-size:55px}}@media (prefers-reduced-motion:reduce){.night-drive *{transition:none!important}.night-drive[data-boost=true] .night-intro{opacity:1;transform:none}}
