
:root{
  --navy:#07111f;
  --navy2:#0c1b2f;
  --green:#26b172;
  --green2:#65d7a3;
  --white:#f6f9fb;
  --muted:#9eacb9;
  --line:rgba(255,255,255,.13);
  --orange:#ff632d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--navy);color:var(--white);font-family:Inter,Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
::selection{background:var(--green);color:var(--navy)}

.nav{position:fixed;z-index:50;top:0;left:0;right:0;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:linear-gradient(to bottom,rgba(3,9,17,.82),transparent);transition:.3s}
.nav.scrolled{background:rgba(4,11,20,.92);backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}
.mark{font-family:"Barlow Condensed";font-weight:900;font-size:28px;letter-spacing:-.04em}
.mark span{color:white}.mark b{color:var(--green)}
.nav-links{display:flex;align-items:center;gap:28px;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.12em}
.nav-links a{opacity:.78;transition:.2s}.nav-links a:hover{opacity:1;color:var(--green)}
.nav-contact{border:1px solid rgba(255,255,255,.35);padding:10px 15px;border-radius:999px}
.nav-toggle{display:none;background:none;color:white;border:0;font-weight:800;font-size:11px;letter-spacing:.12em}

.hero{height:100svh;min-height:680px;position:relative;display:grid;overflow:hidden}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 12%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,18,.94) 0%,rgba(3,10,18,.78) 36%,rgba(3,10,18,.18) 68%,rgba(3,10,18,.30) 100%),linear-gradient(0deg,rgba(3,10,18,.72),transparent 45%)}
.hero-grid{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;padding:0 6vw 8vh}
.hero-copy{max-width:760px}
.overline{text-transform:uppercase;color:var(--green2);font-size:11px;letter-spacing:.18em;font-weight:800}
.hero h1,.section h2,.gallery-copy h2{font-family:"Barlow Condensed";font-weight:900;text-transform:uppercase;line-height:.96;letter-spacing:-.055em;margin:15px 0 20px}
.hero h1{font-size:clamp(78px,12vw,180px)}
.hero h1 span{-webkit-text-stroke:1.5px white;color:transparent}
.hero-meta{font-family:"Barlow Condensed";font-size:clamp(21px,2vw,32px);font-weight:700;letter-spacing:.03em}
.hero-meta i{color:var(--green);font-style:normal;padding:0 6px}
.hero-statement{font-size:clamp(16px,1.6vw,22px);color:#d2dae1;margin:0 0 28px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 19px;border-radius:3px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.btn.primary{background:var(--green);color:#04110b}
.btn.ghost{border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.04)}
.scroll-cue{display:flex;flex-direction:column;gap:8px;align-items:center;font-size:9px;letter-spacing:.18em;font-weight:800}
.scroll-cue b{font-size:24px;color:var(--green)}

