:root{--orange:#f5a019;--black:#111;--muted:#aaa;--paper:#f6f6f4;--display:Impact,'Arial Narrow',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--black);color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid var(--orange);outline-offset:5px}a.button:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px #111}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:900;line-height:1.02;letter-spacing:.005em}h2{font-size:clamp(2.5rem,4.2vw,4.6rem)}h3{font-size:1.5rem;line-height:1.2}.wrap{width:min(1400px,90%);margin:auto}.section{padding:96px 0}.eyebrow{font-weight:800;font-size:.8rem;letter-spacing:.15em;margin-bottom:22px;color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:16px 25px;color:#111;background:var(--orange);font-weight:800;font-size:.95rem;line-height:1.3;border:1px solid var(--orange);transition:background .2s,transform .2s}.button:hover{background:#ffb540;border-color:#ffb540;transform:translateY(-2px)}.compact{min-height:44px;padding:12px 20px}.text-link{font-size:.95rem;font-weight:700;text-decoration:underline;text-underline-offset:6px;padding:12px 0}.micro{font-size:.85rem;color:#aaa;margin-top:18px}.skip{position:fixed;top:-80px;left:20px;background:#fff;color:#000;padding:15px;z-index:100}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}header{position:sticky;top:0;z-index:10;background:rgba(17,17,17,.97);border-bottom:1px solid #303030}.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:95px}.brand{width:108px;flex-shrink:0}.brand img{width:104px;height:82px;object-fit:contain}.nav nav{display:flex;gap:36px;font-size:.88rem;font-weight:700}.nav nav a{padding:20px 0}.nav nav a:hover{color:var(--orange)}.hero{position:relative;overflow:hidden;min-height:660px}.hero-photo{position:absolute;inset:0 0 0 43%;background:#222}.hero-photo img{width:100%;height:100%;object-position:center 58%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111 0%,rgba(17,17,17,.2) 48%,transparent 100%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}.hero-inner{position:relative;min-height:660px;display:flex;align-items:center}.hero-copy{width:58%;padding:64px 0 68px}.hero h1{font-size:clamp(4rem,7.4vw,8rem);line-height:.98;letter-spacing:-.015em;margin-bottom:28px}.hero h1 span{color:var(--orange)}.hero-lead{font-size:1.5rem;line-height:1.4}.hero-description{max-width:410px;color:#c1c1c1;margin-top:19px}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:30px}.photo-caption{position:absolute;right:0;bottom:38px;text-align:right;max-width:37%;border-right:4px solid var(--orange);padding-right:18px}.photo-caption span{display:block;font-size:.7rem;letter-spacing:.15em;margin-bottom:6px}.photo-caption strong{font-size:1.2rem}.value-strip{background:var(--orange);color:#111;padding:20px 0}.value-strip .wrap{display:flex;justify-content:space-between;gap:20px;font-size:.9rem;font-weight:900;letter-spacing:.05em}.plans{background:var(--paper);color:#111}.plans .eyebrow{color:#965500}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:34px}.section-heading>p{max-width:350px;color:#666}.included{display:flex;gap:25px;font-size:.88rem;font-weight:700;margin-bottom:30px}.plan-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.plan{display:flex;flex-direction:column;background:#fff;border:1px solid #ddd;padding:26px 20px 20px;min-width:0}.plan-kicker{font-size:.72rem;letter-spacing:.06em;font-weight:800;margin-bottom:22px;min-height:2.4em;color:#666}.plan h3{font-size:1.6rem}.price{font-family:var(--display);font-size:3.7rem;line-height:1.15;margin:18px 0 4px}.period{font-size:.8rem;color:#666;min-height:42px;line-height:1.5}.functional-benefit{font-size:.94rem;font-weight:800;line-height:1.4;border-top:1px solid #ddd;padding-top:20px;margin-top:19px}.plan ul{list-style:none;padding:0;margin:18px 0 25px;font-size:.8rem;line-height:1.6;flex:1}.plan li{margin-bottom:7px}.plan li:before{content:'✓';margin-right:6px}.plan-cta{font-size:.875rem;width:100%;padding:14px 6px;min-height:48px;background:#111;color:#fff;border-color:#111}.plan-cta:hover{color:#111}.featured{background:#111;color:#fff;border-top:5px solid var(--orange);padding-top:22px}.featured .plan-kicker,.featured .period{color:#bcbcbc}.featured .functional-benefit{color:var(--orange);border-color:#454545}.featured .plan-cta{background:var(--orange);border-color:var(--orange);color:#111}.payment-note{font-size:.8rem;max-width:960px;color:#666;margin-top:24px}.functional{background:#151515}.functional-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:12%;align-items:center;max-width:1160px}.functional h2{font-size:clamp(3.5rem,6.3vw,6.5rem)}.functional h2 span{color:var(--orange)}.large-copy{font-size:1.65rem;line-height:1.35;margin:30px 0 20px}.functional p:not(.eyebrow):not(.large-copy):not(.micro){color:#ccc}.functional-points{margin:30px 0}.functional-points p{padding:13px 0;border-top:1px solid #353535;font-size:.93rem}.functional-points b{color:var(--orange);margin-right:18px;font-size:.8rem}.film{border:1px solid #444;padding:10px;background:#080808;transform:rotate(1.5deg)}.film video{width:100%;height:580px;display:block;object-fit:cover;background:#000}.film>p{padding:16px 5px 5px;font-size:.75rem;letter-spacing:.09em;font-weight:700;text-align:center}.facilities{background:#202020}.facilities .section-heading>p{color:#bbb}.gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:235px 235px;gap:16px}.gallery figure{position:relative;overflow:hidden}.gallery img{width:100%;height:100%;transition:transform .3s}.gallery figure:hover img{transform:scale(1.025)}.gallery-main{grid-row:span 2}.gallery figure:nth-child(2){grid-column:span 2}.gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 22px 18px;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:1.1rem;font-weight:700}.gallery figcaption span{color:var(--orange);font-size:.8rem;margin-right:12px}.gallery figure:nth-child(2) img{object-position:50% 53%}.community{position:relative;min-height:580px;display:flex;align-items:center;overflow:hidden}.community>img{position:absolute;inset:0;width:100%;height:100%;object-position:center 51%}.community:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.87),rgba(0,0,0,.3) 60%,rgba(0,0,0,.08))}.community-copy{position:relative;z-index:1;width:min(1400px,90%);margin:auto;padding:80px 0}.community h2{font-size:clamp(3.5rem,7vw,7.5rem);margin-bottom:30px}.visit{background:var(--paper);color:#111}.visit .eyebrow{color:#965500}.visit-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:center}.address{font-size:1.1rem;margin-top:25px}.visit-links{display:flex;gap:22px;align-items:center;margin-top:25px}.hours{margin:38px 0 0;max-width:570px}.hours>div{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid #ccc;font-size:.9rem}.hours dt{font-weight:700}.hours dd{margin:0;text-align:right}.visit .micro{color:#666}.exterior img{width:100%;height:430px;object-position:center 62%}.exterior figcaption{font-size:.85rem;padding-top:12px;color:#666}.passes{background:#eaeae7;color:#333;padding:26px 0}.passes summary{cursor:pointer;padding:12px 0;font-weight:700;min-height:48px}.passes summary span{float:right;font-size:.85rem;font-weight:400;text-decoration:underline}.passes-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:25px 0 15px}.passes h3{font-size:1.1rem}.passes h3 span{margin-left:12px}.passes p{font-size:.9rem;color:#555;margin:12px 0}.passes a{font-size:.9rem;text-decoration:underline;text-underline-offset:4px;display:inline-block;padding:10px 0}footer{padding:35px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-inner>p{font-family:var(--display);font-size:1.65rem;letter-spacing:.05em}.footer-inner>div{display:flex;flex-direction:column;gap:10px;font-size:.9rem}.footer-inner>div a:hover{color:var(--orange)}.mobile-cta{display:none}
@media(min-width:1600px){.hero{min-height:760px}.hero-inner{min-height:760px}}@media(max-width:1190px){.plan-grid{grid-template-columns:repeat(3,1fr)}.plan{min-height:440px}.plan-kicker{min-height:0}.plan:nth-child(4),.plan:nth-child(5){min-height:400px}.hero-copy{width:66%}.hero h1{font-size:6.4rem}.nav nav{gap:23px}.functional-grid{gap:7%}.film video{height:530px}}
@media(max-width:760px){html{scroll-padding-top:82px}.wrap{width:90%}.section{padding:60px 0}.nav{min-height:78px;gap:15px}.brand{width:85px}.brand img{width:84px;height:66px}.nav nav{display:none}.nav .button{font-size:.8rem;padding:12px 15px}.hero,.hero-inner{min-height:790px}.hero-inner{align-items:flex-start}.hero-photo{inset:270px 0 0}.hero-photo img{object-position:center 65%}.hero-photo:after{background:linear-gradient(180deg,#111 0%,rgba(17,17,17,.65) 23%,transparent 65%,rgba(17,17,17,.65))}.hero-copy{width:100%;padding:42px 0}.hero h1{font-size:clamp(3.7rem,13vw,6rem);margin-bottom:23px}.hero .eyebrow{font-size:.72rem;margin-bottom:20px}.hero-lead{font-size:1.25rem}.hero-description{display:none}.hero-actions{flex-wrap:wrap;gap:6px 20px;margin-top:25px}.hero .micro{color:#ddd;margin-top:12px}.photo-caption{bottom:24px;max-width:90%}.photo-caption strong{font-size:1rem}.value-strip{padding:15px 0}.value-strip .wrap{flex-wrap:wrap;justify-content:center;gap:5px 20px;font-size:.68rem;letter-spacing:.02em}.value-strip span:first-child{width:100%;text-align:center;font-size:.85rem}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:24px;max-width:100%}.section-heading h2{font-size:2.5rem}.included{flex-wrap:wrap;gap:8px 17px;font-size:.8rem}.plan-grid{grid-template-columns:1fr;gap:17px}.plan,.plan:nth-child(4),.plan:nth-child(5){min-height:0;padding:25px}.plan-kicker{margin-bottom:12px;font-size:.75rem}.plan h3{font-size:1.7rem}.price{font-size:3.5rem;margin:12px 0 2px}.period{min-height:0;font-size:.85rem}.functional-benefit{margin-top:15px;padding-top:15px}.functional-benefit br{display:none}.functional-benefit br:after{content:' '}.plan ul{margin:16px 0;font-size:.9rem}.plan-cta{min-height:50px}.featured{padding-top:21px}.payment-note{font-size:.8rem}.functional-grid{grid-template-columns:1fr;gap:40px}.functional h2{font-size:3.7rem}.film{transform:none;max-width:440px;width:100%;margin:auto}.film video{height:auto;max-height:650px;aspect-ratio:9/16;object-fit:contain}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:320px 225px 225px;gap:12px}.gallery-main{grid-row:auto;grid-column:span 2}.gallery figure:nth-child(2){grid-column:span 2}.gallery figcaption{font-size:.9rem;padding:40px 12px 12px}.gallery figcaption span{margin-right:5px}.community{min-height:610px;align-items:flex-end}.community>img{object-position:62% center}.community:after{background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.03) 85%)}.community-copy{padding:240px 0 45px}.community-copy .eyebrow{font-size:.75rem}.community h2{font-size:3.8rem}.visit-grid{grid-template-columns:1fr;gap:35px}.visit h2{font-size:3rem}.visit-links{gap:18px;flex-wrap:wrap}.hours>div{font-size:.84rem;flex-wrap:wrap}.exterior img{height:330px}.passes summary{font-size:.9rem}.passes summary span{float:none;display:block;padding-left:18px;margin-top:6px}.passes-grid{grid-template-columns:1fr;gap:28px}.footer-inner{flex-wrap:wrap;gap:25px}.footer-inner>p{font-size:1.3rem}footer{padding-bottom:105px}.footer-inner>div{width:100%;border-top:1px solid #333;padding-top:20px}.mobile-cta{position:fixed;display:flex;bottom:0;left:0;right:0;z-index:15;padding:12px 5% calc(12px + env(safe-area-inset-bottom));background:#111;border-top:1px solid #444;align-items:center;justify-content:space-between;gap:12px}.mobile-cta>span{font-size:.75rem;max-width:105px;line-height:1.4}.mobile-cta .button{font-size:.8rem}.large-copy{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.visit-logo{width:120px;height:105px;object-fit:contain;margin-top:25px}
.period,.plan ul,.plan-kicker,.micro,.payment-note{font-size:.875rem}.plan-kicker{letter-spacing:.015em}.functional-benefit{min-height:3.8em}

/* Silverback typography: supplied Rubik, matching the promotional artwork. */
@font-face{font-family:Silverback Rubik;src:url('assets/fonts/Rubik-BlackItalic.ttf') format('truetype');font-weight:900;font-style:italic;font-display:swap}
@font-face{font-family:Silverback Rubik;src:url('assets/fonts/Rubik-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:Silverback Rubik;src:url('assets/fonts/Rubik-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Silverback Rubik;src:url('assets/fonts/Rubik-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Silverback Rubik;src:url('assets/fonts/Rubik-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
:root{--orange:#ff9900;--display:'Silverback Rubik',Impact,'Arial Narrow',sans-serif}
body{font-family:'Silverback Rubik',Arial,sans-serif;font-weight:400;letter-spacing:-.005em}
h3,.button,.text-link,.nav nav,.value-strip,.eyebrow,.included,.plan-kicker,.functional-points,.gallery figcaption,.passes summary,.passes h3,.footer-inner>div{font-family:'Silverback Rubik',Arial,sans-serif}
.nav nav,.button,.value-strip,.eyebrow,.included,.plan-kicker,.functional-points,.passes summary{font-weight:600}
.hero-lead,.large-copy{font-weight:500}
.hero-description,.section-heading>p,.functional p,.address,.hours,.passes p,.payment-note,.micro{font-weight:400}
.plan ul,.period,.photo-caption,.film>p{font-weight:400}
h1,h2{font-style:italic;font-weight:900;letter-spacing:-.045em;line-height:1.02;padding-right:.08em;transform:scaleX(.84);transform-origin:left center;width:119%}
.hero h1{font-size:clamp(3.8rem,6.4vw,7rem);line-height:.99;letter-spacing:-.055em}
.hero h1 span{display:inline-block;text-shadow:4px 5px 0 #875200}
h2,.section-heading h2{font-size:clamp(2.2rem,3.4vw,3.8rem)}
.functional h2{font-size:clamp(3.2rem,5.1vw,5.8rem)}
.functional h2 span{display:inline-block;text-shadow:3px 4px 0 #875200}
.community h2{font-size:clamp(3.2rem,5.7vw,6.4rem);text-shadow:3px 4px 0 #161616}
.price{font-style:normal;font-weight:900;letter-spacing:-.065em;font-size:3.35rem}
.footer-inner>p{font-style:italic;font-size:1.4rem;font-weight:900;letter-spacing:-.04em}
@media(max-width:1190px){.hero h1{font-size:clamp(3.8rem,7vw,6.4rem)}}
@media(max-width:760px){.hero h1{font-size:clamp(2.9rem,11.2vw,5.3rem);line-height:1.03}.hero h1 span{ text-shadow:3px 4px 0 #875200}.section-heading h2,h2{font-size:clamp(2rem,7.5vw,3.1rem)}.functional h2{font-size:clamp(2.8rem,10vw,4.2rem)}.community h2{font-size:clamp(2.8rem,10vw,4.5rem)}.visit h2{font-size:clamp(2.5rem,8.5vw,3.6rem)}.price{font-size:3.35rem}.footer-inner>p{font-size:1.15rem}}
/* Keep the heavy italic strokes distinct at every display size. */
h1,h2,.hero h1{letter-spacing:-.015em}
@media(max-width:760px){.hero h1{font-size:clamp(2.9rem,13.3vw,5.6rem)}}

/* Hero supporting copy uses one calm reading scale below the display headline. */
.hero-lead{font-size:1.08rem;line-height:1.5;font-weight:500;max-width:440px}
.hero-lead strong{font-weight:600}
.hero-description{max-width:440px;margin-top:15px;font-size:1rem;line-height:1.55}
.hero-actions{margin-top:24px}
@media(max-width:760px){.hero-lead{font-size:1rem}.hero-description{font-size:1rem}}

/* The membership promise is the hero's supporting differentiator. */
.hero-lead{text-transform:uppercase;font-size:1.22rem;line-height:1.42;font-weight:600;letter-spacing:.01em}
.hero-lead strong{font-weight:600;font-size:1em;color:var(--orange);letter-spacing:.01em;text-shadow:none}
.photo-caption span{font-size:.84rem;font-weight:600;letter-spacing:.14em}
.photo-caption strong{text-transform:uppercase;font-size:1.35rem;line-height:1.25}
@media(max-width:760px){.hero-lead{font-size:1.08rem}.hero-lead strong{font-size:1.12em}}
@media(max-width:760px){.hero-lead strong{font-size:1em}.photo-caption strong{font-size:1.12rem}}

/* Repeat the hero hierarchy in the functional section. */
.functional .large-copy{text-transform:uppercase;font-size:1.22rem;line-height:1.42;font-weight:600;letter-spacing:.01em}
@media(max-width:760px){.functional .large-copy{font-size:1.08rem}}

/* Clearer membership headline: direct action plus emotional payoff. */
.plans .section-heading h2{font-size:0;line-height:1.04}
.plans .section-heading h2::after{content:'ELIGE TU MEMBRESÍA.\A ENTRENA CON TODO.';white-space:pre;display:block;font:inherit;font-size:clamp(2.2rem,3.4vw,3.8rem);line-height:1.04}
@media(max-width:760px){.plans .section-heading h2::after{font-size:clamp(2rem,7.5vw,3.1rem)}}
.plans .payment-note{text-align:center;max-width:960px;margin-left:auto;margin-right:auto}
.hero-photo{background-image:url('assets/functional-hero-generated.png');background-size:cover;background-position:center 54%}
.hero-photo>img{visibility:hidden}
