@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Barlow:wght@400;500;600;700&display=swap');
:root{--bg:#131313;--panel:#1c1c1c;--line:#373737;--text:#f3f2ef;--muted:#aaa9a6;--red:#e73d35;--head:'Barlow Condensed','Arial Narrow',Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:Barlow,Arial,sans-serif;font-size:17px;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #fff;outline-offset:5px}.skip{position:fixed;top:-80px;background:var(--red);padding:12px;z-index:99}.skip:focus{top:0}header{height:92px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#131313;gap:25px;border-bottom:1px solid var(--line)}.brand{font-family:var(--head);font-weight:900;font-size:37px;line-height:.83;letter-spacing:-1px;display:inline-flex;flex-direction:column;transform:skew(-7deg)}.brand span{font-size:17px;letter-spacing:5px;color:var(--red);margin-top:7px}nav{display:flex;gap:34px;font-size:15px;font-weight:600}nav a:hover,.text-link:hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;min-height:53px;padding:15px 24px;font-size:14px;font-weight:700;letter-spacing:1px;text-align:center;transition:background .2s}.button:hover{background:#be2822}.button.small{min-height:43px;padding:11px 23px}.hero{min-height:650px;height:calc(100svh - 92px);max-height:900px;position:relative;display:flex;align-items:center;isolation:isolate}.hero>img,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero>img{object-position:center 62%;filter:saturate(.35)}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.42) 56%,rgba(0,0,0,.18)),linear-gradient(0deg,#131313 0%,transparent 40%)}.hero-content{padding:15px 6% 105px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:2.5px;display:flex;align-items:center;gap:12px;margin:0 0 25px}.eyebrow>span{height:2px;width:26px;background:var(--red)}h1,h2,h3{font-family:var(--head);font-weight:800;line-height:.98;margin:0;text-transform:uppercase}h1{font-size:clamp(74px,8.8vw,134px);letter-spacing:-1px}h1 em{color:var(--red);font-style:normal}h2{font-size:clamp(42px,4.7vw,68px)}h3{font-size:30px}p{margin:0 0 20px}.intro{margin:27px 0 30px;color:#d4d2ce;font-size:19px}.actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:15px;font-weight:600;border-bottom:1px solid #676767;padding:9px 0}.text-link span{font-size:21px;color:var(--red)}.hero-bottom{position:absolute;bottom:30px;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff36;padding-top:23px;font-size:13px}.hero-bottom p{margin:0;letter-spacing:1.8px;font-weight:600}.hero-bottom a{display:flex;gap:10px;align-items:center}.stars{color:var(--red);letter-spacing:3px;font-size:16px}.hero-bottom a>span:last-child{color:#c4c4c4}.side-label{position:absolute;right:25px;top:43%;writing-mode:vertical-rl;letter-spacing:3px;font-size:12px}.ticker{background:var(--red);display:flex;justify-content:space-around;align-items:center;gap:20px;padding:15px 4%;font-family:var(--head);font-size:32px;font-weight:700;overflow:hidden;white-space:nowrap}.ticker i{font-size:23px;font-style:normal;color:#191919}.section{padding:96px 6%;max-width:1600px;margin:auto}.about{display:grid;grid-template-columns:1.1fr 1fr;gap:50px}.about h2 span{color:#969592}.about-copy>p:first-child{font-size:23px;color:var(--text)}.about-copy p{color:var(--muted)}.pillars{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:40px;gap:50px}.pillars article>span{font-size:14px;color:var(--red)}.pillars h3{margin:15px 0}.pillars p{color:var(--muted);max-width:330px;margin:0}.training{background:#1a1a1a;max-width:none}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px}.section-heading>p{color:var(--muted);margin:0}.services{display:grid;grid-template-columns:1fr 1fr;gap:22px}.services article{min-height:450px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border:1px solid #414141}.coaching{background:linear-gradient(90deg,#101010ef,#111111a6),url('assets/gym.png') center/cover}.service-num{font-size:13px;letter-spacing:2px;font-weight:600}.services h3{font-size:48px;margin:65px 0 22px}.services p{max-width:460px;color:#c4c4c1;margin-bottom:27px}.meals{background:#222}.meal-stamp{position:absolute;right:24px;top:21px;font-family:var(--head);font-size:40px;line-height:.95;color:#ffffff14;transform:rotate(9deg);font-weight:900}.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.plan{background:#1b1b1b;color:var(--text);border:1px solid #414141;text-align:left;padding:25px;cursor:pointer;transition:background .2s,border-color .2s}.plan:hover{border-color:var(--red)}.plan.active{background:var(--red);border-color:var(--red)}.plan>span{font-size:12px;letter-spacing:1.5px;font-weight:600}.plan>span:last-child{letter-spacing:0;font-size:15px;color:#bbb}.plan.active>span:last-child{color:#fff}.plan strong{display:flex;align-items:baseline;gap:10px;font-family:var(--head);font-size:88px;line-height:1.3;margin:10px 0}.plan small{font-size:23px}.plan-response{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:30px 0}.plan-response p{margin:6px 0 0;color:var(--muted);font-size:15px}.community{padding-top:10px}.rating{display:flex;align-items:center;gap:14px;flex-wrap:wrap;max-width:250px}.rating>strong{font-family:var(--head);font-size:60px;line-height:1}.rating>strong span{font-size:25px;color:#777}.rating p{font-size:14px;color:var(--muted);margin:0}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.quotes figure{margin:0;padding:29px;background:#1e1e1e;display:flex;flex-direction:column}.quotes blockquote{margin:25px 0 32px;font-size:21px;line-height:1.5;flex:1}.quotes figcaption{display:flex;align-items:center;gap:12px;font-size:14px}.avatar{background:#333;display:grid;place-items:center;width:39px;height:39px;border-radius:50%;flex-shrink:0;font-size:12px}.quotes small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.review-note{font-size:12px;color:#999;margin:20px 0 0}.review-note a{text-decoration:underline}.visit{display:grid;grid-template-columns:1fr 1fr;background:#222}.visit-photo{min-height:620px;position:relative;overflow:hidden}.visit-photo img{width:100%;height:100%;object-fit:cover;position:absolute;filter:saturate(.65)}.visit-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000a,transparent 50%)}.visit-photo>span{position:absolute;bottom:30px;left:30px;right:30px;z-index:1;font-family:var(--head);font-size:35px;font-weight:700}.visit-info{padding:65px 12%}.visit-info h2{margin-bottom:25px}.visit-info>p:not(.eyebrow){color:#bbb}.visit-info address{font-style:normal;margin:25px 0}.visit-info address a{display:inline-block;margin-top:12px;color:var(--red);font-weight:600}.hours{border-top:1px solid #494949;padding-top:18px;font-size:15px}.hours>div{display:flex;justify-content:space-between;gap:15px;padding:5px 0}.hours strong{font-weight:500}.hours-note{font-size:12px;margin:10px 0 28px}.faq{max-width:1150px}.faq h2{margin-bottom:35px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:600;font-size:19px}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--red);font-size:25px;line-height:1}details[open] summary:after{content:'−'}details p{color:#aaa;max-width:800px;margin:18px 0 0}footer{margin:0 6%;border-top:1px solid var(--line);padding:40px 0 25px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}footer p{font-size:12px;letter-spacing:1.5px;margin:0}footer>a:not(.brand){font-size:15px}footer small{flex-basis:100%;color:#888;font-size:12px;border-top:1px solid #292929;padding-top:20px;margin-top:12px}@media(min-width:1600px){.hero-content{padding-left:max(6%,calc((100vw - 1408px)/2))}.training{padding-left:max(6%,calc((100vw - 1408px)/2));padding-right:max(6%,calc((100vw - 1408px)/2))}}@media(max-width:1000px){nav{gap:18px}.hero{min-height:650px;height:auto}.hero-content{padding-top:100px;padding-bottom:150px}.hero-bottom{flex-wrap:wrap}.about{gap:35px}.plan{padding:18px}.plan strong{font-size:70px}.visit-info{padding:45px 8%}.visit-info .actions{gap:12px}.quotes blockquote{font-size:19px}.quotes figure{padding:22px}}@media(max-width:700px){header{height:80px;padding:0 6%}.brand{font-size:31px}.brand span{font-size:14px;letter-spacing:4px}nav{display:none}.button.small{font-size:12px}.hero{min-height:680px}.hero-content{padding:85px 6% 190px}h1{font-size:clamp(61px,13vw,90px)}.hero>img{object-position:57%}.intro{font-size:17px}.intro br{display:none}.hero .actions{gap:20px}.hero .actions .button{padding:14px 20px}.hero-bottom{bottom:28px;left:6%;right:6%;font-size:12px}.hero-bottom p{font-size:11px;letter-spacing:1px}.hero-bottom a{gap:8px}.side-label{display:none}.eyebrow{font-size:12px;letter-spacing:1.8px}.ticker{justify-content:flex-start;gap:24px;font-size:26px;padding:13px 6%}.ticker i{font-size:18px}.section{padding:65px 6%}.about{grid-template-columns:1fr;gap:30px}.about-copy>p:first-child{font-size:21px}.pillars{grid-template-columns:1fr;gap:27px;padding-top:25px}.pillars article{display:grid;grid-template-columns:30px 1fr;gap:5px 15px}.pillars article>span{padding-top:5px}.pillars h3{margin:0 0 8px;font-size:27px}.pillars p{grid-column:2;max-width:none}.section-heading{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:30px}.services{grid-template-columns:1fr}.services article{min-height:400px;padding:28px}.services h3{font-size:43px;margin-top:65px}.plans{grid-template-columns:1fr 1fr;gap:12px}.plan{padding:19px}.plan strong{font-size:74px;gap:6px}.plan small{font-size:20px}.plan>span{font-size:11px;letter-spacing:.8px}.plan-response{align-items:flex-start;flex-direction:column}.plan-response .button{width:100%}.community{padding-top:15px}.rating{max-width:none}.quotes{grid-template-columns:1fr;gap:15px}.quotes blockquote{margin:20px 0 28px;font-size:21px}.quotes figure{padding:26px}.visit{grid-template-columns:1fr}.visit-photo{min-height:370px}.visit-photo img{object-position:center 45%}.visit-photo>span{font-size:28px;left:6%}.visit-info{padding:50px 6%}.visit-info .actions{gap:20px}.faq h2{font-size:42px}summary{font-size:17px}footer{gap:25px}footer p{max-width:150px;font-size:11px}.review-note{line-height:1.6}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Direct, useful navigation and a quieter classic-gym treatment. */
header{position:sticky;top:0;z-index:10}.menu-toggle{display:none}.gym-strip{display:flex;flex-wrap:wrap;justify-content:space-around;gap:15px 30px;padding:22px 6%;background:#e0ded8;color:#191919;font:700 19px var(--head);letter-spacing:1.5px}.service-num{color:#bebbb5}.services h3{font-size:46px}.meals{background:#242321}.pillars article>span{display:none}.plan>span:first-child{display:none}.plan.active{box-shadow:inset 0 4px 0 #fff}.review-note{color:#b7b7b7}.dialog-open{overflow:hidden}dialog{background:#1b1b1b;color:#f3f2ef;border:1px solid #555;width:min(640px,calc(100% - 28px));max-height:90svh;padding:30px;box-shadow:0 30px 100px #000a}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}.dialog-top .eyebrow{margin:0;color:#aaa;font-size:12px}.dialog-close{background:#303030;color:white;border:1px solid #666;font-size:20px;cursor:pointer;width:44px;height:44px;flex-shrink:0}#detail-content h2{font-size:52px;margin:15px 0 24px}#detail-content>p{color:#c7c7c7}.detail-label{font-size:12px;letter-spacing:2px;color:#aaa;margin:0 0 10px}.contact-block{border-top:1px solid #444;padding-top:24px;margin-top:25px}.phone-number{font-family:var(--head);font-size:40px}.detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 12px}.outline-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 18px;border:1px solid #666;background:transparent;color:#eee;font-size:13px;font-weight:700;letter-spacing:.6px;cursor:pointer}.outline-button:hover{background:#333}.detail-help{font-size:13px;color:#aaa!important;margin:15px 0;line-height:1.6}.copy-status{font-size:14px;color:#fff;overflow-wrap:anywhere;margin:10px 0}.detail-hours{border-top:1px solid #444;padding-top:20px}.detail-hours p{display:flex;justify-content:space-between;gap:20px;margin:8px 0;font-size:15px}.address-card{padding:22px;background:#272727;margin:22px 0}.address-card p{margin:5px 0 20px}.detail-note{border-left:3px solid var(--red);background:#262626;padding:20px;margin:24px 0}.detail-note ul{padding-left:21px;margin-bottom:0;color:#bbb}.detail-note li{padding:5px 0}.direction-photo{width:100%;max-height:260px;object-fit:cover;object-position:center 40%;margin-bottom:20px}.extra-review{border-top:1px solid #444;padding:20px 0}.extra-review blockquote{margin:0 0 12px;font-size:20px}.extra-review p{color:#aaa;font-size:14px;margin:0}button.text-link{color:#eee;background:none;border-width:0 0 1px;cursor:pointer}.contact-block button.button{border:0;cursor:pointer}@media(max-width:700px){header{gap:15px}.menu-toggle{display:block;background:none;border:1px solid #666;color:white;padding:9px 12px;font-size:12px;font-weight:700;margin-left:auto;min-height:42px}header .button.small{display:none}nav.is-open{display:flex;position:absolute;top:80px;left:0;right:0;background:#191919;border-bottom:1px solid #555;flex-direction:column;padding:15px 6%;gap:0}nav a{padding:13px 0;font-size:17px}.gym-strip{justify-content:flex-start;gap:12px 25px;font-size:16px}.pillars article{display:block}.services h3{font-size:40px}dialog{padding:23px}#detail-content h2{font-size:43px}.phone-number{font-size:37px}.detail-actions>*{flex:1 1 180px}.detail-hours p{font-size:14px}.visit-photo>span{font-size:24px}}
