@font-face{font-family:SiteBody;src:local('Segoe UI'),local('Arial');font-display:swap}
:root{--ink:#171914;--dark:#141512;--panel:#20221d;--paper:#f4f2eb;--yellow:#d8be62;--muted:#b9bcb0;--line:rgba(255,255,255,.15)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{font-family:SiteBody,'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--dark);font-size:16px;line-height:1.75}
a{color:inherit;text-underline-offset:5px}
img{max-width:100%;height:auto}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid #e05a32;outline-offset:5px}
h1,h2,h3,h4{font-weight:750;line-height:1.08;letter-spacing:-.045em}
h1{font-size:clamp(2.2rem,4.3vw,4rem)}
h2{font-size:clamp(1.65rem,2.6vw,2.25rem);margin-bottom:1rem}
h3{font-size:1.5rem;letter-spacing:-.025em}
p{margin-bottom:1.05rem}
.container{max-width:1280px;padding-left:28px;padding-right:28px}
.skip-link{position:fixed;left:20px;top:-90px;padding:12px 20px;background:var(--yellow);color:var(--ink);z-index:1100}
.skip-link:focus{top:12px}
.location-strip{background:#1c1e18;border-bottom:1px solid #34372c;font-size:.72rem;font-weight:500;line-height:1.4;color:#c7cbbd}
.location-strip a{text-decoration:none;white-space:nowrap}
.location-strip>.container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 18px;padding-top:9px;padding-bottom:9px}
.location-strip a{display:inline-flex;align-items:center;gap:8px}
.location-strip .icon{color:var(--yellow);width:14px;height:14px}
.strip-map{margin-left:5px;color:#d8be62}
.site-header{background:rgba(20,21,18,.98);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--line)}
.navbar{min-height:72px;padding-top:0;padding-bottom:0}
.navbar-brand{padding:0;display:flex;align-items:center;overflow:hidden;width:115px;height:62px}
.navbar-brand img{height:82px;width:auto;max-width:none;flex-shrink:0;object-fit:contain;transform:translateY(2.7px)}
.nav-link{font-size:1rem;color:#d0d1c9;font-weight:600;padding:12px!important}
.navbar-nav .nav-link.active,.nav-link:hover{color:var(--yellow)}
.btn{border-radius:0;font-size:.85rem;font-weight:750;padding:15px 23px;line-height:1.4;letter-spacing:.01em;transition:background .2s,color .2s,transform .2s}
.btn:hover{transform:translateY(-2px)}
.btn-brand{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.btn-brand:hover,.btn-brand:focus{background:#e6ce80;color:#141512;border-color:#e6ce80}
.btn-sm{padding:12px 20px}
.btn-dark{background:var(--ink);border-color:var(--ink);color:#fff}
.btn-outline-light{border-color:#9faaa0;color:#fff}
.action-buttons{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.action-buttons .btn span{margin-left:13px}
.hero{position:relative;color:white;display:flex;flex-direction:column;align-items:stretch;isolation:isolate}
.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero-image{object-position:50% 40%}
.hero-shade{background:linear-gradient(90deg,rgba(9,12,9,.94),rgba(9,12,9,.69) 48%,rgba(9,12,9,.15)),linear-gradient(0deg,rgba(9,12,9,.35),transparent 35%);z-index:-1}
.hero-content{padding-top:40px;padding-bottom:60px;width:100%}
.eyebrow{font-size:.68rem;letter-spacing:.17em;font-weight:800;display:block;margin-bottom:18px;text-transform:uppercase}
.hero h1{max-width:850px;margin-bottom:20px;line-height:1.02;letter-spacing:-.025em}
.hero h1 span{color:var(--yellow)}
.hero h1 .hero-heart{color:#ff0000;display:inline-block;font-size:.7em;vertical-align:.04em}
.hero-heart .icon{width:1em;height:1em;vertical-align:-.08em}
.hero-copy{max-width:520px;color:#d1d5c9;font-size:1rem;line-height:1.7;margin-bottom:23px}
.hero-benefits{padding-left:21px;list-style:disc;line-height:1.55}
.hero-benefits li{padding-left:3px;margin-bottom:7px}
.hero-benefits li:last-child{margin-bottom:0}
.hero-benefits li::marker{color:var(--yellow);font-size:.9em}
.stats-section{background:#20221b;color:#fff;border-bottom:1px solid var(--line)}
.hero>.stats-section{width:100%;padding:16px 0;background:rgba(20,23,16,.48);border-top:1px solid var(--line)}
.stats-heading{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;padding:0 16px 0 0;border-right:1px solid var(--line);min-width:0}
.stats-heading h2{font-size:.75rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin:0}
.stats-heading>a{font-size:.72rem;text-decoration:none;color:#bfc4b3}
.stat-copy{min-width:0}
.stat>.icon{width:30px;height:30px;color:var(--yellow);flex-shrink:0}
.stat{padding:0 16px;border-right:1px solid var(--line);display:flex;flex-direction:row;align-items:center;gap:12px}
.stat:last-child{border-right:0}
.stat strong{font-size:clamp(1.4rem,1.9vw,1.8rem);font-weight:650;letter-spacing:-.04em;line-height:1.2;color:#f0eddf}
.stat-copy>span{display:block;color:#bfc4b3;font-size:.78rem;margin-top:4px}
.section{padding:48px 0}
.section.section-cream{background:var(--paper);padding:24px 0}
.section-dark{background:var(--dark);color:#f6f4ec}
.section.home-services-section{padding-top:24px}
.home-services-section .eyebrow,.floor-preview-section .eyebrow{margin-bottom:9px}
@media(max-width:575.98px){.home-services-section .eyebrow,.floor-preview-section .eyebrow{margin-bottom:10px}}
.section-dark .eyebrow,.team-feature .eyebrow,.location-section .eyebrow{color:var(--yellow)}
.section-cream .eyebrow{color:#63674e}
.lead-copy{font-size:1.07rem;line-height:1.6;letter-spacing:-.02em}
.section-cream p{color:#565b4d}
.section-cream h2 em{font-style:normal;color:#70764c}
.text-link{font-size:.84rem;font-weight:750;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-block}
.text-link:hover{color:#8c7611}
.explore-services-link{font-size:16px}
.gallery-view-link{font-size:16px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;margin-bottom:28px}
.section-heading h2{margin-bottom:0}
.section-heading>.text-link{flex-shrink:0;margin-bottom:8px}
.heading-copy{max-width:340px;margin-bottom:0}
.goal-card{background:var(--panel);padding:20px;display:flex;flex-direction:column;min-height:0;text-decoration:none;position:relative;border:1px solid #35382d;transition:border .2s,transform .2s;height:100%}
.goal-card:hover{border-color:var(--yellow);transform:translateY(-4px);color:white}
.card-number{font-size:.66rem;letter-spacing:.12em;font-weight:700;color:#8c9380;display:block;margin-bottom:22px}
.goal-card h3{font-size:1.5rem}
.goal-card p{font-size:.9rem;color:#b9bfad;margin-bottom:0}
.goal-card .card-number{margin-bottom:18px}
.goal-card .service-symbol{top:16px;right:18px}
.icon{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.15em;flex-shrink:0}
.btn>.icon{margin-right:6px;vertical-align:-.18em}
.text-link>.icon{margin-left:4px}
.service-symbol{position:absolute;right:24px;top:23px;color:var(--yellow)}
.service-symbol>.icon{width:40px;height:40px}
.service-card{position:relative}
.service-card .service-symbol{color:#727746}
.equipment-card>.icon{width:32px;height:32px;color:#7d7548;margin-bottom:17px}
.achievements strong>.icon{color:#7c713f;margin-right:4px}
.footer-link>.icon{margin-right:5px}
.footer-link>.icon:last-child:not(:first-child){width:.85em;height:.85em;margin-right:0}
.team-feature{background:#e7e5dc}
.team-feature .eyebrow{color:#6c6c4b;margin-bottom:8px}
.athlete-frame{background:radial-gradient(ellipse at center,#44493a,#171b13 70%);position:relative;overflow:hidden;min-height:400px;display:flex;align-items:flex-end}
.athlete-frame img{height:400px;width:100%;object-fit:contain;object-position:bottom}
.athlete-label{position:absolute;bottom:20px;left:20px;color:white;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.56rem;letter-spacing:.2em}
.athlete-caption{position:absolute;right:0;bottom:0;max-width:calc(100% - 64px);padding:14px 16px;background:rgba(15,18,12,.82);color:#fff;text-align:right}
.athlete-caption h3{font-size:1.7rem;margin:0 0 7px}
.athlete-caption .team-role{font-size:.6rem;line-height:1.5;letter-spacing:.07em;color:#e0e4d5;margin:0}
.team-copy{padding-left:50px}
.team-copy h2 em{font-style:normal;color:#72764e}
.team-copy .team-heading{font-size:28px;line-height:1.25;letter-spacing:-.035em}
@media(max-width:575.98px){.team-copy .team-heading{font-size:22px}}
.team-copy h3{font-size:1.7rem;margin-top:22px;margin-bottom:10px}
.team-role{font-size:.65rem;letter-spacing:.12em;font-weight:800;color:#676c57}
.team-copy>p:not(.team-role){color:#565b4d}
.achievements{display:flex;gap:25px;border-top:1px solid #c6c8bb;border-bottom:1px solid #c6c8bb;margin:15px 0;padding:15px 0}
.achievements>div{display:flex;flex-direction:column;flex:1}
.achievements strong{font-size:.95rem}
.achievements span{font-size:.69rem;color:#626753;margin-top:5px}
.floor-collage{position:relative;display:grid;grid-template-columns:1.65fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:4px;aspect-ratio:16/9;overflow:hidden;background:var(--dark);text-decoration:none;color:#fff}
.floor-collage>img{display:block;width:100%;height:100%;min-height:0;min-width:0;object-fit:cover;transition:filter .25s}
.floor-collage .collage-main{grid-column:1;grid-row:1 / 3}
.floor-collage-reverse{grid-template-columns:1fr 1.65fr}
.floor-collage-reverse .collage-main{grid-column:2}
.floor-collage::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(8,12,7,.88));pointer-events:none}
.floor-collage-caption{position:absolute;left:22px;right:22px;bottom:20px;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:15px}
.floor-collage-caption>div{padding:10px 14px;background:rgba(8,12,7,.8)}
.floor-collage-label{display:block;font-size:.58rem;font-weight:700;letter-spacing:.14em;color:#e0d6a8;margin-bottom:6px}
.floor-collage-caption h3{font-size:1.65rem;line-height:1.1;margin:0;color:#fff}
.floor-collage-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.5);color:#fff;flex-shrink:0}
.floor-collage-arrow .icon{width:18px;height:18px}
.floor-collage:hover{color:#fff}
.floor-collage:hover>img{filter:brightness(1.08)}
.floor-collage:hover .floor-collage-arrow{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}
@media(max-width:575.98px){.floor-collage-caption{left:15px;right:15px;bottom:14px}.floor-collage-caption h3{font-size:1.35rem}.floor-collage-label{font-size:.5rem;letter-spacing:.1em}.floor-collage-arrow{width:28px;height:28px}}
.location-section{background:#191b16;color:white}
.location-section p,.location-section address{color:#bfc7b0}
.location-section h2{font-size:clamp(1.65rem,2.6vw,2.25rem)}
.location-section address{font-style:normal;max-width:410px}
.map-container{height:345px;background:#262d20;border:1px solid #434a37;position:relative;overflow:hidden}
.map-container iframe{height:100%;width:100%;border:0;display:block}
.map-external{position:absolute;top:12px;right:12px;z-index:1;display:inline-flex;align-items:center;gap:7px;padding:9px 13px;background:var(--yellow);border:1px solid var(--yellow);box-shadow:0 2px 10px rgba(0,0,0,.2);color:var(--ink);font-size:.75rem;font-weight:700;text-decoration:none}
.map-external:hover{background:#e6ce80;border-color:#e6ce80;color:var(--ink)}
.narrow{max-width:880px}
.accordion-item,.accordion-button{background:transparent}
.accordion-item{border-color:#cccfc1}
.accordion-button{padding:19px 0;font-size:1rem;font-weight:650;color:var(--ink);letter-spacing:-.02em}
.accordion-button:not(.collapsed){background:transparent;color:#626a31;box-shadow:none}
.accordion-button:focus{box-shadow:0 0 0 2px #858a4e}
.accordion-body{padding:0 15px 24px 0;color:#5c6251}
.page-intro{color:white;background:linear-gradient(115deg,#1c2117,#141512);padding:16px 0;border-bottom:1px solid #353b2a}
.page-intro .eyebrow{color:var(--yellow);margin-bottom:18px}
.page-intro h1{font-size:clamp(2rem,3.4vw,2.875rem);max-width:1000px;margin:0}
.page-intro p{color:#b8c1aa;margin:8px 0 0}
.service-card{padding:27px;background:#ebe9e0;border:1px solid #d8dacb;height:100%}
.service-card .card-number{color:#767c61;margin-bottom:25px}
.service-card h3{font-size:1.4rem}
.service-card p{font-size:.95rem}
.equipment-card strong{display:block;font-size:2.2rem;color:#5c633e;line-height:1.25;letter-spacing:-.05em;margin-bottom:15px}
.equipment-card h3{font-size:1.1rem}
.result-card{height:auto;margin-top:25px}
.result-card img{width:100%;height:280px;object-fit:cover}
.result-card figcaption{font-size:.75rem;margin-top:8px}
blockquote{border-left:3px solid #8c925c;padding-left:20px;font-style:italic;color:#505744;margin-top:25px}
.feature-photo{height:390px;width:100%;object-fit:cover}
.callout{padding:35px;background:#e2e3d4;border-left:4px solid #727a42}
.callout p:last-child{margin-bottom:0}
.pending-content{padding:30px;border:1px dashed #b4baa2;margin-top:25px;background:#eeede4}
.pending-content .eyebrow{margin-bottom:15px}
.pending-content h3{font-size:1.4rem}
.pending-content p{font-size:.9rem;margin:0}
.transformation-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.transformation-section{padding:45px 0;border-bottom:1px solid #c5cbb7;scroll-margin-top:120px}
.transformation-section>h3{font-size:1.65rem}
.transformation-intro .lead-copy{max-width:650px}
.transformation-demo-note{font-size:.8rem;margin:22px 0 0;color:#63674e}
.transformation-results{scroll-margin-top:110px}
.transformation-results .heading-copy{font-size:.9rem;max-width:370px}
.transformation-card{position:relative;height:100%;background:#ebe9e0;border:1px solid #d0d0c2;overflow:hidden}
.transformation-card-personal{border-color:#b6ad88}
.transformation-card-top{position:absolute;top:0;left:0;right:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.65rem;font-weight:750}
.transformation-card-top>span{padding:3px 8px;background:var(--dark);color:#fff}
.transformation-card-top .transformation-sample{font-size:.55rem;letter-spacing:.1em;background:var(--paper);color:var(--ink)}
.transformation-comparison{display:grid;grid-template-columns:1fr 1fr;gap:3px}
.transformation-comparison figure{position:relative;margin:0;min-width:0;background:#dcdad0}
.transformation-comparison figure:last-child{background:#e6e0c9}
.transformation-comparison img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.transformation-comparison figcaption{position:absolute;bottom:0;left:0;padding:2px 8px;background:var(--dark);color:#fff;font-size:.6rem;font-weight:700}
.transformation-card-body{padding:14px 16px}
.transformation-card-body h3{font-size:1rem;font-weight:700;margin-bottom:5px}
.transformation-details{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 12px;margin-bottom:10px}
.transformation-card-body .transformation-goal,.transformation-card-body .transformation-duration{font-size:.7rem;margin:0;color:#505548}
.transformation-coach{display:flex;align-items:center;gap:9px;border-top:1px solid #cdcebf;padding-top:10px}
.transformation-coach img{width:36px;height:36px;object-fit:cover;object-position:50% 20%;border-radius:50%;background:#35382d}
.transformation-coach span{display:block;font-size:.65rem;color:#626747}
.transformation-coach strong{display:block;font-size:.8rem}
.transformation-card-body .transformation-training-note{font-size:.7rem;margin:0;padding-top:10px;border-top:1px solid #cdcebf}
.transformation-enquiry{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding:26px;border:1px solid #d0d0c2;background:#ebe9e0}
.transformation-enquiry h3{font-size:1.4rem;margin-bottom:8px}
.transformation-enquiry p{font-size:.9rem;color:#626747;margin:0}
.transformation-enquiry .btn{flex-shrink:0}
.transformation-footnote{background:var(--paper);padding:0 0 28px;color:#626747;font-size:.75rem}
.transformation-footnote p{margin:0}
.transformations-page{color:var(--ink)}
.transformations-page h2,.transformations-page h3,.transformation-coach strong{color:var(--ink)}
.transformations-page p,.transformations-page .eyebrow,.transformation-card-body .transformation-goal,.transformation-card-body .transformation-duration,.transformation-coach span{color:#505548}
.transformation-sample{opacity:1}
@media(max-width:767.98px){.transformation-results .section-heading{align-items:flex-start;flex-direction:column;gap:16px}.transformation-enquiry{align-items:flex-start;flex-direction:column;padding:22px}.transformation-enquiry .btn{white-space:normal}}
.gallery-section>.container{max-width:none}
.gallery-grid{display:flex;flex-wrap:wrap;gap:16px}
.gallery-grid>div{flex:1 1 160px;min-width:0}
.gallery-grid .gallery-photo-description{margin:10px 0 0;font-size:.8rem;line-height:1.5;color:#565b4d}
.gallery-floor-title{margin-bottom:22px;font-size:1.5rem}
.gallery-button{position:relative;display:block;padding:0;background:#e5e4da;width:100%;border:0;text-align:left;color:var(--ink);overflow:hidden}
.gallery-button img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:filter .2s}
.gallery-button:hover img{filter:brightness(1.1)}
.gallery-button .gallery-zoom{position:absolute;right:8px;bottom:8px;display:flex;align-items:center;gap:5px;padding:6px 9px;background:rgba(21,24,17,.8);color:white;border:1px solid #ffffff40;border-radius:4px;font-size:.7rem;font-weight:650;line-height:1}
.gallery-button:hover .gallery-zoom,.gallery-button:focus-visible .gallery-zoom{background:var(--yellow);color:var(--ink)}
#gallery-dialog{border:1px solid #575d4c;background:#151811;color:white;max-width:95vw;max-height:95vh;padding:0;overflow:auto}
#gallery-dialog::backdrop{background:rgba(0,0,0,.88)}
#gallery-dialog img{max-height:75vh;display:block;width:auto;max-width:85vw;margin:auto}
#gallery-dialog p{position:absolute;left:0;right:0;bottom:0;margin:0;padding:14px 18px;background:rgba(0,0,0,.5);color:#f6f4ec;font-size:.85rem;line-height:1.5;pointer-events:none}
.gallery-close{position:absolute;right:12px;top:12px;z-index:2;display:flex;align-items:center;justify-content:center;padding:0;color:white;background:rgba(0,0,0,.5);border:1px solid #ffffff70;border-radius:50%;width:36px;height:36px}
.contact-details a{display:block;padding:16px 0;border-bottom:1px solid #c9cdbd;font-size:clamp(1rem,2vw,1.5rem);text-decoration:none;overflow-wrap:anywhere}
.prose h3{margin-top:35px}
.site-footer{background:#11130f;color:#bcc2ae;padding:42px 0 0;font-size:.82rem}
.site-footer img{object-fit:contain;height:100px}
.footer-tagline{color:#e0e4d3;margin-top:15px;margin-bottom:10px}
.site-footer h2{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#f1f3e9;margin:15px 0 24px}
.footer-link{display:block;text-decoration:none;margin-bottom:10px;font-size:.8rem}
.footer-link:hover{color:var(--yellow)}
.site-footer .text-link{font-size:.76rem;color:var(--yellow);margin-top:12px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-top:1px solid var(--line);margin-top:32px;font-size:.65rem}
.mobile-actions{display:none}

@media(max-width:991.98px){.navbar{min-height:72px}.navbar-collapse{padding-bottom:25px}.navbar-nav{margin-top:15px;margin-bottom:20px}.navbar-nav .nav-link{padding-left:0!important}.section{padding:48px 0}.team-copy{padding-left:calc(var(--bs-gutter-x)*.5)}.hero-shade{background:linear-gradient(90deg,rgba(9,12,9,.94),rgba(9,12,9,.6)),linear-gradient(0deg,rgba(16,20,14,.35),transparent)}.stats-heading{flex-direction:row;align-items:center;justify-content:space-between;padding:10px 0;border-right:0;border-bottom:1px solid var(--line)}.stat:nth-child(2){padding-left:0}.stat:nth-child(3){border-right:0}.stat:nth-child(4){padding-left:0;border-top:1px solid var(--line)}.stat:nth-child(5){border-top:1px solid var(--line)}.athlete-frame{max-width:540px;margin:auto}}
@media(max-width:575.98px){body{font-size:15px;padding-bottom:55px}.container{padding-left:22px;padding-right:22px}.location-strip{font-size:.56rem;letter-spacing:.07em}.navbar{min-height:68px}.navbar-brand{width:110px;height:58px}.navbar-brand img{height:78px;transform:translateY(2.5px)}.hero-content{padding-top:40px;padding-bottom:60px}.hero h1{font-size:clamp(2rem,8.1vw,2.8rem)}.hero-copy{font-size:.9rem;max-width:100%}.hero .btn{font-size:.72rem;padding:14px 15px}.hero .action-buttons{gap:10px}.stat{padding:24px 20px}.stat strong{font-size:2rem}.stat span{font-size:.7rem}.section{padding:32px 0}.eyebrow{font-size:.59rem;letter-spacing:.12em;margin-bottom:20px}.section-heading{display:block}.section-heading>.text-link,.heading-copy{margin-top:20px}.athlete-frame{min-height:320px}.athlete-frame img{height:320px}.achievements{gap:18px}.achievements strong{font-size:.83rem}.achievements span{font-size:.64rem}.map-container{height:300px}.location-section .action-buttons .btn{padding:13px 16px;font-size:.75rem}.footer-bottom{display:block}.footer-bottom a{display:inline-block;margin-top:12px}.site-footer{padding-top:40px}.mobile-actions{position:fixed;bottom:0;left:0;width:100%;display:grid;grid-template-columns:repeat(3,1fr);z-index:99;background:var(--yellow);border-top:1px solid #b6a51c;box-shadow:0 -3px 20px #0002;padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{text-align:center;text-decoration:none;font-weight:750;font-size:.76rem;padding:15px 5px;border-right:1px solid #c7b51a}.mobile-actions a:last-child{border:0}.page-intro h1{font-size:2.2rem}.service-card{padding:28px}.feature-photo{height:290px}.gallery-button img{height:auto}.team-copy h3{font-size:1.55rem}}
@media(max-width:991.98px){.row.g-5{--bs-gutter-y:2rem}}
@media(max-width:575.98px){.row.g-5{--bs-gutter-x:2rem}.location-strip{font-size:.64rem;letter-spacing:0}.location-strip>.container{gap:8px;padding-top:8px;padding-bottom:8px}.location-strip .icon{width:12px;height:12px}.stats-heading{padding:10px 0;gap:12px}.stats-heading h2{font-size:.65rem;letter-spacing:.08em;max-width:180px}.stats-heading>a{font-size:.6rem;max-width:95px;text-align:right}.stat{padding:12px;gap:10px}.stat strong{font-size:1.4rem}.stat>.icon{width:24px;height:24px}.stat-copy>span{font-size:.67rem}.stat:nth-child(4),.stat:nth-child(5){border-top:1px solid var(--line)}.stat:nth-child(4){padding-left:0}.mobile-actions a{display:flex;align-items:center;justify-content:center;gap:6px;border-color:#b49c4a}.mobile-actions{background:var(--yellow);border-color:#b49c4a}.hero .btn{font-size:.7rem;padding:12px}.section .mb-5{margin-bottom:2rem!important}.transformation-section>h3{font-size:1.6rem}}
@media(max-width:991.98px){.stats-section .stats-heading{padding-top:0}.stats-section .stat:nth-child(n+4){padding-bottom:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

#personal-training .personal-training-photo{display:block;width:100%;max-width:320px;max-height:480px;height:auto;object-fit:contain;margin:0 auto}

.page-intro.page-intro-compact{padding:8px 0 16px}

.training-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-bottom:0}
.training-step{position:relative;min-width:0}
.training-step:not(:last-child)::after{content:'\2192';position:absolute;right:-23px;top:32px;color:#727746;font-size:24px;line-height:1}
.training-step .service-card{height:100%;padding:24px}
.training-step-graphic{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.training-step-number{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--yellow);color:var(--dark);font-size:1.2rem;font-weight:750}
.training-step-graphic>.icon{width:30px;height:30px;color:#727746}
.training-step h3{font-size:1.15rem}
.training-step p{margin-bottom:0}
@media(max-width:991.98px){.training-steps{grid-template-columns:1fr;gap:32px}.training-step:not(:last-child)::after{content:'\2193';top:auto;right:calc(50% - 8px);bottom:-28px}.training-step-graphic{margin-bottom:14px}}

.service-card.equipment-card{padding:12px 14px;display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:10px;align-items:center}
.equipment-card>.icon{grid-row:1 / 3;width:26px;height:26px;margin:0}
.equipment-card strong{font-size:1.5rem;line-height:1.15;margin:0 0 3px}
.equipment-card h3{font-size:.8rem;line-height:1.3;margin:0}

.equipment-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;height:100%}
.equipment-stats .equipment-card{grid-template-columns:44px minmax(0,1fr);column-gap:14px}
.equipment-stats .equipment-card>.icon{width:44px;height:44px}
.facilities-collage{height:260px;aspect-ratio:auto;border-radius:5px;outline:1px solid rgba(32,36,29,.1)}
@media(max-width:991.98px){.facilities-collage{height:auto;aspect-ratio:16/9}}

@media(max-width:575.98px){.equipment-stats .equipment-card{grid-template-columns:32px minmax(0,1fr);column-gap:8px;padding:12px 10px}.equipment-stats .equipment-card>.icon{width:32px;height:32px}}

.facilities-collage{grid-template-columns:repeat(3,minmax(0,1fr))}
.facilities-collage::after{display:none}

.facilities-gallery-button{position:absolute;right:12px;bottom:12px;z-index:1;padding:9px 14px;font-size:.8rem}

.contact-location{background:var(--paper);color:var(--ink)}
.contact-location p,.contact-location address{color:#565b4d}
.contact-location .eyebrow{color:#63674e}
.contact-location .btn-outline-light{border-color:var(--ink);color:var(--ink)}
.contact-location .btn-outline-light:hover,.contact-location .btn-outline-light:focus-visible{background:var(--ink);color:white}
.contact-section{background:#191b16;padding:24px 0}
.contact-section p{color:#bfc7b0}
.contact-section .contact-details a{border-color:var(--line)}
.section.offers-section{padding:36px 0}
.offer-feature{display:block;color:var(--ink)}
.offer-summary{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 0 28px}
.offer-summary .eyebrow,.offer-details .eyebrow{color:#736126}
.offer-summary h2{font-size:clamp(1.5rem,2.3vw,2rem)}
.offer-summary p{color:#565b4d;width:100%;margin-bottom:0}
.offer-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;width:112px;height:112px;background:url('../icons/offer-seal.svg') center/contain no-repeat;color:white;filter:drop-shadow(0 6px 12px #0003);transform:rotate(22.5deg)}
.offer-badge::before,.offer-badge::after{content:'\2605\2002\2605\2002\2605\2002\2605';font-size:.48rem;line-height:1;margin:5px 0}
.offer-badge span{font-size:.56rem;font-weight:800;letter-spacing:.12em;line-height:1.3}
.offer-badge strong{font-size:2rem;line-height:1.1;letter-spacing:-.06em}
.offer-details{padding:0}
.offer-timings{list-style:none;padding:0;margin:24px 0 28px;display:grid;gap:10px}
.offer-timings li{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f7f5ee;border-left:3px solid var(--yellow);padding:16px 18px}
.offer-timings li>span{font-size:.8rem;color:#565b4d}
.offer-timings strong{font-size:1.05rem;white-space:nowrap}
.offer-details .offer-terms{font-size:.8rem;color:#565b4d;margin:20px 0 0}
.offer-visit{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px;padding-top:24px;border-top:1px solid #dcd8cb}
.offer-visit p{margin:0}
@media(max-width:767.98px){.offer-summary{align-items:flex-start;flex-direction:column}.offer-details{padding:0}.offer-badge{width:104px;height:104px}.offer-badge strong{font-size:1.84rem}.offer-timings li{flex-wrap:wrap;gap:4px 16px}.offer-visit{align-items:flex-start;flex-direction:column}}
.offer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-bottom:28px}
.offer-option{min-width:0;padding:28px;background:white;border:1px solid #e0dccc;border-top:3px solid var(--yellow);box-shadow:0 8px 24px #17191406}
.offer-option h3{font-size:1.25rem}
.offer-option .offer-timings{margin-bottom:0}



@media(max-width:767.98px){.offer-options{grid-template-columns:1fr}.offer-option{padding:22px}}


.offer-details>.action-buttons{justify-content:center}
.offer-details>.offer-terms{text-align:center}
.offer-details .btn-outline-light{border-color:var(--ink);color:var(--ink)}
.offer-details .btn-outline-light:hover,.offer-details .btn-outline-light:focus-visible{background:var(--ink);color:white}
.gallery-image-frame{position:relative;width:fit-content;margin:auto}
.gallery-controls button{position:absolute;top:50%;transform:translateY(-50%)}
.gallery-previous{left:12px}
.gallery-next{right:12px}
.gallery-controls button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #ffffff70;border-radius:50%;background:rgba(21,24,17,.8);color:white;font-size:2rem;line-height:1}
.gallery-controls button:hover{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}
.gallery-counter{position:absolute;left:50%;top:12px;transform:translateX(-50%);padding:5px 12px;border-radius:20px;background:rgba(21,24,17,.8);font-size:.8rem;color:white;white-space:nowrap}
@media(max-width:575.98px){.gallery-controls button{width:36px;height:36px;font-size:1.7rem}.gallery-previous{left:8px}.gallery-next{right:8px}.gallery-counter{top:8px}}
.gallery-controls button>.icon{display:block;width:22px;height:22px;margin:0;vertical-align:initial}

.gallery-close>.icon{display:block;width:18px;height:18px}.gallery-close:hover{background:var(--yellow);color:var(--ink)}
@media(max-width:575.98px){.gallery-close{top:8px;right:8px}#gallery-dialog p{padding:10px 12px;font-size:.75rem}}

.service-card.service-goal-card{padding-bottom:16px}
.service-goal-card p{margin-bottom:0}
.facility-card h3{padding-right:48px}
@media(min-width:992px){.early-days-gallery>div{flex:0 0 calc((100% - 64px)/5)}}
.gallery-grid+.gallery-floor-title{border-top:1px solid #c4c7b5;padding-top:32px;margin-top:16px}
.coaches-page{background:#e7e5dc}.coach-profile{padding:48px 0}.coach-profile+.coach-profile{border-top:1px solid #c6c8bb}.coach-name{font-size:2rem;margin:0 0 6px}.coach-role{font-size:.7rem;letter-spacing:.1em;font-weight:800;color:#6c6c4b;margin-bottom:18px}.coach-experience{font-size:1.1rem;font-weight:600;color:#4e5540;margin-bottom:18px}.coach-details p{margin-bottom:12px}.coach-awards{display:flex;gap:22px;list-style:none;margin:22px 0 0;padding:16px 0;border-top:1px solid #c6c8bb;border-bottom:1px solid #c6c8bb}.coach-awards li{display:flex;flex:1;min-width:0;gap:8px}.award-mark{color:#727746;font-size:1.2rem}.coach-awards strong{font-size:.95rem}.coach-awards small{display:block;color:#626753;font-size:.8rem}.coach-photo-frame{position:relative;background:radial-gradient(ellipse at center,#44493a,#171b13 70%);overflow:hidden;height:360px}.coach-photo-frame img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.coach-photo-frame.yash img,.coach-photo-frame.kalpesh img{object-position:center top;transform:scale(1.7);transform-origin:center top}@media(max-width:575.98px){.coach-profile{padding:32px 0}.coach-photo-frame{height:320px}.coach-name{font-size:1.7rem}.coach-awards{gap:12px}.coach-awards li{display:block}.coach-awards strong{font-size:.8rem}.coach-awards small{font-size:.7rem}}
