@import url('/assets/theme.css');
/* Keep the supplied logo in its own column: the poster hero contains baked-in copy. */
main .hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:7%;background:radial-gradient(ellipse at 85% 45%,#54281233,transparent 55%),#0b0d0f}
main .hero-content{min-width:0}
main .hero::after{content:"";display:block;width:100%;max-width:440px;aspect-ratio:1;justify-self:end;background:url('/assets/brand.png') center/contain no-repeat;border-radius:10px}
main .hero h1{font-size:clamp(52px,5.7vw,88px)}
@media(max-width:1000px){main .hero{grid-template-columns:minmax(0,1fr);min-height:580px}main .hero::after{display:none}main .hero h1{font-size:clamp(52px,9vw,82px)}}
:root{color-scheme:dark;font-family:Segoe UI,Arial,sans-serif;background:#0b0d0f;color:#f5f2ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #eeb30a;outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;background:#e64e12;padding:12px;z-index:10}.skip:focus{top:10px}.logo{width:180px;height:54px;object-fit:contain}header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px 6%;border-bottom:1px solid #2f3338;background:#0b0d0f}nav{display:flex;gap:30px;font-size:13px;color:#c1c2c4}nav a:hover{color:#ff743d}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #53565b;border-radius:4px;padding:15px 24px;font-size:13px;font-weight:700}.button:hover{border-color:#ff5a1f;background:#20242a}.primary{background:#e64e12;border-color:#e64e12;color:white}.primary:hover{background:#ff5a1f}.hero{min-height:680px;background:linear-gradient(90deg,#0b0d0f 4%,#0b0d0fee 23%,#0b0d0f66 70%,#0b0d0f22),url('/assets/hero.png') center/cover;position:relative;display:flex;align-items:center;padding:65px 8%}.eyebrow{font-size:11px;letter-spacing:2.4px;color:#ef8a63;font-weight:750;margin:0 0 25px}h1,h2{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;font-stretch:condensed;letter-spacing:-1px;line-height:1.04}h1{font-size:clamp(56px,6.5vw,100px);margin:0 0 28px}h1 em,h2 em{color:#ff5a1f;font-style:normal}h2{font-size:clamp(36px,4vw,60px);margin:0 0 30px}h3{font-size:17px;margin:0 0 10px}p{line-height:1.8}.hero p:not(.eyebrow){font-size:15px;color:#b9b9bb}.actions{display:flex;align-items:center;gap:25px;margin-top:34px}.text-link{font-size:13px}.hero-caption{display:flex;gap:32px;margin-top:64px;color:#9e9fa3;font-size:10px;letter-spacing:2px}.hero-caption span+span:before{content:'•';color:#e64e12;margin-right:25px}.hours-strip{border-top:1px solid #34302b;border-bottom:1px solid #34302b;display:flex;justify-content:space-between;gap:20px;padding:24px 8%;background:#15181c;font-size:13px}.hours-strip>span{letter-spacing:1px;color:#b8a996;font-size:11px}.hours-strip a{color:#ff8352}.section{padding:100px 8%;border-bottom:1px solid #24282d}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%}.lead{font-size:20px;margin-top:0}.muted{color:#a8a9ad;font-size:14px}.benefits article{display:flex;gap:24px;border-top:1px solid #2f3338;padding-top:24px;margin-top:24px}.benefits article>span{color:#eeb30a;font-size:12px}.benefits p{color:#a8a9ad;font-size:13px;margin:0}.section-title{display:flex;justify-content:space-between;align-items:start;gap:30px}.facilities{background:#101215}.facility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.facility{padding:32px;border:1px solid #35383c;background:linear-gradient(130deg,#20242a,#111316);min-height:175px;display:flex;flex-direction:column;justify-content:space-between}.facility>span{font-size:12px;color:#eeb30a}.facility h3{font-size:24px;letter-spacing:-.4px}.join-card{background:#15181c;border:1px solid #2f3338;padding:35px}.join-card ol{padding-left:22px;display:grid;gap:28px;margin-top:30px}.join-card li{padding-left:10px;color:#ff8352}.join-card strong{display:block;color:#f5f2ed;font-size:15px;margin-bottom:7px}.join-card li span{color:#a8a9ad;font-size:13px;line-height:1.6}.app-banner{display:flex;gap:50px;align-items:center;justify-content:space-between;background:radial-gradient(ellipse at 85% 80%,#72301355,transparent 65%)}.phone-art{width:260px;padding:25px 22px;background:#131619;border:6px solid #3b3b3b;border-radius:32px;transform:rotate(7deg);box-shadow:20px 25px 50px #0008;margin-right:10%}.phone-art img{width:40px;height:40px}.phone-art p{letter-spacing:5px;font-weight:bold;font-size:12px}.phone-art h3{font-size:30px;line-height:1.1;margin:24px 0 35px}.phone-line{background:#24282d;font-size:11px;padding:17px 10px;margin-top:10px;border-radius:6px;display:flex;justify-content:space-between}.phone-line span{color:#ff8352}.contact-card>div{padding-bottom:15px;margin-bottom:25px;border-bottom:1px solid #2f3338}.contact-card .eyebrow{font-size:10px}.contact-card p{margin-top:10px}.legal{padding-top:35px;padding-bottom:35px}.legal details{padding:17px 0;color:#a8a9ad;font-size:13px}.legal summary{cursor:pointer;color:#f5f2ed}footer{padding:35px 8%;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:11px;color:#a8a9ad}footer div{display:flex;gap:20px}@media(max-width:900px){header nav{gap:16px}header>.button{display:none}.hero{min-height:620px}.section{padding:65px 6%}.split{gap:6%}.hours-strip>span{display:none}.phone-art{margin-right:0}.facility-grid{gap:12px}.facility{padding:22px}.facility h3{font-size:19px}footer .logo{width:130px}}@media(max-width:600px){header{flex-wrap:wrap;gap:8px;padding:15px 6%}.logo{width:150px}header nav{width:100%;justify-content:space-between;font-size:12px;padding-bottom:10px}.hero{padding:50px 6%;min-height:600px;background-position:60% center}.hero-caption{gap:14px;letter-spacing:1px}.hero-caption span+span:before{margin-right:10px}.hours-strip{padding:20px 6%;font-size:11px;flex-wrap:wrap}.split{grid-template-columns:1fr;gap:30px}.section-title{display:block}.facility-grid{grid-template-columns:1fr}.facility{min-height:130px}.app-banner{display:block;overflow:hidden}.phone-art{margin:45px auto 0}.actions{gap:20px}.button{padding:14px 18px;font-size:12px}footer{flex-wrap:wrap;padding:30px 6%;gap:15px}footer div{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Rounded brand mark across public navigation, footer and app preview. */
header .logo,footer .logo{width:68px;height:68px;object-fit:cover;border-radius:16px}
main .hero::after{border-radius:12%;overflow:hidden}
.phone-art img{border-radius:9px}
/* Brand wording stays readable beside the rounded mark. */
.brand-lockup{display:inline-flex;align-items:center;gap:12px;max-width:100%;text-align:left;flex-shrink:0}
.brand-mark{display:block;width:64px;height:64px;object-fit:cover;border-radius:15px;flex-shrink:0}
.brand-copy{display:flex;flex-direction:column;gap:4px;min-width:0;line-height:1.2}
.brand-copy strong{font-size:27px;letter-spacing:1px;color:#f5f2ed}
.brand-copy>span{font-size:11px;font-weight:700;color:#eeb30a}
.brand-copy small{font-size:8px;color:#a8a9ad;border-top:2px solid #e64e12;padding-top:5px}
@media(max-width:600px){.brand-mark{width:56px;height:56px;border-radius:13px}.brand-copy strong{font-size:24px}}

.brand-copy{text-align:center;align-items:center}

/* Readable information pages share the gym identity without oversized headings. */
.policy-shell{max-width:1180px;margin:0 auto;padding:64px 5% 80px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px}
.policy-shell aside{align-self:start;position:sticky;top:32px}
.policy-shell aside .eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:18px}
.policy-shell nav{flex-direction:column;gap:6px}
.policy-shell nav a{padding:12px 14px;border-radius:8px;border:1px solid transparent;line-height:1.5}
.policy-shell nav a[aria-current=page]{color:#ff935f;background:#201a16;border-color:#67422f}
.policy-content{min-width:0}
.policy-content h1{font-family:Segoe UI,Arial,sans-serif;font-size:clamp(30px,3.2vw,44px);line-height:1.18;letter-spacing:-1.1px;margin:0 0 12px}
.policy-date{color:#9fa6ae;font-size:12px;margin:0 0 28px}
.policy-intro{font-size:18px;color:#dce0e5;line-height:1.7;margin-bottom:32px}
.policy-content section{padding:28px 0;border-top:1px solid #2b3036}
.policy-content h2{font-family:Segoe UI,Arial,sans-serif;font-size:21px;letter-spacing:-.3px;line-height:1.4;margin:0 0 12px}
.policy-content p,.policy-content li{color:#bdc4cc;font-size:14px;line-height:1.85}
.policy-content li{margin-bottom:12px;padding-left:4px}
.policy-content ul,.policy-content ol{padding-left:22px}
.policy-content strong{color:#edf0f4}
.policy-content a:not(.button){color:#ffa77b;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.policy-callout{padding:26px;background:#161c22;border:1px solid #3b4651;border-radius:12px;margin:28px 0}
.policy-callout .button{margin:8px 0;min-height:46px}
.policy-page footer div{flex-wrap:wrap}
.policy-page .text-link{white-space:nowrap}
.legal-links{display:flex;flex-wrap:wrap;gap:24px;font-size:13px;color:#c9cdd2}
@media(max-width:760px){.policy-shell{grid-template-columns:minmax(0,1fr);gap:34px;padding:32px 6% 48px}.policy-shell aside{position:static}.policy-shell aside>.muted{display:none}.policy-shell nav{flex-direction:row;flex-wrap:wrap;gap:6px}.policy-shell nav a{padding:9px 10px;font-size:12px}.policy-content section{padding:24px 0}.policy-intro{font-size:16px}.policy-callout{padding:20px}.policy-page header{gap:16px}.policy-page header>.text-link{font-size:12px}}
