﻿@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--navy:#081c61;--blue:#16378e;--orange:#ff7028;--ink:#16233d;--muted:#58647b;--line:#dfe3eb;--paper:#f4f5f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.75 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15}h1{font-size:clamp(42px,4.7vw,70px);letter-spacing:-2.8px;font-weight:800}h2{font-size:clamp(34px,3.5vw,50px);letter-spacing:-1.7px;font-weight:800}h3{font-size:20px;letter-spacing:-.4px}em{font-style:normal;color:var(--blue)}p+p{margin-top:18px}.section{max-width:1200px;padding:90px 40px;margin:auto}.two{display:grid;grid-template-columns:1fr 1fr;gap:70px}.eyebrow{color:var(--blue);font-size:10px;letter-spacing:2px;font-weight:700;margin-bottom:22px}.intro{margin:25px 0;color:var(--muted)}header{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 5%;min-height:100px}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:800;line-height:1.5}.brand img{width:58px;height:58px;object-fit:contain}.brand small{display:block;font-size:10px;color:var(--muted);font-weight:500}nav{display:flex;gap:28px;align-items:center;font-size:13px;font-weight:600}.nav-contact{border:1px solid var(--line);border-radius:5px;padding:10px 17px}.hero{max-width:1440px;margin:auto;background:var(--navy);color:white;display:grid;grid-template-columns:1.1fr 1fr}.hero-copy{padding:70px 9%}.hero .eyebrow{color:#b4c5ff}.hero h1 span{color:#ff975f}.hero-copy>p:not(.eyebrow){color:#c7d1ed;margin-top:25px;max-width:460px;font-size:15px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:32px;font-size:12px;font-weight:700}.button{display:inline-block;background:var(--orange);color:#fff;padding:14px 22px;border-radius:5px;font-size:13px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#d95111;transform:translateY(-2px)}.hero-note{display:block;color:#c6d2ee;font-size:11px;margin-top:35px}.hero-image{position:relative;min-width:0;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover}.caption{position:absolute;left:28px;right:28px;bottom:28px;background:#081c61eb;padding:19px 22px;border-left:4px solid var(--orange)}.caption small{display:block;font-size:9px;letter-spacing:1.4px;color:#c4d1fa}.caption strong{font:700 23px Manrope,Arial,sans-serif;display:block;margin-top:6px}.facts{display:grid;grid-template-columns:repeat(3,1fr);max-width:1120px;margin:auto;padding:30px 0;border-bottom:1px solid var(--line)}.facts>div{border-right:1px solid var(--line);padding:0 30px}.facts>div:first-child{padding-left:0}.facts>div:last-child{border:0}.facts strong{display:block;font:800 27px Manrope,Arial,sans-serif;color:var(--navy)}.facts span{display:block;color:var(--muted);font-size:12px;margin-top:6px}.prose{padding-top:25px;color:var(--muted)}.work{border-top:1px solid var(--line);margin-top:40px;padding-top:30px}.work h3{font-size:17px;margin-bottom:20px}.tags{display:flex;gap:9px;flex-wrap:wrap}.tags span{padding:7px 15px;border:1px solid var(--line);border-radius:4px;font-size:12px}.learning{padding-top:20px;align-items:center}.project-photo{border-radius:7px;background:#eef0f5;overflow:hidden}.project-photo img{width:100%}.project-photo>div{background:var(--orange);color:white;font-size:10px;letter-spacing:1.5px;font-weight:700;padding:14px 20px}.learning h3{font-size:15px}.courses{padding-left:25px;font-size:14px}.courses li{padding:10px 0 10px 8px;border-bottom:1px solid var(--line)}.courses li::marker{color:var(--orange);font-weight:700}.muted{font-size:12px;color:var(--muted)}.schedule{background:var(--navy);color:white}.schedule .section{padding-top:65px;padding-bottom:65px}.schedule .eyebrow{color:#b4c5ff}.schedule em{color:#ff975f}.schedule .intro{color:#c7d1ed;margin-bottom:0;max-width:470px}.modalities{align-self:center}.modalities h3{border-bottom:1px solid #ffffff35;padding:20px 0;font-size:25px}.modalities small{font-size:11px;color:#ff975f;margin-right:22px}.modalities a{display:inline-block;margin-top:22px;font-size:13px;font-weight:700}.benefits{margin-top:40px;grid-template-columns:.85fr 1.2fr;gap:60px}.campus{position:relative;min-height:550px;overflow:hidden;border-radius:7px}.campus img{position:absolute;width:100%;height:100%;object-fit:cover}.campus:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#081c61d9)}.campus>div{position:absolute;left:25px;bottom:25px;color:white;z-index:1;font-size:19px;line-height:1.4}.campus strong{font:800 30px Manrope,Arial,sans-serif}.checks{list-style:none;padding:0;color:var(--muted);font-size:14px;margin:20px 0 25px}.checks li{position:relative;padding:7px 0 7px 27px}.checks li:before{content:'✓';position:absolute;left:0;color:#b5440d;font-weight:bold}.support{border-top:1px solid var(--line)}.support article{padding-top:20px}.support h3{font-size:16px}.support p{font-size:13px;color:var(--muted);margin-top:6px}.degree{border-top:1px solid var(--line);gap:100px}.degree>div>p:not(.eyebrow),.degree ul{color:var(--muted);font-size:15px}.degree ul{padding-left:20px;line-height:2}.plan{background:var(--paper);border:1px solid var(--line);border-radius:7px;text-align:center;padding:28px;display:flex;flex-direction:column;align-items:center}.mark{width:65px;margin-bottom:15px}.plan h3{font-size:25px}.plan p{font-size:13px;color:var(--muted);margin-top:14px;max-width:270px}.qr{width:190px;background:white;padding:8px;margin:20px 0}.plan a{font-size:12px;text-decoration:underline;font-weight:700}.achievements{background:var(--paper)}.achievement-heading{align-items:end}.achievement-heading>p{max-width:370px;color:var(--muted);font-size:14px}.awards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px}.awards article{border-top:2px solid var(--navy);padding-top:25px}.award-logo{height:90px;display:flex;align-items:center;margin-bottom:20px}.award-logo img{width:auto;max-width:200px;max-height:75px}.awards h3{font-size:18px;line-height:1.4}.awards p{font-size:12px;color:var(--muted);margin-top:10px}.awards ul{list-style:none;padding:0;font-size:12px;color:var(--muted);margin-top:20px}.awards li{margin-top:12px}.awards b{color:var(--blue);margin-right:7px}.contact .intro{max-width:430px}.details>div,.details>a{display:block;border-bottom:1px solid var(--line);padding:13px 0;font-size:14px;overflow-wrap:anywhere}.details small{display:block;font-size:9px;letter-spacing:1.4px;color:var(--muted);margin-bottom:5px}footer{max-width:1120px;margin:auto;border-top:1px solid var(--line);padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}footer img{width:150px}footer p{font-size:11px;color:var(--muted)}footer a{font-size:12px;font-weight:700}a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip{position:absolute;top:-100px;left:15px;padding:12px;background:white;z-index:10}.skip:focus{top:10px}section[id]{scroll-margin-top:25px}
@media(max-width:1200px){.facts,footer{margin-left:40px;margin-right:40px}.two{gap:45px}.hero-copy{padding:55px 35px}}
@media(max-width:750px){header{padding:15px 22px;flex-wrap:wrap;gap:14px}.brand img{width:45px;height:45px}.brand small{font-size:9px}nav{width:100%;justify-content:space-between;gap:10px;font-size:11px}.nav-contact{padding:7px 10px}.hero{grid-template-columns:1fr}.hero-copy{padding:43px 24px}.hero h1{font-size:46px;letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-image>img{height:auto;aspect-ratio:1.1;object-fit:cover;object-position:top}.caption{left:20px;right:20px;bottom:20px}.caption strong{font-size:21px}.facts{margin:0 22px;padding:24px 0;gap:12px}.facts>div{padding:0 8px 0 0}.facts strong{font-size:19px}.facts span{font-size:10px;line-height:1.5}.section{padding:58px 24px}.two,.benefits{grid-template-columns:1fr;gap:30px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:18px}h2{font-size:35px;letter-spacing:-1.4px}.prose{padding:0;font-size:14px}.tags{gap:7px}.tags span{padding:7px 10px;font-size:11px}.learning{padding-top:0}.project-photo{max-width:450px;margin:auto;width:100%}.intro{font-size:14px}.benefits{margin-top:30px}.campus{min-height:360px}.campus img{object-position:center 65%}.benefits h3{font-size:19px}.support h3{font-size:16px}.degree{gap:30px}.awards{grid-template-columns:1fr;gap:25px}.award-logo{height:70px}.award-logo img{max-height:65px}.awards ul{font-size:13px}.achievement-heading>p{max-width:none}.details>div,.details>a{font-size:13px}footer{margin:0 24px;padding:25px 0;flex-wrap:wrap;gap:20px}footer img{width:115px}footer p{font-size:10px}footer a{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Imágenes originales: proporciones completas y fondos neutros. */
:root{--navy:#0b1384;--blue:#0b1384;--orange:#ff6b1f;--ink:#171717;--paper:#f5f5f7}
.hero{align-items:center}
.hero-image{background:#fff;align-self:center;aspect-ratio:540 / 451;overflow:hidden}
.hero-image>img{display:block;width:100%;height:auto;max-width:none;aspect-ratio:auto;object-fit:initial;object-position:initial}
.project-photo{background:#fff;border-radius:0;overflow:visible}
.project-photo img{width:100%;height:auto;object-fit:contain}
.campus{min-height:0;overflow:visible;border-radius:0;align-self:start;background:white}
.campus img{position:static;width:100%;height:auto;object-fit:contain;object-position:center}
.campus:after{display:none}
.award-logo{background:white;min-height:110px;height:auto;padding:15px;justify-content:center;border:1px solid var(--line);border-radius:4px}
.award-logo img{max-width:100%;max-height:85px;width:auto;height:auto;object-fit:contain}
.brand img,.mark,footer img{background:#fff;object-fit:contain}
.plan{background:#fff}
.qr{width:240px;max-width:100%;image-rendering:auto;padding:12px;background:white}
.achievement-heading{grid-template-columns:1fr}
.hero h1 span,.schedule em{color:#ff9a66}
@media(max-width:750px){.hero-image{width:100%;aspect-ratio:540 / 451}.hero-image>img{height:auto;aspect-ratio:auto;object-fit:initial;object-position:initial}.campus{max-width:420px;margin:auto}.campus img{object-position:center}.award-logo{min-height:110px}}
h1,h2,h3{overflow-wrap:anywhere}.two>*{min-width:0}.hero-copy{min-width:0}
/* Identidad institucional: archivos oficiales, sin filtros ni recoloreado. */
header{gap:24px}.brand{max-width:540px;flex:1;font-size:15px}.brand>span{max-width:400px;line-height:1.45}.brand img{width:72px;height:72px;flex-shrink:0}.brand small{margin-top:5px}.mark{width:100px;height:auto}.qr{width:280px;height:auto}.hero-copy>p:not(.eyebrow){font-weight:600;letter-spacing:.5px}
@media(max-width:1000px){header{flex-wrap:wrap}.brand{flex-basis:100%;max-width:none}header nav{margin-left:auto}}
@media(max-width:750px){.brand{font-size:12px}.brand img{width:60px;height:60px}.brand>span{max-width:290px}.brand small{font-size:10px}.qr{width:270px}}
/* Original proporcionado: imagen completa sobre blanco, sin recorte. */
.project-photo{background:#fff;overflow:visible;border-radius:0;align-self:center}
.project-photo img{display:block;width:100%;height:auto;max-width:480px;margin:0 auto;object-fit:contain}
/* Mayor legibilidad y movimiento discreto. */
body{font-size:18px;line-height:1.8}
h1{font-size:clamp(48px,5vw,76px)}h2{font-size:clamp(38px,3.8vw,55px)}h3{font-size:24px}
nav{font-size:16px}.brand{font-size:17px}.brand small{font-size:13px}.eyebrow{font-size:13px}
.hero-copy>p:not(.eyebrow){font-size:19px}.hero-note{font-size:14px}.actions{font-size:16px}.button{font-size:17px;padding:16px 24px}
.facts strong{font-size:31px}.facts span{font-size:16px}.work h3{font-size:22px}.tags span{font-size:16px}
.learning h3{font-size:20px}.courses{font-size:18px}.muted{font-size:16px}.modalities small{font-size:15px}
.checks{font-size:18px}.support h3{font-size:21px}.support p{font-size:17px}
.degree>div>p:not(.eyebrow),.degree ul{font-size:18px}.plan{justify-content:center;gap:24px;padding:40px 28px;box-shadow:0 12px 35px #081c610a}.plan .mark{width:130px;margin:0}.plan h3{font-size:30px}.plan a.plan-button{font-size:17px;text-decoration:none;font-weight:700}
.awards h3{font-size:22px}.awards p,.awards ul{font-size:17px}.details>div,.details>a{font-size:17px}.details small{font-size:12px}footer p{font-size:14px}footer a{font-size:16px}
nav a,.details a,footer a{transition:color .2s ease}nav a:hover,.details a:hover,footer a:hover{color:#b7430a}
.tags span{transition:background .2s ease,border-color .2s ease}.tags span:hover{background:#f1f3ff;border-color:var(--blue)}
.award-logo,.plan{transition:box-shadow .25s ease}.award-logo:hover,.plan:hover{box-shadow:0 10px 28px #081c6114}
.reveal-pending{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal-visible{opacity:1;transform:none}
@media(max-width:750px){body{font-size:17px}h1,.hero h1{font-size:50px}h2{font-size:39px}.brand{font-size:14px}.brand small{font-size:12px}header nav{font-size:14px;flex-wrap:wrap;row-gap:14px}.hero-copy>p:not(.eyebrow){font-size:18px}.hero-note{font-size:13px}.eyebrow{font-size:12px}.facts{gap:10px}.facts strong{font-size:23px}.facts span{font-size:14px}.prose,.intro,.checks,.degree>div>p:not(.eyebrow),.degree ul{font-size:17px}.tags span{font-size:15px}.benefits h3{font-size:23px}.support h3{font-size:21px}.support p{font-size:17px}.awards ul{font-size:17px}.details>div,.details>a{font-size:16px}.plan a.plan-button{font-size:16px}.contact .button{font-size:16px}footer p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}*{animation:none!important;transition:none!important}}
/* Entradas escalonadas e interacciones, sin alterar las imágenes originales. */
@keyframes hero-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes button-wave{from{opacity:.45;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@media(prefers-reduced-motion:no-preference){
.hero-copy>*{animation:hero-enter .8s ease both}.hero-copy>:nth-child(2){animation-delay:.1s}.hero-copy>:nth-child(3){animation-delay:.2s}.hero-copy>:nth-child(4){animation-delay:.3s}.hero-copy>:nth-child(5){animation-delay:.4s}
.reveal-pending{opacity:0;transform:translateY(26px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}.reveal-visible{opacity:1;transform:translateY(0)}
.button{position:relative;overflow:hidden;isolation:isolate;transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.button:hover{transform:translateY(-4px);box-shadow:0 9px 24px #ff6b1f38}.button:active{transform:translateY(-1px)}
.button-wave{position:absolute;width:600px;height:600px;border-radius:50%;background:white;pointer-events:none;animation:button-wave .65s ease-out forwards}
nav a,footer>a{position:relative}nav a:after,footer>a:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}nav a:hover:after,nav a:focus-visible:after,footer>a:hover:after{transform:scaleX(1)}
.award-logo img,.plan .mark,.brand img{transition:transform .4s ease}.award-logo:hover img,.plan:hover .mark{transform:translateY(-4px)}.brand:hover img{transform:rotate(-4deg)}
.tags span{transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}.tags span:hover{transform:translateY(-4px);box-shadow:0 5px 12px #081c6110}
.details>a{transition:color .25s ease,background .25s ease}.details>a:hover{background:#f5f6ff}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.hero-image,.project-photo,.campus{transition:box-shadow .4s ease}.hero-image:hover,.project-photo:hover,.campus:hover{box-shadow:0 14px 36px #081c6124}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}*{animation:none!important;transition:none!important}}
