/* One full-viewport spatial product story, with readable product evidence. */
.story-site .product-tour-section {padding:0;overflow:visible;background:var(--paper);}
.platform-console {position:relative;min-height:760px;overflow:hidden;color:var(--ink);background:var(--paper);isolation:isolate;}
.console-stage {position:absolute;inset:0;z-index:0;}
.console-stage canvas {width:100%;height:100%;display:block;}
.console-header {position:absolute;z-index:3;top:2rem;left:var(--story-space,4rem);right:var(--story-space,4rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;pointer-events:none;}
.console-header .section-index {margin:0;}
.console-stage-name {font:12px/1.4 monospace;letter-spacing:.12em;color:var(--muted);}
.console-overview {position:relative;z-index:2;padding:7.5rem var(--story-space,4rem) 1rem;max-width:800px;}
.story-site .console-overview h2 {font-size:clamp(3.2rem,6vw,7rem);line-height:.95;letter-spacing:-.055em;margin:0 0 1.5rem;font-weight:500;}
.console-overview>p {font-size:1.05rem;line-height:1.6;max-width:28rem;color:var(--muted);}
.console-descriptions {position:relative;z-index:2;padding:2rem var(--story-space,4rem);max-width:650px;}
.console-capability {font:12px/1.5 monospace;letter-spacing:.1em;color:var(--accent-ink,var(--magenta));text-transform:uppercase;}
.story-site .console-copy h3 {font-size:clamp(2.3rem,4vw,4.8rem);line-height:1;letter-spacing:-.045em;font-weight:500;margin:1rem 0 1.3rem;}
.console-copy>p:last-child {font-size:1rem;line-height:1.65;max-width:28rem;color:var(--muted);}
.console-copy[hidden],.console-screen[hidden] {display:none;}
.console-evidence {position:relative;z-index:1;margin:1rem var(--story-space,4rem) 3rem;}
.console-screen {max-width:1100px;margin:auto;}
.console-screen img {display:block;width:100%;height:auto;border:1px solid var(--line);}
.console-footer {position:relative;z-index:4;padding:1.5rem var(--story-space,4rem);background:var(--paper);}
.console-navigation {display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.console-tabs {display:flex;gap:clamp(.25rem,1vw,1rem);}
.console-tab,.console-reset,.console-inspect {border:0;background:none;padding:.75rem .5rem;font:inherit;font-size:14px;color:var(--ink);cursor:pointer;}
.console-tab {position:relative;color:var(--muted);}
.console-tab span {margin-right:.6rem;font:12px monospace;}
.console-tab[aria-selected="true"] {color:var(--ink);}
.console-tab[aria-selected="true"]::after {content:"";position:absolute;height:2px;bottom:0;left:.5rem;right:.5rem;background:linear-gradient(90deg,#ff665f,#f35aa7,#d81b78);}
.console-reset {border:1px solid var(--line);border-radius:50px;padding:.65rem 1.2rem;}
.console-tab:hover,.console-inspect:hover {color:var(--accent-ink,var(--magenta));}
.console-footnote {display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:12px;line-height:1.5;margin-top:.7rem;}
.console-footnote p {margin:.25rem 0;}
.console-progress {height:1px;background:var(--line);margin-top:1rem;}
.console-progress span {display:block;height:2px;width:100%;transform:scaleX(var(--tour-progress,0));transform-origin:left;background:linear-gradient(90deg,#ff665f,#f35aa7,#d81b78);}
/* Rendering is progressive: readable screenshots survive unavailable WebGL. */
.is-spatial .platform-console {height:calc(100svh - 80px);min-height:580px;}
.is-spatial .console-overview {position:absolute;top:13%;left:0;width:51%;padding-top:0;pointer-events:none;}
.is-spatial .console-descriptions {position:absolute;top:24%;left:clamp(1.25rem,3vw,3rem);width:min(26vw,360px);max-width:360px;padding:0;pointer-events:none;}
.is-spatial .console-copy {padding:1rem 1.1rem;border:1px solid var(--line);border-left:3px solid var(--magenta);border-image:var(--brand-spectrum) 1;background:color-mix(in srgb,var(--paper) 94%,transparent);box-shadow:8px 10px 0 color-mix(in srgb,var(--line) 18%,transparent);backdrop-filter:blur(14px);}
.is-spatial .console-copy h3 {font-size:clamp(1.75rem,2.6vw,2.8rem);}
.is-spatial .console-copy>p:last-child {color:var(--ink);}
.is-spatial .console-footer {position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,var(--paper) 35%);padding-top:2.5rem;}
.is-spatial .console-evidence {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.console-track.is-scroll-console {height:510svh;}
.is-scroll-console .platform-console {position:sticky;top:78px;}
.console-dialog {width:min(96vw,1500px);max-height:94svh;padding:1rem;border:1px solid var(--line);background:var(--paper);color:var(--ink);}
.console-dialog::backdrop {background:#100e12d9;backdrop-filter:blur(10px);}
.console-dialog img {display:block;width:100%;height:auto;max-height:78svh;object-fit:contain;}
.console-dialog p {font-size:12px;color:var(--muted);}
.console-dialog-close {display:block;margin:0 0 1rem auto;padding:.6rem 1rem;background:var(--surface);border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;}
@media(max-width:949px) {
 .console-header {top:1.5rem;left:1.5rem;right:1.5rem;}
 .console-stage-name {font-size:11px;}
 .console-overview {padding:6rem 1.5rem 1rem;}
 .is-spatial .console-overview {top:12%;width:72%;padding:0 1.5rem;}
 .story-site .console-overview h2 {font-size:clamp(3.2rem,8vw,5rem);}
 .is-spatial .console-descriptions {top:19%;left:1.5rem;width:min(36vw,290px);padding:0;}
 .story-site .console-copy h3 {font-size:clamp(1.75rem,3.6vw,2.35rem);}
 .console-footer {padding-left:1.5rem;padding-right:1.5rem;}
 .console-tab span {display:none;}
 .console-navigation {gap:.5rem;}
 .console-reset {padding:.65rem .85rem;}
 .console-footnote {font-size:11px;}
}
@media(max-width:600px) {
 .is-spatial .platform-console {height:calc(100svh - 72px);min-height:660px;}
 .is-scroll-console .platform-console {top:70px;}
 .console-track.is-scroll-console {height:450svh;}
 .console-stage-name {display:none;}
 .is-spatial .console-overview {top:10%;width:96%;}
 .story-site .console-overview h2 {font-size:clamp(2.7rem,9vw,3.9rem);}
 .console-overview>p {font-size:.95rem;max-width:23rem;}
 .is-spatial .console-descriptions {top:10%;left:1.5rem;width:calc(100% - 3rem);}
 .story-site .console-copy h3 {font-size:2.25rem;max-width:23rem;}
 .console-copy>p:last-child {font-size:.9rem;line-height:1.5;}
 .console-capability {font-size:11px;margin:0;}
 .console-navigation {flex-wrap:wrap;}
 .console-tabs {order:3;width:100%;justify-content:space-between;}
 .console-tab {font-size:13px;}
 .console-footer {padding:1rem 1.5rem;}
 .console-footnote p:last-child {display:none;}
 .console-progress {margin-top:.5rem;}
}
@media(prefers-reduced-motion:reduce) {
 .console-stage {display:none;}
 .console-reset {display:none;}
}
.is-scroll-console .platform-console {min-height:0;}
