/* Site shell only. Gym components keep their own data UI and breakpoints. */
:root{--tl-line:#dce3e8;--tl-navy:#152b42}
body{margin:0}*{box-sizing:border-box}
a{text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}
:where(a,button,summary,input):focus-visible{outline:3px solid #9c5900;outline-offset:4px}
.wp-site-blocks{padding:0;overflow-wrap:anywhere}.wp-site-blocks> *{margin-block-start:0}
.tl-header,.tl-footer,main.tl-main{padding-inline:24px}
.tl-header{border-bottom:1px solid var(--tl-line)}.tl-header-row{min-height:88px;gap:20px}
.tl-brand{gap:12px}.wp-block-site-title{font-size:1.2rem;font-weight:800;letter-spacing:.065em;line-height:1.2}
.wp-block-site-title a{text-decoration:none}.wp-block-site-logo:empty{display:none}
.wp-block-navigation{font-size:.95rem}.wp-block-navigation a{min-height:44px;display:inline-flex;align-items:center}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;align-items:center;justify-content:center}
.wp-block-navigation__responsive-container.is-menu-open{padding:24px;background:#fff;color:#203347}
.tl-main{padding-block:32px 80px;min-height:45vh}
.tl-home{padding-top:0!important}.tl-hero{padding-block:72px 64px;border-bottom:1px solid var(--tl-line)}
.tl-hero h1{font-size:clamp(3.2rem,8vw,6.2rem);line-height:.98;letter-spacing:-.065em;max-width:850px;margin-block:28px}
.tl-hero .wp-block-site-title{font-size:.8rem;color:#526173}
.tl-hero>*{margin-left:0!important;margin-right:0!important}.tl-hero h1{font-size:clamp(3.2rem,7vw,5.5rem);letter-spacing:-.045em}
.tl-descriptor{font-size:1.1rem;font-weight:650;margin-bottom:8px}.tl-support{color:#526173;max-width:38rem;margin-top:0}
.tl-guides{margin-block:52px}.tl-guides>h2{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:22px}
.tl-guide{border-top:1px solid var(--tl-line);padding:28px 0;display:flex;gap:32px;align-items:flex-end;justify-content:space-between}
.tl-guide>div{max-width:730px}.tl-guide h3{font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.15;margin:10px 0 16px;letter-spacing:-.025em}
.tl-guide h3 a{text-decoration:none}.tl-guide p{margin:0;max-width:60ch}.tl-eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:#526173}
.tl-read{white-space:nowrap;font-size:.9rem;min-height:44px;display:inline-flex;align-items:center;gap:12px}
.tl-guide img{width:100%;height:auto;max-height:440px;object-fit:cover;margin-bottom:22px}
.tl-trust{background:#f1f4f6;padding:40px;margin-block:56px}.tl-trust h2{margin-top:0}.tl-trust>.wp-block-columns{margin-top:36px}.tl-trust h3{font-size:1rem;letter-spacing:0}
.tl-trust p{max-width:62ch}.tl-trust .wp-block-column p{font-size:.925rem;color:#526173}
.tl-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:.8rem;color:#526173;margin-bottom:28px}
.tl-breadcrumb a{min-height:24px}.tl-breadcrumb [aria-current]{max-width:100%}
.tl-gym{max-width:948px;margin-inline:auto}.tl-gym .wp-block-post-title{max-width:900px;margin:0 0 24px;letter-spacing:-.04em}
.tl-gym .wp-block-post-content{max-width:900px}
/* Final article rhythm: prose is 68ch; structured components retain full width. */
.tl-gym .wp-block-post-content>p,.tl-gym .tfm-section>p,.tl-gym .tfm-block-rules p{max-width:68ch;margin-inline:0}
.tl-gym .tfm-block-facility-details>.tfm-section+.tfm-section{margin-top:28px}
.tl-gym .tfm-block-facility-details+.wp-block-image{max-width:280px;margin-inline:0}
.tl-gym .tfm-time-range{white-space:nowrap}
@media(min-width:768px){.tl-gym .tfm-route-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-left:24px}.tl-gym .tfm-route-photos li{min-width:0;padding-left:0;margin-bottom:0}.tl-gym .tfm-route-photos figure{margin-top:8px}.tl-gym .tfm-block-facility-details>.tfm-section+.tfm-section{margin-top:38px}}
.tl-author{border-top:1px solid var(--tl-line);padding-top:24px;margin-top:48px}.tl-author h2{font-size:1.2rem}
.tl-page .wp-block-post-title{margin-top:20px;margin-bottom:40px}
.tl-page .wp-block-post-content h2{font-size:1.65rem;margin-top:40px}
.wp-block-image img,.wp-block-post-featured-image img{max-width:100%;height:auto}.wp-block-image figcaption{font-size:.875rem;color:#526173}
.tl-footer{border-top:1px solid var(--tl-line);padding-block:44px 24px;background:#f8fafb}
.tl-footer .alignwide>*{margin-left:0!important;margin-right:0!important}
.tl-mission{max-width:430px!important;color:#526173;font-size:.95rem}
.tl-footer-links{gap:8px 24px;margin-block:24px}.tl-footer-links p{margin:0;font-size:.9rem}.tl-footer-links a{display:inline-flex;min-height:44px;align-items:center}
.tl-copyright{font-size:.8rem;color:#526173}
@media(max-width:767px){.tl-header,.tl-footer,main.tl-main{padding-inline:20px}.tl-header-row{min-height:68px}.wp-block-site-title{font-size:1.05rem}.tl-hero{padding-block:44px 36px}.tl-hero h1{font-size:3.35rem}.tl-main{padding-bottom:48px}.tl-guide{display:block}.tl-read{margin-top:16px}.tl-trust{padding:24px;margin-block:36px}.tl-trust .wp-block-columns{gap:24px}.tl-guides{margin-block:36px}.tl-breadcrumb{margin-bottom:24px}.tl-gym .wp-block-post-title{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
