@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--bg:#061a16;--ink:#f5f7f4;--mint:#a5d99f;--muted:#b6c6be;--line:rgba(216,255,238,.26)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.header{position:absolute;z-index:20;top:0;left:0;right:0;padding:18px clamp(18px,4.5vw,72px)}.nav{height:58px;max-width:1440px;margin:auto;position:relative;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(213,255,239,.5);border-radius:50px;background:linear-gradient(95deg,rgba(30,87,67,.30),rgba(11,36,31,.33),rgba(28,83,64,.28));box-shadow:inset 0 1px 12px rgba(225,255,243,.08),0 0 22px rgba(97,184,144,.09);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:0 24px}.nav-group{display:flex;align-items:center;gap:clamp(12px,2vw,32px);width:42%}.nav-group.right{justify-content:flex-end}.nav-group a{font-size:clamp(10px,.87vw,13px);font-weight:800;white-space:nowrap;letter-spacing:.015em;transition:color .2s}.nav-group a:hover{color:var(--mint)}.brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:112px;height:52px}.brand img{display:block;width:92px;height:48px;object-fit:contain}.menu-toggle,.mobile-links{display:none}.hero{min-height:760px;min-height:100svh;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;padding:145px clamp(25px,6.6vw,110px) 75px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 79% 55%,rgba(25,105,73,.49),transparent 42%),radial-gradient(ellipse at 44% 0%,rgba(13,75,52,.26),transparent 45%),linear-gradient(115deg,#05130f,#071e18 62%,#061913)}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.12;background-image:radial-gradient(#fff .55px,transparent .55px);background-size:6px 6px}.hero-copy,.hero-art{position:relative;z-index:1}.eyebrow,.school,.section-kicker{letter-spacing:.2em;font-size:12px;font-weight:800}.eyebrow{display:flex;align-items:center;gap:15px;margin:0 0 65px}.dot{width:10px;height:10px;border-radius:50%;background:#e44748}.school{color:var(--mint);font-size:clamp(13px,1.35vw,19px);margin:0 0 28px}.school span{color:#dd6768}.hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(50px,6.2vw,104px);line-height:1.05;letter-spacing:-.072em;margin:0;font-weight:800;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--mint)}.intro{font-size:clamp(15px,1.4vw,20px);line-height:1.8;max-width:630px;margin:37px 0}.buttons{display:flex;gap:15px;flex-wrap:wrap}.btn{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;padding:19px 23px;border-radius:4px;font-size:12px;font-weight:800;letter-spacing:.04em;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.primary{background:#078546;color:white}.outline{border:1px solid #90a69a;background:rgba(0,0,0,.1)}.hero-foot{margin:72px 0 0;font-size:10px;font-weight:800;letter-spacing:.2em;color:#9cafa5}.hero-foot span{color:#e04a4e;padding:0 12px}.hero-art{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 0 0}.emblem{width:min(37vw,520px);aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 0 90px rgba(113,218,165,.17);overflow:hidden}.emblem img{width:87%;height:75%;object-fit:contain}.emblem-caption{display:flex;gap:16px;align-items:center;margin-top:22px;align-self:center}.emblem-caption strong{font-size:58px;letter-spacing:-.09em}.emblem-caption span{font-size:11px;font-weight:800;letter-spacing:.13em;line-height:1.5}.section{padding:105px clamp(25px,6.6vw,110px);border-top:1px solid rgba(255,255,255,.08);scroll-margin-top:30px}.section-kicker{color:var(--mint);margin:0 0 20px}.section h2{font-family:Manrope,sans-serif;font-size:clamp(34px,4.2vw,64px);letter-spacing:-.055em;margin:0 0 22px}.section>p:not(.section-kicker),.community p:not(.section-kicker){color:var(--muted);line-height:1.8;max-width:780px;font-size:17px}.story{background:#0a241b}.stats{display:flex;gap:75px;margin-top:55px;flex-wrap:wrap}.stats div{display:flex;flex-direction:column;gap:10px}.stats b{font-size:48px;color:var(--mint)}.stats small{font-size:11px;letter-spacing:.16em}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.text-link{font-size:12px;font-weight:800;color:var(--mint);margin-bottom:28px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}.card{padding:29px;background:linear-gradient(145deg,#12382b,#0b241d);border:1px solid rgba(170,222,192,.18);border-radius:12px;min-height:205px}.card time{font-size:11px;color:var(--mint);font-weight:800;letter-spacing:.15em}.card h3{font-size:23px;margin:22px 0 10px}.card p{font-size:14px;line-height:1.7;color:#b5c8bd}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}.gallery-tile{min-height:230px;border:1px solid var(--line);background:linear-gradient(135deg,#174b38,#091f19);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#c7e3d2;overflow:hidden}.gallery-tile img{width:100%;height:100%;object-fit:cover;max-height:340px}.gallery-tile strong{font-size:18px}.gallery-tile span{font-size:12px;margin-top:10px;color:var(--muted)}.community{background:radial-gradient(ellipse at right,#155337,#09261d 65%)}.community .btn{margin-top:22px}footer{padding:35px clamp(25px,6.6vw,110px);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px;letter-spacing:.13em;color:#a2b6a8}footer a:hover{color:white}@media(max-width:1000px){.nav-group{gap:12px}.nav{padding:0 15px}.brand{width:90px}.brand img{width:75px}.nav-group a{font-size:10px}.hero{min-height:710px}.hero h1{font-size:clamp(48px,6vw,75px)}}@media(max-width:760px){.header{padding:12px}.nav{height:58px;padding:0 20px}.nav-group{display:none}.brand img{width:82px}.menu-toggle{display:block;margin-left:auto;background:none;color:white;border:0;font-size:25px}.mobile-links.open{display:flex;flex-direction:column;gap:0;padding:10px 20px;background:#103328;border:1px solid var(--line);border-radius:18px;margin:8px auto;max-width:450px}.mobile-links a{padding:13px;font-size:13px;font-weight:800}.hero{grid-template-columns:1fr;padding:135px 25px 70px;min-height:auto;gap:35px}.eyebrow{margin-bottom:35px}.hero h1{font-size:clamp(45px,10vw,74px)}.hero-foot{margin-top:35px}.hero-art{padding:5px 0}.emblem{width:min(75vw,350px)}.emblem-caption strong{font-size:44px}.section{padding:70px 25px}.cards,.gallery-grid{grid-template-columns:1fr}.section-head{display:block}.stats{gap:30px}footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}.post-image{display:block;width:100%;height:180px;object-fit:cover;border-radius:8px;margin-bottom:16px}

