.page { --navy:#071a31; --blue:#1e3b63; --gold:#ffb20f; --paper:#f5f1e6; --ink:#102945; overflow:clip; background:var(--paper); color:var(--ink); }
.brandLockup { display:flex; align-items:center; gap:13px; color:white; }
.brandLockup > img { width:52px; height:59px; object-fit:contain; }
.brandLockup > span { display:grid; }
.brandLockup b { font-family:var(--font-display); font-size:23px; line-height:1; }
.brandLockup small { max-width:190px; margin-top:5px; font-size:7px; font-weight:900; letter-spacing:.15em; line-height:1.35; opacity:.7; }
.hero { position:relative; min-height:900px; height:100svh; overflow:hidden; background:var(--navy); color:white; }
.heroImage { position:absolute; inset:-5%; background:url('../../images/academia-action.jpg') 58% 48%/cover no-repeat; filter:saturate(.82) contrast(1.08); transform:scale(1.02); }
.heroShade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,18,36,.98),rgba(4,18,36,.78) 46%,rgba(4,18,36,.12) 82%),linear-gradient(0deg,rgba(4,18,36,.92),transparent 55%); }
.nav { position:relative; z-index:3; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; width:min(1280px,calc(100% - 56px)); height:100px; margin:auto; border-bottom:1px solid rgba(255,255,255,.18); }
.nav > div { display:flex; gap:30px; color:rgba(255,255,255,.72); font-size:12px; font-weight:800; }
.navCta { justify-self:end; padding:16px 18px; background:var(--gold); color:var(--navy); font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.navCta span { margin-left:18px; }
.heroCopy { position:relative; z-index:2; width:min(1280px,calc(100% - 56px)); margin:clamp(95px,15vh,155px) auto 0; }
.eyebrow { display:block; margin-bottom:28px; color:var(--gold); font-size:10px; font-weight:900; letter-spacing:.22em; }
.hero h1 { max-width:1050px; margin:0; font-family:var(--font-display); font-size:clamp(5.6rem,min(10.4vw,14vh),9.8rem); line-height:.84; letter-spacing:-.06em; text-transform:uppercase; }
.hero h1 em { color:var(--gold); }
.heroCopy > p { max-width:570px; margin:30px 0; color:rgba(255,255,255,.76); font-size:18px; line-height:1.65; }
.heroCopy > a { display:flex; justify-content:space-between; width:260px; padding:19px 21px; background:var(--gold); color:var(--navy); font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.heroStatus { position:absolute; z-index:3; right:max(28px,calc((100% - 1280px)/2)); bottom:0; display:grid; width:360px; padding:25px 28px; background:rgba(7,26,49,.94); border-top:3px solid var(--gold); }
.heroStatus span { color:var(--gold); font-size:8px; font-weight:900; letter-spacing:.18em; }
.heroStatus b { margin:9px 0; font-family:var(--font-display); font-size:22px; }
.heroStatus i { color:rgba(255,255,255,.55); font-size:10px; font-style:normal; }
.orientation { display:grid; grid-template-columns:1fr 1.3fr; gap:90px; width:min(1280px,calc(100% - 56px)); margin:auto; padding:130px 0; }
.orientationTitle > span,.pathwayHead > div > span,.scheduleCopy > span,.trainingCopy > span,.familyCta span { display:block; margin-bottom:24px; color:#d98d00; font-size:9px; font-weight:900; letter-spacing:.2em; }
.orientation h2,.pathway h2,.schedule h2,.firstTraining h2,.familyCta h2 { margin:0; font-family:var(--font-display); font-size:clamp(3.3rem,5.8vw,6.2rem); line-height:.9; letter-spacing:-.055em; text-transform:uppercase; }
.orientationSteps { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(16,41,69,.18); border-bottom:1px solid rgba(16,41,69,.18); }
.orientationSteps article { min-height:280px; padding:28px 24px; border-right:1px solid rgba(16,41,69,.18); }
.orientationSteps article:last-child { border:0; }
.orientationSteps b { color:#d98d00; font-family:var(--font-display); font-size:14px; }
.orientationSteps h3 { margin:70px 0 16px; font-family:var(--font-display); font-size:20px; line-height:1.05; text-transform:uppercase; }
.orientationSteps p { margin:0; color:#60758a; font-size:12px; line-height:1.65; }
.pathway { padding:130px max(28px,calc((100% - 1280px)/2)); background:var(--blue); color:white; }
.pathwayHead { display:grid; grid-template-columns:1.25fr .75fr; align-items:end; gap:80px; margin-bottom:75px; }
.pathwayHead h2 em { color:var(--gold); }
.pathwayHead > p { margin:0; color:rgba(255,255,255,.63); font-size:16px; line-height:1.75; }
.explorer { border-top:1px solid rgba(255,255,255,.2); }
.filters { display:flex; flex-wrap:wrap; gap:8px; padding:25px 0; border-bottom:1px solid rgba(255,255,255,.2); }
.filters button { padding:10px 13px; border:1px solid rgba(255,255,255,.25); background:transparent; color:rgba(255,255,255,.65); font:inherit; font-size:9px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
.filters .filterActive { border-color:var(--gold); background:var(--gold); color:var(--navy); }
.teamRow { border-bottom:1px solid rgba(255,255,255,.2); }
.teamToggle { display:grid; grid-template-columns:50px 90px 1fr auto 35px; align-items:center; gap:20px; width:100%; min-height:105px; padding:0; border:0; background:transparent; color:white; text-align:left; cursor:pointer; }
.teamIndex { color:rgba(255,255,255,.35); font-size:9px; font-weight:900; }
.teamCode { color:var(--gold); font-family:var(--font-display); font-size:31px; }
.teamName { display:grid; font-family:var(--font-display); font-size:26px; text-transform:uppercase; }
.teamName small { margin-top:4px; color:rgba(255,255,255,.45); font-family:var(--font-body); font-size:8px; font-weight:900; letter-spacing:.14em; }
.pending { padding:8px 10px; border:1px solid rgba(255,178,15,.5); color:var(--gold); font-size:8px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.openMark { color:var(--gold); font-family:var(--font-display); font-size:26px; text-align:right; }
.teamOpen { background:rgba(255,255,255,.035); }
.teamDetails { display:grid; grid-template-columns:.8fr 1.2fr; gap:55px; padding:10px 0 55px 160px; }
.teamPhoto { min-height:390px; overflow:hidden; }
.teamPhoto img { width:100%; height:100%; object-fit:cover; }
.teamCopy > p { max-width:620px; color:rgba(255,255,255,.72); font-size:16px; line-height:1.7; }
.teamCopy dl { display:grid; grid-template-columns:1fr 1fr; margin:30px 0; border-top:1px solid rgba(255,255,255,.15); }
.teamCopy dl div { padding:17px 15px 17px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.teamCopy dt { color:rgba(255,255,255,.42); font-size:8px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.teamCopy dd { margin:7px 0 0; color:var(--gold); font-size:11px; font-weight:800; }
.teamActions { display:flex; align-items:center; gap:25px; }
.teamActions a:first-child { display:flex; justify-content:space-between; min-width:220px; padding:16px 18px; background:var(--gold); color:var(--navy); font-size:10px; font-weight:900; text-transform:uppercase; }
.teamActions a:last-child { font-size:10px; font-weight:900; text-transform:uppercase; }
.dataNote { max-width:900px; margin:28px 0 0; color:rgba(255,255,255,.48); font-size:10px; line-height:1.65; }
.dataNote b { color:var(--gold); text-transform:uppercase; }
.schedule { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:100px; overflow:hidden; padding:140px max(28px,calc((100% - 1280px)/2)); background:var(--gold); }
.scheduleMark { position:absolute; top:-6vw; left:-2vw; color:rgba(7,26,49,.08); font-family:var(--font-display); font-size:32vw; line-height:1; }
.scheduleCopy,.scheduleBoard { position:relative; z-index:1; }
.scheduleCopy > span { color:var(--navy); }
.scheduleCopy h2 em { color:white; }
.scheduleCopy > p { max-width:580px; margin:34px 0; font-size:17px; line-height:1.75; }
.scheduleCopy > a { display:flex; justify-content:space-between; width:285px; padding:18px 20px; background:var(--navy); color:white; font-size:10px; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.scheduleBoard { align-self:center; padding:25px; background:var(--navy); color:white; box-shadow:22px 22px 0 rgba(7,26,49,.18); }
.boardTop { display:flex; justify-content:space-between; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.2); font-size:8px; font-weight:900; letter-spacing:.14em; }
.boardTop b { color:var(--gold); }
.boardPitch { position:relative; display:grid; grid-template-columns:repeat(3,1fr); min-height:300px; margin-top:20px; border:1px solid rgba(255,255,255,.35); }
.boardPitch > div { position:relative; z-index:1; display:grid; align-content:center; justify-items:center; border-right:1px solid rgba(255,255,255,.2); }
.boardPitch > div:last-child { border:0; }
.boardPitch small { color:rgba(255,255,255,.42); font-size:8px; font-weight:900; letter-spacing:.15em; }
.boardPitch b { margin-top:9px; color:var(--gold); font-family:var(--font-display); font-size:20px; }
.halfway { position:absolute; top:50%; right:0; left:0; height:1px; background:rgba(255,255,255,.2); }
.scheduleBoard > p { margin:20px 0 0; color:rgba(255,255,255,.5); font-size:10px; line-height:1.6; }
.firstTraining { display:grid; grid-template-columns:1fr 1fr; min-height:840px; background:var(--paper); }
.trainingPhoto { min-height:840px; overflow:hidden; }
.trainingPhoto img { width:100%; height:100%; object-fit:cover; object-position:center 46%; }
.trainingCopy { align-self:center; padding:90px clamp(35px,7vw,105px); }
.trainingCopy ol { margin:45px 0; padding:0; list-style:none; }
.trainingCopy li { display:grid; grid-template-columns:38px 1fr; gap:18px; padding:20px 0; border-top:1px solid rgba(16,41,69,.17); }
.trainingCopy li:last-child { border-bottom:1px solid rgba(16,41,69,.17); }
.trainingCopy li > b { color:#d98d00; font-family:var(--font-display); font-size:23px; }
.trainingCopy strong { font-family:var(--font-display); font-size:16px; text-transform:uppercase; }
.trainingCopy li p { margin:7px 0 0; color:#60758a; font-size:12px; line-height:1.65; }
.trainingActions { display:flex; align-items:center; gap:25px; }
.trainingActions a:first-child { display:flex; justify-content:space-between; min-width:225px; padding:17px 19px; background:var(--gold); font-size:10px; font-weight:900; text-transform:uppercase; }
.trainingActions a:last-child { font-size:10px; font-weight:900; text-transform:uppercase; }
.familyCta { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:90px; padding:110px max(28px,calc((100% - 1280px)/2)); background:var(--blue); color:white; }
.familyCta h2 { font-size:clamp(4rem,7vw,7.5rem); }
.familyCta p { margin:0 0 28px; color:rgba(255,255,255,.65); font-size:16px; line-height:1.7; }
.familyCta a { display:flex; justify-content:space-between; padding:19px 21px; background:var(--gold); color:var(--navy); font-size:10px; font-weight:900; text-transform:uppercase; }
.footer { display:grid; grid-template-columns:1.4fr 1fr auto; align-items:center; gap:50px; padding:60px max(28px,calc((100% - 1280px)/2)); background:#041426; color:white; }
.footer p { margin:0; color:rgba(255,255,255,.48); font-size:11px; line-height:1.6; }
.footer > div { display:flex; gap:25px; color:rgba(255,255,255,.62); font-size:10px; font-weight:800; }
@media(max-width:960px){
  .nav{grid-template-columns:1fr auto}.nav>div{display:none}.orientation{grid-template-columns:1fr;gap:55px}.pathwayHead{grid-template-columns:1fr;gap:30px}.teamDetails{padding-left:0}.schedule{grid-template-columns:1fr;gap:70px}.scheduleBoard{max-width:700px}.firstTraining{grid-template-columns:.85fr 1.15fr}.familyCta{grid-template-columns:1fr 1fr;gap:50px}.footer{grid-template-columns:1fr 1fr}.footer>div{grid-column:1/-1}
}
@media(max-width:640px){
  .brandLockup>img{width:42px;height:48px}.brandLockup small{display:none}.nav{width:calc(100% - 32px);height:82px}.navCta{padding:13px;font-size:8px}.hero{min-height:780px}.heroImage{background-position:48% center}.heroCopy{width:calc(100% - 32px);margin-top:100px}.hero h1{font-size:clamp(4.2rem,20vw,6rem)}.heroCopy>p{font-size:16px}.heroStatus{right:0;left:0;width:auto;padding:20px 16px}.orientation{width:calc(100% - 32px);padding:85px 0}.orientation h2,.pathway h2,.schedule h2,.firstTraining h2,.familyCta h2{font-size:clamp(3rem,14vw,4.4rem)}.orientationSteps{grid-template-columns:1fr}.orientationSteps article{min-height:auto;padding:24px 0;border-right:0;border-bottom:1px solid rgba(16,41,69,.18)}.orientationSteps h3{margin:30px 0 12px}.pathway{padding:85px 16px}.pathwayHead{margin-bottom:50px}.filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:18px}.filters button{flex:0 0 auto}.teamToggle{grid-template-columns:32px 52px 1fr 28px;gap:10px;min-height:90px}.teamIndex{display:none}.teamCode{font-size:24px}.teamName{font-size:19px}.pending{display:none}.teamDetails{grid-template-columns:1fr;gap:25px;padding:0 0 35px}.teamPhoto{min-height:260px}.teamCopy dl{grid-template-columns:1fr}.teamActions{align-items:flex-start;flex-direction:column;gap:18px}.schedule{padding:85px 16px}.scheduleCopy>p{font-size:16px}.scheduleBoard{padding:18px;box-shadow:12px 12px 0 rgba(7,26,49,.18)}.boardPitch{grid-template-columns:1fr;min-height:auto}.boardPitch>div{padding:35px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.halfway{display:none}.firstTraining{grid-template-columns:1fr}.trainingPhoto{min-height:500px}.trainingCopy{padding:80px 16px}.trainingActions{align-items:flex-start;flex-direction:column}.familyCta{grid-template-columns:1fr;gap:45px;padding:85px 16px}.footer{grid-template-columns:1fr;gap:30px;padding:50px 16px}.footer>div{grid-column:auto;flex-wrap:wrap}
}

@media(max-width:380px){
  .nav{width:calc(100% - 28px)}.brandLockup>span{display:none}.hero{min-height:730px}.heroCopy{width:calc(100% - 28px);margin-top:82px}.hero h1{font-size:clamp(3.35rem,17vw,3.8rem)}.heroCopy>a{width:100%}
  .orientation{width:calc(100% - 28px)}.orientation h2,.pathway h2,.schedule h2,.firstTraining h2,.familyCta h2{font-size:clamp(2.55rem,13vw,3rem)}
  .pathway,.schedule,.trainingCopy,.familyCta{padding-inline:14px}.teamToggle{grid-template-columns:44px 1fr 24px}.teamCode{font-size:21px}.teamName{font-size:17px}.scheduleCopy>a{width:100%}.scheduleBoard{box-shadow:9px 9px 0 rgba(7,26,49,.18)}.trainingPhoto{min-height:420px}
}

.hero h1{font-size:clamp(4.7rem,min(8.6vw,13vh),8.2rem)}
.orientation h2,.pathway h2,.schedule h2,.firstTraining h2,.familyCta h2{font-size:clamp(3rem,5.1vw,5.4rem)}
.familyCta h2{font-size:clamp(3.4rem,5.9vw,6.2rem)}
@media(max-width:640px){.hero h1{font-size:clamp(3rem,14vw,4.35rem)}.orientation h2,.pathway h2,.schedule h2,.firstTraining h2,.familyCta h2{font-size:clamp(2.45rem,11.5vw,3.35rem)}}
@media(min-width:641px){
  .hero{height:clamp(600px,calc(100svh - 96px),760px);min-height:600px}
  .heroCopy{display:flex;flex-direction:column;justify-content:center;height:100%;margin:0 auto;padding-bottom:20px}
}
