/* Fitness Plus: warm, readable public website theme */
:root{--bg:#faf9f5;--surface:#fff;--muted:#535650;--line:#dedfd8;--ink:#292c28;--accent-ink:#756000}
body{background:var(--bg);color:var(--ink);font-size:18px;line-height:1.8}
.navbar{background:#faf9f5f5;border-color:var(--line)}
.navbar .brand b{color:#806400}.navbar nav>a{font-size:15px}.navbar nav>a:hover{color:var(--accent-ink)}
.language-label select,.language-label option,.menu-toggle{background:#fff;color:var(--ink);border-color:#777}
.menu-toggle,.language-label select{min-height:44px}.language-label select{min-width:58px}
.btn,.nav-cta{border-radius:9px;font-size:17px;min-height:48px}.btn-outline{color:var(--ink);border-color:#686c64}.btn-outline:hover{background:#eeeee8;color:var(--ink)}
.text-link{color:var(--accent-ink);font-size:17px;text-decoration:underline;text-underline-offset:4px}
.eyebrow,.section-title>p,.card-label{color:var(--accent-ink);font-size:13px}
.hero{min-height:650px;padding:90px 6%;overflow:hidden;background:var(--bg)}
.hero-slides{left:46%;background:#ecebe4}.hero:before{background:linear-gradient(90deg,#faf9f5 0%,#faf9f5 39%,#faf9f5ed 46%,#faf9f500 68%)}
.hero-content{max-width:54%}.hero h1{font-size:clamp(40px,4.6vw,76px);line-height:1.35;letter-spacing:-1.5px;color:var(--ink)}
.hero h1 span{color:var(--ink)}.description{color:#41463e;font-size:20px}.hero-scroll{color:#41463e}
.welcome-strip{display:flex;justify-content:center;gap:8%;padding:24px 6%;border-block:1px solid var(--line);background:#fff;font-weight:700;flex-wrap:wrap}
.welcome-strip span{padding:8px 0}.welcome-strip span:before{content:'✓';color:#665400;margin-right:10px}
.goals,.clubs,.faq,.updates,.member-benefits{background:#f1f2ec}.why-fitness-plus,.trainer-service,.branch-next{background:#f6f5ef}
.goal-card,.membership-card,.branch-card,.class-box,.benefit-card,.update-card,.trainer-card,.managed-card{background:#fff;border-color:var(--line);border-radius:14px}
.goal-card:hover,.branch-card:hover{border-color:#8a7100}.goal-number,.class-index,.branch-card>span{color:#62675d;font-size:15px}
.goal-card p,.membership-card ul,.branch-card p,.class-box p,.benefit-card p,.update-description,.trainer-summary,.trainer-detail,.member-invite p,.branch-info p,.service-points,.about-copy,.faq-list details p{color:var(--muted);font-size:17px}
.class-box h3,.branch-card b,.arrow,.branch-info span,.section-title h2 .branch-news-name{color:var(--accent-ink)}
.class-index{margin-bottom:18px}.class-box p{font-size:16px}.class-box{padding:24px 18px}.branch-card b{font-size:16px}
.benefit-mark{background:#fff8d6;color:#665400;border-color:#dbca81}.benefit-card h3{font-size:23px}
.service-points,.faq-list details{border-color:var(--line)}.faq-list summary{font-size:19px}.faq-list summary>span[aria-hidden="true"]{color:#756000}
.news-empty{color:var(--muted);background:#fff;border-color:var(--line);font-size:18px}.update-branch,.update-expiry,.schedule-range,.member-terms,.branch-info small{color:#5c6157;font-size:15px}
.trainer-placeholder{background:#eeeee7;color:#5b6056}.news-filter select{background:white;color:var(--ink);border-color:#777;min-height:48px}
.branch-hero{background:linear-gradient(115deg,#fff,#f5f2e4)}.branch-hero h1 span{color:#756000}
.branch-photo-hero{background:#faf9f5}.branch-photo-hero:after{background:linear-gradient(90deg,#faf9f5f7,#faf9f5e6 40%,#faf9f500 85%)}.branch-cover-content p{color:#42463f}
.registration{background:var(--bg)}.registration-shell{background:#fff;border-color:var(--line)}.registration-heading{background:linear-gradient(135deg,#fff8d8,#f7f6ed)}
.registration-accent,.form-heading>span{color:#756000}.registration-note-icon{color:#756000;border-color:#cabb7f}.registration-note p,.registration-note small{color:#53584d;font-size:16px}
.registration label,.registration legend{color:var(--ink);font-size:17px}.registration input:not([type=checkbox]),.registration select,.registration textarea{background:#fff;color:var(--ink);border-color:#85897e;font-size:18px;min-height:48px}
.registration ::placeholder{color:#656a5e}.registration .interest-card{background:#fff;border-color:#85897e;min-height:64px}.interest-card-content strong{font-size:17px}.interest-card-content small{font-size:15px;color:#59604f}
.interest-card:has(input:checked){background:#fff8d8;border-color:#8a7100}.interest-check{color:#665400}.registration .consent,.form-hint,.form-heading p{font-size:15px;color:#565d4e}.consent a{color:#665400}.registration input[type=checkbox]{width:22px;height:22px}
.package-price{color:#665400}.managed-card h4{margin-bottom:8px}.welcome-invite{margin:30px 6% 70px;padding:40px;border-radius:18px;background:#fff4c5;display:flex;align-items:center;justify-content:space-between;gap:30px}.welcome-invite h2{font-size:34px;margin-bottom:12px}.welcome-invite p{margin:0}.welcome-invite .btn{flex-shrink:0}
footer{color:#fff;background:#262925;border-color:#3c4039}.footer-grid p,.footer-grid>div>a:not(.brand){color:#dedfd8;font-size:16px}.footer-grid h3{font-size:19px}.footer-bottom{color:#c8ccc1;font-size:13px}.footer-grid .footer-cta{font-size:17px!important}
:focus-visible{outline:3px solid #665400;outline-offset:4px}footer :focus-visible{outline-color:#ffd400}
@media(max-width:1000px){.navbar nav{background:#fff;border-color:var(--line)}.hero h1{font-size:46px}.hero-content{max-width:60%}.hero:before{background:linear-gradient(90deg,#faf9f5 0%,#faf9f5f5 45%,#faf9f550 78%)}.welcome-invite{flex-direction:column;align-items:flex-start}}
@media(max-width:760px){.hero{padding:38px 5% 0;min-height:0;display:flex;flex-direction:column;align-items:stretch}.hero:before{display:none}.hero-content{max-width:100%;padding-bottom:32px;order:0}.hero-slides{position:relative;inset:auto;width:calc(100% + 11.12%);margin-left:-5.56%;height:300px;z-index:0;order:1}.hero h1{font-size:clamp(34px,7.5vw,52px);letter-spacing:-.5px}.hero-scroll{display:none}.description{font-size:19px}.welcome-strip{gap:12px 24px;font-size:16px}.welcome-invite{margin:20px 5% 60px;padding:28px}.welcome-invite h2{font-size:28px}.class-box p{font-size:16px}.branch-photo-hero:after{background:#faf9f5e6}.section-title>span{font-size:17px}.mobile-cta{font-size:16px}.btn{padding:14px 20px}}
@media(min-width:1201px){.class-description{grid-template-columns:repeat(7,minmax(0,1fr))}}

/* Clear photographs: no white gradient over the image. */
.hero:before{display:none}.hero-content{max-width:43%}.hero-slides{left:50%}.hero .buttons{gap:12px}.hero h1{font-size:clamp(38px,4.2vw,70px)}
.branch-photo-hero:after{background:linear-gradient(90deg,#000c,#0003)}.branch-photo-hero .branch-cover-content{color:#fff}.branch-photo-hero .branch-cover-content p{color:#eee}.branch-photo-hero h1 span,.branch-photo-hero .eyebrow{color:#ffd400}.branch-photo-hero .text-link{color:#ffd400}
.theme-toggle{background:#fff;color:#292c28;border-color:#73786b}
@media(max-width:1000px) and (min-width:761px){.hero-content{max-width:43%}.hero h1{font-size:38px}.hero .buttons .btn{width:100%}}
@media(max-width:760px){.hero-content{max-width:100%}.hero-slides{left:auto}.hero h1{font-size:clamp(34px,7.5vw,52px)}.branch-photo-hero:after{background:#0009}}

/* Branch photo hero matches the homepage's clear split layout. */
.branch-photo-hero{background:var(--bg);padding:80px 6%;min-height:650px;display:flex;align-items:center}
.branch-photo-hero:after{display:none}
.branch-photo-hero .branch-cover{left:50%;width:50%;height:100%;object-fit:cover;object-position:center;z-index:-1}
.branch-photo-hero .branch-cover-content{max-width:43%;color:var(--ink)}
.branch-photo-hero .branch-cover-content p{color:#41463e;font-size:19px}
.branch-photo-hero .branch-cover-content .eyebrow{color:var(--accent-ink);font-size:13px}
.branch-photo-hero h1{font-size:clamp(36px,4.2vw,70px);line-height:1.35;overflow-wrap:anywhere}
.branch-photo-hero h1 span{color:var(--ink)}
.branch-photo-hero .text-link{color:var(--accent-ink)}
@media(max-width:1000px) and (min-width:761px){.branch-photo-hero h1{font-size:38px}.branch-photo-hero .branch-cover-content p{font-size:18px}}
@media(max-width:760px){.branch-photo-hero{display:flex;flex-direction:column;align-items:stretch;padding:38px 5% 0;min-height:0}.branch-photo-hero .branch-cover-content{max-width:100%;order:0;padding-bottom:32px}.branch-photo-hero .branch-cover{position:relative;inset:auto;order:1;width:calc(100% + 11.12%);margin-left:-5.56%;height:300px;z-index:0}.branch-photo-hero h1{font-size:clamp(34px,7.5vw,52px)}}

.navbar .theme-toggle{background:transparent;color:var(--ink);border:0}

/* Wider hero photographs with a compact text panel on desktop. */
@media(min-width:761px){
.hero,.branch-photo-hero{padding-left:4%;padding-right:4%}
.hero-slides{left:40%;width:60%}
.branch-photo-hero .branch-cover{left:40%;width:60%}
.hero-content,.branch-photo-hero .branch-cover-content{width:32vw;max-width:32vw;min-width:0}
.hero h1,.branch-photo-hero h1{font-size:clamp(32px,3.6vw,62px);overflow-wrap:anywhere}
.hero .buttons{gap:12px}
.hero-scroll{left:4%}
}
