/* Reference-inspired opening: native text on an angled brand-purple panel, video behind the right side. */
.home-hero{position:relative;isolation:isolate;min-height:0;overflow:hidden;background:#30234f;color:#fff;border-bottom:0}
.home-hero .hero-film{position:absolute;inset:0 -15% 0 auto;width:83%;margin:0;max-width:none;background:#eee9f7}
.home-hero .hero-film video{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center;display:block}
.home-hero .hero-film video{pointer-events:none}
.home-hero .hero-film video::-webkit-media-controls,.home-hero .hero-film video::-webkit-media-controls-start-playback-button{display:none!important}
.home-hero .hero-film .hero-film-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
.home-hero .hero-film [hidden]{display:none!important}
.hero-film:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#49327960,#40305412 45%,#41326320);pointer-events:none}
.hero-plane{position:absolute;z-index:1;inset:0 auto 0 0;width:58%;background:linear-gradient(120deg,#8970ca 0%,#6249a7 52%,#3a2d69 100%);clip-path:polygon(0 0,100% 0,63% 100%,0 100%)}
.hero-plane:before{content:"";position:absolute;inset:0;background:linear-gradient(41deg,transparent 47%,#8c72d155 47%,#3c2a7159 66%,transparent 66%),linear-gradient(142deg,transparent 38%,#ffffff07 38%,#ffffff07 63%,transparent 63%)}
.hero-intro{position:relative;z-index:2;width:48%;max-width:675px;padding:44px 0 44px clamp(32px,3.5vw,72px)}
.hero-kicker{font-size:20px;font-weight:800;line-height:1.7;letter-spacing:.015em;margin-bottom:18px}
.hero-intro h1{font-size:clamp(40px,3.65vw,58px);line-height:1.38;letter-spacing:-.04em;font-weight:900;margin:0 0 19px}
.hero-intro h1>span{display:table;padding:0 9px 3px;margin:0 0 5px;background:#34234f;box-decoration-break:clone;transform:skew(-7deg)}
.hero-intro h1>span>b{display:block;transform:skew(7deg);font:inherit}
.hero-intro h1>span:last-child{color:#eed2ff}
.hero-summary{font-size:14px;line-height:1.85;font-weight:600;margin:0 0 23px;letter-spacing:0}
.hero-badges{display:flex;align-items:center;gap:10px}
.hero-badges>div{width:114px;aspect-ratio:1;border:4px solid #c6b4e5;border-radius:50%;background:#fff;color:#483663;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;line-height:1.5;box-shadow:0 3px 0 #35204f16}
.hero-badges small{font-size:11px;font-weight:700;white-space:nowrap}
.hero-badges strong{font-size:24px;font-weight:900;letter-spacing:-.05em;color:#6850ad}
.hero-badges strong span{font-size:16px}
.hero-evidence{position:absolute;z-index:3;left:42%;right:32px;bottom:32px;background:#fff;color:#443355;border-radius:7px;overflow:hidden;box-shadow:0 12px 30px #32204433;text-align:center}
.hero-evidence-head{background:#302440;color:#fff;padding:12px 18px;font-size:20px;line-height:1.5;font-weight:800;letter-spacing:.01em}
.hero-evidence-head strong{font-size:27px;color:#eed2ff;margin:0 3px;font-family:Arial,sans-serif;letter-spacing:-.04em}
.hero-evidence-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;padding:17px 12px 10px;align-items:center}
.hero-evidence-grid>div{padding:0 10px;position:relative}
.hero-evidence-grid>div+div{border-left:1px solid #e9e3f0}
.hero-evidence-grid dt{font-size:11px;font-weight:800;color:#57495f;line-height:1.5;white-space:nowrap}
.hero-evidence-grid dd{font:800 42px/1.2 Arial,sans-serif;color:#6c50b0;letter-spacing:-1.5px;margin:2px 0 0;white-space:nowrap}
.hero-evidence-grid dd small{font-size:13px;letter-spacing:0;margin-left:3px}
.hero-evidence-grid .hero-duration{font-size:30px;line-height:1.68}
.hero-evidence-grid .hero-duration small{font-size:11px;margin:0 2px}
.hero-evidence-note{font-size:10px;line-height:1.7;padding:0 13px 12px;margin:0;color:#81738a}
.hero-evidence-note span{color:#6850ad;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;margin-left:8px}
.hero-evidence:hover .hero-evidence-note span{color:#42248c}
.home-hero a:focus-visible{outline:3px solid #bca3ed;outline-offset:-4px}
.camp-navigation-page .camp-rail .rail-link:hover,.camp-navigation-page .camp-rail .rail-link.is-current,.camp-navigation-page .camp-rail .rail-link.is-current small{color:#6850ad}
.camp-navigation-page .camp-rail .rail-consult{background:#6850ad}
.home-showcase{background:#302440;padding-top:24px}
.home-showcase .showcase-intro{justify-content:center;margin-bottom:31px}
.home-showcase .hero-actions{flex-direction:row;gap:12px;width:min(584px,100%)}
.home-showcase .hero-actions .btn{flex:1;min-width:0;min-height:51px;border-radius:5px;font-size:14px}
.home-showcase .hero-actions .white{color:#6149af;border:2px solid #9f86d9;background:#fff}
.home-showcase .hero-actions .orange{background:#7154c5;border-color:#7154c5}
@media(min-width:1600px){.hero-intro{padding-block:50px}.hero-evidence{left:44%;right:max(32px,calc((100vw - 1536px)/2));bottom:38px}.hero-evidence-head{font-size:24px}}
@media(min-width:881px) and (max-width:1179px){
 .home-hero .hero-film{right:-17.5%}
 .hero-plane{width:64%;clip-path:polygon(0 0,100% 0,62% 100%,0 100%)}
 .hero-intro{padding-left:32px;width:51%;padding-block:40px}.hero-kicker{font-size:16px}.hero-intro h1{font-size:42px}.hero-summary{font-size:12px}.hero-badges{gap:8px}.hero-badges>div{width:98px}.hero-badges small{font-size:10px}.hero-badges strong{font-size:22px}
 .hero-evidence{left:44%;right:20px;bottom:30px}.hero-evidence-head{font-size:15px;padding:12px 10px}.hero-evidence-head strong{font-size:23px}.hero-evidence-grid{padding-inline:4px}.hero-evidence-grid>div{padding-inline:5px}.hero-evidence-grid dd{font-size:34px}.hero-evidence-grid .hero-duration{font-size:25px;line-height:1.64}.hero-evidence-grid dt{font-size:10px}.hero-evidence-note{font-size:9px}
}
@media(max-width:880px){
 .home-hero{min-height:0;display:flex;flex-direction:column;background:#48366d;padding-bottom:22px}
 .hero-plane{width:100%;height:460px;clip-path:polygon(0 0,100% 0,100% 85%,0 100%)}
 .hero-intro{width:100%;max-width:600px;align-self:center;padding:30px 24px;order:0}
 .hero-kicker{font-size:16px;margin-bottom:18px}
 .hero-intro h1{font-size:36px;line-height:1.32;margin-bottom:13px}.hero-intro h1>span{padding:0 8px 2px;margin-bottom:4px}
 .hero-summary{font-size:12px;line-height:1.8;margin-bottom:17px}
 .hero-badges{gap:9px}.hero-badges>div{width:94px;border-width:3px}.hero-badges small{font-size:10px}.hero-badges strong{font-size:21px}.hero-badges strong span{font-size:14px}
 .home-hero .hero-film{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:16/9;order:1;z-index:0;margin-top:-8px}.home-hero .hero-film video{position:absolute;inset:0;height:100%;object-fit:contain;object-position:center;transform:none}.home-hero .hero-film .hero-film-fallback{object-fit:contain}.hero-film:after{background:linear-gradient(#48366d30,#48366d10)}
 .hero-evidence{position:relative;inset:auto;order:2;width:calc(100% - 32px);max-width:600px;margin:-32px auto 0;border-radius:5px}
 .hero-evidence-head{font-size:14px;padding:9px 6px}.hero-evidence-head strong{font-size:22px}
 .hero-evidence-grid{padding:12px 3px 7px}.hero-evidence-grid>div{padding:0 3px}.hero-evidence-grid dt{font-size:9px}.hero-evidence-grid dd{font-size:30px;letter-spacing:-1px}.hero-evidence-grid dd small{font-size:10px;margin-left:2px}.hero-evidence-grid .hero-duration{font-size:21px;line-height:1.7;letter-spacing:-.6px}.hero-evidence-grid .hero-duration small{font-size:9px;margin:0 1px}
 .hero-evidence-note{font-size:9px;padding:0 9px 10px;line-height:1.7}.hero-evidence-note span{display:inline-block}
 .home-showcase{padding-top:7px}.home-showcase .showcase-intro{margin-bottom:23px}.home-showcase .hero-actions{margin-top:0;gap:9px}.home-showcase .hero-actions .btn{font-size:12px;min-height:48px;padding:10px 9px}
}
@media(max-width:374px){.hero-intro{padding-inline:19px}.hero-kicker{font-size:15px}.hero-intro h1{font-size:31px}.hero-badges>div{width:90px}.hero-evidence-head{font-size:12px}.hero-evidence-head strong{font-size:20px}.hero-evidence-grid dt{font-size:8px}.hero-evidence-grid dd{font-size:28px}.hero-evidence-grid .hero-duration{font-size:19px}}

/* Curriculum breadth follows the opening; the OP now fills its entire right side. */
.curriculum-highlights{padding:48px 0 0;background:#fff}
.curriculum-highlights .hero-evidence{position:relative;display:block;inset:auto;width:calc(100% - 64px);max-width:1160px;margin:0 auto;border:1px solid #e8e0ef;box-shadow:0 12px 32px #38294d12}
.camp-navigation-page #campus{padding-top:58px}
@media(max-width:880px){.curriculum-highlights{padding-top:32px}.curriculum-highlights .hero-evidence{width:calc(100% - 32px);margin:0 auto}.camp-navigation-page #campus{padding-top:44px}}