/* Public social links: managed privately from /admin/ */
.social-links{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.social-links a{color:#d6e9e0;text-decoration:none;border:1px solid rgba(255,255,255,.25);padding:9px 13px;border-radius:30px;font-size:12px;letter-spacing:.04em}.social-links a:hover,.social-links a:focus-visible{background:rgba(255,255,255,.12);color:#fff}.social-links:empty{display:none}

/* B14 cinematic motion update — keeps the original screenshot composition */
.hero{isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 52% 45%,rgba(127,224,161,.12) 0 1px,transparent 1.4px);background-size:13px 13px;mask-image:linear-gradient(90deg,transparent 6%,#000 50%,transparent 95%);animation:dotsDrift 32s linear infinite}
.hero::after{opacity:.07}
.hero-copy{animation:riseIn .9s cubic-bezier(.2,.75,.2,1) both}
.hero-art{animation:riseIn 1.1s .18s cubic-bezier(.2,.75,.2,1) both}
.emblem{position:relative;will-change:transform;animation:logoFloat 6.5s ease-in-out infinite;box-shadow:0 0 0 1px rgba(255,255,255,.16),0 0 95px rgba(111,214,157,.22),0 28px 85px rgba(0,0,0,.24)}
.emblem::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 26px rgba(0,0,0,.12);pointer-events:none}
.emblem img{filter:drop-shadow(0 4px 7px rgba(0,0,0,.06))}
.hero h1 em{background:linear-gradient(95deg,#8dcf8d,#c3e9b8,#8dcf8d);background-size:200% 100%;color:transparent;background-clip:text;-webkit-background-clip:text;animation:headlineGlow 7s ease-in-out infinite}
.dot{box-shadow:0 0 0 0 rgba(228,71,72,.5);animation:dotPulse 2.8s infinite}
.nav{transition:border-color .3s,background .3s,box-shadow .3s}
.header.scrolled{position:fixed;padding-top:9px;padding-bottom:9px;animation:navEnter .35s ease both}
.header.scrolled .nav{background:rgba(7,30,23,.92);border-color:rgba(210,255,226,.32)}
.card,.gallery-tile{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.card:hover,.gallery-tile:hover{transform:translateY(-6px);border-color:rgba(174,229,189,.48);box-shadow:0 20px 42px rgba(0,0,0,.18)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1)}
.reveal.visible{opacity:1;transform:translateY(0)}
.gallery-tile img{transition:transform .65s ease}.gallery-tile:hover img{transform:scale(1.055)}
@keyframes riseIn{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@keyframes logoFloat{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-19px) rotate(1.2deg)}}
@keyframes dotPulse{50%{box-shadow:0 0 0 9px rgba(228,71,72,0)}}
@keyframes headlineGlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes dotsDrift{to{background-position:78px 39px}}
@keyframes navEnter{from{transform:translateY(-12px);opacity:.65}to{transform:translateY(0);opacity:1}}
@media(max-width:1100px){.hero h1{font-size:clamp(47px,6.2vw,84px)}.emblem{width:min(40vw,500px)}}
@media(max-width:760px){.hero{padding-top:128px}.hero-copy{text-align:left}.hero h1{font-size:clamp(42px,10.5vw,74px);letter-spacing:-.065em}.hero .school{font-size:12px;letter-spacing:.12em}.eyebrow{font-size:10px;letter-spacing:.12em}.intro{margin:26px 0;line-height:1.65}.emblem{width:min(82vw,390px)}.hero-art{padding-top:15px}.emblem-caption{margin-top:10px}.btn{padding:16px 18px;gap:22px}.hero::before{background-size:12px 12px}.header.scrolled{padding:8px 12px}.mobile-links.open{display:flex;box-shadow:0 18px 40px rgba(0,0,0,.4)}.mobile-links a:focus-visible,.nav a:focus-visible,.btn:focus-visible{outline:2px solid #b8f3bc;outline-offset:4px}}
@media(max-width:400px){.hero h1{font-size:clamp(37px,10.3vw,48px)}.buttons{gap:10px}.btn{font-size:10px}.emblem{width:86vw}.school{white-space:normal}}
@media(prefers-reduced-motion:reduce){.hero-copy,.hero-art,.emblem,.hero::before,.hero h1 em,.dot{animation:none!important}.reveal{opacity:1;transform:none;transition:none}}
