/* Identidad editorial de Corporación Nacional: no usa cabeceras de plantilla. */
:root{--blue-950:#08275c;--blue-800:#0754c7;--blue-700:#0b67e8;--blue-100:#eaf3ff;--blue-50:#f5f9ff;--ink:#12213a;--muted:#5a6880;--line:#dbe5f2;--surface:#f7f9fc;--accent:#ffcd4b;--radius:1.25rem;--shadow:0 18px 45px rgb(24 48 87 /.09)}
.brand-mark{width:40px;height:40px;border:3px solid var(--blue-800);border-radius:13px 13px 13px 3px;box-shadow:5px 5px 0 var(--accent)}.campus-link,.button{border-radius:.65rem;padding:.78rem 1.1rem}.button:hover{box-shadow:0 8px 18px rgb(7 84 199 /.2)}
.hero{min-height:660px;background:linear-gradient(100deg,rgb(8 39 92 /.96) 0%,rgb(8 39 92 /.83) 45%,rgb(8 39 92 /.22) 100%),url('/assets/images/2026/05/2147768647.jpg') center/cover}.hero-copy{max-width:620px}.info-card{border-top:4px solid var(--blue-700)}.program-grid{gap:1rem;border:0}.program-grid a{border:1px solid var(--line);border-radius:var(--radius);transition:background .2s,transform .2s,box-shadow .2s}.program-grid a:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.page-hero{position:relative;isolation:isolate;overflow:hidden;padding:4.5rem 0 3.75rem;background:var(--blue-50);border-bottom:1px solid var(--line);color:var(--ink)}.page-hero::before{position:absolute;z-index:-1;top:-180px;right:-90px;width:430px;height:430px;border-radius:50%;background:linear-gradient(135deg,#d9eaff,#fff 72%);content:""}.page-hero::after{position:absolute;z-index:-1;right:13%;bottom:36px;width:78px;height:10px;border-radius:99px;background:var(--accent);content:""}.page-hero .narrow{padding-left:1.4rem;border-left:4px solid var(--blue-700)}.page-hero .eyebrow{color:var(--blue-700)}.page-hero h1{max-width:720px;margin-bottom:1rem;font-size:clamp(2.25rem,4.4vw,3.85rem)}.page-hero p{max-width:690px;margin-bottom:0;color:var(--muted);font-size:1.08rem}
.service-row img{box-shadow:var(--shadow)}.service-cards{border-radius:var(--radius);overflow:hidden}
@media(max-width:800px){.page-hero{padding-block:3.5rem}.page-hero::before{right:-220px}.page-hero::after{right:1rem}.program-grid{gap:.75rem}}

/* Las páginas internas entran directamente a su contenido. */
.page-hero{display:none}

.gallery-intro{padding:4.8rem 0 2.5rem;background:linear-gradient(120deg,#fff 0%,var(--blue-50) 100%);text-align:center}.gallery-intro .eyebrow{margin-inline:auto}.gallery-intro h1{max-width:680px;margin-inline:auto;font-size:clamp(2.25rem,4.5vw,4.2rem)}.gallery-intro p{max-width:590px;margin-inline:auto;color:var(--muted);font-size:1.08rem}.gallery-showcase{columns:3 280px;column-gap:1rem;padding-bottom:5rem}.gallery-photo{display:block;position:relative;width:100%;margin:0 0 1rem;padding:0;overflow:hidden;border:0;border-radius:1rem;background:var(--blue-950);cursor:zoom-in;break-inside:avoid}.gallery-photo::after{position:absolute;right:.7rem;bottom:.7rem;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:rgb(255 255 255 /.9);color:var(--blue-950);content:'↗';opacity:0;transform:translateY(4px);transition:.2s}.gallery-photo:hover::after,.gallery-photo:focus-visible::after{opacity:1;transform:none}.gallery-photo img{width:100%;height:auto;transition:transform .35s}.gallery-photo:hover img{transform:scale(1.04)}.gallery-dialog{width:min(1000px,calc(100% - 2rem));max-height:90vh;padding:0;border:0;border-radius:1rem;background:#000}.gallery-dialog::backdrop{background:rgb(0 0 0 /.82)}.gallery-dialog img{max-height:90vh;width:auto;margin:auto}.gallery-close,.gallery-arrow{position:absolute;z-index:1;display:grid;place-items:center;border:0;border-radius:50%;background:rgb(255 255 255 /.94);color:#08172f;cursor:pointer}.gallery-close{top:.75rem;right:.75rem;width:2.5rem;height:2.5rem;font-size:1.7rem;line-height:1}.gallery-arrow{top:50%;width:3rem;height:3rem;font-size:2.5rem;line-height:1;transform:translateY(-50%)}.gallery-prev{left:.75rem}.gallery-next{right:.75rem}.gallery-close:hover,.gallery-arrow:hover{background:white;transform:translateY(-2px)}.gallery-arrow:hover{transform:translateY(-50%) scale(1.06)}@media(max-width:600px){.gallery-intro{padding:3.5rem 0 1.75rem}.gallery-showcase{columns:2 150px;column-gap:.65rem}.gallery-photo{margin-bottom:.65rem}.gallery-arrow{width:2.5rem;height:2.5rem}.gallery-prev{left:.35rem}.gallery-next{right:.35rem}}