.ticker{display:grid;grid-template-columns:repeat(5,1fr);background:var(--green);color:#04140d}
.ticker div{text-align:center;padding:25px 12px;border-right:1px solid rgba(0,0,0,.18)}
.ticker strong{font-family:"Barlow Condensed";font-size:38px;display:block;line-height:1}
.ticker span{text-transform:uppercase;font-size:9px;letter-spacing:.12em;font-weight:800}

.section{padding:120px 7vw;background:#f4f7f8;color:#0a1522}
.section.dark{background:var(--navy);color:white}
.section-heading{max-width:900px}
.section h2,.gallery-copy h2{font-size:clamp(58px,8vw,112px)}
.section-heading>p:last-child{max-width:670px;color:#66727d;font-size:17px;line-height:1.75}
.dark .section-heading>p:last-child{color:#aab5c0}

.film-shell{margin-top:45px;max-width:1280px}
.video-mount{position:relative;aspect-ratio:16/8.5;background:#02070c;overflow:hidden;border-radius:2px;box-shadow:0 25px 65px rgba(0,0,0,.2)}
.video-mount>img{width:100%;height:100%;object-fit:cover;filter:brightness(.45)}
.video-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}
.video-overlay .play-icon{display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:var(--green);color:#04110b;font-size:27px;padding-left:5px;margin-bottom:16px}
.video-overlay h3{font-family:"Barlow Condensed";font-size:46px;text-transform:uppercase;margin:0}
.video-overlay p{max-width:540px;color:#d0d9e1}
.video-overlay code{color:var(--green2)}
.video-mount iframe{width:100%;height:100%;border:0}

.split{display:grid;grid-template-columns:1fr 1.15fr;gap:9vw;align-items:center}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.profile-grid article{min-height:140px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end}
.profile-grid span,.academics-card span,.contact-grid span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#92a1af;font-weight:800}
.profile-grid strong{font-family:"Barlow Condensed";font-size:34px;text-transform:uppercase}

.gallery-section{display:grid;grid-template-columns:.72fr 1.28fr;background:#0b1829;min-height:760px}
.gallery-copy{padding:100px 5vw;display:flex;flex-direction:column;justify-content:center}
.gallery-copy h2{font-size:clamp(64px,7vw,108px)}
.gallery-copy>p:last-child{color:#aab5c0;line-height:1.7}
.gallery-stage{position:relative;min-height:720px;overflow:hidden}
.gallery-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .4s ease, transform .8s ease}
.gallery-stage.change img{opacity:.25;transform:scale(1.02)}
.gallery-controls{position:absolute;right:28px;bottom:28px;background:rgba(3,10,18,.86);backdrop-filter:blur(8px);display:flex;align-items:center}
.gallery-controls button{width:58px;height:58px;background:transparent;border:0;color:white;font-size:22px;cursor:pointer}
.gallery-controls div{min-width:95px;text-align:center;font-family:"Barlow Condensed";font-size:22px}
.gallery-controls b{color:var(--green);padding:0 8px}

.schedule-list{margin-top:50px;border-top:1px solid #ced6dc}
.event{display:grid;grid-template-columns:145px 1fr 200px 55px;gap:25px;align-items:center;padding:25px 0;border-bottom:1px solid #ced6dc}
.event-date{font-family:"Barlow Condensed";font-weight:900;font-size:30px;text-transform:uppercase}
.event h3{font-family:"Barlow Condensed";font-size:30px;text-transform:uppercase;margin:0}
.event p{margin:3px 0 0;color:#697581}
.event-team{text-align:right;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.event-arrow{font-size:27px;color:var(--green);text-align:right}

.academics-card{border:1px solid var(--line)}
.academics-card div{padding:24px 26px;border-bottom:1px solid var(--line)}
.academics-card div:last-child{border-bottom:0}
.academics-card strong{display:block;font-family:"Barlow Condensed";font-size:31px;text-transform:uppercase;margin-top:5px}

.statement-section{position:relative;height:min(900px,90vh);min-height:650px;display:flex;align-items:center}
.statement-section img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.statement-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,18,.9),rgba(3,10,18,.22))}
.statement{position:relative;z-index:2;max-width:830px;padding:0 7vw}
.statement p{font-family:"Barlow Condensed";font-weight:800;font-size:clamp(44px,6vw,84px);line-height:.96;text-transform:uppercase;margin:0}
.statement span{display:block;margin-top:25px;color:var(--green2);font-size:11px;font-weight:800;letter-spacing:.15em}

.contact{background:#e7eef1}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}
.contact-grid a{background:white;padding:28px;min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid #d8e0e5;transition:.25s}
.contact-grid a:hover{transform:translateY(-5px);box-shadow:0 18px 35px rgba(5,18,29,.09)}
.contact-grid strong{font-family:"Barlow Condensed";font-size:30px;text-transform:uppercase;margin:7px 0}
.contact-grid small{color:#64727e}

footer{background:#030a12;padding:32px 6vw;display:flex;align-items:center;justify-content:space-between;color:#8996a3;font-size:11px;letter-spacing:.05em}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:none}

@media(max-width:850px){
  .nav{height:64px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:64px;left:0;right:0;background:#06101c;padding:24px;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}
  .hero-image{object-position:57% 10%}
  .hero-shade{background:linear-gradient(0deg,rgba(3,10,18,.96) 0%,rgba(3,10,18,.55) 55%,rgba(3,10,18,.20) 100%)}
  .hero-grid{align-items:flex-end;padding:0 22px 55px}
  .hero h1{font-size:clamp(76px,25vw,130px)}
  .scroll-cue{display:none}
  .ticker{grid-template-columns:repeat(2,1fr)}.ticker div:last-child{grid-column:1/-1}
  .section{padding:82px 22px}
  .split{grid-template-columns:1fr;gap:45px}
  .gallery-section{grid-template-columns:1fr}.gallery-copy{padding:80px 22px 45px}.gallery-stage{min-height:62vh}
  .event{grid-template-columns:105px 1fr 30px}.event-team{display:none}.event-date{font-size:25px}.event h3{font-size:25px}
  .contact-grid{grid-template-columns:1fr}
  footer{flex-direction:column;gap:12px;text-align:center}
}
@media(max-width:500px){
  .hero-meta{font-size:21px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .btn{width:100%}
  .ticker strong{font-size:30px}
  .video-mount{aspect-ratio:9/12}
  .video-mount>img{object-position:47% center}
  .video-overlay h3{font-size:38px}
  .profile-grid{grid-template-columns:1fr 1fr}.profile-grid article{min-height:115px;padding:20px}.profile-grid strong{font-size:27px}
  .statement{padding:0 22px}.statement-section{min-height:620px}
}

.training{background:#eef3f5}
.training-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:48px}
.training-card{position:relative;background:white;border:1px solid #d9e1e6;min-height:210px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.training-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--green)}
.training-card span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#71808d;font-weight:800}
.training-card h3{font-family:"Barlow Condensed";font-size:40px;line-height:.95;text-transform:uppercase;margin:10px 0 7px}
.training-card p{margin:0;color:#62717d;font-weight:700}
.featured-training{background:var(--navy);color:white;border-color:var(--navy)}
.featured-training span{color:var(--green2)} .featured-training p{color:#c2ced7}
.training-note{margin:20px 0 0;color:#7a8791;font-size:11px}
@media(max-width:700px){.training-grid{grid-template-columns:1fr}.training-card{min-height:170px}}

/* Review refinements */
.section h2,.gallery-copy h2{line-height:1.02 !important;margin-top:18px;margin-bottom:24px}
.hero h1{line-height:.88 !important}

.winter-training{grid-column:1/-1;margin-top:28px;border-left:4px solid var(--green);padding:20px 24px;background:rgba(255,255,255,.045)}
.winter-training span{display:block;color:var(--green2);font-size:9px;letter-spacing:.15em;text-transform:uppercase;font-weight:800;margin-bottom:7px}
.winter-training strong{display:block;font-family:"Barlow Condensed";font-size:28px;text-transform:uppercase}
.winter-training p{margin:7px 0 0;color:#aab5c0;line-height:1.65}


/* FINAL HEADING READABILITY FIX
   Deliberately more open than the original NIL-style typography. */
.hero h1{
  line-height:1.00 !important;
  letter-spacing:-0.025em !important;
}
.section h2,
.gallery-copy h2{
  line-height:1.16 !important;
  letter-spacing:-0.025em !important;
  margin-top:20px !important;
  margin-bottom:30px !important;
}
.statement p{
  line-height:1.10 !important;
  letter-spacing:-0.02em !important;
}
.training-card h3,
.event h3,
.academics-card strong,
.profile-grid strong,
.contact-grid strong{
  line-height:1.10 !important;
}
@media(max-width:850px){
  .hero h1{line-height:1.02 !important;}
  .section h2,.gallery-copy h2{line-height:1.14 !important;}
}
