:root{--blue:#07369f;--deep:#06163c;--yellow:#f8b500;--white:#fff;--paper:#f6f3ec;--ink:#0a1020}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%}.site-header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%;color:#fff}.brand{display:flex;align-items:center;gap:12px;text-transform:uppercase}.brand-mark{background:var(--yellow);color:var(--deep);font-weight:900;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;font-size:22px}.brand b,.brand small{display:block;font-family:"Barlow Condensed",sans-serif;line-height:.95;letter-spacing:.08em}.brand b{font-size:21px}.brand small{font-size:16px;color:var(--yellow)}nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}nav a:not(.nav-cta):hover{color:var(--yellow)}.nav-cta{background:var(--yellow);color:var(--deep);padding:12px 18px;border-radius:999px}.nav-cta:hover{background:#fff;color:var(--blue)}.menu-button{display:none;background:none;border:0}.hero{min-height:760px;height:100vh;max-height:980px;background:var(--deep);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;position:relative;overflow:hidden;padding:130px 5vw 65px}.hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid #ffffff17;border-radius:50%;left:-190px;top:130px}.hero-content{align-self:center;position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;color:var(--blue);margin:0 0 20px}.hero .eyebrow{color:var(--yellow)}h1,h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;line-height:.83;margin:0;letter-spacing:-.025em}h1{font-size:clamp(68px,7.4vw,118px)}h1 em,h2 em{font-style:normal;color:var(--yellow)}.hero-copy{max-width:560px;font-size:17px;line-height:1.65;color:#dbe1ef;margin:32px 0}.hero-actions{display:flex;gap:12px}.button{border-radius:2px;padding:15px 22px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:25px}.button.primary{background:var(--yellow);color:var(--deep)}.button.primary:hover{background:#ffc832}.button.ghost{border:1px solid #ffffff55}.season{margin-top:48px;display:flex;gap:18px;align-items:center}.season span{font-size:11px;text-transform:uppercase;letter-spacing:.2em}.season strong{font-family:"Barlow Condensed";font-size:25px;letter-spacing:.08em}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center}.photo-frame{position:absolute;height:84%;width:auto;aspect-ratio:2/3;overflow:hidden;transform:rotate(2deg);border:9px solid #fff;box-shadow:0 24px 70px #0007;background:#fff}.photo-frame img{height:100%;object-fit:contain}.stamp{position:absolute;z-index:2;bottom:4%;left:4%;width:130px;height:130px;background:var(--yellow);color:var(--deep);border-radius:50%;display:grid;place-content:center;text-align:center;font-family:"Barlow Condensed";font-size:18px;line-height:1;transform:rotate(-8deg);box-shadow:0 0 0 7px var(--deep),0 0 0 9px var(--yellow)}.stamp strong{font-size:32px}.scroll-hint{position:absolute;bottom:28px;right:5vw;text-transform:uppercase;font-size:10px;letter-spacing:.18em;color:#ffffff99}.scroll-hint span{color:var(--yellow);margin-left:10px}.values-strip{background:var(--yellow);color:var(--deep);overflow:hidden;padding:15px 0;font-family:"Barlow Condensed";font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.values-strip div{width:max-content;animation:marquee 26s linear infinite}.values-strip i{font-style:normal;color:#fff;margin:0 20px}@keyframes marquee{to{transform:translateX(-30%)}}.registration{background:var(--blue);display:grid;grid-template-columns:minmax(330px,.85fr) 1.15fr;min-height:980px;color:#fff}.poster-showcase{padding:85px 6vw;background:var(--paper);display:flex;flex-direction:column;justify-content:center;align-items:center}.poster-showcase img{width:min(100%,520px);height:auto;box-shadow:0 35px 75px #06163c35;border:8px solid #fff}.poster-caption{width:min(100%,520px);margin:0 0 14px;color:var(--deep);font-family:"Barlow Condensed";font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:flex;justify-content:space-between}.poster-caption span{color:var(--blue)}.registration-copy{padding:8vw;align-self:center}.registration-copy h2{font-size:clamp(66px,7.2vw,112px)}.registration-intro{max-width:560px;color:#dce6ff;line-height:1.75;font-size:16px;margin:32px 0}.qr-spotlight{width:min(100%,430px);aspect-ratio:1;position:relative;background:#fff;padding:12px;border-radius:28px;box-shadow:0 24px 60px #020b2855,0 0 0 5px var(--yellow)}.qr-crop{position:relative;width:100%;height:100%;overflow:hidden;border-radius:18px;background:#fff}.qr-crop img{position:absolute;width:269.5%;max-width:none;height:auto;left:-160.5%;top:-292%;}.scan-arrow{position:absolute;right:-68px;top:-18px;font-family:"Barlow Condensed";font-size:78px;color:var(--yellow);transform:rotate(18deg)}.qr-help{margin-top:30px;display:flex;flex-direction:column;gap:7px}.qr-help strong{text-transform:uppercase;font-size:12px;letter-spacing:.12em;color:var(--yellow)}.qr-help span{color:#dce6ff;font-size:14px}.qr-help a{color:#fff;font-weight:800;border-bottom:1px solid var(--yellow)}.section{padding:115px 7vw}.courses{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;background:var(--paper)}.section-heading h2{font-size:clamp(60px,6vw,94px);color:var(--deep)}.section-heading h2 em{color:var(--blue)}.section-heading>p:last-child{font-size:15px;line-height:1.7;max-width:370px;color:#5a6170;margin-top:27px}.course-list{border-top:2px solid var(--deep)}.course-card{display:grid;grid-template-columns:55px 1fr auto;align-items:center;gap:12px;padding:29px 7px;border-bottom:1px solid #c8c9c5;transition:.2s}.course-card:hover{padding-left:18px;background:#fff}.course-number{font-family:"Barlow Condensed";font-weight:700;color:#9da0a5;font-size:17px}.course-card h3{margin:4px 0 0;text-transform:uppercase;font-family:"Barlow Condensed";font-size:31px;color:var(--deep)}.course-card .age{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#747a83;margin:0}.course-card time{font-family:"Barlow Condensed";font-size:26px;font-weight:700;color:var(--blue)}.course-card time small{color:var(--yellow);padding:0 8px}.club-story{background:var(--blue);display:grid;grid-template-columns:1fr 1fr;color:#fff;min-height:690px}.story-photo{position:relative;overflow:hidden}.story-photo img{height:100%;object-fit:cover;object-position:center;filter:saturate(.85) contrast(1.04)}.photo-label{position:absolute;bottom:25px;left:25px;background:#fff;color:var(--deep);padding:11px 15px;text-transform:uppercase;font-size:10px;letter-spacing:.15em;font-weight:700}.story-copy{padding:8vw;align-self:center}.eyebrow.light{color:var(--yellow)}.story-copy h2,.contact h2{font-size:clamp(65px,7vw,106px)}.story-copy p:not(.eyebrow){line-height:1.8;color:#d9e2fa;max-width:480px;margin:35px 0}.trial{border-top:1px solid #ffffff66;margin-top:40px;padding-top:25px;display:flex;gap:18px;align-items:center}.trial strong{font-family:"Barlow Condensed";font-size:65px;color:var(--yellow)}.trial span{text-transform:uppercase;font-family:"Barlow Condensed";font-size:20px;font-weight:700;line-height:1.1}.pricing{background:#fff}.pricing>.section-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:55px}.price-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:16px}.price-card,.payment-info{min-height:310px;border:1px solid #d8d9dc;padding:35px;display:flex;flex-direction:column}.price-card{background:var(--blue);color:#fff}.price-card.yellow{background:var(--yellow);color:var(--deep)}.price-card p{margin:0;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}.price-card h3{font-family:"Barlow Condensed";font-size:37px;text-transform:uppercase;margin:13px 0}.price{font-family:"Barlow Condensed";font-weight:800;font-size:88px;margin-top:auto}.price sup{font-size:33px}.payment-info h3{font-family:"Barlow Condensed";font-size:32px;text-transform:uppercase;margin:0 0 12px}.payment-info ul{padding:0;margin:0;list-style:none}.payment-info li{padding:17px 0;border-bottom:1px solid #ddd;font-size:14px}.payment-info li:before{content:"✓";color:var(--blue);font-weight:900;margin-right:12px}.contact{padding:100px 7vw;background:var(--deep);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.big-phone{display:flex;justify-content:space-between;border-bottom:2px solid var(--yellow);padding:20px 0 15px;font-family:"Barlow Condensed";font-size:clamp(30px,4vw,58px);font-weight:700;color:var(--yellow)}.location-card{background:#fff;color:var(--deep);padding:40px;display:grid;grid-template-columns:30px 1fr;gap:12px}.location-card p{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#727783;margin:0}.location-card h3{font-family:"Barlow Condensed";text-transform:uppercase;font-size:36px;line-height:.95;margin:10px 0}.location-card address{font-style:normal;color:#626875;line-height:1.6}.location-card>a{grid-column:2;margin-top:24px;color:var(--blue);font-size:13px;font-weight:700}.pin{color:var(--yellow)}footer{background:#020a20;color:#8f98ae;padding:35px 5vw;display:flex;justify-content:space-between;align-items:center;font-size:12px}.footer-brand{color:#fff}.footer-brand .brand-mark{width:34px;height:34px;font-size:17px}.footer-brand b{font-size:17px}.footer-brand small{font-size:13px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:72px}.menu-button{display:grid;gap:5px;padding:8px;z-index:12}.menu-button span{display:block;width:25px;height:2px;background:#fff}.site-header nav{display:none;position:absolute;inset:0 0 auto;background:var(--deep);padding:90px 5vw 35px;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.hero{height:auto;max-height:none;min-height:1050px;grid-template-columns:1fr;padding-top:120px}.hero-content{align-self:start}.hero-visual{min-height:480px}.photo-frame{height:96%;width:auto}.stamp{width:100px;height:100px;left:8%;bottom:-2%}.stamp strong{font-size:25px}.scroll-hint{display:none}.registration{grid-template-columns:1fr}.registration-copy{order:1;padding:90px 8vw}.poster-showcase{order:2;padding:75px 8vw}.courses{grid-template-columns:1fr}.club-story{grid-template-columns:1fr}.story-photo{min-height:480px}.price-grid{grid-template-columns:1fr 1fr}.payment-info{grid-column:1/-1}.contact{grid-template-columns:1fr}}
@media(max-width:600px){.brand b{font-size:18px}.brand small{font-size:13px}.hero{min-height:1000px;padding-left:22px;padding-right:22px}.hero-copy{font-size:15px;margin:25px 0}.hero-actions{flex-wrap:wrap}.season{margin-top:32px}.hero-visual{min-height:430px}.photo-frame{height:93%;border-width:6px}.poster-showcase{padding:60px 22px}.poster-caption{font-size:14px}.registration-copy{padding:75px 22px}.registration-intro{font-size:15px}.qr-spotlight{width:calc(100% - 6px);border-radius:20px;padding:8px}.qr-crop{border-radius:14px}.scan-arrow{display:none}.section{padding:80px 22px}.course-card{grid-template-columns:35px 1fr}.course-card time{grid-column:2;font-size:23px}.course-card h3{font-size:27px}.club-story{min-height:0}.story-photo{min-height:360px}.story-copy{padding:75px 22px}.pricing>.section-heading{display:block}.price-grid{grid-template-columns:1fr}.payment-info{grid-column:auto}.contact{padding:75px 22px}.location-card{padding:28px 22px}footer{gap:25px;align-items:flex-start;flex-direction:column}footer>p{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.values-strip div{animation:none}.reveal{opacity:1;transform:none;transition:none}}
.compact-registration{display:block;min-height:0;padding:90px 7vw}.compact-registration .registration-copy{padding:0;display:grid;grid-template-columns:1fr minmax(300px,430px);gap:8vw;align-items:center}.compact-registration .registration-intro{margin:24px 0 0}.compact-registration .qr-help{margin-top:28px}.compact-registration .qr-spotlight{width:100%}
@media(max-width:900px){.compact-registration{padding:80px 8vw}.compact-registration .registration-copy{order:initial;padding:0;grid-template-columns:1fr;gap:48px}.compact-registration .qr-spotlight{width:min(100%,430px)}}
@media(max-width:600px){.compact-registration{padding:70px 22px}.compact-registration .registration-copy{padding:0;gap:38px}.compact-registration .registration-copy h2{font-size:60px}.compact-registration .qr-help{margin-top:22px}}
.site-header nav .active{color:var(--yellow)}.judo-page .site-header{background:#06163cdd;backdrop-filter:blur(8px)}.judo-hero{min-height:760px;height:100vh;max-height:920px;background:var(--deep);color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden}.judo-hero-copy{padding:140px 7vw 80px;align-self:center;position:relative;z-index:2}.judo-hero h1{font-size:clamp(78px,8vw,126px)}.judo-hero-copy>p:not(.eyebrow){max-width:480px;color:#dbe1ef;font-size:18px;line-height:1.6;margin:32px 0}.judo-hero-image{height:100%;position:relative;overflow:hidden;background:var(--deep)}.judo-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--deep) 0,transparent 30%)}.judo-hero-image img{height:100%;object-fit:cover;object-position:center}.judo-intro{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.judo-points{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--deep)}.judo-points article{padding:32px 24px;border-right:1px solid #d2d2ce}.judo-points article:last-child{border-right:0}.judo-points span{font-family:"Barlow Condensed";font-weight:800;color:var(--yellow);font-size:20px}.judo-points h3{font-family:"Barlow Condensed";font-size:38px;text-transform:uppercase;color:var(--blue);margin:60px 0 12px}.judo-points p{color:#606671;line-height:1.6;font-size:14px}.judo-belts{background:#fff;padding:105px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.belts-copy h2{font-size:clamp(60px,6vw,94px);color:var(--deep)}.belts-copy h2 em{color:var(--blue)}.belts-copy>p:last-child{color:#666d78;margin-top:25px}.belt-list{display:grid;gap:10px}.belt{height:48px;padding:0 18px;display:flex;align-items:center;font-family:"Barlow Condensed";font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 5px 15px #06163c18}.belt.white{background:#fff;border:1px solid #ddd;color:var(--deep)}.belt.yellow{background:#f2c400}.belt.orange{background:#ef861b;color:#fff}.belt.green{background:#238249;color:#fff}.belt.blue{background:#124eab;color:#fff}.belt.brown{background:#6b3e28;color:#fff}.belt.black{background:#111;color:#fff}.judo-cta{padding:95px 7vw;background:var(--blue);color:#fff;display:flex;align-items:end;justify-content:space-between;gap:40px}.judo-cta h2{font-size:clamp(58px,6vw,92px)}
@media(max-width:900px){.judo-hero{height:auto;max-height:none;min-height:920px;grid-template-columns:1fr}.judo-hero-copy{padding:130px 8vw 70px}.judo-hero-image{min-height:430px}.judo-hero-image:after{background:linear-gradient(180deg,var(--deep) 0,transparent 35%)}.judo-intro{grid-template-columns:1fr}.judo-belts{grid-template-columns:1fr}.judo-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.judo-hero{min-height:820px}.judo-hero-copy{padding:115px 22px 55px}.judo-hero h1{font-size:70px}.judo-hero-copy>p:not(.eyebrow){font-size:15px;margin:24px 0}.judo-hero-image{min-height:330px}.judo-points{grid-template-columns:1fr}.judo-points article{border-right:0;border-bottom:1px solid #d2d2ce;padding:28px 8px}.judo-points h3{margin:25px 0 8px}.judo-belts{padding:75px 22px}.judo-cta{padding:75px 22px}}
