/* The hero stays blank until its complete first frame is ready. */
.product-stage:not(.loaded) #glasses{visibility:hidden;opacity:0}.product-stage.loaded #glasses{visibility:visible}.product-stage:not(.loaded) .rotation-hint{visibility:hidden}.model-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:11px;color:var(--muted);font-size:11px;z-index:3}.model-loading i{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:model-pulse 1.6s ease-in-out infinite}.product-stage.loaded .model-loading{display:none}.model-error .model-loading i{animation:none;opacity:.4}.product-controls button:disabled{cursor:wait;opacity:.45}@keyframes model-pulse{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:.8;transform:scale(1)}}
.navigation-section{padding-top:70px}.navigation-panel{position:relative;isolation:isolate;display:grid;grid-template-columns:1.25fr 1fr;gap:60px 70px;overflow:hidden;border:1px solid var(--line);border-radius:32px;padding:65px 55px 35px;background:var(--card)}.navigation-map{position:absolute;inset:0;z-index:-2;width:100%;height:100%;opacity:.54}.navigation-panel:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--card) 2%,color-mix(in srgb,var(--card) 96%,transparent) 35%,color-mix(in srgb,var(--card) 43%,transparent) 80%);pointer-events:none}.map-blocks{fill:color-mix(in srgb,var(--accent) 20%,var(--card));stroke:var(--line);stroke-width:1}.map-streets{stroke:var(--paper);stroke-width:28}.map-street-centres{stroke:var(--line);stroke-width:1;stroke-dasharray:5 10}.map-courtyards{fill:color-mix(in srgb,var(--accent) 40%,var(--card))}.map-route-halo{fill:none;stroke:var(--card);stroke-width:17}.map-route{fill:none;stroke:var(--accent);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.map-location-halo{fill:var(--accent);opacity:.17}.map-location{fill:var(--accent);stroke:var(--card);stroke-width:4}.map-destination path{fill:var(--accent)}.map-destination circle{fill:var(--card)}.map-danger-marker{opacity:0}.map-danger-marker circle{fill:var(--accent);stroke:var(--card);stroke-width:5}.map-danger-marker path{fill:none;stroke:var(--card);stroke-width:3;stroke-linecap:round}[data-navigation-state=danger] .map-danger-marker{opacity:1}[data-navigation-state=arrival] .map-destination{filter:drop-shadow(0 0 10px var(--accent))}.navigation-copy h2{font-size:clamp(34px,3.6vw,51px);line-height:1.14;margin-top:26px}.navigation-copy .eyebrow{font-size:8px;letter-spacing:1.4px;color:var(--muted)}.navigation-intro{font-size:14px;line-height:1.9;color:var(--muted);margin:25px 0 0;max-width:440px}.navigation-providers{margin-top:29px}.navigation-providers>span{font-size:10px;color:var(--muted);line-height:1.8}.navigation-providers>p{font-size:12px;margin:9px 0 0;line-height:1.8}.navigation-providers i{font-style:normal;color:var(--muted);margin:0 8px}.navigation-priority{display:flex;align-items:start;gap:13px;margin-top:33px;max-width:445px}.navigation-priority>svg{width:22px;height:22px;flex-shrink:0;stroke:var(--accent);fill:none;stroke-width:1.3}.navigation-priority strong{font-size:13px;font-weight:600}.navigation-priority p{font-size:11px;line-height:1.9;color:var(--muted);margin:9px 0 0}.navigation-preview{align-self:center;min-width:0;padding-top:60px}.navigation-voice-card{background:color-mix(in srgb,var(--card) 93%,transparent);border:1px solid var(--line);border-radius:23px;padding:26px;box-shadow:0 14px 65px color-mix(in srgb,var(--deep) 6%,transparent);backdrop-filter:blur(15px)}.navigation-card-label{display:flex;gap:12px;align-items:center;font-size:7px;letter-spacing:1px;color:var(--muted);line-height:1.7}.navigation-voice-icon{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--soft);color:var(--accent);font-size:24px;line-height:1;letter-spacing:0}.navigation-voice-card>p{font-size:clamp(23px,2.5vw,34px);line-height:1.25;letter-spacing:-.045em;margin:28px 0 18px;min-height:128px}.navigation-voice-card>span{display:block;font-size:11px;color:var(--muted);line-height:1.8;min-height:60px}.navigation-wave{display:flex;align-items:center;justify-content:center;gap:4px;height:37px;margin-top:21px;border-top:1px solid var(--line);padding-top:25px}.navigation-wave i{height:7px;width:2px;border-radius:2px;background:var(--accent)}.navigation-wave i:nth-child(2n){height:15px}.navigation-wave i:nth-child(3n){height:22px}.navigation-preview-controls{display:flex;gap:6px;justify-content:center;margin-top:18px}.navigation-preview-controls button{border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--muted);font-size:10px;padding:10px 13px}.navigation-preview-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.navigation-commands{grid-column:1/-1;position:relative;border-top:1px solid var(--line);padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:25px}.navigation-commands>.eyebrow{font-size:8px;color:var(--muted);letter-spacing:1px;flex-shrink:0}.navigation-commands>div{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.navigation-commands>div>span{font-size:10px;padding:11px 13px;border:1px solid var(--line);border-radius:23px;background:color-mix(in srgb,var(--card) 90%,transparent);white-space:nowrap}
@media(max-width:1050px){.navigation-panel{padding:45px 35px 30px;gap:40px}.navigation-copy h2{font-size:38px}.navigation-voice-card{padding:22px}.navigation-voice-card>p{font-size:27px}.navigation-commands{align-items:start;flex-direction:column;gap:18px}.navigation-commands>div{justify-content:start}}
@media(max-width:700px){.navigation-section{padding-top:35px}.navigation-panel{grid-template-columns:1fr;padding:32px 23px 27px;gap:31px;border-radius:23px}.navigation-copy h2{font-size:34px;line-height:1.16;margin-top:24px}.navigation-copy .eyebrow{font-size:7px}.navigation-intro{font-size:12px;line-height:1.9;margin-top:21px}.navigation-providers{margin-top:22px}.navigation-providers>span{font-size:9px}.navigation-providers>p{font-size:11px}.navigation-providers i{margin:0 4px}.navigation-priority{margin-top:25px;gap:10px}.navigation-priority strong{font-size:12px}.navigation-priority p{font-size:10px}.navigation-preview{padding-top:0}.navigation-voice-card{padding:23px}.navigation-voice-card>p{font-size:29px;min-height:105px}.navigation-voice-card>span{font-size:10px;min-height:50px}.navigation-preview-controls button{font-size:10px;padding:9px 12px}.navigation-commands{padding-top:22px;gap:16px}.navigation-commands>div{gap:8px}.navigation-commands>div>span{font-size:9px;padding:10px 11px}.navigation-panel:after{background:linear-gradient(180deg,color-mix(in srgb,var(--card) 98%,transparent) 10%,color-mix(in srgb,var(--card) 95%,transparent) 48%,color-mix(in srgb,var(--card) 40%,transparent) 78%,color-mix(in srgb,var(--card) 92%,transparent) 100%)}.navigation-map{opacity:.48}}
@media(prefers-reduced-motion:reduce){.model-loading i{animation:none}}
/* Computer-voice examples are explicit, replayable and interrupt one another. */
.navigation-audio{width:100%;display:flex;align-items:center;gap:13px;margin-top:23px;padding:20px 0 0;min-height:49px;border:0;border-top:1px solid var(--line);background:none;color:var(--accent);cursor:pointer;text-align:left}.navigation-audio:focus-visible{outline:2px solid var(--focus);outline-offset:7px;border-radius:2px}.navigation-audio:hover{color:var(--ink)}.navigation-audio>svg{height:17px;width:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}.navigation-audio .navigation-wave{flex:1;justify-content:center;height:25px;margin:0;padding:0;border:0}.navigation-audio .navigation-wave i{background:currentColor}.navigation-audio>span:not(.navigation-wave){font-size:10px;line-height:1.5;white-space:nowrap}#navigation-audio-locale{font-size:8px;letter-spacing:.6px;opacity:.65}.navigation-audio .audio-stop-icon{display:none}.navigation-voice-card[data-audio-state=playing] .audio-play-icon,.navigation-voice-card[data-audio-state=loading] .audio-play-icon{display:none}.navigation-voice-card[data-audio-state=playing] .audio-stop-icon,.navigation-voice-card[data-audio-state=loading] .audio-stop-icon{display:block}.navigation-voice-card[data-audio-state=playing] .navigation-wave i{animation:navigation-speech .8s ease-in-out infinite alternate}.navigation-voice-card[data-audio-state=playing] .navigation-wave i:nth-child(2n){animation-delay:-.3s}.navigation-voice-card[data-audio-state=playing] .navigation-wave i:nth-child(3n){animation-delay:-.6s}.navigation-voice-card>.navigation-audio-status{font-size:10px;line-height:1.7;letter-spacing:0;min-height:0;margin:14px 0 0;color:var(--muted)}@keyframes navigation-speech{to{transform:scaleY(.35);opacity:.5}}@media(prefers-reduced-motion:reduce){.navigation-voice-card[data-audio-state=playing] .navigation-wave i{animation:none}}
