.facility-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;}
.facility-card{position:relative;height:380px;overflow:hidden;cursor:pointer;display:block;text-decoration:none;}
.facility-card img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease;}
.facility-card:hover img{transform:scale(1.06);}
.facility-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,4,2,.88) 0%,rgba(5,4,2,.18) 70%,transparent 100%);}
.facility-info{position:absolute;bottom:0;left:0;right:0;padding:2rem;}
.facility-name{font-family:var(--font-display);font-size:1.55rem;font-weight:500;color:var(--white);margin-bottom:.4rem;}
.facility-detail{font-size:.78rem;font-weight:500;color:rgba(245,240,232,.65);font-family:var(--font-body);}
.juvana-intro{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:560px;}
.juvana-intro.flip-layout .juvana-visual{order:2;}
.juvana-intro.flip-layout .juvana-content{order:1;}
.juvana-visual{position:relative;overflow:hidden;}
.juvana-visual img{width:100%;height:100%;min-height:500px;object-fit:cover;}
.gym-carousel{position:relative;width:100%;height:100%;}
.gym-carousel-track{display:flex;width:100%;height:100%;transition:transform .7s ease;}
.gym-carousel-slide{flex:0 0 100%;width:100%;height:100%;}
.gym-carousel-slide img{width:100%;height:100%;min-height:500px;object-fit:cover;display:block;}
.gym-carousel-nav{position:absolute;left:1.5rem;right:1.5rem;bottom:1.5rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;pointer-events:none;}
.gym-carousel-btn{border:0;background:transparent;color:var(--gold-light);display:grid;place-items:center;cursor:pointer;pointer-events:auto;padding:.25rem;transition:color var(--transition),transform var(--transition);text-shadow:0 8px 20px rgba(0,0,0,.35);}
.gym-carousel-btn:hover{color:var(--white);transform:scale(1.06);}
.gym-carousel-btn span{font-size:2.15rem;line-height:1;font-weight:300;}
.gym-carousel-btn[data-gym-prev]{justify-self:start;}
.gym-carousel-btn[data-gym-next]{justify-self:end;}
.gym-carousel-dots{display:flex;gap:.55rem;pointer-events:auto;justify-self:center;}
.gym-carousel-dot{width:10px;height:10px;border-radius:50%;border:1px solid rgba(245,240,232,.6);background:transparent;cursor:pointer;transition:background var(--transition),border-color var(--transition);}
.gym-carousel-dot.active{background:var(--gold);border-color:var(--gold);}
.juvana-content{background:var(--charcoal-mid);padding:5rem;display:flex;flex-direction:column;justify-content:center;}
.treatments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.treatment-card{background:var(--charcoal);border-top:2px solid transparent;transition:border-color var(--transition),background var(--transition);overflow:hidden;}
.treatment-card:hover{background:var(--charcoal-light);border-top-color:var(--gold);}
.treatment-card img{width:100%;height:220px;object-fit:cover;}
.treatment-body{padding:2.2rem;}
.treatment-tag{font-size:.62rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.8rem;font-family:var(--font-body);display:block;}
.treatment-name{font-family:var(--font-display);font-size:1.45rem;font-weight:500;color:var(--white);margin-bottom:.8rem;}
.treatment-desc{font-size:.88rem;font-weight:400;color:rgba(245,240,232,.68);line-height:1.85;margin-bottom:1.2rem;}
.treatment-meta{display:flex;gap:1.5rem;}
.tmeta{font-size:.72rem;font-weight:400;color:var(--warm-grey);font-family:var(--font-body);}
.tmeta span{color:var(--gold-light);display:block;font-size:.85rem;font-weight:500;margin-bottom:.2rem;}
.padel-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:6rem;align-items:center;}
.padel-visual{position:relative;height:460px;overflow:hidden;}
.padel-visual img{width:100%;height:100%;object-fit:cover;}
@media(max-width:1024px){.juvana-intro{grid-template-columns:1fr;}.juvana-content{padding:3rem 1.5rem;}.padel-grid{grid-template-columns:1fr;gap:3rem;}.treatments-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:768px){.facility-strip{grid-template-columns:1fr 1fr;}.treatments-grid{grid-template-columns:1fr;}}
@media(max-width:480px){.facility-strip{grid-template-columns:1fr;}}
@media(max-width:1024px){.two-col,.split-layout{grid-template-columns:1fr!important;gap:3rem!important;}.flip-layout{direction:ltr!important;}.flip-layout>*{direction:ltr!important;}}
@media(max-width:768px){.three-col{grid-template-columns:1fr 1fr!important;}.four-col{grid-template-columns:1fr 1fr!important;}}
@media(max-width:480px){.three-col{grid-template-columns:1fr!important;}.four-col{grid-template-columns:1fr!important;}}
