.skip-link{position:fixed;left:16px;top:-100px;z-index:50;padding:12px;background:white}.skip-link:focus{top:12px}
.hero{padding-top:54px}.eyebrow{font:500 .875rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--agua);margin:0 0 16px}
.hero h1{max-width:1000px}.hero .lead{max-width:76ch}.hero .estado{margin-bottom:26px;font-size:.875rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0 30px}
.button-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;border:1px solid var(--tinta);text-decoration:none;font-size:1rem;background:var(--tinta);color:white}.button-link.secondary{background:transparent;color:var(--tinta)}.button-link:hover{background:var(--agua);color:white;border-color:var(--agua)}
.scene-viewer{border:1px solid #284459;background:#0a1f32;color:#e3edf4;overflow:hidden;margin:0;min-width:0}
.scene-top{padding:15px 20px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #284459;font-family:var(--mono);font-size:.875rem}.scene-top strong{font-weight:500}.scene-top span{font-size:.75rem;color:#9ab5c8;letter-spacing:.06em}
.scene-stage{height:330px;position:relative;isolation:isolate;overflow:hidden;min-width:0}.scene-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0;touch-action:pan-y!important}.scene-stage canvas:focus-visible{outline:2px solid #70e5ce;outline-offset:-5px}
.scene-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:28px;background:#f5f8fa}.scene-ready .scene-fallback{display:none}
.scene-status{position:absolute;bottom:12px;left:18px;right:18px;pointer-events:none;font-size:.75rem;color:#b9cfdf;background:#0a1f32d9;width:fit-content;padding:3px 7px}
.scene-toolbar{padding:12px 16px;display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #284459}.scene-toolbar button{font:400 .875rem var(--sans);background:transparent;border:1px solid #567285;color:#deedf7;padding:7px 11px;cursor:pointer;min-height:38px}.scene-toolbar button:hover,.scene-toolbar button[aria-pressed=true]{background:#254b59;color:#8bf0d7;border-color:#65bba9}.scene-toolbar button:disabled{opacity:.4;cursor:default}.scene-toolbar a{margin-left:auto;color:#9ce5d3;align-self:center;font:500 .875rem var(--mono);padding:7px;text-underline-offset:4px}
.scene-parameter{padding:3px 18px 14px}.scene-parameter label{display:flex;align-items:center;gap:14px;font-size:.875rem;flex-wrap:wrap}.scene-parameter input{flex:1;min-width:120px;max-width:320px;accent-color:#64d8bd;cursor:pointer;min-height:30px}.parameter-ends{display:flex;justify-content:space-between;gap:14px;font-size:.75rem;color:#b1c7d7;margin-top:2px}.scene-legend{display:flex;flex-wrap:wrap;gap:10px 24px;padding:14px 18px;margin:0;border-top:1px solid #284459;list-style:none;font-size:.875rem;color:#c5d6e2}.scene-legend li::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#57d9bc;margin:0 8px 1px 0}.scene-legend li:nth-child(2)::before{background:#d69b62}.scene-legend li:nth-child(3)::before{background:#6dabee}
.assembly{margin:0}.assembly .scene-stage{height:400px}.assembly-links{display:grid;grid-template-columns:repeat(4,1fr);background:#102c43}.assembly-links a{padding:16px 18px;border-right:1px solid #284459;color:#e3edf4;text-decoration:none;font-size:.875rem}.assembly-links a:hover{background:#1a4053}.assembly-links b{display:block;color:#78dec8;font:500 .875rem var(--mono)}.model-note{font-size:.875rem;color:var(--tinta-2);margin:14px 0 28px;max-width:90ch}.model-note strong{color:var(--tinta)}
.modulo{grid-template-columns:80px minmax(0,.85fr) minmax(0,1.3fr);gap:24px;padding:44px 0}.modulo .ref{font-size:.875rem}.modulo .ref small{font-size:.75rem}.modulo .scene-viewer{padding:0;background:#0a1f32;border-color:#284459;max-width:none}.modulo h3{font-size:1.45rem;line-height:1.25}.modulo .cierre{margin-top:22px}.module-facts{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-size:.875rem;margin:24px 0}.module-facts dt{color:var(--tinta-2)}.module-facts dd{margin:0;font-weight:500}.module-link{display:inline-block;font-size:.875rem;margin-top:20px}.section-intro{display:flex;align-items:flex-end;gap:30px;justify-content:space-between;margin-bottom:28px}.section-intro h2{max-width:24ch}.section-intro p{max-width:46ch;color:var(--tinta-2);margin:0}.anima{animation:none!important}
@media(max-width:1000px){.barra .contenedor{flex-wrap:wrap;gap:4px;padding-top:10px;padding-bottom:10px}.menu{width:100%;margin-left:0;gap:20px}.modulo{grid-template-columns:1fr 1.35fr;gap:20px}.modulo>.ref{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin:0}.modulo>.ref small{margin:0}.scene-top{padding:13px}.scene-toolbar{padding:10px}.scene-toolbar a{margin-left:0}.section-intro{align-items:flex-start}}
@media(max-width:700px){.contenedor{padding-left:18px;padding-right:18px}.hero{padding-top:32px}.hero h1{font-size:2.6rem}.hero .estado{gap:6px}.hero .estado li{font-size:.75rem}.assembly .scene-stage{height:280px}.assembly-links{grid-template-columns:repeat(2,1fr)}.assembly-links a{border-bottom:1px solid #284459}.modulo{grid-template-columns:1fr}.modulo .scene-stage{height:320px}.scene-toolbar button{min-height:42px}.section-intro{display:block}.section-intro p{margin-top:14px}.scene-top{flex-wrap:wrap;gap:5px}.scene-legend{gap:8px 15px}.hero-actions{gap:10px}.button-link{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
