/* Final Warrior Sports site. The story uses the four supplied stills. */
:root{--red:#ed5336}
html{scroll-behavior:smooth}.header{z-index:40}
[hidden]{display:none!important}
.opening{height:100svh;background:#080908}.motion-enabled .opening{height:245svh}
.opening-stage{min-height:650px;background:#080908}
.story-images{position:absolute;inset:85px 0 35px 23%;overflow:hidden}
.story-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center right;opacity:0;transform:scale(1.015);will-change:opacity,transform}
.story-image:first-child{opacity:1}
.hero-shade{background:linear-gradient(90deg,#080908 0%,#080908 20%,#080908b0 37%,transparent 58%),linear-gradient(0deg,#080908c9,transparent 24%)}
.hero-chapter{width:45%;top:25%}.hero-chapter h1{font-size:clamp(90px,10vw,176px)}
.chapter-two .display{font-size:clamp(100px,min(12vw,19svh),210px)}
.hero-description{left:var(--gutter);right:auto;bottom:90px}.hero-description .round-link{width:52px;height:52px;font-size:27px}
.story-middle{position:absolute;left:var(--gutter);top:46%;font:700 clamp(45px,5.3vw,90px)/.95 var(--display);max-width:35%;opacity:0}
.story-middle span{display:block;font:600 9px/1.4 var(--body);letter-spacing:.15em;margin-bottom:23px;color:var(--red)}
.story-dots{display:flex;gap:8px}.story-dots i{width:20px;height:3px;background:#ffffff40}.story-dots i.active{background:var(--red)}
.reduced-motion .opening,.media-disabled .opening{height:max(100svh,650px)}
.reduced-motion .story-image:not(:first-child),.media-disabled .story-image:not(:first-child){display:none}
.reduced-motion .story-image:first-child,.media-disabled .story-image:first-child{opacity:1!important;transform:none!important}
.reduced-motion .story-middle,.media-disabled .story-middle{display:none}
.discipline-photo{height:410px}.discipline-photo img{height:100%;object-position:center 40%}
img[src*="bjj-class"]{object-position:center 12%!important}
.discipline-description{grid-template-columns:1fr 1.3fr;gap:32px}.discipline-description p{font-size:13px;line-height:1.8}
.class-times{margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.class-times h4{font:600 24px var(--display);margin:0 0 18px}
.schedule-list{margin:0;padding:0;list-style:none}.schedule-list li{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.schedule-list small{display:block;color:var(--muted);font-size:10px}.schedule-list strong{font-weight:500;text-align:right;white-space:nowrap}.schedule-list .bonus{opacity:.8}
.schedule-note{font-size:11px;color:var(--muted);margin-top:14px;line-height:1.7}.class-links{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-top:24px}.class-links .button{font-size:11px;min-height:48px;padding:14px 19px;gap:23px}
.all-classes-link{margin-top:22px}.coaches-section{background:#eae6dc;color:#181a17;--line:#181a1730;--muted:#65685e}
.section-intro{display:flex;gap:8%;align-items:end;justify-content:space-between;margin-bottom:50px}.section-intro h2{font-size:clamp(70px,8vw,130px)}.section-intro p{max-width:330px;font-size:13px;line-height:1.8}
.coach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.coach-card img{aspect-ratio:4/5;object-fit:cover;object-position:center 25%;filter:grayscale(.2)}.coach-card h3{font:600 29px/1.1 var(--display);margin-top:20px}.coach-card .role{font-size:9px;letter-spacing:.08em;margin:8px 0 14px;text-transform:uppercase}.coach-card p{font-size:12px;line-height:1.75}.coach-card a{font-size:11px}
.team-note{display:flex;justify-content:space-between;gap:35px;border-top:1px solid var(--line);margin-top:40px;padding-top:24px;font-size:12px;line-height:1.8}.team-note p{max-width:760px}
.pt-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.pt-section figure{position:relative}.pt-section figure img{height:720px;object-position:center 35%}.pt-section figcaption{position:absolute;bottom:24px;left:24px;font-size:9px;letter-spacing:.12em}.pt-section h2{font-size:clamp(70px,7vw,125px);margin:24px 0}.pt-section p{font-size:13px;line-height:1.8}.pt-options{padding:0;list-style:none;margin:28px 0}.pt-options li{border-top:1px solid var(--line);padding:18px 0}.pt-options b{display:block;font:600 27px var(--display)}.pt-options span{font-size:12px;color:var(--muted)}
.trial-detail{max-width:none!important}.trial-rules{border-top:1px solid #11121055;margin-top:26px;padding-top:22px;font-size:12px;max-width:510px}.trial-rules b{font-size:15px}.trial-rules p{margin-top:7px;font-size:12px!important}
.membership-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.membership-cards article{padding:26px;border:1px solid var(--line)}.membership-cards h3{font:600 32px var(--display);margin:10px 0}.membership-cards p{font-size:12px;line-height:1.8;color:var(--muted)}
.app-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.app-features{display:grid;gap:22px}.app-feature{padding:24px 28px;border:1px solid var(--line);display:grid;grid-template-columns:45px 1fr;gap:18px;align-items:start}.app-feature .num{font:600 33px var(--display);color:var(--red)}.app-feature h3{font:600 30px var(--display)}.app-feature p{font-size:12px;line-height:1.8;margin:8px 0 13px;color:var(--muted)}.app-feature a{font-size:11px;border-bottom:1px solid var(--muted)}
.app-screens{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px;align-items:start}.app-screens figure:nth-child(2){margin-top:60px}.app-screens img{border-radius:20px;border:6px solid #31332e;box-shadow:0 24px 70px #0006}.app-screens figcaption{font-size:8px;letter-spacing:.1em;margin-top:14px;color:var(--muted)}.app-section{align-items:start}.app-editorial{position:sticky;top:140px}.guide-shot{float:right;width:230px;margin:0 0 24px 30px}.guide-shot img{border:5px solid #35372f;border-radius:16px}.guide-shot figcaption{font-size:8px;letter-spacing:.1em;margin-top:12px}.guide-step{display:flow-root}
.visit-hours{display:flex;gap:10%;padding-top:36px;margin-top:36px;border-top:1px solid var(--line)}.visit-hours p{font-size:12px;line-height:1.8}.visit-hours b{font-weight:500;color:var(--paper)}
.content-dialog{max-width:760px}.dialog-links{display:flex;gap:20px;margin-top:24px;flex-wrap:wrap}.dialog-bullets{font-size:13px}.dialog-options a{display:block;border:1px solid var(--line);padding:20px;font-size:13px}
.subpage{background:#11130f}.subpage .header{position:sticky;top:0}.subpage .page-hero{padding:75px var(--gutter) 60px}.breadcrumbs{font-size:10px;color:var(--muted);margin-bottom:34px;display:flex;gap:12px}.page-hero .eyebrow{color:var(--red)}.page-hero h1{font-size:clamp(68px,10vw,165px);margin:25px 0 28px;max-width:1100px}.page-hero .lede{font-size:16px;line-height:1.8;max-width:690px}.class-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:0 var(--gutter) 90px}.class-page-grid figure img{height:640px;object-position:center 35%}.class-page-grid h2{font-size:50px;line-height:1;margin:30px 0 22px}.class-page-grid p,.class-page-grid li{font-size:13px;line-height:1.9}.class-page-grid ul:not(.schedule-list){padding-left:20px}.class-page-grid .class-times{margin-top:0}.page-cta{background:var(--red);color:#10120e;padding:50px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px}.page-cta h2{font-size:60px}.page-cta p{font-size:13px;margin-top:12px}.page-cta .button{background:#10120e;color:var(--paper)}
.guide-grid{padding:0 var(--gutter) 90px;display:grid;grid-template-columns:240px 1fr;gap:7%}.guide-nav{position:sticky;top:115px;align-self:start;display:grid;gap:8px}.guide-nav a{padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.guide-step{padding:34px 0;border-top:1px solid var(--line);scroll-margin-top:120px}.guide-step h2{font-size:48px;line-height:1.05;margin:12px 0 24px}.guide-step p,.guide-step li{font-size:14px;line-height:1.9}.guide-step ol{padding-left:20px}.guide-step li{padding:6px 0}.guide-step .callout{border-left:2px solid var(--red);padding:15px 22px;background:#ffffff05;margin:24px 0}.guide-step .text-link{margin-top:14px}
.timetable-filters{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.timetable-filters button{background:none;border:1px solid var(--line);padding:12px 18px;font-size:12px}.timetable-filters button.active{background:var(--red);color:#111}.timetable-body{padding:0 var(--gutter) 80px}.timetable-day{margin:32px 0 45px}.timetable-day h2{font-size:45px;margin-bottom:22px}.timetable-row{display:grid;grid-template-columns:150px 1fr 140px;gap:20px;padding:18px 0;border-top:1px solid var(--line);font-size:13px}.timetable-row a{font:600 24px var(--display)}.timetable-row small{font-size:11px;color:var(--muted)}
@media(max-width:1000px){.coach-grid{grid-template-columns:repeat(2,1fr)}.hero-chapter h1{font-size:11vw}.hero-chapter{width:48%}.pt-section figure img{height:570px}.guide-grid{grid-template-columns:170px 1fr}.class-page-grid figure img{height:520px}}
@media(max-width:700px){
 .app-editorial{position:static}.app-screens{gap:16px}.app-screens figure:nth-child(2){margin-top:35px}.app-screens img{border-width:4px;border-radius:14px}.guide-shot{float:none;width:min(280px,80%);margin:0 auto 35px}
 .motion-enabled .opening{height:230svh}.opening-stage{min-height:640px;height:100svh}
 .story-images{inset:40% 0 8%}.story-image{object-fit:cover;object-position:35% center}.story-image:nth-child(2),.story-image:nth-child(3){object-position:88% center}.story-image:nth-child(4){object-position:86% center}
 .hero-shade{background:linear-gradient(180deg,#080908 0%,#080908 20%,transparent 48%),linear-gradient(0deg,#080908 0%,transparent 24%)}
 .hero-chapter{top:18%;width:90%;left:var(--gutter)}.hero-chapter h1{font-size:clamp(68px,18.5vw,110px);line-height:.83}.chapter-two .display{font-size:clamp(72px,19.5vw,110px)}
 .chapter-two .display br:first-child{display:none}.hero-description{display:none}.story-middle{top:19%;font-size:38px;max-width:90%}.story-middle span{margin-bottom:10px;font-size:7px}.story-middle br{display:none}
 .opening-label{top:101px}.opening-rail{bottom:26px}.rail-place{display:none}.scroll-cue{position:static;transform:none}.frame-label{font-size:7px}.story-dots{display:none}
 .reduced-motion .opening,.media-disabled .opening{height:max(100svh,640px)}
 .discipline-photo{height:320px}.discipline-description{grid-template-columns:1fr;gap:20px}.discipline-description p{font-size:13px}.class-times{margin-top:25px}.schedule-list li{font-size:11px;gap:7px}.schedule-list small{font-size:9px}.class-links{gap:17px}
 .section-intro{display:block}.section-intro h2{font-size:18vw;margin-bottom:25px}.section-intro p{font-size:12px;max-width:none}.coach-grid{gap:25px 16px}.coach-card h3{font-size:25px}.coach-card p{font-size:11px}.coach-card .role{font-size:8px}.team-note{display:block}.team-note a{margin-top:18px}
 .pt-section{grid-template-columns:1fr;gap:40px}.pt-section figure img{height:430px}.pt-section h2{font-size:19vw}.pt-options b{font-size:26px}.membership-cards{grid-template-columns:1fr;gap:14px}.membership-cards article{padding:22px}.membership-cards h3{margin:0 0 8px}.membership-cards p{font-size:12px}
 .app-features{gap:14px}.app-feature{padding:22px;grid-template-columns:28px 1fr}.app-feature h3{font-size:27px}.visit-hours{flex-direction:column;gap:15px}.visit-hours p{font-size:11px}.subpage .brand{font-size:25px}.subpage .header{padding-left:6vw;padding-right:6vw}
 .subpage .page-hero{padding-top:42px}.page-hero h1{font-size:18vw;overflow-wrap:normal}.page-hero .lede{font-size:14px}.class-page-grid{grid-template-columns:1fr;gap:30px;padding-bottom:55px}.class-page-grid figure img{height:400px}.class-page-grid h2{font-size:40px}.page-cta{display:block;padding-top:40px;padding-bottom:40px}.page-cta h2{font-size:48px}.page-cta .button{margin-top:22px}.guide-grid{grid-template-columns:1fr;gap:25px}.guide-nav{position:static;display:flex;flex-wrap:wrap;gap:8px 20px}.guide-nav a{font-size:11px}.guide-step h2{font-size:40px}.guide-step p,.guide-step li{font-size:13px}.timetable-row{grid-template-columns:80px 1fr;gap:10px;font-size:11px}.timetable-row>small{grid-column:2}.timetable-row a{font-size:23px}
}

/* Preserve the complete class photograph at every screen width. */
.discipline-photo{height:clamp(320px,40vw,580px);clip-path:none;background:#10120f}.discipline-photo img{display:block;width:100%;height:100%;object-fit:contain}.discipline-photo:after{background:none}.class-page-grid figure img{height:auto;object-fit:contain}
.tutorial-sheet{clear:both;margin:32px 0 42px}.tutorial-sheet a{display:block;border:1px solid var(--line);border-radius:8px;overflow:hidden}.tutorial-sheet img{width:100%;height:auto;display:block}.tutorial-sheet figcaption{font-size:11px;line-height:1.6;color:var(--muted);margin-top:12px}.guide-step h3{margin-top:30px}.guide-grid>div{min-width:0}
@media(max-width:700px){.tutorial-sheet a{overflow-x:auto}.tutorial-sheet img{min-width:760px;max-width:none}.tutorial-sheet figcaption:after{content:" · Swipe the picture sideways to follow each step."}}

.coach-grid{align-items:start}.coach-credentials{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.coach-credentials summary{cursor:pointer;font-size:11px;display:flex;justify-content:space-between;gap:10px;list-style:none}.coach-credentials summary::-webkit-details-marker{display:none}.coach-credentials summary span{color:var(--red);font-size:18px}.coach-credentials[open] summary span{transform:rotate(45deg)}.coach-credentials ul{padding-left:17px;margin-top:14px}.coach-credentials li{font-size:12px;line-height:1.7;margin-bottom:9px}.coach-credentials summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.price-table{width:100%;border-collapse:collapse;margin:24px 0;font-size:13px;text-align:left}.price-table caption{text-align:left;font-size:10px;letter-spacing:.06em;color:var(--muted);padding-bottom:12px}.price-table th,.price-table td{padding:12px 6px;border-bottom:1px solid var(--line)}.price-table th{font-weight:500}.price-table td{font-weight:700;text-align:right;white-space:nowrap}.membership-cards .package-includes{color:inherit;min-height:88px}.membership-cards .text-link{display:inline-block;margin-top:18px}.membership-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:48px 0}.membership-benefits h3{font:600 30px var(--display);margin:12px 0}.membership-benefits p,.membership-benefits li,.membership-details p,.membership-details li{font-size:13px;line-height:1.8}.membership-benefits ul,.membership-details ul{padding-left:18px}.membership-details{border-top:1px solid var(--line)}.membership-details details{padding:22px 0;border-bottom:1px solid var(--line)}.membership-details summary{display:flex;justify-content:space-between;cursor:pointer;font-size:17px;list-style:none}.membership-details summary::-webkit-details-marker{display:none}.membership-details summary span{color:var(--red)}.membership-details details[open] summary{margin-bottom:20px}.membership-details h4{margin:22px 0 10px}.membership-details .price-table{max-width:720px}.membership-details summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}@media(max-width:700px){.membership-benefits{grid-template-columns:1fr;gap:24px}.membership-cards .package-includes{min-height:0}.membership-details .price-table{font-size:11px}.price-table th,.price-table td{padding:10px 3px}}
.official-club-logo{flex:0 0 200px;background:#fff;padding:12px;max-width:200px}.official-club-logo img{display:block;width:100%;height:auto;object-fit:contain}.official-fusion-logo{width:260px;max-width:100%;padding:14px;background:#fff;margin:24px 0}.official-fusion-logo img{display:block;width:100%;height:auto;object-fit:contain}footer{flex-wrap:wrap;gap:24px}@media(max-width:700px){.official-club-logo{flex-basis:auto;width:170px}.official-fusion-logo{width:220px}}

/* Supplied transparent logos and aligned term comparison. */
.header .brand{gap:18px;flex-shrink:0}.header .brand img{object-fit:contain;border-radius:0;height:68px;width:auto}.header .brand .warrior-header-logo{width:65px}.header .brand .fxf-header-logo{width:76px;height:78px}.official-club-logo.cutout-logos{background:transparent;display:flex;align-items:center;gap:22px;max-width:240px;flex-basis:240px;padding:0}.cutout-logos .warrior-header-logo{width:82px;height:auto}.cutout-logos .fxf-header-logo{width:106px;height:auto}.membership-details .price-table:has(thead){table-layout:fixed}.membership-details .price-table:has(thead) th:first-child{width:34%;text-align:left}.membership-details .price-table thead th:not(:first-child),.membership-details .price-table:has(thead) td{text-align:center;width:22%;vertical-align:middle}.membership-details .price-table thead th{white-space:normal}@media(max-width:700px){.header .brand{gap:10px}.header .brand .warrior-header-logo{width:44px;height:44px}.header .brand .fxf-header-logo{width:52px;height:60px}.header{gap:12px}.membership-details .price-table:has(thead) th:first-child{width:31%}.membership-details .price-table:has(thead) td,.membership-details .price-table thead th:not(:first-child){width:23%}}
