@font-face{font-family:Newsreader;src:url('/assets/fonts/newsreader-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--paper:#f6f3ed;--white:#fffdf9;--ink:#233b32;--muted:#62685f;--orange:#ad482c;--orange-light:#eee3d5;--line:#d6d8ce;--sage:#e4e8df;--font:Manrope,'Segoe UI',sans-serif;--display:Newsreader,Georgia,serif;--max:1240px}
body{font-size:16px}
h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:1.08}
h3{font-family:var(--font);font-weight:500;letter-spacing:-.03em;line-height:1.25}
h1 em,h2 em{font-family:inherit;font-style:normal;color:inherit;letter-spacing:inherit}
.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:600}
.button{border-radius:0;min-height:48px;padding:13px 19px;font-size:12px;gap:24px}
.text-link{font-size:12px;font-weight:600;gap:20px;line-height:1.5}
.utility{background:var(--ink)}
.utility-inner{height:34px;min-height:34px;padding-block:0}
.header .member-booking-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;margin-left:18px;padding:10px 18px;background:var(--orange);color:#fff;border:1px solid var(--orange);border-radius:999px;font-size:12px;font-weight:700;letter-spacing:0;line-height:1.3;white-space:nowrap;flex-shrink:0;position:relative;isolation:isolate}
.header .member-booking-button::after{content:"";position:absolute;inset:-5px;border:2px solid rgba(190,73,38,.48);border-radius:inherit;pointer-events:none;animation:booking-highlight-ring 2.4s cubic-bezier(.4,0,.2,1) infinite}
.header .member-booking-button:hover::after{border-color:var(--orange);animation-play-state:paused;transform:scale(1.03);opacity:1}
@keyframes booking-highlight-ring{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(1.045);opacity:1}}
@media(prefers-reduced-motion:reduce){.header .member-booking-button::after{animation:none;opacity:.8}}
.header .member-booking-button:hover{background:#903821;border-color:#903821}
.header .member-booking-button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
@media(max-width:420px){.utility-inner{justify-content:flex-start}.header-inner{gap:8px}.header .brand img{width:145px}.header .member-booking-button{min-height:40px;margin-left:4px;padding:8px 11px;gap:7px;font-size:10px}.header .member-booking-button span{font-size:15px}.menu-toggle{padding:8px 10px;gap:0}.menu-toggle span:first-child{display:none}}
.header{background:var(--white)}
.header-inner{height:83px;gap:26px}
.brand{flex-shrink:0}.brand img{width:186px}
.header nav{gap:24px;white-space:nowrap;font-size:11px}
.header nav a[aria-current=page]{color:var(--orange)}
.section{padding-block:70px}
.club-hero-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:55px;padding-block:32px}
.club-hero-heading .eyebrow{margin-bottom:13px}
.club-hero-heading h1{font-size:clamp(43px,4.9vw,69px);line-height:1.02}
.club-hero-intro{max-width:435px;justify-self:end}
.club-hero-intro>p{font-size:14px;line-height:1.8}
.club-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:19px}
.club-hero-image{margin:0;position:relative;background:var(--ink)}
.club-hero-image>img{width:100%;height:clamp(265px,26vw,370px);object-fit:cover;object-position:50% 55%}
.club-hero-image figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:20px;padding:45px max(36px,calc((100vw - var(--max))/2)) 18px;background:linear-gradient(transparent,rgba(10,20,16,.72));font-size:10px;color:#fff;letter-spacing:.08em}
.club-facts{background:var(--ink);color:var(--paper)}
.club-facts>.wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;align-items:center;gap:24px;padding-block:20px}
.club-facts p{color:inherit;display:flex;align-items:center;gap:13px;margin:0}
.club-facts strong{font-family:var(--display);font-size:29px;font-weight:400;line-height:1}
.club-facts p>span{font-size:9px;max-width:125px;line-height:1.6;color:#d3dacf}
.club-facts a{font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:1px solid #526458;padding-left:24px}
@media(max-width:1100px){.header nav{gap:17px}.brand img{width:172px}.club-hero-heading{gap:35px}.club-facts>.wrap{gap:18px}.club-facts p{gap:10px}.club-facts strong{font-size:25px}}
@media(max-width:960px){.header-inner{height:78px}.header nav{gap:13px}.club-hero-heading{gap:25px}.club-hero-intro>p{font-size:13px}.club-facts>.wrap{grid-template-columns:repeat(2,1fr);gap:17px 30px}.club-facts a{border:0;padding-left:0;justify-content:flex-start}}
@media(max-width:580px){.section{padding-block:48px}.club-hero-heading{grid-template-columns:1fr;gap:19px;padding-block:26px}.club-hero-heading h1{font-size:49px}.club-hero-intro{max-width:none;justify-self:stretch}.club-hero-intro>p{font-size:13px}.club-hero-actions{gap:22px;margin-top:17px}.club-hero-image>img{height:230px;object-position:62% 50%}.club-hero-image figcaption{padding:35px 20px 13px;font-size:9px}.club-hero-image figcaption>span:last-child{display:none}.club-facts>.wrap{gap:19px 23px}.club-facts strong{font-size:25px}.club-facts p>span{font-size:8px}.club-facts a{font-size:10px}}
.club-introduction{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;align-items:start}
.club-introduction h2{font-size:clamp(35px,3.8vw,50px)}
.club-introduction .club-lead{font-family:var(--display);font-size:27px;line-height:1.4;color:var(--ink)}
.club-introduction p:not(.club-lead){font-size:14px;line-height:1.8;margin-top:20px}
.club-introduction .text-link{margin-top:24px}
.club-section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:32px}
.club-section-heading .eyebrow{margin-bottom:14px}
.club-section-heading h2{font-size:clamp(36px,3.8vw,51px)}
.club-section-heading>p{max-width:350px;font-size:13px;line-height:1.8}
.club-equipment-section{background:#e9ece4}
.club-machine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.club-machine figure{margin:0}
.club-machine .equipment-image{width:100%;aspect-ratio:4/3;height:auto;max-height:none}
.club-machine .speediance-image,.wide-product .speediance-image{object-position:center}
.club-machine .brand-image{object-fit:cover}
.club-machine figcaption{font-size:9px;line-height:1.5;color:var(--muted);margin-top:9px}
.club-machine-copy{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;padding-top:23px}
.club-machine-copy .eyebrow{font-size:8px;margin-bottom:10px}
.club-machine-copy h3{font-family:var(--display);font-size:34px;letter-spacing:-.025em}
.club-machine-copy p{font-size:13px;line-height:1.8;margin-bottom:18px}
.club-inbody{display:grid;grid-template-columns:1fr 1.45fr auto;align-items:center;gap:40px;border-top:1px solid #c6cdbf;margin-top:38px;padding-top:28px}
.club-inbody .eyebrow{font-size:8px;margin-bottom:10px}.club-inbody h3{font-size:22px}.club-inbody p{font-size:13px;line-height:1.8}
.club-coaching{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center}
.club-coaching figure{margin:0}.club-coaching figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
.club-coaching figcaption{font-size:10px;color:var(--muted);margin-top:11px}
.club-coaching h2{font-size:clamp(35px,3.7vw,48px)}
.club-coaching>div>p{font-size:14px;line-height:1.85;margin-top:22px}
.club-coaching-links{margin-top:26px;border-top:1px solid var(--line)}
.club-coaching-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:13px;border-bottom:1px solid var(--line);font-size:12px}
.club-coaching-links a:hover{color:var(--orange)}
.club-treatments{background:var(--ink);color:var(--paper);padding-block:60px}
.club-treatments-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:65px;align-items:center}
.club-treatments figure{margin:0}.club-treatments figure img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:63% center;max-height:390px}
.club-treatments figcaption{font-size:10px;color:#c7d0c7;margin-top:12px}
.club-treatments .eyebrow{color:#d8c7b1;margin-bottom:16px}
.club-treatments h2{font-size:clamp(38px,4.3vw,58px)}
.club-treatments-copy>p{font-size:14px;line-height:1.8;color:#d5dcd2;margin-top:17px}
.club-practitioners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:38px}
.club-practitioner{min-width:0;border-top:1px solid #526459;padding-top:20px;margin:0}
.club-practitioner-copy{padding-top:22px}
.club-practitioner h3{font-family:var(--display);font-size:28px;font-weight:400;line-height:1.25;color:var(--paper)}
.club-practitioner p{font-size:12px;color:#d5dcd2;margin-top:7px;line-height:1.8}
.club-treatment-offer{display:block;font-size:11px;color:#f0c2a5;margin-top:11px}
.club-practitioner .text-link{border-color:#a2b4a3;color:var(--paper);margin-top:15px;font-size:11px}
.club-practitioner .text-link:hover{color:#f0c2a5}
.club-treatments-copy>.button{margin-top:28px;background:var(--paper);border-color:var(--paper);color:var(--ink)}
.club-treatments-copy>.button:hover{background:#e9d8c5}
.club-treatments-copy>p.club-treatment-note{font-size:10px;line-height:1.7;margin-top:18px}
.club-price-list{border-top:1px solid var(--line)}
.club-plan{display:grid;grid-template-columns:1fr 1fr 1.12fr;column-gap:50px;padding:32px 0;border-bottom:1px solid var(--line)}
.club-plan-featured{background:#e8ece3;margin-inline:-22px;padding-inline:22px;border-left:2px solid var(--ink)}
.club-plan .eyebrow{font-size:8px;margin-bottom:12px}
.club-plan h3{font-family:var(--display);font-size:34px;font-weight:400}
.club-plan-name>p{font-size:12px;line-height:1.8;margin-top:13px;max-width:270px}
.club-plan-tag{display:inline-block;margin-top:16px;font-size:8px;text-transform:uppercase;letter-spacing:.1em;border:1px solid #a7b4a3;padding:5px 9px}
.club-plan .price{margin-top:0}.club-plan .price strong{font-family:var(--display);font-size:54px;letter-spacing:-.03em;font-weight:400}
.club-plan .price-detail,.club-plan .offer{font-size:11px;line-height:1.7;margin-top:12px}
.club-plan .offer strong{font-weight:600;color:var(--ink)}
.club-plan-price .text-link{margin-top:18px;font-size:11px}
.club-plan .check-list{padding:3px 0 0;margin:0;border:0;display:block}
.club-plan .check-list li{font-size:12px;margin-bottom:10px;line-height:1.7}
.club-memberships>.text-link{margin-top:25px}
.pricing-controls{margin-bottom:20px}.pricing-controls>span{font-size:12px}.segmented{background:#e2e6dc;border-radius:0}.segmented button{border-radius:0;min-height:40px}
.pricing-footnote{font-size:11px;line-height:1.8;margin:23px 0 0;text-align:left;max-width:820px}
.page-intro{padding-block:37px 30px}.page-intro h1{font-size:clamp(42px,5.2vw,68px);max-width:1000px}.page-intro p{font-size:15px;margin-top:17px;max-width:680px}
.page-subnav{margin-bottom:30px;padding-block:14px}.page-subnav a{font-size:11px}
.compact-top{padding-top:10px}
.story-grid{gap:65px}.story-grid h2{font-size:clamp(34px,3.8vw,50px)}.story-grid img:not(.brand-image){aspect-ratio:4/3;object-fit:cover}
.feature-list{display:block}.feature-list article{display:grid;grid-template-columns:55px 1fr 1.6fr;gap:28px;align-items:start;padding-block:25px;border-top:1px solid #c6cec0}.feature-list article:last-child{border-bottom:1px solid #c6cec0}.feature-list .number{margin:0;line-height:1.2;font-family:var(--display);font-size:24px}.feature-list h3{font-size:22px}.feature-list p{margin:0;font-size:14px;line-height:1.8}
.detail-section{padding-block:42px}.detail-heading h2{font-family:var(--display);font-size:35px;font-weight:400;letter-spacing:-.02em}.detail-section h3{font-size:20px;font-weight:500}.detail-section .detail-grid{gap:35px}.detail-section p{line-height:1.85}.detail-note{background:var(--sage);border-left:2px solid #869a83}.detail-grid .number{font-family:var(--display)}
.service-grid{gap:55px}.service-card{background:none;border-top:1px solid var(--ink);padding:30px 0}.service-card h2{font-size:38px;letter-spacing:-.02em}.service-card dl>div{font-size:12px;line-height:1.7}.service-card .service-offer{background:var(--sage)}
.practitioner-brand{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:2.4/1;overflow:hidden;border:1px solid #d6d8ce;background:#fff}
.practitioner-brand--oceanside{background:#142725;border-color:#526459}
.practitioner-brand-art{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;width:min(72%,320px);aspect-ratio:17/10}
.practitioner-brand-art img{display:block;width:100%;height:auto;max-width:none;object-fit:contain}
.practitioner-brand--myosteo img{width:min(88.235294%,280px)}
/* Crop only the Oceanside file's empty square padding, not its artwork. */
.practitioner-brand--oceanside img{position:absolute;width:147.058824%;left:-23.529412%;top:-55%;height:auto}
.service-card>.practitioner-brand{margin-bottom:27px}
.narrow-banner{background:var(--sage);padding:30px}.narrow-banner h3{font-size:25px}
@media(max-width:820px){.club-practitioners{gap:30px}}
@media(max-width:650px){.club-practitioners{grid-template-columns:1fr;gap:30px;margin-top:30px}}
.visit-band{background:#e9e1d4;padding-block:45px}.visit-inner{gap:60px;grid-template-columns:1fr 1fr}.visit-inner h2{font-size:45px;max-width:450px}.visit-inner p{font-size:13px;line-height:1.8}.footer{padding-top:44px}.footer-name{font-family:var(--font);font-size:25px}.footer-top{padding-bottom:35px}.footer .eyebrow{margin-bottom:17px}.footer-top>div>a:not(.footer-name){font-size:11px}
@media(max-width:1100px){.club-introduction{gap:45px}.club-machine-copy{grid-template-columns:1fr;gap:15px}.club-inbody{grid-template-columns:1fr 1.4fr;gap:22px}.club-inbody>.text-link{grid-column:2;justify-self:start}.club-coaching{gap:45px}.club-treatments-layout{gap:40px}.club-plan{column-gap:30px}}
@media(max-width:820px){.club-introduction{gap:30px}.club-introduction .club-lead{font-size:24px}.club-section-heading{gap:30px;align-items:start;flex-direction:column}.club-section-heading>p{max-width:600px}.club-machine-grid{gap:24px}.club-coaching{gap:30px}.club-treatments-layout{gap:30px}.club-treatments figure img{aspect-ratio:3/4}.club-practitioner h3{font-size:26px}.club-plan{grid-template-columns:1fr 1.1fr;row-gap:20px}.club-plan .check-list{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.1fr;gap:0 30px}.club-plan-featured{margin-inline:-12px;padding-inline:12px}.feature-list article{grid-template-columns:35px 1fr;gap:15px 20px}.feature-list p{grid-column:2}.story-grid{gap:35px}.service-grid{gap:30px}.service-card h2{font-size:32px}.visit-inner{gap:35px}}
@media(max-width:650px){.club-introduction,.club-coaching,.club-treatments-layout{grid-template-columns:1fr}.club-introduction{gap:25px}.club-coaching{gap:28px}.club-treatments{padding-block:42px}.club-treatments figure img{aspect-ratio:4/3;max-height:360px}.club-treatments-layout{gap:28px}.club-treatments h2{font-size:43px}.club-practitioner h3{font-size:28px}.club-inbody{grid-template-columns:1fr;gap:17px}.club-inbody>.text-link{grid-column:1}.club-machine-grid{grid-template-columns:1fr;gap:32px}.club-machine-copy{grid-template-columns:1fr 1.4fr;gap:22px}.club-section-heading{gap:18px}.club-section-heading h2{font-size:39px}.club-coaching h2{font-size:39px}.service-grid{grid-template-columns:1fr}.service-card{padding-bottom:5px}.page-intro h1{font-size:46px}.story-grid{grid-template-columns:1fr}.visit-inner{grid-template-columns:1fr;gap:20px}.visit-inner h2{font-size:40px}}
@media(max-width:420px){.club-machine-copy{grid-template-columns:1fr;gap:13px}.club-plan{grid-template-columns:1fr;gap:22px}.club-plan .check-list{display:block}.club-plan h3{font-size:34px}.club-plan .price strong{font-size:51px}.club-plan-price .text-link{font-size:12px}.pricing-controls{align-items:stretch}.club-machine-copy h3{font-size:33px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
