/* Clear film presentation: copy sits below the unfiltered picture. */
.hero{--film-height:min(56.25vw,65svh);display:block;min-height:0;height:auto;max-height:none;overflow:hidden;padding-top:var(--film-height);background:var(--navy);color:inherit}
.hero .hero-shade{display:none;background:none}
.hero .campus-stage,.hero>.hero-image{top:0;bottom:auto;height:var(--film-height);z-index:0;filter:none;opacity:1}
.hero .campus-panel img,.hero .campus-panel video,.hero>.hero-image{object-fit:contain;object-position:center;background:#07131d;filter:none}
.hero .hero-content{position:relative;z-index:1;width:auto;max-width:none;padding:28px 6vw 22px;background:var(--navy);display:grid;grid-template-columns:1.1fr 1fr;gap:0 5vw}
.hero .hero-content>.eyebrow{grid-column:1/-1;max-width:none;font-size:.65rem;letter-spacing:.12em;margin-bottom:12px;color:var(--muted)}
.hero .hero-content h1{grid-column:1;grid-row:2/5;align-self:start;max-width:650px;margin:0;font-size:clamp(1.7rem,2.8vw,2.8rem);line-height:1.12;text-wrap:initial}
.hero .hero-content>p{grid-column:2;max-width:620px;font-size:.9rem;line-height:1.6;margin:0 0 18px;color:var(--muted)}
.hero .hero-actions{grid-column:2;gap:14px 22px;align-items:center;flex-direction:row}
.hero .hero-actions .button{padding:13px 18px;width:auto;max-width:none;min-height:44px;gap:22px}
.hero .hero-actions .text-link{font-size:.8rem;color:inherit}
.hero .intro-link{grid-column:2;justify-self:start;margin-top:13px;color:inherit;font-size:.78rem;min-height:44px}
.hero .hero-bottom{position:relative;inset:auto;z-index:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0 6vw 18px;background:var(--navy);color:var(--muted);gap:20px}
.hero .hero-concept-label{margin:0;text-align:right;font-size:.62rem}
.hero .hero-concept-label small{color:var(--muted);font-size:.62rem}
.hero .hero-carousel-controls{position:absolute;top:18px;right:4vw;bottom:auto;left:auto;margin:0;z-index:3;max-width:calc(100% - 8vw)}
html[data-theme=light] .hero{--cyan:#007e99;color:#092737}
html[data-theme=light] .hero .hero-content p{color:#496371}
html[data-theme=light] .hero .hero-actions .button{background:#007e99;border-color:#007e99;color:#fff}
@media(max-width:900px){
 .hero{--film-height:56.25vw}
 .hero .hero-content{padding-top:24px;grid-template-columns:1fr;gap:0}
 .hero .hero-content h1{grid-column:1;grid-row:auto;font-size:clamp(1.65rem,4.7vw,2.65rem);margin-bottom:18px;max-width:none}
 .hero .hero-content>p,.hero .hero-actions,.hero .intro-link{grid-column:1}
 .hero .hero-content>p{max-width:620px}
 .hero .hero-carousel-controls{top:12px;right:4vw;width:362px;max-width:46vw}
}
@media(max-width:520px){
 .hero .hero-content>.eyebrow{font-size:.58rem;letter-spacing:.075em}
 .hero .hero-content h1{font-size:clamp(1.6rem,6.2vw,2rem)}
 .hero .hero-content>p{font-size:.875rem}
 .hero .hero-actions{gap:12px 18px}
 .hero .hero-actions .button{font-size:.7rem;padding:12px 14px}
 .hero .hero-actions .text-link{font-size:.75rem}
 .hero .hero-bottom{align-items:flex-start;gap:10px}
 .hero .hero-bottom>a{font-size:.65rem;gap:10px}
 .hero .hero-concept-label{max-width:130px}
 .hero .hero-carousel-controls{top:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;width:250px;max-width:70vw}
 .hero .hero-carousel-controls button{min-height:44px;font-size:10px;padding:4px 2px}
}
