:root{--ink:#05080d;--surface:#0b1018;--glass:rgba(12,23,35,.63);--cyan:#00e5ff;--blue:#0072ff;--line:rgba(139,227,255,.2)}
html{scroll-padding-top:95px}body{background:radial-gradient(ellipse at 78% 4%,#003c612e,transparent 30%),radial-gradient(ellipse at 10% 38%,#0072ff13,transparent 28%),#05080d}body:before{content:"";position:fixed;inset:0;z-index:-5;pointer-events:none;opacity:.28;background-image:linear-gradient(#58dfff0a 1px,transparent 1px),linear-gradient(90deg,#58dfff08 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(#0005,transparent 85%)}body:after{content:"";position:fixed;inset:0;z-index:-4;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 4px,#fff006 5px),radial-gradient(ellipse at center,transparent 42%,#0103068c 100%);opacity:.22}.nav{height:72px;border-radius:16px;background:linear-gradient(110deg,rgba(3,12,22,.82),rgba(7,24,38,.48));box-shadow:0 12px 40px #0009}.nav.scrolled{background:rgba(3,12,21,.92);border-color:#54dfff55}.button{letter-spacing:.4px;position:relative;overflow:hidden}.button:before{content:"";position:absolute;inset:0;translate:-110% 0;background:linear-gradient(100deg,transparent,#ffffff55,transparent);transition:translate .55s}.button:hover:before{translate:110% 0}.hero{min-height:720px}.hero:before{display:block!important;content:"";position:absolute;inset:14% 7% auto auto;width:clamp(230px,29vw,470px);aspect-ratio:1;border:1px solid #5bdaff28;border-radius:50%;z-index:-1;background:repeating-radial-gradient(circle,transparent 0 29px,#6be4ff17 30px 31px);box-shadow:0 0 80px #00bdf420;animation:hudDrift 14s ease-in-out infinite alternate}.hero:after{display:block!important;content:"01 / 03\A 10M · 25M · 50M";white-space:pre;position:absolute;z-index:1;right:5%;top:41%;font:700 10px/2.2 Manrope;letter-spacing:2px;color:#bcefffaa;border-left:1px solid #68ddff77;padding-left:13px}.hero-copy{max-width:900px}.hero h1{letter-spacing:-6px;background:linear-gradient(125deg,#fff 10%,#b7eaff 42%,#fff 70%);background-clip:text;color:transparent}.hero h2{letter-spacing:8px}.hero-side{font-size:15px;letter-spacing:.5px}.section{padding-top:128px;padding-bottom:128px}.section:before{content:"";position:absolute;top:70px;left:32px;width:75px;height:14px;border-top:1px solid #4edcff;border-left:1px solid #4edcff;opacity:.55}.section-heading h2{letter-spacing:.2px}.range-card,.program,.coach{background:linear-gradient(145deg,rgba(12,35,52,.8),rgba(3,12,21,.82));backdrop-filter:blur(10px);box-shadow:inset 0 1px #8eeaff16}.range-card{min-height:280px;position:relative;overflow:hidden}.range-card:after{content:"◎";position:absolute;right:20px;top:14px;color:#69e8ff55;font-size:50px;transition:.5s}.range-card:hover:after{transform:rotate(90deg) scale(1.12);color:#69e8ff}.range-card:hover,.program:hover,.coach:hover{border-color:#55dfff;box-shadow:0 18px 42px #001d33, inset 0 1px #9deeff33;transform:translateY(-8px)}.program-grid{gap:20px}.program{min-height:210px}.program.featured{transform:none;background:linear-gradient(145deg,rgba(11,61,87,.83),rgba(4,18,30,.9))}.feature-grid{background:rgba(3,14,24,.62);backdrop-filter:blur(8px)}.feature-grid div{position:relative}.feature-grid div:before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent,#00d9ff0d);opacity:0;transition:.3s}.feature-grid div:hover:before{opacity:1}.gallery-grid{grid-auto-rows:210px}.gallery-item{border:1px solid #69ddff18}.gallery-item:hover{border-color:#62e4ff;box-shadow:0 10px 28px #001d39}.coaches{background:radial-gradient(circle at 78% 0,#007dc72b,transparent 28%)}.admission{border-block:1px solid #62ddff24}.booking-modal{width:min(620px,92vw);border:1px solid #62e5ff88;border-radius:18px;color:#f6fcff;background:linear-gradient(145deg,#081b2bf7,#030b14f7);box-shadow:0 0 80px #00bdf438;padding:0}.booking-modal::backdrop{background:#01060bd9;backdrop-filter:blur(8px)}.booking-inner{padding:32px;position:relative}.booking-inner:before{content:"BOOKING REQUEST";display:block;color:var(--cyan);font:700 10px Manrope;letter-spacing:2px;margin-bottom:10px}.booking-inner h2{font:700 38px 'Barlow Condensed';margin:0 0 18px}.booking-close{position:absolute;right:17px;top:13px;background:none;border:0;color:white;font-size:29px;cursor:pointer}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-form label{font-size:10px;color:#afcbd9}.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid #2b6179;background:#04111d;color:#fff;border-radius:6px}.booking-form textarea,.booking-form label:last-of-type{grid-column:1/-1}.booking-actions{grid-column:1/-1;display:flex;gap:10px;margin-top:5px}@keyframes hudDrift{to{transform:translate3d(-23px,16px,0) rotate(18deg)}}@media(max-width:780px){.nav{height:60px}.hero{min-height:660px}.hero:before{width:250px;top:17%;right:-80px}.hero:after{display:none!important}.hero h1{letter-spacing:-3px}.hero h2{letter-spacing:4px}.section{padding-top:88px;padding-bottom:88px}.section:before{left:21px;top:45px}.gallery-grid{grid-auto-rows:145px}.booking-inner{padding:25px 19px}.booking-form{grid-template-columns:1fr}.booking-form textarea,.booking-form label:last-of-type{grid-column:auto}.booking-actions{grid-column:auto}.hero-side{bottom:34px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.range-card{isolation:isolate}.range-card:before{z-index:0}.range-card:after{z-index:2}
.updates{max-width:none;background:linear-gradient(135deg,#061522e8,#030b13f2),url('assets/25m-rifle/25m-rifle-06.jpg') center/cover!important}.updates>*{max-width:1096px;margin-left:auto;margin-right:auto}.updates-grid{max-width:1096px;margin:35px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.update-card{position:relative;min-height:280px;padding:28px;border:1px solid #61ddff3b;border-radius:11px;background:linear-gradient(145deg,#071c2ce8,#06111cdc);overflow:hidden;transition:.35s}.update-card:before{content:"";position:absolute;inset:auto -30px -55px auto;width:150px;height:150px;border:1px solid #5fe4ff33;border-radius:50%;box-shadow:0 0 0 18px #00d6ff08}.update-card:hover{transform:translateY(-8px);border-color:#64e5ff;box-shadow:0 20px 44px #000b}.update-card h3{font:700 30px/1 'Barlow Condensed';margin:26px 0 10px}.update-card>p:not(.eyebrow){font-size:11px;line-height:1.7;color:#a8c1cd}.update-number{position:absolute;right:23px;top:20px;color:#4cdfff;font:700 17px 'Barlow Condensed';letter-spacing:2px}@media(max-width:780px){.updates-grid{grid-template-columns:1fr;margin-top:24px}.update-card{min-height:220px}}

.coaches{background:linear-gradient(120deg,#061522ea,#020b13e8),url('assets/target-paper.jpg') center/cover!important}.coach-profile{max-width:1100px;margin:auto;display:grid;grid-template-columns:minmax(300px,.78fr) 1.22fr;gap:58px;align-items:center}.coach-portrait{position:relative;border:1px solid #67e1ff72;border-radius:12px;overflow:hidden;background:#f4f9fb;box-shadow:0 22px 48px #000b}.coach-portrait:before{content:"";position:absolute;inset:12px;border:1px solid #68e6ff59;z-index:1;pointer-events:none}.coach-portrait img{display:block;width:100%;height:550px;object-fit:cover;object-position:center top}.coach-details h2{font-size:clamp(43px,4vw,63px);margin:11px 0 24px}.coach-intro{font-size:16px!important;line-height:1.55!important;color:#edfaff!important;max-width:650px!important}.coach-facts{margin:27px 0 25px;border-top:1px solid #64dcff3b}.coach-facts div{padding:13px 0;border-bottom:1px solid #64dcff2c}.coach-facts b{display:block;color:#58ddff;font-size:9px;letter-spacing:1px;margin-bottom:7px}.coach-facts span{font-size:12px;color:#d6e9f1}.coach-details .coach-expertise{display:flex}.coach-actions{display:flex;align-items:center;gap:19px;margin-top:28px}@media(max-width:780px){.coach-profile{grid-template-columns:1fr;gap:29px}.coach-portrait img{height:440px}.coach-details h2{font-size:47px}.coach-actions{flex-wrap:wrap}.coach-intro{font-size:14px!important}}

.foundation-note{display:flex;gap:11px;align-items:center;max-width:465px;margin:25px 0 8px;padding:12px 14px;border-left:2px solid #50ddff;background:linear-gradient(90deg,#0a2737a8,transparent);border-radius:0 8px 8px 0}.foundation-mark{font-size:27px;color:#55e4ff}.foundation-note b,.foundation-note small{display:block}.foundation-note b{font-size:11px;letter-spacing:.5px;color:#ebfbff}.foundation-note small{font-size:9px;color:#a9cad7;margin-top:4px}.stats article:last-child b{font-size:31px;letter-spacing:1px}.stats article:last-child small{line-height:1.45}.nav,.range-card,.update-card,.coach-profile{will-change:transform}.range-card,.update-card{backface-visibility:hidden}@media(max-width:780px){.foundation-note{margin-top:22px}.stats article:last-child b{font-size:25px}}

/* Olympic academy editorial layout */
.about{min-height:650px;isolation:isolate}.about:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 76% 44%,#00c8ff1c,transparent 31%),linear-gradient(90deg,#06111c 0%,#06111cb8 46%,transparent 72%)}.about-copy h2{font-size:clamp(50px,5vw,78px);line-height:.9;max-width:590px}.about-copy p:not(.eyebrow){font-size:14px;max-width:510px}.about-tags{display:flex;flex-wrap:wrap;gap:8px;margin:27px 0 7px}.about-tags span{border:1px solid #65dcff44;border-radius:99px;padding:8px 11px;color:#b8e7f6;font-size:9px;letter-spacing:.7px;text-transform:uppercase;background:#061522a8}.building{min-height:475px;align-items:flex-end;background:linear-gradient(0deg,#03121bdb 0%,#03121b08 70%),url('assets/10m-rifle/10m-rifle-05.jpg') center/cover!important;border:1px solid #66e0ff3d;box-shadow:0 28px 60px #0009}.building:before{content:"";position:absolute;inset:18px;border:1px solid #8fe6ff32;pointer-events:none}.stats{transform:translate(-32px,24px);width:min(330px,80%);background:linear-gradient(135deg,#071b2bf3,#0a2131df);border-color:#6fdbff80;box-shadow:0 18px 42px #00101ed9;animation:statsFloat 6s ease-in-out infinite alternate}.stats article{padding:16px}.stats b{font-size:40px}.image-caption{position:absolute;right:25px;bottom:19px;color:#b9eafd;font-size:9px;letter-spacing:1.7px}.range-grid{gap:22px}.range-card{min-height:365px;padding:31px 27px;display:flex;flex-direction:column;justify-content:flex-end;background-position:center;background-size:cover!important;border:1px solid #66ddff58}.range-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#020b13f5,#061827a8 58%,#00101a24);z-index:-1;transition:.45s}.range-card:hover:before{background:linear-gradient(0deg,#020b13f2,#06314a8c 65%,#00101a12)}.range-card>*{position:relative;z-index:1}.range-card .range-number{font-size:64px;padding:0;border:0;text-shadow:0 5px 20px #000}.range-card h3{font-size:31px;margin:6px 0}.range-card p{font-size:11px;color:#d5e8f0;min-height:44px}.range-card a{color:#6ae7ff;font-weight:bold;font-size:10px;text-transform:uppercase;letter-spacing:1px}.range-10{background-image:url('assets/10m-rifle/10m-rifle-01.png')!important}.range-25{background-image:url('assets/25m-rifle/25m-rifle-04.jpg')!important}.range-50{background-image:url('assets/50m-rifle/50m-rifle-01.jpg')!important}.coaches{padding-top:130px;padding-bottom:130px}.coaches .section-heading{display:flex;align-items:end;justify-content:space-between}.coaches .section-heading:after{content:"ONE COACH · ONE STANDARD";font-size:10px;letter-spacing:1.7px;color:#60dcff;padding-bottom:6px}.coach-grid{grid-template-columns:minmax(280px,720px);justify-content:center}.coach{min-height:460px;border-radius:14px}.coach img{height:460px}.coach div{padding:75px 26px 26px}.coach h3{font-size:38px}.coach p{font-size:11px}.coach:after{content:"HEAD COACH";position:absolute;top:19px;left:20px;border:1px solid #5ee5ff88;color:#8eeaff;padding:7px 10px;border-radius:99px;font:700 9px Manrope;letter-spacing:1px;background:#04121ca6}@keyframes statsFloat{to{transform:translate(-32px,13px)}}@media(max-width:780px){.about{min-height:0}.about-copy h2{font-size:50px}.building{min-height:390px;margin-top:13px}.stats{transform:translate(0,25px);width:calc(100% - 18px)}.stats article{padding:11px}.stats b{font-size:34px}.range-card{min-height:315px}.coaches .section-heading{display:block}.coaches .section-heading:after{display:block;margin-top:10px}.coach-grid{grid-template-columns:1fr}.coach{min-height:390px}.coach img{height:390px}@keyframes statsFloat{to{transform:translate(0,14px)}}}
