@import url('campus.css');
:root{--ink:#0b0710;--paper:#fff7fc;--purple:#300b48;--red:#e40836;--muted:#d4c1de;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit}button,input{font:inherit}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #fff;outline-offset:6px}.header{position:absolute;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:20px 4vw;gap:24px}.brand{font-weight:800;font-size:12px;letter-spacing:.13em}.brand span{display:block;font-size:10px;letter-spacing:.23em;color:#cdb9d9;margin-top:3px}.brand-logos{width:220px;height:auto;display:block}.buy{position:fixed;right:4vw;top:24px;z-index:30;background:var(--red);padding:15px 25px;min-height:52px;text-decoration:none;font-weight:700;border:1px solid #ff7896;box-shadow:4px 4px 0 #170612}.buy:hover{background:#fa234c}.header .brand{margin-right:230px}.skip{position:absolute;left:4vw;top:95px;z-index:20;font-size:12px;text-underline-offset:4px;color:#e1d1e8}.story{position:relative;background:radial-gradient(ellipse at 70% 25%,#2a0c3e,transparent 65%),#0b0710}.story.animated{height:420svh}.stage{position:relative;height:100svh;min-height:660px;overflow:hidden}.animated .stage{position:sticky;top:0}.visual{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.visual picture,.visual canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.visual picture img{display:block;width:100%;height:100%;object-fit:contain}.visual canvas{opacity:0}.visual canvas.ready{opacity:1}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#110319ed 0%,#1103199c 26%,transparent 64%),linear-gradient(0deg,#0b0710 0%,transparent 20%,transparent 78%,#0b0710b3);pointer-events:none}.intro{position:absolute;top:25%;left:6vw;width:48%;opacity:var(--intro-opacity,1);pointer-events:none}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:bold;color:#f8a2bb}h1{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(76px,9.4vw,142px);line-height:.87;font-weight:400;letter-spacing:-.025em;margin:22px 0 24px;text-shadow:0 3px 25px #1a0720}h1 span{display:block;font-size:.62em;margin-top:.08em}h1 i{font-style:normal;color:#ff3155}.intro-facts{font-size:16px;font-weight:700;line-height:1.8;max-width:390px}.intro-facts span{display:block;color:#e7d0ee;font-weight:400;font-size:14px}.intro-distance{display:inline-block;margin-top:18px;font:32px/1 Impact,sans-serif;color:#ff4668}.story-footer{position:absolute;bottom:28px;left:6vw;right:6vw;display:flex;justify-content:space-between;align-items:end;gap:20px}.phase{font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin:0;color:#e8d2f0}.scroll-hint{font-size:11px;color:#dac3e4;margin-top:7px}.meter{height:2px;background:#ffffff40;width:140px;margin-top:12px;overflow:hidden}.meter span{display:block;height:100%;width:100%;background:#ff3155;transform:scaleX(var(--progress,0));transform-origin:left}.end-copy{font:clamp(25px,4vw,58px)/1 Impact,sans-serif;opacity:var(--end-opacity,0);text-align:right;text-shadow:0 2px 15px #000}.end-copy span{display:block;color:#ff4668}.section{padding:85px 6vw}.statement{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:60px;border-top:1px solid #513052;background:radial-gradient(ellipse at 0 0,#380b3c,transparent 70%)}h2{font:clamp(42px,5.2vw,78px)/.98 Impact,'Arial Narrow',sans-serif;font-weight:400;letter-spacing:-.01em;margin:18px 0 25px}.statement h2{margin-bottom:0}.statement p{max-width:440px;color:#d7c5df;margin:0}.facts-section{background:#f7f0f8;color:#1a0d21}.facts-section .eyebrow{color:#9b1238}.facts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:38px 0 0}.fact{padding:25px 30px 25px 0;border-top:1px solid #bba7c2}.fact dt{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#6d526f}.fact dd{font-size:clamp(20px,2.4vw,34px);line-height:1.2;font-weight:700;margin:13px 0 0;max-width:380px}.fact.price dd{color:#c7113b;font-size:48px}.route-section{padding:85px 6vw}.route-heading h2{margin-top:15px}.kicker{font-size:11px;letter-spacing:.15em;color:#ff9bb5;text-transform:uppercase}.lead{color:#d7c5df;max-width:600px}.route-heading .lead{line-height:1.7}.route-stats strong{color:#ff4164}.route-map{min-width:0}.route-glow{stroke:#ffb5c5}.poster-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#210b30}.poster-section .poster{display:block;width:min(100%,430px);height:auto;margin-left:auto;border:1px solid #88496f;box-shadow:16px 16px 0 #100817}.poster-section p{color:#d6c1e0;max-width:420px}.partner-logos{display:block;width:100%;max-width:500px;margin-top:40px;height:auto}.footer{padding:35px 6vw 45px;display:flex;justify-content:space-between;gap:25px;color:#af99bd;font-size:11px;border-top:1px solid #452647}.footer strong{color:#f0e0fa;letter-spacing:.1em}p{margin:0}.fallback-note{display:none}.story.static .scroll-hint{display:none}.story.static .phase{visibility:hidden}.story.static .intro{opacity:1}.story.static .end-copy{display:none}.story.static .shade{opacity:1}
@media(min-width:1600px){.stage{min-height:800px}.intro{top:28%}}
@media(max-width:760px){html{scroll-padding-top:30px}.header{padding:16px 6vw}.brand-logos{width:165px}.header .brand{margin-right:0;font-size:9px;text-align:right}.brand span{font-size:8px}.skip{top:90px;left:6vw;font-size:11px}.buy{left:5vw;right:5vw;top:auto;bottom:max(14px,env(safe-area-inset-bottom));text-align:center;padding:14px;box-shadow:0 0 0 14px #0b0710;border-radius:2px}.story.animated{height:310svh}.stage{height:100svh;min-height:650px}.visual{inset:auto 0 145px;height:auto;aspect-ratio:16/9;width:100%;border-block:1px solid #6b234f}.shade{background:linear-gradient(0deg,#0b0710,transparent 4%,transparent 96%,#0b0710);opacity:.5}.intro{top:130px;left:6vw;width:88%;opacity:1!important}h1{font-size:clamp(66px,20vw,92px);margin:13px 0}h1 span{display:inline;font-size:.56em;letter-spacing:0}h1 span:before{content:' ';display:block}.intro .eyebrow{font-size:9px}.intro-facts{font-size:13px;line-height:1.6}.intro-facts span{font-size:12px}.intro-distance{display:none}.story-footer{bottom:90px;left:6vw;right:6vw}.end-copy{font-size:20px}.phase{font-size:9px}.scroll-hint{font-size:10px}.meter{width:95px;margin-top:7px}.section,.route-section{padding:55px 6vw}.statement{grid-template-columns:1fr;gap:25px}.facts-grid{grid-template-columns:1fr 1fr}.fact{padding:22px 12px 22px 0}.fact dd{font-size:22px}.fact dt{font-size:9px}.poster-section{grid-template-columns:1fr;gap:35px}.poster-section .poster{margin:0 auto;max-width:400px}.footer{padding-bottom:110px;flex-direction:column;gap:8px}.route-map{min-width:0}.map-window{max-width:100%}.route-map.zoomed{width:900px;max-width:none}.route-stats strong{font-size:42px}.partner-logos{margin-top:25px}}
@media(max-height:700px) and (max-width:760px){.intro{top:112px}h1{font-size:62px;margin:9px 0}.intro .eyebrow{display:none}.visual{bottom:132px}.story-footer{bottom:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story.animated{height:auto}.animated .stage{position:relative}.intro{opacity:1!important}.end-copy{display:none}.scroll-hint{display:none}}
/* Ajustes de legibilidad por formato. */
.skip{top:112px}.animated .shade{opacity:calc(.15 + var(--intro-opacity,1)*.85)}
@media(max-width:760px){.skip{top:90px}.intro h1 span{display:block;margin-top:8px}.intro h1 span:before{content:none}.animated .shade{opacity:.25}}
@media(min-width:500px) and (max-width:760px){.intro{top:120px;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;align-items:end}.intro .eyebrow{grid-column:1/-1}.intro h1{font-size:64px;margin:5px 0}.intro-facts{padding-bottom:6px}}
@media(max-height:600px) and (max-width:499px){.stage{min-height:560px}.intro{top:108px}.intro h1{font-size:50px}.visual{bottom:120px}.story-footer{bottom:80px}}
/* Logos originales: orden de lectura y separación adaptable. */
.brand-logos{display:flex;align-items:center;gap:22px;width:400px;max-width:100%;flex-shrink:0}
.institution-logo{display:block;width:65px;height:76px;flex:1;min-width:0;overflow:hidden}
.institution-logo.campus-logo{flex:1.4}.institution-logo.daduv-logo{flex:1.3;mix-blend-mode:screen}
.header .brand{margin-right:250px}.header{gap:20px}.skip{top:120px}
.partner-logos{display:flex;align-items:center;flex-wrap:wrap;gap:26px 30px;max-width:580px}
.partner-logos svg{display:block;height:58px;max-width:100%;flex-shrink:0;overflow:hidden}
@media(min-width:761px) and (max-width:1100px){.header .brand{display:none}}
@media(max-width:760px){
 .header{padding:14px 6vw;display:block}.header .brand{display:none}
 .brand-logos{width:100%;max-width:460px;gap:clamp(12px,3.5vw,22px)}
 .institution-logo{height:64px;width:52px}.skip{top:90px}
 .partner-logos{gap:24px;max-width:100%;margin-top:30px}
 .partner-logos svg{height:54px}
}
