:root{--navy:#04111e;--surface:#071b31;--surface-2:#0a2440;--cyan:#59d8dc;--gold:#e5b866;--paper:#edf3f1;--muted:#a9bec0}*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--paper);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}.hero{max-width:1200px;margin:auto;padding:8vh 5vw 6vh;display:grid;grid-template-columns:1fr .86fr;gap:5vw;align-items:center}.eyebrow{color:var(--gold);font-size:.72rem;letter-spacing:.16em;font-weight:700}.hero h1{font-size:clamp(2.5rem,6vw,5.4rem);line-height:1.02;margin:.4rem 0 1.2rem}.hero h1 em{color:var(--cyan);font-style:normal}.lede{color:#c8d7d6;max-width:46ch;font-size:1.12rem}.poster{margin:0;border:1px solid #31545d;background:var(--surface-2);padding:.5rem}.poster img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.poster figcaption{color:var(--muted);font-size:.78rem;padding:.55rem}.workspace{max-width:1440px;margin:auto;padding:2rem 5vw 8rem;display:grid;grid-template-columns:1.5fr 1fr;gap:1rem}.scene,.panel{background:var(--surface);border:1px solid #28515a;border-radius:1rem;box-shadow:0 16px 45px #0004}.scene{padding:1rem}.scene-head{display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem}.badge{color:var(--gold)}.canvas-wrap{position:relative;height:min(66vh,620px);margin-top:.8rem;background:#0a2945;overflow:hidden;border-radius:.65rem}.canvas-wrap img,.canvas-wrap canvas{display:block;width:100%;height:100%;object-fit:contain}.canvas-wrap canvas{position:absolute;inset:0;touch-action:none}.model-card,.scene-note,.load-state{position:absolute;z-index:5;left:.8rem;right:.8rem;padding:.55rem .75rem;background:#04111eee;color:#d9e5e2;font-size:.78rem}.model-card{top:.8rem;display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;border-left:3px solid var(--cyan);transition:transform .2s,box-shadow .2s}.model-card strong{font-size:.9rem}.model-card a{color:var(--cyan);margin-left:auto}.model-card span{color:var(--gold);text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.scene-note{bottom:.8rem}.load-state{top:4.5rem;border-left:3px solid var(--cyan)}.load-state.is-error{border-left-color:#e57767}.model-controls{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding-top:14px}.model-controls button{border:1px solid var(--cyan);background:var(--cyan);color:var(--navy);padding:7px 11px;border-radius:999px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;min-height:34px}.model-controls button:disabled{cursor:not-allowed;opacity:.5}.model-controls #reset3d{background:transparent;color:var(--cyan)}.model-controls p{width:100%;margin:0;color:#aec7cc;font-size:12px}.panel{padding:1.35rem}.panel h2{font-size:1.7rem;line-height:1.1;margin:.3rem 0 1rem}.signal{border-left:3px solid var(--gold);padding:.7rem 1rem;background:var(--surface-2);margin:1rem 0}.narrative-link{color:var(--cyan);text-decoration-thickness:.12em;text-underline-offset:.18em}.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem;margin-top:1.4rem}.topic-grid button{padding:.5rem .65rem;border:1px solid #345b65;background:#06172a;border-radius:.55rem;color:#d7eeee;font:inherit;font-size:.78rem;text-align:left;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}.topic-grid button[aria-pressed=true],.topic-grid button:hover{border-color:var(--cyan);background:#10385a;transform:translateY(-1px)}.topic-grid button:focus-visible{border-color:var(--gold);background:#10385a}.scene.immersive{position:fixed;inset:12px;z-index:1000;display:flex;flex-direction:column;padding:14px;background:var(--surface);box-shadow:0 0 0 100vmax #000c}.scene.immersive .canvas-wrap{height:auto;flex:1}.model-open{overflow:hidden}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:850px){.hero,.workspace{grid-template-columns:1fr}.hero{padding:30px 6%}.hero h1{font-size:clamp(35px,11vw,52px)}.poster{display:none}.workspace{padding:15px 5% 50px}.canvas-wrap{height:420px}.badge{display:none}.scene.immersive{inset:0;border-radius:0}.model-controls button{font-size:11px;padding:7px 9px}.model-card a{margin-left:0;width:100%}}[hidden]{display:none!important}
:root{--focus-ring:#59d8dc55}.model-card.is-focused{transform:translateY(2px);box-shadow:0 0 0 2px var(--focus-ring),0 8px 24px #0006}
/* Corrective checkpoint 2026-09-14: FALLA close styling is scoped in index.html. */

/* ASTRA: controls and PERLA remain outside the equipment's picking surface. */
.workspace{grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr);align-items:start}
.scene,.panel{min-width:0}
.scene-head{gap:12px}
.canvas-wrap{isolation:isolate;scroll-margin-top:90px}
.model-card{right:auto;max-width:calc(100% - 1.6rem);pointer-events:none;backdrop-filter:blur(8px)}
.model-card a{pointer-events:auto}
.scene-note{pointer-events:none;font-size:.7rem;line-height:1.4}
.equipment-label{font-size:.75rem;color:var(--muted);margin:.7rem 0 0;overflow-wrap:anywhere}
.exploration-mode{margin:1.4rem 0;padding-top:1rem;border-top:1px solid #31545d}
.exploration-mode button{min-height:44px;padding:9px 12px;border:1px solid #456975;border-radius:5px;color:var(--paper);background:#0a2440;font:inherit;font-size:.78rem;cursor:pointer}
.exploration-mode button[aria-pressed=true]{border-color:var(--gold);color:var(--gold)}
.exploration-mode button:disabled{opacity:.4;cursor:default}
#tour-status{font-size:.75rem;color:var(--cyan);margin:.7rem 0}
#tour-navigation{display:flex;justify-content:space-between;gap:8px}
.panel .signal{font-size:.9rem;line-height:1.6}
.narrative-link{display:inline-flex;min-height:44px;align-items:center}
.canvas-wrap[data-family=oltc],.canvas-wrap[data-family=ohmic],.canvas-wrap[data-family=arc]{box-shadow:inset 0 0 0 1px #e5b86666}
.canvas-wrap[data-family=sfra],.canvas-wrap[data-family=coord],.canvas-wrap[data-family=ground]{box-shadow:inset 0 0 0 1px #59d8dc66}
@media(max-width:850px){.workspace{grid-template-columns:minmax(0,1fr)}.panel{padding:1.1rem}.model-card strong{display:none}.model-card{gap:.3rem .65rem}.model-card a{width:auto;margin-left:0}.model-controls button{min-height:44px}.scene-note{left:.5rem;right:.5rem;bottom:.3rem;padding:.4rem .5rem}}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}.model-card,.topic-grid button,.hero-actions a{transition:none!important;animation:none!important}.model-card.is-focused,.topic-grid button:hover{transform:none}}

.author-card{max-width:1200px;margin:0 auto 3rem;padding:1.25rem;display:grid;grid-template-columns:112px minmax(0,1fr);gap:1.25rem;align-items:center;border:1px solid #31545d;border-radius:1rem;background:linear-gradient(135deg,#071b31,#0a2440)}.author-card img{display:block;width:112px;height:112px;object-fit:cover;border-radius:50%;border:2px solid var(--gold)}.author-card h2{margin:.25rem 0 .75rem;font-size:clamp(1.35rem,3vw,2rem);line-height:1.1}.author-card p:not(.lab-kicker){max-width:78ch;color:#c8d7d6}.author-card a{color:var(--cyan);font-weight:700;text-underline-offset:3px}@media(max-width:560px){.author-card{grid-template-columns:1fr;margin:0 5% 2.5rem}.author-card img{width:88px;height:88px}.author-card h2{font-size:1.45rem}}

/* recovery: cinematic scene without changing interaction/GLB */
.hero{max-width:1320px;min-height:min(620px,78svh);padding-top:clamp(50px,8vh,112px);position:relative}.hero:before{content:"";position:absolute;inset:80px 0 auto;height:520px;background:radial-gradient(circle at 70% 35%,rgba(24,104,176,.24),transparent 52%);pointer-events:none}.hero>*{position:relative;z-index:1}.hero-ambient{min-height:320px;border:1px solid rgba(91,181,206,.18);background:linear-gradient(135deg,rgba(7,27,49,.08),rgba(10,36,64,.42)),repeating-linear-gradient(90deg,transparent 0 31px,rgba(91,181,206,.055) 32px),repeating-linear-gradient(0deg,transparent 0 31px,rgba(91,181,206,.045) 32px);mask-image:radial-gradient(ellipse at center,black 20%,transparent 74%);pointer-events:none}.hero h1{letter-spacing:-.055em}.workspace{position:relative;gap:22px}.scene,.panel{border-radius:14px;border-color:rgba(91,181,206,.32);background:linear-gradient(150deg,#071e36,#061425)}.scene-head{padding:4px 3px 8px;color:#c0d8e6}.model-controls button{min-height:40px;padding:9px 14px;border-radius:5px;background:#e5b866;border-color:#e5b866;color:#07172a}.model-controls #reset3d{background:transparent;color:#b7e8eb;border-color:#5bb5ce}.topic-grid{gap:9px}.topic-grid button{min-height:48px;padding:11px 12px;border-radius:5px;font-weight:650;letter-spacing:.01em}.panel h2{font-size:clamp(1.7rem,3vw,2.45rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.8rem}.hero-actions a{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1rem;border-radius:5px;font-weight:700;text-decoration:none}.hero-primary{background:var(--gold);color:#07172a}.hero-secondary{border:1px solid #5bb5ce;color:#d7eeee}.hero-actions a:hover{filter:brightness(1.08)}.author-card{max-width:980px;margin:0 auto 70px;padding:32px 5%;display:grid;grid-template-columns:112px minmax(0,1fr);gap:26px;align-items:start}.author-card img{width:112px;height:112px;border-radius:50%;object-fit:cover;border:1px solid rgba(229,184,102,.55)}.author-card h2{margin:.2rem 0;font-size:clamp(1.7rem,3vw,2.25rem);line-height:1.1}.author-card p{max-width:68ch;margin:.75rem 0;color:#c8d7d6}.author-card .author-credential{margin-top:.35rem;color:var(--gold);font-weight:700}.author-card .author-contact-label{margin:1.2rem 0 .25rem;color:var(--muted);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.author-card a{color:var(--cyan);font-weight:700;overflow-wrap:anywhere}@media(max-width:850px){.hero{min-height:0;padding-top:46px}.hero-ambient{display:none}.workspace{gap:14px}.canvas-wrap{height:min(58vh,480px)}.hero-actions a{width:100%}.author-card{margin:0 auto 50px;padding:28px 6%;grid-template-columns:76px minmax(0,1fr);gap:18px}.author-card img{width:76px;height:76px}.author-card h2{font-size:clamp(1.45rem,7vw,2rem)}.author-card p{font-size:.98rem;line-height:1.6}}

/* Token alignment local: preserves Falla's scene, reveal flow, and layout. */
.lab-unified{font-family:"Manrope","Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}
.lab-unified h1,.lab-unified h2,.lab-unified h3{font-family:"Sora","Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}
.lab-unified .hero h1{font-size:clamp(37.6px,4.72vw,60.416px)}
@media(min-width:851px){.lab-unified .lab-header-inner{padding:21px 5%}}

/* FASE3 polish: consistent type scale, comfortable spacing, pill topic grid, perla cards, arrow CTAs. */
html,body{max-width:100%;overflow-x:hidden}
.panel h2{font-size:clamp(1.75rem,1.1rem + 2vw,2.5rem);line-height:1.12;margin:.3rem 0 1.1rem}
.panel .eyebrow{margin-bottom:.4rem}
#content p{font-size:1rem;line-height:1.6}
.perla-grid{display:grid;grid-template-columns:1fr;gap:.85rem;margin:1.1rem 0}
.perla{border:1px solid #345b65;border-radius:.85rem;background:var(--surface-2);padding:1rem 1.1rem 1.05rem;display:flex;flex-direction:column;gap:.5rem}
.perla__eyebrow{margin:0;color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.perla__text{margin:0;font-size:1.08rem;line-height:1.55;color:var(--paper)}
.perla__cta{align-self:flex-start;display:inline-flex;align-items:center;gap:.4rem;margin-top:.15rem;min-height:44px;padding:.55rem .1rem;color:var(--cyan);font-weight:700;font-size:.92rem;text-decoration:none;border:none;transition:gap .18s ease,color .18s ease}
.perla__cta:hover,.perla__cta:focus-visible{gap:.65rem;color:#8fe9ec}
.perla__cta span{transition:transform .18s ease}
.perla__cta:hover span,.perla__cta:focus-visible span{transform:translateX(3px)}
.signal{font-size:1rem;line-height:1.6}
.narrative-link{text-decoration:none;display:inline-flex;min-height:44px;align-items:center;gap:.35rem;font-weight:700}
.topic-grid{grid-template-columns:repeat(3,1fr);gap:.6rem}
.topic-grid button{border-radius:999px;text-align:center;font-size:.82rem;font-weight:650;padding:.62rem .5rem;min-height:44px;display:flex;align-items:center;justify-content:center}
@media(max-width:850px){
 .perla-grid{gap:.7rem}
 .perla{padding:.9rem 1rem}
 .topic-grid{grid-template-columns:repeat(2,1fr)}
 .panel h2{font-size:clamp(1.6rem,5vw,2rem)}
}
@media(max-width:420px){.topic-grid{grid-template-columns:1fr 1fr}}
#model-link,.model-card a,.narrative-link{text-decoration:none!important}

.hero-film{margin:0;position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/9;box-shadow:0 30px 70px -30px rgba(0,0,0,.7),0 0 0 1px rgba(229,184,102,.35)}
.hero-film video{display:block;width:100%;height:100%;object-fit:cover}
.hero-film:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(4,17,30,.35));pointer-events:none}
@media(max-width:850px){.hero-film{margin-top:8px}}
