:root{--accent:#6f48dc}
main{display:block}
.hero h1{font-size:clamp(3.2rem,7.8vw,7.1rem);line-height:.88}
.hero h1 span{color:#6f48dc}
.subtitle{font-weight:600;line-height:1.5;font-size:1.16rem;max-width:690px;margin:28px 0 0}
.hero-side p:first-child{margin-top:0}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--ink);border-left:2px solid var(--ink);margin:20px 0}
.facts>div{padding:14px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);background:#fffdf7;min-height:90px}
.facts small{display:block;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font:700 .7rem 'Courier New',monospace;margin-bottom:10px}
.facts strong{font-size:1.05rem}
.section{padding:36px 0;border-bottom:2px solid var(--ink)}
.section-title{display:grid;grid-template-columns:130px 1fr;align-items:start;gap:18px;margin-bottom:24px}
.section-title .index{color:var(--muted);font:700 12px/1.5 'Courier New',monospace}
.section-title h2{margin:0;font-size:clamp(2.6rem,5.9vw,5.3rem);line-height:.91;letter-spacing:-.065em;text-transform:uppercase;max-width:940px}
.section-title h2 span{color:#6f48dc}
.lead{font-size:1.2rem;line-height:1.64;max-width:950px}
main p,main li{line-height:1.6}
main a:not(.btn){text-decoration:underline;text-underline-offset:3px}
main a:hover:not(.btn){color:#5233b3}
.video-panel{display:grid;grid-template-columns:1.08fr .92fr;border:2px solid var(--ink)}
.poster{position:relative;min-height:385px;background:radial-gradient(circle at 50% 32%,#654c9a 0,#261f46 40%,#0b1022 77%);isolation:isolate;overflow:hidden;display:flex;align-items:end;justify-content:center;color:#fff}
.poster:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 65%,transparent 6%,#05061499 75%),linear-gradient(150deg,transparent 50%,#8473df12);pointer-events:none}
.halo{position:absolute;top:50px;left:calc(50% - 116px);width:230px;height:230px;border:2px solid #9b8bf555;border-radius:50%;box-shadow:0 0 80px #a088ea66,inset 0 0 80px #6c58aa66}
.throne{position:absolute;bottom:70px;left:calc(50% - 60px);width:120px;height:180px;clip-path:polygon(13% 0,25% 22%,75% 22%,87% 0,96% 14%,94% 100%,6% 100%,4% 14%);background:linear-gradient(135deg,#493755,#110f25 50%,#493653)}
.throne span{position:absolute;top:35px;left:28px;width:65px;height:85px;border-radius:48% 48% 20% 20%;background:linear-gradient(125deg,#76578e,#312342);box-shadow:0 20px 15px #0b081d}
.poster-label{z-index:1;position:relative;text-align:center;background:#070815bb;width:100%;padding:18px 10px 20px;font:700 1rem/1.55 'Courier New',monospace;letter-spacing:.06em}
.poster-label b{font-size:1.6rem;color:#e3c8ff}
.video-copy{padding:24px;background:#fffdf8}
.video-copy h3{font-size:2.1rem;letter-spacing:-.055em;line-height:1.02;margin:10px 0 18px}
.video-copy p{line-height:1.62}
.access-note{padding:13px;background:#f0ebff;border-left:4px solid #6f48dc;font-size:.9rem}
.three-cols,.two-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.two-cols{grid-template-columns:repeat(2,1fr)}
.three-cols article,.two-cols article{padding:18px;border:1.5px solid var(--ink);background:#fffdf8}
.three-cols article span{color:var(--muted);font:700 11px 'Courier New',monospace}
.three-cols h3,.two-cols h3{margin:12px 0 8px;font-size:1.48rem;letter-spacing:-.045em}
.three-cols p,.two-cols p{margin:0;color:#403b35}
.timeline{list-style:none;counter-reset:steps;padding:0;margin:0;border-top:1px solid var(--ink)}
.timeline li{counter-increment:steps;position:relative;padding:22px 20px 22px 80px;border-bottom:1px solid var(--ink);background:#fffdf7}
.timeline li:nth-child(even){background:#e9e3f8}
.timeline li:before{content:counter(steps,decimal-leading-zero);position:absolute;left:18px;top:23px;font:900 1.35rem 'Courier New',monospace;color:#6242b0}
.timeline b{font-size:1.12rem}
.timeline p{margin:8px 0 0}
.prompt-block{border:2px solid var(--ink);background:#161927;color:#faf9ff}
.prompt-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-bottom:1px solid #9994b5;font-size:.9rem}
.prompt-head button{cursor:pointer;border:1px solid #ddd8f2;background:#ddd8f2;color:#171527;padding:9px 15px;font-weight:700}
.prompt-head button:hover{background:#fff}
.prompt-block pre{white-space:pre-wrap;overflow-wrap:anywhere;font:400 .94rem/1.6 'Courier New',monospace;margin:0;padding:20px;max-width:105ch}
.script{margin:0;padding:20px 30px;background:#fffbef;border-left:9px solid #6f48dc;font-size:1.04rem;font-style:italic}
.script p{margin:0 0 13px;max-width:850px}
.script p:last-child{margin-bottom:0;font-weight:700}
.cautions article{border-top:5px solid #6f48dc}
.sources{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.sources a{padding:18px;min-height:100px;background:#fffdf8;border:1.5px solid var(--ink);display:flex;flex-direction:column;justify-content:center;gap:10px;text-decoration:none!important}
.sources a:hover{background:#eee8ff}
.sources strong{font-size:1.1rem}
.sources span{color:#46405a;font-size:.85rem}
.foot{margin-top:20px}
@media(max-width:1000px){.video-panel{grid-template-columns:1fr}.poster{min-height:330px}}
@media(max-width:780px){.facts{grid-template-columns:repeat(2,1fr)}.three-cols,.two-cols{grid-template-columns:1fr}.section-title{grid-template-columns:1fr}.sources{grid-template-columns:1fr}}
@media(max-width:580px){.hero h1{font-size:3.35rem}.section-title h2{font-size:2.8rem}.facts{grid-template-columns:1fr}.video-copy{padding:18px}.poster{min-height:300px}.timeline li{padding:20px 12px 20px 65px}.timeline li:before{left:12px}.prompt-head{flex-wrap:wrap}.prompt-block pre{font-size:.81rem;padding:13px}.script{padding:14px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Vídeo real alojado en EDU/LAB */
.player-box{display:flex;flex-direction:column;min-width:0;background:#0b0917}
.player-box video{display:block;width:100%;aspect-ratio:16/9;min-height:270px;max-height:600px;background:#070812;object-fit:contain}
.player-caption{font:700 11px/1.5 "Courier New",monospace;letter-spacing:.04em;text-transform:uppercase;padding:12px 16px;color:#f1ebff;background:#231a41;border-top:1px solid #8572a0}
@media(max-width:620px){.player-box video{min-height:200px}}
