@font-face{font-family:Barlow Condensed;src:url("assets/barlow-condensed-black.ttf") format("truetype");font-weight:900;font-display:swap}
@font-face{font-family:DM Sans;src:url("assets/dm-sans-regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:DM Sans;src:url("assets/dm-sans-bold.ttf") format("truetype");font-weight:700;font-display:swap}
:root{--ink:#151615;--orange:#ff5a24;--paper:#f5f4ed;--muted:#65665f;--line:#d4d3c9;--display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;--body:"DM Sans",Arial,sans-serif;--gutter:clamp(24px,5.65vw,92px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:82px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.58 var(--body);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p,figure,ul,ol{margin:0}
button,input,textarea{font:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
:focus-visible{outline:3px solid #227db7;outline-offset:4px}
::selection{background:var(--orange);color:#141513}
.container{width:min(calc(100% - var(--gutter) * 2),1280px);margin-inline:auto}
.display,.section-title{font-family:var(--display);font-weight:900;line-height:.93;letter-spacing:-.026em;text-transform:uppercase}
.section-title{font-size:clamp(52px,5.55vw,86px)}
.section-title em{font-style:normal;color:#c94412}
.section-pad{padding-block:clamp(72px,7.3vw,116px)}
.kicker{display:flex;align-items:center;gap:12px;font:700 10.5px/1.5 var(--body);letter-spacing:.16em;text-transform:uppercase;margin:0 0 19px}
.kicker::before{content:"";width:28px;height:3px;background:var(--orange);flex:none}
.accent{color:var(--orange)}
.symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.icon{width:19px;height:19px;display:inline-block;flex:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:19px;min-height:49px;padding:13px 21px;border:1px solid transparent;border-radius:3px;background:var(--orange);color:#151411;font:700 14px/1.25 var(--body);text-align:center;transition:background .2s,color .2s,border-color .2s}
.button:hover{background:#ff774c}
.button .icon,.text-link .icon{transition:transform .2s}
.button:hover .icon{transform:translate(2px,-2px)}
.button.ghost{background:transparent;border-color:currentColor;color:inherit}
.button-dark{background:var(--ink);color:var(--paper)}
.button-dark:hover{background:#30312d}
.skip{position:fixed;left:10px;top:-90px;background:var(--paper);padding:10px 16px;z-index:1000}
.skip:focus{top:10px}
.site-header{position:sticky;z-index:20;top:0;background:#141513;color:var(--paper);border-bottom:1px solid #30312c}
.head-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.brand{display:flex;align-items:center;gap:15px;flex:none}
.brand img{width:66px;height:33px;object-fit:contain}
.brand-desc{border-left:1px solid #4f5049;padding-left:14px;text-transform:uppercase;font-size:8px;line-height:1.55;letter-spacing:.09em;font-weight:700;color:#b8b9af}
.brand-desc b{color:#eee;font-size:11px;letter-spacing:.1em}
#main-nav{display:flex;gap:clamp(17px,2.1vw,36px);align-items:center}
#main-nav a{font-size:13px;font-weight:700;color:#cecec6;transition:color .2s}
#main-nav a:hover,#main-nav a[aria-current]{color:var(--orange)}
.head-end{display:flex;align-items:center;gap:12px}
.header-book{padding:10px 16px;font-size:12px;min-height:40px;gap:14px}
.header-book .icon{width:16px;height:16px}
#menu-toggle{display:none;align-items:center;justify-content:center;border:0;background:transparent;color:var(--paper);width:42px;height:42px}
#menu-toggle .icon{width:24px;height:24px}
#menu-toggle .icon:last-child,#menu-toggle[aria-expanded=true] .icon:first-child{display:none}
#menu-toggle[aria-expanded=true] .icon:last-child{display:block}
.hero{position:relative;isolation:isolate;overflow:hidden;background:#121411;color:var(--paper)}
.hero-photo{position:absolute;z-index:-1;inset:0 0 0 21%;overflow:hidden}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 41%}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#121411 0%,rgba(18,20,17,.99) 4%,rgba(18,20,17,.78) 19%,rgba(18,20,17,.14) 46%,transparent 65%),linear-gradient(0deg,rgba(9,10,8,.76),transparent 20%)}
.hero-inner{position:relative;min-height:clamp(540px,41.7vw,687px);display:flex;align-items:center;padding-block:72px 114px}
.hero-copy{width:min(720px,64%)}
.hero-kicker{font-size:11px;letter-spacing:.19em;color:#e5e4d9;margin-bottom:26px}
.hero h1{font-size:clamp(77px,7.9vw,132px);line-height:.875;letter-spacing:-.03em}
.hero h1 span{color:var(--orange)}
.hero-description{max-width:450px;color:#d4d4ca;font-size:clamp(15px,1.23vw,19px);line-height:1.55;margin:25px 0 30px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(20px,2.3vw,35px)}
.hero-actions .button{min-height:51px}
.hero-more{display:flex;align-items:center;gap:12px;font-weight:700;font-size:13px;color:#f5f4ed}
.hero-more .icon{width:15px;height:15px}
.hero-more:hover{color:var(--orange)}
.hero-base{position:absolute;bottom:27px;left:0;right:0;display:flex;align-items:center;justify-content:space-between}
.hero-location{color:#e3e3da;display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.hero-location .icon{color:var(--orange);width:16px;height:16px}
.hero-stripes{display:inline-flex;gap:5px;transform:skew(-20deg)}
.hero-stripes i{display:block;width:8px;height:24px;background:var(--orange)}
.hero-stripes i:nth-child(2){opacity:.7}.hero-stripes i:last-child{opacity:.38}
.sport-band{background:var(--orange);color:#181814;overflow:hidden}
.band-content{max-width:1600px;padding:0 var(--gutter);margin:0 auto;min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.band-content a{font:900 clamp(18px,1.8vw,29px)/1 var(--display);text-transform:uppercase;letter-spacing:.015em;white-space:nowrap}
.band-content a:hover{text-decoration:underline;text-underline-offset:3px}
.band-content i{font:700 21px/1 Arial}
.intro-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:clamp(48px,7vw,115px);align-items:center}
.intro-media{position:relative;min-width:0}
.photo-wrap{position:relative;background:#272925}
.photo-wrap img{width:100%;height:auto}
.photo-note{display:flex;align-items:center;gap:9px;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.13em;margin-top:14px}
.photo-note b{margin-left:auto;font:900 20px/1 var(--display);color:#ca4516}
.note-bar{width:18px;height:2px;background:#bd4317}
.intro-copy .lead{color:#242521;font-size:clamp(17px,1.45vw,21px);line-height:1.45;margin:21px 0 12px;font-weight:700}
.intro-copy p:not(.kicker):not(.lead),.steps p,.section-top>p{color:#595b52}
.intro-copy p:not(.kicker):not(.lead){font-size:15px}
.traits{list-style:none;padding:0;margin:22px 0 24px;display:grid;gap:8px}
.traits li{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700}
.traits .icon{color:#bf4116;width:16px;height:16px}
.text-link{display:inline-flex;align-items:center;gap:14px;font-weight:700;font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:3px}
.text-link:hover .icon{transform:translateX(4px)}
.modalities{background:var(--ink);color:var(--paper)}
.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}
.section-top>p{max-width:345px;color:#bebfb5;font-size:15px}
.discipline-grid{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #4b4c44}
.discipline{padding:33px 28px 34px 0}
.discipline+.discipline{border-left:1px solid #4b4c44;padding-left:28px}
.discipline-icon{width:48px;height:42px;color:var(--orange);margin-bottom:24px;display:flex;align-items:center}
.discipline-icon .icon{width:40px;height:40px}
.discipline h3{font-size:clamp(26px,2.4vw,38px);margin-bottom:14px}
.discipline p{font-size:14px;line-height:1.55;color:#c3c4bc}
.booking-bar{display:flex;gap:32px;align-items:center;justify-content:space-between;background:var(--orange);color:var(--ink);padding:clamp(25px,3vw,46px);margin-top:46px}
.booking-bar h3{font-size:clamp(33px,3.9vw,58px)}
.booking-bar .kicker{margin:0 0 9px}
.booking-bar .kicker::before{background:var(--ink)}
.method-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(50px,8vw,128px);align-items:center}
.method-photo{min-width:0;align-self:stretch;position:relative}
.method-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%}
.steps{margin-top:32px;list-style:none;padding:0;counter-reset:step}
.steps li{display:grid;grid-template-columns:53px 1fr;gap:12px;border-top:1px solid var(--line);padding:18px 0}
.steps li:last-child{padding-bottom:0}
.step-count{color:#b83b10;font:900 33px/1.05 var(--display)}
.steps h3{font:700 19px/1.2 var(--body);margin:1px 0 6px}
.steps p{font-size:14px;line-height:1.5}
@media(max-width:980px){.brand-desc{display:none}.hero-copy{width:65%}.hero h1{font-size:clamp(70px,9vw,89px)}.intro-grid,.method-grid{gap:44px}.discipline{padding-right:19px}.discipline+.discipline{padding-left:19px}}
@media(max-width:760px){html{scroll-padding-top:64px}.head-inner{min-height:62px;gap:10px}.brand img{width:60px;height:30px}.brand-desc{display:none}#menu-toggle{display:inline-flex}#main-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:10px var(--gutter) 19px;background:#171816;border-bottom:1px solid #4b4c44;box-shadow:0 15px 20px #0003}#main-nav[data-open=true]{display:grid;gap:0}#main-nav a{padding:13px 0;border-bottom:1px solid #363730}.head-end{gap:8px}.header-book{min-height:36px;padding:9px 12px}.hero-inner{min-height:560px;padding-block:160px 85px}.hero-copy{width:100%}.hero-photo{left:0}.hero-photo img{object-position:65% 25%}.hero-photo::after{background:linear-gradient(0deg,#121411 0%,rgba(18,20,17,.93) 23%,rgba(18,20,17,.45) 53%,rgba(18,20,17,.04) 78%),linear-gradient(90deg,rgba(18,20,17,.6),transparent 77%)}.hero h1{font-size:clamp(62px,10.5vw,84px)}.hero-description{max-width:390px}.hero-base{bottom:20px}.hero-stripes i{height:18px;width:6px}.band-content{gap:12px;min-height:47px}.band-content a{font-size:16px}.band-content i{font-size:14px}.intro-grid,.method-grid{grid-template-columns:1fr;gap:31px}.intro-copy{grid-row:1}.section-top{display:block;margin-bottom:28px}.section-top>p{margin:17px 0 0}.discipline-grid{grid-template-columns:repeat(2,1fr)}.discipline:nth-child(3){border-left:0;padding-left:0}.discipline:nth-child(n+3){border-top:1px solid #4b4c44}.discipline p{font-size:14px}.method-photo{height:clamp(325px,65vw,460px)}.method-photo img{object-position:50% 62%}.booking-bar{gap:20px;flex-wrap:wrap}.kicker{margin-bottom:15px}.section-title{font-size:clamp(51px,9.5vw,70px)}}
@media(max-width:540px){:root{--gutter:22px}.hero-inner{min-height:620px;padding-block:218px 76px;align-items:end}.hero-photo{inset:0 0 auto;height:76%}.hero-photo img{object-position:62% 30%}.hero-photo::after{background:linear-gradient(0deg,#121411 0%,rgba(18,20,17,.77) 25%,rgba(18,20,17,.12) 59%,transparent 80%)}.hero-kicker{font-size:9px;letter-spacing:.12em;margin-bottom:17px}.hero h1{font-size:clamp(51px,13.4vw,75px);line-height:.91}.hero-description{font-size:15px;max-width:350px;margin:17px 0 21px}.hero-actions{gap:16px}.hero-actions .button{min-height:46px;font-size:12px;padding:12px 13px;gap:10px}.hero-more{font-size:12px;gap:6px}.hero-location{font-size:9px}.hero-base{bottom:21px}.sport-band{overflow:visible}.band-content{display:grid;grid-template-columns:1fr auto 1fr;justify-items:center;padding:10px var(--gutter);gap:4px 14px}.band-content i:nth-of-type(2){display:none}.band-content a{font-size:16px}.band-content i{font-size:12px}.section-pad{padding-block:59px}.section-title{font-size:clamp(46px,11.7vw,64px)}.discipline h3{font-size:26px}.discipline{padding:22px 15px 23px 0}.discipline+.discipline{padding-left:15px}.discipline:nth-child(3){padding-left:0}.discipline-icon{margin-bottom:16px}.booking-bar{margin-top:29px}.steps li{grid-template-columns:39px 1fr}}
@media(max-width:355px){.hero-inner{min-height:620px}.hero-actions{gap:12px}.header-book{font-size:11px}.head-end{gap:2px}.hero-more{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

