 :root{--orange:#f1262c;--bg:#090b0d;--panel:#13171a;--muted:#aab0b5;--white:#f5f5f4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--bg);color:var(--white);font-family:Inter,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.container{width:min(1320px,90%);margin:auto}.skip{position:absolute;top:-70px;left:20px;z-index:100;background:white;color:black;padding:12px}.skip:focus{top:10px}.progress{position:fixed;top:0;left:0;height:3px;background:var(--orange);z-index:100;width:0}.announcement{background:#101315;text-align:center;padding:10px;font-size:10px;letter-spacing:2.5px;font-weight:800}.announcement span{color:var(--orange);margin:0 20px}.header{position:sticky;top:0;z-index:40;background:rgba(8,10,12,.91);backdrop-filter:blur(18px);border-bottom:1px solid #ffffff16}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-size:20px;font-weight:900;letter-spacing:2px;white-space:nowrap}.brand img{height:46px;width:46px;object-fit:cover;border-radius:50%}.brand small{display:block;font-size:8px;letter-spacing:4px;font-weight:500;margin-top:3px}.desktop-nav{display:flex;gap:27px}.desktop-nav a{font-size:12px;font-weight:600;color:#d1d1d1;transition:color .2s}.desktop-nav a:hover{color:var(--orange)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--orange);color:#101010;padding:17px 24px;border:1px solid var(--orange);border-radius:5px;font-size:11px;font-weight:900;letter-spacing:.5px;transition:transform .25s,background .25s,color .25s;white-space:nowrap}.btn:hover{transform:translateY(-3px);background:#ff5256}.btn span{font-size:17px}.btn-small{padding:13px 19px}.btn-outline{background:transparent;border-color:#ffffff7a;color:white}.btn-outline:hover{background:white;color:black}.menu-toggle{display:none;background:none;border:0;width:46px;height:44px;padding:9px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:white;margin:6px 0}.mobile-menu{display:none}.hero{min-height:730px;height:min(800px,85svh);position:relative;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('assets/hero-premium.webp') center 43%/cover;transform:scale(1.04);animation:heroZoom 15s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#07090bed 0%,#07090bd1 30%,#07090b55 70%,#07090b44),linear-gradient(0deg,#07090bc7,transparent 40%)}.hero-content{position:relative;z-index:1;padding-bottom:40px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--orange);font-weight:800;text-transform:uppercase;margin-bottom:20px}.eyebrow i{display:inline-block;width:24px;height:1px;background:var(--orange);vertical-align:middle;margin:0 9px}h1,h2,h3{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.5px;line-height:.91;margin:0}h1{font-size:clamp(80px,10vw,155px)}h1 em,h2 em{font-style:normal;color:var(--orange)}.flash{font-size:.4em;vertical-align:top;margin-left:8px}.hero p{max-width:480px;font-size:16px;line-height:1.8;color:#e4e4e4;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-bottom{position:absolute;bottom:26px;left:5%;right:5%;display:flex;gap:40px;align-items:center;color:#d7d7d7;font-size:10px;letter-spacing:1.6px;font-weight:800;z-index:1}.hero-bottom span{border-top:1px solid #ffffff70;padding-top:12px;min-width:140px}.hero-bottom a{margin-left:auto;color:var(--orange)}.marquee{overflow:hidden;background:var(--orange);color:#090909;padding:16px 0;white-space:nowrap;font-family:'Barlow Condensed';font-size:26px;font-weight:900;letter-spacing:3px}.marquee div{width:max-content;animation:marquee 27s linear infinite}.marquee b{margin:0 26px}.section{padding:115px 0}.section-dark{background:#111416}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.section h2,.manifesto h2,.closing h2{font-size:clamp(55px,6.7vw,102px)}.about-copy{padding-bottom:12px}.about-copy p,.section-heading p,.smartgym p,.closing p{color:#b4b9bd;font-size:15px;line-height:1.9;max-width:470px}.text-link{display:inline-block;margin-top:18px;color:var(--orange);font-weight:900;font-size:12px;letter-spacing:.8px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:36px}.section-heading p{max-width:330px}.activity-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px}.activity-card{height:460px;position:relative;overflow:hidden;background:#202326;border:1px solid #ffffff1a}.activity-card img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.activity-card:hover img,.gallery-tile:hover img{transform:scale(1.055)}.card-gradient{position:absolute;inset:0;background:linear-gradient(transparent 30%,#000e)}.activity-body{position:absolute;bottom:25px;left:24px;right:24px}.activity-body>span{font-size:10px;color:var(--orange);font-weight:800;letter-spacing:1px}.activity-body h3{font-size:clamp(30px,3vw,49px);margin-top:9px}.activity-body a{position:absolute;right:0;bottom:0;background:var(--orange);color:black;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;font-size:22px}.disclaimer{color:#92979c;font-size:11px;line-height:1.7;margin-top:20px}.manifesto{min-height:550px;position:relative;display:flex;align-items:center;overflow:hidden}.manifesto-image{position:absolute;inset:0;background:url('assets/strength-premium.webp') center/cover;filter:brightness(.52)}.manifesto:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07090bf5,#07090b30)}.manifesto-inner{position:relative;z-index:1;padding:90px 0}.manifesto .btn{margin-top:30px}.gallery-controls{display:flex;gap:8px;margin-bottom:18px}.tab{background:#1b1e20;color:#bbb;border:1px solid #35393d;padding:14px 23px;cursor:pointer;font-size:11px;font-weight:800;letter-spacing:1px}.tab.active,.tab:hover{background:var(--orange);color:#080808;border-color:var(--orange)}.gallery-grid{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:210px 210px;gap:12px}.gallery-tile{position:relative;overflow:hidden;border:0;padding:0;cursor:zoom-in;background:#1d2225;color:white}.gallery-tile.large{grid-row:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,#0009)}.gallery-tile span{position:absolute;bottom:17px;left:18px;font-size:11px;font-weight:800;letter-spacing:1px;z-index:1}.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plan-card{background:#1b1e21;border:1px solid #3b3e42;padding:40px;min-height:380px;display:flex;align-items:flex-start;flex-direction:column}.plan-alt{background:#121517}.plan-label{color:var(--orange);font-size:11px;letter-spacing:2px;font-weight:800}.plan-card h3{font-size:clamp(46px,5vw,75px);margin:20px 0}.plan-card p{color:#b9bfc3;line-height:1.7;font-size:14px;max-width:400px}.plan-status{margin:auto 0 23px;color:#a5a9ae;font-size:11px;letter-spacing:1.3px;font-weight:800;padding-top:20px}.locations-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.location{border:1px solid #33383b;background:#14181b;padding:45px;position:relative;overflow:hidden;min-height:300px}.location-number{position:absolute;right:20px;top:0;font-family:'Barlow Condensed';font-size:160px;font-weight:900;color:#ffffff09}.location h3{font-size:clamp(45px,4.5vw,72px);position:relative}.location p{color:#b5b9bd;font-size:14px}.smartgym{background:linear-gradient(110deg,#101316,#1b100a);overflow:hidden}.smart-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:60px}.smartgym .btn{margin-top:22px}.phone-art{width:230px;height:390px;margin:0 auto;border:10px solid #272a2e;border-radius:35px;background:#090b0d;box-shadow:30px 20px 90px #f1262c25;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(8deg)}.phone-speaker{position:absolute;top:12px;width:50px;height:5px;border-radius:8px;background:#444}.phone-art img{width:92px;height:92px;border-radius:50%;margin-bottom:12px}.phone-art strong{letter-spacing:3px}.phone-art span{font-size:9px;color:var(--orange);letter-spacing:2px;margin-top:7px}.phone-bar{width:70%;height:12px;border-radius:4px;background:#252b30;margin-top:30px}.phone-bar.short{width:50%;margin-top:10px}.closing{background:linear-gradient(120deg,#e9272d,#8e1019);color:#0c0c0c;padding:100px 0;text-align:center}.closing .eyebrow{color:#181818}.closing h2 em{color:white}.closing p{color:#171717;margin:20px auto 30px}.btn-light{background:white;border-color:white}footer{background:#080a0b;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-grid h4{color:var(--orange);font-size:11px;letter-spacing:2px}.footer-grid a:not(.brand){display:block;color:#a9adb0;font-size:13px;margin:12px 0}.footer-grid p{color:#9ca1a5;font-size:13px}.footer-base{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #292c2e;padding-top:24px;margin-top:60px;color:#8f9498;font-size:10px;letter-spacing:1px}.floating-cta{position:fixed;right:22px;bottom:22px;z-index:35;background:var(--orange);color:black;padding:16px 20px;border-radius:40px;font-size:12px;font-weight:900;box-shadow:0 10px 35px #0009}.mobile-bottom{display:none}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;border:0;padding:0;background:#080a0af2;color:white;position:fixed}dialog::backdrop{background:#000e}dialog figure{height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 70px}dialog img{max-width:100%;max-height:calc(100dvh - 145px);object-fit:contain}dialog figcaption{font-size:12px;color:#bbb;margin-top:16px}dialog button{position:absolute;background:#25292d;color:white;border:1px solid #ffffff33;cursor:pointer;font-size:34px;width:50px;height:50px;z-index:2}dialog .lightbox-close{right:20px;top:20px}dialog .lightbox-prev{left:15px;top:50%}dialog .lightbox-next{right:15px;top:50%}@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:1000px){.desktop-nav{gap:12px}.desktop-nav a{font-size:11px}.nav-action{display:none}.activity-grid{grid-template-columns:1fr 1fr}.activity-feature{grid-column:span 2;height:430px}.activity-card{height:330px}.hero{min-height:670px}}@media(max-width:700px){html{scroll-padding-top:66px}.container{width:90%}.announcement{font-size:8px;letter-spacing:1px}.announcement span{margin:0 6px}.nav{height:66px}.brand{font-size:17px}.brand img{width:39px;height:39px}.desktop-nav{display:none}.menu-toggle{display:block}.mobile-menu{position:fixed;inset:66px 0 0;background:#0b0d0ff7;z-index:39;padding:35px 7%;display:flex;flex-direction:column;justify-content:space-between;opacity:0;visibility:hidden;transform:translateX(20px);transition:.25s;overflow-y:auto}.mobile-menu.open{opacity:1;visibility:visible;transform:none}.mobile-menu nav a{display:block;font-family:'Barlow Condensed';font-weight:800;font-size:clamp(34px,8vw,48px);padding:5px 0}.mobile-menu>.btn{margin:25px 0 40px}.hero{height:calc(100svh - 100px);min-height:620px;max-height:800px;align-items:center}.hero-bg{background-position:58% center}.hero-shade{background:linear-gradient(90deg,#060708e8,#0607086b),linear-gradient(0deg,#060708c9,transparent 60%)}h1{font-size:clamp(67px,14vw,105px)}.hero p{font-size:14px;max-width:320px}.hero-actions{gap:9px}.hero-actions .btn{padding:15px 13px;font-size:10px;gap:8px}.hero-bottom{gap:8px;bottom:20px}.hero-bottom span{font-size:8px;min-width:0;flex:1}.hero-bottom a{display:none}.section{padding:75px 0}.about-grid,.smart-grid{grid-template-columns:1fr;gap:25px}.section h2,.manifesto h2,.closing h2{font-size:clamp(51px,11vw,78px)}.section-heading{display:block}.section-heading p{margin-top:20px}.activity-grid{grid-template-columns:1fr}.activity-feature{grid-column:auto;height:350px}.activity-card{height:300px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:220px 170px}.gallery-tile.large{grid-column:span 2;grid-row:auto}.gallery-tile{min-width:0}.gallery-controls .tab{padding:13px 14px;font-size:10px;flex:1}.plans-grid,.locations-grid{grid-template-columns:1fr}.plan-card{min-height:360px;padding:28px}.location{padding:30px;min-height:265px}.manifesto{min-height:500px}.smart-grid{gap:45px}.phone-art{transform:rotate(5deg)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.footer-base{flex-direction:column}.floating-cta{display:none}.mobile-bottom{display:block;position:fixed;bottom:0;left:0;right:0;z-index:36;padding:10px 16px max(10px,env(safe-area-inset-bottom));background:#080a0be8;backdrop-filter:blur(12px);border-top:1px solid #ffffff22}.mobile-bottom a{display:block;text-align:center;background:var(--orange);color:#080808;padding:14px;border-radius:5px;font-size:12px;font-weight:900}body{padding-bottom:65px}dialog figure{padding:65px 15px}dialog .lightbox-prev{left:8px;top:auto;bottom:20px}dialog .lightbox-next{right:8px;top:auto;bottom:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* V5 · Premium schedule */
.schedule-section{background:radial-gradient(ellipse at 88% 0%,#5b260f36,transparent 48%),#0c0e10;position:relative}.schedule-intro{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:34px}.schedule-intro h2{margin:15px 0 18px}.schedule-intro p{max-width:510px;color:#b7b8bb;line-height:1.7}.schedule-help{display:inline-flex;align-items:center;gap:28px;color:#0b0b0b!important;background:var(--orange);padding:17px 22px;font-size:11px;font-weight:900;letter-spacing:.07em;text-decoration:none;white-space:nowrap;transition:transform .25s,box-shadow .25s}.schedule-help:hover{transform:translateY(-3px);box-shadow:0 12px 35px #f1262c35}.schedule-shell{border:1px solid #383b3f;background:#131619;box-shadow:0 22px 70px #0005;overflow:hidden}.schedule-toolbar{padding:25px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #33363a}.schedule-label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;font-weight:900;letter-spacing:.12em}.schedule-label small{width:100%;padding-left:19px;color:#999;font-size:10px;letter-spacing:.08em;font-weight:500}.schedule-live-dot{width:9px;height:9px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 5px #f1262c21}.schedule-location{display:flex;background:#090b0d;padding:4px;border:1px solid #34383b}.schedule-location-btn,.schedule-day{border:0;cursor:pointer;font-family:inherit;font-weight:800;letter-spacing:.07em;transition:background .2s,color .2s}.schedule-location-btn{padding:12px 18px;background:transparent;color:#aeb0b3;font-size:11px}.schedule-location-btn.is-active{background:var(--orange);color:#111}.schedule-days{display:flex;gap:6px;overflow-x:auto;padding:16px 24px;background:#191c1f;scrollbar-width:thin}.schedule-day{padding:12px 15px;background:#24282c;color:#bfc0c2;white-space:nowrap;font-size:11px;flex:1}.schedule-day.is-active{background:#f1262c;color:#101010}.schedule-content{padding:22px 24px 26px;min-height:290px}.schedule-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}.schedule-column{min-width:0;background:#191c1f;border:1px solid #34373b;min-height:220px;display:flex;flex-direction:column}.schedule-column-header{padding:14px 10px;border-bottom:1px solid #34373b;font-size:12px;font-weight:900;letter-spacing:.1em}.schedule-column-body{flex:1;padding:12px 9px;display:flex;flex-direction:column;gap:8px}.schedule-pending{margin:auto;text-align:center;color:#81878b;font-size:11px;line-height:1.7;padding:16px 3px}.schedule-pending-icon{font-size:22px;color:#f1262c;display:block;margin-bottom:9px}.schedule-event{border-left:3px solid var(--orange);background:#272b2e;padding:11px 9px;display:flex;flex-direction:column;gap:6px}.schedule-event time{color:var(--orange);font-size:11px;font-weight:900}.schedule-event strong{font-size:12px;line-height:1.25}.schedule-event span{font-size:10px;color:#b9bec2}.schedule-empty-day{min-height:230px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:12px;border:1px dashed #42474b;background:#191c1f;padding:28px}.schedule-empty-day strong{font-size:18px}.schedule-empty-day p{max-width:400px;font-size:13px;color:#b0b4b7}.schedule-bottom{padding:17px 25px;border-top:1px solid #35383b;display:flex;justify-content:space-between;gap:15px;align-items:center;color:#999;font-size:11px}.schedule-bottom a{color:var(--orange);text-decoration:none;font-weight:900;white-space:nowrap}.schedule-location-btn:focus-visible,.schedule-day:focus-visible,.schedule-help:focus-visible{outline:3px solid #fff;outline-offset:3px}@media(max-width:1000px){.schedule-week{grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-column{min-height:175px}}@media(max-width:700px){.schedule-intro{align-items:stretch;flex-direction:column;gap:16px}.schedule-help{justify-content:space-between}.schedule-toolbar{flex-direction:column;align-items:stretch;padding:20px 16px}.schedule-location{width:100%}.schedule-location-btn{flex:1}.schedule-days{padding:12px;gap:6px}.schedule-day{flex:none;padding:13px 15px}.schedule-content{padding:13px}.schedule-week{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-column{min-height:160px}.schedule-column-header{padding:11px}.schedule-bottom{padding:17px;flex-direction:column;align-items:flex-start}}

/* V7 premium timetable */
.schedule-view-switch{display:flex;align-items:center;gap:8px;padding:16px 24px 0;flex-wrap:wrap}.schedule-view-btn{background:#25292d;color:#e5e5e5;border:1px solid #42464b;padding:12px 16px;cursor:pointer;font-size:11px;font-weight:900;letter-spacing:.08em}.schedule-view-btn.is-active{background:#f1262c;color:#101010;border-color:#f1262c}.schedule-view-note{margin-left:auto;color:#8f969b;font-size:11px}.cal-scroll{overflow-x:auto;scrollbar-color:#f1262c #1b1f23}.cal-board{display:grid;grid-template-columns:65px repeat(var(--cal-days),minmax(140px,1fr));min-width:calc(65px + var(--cal-days)*140px);background:#111417}.cal-corner,.cal-head{position:sticky;top:0;background:#202428;border-bottom:1px solid #3c4145;padding:14px 9px;z-index:2;font-size:11px;letter-spacing:.07em;font-weight:900}.cal-corner{color:#91979c}.cal-head{text-align:center}.cal-time-rail{position:relative;height:var(--cal-height);border-right:1px solid #3c4145}.cal-time-rail span{position:absolute;right:8px;transform:translateY(-50%);font-size:10px;color:#9ea4a9}.cal-lane{height:var(--cal-height);position:relative;border-right:1px solid #35393d;background:repeating-linear-gradient(to bottom,transparent 0,transparent 77px,#34383c 77px,#34383c 78px)}.cal-position{position:absolute;left:4px;right:4px;min-height:34px}.cal-event{width:100%;height:100%;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;background:color-mix(in srgb,var(--event-color) 15%,#24272a);border:1px solid color-mix(in srgb,var(--event-color) 55%,#24272a);border-left:4px solid var(--event-color);padding:8px 9px;color:#fff;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s;overflow:hidden}.cal-event:hover{background:color-mix(in srgb,var(--event-color) 27%,#24272a);transform:translateY(-2px);box-shadow:0 8px 18px #0006}.cal-event-time{font-size:10px;color:var(--event-color);font-weight:900}.cal-event strong{font-size:12px;line-height:1.2}.cal-event-more{font-size:9px;color:#b6bdc2;letter-spacing:.06em}.cal-empty{padding:65px 20px;text-align:center;color:#b7b9bd}.cal-agenda{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cal-agenda-day{background:#1a1e21;border:1px solid #373d42;padding:16px;display:flex;flex-direction:column;gap:9px}.cal-agenda-day h3{font-size:14px;font-weight:900;letter-spacing:.12em;color:#fff;margin:0 0 5px}.cal-agenda-day .cal-event{min-height:83px}.cal-agenda-day p{color:#9ca3a9;font-size:12px}.class-dialog{border:1px solid #50545a;background:linear-gradient(135deg,#22272b,#101214);color:white;max-width:520px;width:calc(100% - 28px);padding:0;box-shadow:0 30px 100px #000b}.class-dialog::backdrop{background:#030405d9;backdrop-filter:blur(6px)}.class-dialog-inner{padding:38px 30px}.class-dialog h2{font-size:clamp(35px,5vw,56px);margin:16px 0}.class-dialog p{color:#b9bdc1;line-height:1.7}.class-dialog-close{position:absolute;right:12px;top:12px;background:#34383b;color:#fff;border:0;font-size:25px;width:38px;height:38px;cursor:pointer}.class-dialog-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.class-dialog-facts div{border:1px solid #3b4146;padding:15px;display:flex;flex-direction:column;gap:7px}.class-dialog-facts small{color:#f1262c;font-size:10px;letter-spacing:.1em}.class-dialog-facts strong{font-size:13px}.class-dialog-notice{font-size:11px!important}.schedule-view-btn:focus-visible,.cal-event:focus-visible,.class-dialog-close:focus-visible{outline:3px solid #fff;outline-offset:2px}@media(max-width:700px){.schedule-view-switch{padding:14px 12px}.schedule-view-note{width:100%;margin-left:0}.cal-agenda{grid-template-columns:1fr}.cal-agenda-day{padding:14px}.cal-board{grid-template-columns:55px repeat(var(--cal-days),minmax(150px,1fr));min-width:calc(55px + var(--cal-days)*150px)}.class-dialog-inner{padding:32px 20px}}@media(prefers-reduced-motion:reduce){.cal-event{transition:none}.cal-event:hover{transform:none}}

/* DC FORCE V8 — editorial gallery */
.gallery-v8{background:radial-gradient(ellipse at 90% 0%,#2b180f 0%,#0b0d0f 40%,#0a0c0e 100%);position:relative}
.gallery-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ffffff33;padding-top:23px}
.gallery-kicker-right{font-size:10px;letter-spacing:2px;color:#999}
.gallery-v8-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:46px}
.gallery-v8-head h2{font-size:clamp(64px,8vw,128px)}
.gallery-v8-intro{max-width:335px}.gallery-v8-intro p{font-size:14px;line-height:1.85;color:#c3c5c6}
.gallery-instagram{display:inline-flex;gap:16px;margin-top:16px;font-size:11px;font-weight:900;letter-spacing:1px;color:var(--orange)}
.gallery-v8-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-bottom:1px solid #ffffff2b;padding-bottom:22px}
.gallery-v8-toolbar .gallery-controls{margin:0}.gallery-v8-filters{display:flex;flex-wrap:wrap;gap:8px}
.gallery-filter{background:transparent;border:1px solid #404447;color:#b4b6b9;padding:12px 15px;font-size:10px;letter-spacing:.7px;font-weight:800;cursor:pointer;transition:.2s}
.gallery-filter:hover,.gallery-filter.active{border-color:var(--orange);color:var(--orange);background:#f1262c0e}
.gallery-v8-meta{display:flex;justify-content:space-between;gap:12px;color:#aeb2b5;font-size:10px;letter-spacing:1.7px;font-weight:800;padding:24px 0 17px}
.gallery-v8-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:14px}
.gallery-v8-tile{position:relative;display:block;min-height:275px;aspect-ratio:1.16;overflow:hidden;background:#1b2023;border:1px solid #ffffff12;padding:0;cursor:zoom-in;text-align:left;color:white}
.gallery-v8-tile.gallery-feature{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;min-height:565px}
.gallery-v8-tile img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .5s}
.gallery-v8-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#030404dc 0%,transparent 65%);pointer-events:none}
.gallery-v8-tile:hover img,.gallery-v8-tile:focus-visible img{transform:scale(1.065);filter:brightness(1.07)}
.gallery-v8-overlay{position:absolute;bottom:22px;left:23px;right:60px;z-index:1;display:flex;flex-direction:column;gap:8px}
.gallery-v8-category{font-size:10px;color:#ff7378;letter-spacing:2px;font-weight:900}
.gallery-v8-overlay strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(25px,2.7vw,43px);line-height:.95;letter-spacing:.3px}
.gallery-v8-arrow{position:absolute;right:19px;bottom:20px;z-index:1;border:1px solid #ffffffa0;width:40px;height:40px;display:grid;place-items:center;font-size:20px;transition:.2s}
.gallery-v8-tile:hover .gallery-v8-arrow{background:var(--orange);color:#090909;border-color:var(--orange)}
.gallery-v8-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:24px}
.gallery-visit{color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.8px}
.lightbox-counter{font-size:11px;letter-spacing:3px;color:var(--orange);margin-top:12px}
.gallery-v8 :focus-visible{outline:2px solid var(--orange);outline-offset:3px}
@media(max-width:900px){.gallery-v8-head{display:block}.gallery-v8-intro{margin-top:24px;max-width:550px}.gallery-v8-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-v8-tile.gallery-feature{min-height:430px}}
@media(max-width:700px){.gallery-kicker-right{display:none}.gallery-v8-head h2{font-size:clamp(56px,12vw,82px)}.gallery-v8-toolbar{align-items:stretch}.gallery-v8-toolbar .gallery-controls{width:100%}.gallery-v8-toolbar .gallery-controls .tab{flex:1}.gallery-v8-filters{gap:6px}.gallery-filter{font-size:9px;padding:10px 9px}.gallery-v8-grid{gap:9px}.gallery-v8-tile{min-height:170px;aspect-ratio:.85}.gallery-v8-tile.gallery-feature{grid-column:span 2;grid-row:auto;min-height:280px;aspect-ratio:1.3}.gallery-v8-overlay{left:12px;bottom:14px;right:12px}.gallery-v8-overlay strong{font-size:24px}.gallery-v8-category{font-size:8px}.gallery-v8-arrow{right:10px;top:10px;bottom:auto;width:31px;height:31px;font-size:16px}.gallery-v8-meta{font-size:9px}.gallery-v8-bottom{align-items:flex-start}}

/* River Plate brand adjustments */
:root{--orange:#f1262c} .river-social-art{display:grid;place-items:center;min-height:300px}.river-social-art img{width:min(280px,75%);border-radius:50%;box-shadow:0 25px 100px #f1262c25}.river-contact .btn{margin-top:16px}.river-location .location{min-height:360px}.brand img{background:#fff}.hero-bg{filter:saturate(.7)}.closing{background:linear-gradient(120deg,#f1262c,#8e1019)}.river-social{background:linear-gradient(110deg,#101316,#250d10)}

/* Logo oficial recreado: proporciones sin recorte */
.brand img{object-fit:contain;background:#080808;border-radius:4px;padding:1px}
.river-social-art img{object-fit:contain;border-radius:8px;background:#080808}

/* Barra superior: más presencia, vidrio y hover delicado */
html{scroll-padding-top:104px}
.announcement{
  position:relative;
  background:linear-gradient(180deg,#14171a 0%,#0b0d0f 100%);
  color:rgba(245,245,244,.78);
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  padding:12px 22px 13px;
  border-bottom:1px solid rgba(255,255,255,.05)
}
.announcement::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(241,38,44,.75),transparent);
  pointer-events:none
}
.announcement span{
  color:#f1262c;
  margin:0 16px;
  font-weight:500;
  letter-spacing:0
}
.header{
  background:rgba(8,10,12,.62);
  backdrop-filter:blur(22px) saturate(1.25);
  -webkit-backdrop-filter:blur(22px) saturate(1.25);
  border-bottom:1px solid rgba(255,255,255,.07);
  box-shadow:0 16px 40px rgba(0,0,0,.22)
}
.header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(241,38,44,.55) 50%,transparent);
  pointer-events:none
}
.header .nav{height:90px;gap:28px}
.header .brand{
  gap:14px;
  font-family:'Barlow Condensed',Impact,sans-serif;
  font-size:26px;
  font-weight:800;
  letter-spacing:.08em;
  line-height:.9
}
.header .brand img{
  width:58px;
  height:58px;
  padding:2px;
  border-radius:8px;
  background:#080808;
  box-shadow:0 0 0 1px rgba(255,255,255,.1),0 8px 22px rgba(0,0,0,.35);
  transition:transform .55s cubic-bezier(.22,1,.36,1),box-shadow .55s ease
}
.header .brand small{
  font-family:Inter,Arial,sans-serif;
  font-size:9.5px;
  font-weight:500;
  letter-spacing:.38em;
  color:rgba(245,245,244,.58);
  margin-top:5px
}
.header .brand span{transition:color .45s ease}
.header .brand:hover img{
  transform:scale(1.045);
  box-shadow:0 0 0 1px rgba(241,38,44,.4),0 10px 26px rgba(241,38,44,.16)
}
.header .brand:hover span{color:#fff}
.desktop-nav{gap:30px}
.desktop-nav a{
  position:relative;
  font-size:13.5px;
  font-weight:500;
  letter-spacing:.04em;
  color:rgba(245,245,244,.76);
  padding:8px 1px 10px;
  transition:color .45s ease
}
.desktop-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:2px;
  height:1px;
  background:linear-gradient(90deg,transparent,#f1262c 18%,#f1262c 82%,transparent);
  transform:scaleX(.15);
  transform-origin:center;
  opacity:0;
  transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .45s ease
}
.desktop-nav:hover a{color:rgba(245,245,244,.42)}
.desktop-nav a:hover,
.desktop-nav a:focus-visible{color:#fff}
.desktop-nav a:hover::after,
.desktop-nav a:focus-visible::after{transform:scaleX(1);opacity:1}
.header .nav-action{
  padding:15px 22px;
  border-radius:7px;
  letter-spacing:.08em;
  box-shadow:0 10px 26px rgba(241,38,44,.22)
}
@media(max-width:1180px){
  .header .brand{font-size:23px}
  .header .brand img{width:52px;height:52px}
  .desktop-nav{gap:18px}
  .desktop-nav a{font-size:12.5px;letter-spacing:.02em}
}
@media(max-width:1000px){
  .desktop-nav{gap:14px}
  .desktop-nav a{font-size:12px}
}
@media(max-width:980px){
  .announcement{font-size:10px;letter-spacing:.1em;white-space:nowrap}
  .announcement span{margin:0 10px}
}
@media(max-width:700px){
  html{scroll-padding-top:76px}
  .announcement{font-size:clamp(7px,2.25vw,9px);letter-spacing:.02em;padding:10px 8px;white-space:nowrap}
  .announcement span{margin:0 .45em}
  .header .nav{height:76px}
  .header .brand{font-size:21px;gap:10px}
  .header .brand img{width:48px;height:48px}
  .header .brand small{font-size:8px;letter-spacing:.28em}
  .mobile-menu{top:76px}
  .mobile-menu nav a{transition:color .4s ease,padding-left .45s ease}
  .mobile-menu nav a:hover,
  .mobile-menu nav a:focus-visible{color:#f1262c;padding-left:8px}
}
@media(prefers-reduced-motion:reduce){
  .header .brand img,
  .header .brand span,
  .desktop-nav a,
  .desktop-nav a::after,
  .mobile-menu nav a{transition:none}
}

/* Banner de inicio y botón de WhatsApp */
.hero-slider{position:absolute;inset:0;z-index:0;top:-38%;height:176%;bottom:auto;will-change:transform}
.hero-shade{top:-38%;height:176%;bottom:auto;will-change:transform}
.hero-slide{position:absolute;inset:0;background-position:68% center;background-size:cover;background-repeat:no-repeat;opacity:0;transform:scale(1.06);transition:opacity 1s ease,transform 7s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-arrow{position:absolute;top:46%;z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.38);background:rgba(8,10,12,.38);color:#fff;backdrop-filter:blur(10px);cursor:pointer;font-size:28px;line-height:1;display:grid;place-items:center;transition:background .35s ease,transform .35s ease,border-color .35s ease}
.hero-prev{left:18px}
.hero-next{right:18px}
.hero-arrow:hover{background:rgba(241,38,44,.88);border-color:transparent;transform:translateY(-2px)}
.hero-dots{position:absolute;left:50%;bottom:86px;transform:translateX(-50%);z-index:3;display:flex;gap:8px;align-items:center}
.hero-dot{width:8px;height:8px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.55);cursor:pointer;transition:width .4s ease,background .4s ease}
.hero-dot.is-active{width:22px;background:#f1262c}
.hero.is-single .hero-arrow,.hero.is-single .hero-dots{display:none}
.floating-cta{display:grid;place-items:center;width:60px;height:60px;padding:0;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 12px 28px rgba(18,140,70,.38);animation:wa-glow 2.8s ease-in-out infinite;transition:transform .35s ease,background .35s ease}
.floating-cta svg{width:34px;height:34px;fill:currentColor;display:block}
.floating-cta:hover{transform:translateY(-3px) scale(1.05);background:#2fe072;animation:none}
@keyframes wa-glow{0%,100%{box-shadow:0 12px 28px rgba(18,140,70,.38)}50%{box-shadow:0 12px 28px rgba(18,140,70,.38),0 0 0 9px rgba(37,211,102,.14)}}
@media(max-width:700px){
  .hero-arrow{display:none}
  .hero-dots{bottom:72px}
  .floating-cta{display:grid;right:14px;bottom:calc(78px + env(safe-area-inset-bottom));width:54px;height:54px}
  .floating-cta svg{width:30px;height:30px}
}
@media(prefers-reduced-motion:reduce){
  .hero-slide,.hero-arrow,.hero-dot,.floating-cta{transition:none;animation:none;transform:none}
  .hero-slide.is-active{transform:none}
}

/* Botones: texto grande, sin íconos */
.btn,.schedule-help,.gallery-instagram,.text-link,.mobile-bottom a{
  font-weight:700;
  letter-spacing:.03em
}
.btn{
  gap:0;
  font-size:16px;
  padding:16px 28px;
  border-radius:3px
}
.btn:hover,.schedule-help:hover{transform:none}
.manifesto .btn{
  background:linear-gradient(100deg,#f1262c 0%,#ff5c4e 42%,#d8141c 100%);
  background-size:220% 100%;
  background-position:0% 50%;
  transition:transform .35s ease,box-shadow .35s ease,background-position .45s ease
}
.manifesto .btn:hover{
  transform:translateY(-7px) scale(1.06);
  background-position:100% 50%;
  box-shadow:0 18px 40px rgba(241,38,44,.62)
}
@media(prefers-reduced-motion:reduce){
  .manifesto .btn,.manifesto .btn:hover{transition:none;transform:none}
}
.btn-small,.header .nav-action{font-size:15px;padding:14px 22px}
.hero-actions .btn{font-size:16px;padding:16px 26px;gap:0}
.schedule-help{font-size:15px;gap:0;padding:16px 24px}
.gallery-instagram{font-size:15px;gap:0}
.text-link{font-size:15px}
.mobile-bottom a{font-size:16px;letter-spacing:.03em}
.activity-body>span{font-size:13px;letter-spacing:.12em}
.activity-body h3{font-size:clamp(40px,4.2vw,68px);letter-spacing:0}
.activity-body h3 a{position:static;width:auto;height:auto;display:inline;background:none;border-radius:0;color:inherit;font-size:inherit}
.gallery-v8-grid{margin-top:36px}
.cal-event-more{font-size:13px;font-weight:700;letter-spacing:.03em}
.cal-event{overflow:visible}
.cal-position{overflow:visible}

.contact-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.contact-list a{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid #ffffff18;border-radius:16px;background:#ffffff08;transition:border-color .3s ease,background .3s ease,transform .3s ease}
.contact-list a:hover{border-color:#25d366;background:#25d36614;transform:translateY(-2px)}
.contact-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#25d366;color:#fff;flex:none}
.contact-ico svg{width:24px;height:24px;fill:currentColor;display:block}
.contact-ico.phone{background:#f1262c}
.contact-list small{display:block;font-size:11px;letter-spacing:.16em;font-weight:700;color:#aab0b5}
.contact-list strong{display:block;margin-top:2px;font-family:"Barlow Condensed",sans-serif;font-size:30px;font-weight:700;letter-spacing:.03em;line-height:1}
.footer-contact a{display:flex;align-items:center;gap:8px}
.footer-contact svg{width:16px;height:16px;fill:#25d366;flex:none}
@media(prefers-reduced-motion:reduce){
  .contact-list a{transition:none}
  .contact-list a:hover{transform:none}
}
@media(max-width:360px){
  .contact-list strong{font-size:24px}
  .contact-list a{gap:10px;padding:10px 12px}
}

.act-scroll{overflow-x:auto;scrollbar-color:#3a3032 #141214}
.act-board{position:relative;padding:22px 18px 24px;background:#120e10;overflow:hidden}
.act-board::before{content:none}
.act-board-head{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin-bottom:18px}
.act-board-head img{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:50%}
.act-board-head > div span{display:block;font-size:11px;letter-spacing:.22em;font-weight:800;color:#f4f4f4}
.act-board-head h3{margin:2px 0 0;font-family:"Barlow Condensed",sans-serif;font-size:clamp(28px,4vw,46px);line-height:.9;letter-spacing:.02em;font-weight:800}
.act-chevs{display:none}
.act-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(148px,1fr));gap:8px;min-width:820px}
.act-day{text-align:center;font-family:"Barlow Condensed",sans-serif;font-size:18px;font-weight:700;letter-spacing:.12em;padding:4px 0 10px;color:#d9d4d2;transition:opacity .35s ease}
.act-cell{min-height:74px;border:0;border-radius:3px;color:#fff;background:linear-gradient(180deg,#e3262d 0%,#b3121a 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 16px rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 10px;animation:act-in .4s ease backwards;animation-delay:calc(var(--i) * 18ms)}
.act-cell.is-class{cursor:pointer;animation:act-in .4s ease backwards;animation-delay:calc(var(--i) * 18ms)}
.act-cell.is-class:hover,.act-cell.is-class:focus-visible{transform:translateY(-2px);z-index:2;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 12px 22px rgba(0,0,0,.38);outline:2px solid #fff;outline-offset:2px}
.act-cell.is-empty{opacity:1;background:transparent;box-shadow:none;border:1px solid rgba(255,255,255,.07)}
.act-cell.is-empty span{font-size:0}
.act-ico{width:42px;height:42px;flex:none;display:grid;place-items:center;color:#fff}
.act-ico svg{width:42px;height:42px;display:block;shape-rendering:geometricPrecision}
.act-copy{text-align:left;min-width:0}
.act-copy strong{display:block;font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:800;letter-spacing:.04em;line-height:1}
.act-copy em{display:block;margin-top:2px;font-style:normal;font-family:"Barlow Condensed",sans-serif;font-size:20px;font-weight:700;line-height:1}
.act-grid.is-filtered .act-day:not(.is-on),.act-grid.is-filtered .act-cell:not(.is-on){opacity:.28;filter:saturate(.4)}
.act-agenda{display:grid;gap:18px;padding:8px 18px 22px;max-width:680px}
.act-agenda-day h3{margin:0 0 10px;font-family:"Barlow Condensed",sans-serif;letter-spacing:.08em;font-size:22px}
.act-agenda-day{display:grid;gap:8px}
.act-agenda .act-cell{width:100%;justify-content:flex-start;padding-left:16px}
@keyframes act-in{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
@keyframes act-glow{0%,100%{box-shadow:inset 0 1px 0 #ffffff66,0 8px 14px #00000055}50%{box-shadow:inset 0 0 16px #ffffff40,0 0 22px #ff3a2a88}}
@keyframes act-chev{0%,100%{opacity:.35;transform:translateX(0)}50%{opacity:1;transform:translateX(5px)}}
@keyframes act-streak{0%,100%{transform:translateX(-8%);opacity:.45}50%{transform:translateX(8%);opacity:.9}}
@media(prefers-reduced-motion:reduce){
  .act-cell,.act-cell.is-class,.act-chevs i,.act-board::before{animation:none}
  .act-cell.is-class:hover,.act-cell.is-class:focus-visible{transform:none}
}

.open-hours{margin:0;background:transparent;color:#f5f5f4;border-radius:0;padding:26px 28px 22px;text-align:left;box-shadow:none;border-bottom:1px solid #33363a}
.open-hours-kicker{margin:0;font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.22em;line-height:1;color:#f1262c;text-align:left;text-transform:uppercase}
.open-hours-kicker::after{content:none}
.open-hours-grid{display:flex;flex-wrap:wrap;gap:16px 52px;margin-top:14px}
.open-hours article span{display:block;font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1;color:#9aa0a6;text-transform:uppercase}
.open-hours article strong{display:block;margin-top:7px;font-family:"Barlow Condensed",sans-serif;font-size:clamp(30px,3.2vw,42px);font-weight:800;letter-spacing:.03em;line-height:.95}
.open-hours article strong i{font-style:normal;font-weight:700}
.place-hours{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.place-hours li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid #ffffff18;padding-top:10px}
.place-hours span{color:#c8c8c8;font-size:14px}
.place-hours strong{font-family:"Barlow Condensed",sans-serif;font-size:22px;font-weight:700;letter-spacing:.03em}
.footer-hours{margin:0 0 12px;color:#d5d5d5;font-size:14px;line-height:1.6}
.footer-hours strong{color:#fff;font-weight:700}
@media(max-width:700px){
  .open-hours{padding:20px 16px 18px;border-radius:0}
  .open-hours-grid{gap:16px 28px}
  .place-hours li{flex-direction:column;align-items:flex-start;gap:2px}
}
.gallery-v8-bottom{justify-content:flex-end}
.gallery-visit{
  color:#b9b9b9;
  background:transparent;
  border:1px solid #ffffff2e;
  padding:13px 18px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.06em;
  transition:background .3s ease,color .3s ease,border-color .3s ease
}
.gallery-visit:hover{
  background:#fff;
  color:#111;
  border-color:#fff
}
.schedule-logo{height:72px;width:auto;max-width:min(108px,32vw);object-fit:contain;background:none;border-radius:0;flex:none;display:block}
.location-photo{width:100%;height:min(440px,50vw);object-fit:cover;object-position:center 40%;margin:6px 0 22px;border:0;display:block}
.location-map{position:relative;margin:8px 0 22px;height:min(520px,56vw);min-height:420px;border:1px solid rgba(255,255,255,.1);background:#121416;box-shadow:0 22px 70px #0005;overflow:hidden}
.location-map::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#f1262c,#fff 42%,transparent);z-index:1;pointer-events:none}
.location-map iframe{width:100%;height:100%;border:0;display:block}
.brand img,.header .brand img{width:auto;height:64px;max-width:none;padding:0;border-radius:0;background:transparent;box-shadow:none;object-fit:contain}
.plan-card .btn:hover{background:#fff;color:#111;border-color:#fff;transform:none}
.river-social-art img{width:min(240px,72%);height:auto;border-radius:0;background:transparent;box-shadow:none;object-fit:contain}

/* Acabado premium */
html{color-scheme:dark;scrollbar-color:#3a3a3a #090b0d}
::selection{background:#f1262c;color:#fff}
h1,h2{text-wrap:balance}
.marquee,.schedule-label,.schedule-day,.schedule-view-btn,.plan-label,.activity-body>span,.footer-grid h4,.hero-bottom,.footer-base{text-transform:uppercase}
.hero-bottom a{margin-right:78px}
.mobile-menu{background:#090b0d}
body:has(.mobile-menu.open) .floating-cta,
body:has(.mobile-menu.open) .mobile-bottom{opacity:0;visibility:hidden;pointer-events:none}
.header.is-scrolled{background:rgba(8,10,12,.94);box-shadow:0 12px 32px rgba(0,0,0,.38)}
.desktop-nav a[aria-current="true"]{color:#fff}
.desktop-nav a[aria-current="true"]::after,.desktop-nav:hover a[aria-current="true"]::after{transform:scaleX(1);opacity:1}
.desktop-nav:hover a[aria-current="true"]{color:#fff}
.mobile-menu nav a[aria-current="true"]{color:#f1262c}
.activity-grid{grid-template-columns:1.35fr .9fr;gap:16px}
.activity-card{height:560px}
.activity-feature img{object-position:left center}
.card-gradient{background:linear-gradient(180deg,rgba(0,0,0,.05) 10%,rgba(0,0,0,.25) 42%,rgba(5,6,7,.92) 100%)}
.activity-body{z-index:1;bottom:32px;left:32px;right:32px}
.activity-body h3,.activity-body p{text-shadow:0 8px 24px rgba(0,0,0,.45)}
.activity-body h3{font-size:clamp(36px,3.5vw,60px)}
.activity-card:not(.activity-feature) .activity-body h3{font-size:clamp(32px,3vw,48px)}
.activity-body p{margin:12px 0 0;max-width:28ch;color:rgba(245,245,244,.84);font-size:15px;line-height:1.5}
.activity-body em{display:inline-block;margin-top:18px;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#f1262c}
.activity-body em::after{content:"";display:block;width:28px;height:1px;margin-top:8px;background:#f1262c;transition:width .35s ease}
.activity-card:hover .activity-body em::after{width:64px}
.activity-hit{position:absolute;inset:0;z-index:2}
.activity-card:has(.activity-hit:focus-visible){outline:2px solid #f1262c;outline-offset:3px}
.manifesto-image{filter:brightness(.3) saturate(.6) contrast(1.05)}
.manifesto:after{background:linear-gradient(90deg,#07090bf2 0%,#07090bc4 46%,#07090b73 100%)}
.manifesto .btn:hover{transform:translateY(-2px);background-position:100% 50%;box-shadow:0 14px 32px rgba(0,0,0,.35)}
.schedule-shell{border-color:rgba(255,255,255,.08);box-shadow:0 28px 70px rgba(0,0,0,.38)}
.act-board-head{display:none}
.act-board{padding:14px 14px 18px}
.schedule-label small{text-transform:none;letter-spacing:.04em}
.plan-card{position:relative;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(241,38,44,.16),transparent 110px),#14171a;padding:42px 40px 36px}
.plan-card::before{content:"";position:absolute;left:40px;right:40px;top:0;height:2px;background:#f1262c}
.plan-alt{background:#101214}
.plan-alt::before{background:rgba(255,255,255,.28)}
.plan-card h3{font-size:clamp(48px,5vw,78px)}
.plan-points{list-style:none;margin:22px 0 32px;padding:0;display:grid;gap:11px}
.plan-points li{position:relative;padding-left:16px;color:#d7d7d6;font-size:15px;letter-spacing:.01em}
.plan-points li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:1px;background:#f1262c}
.plan-card .btn{margin-top:auto}
.plans-note{margin:22px 0 0;color:#8d9398;font-size:13px;letter-spacing:.02em}
.location{background:#121416;border-color:rgba(255,255,255,.08)}
.contact-list a.contact-call:hover{border-color:#f1262c;background:rgba(241,38,44,.1)}
.social-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:64px}
.river-social{background:linear-gradient(110deg,#101316,#1c0d10)}
.social-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:14px;min-height:340px;padding:36px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 80% 0%,rgba(241,38,44,.2),transparent 46%),#0c0e10;transition:border-color .35s ease,transform .35s ease}
.social-card img{width:148px;height:auto;object-fit:contain}
.social-handle{font-family:"Barlow Condensed",Impact,sans-serif;font-size:clamp(28px,3vw,42px);font-weight:800;letter-spacing:.02em;line-height:.95;text-transform:lowercase}
.social-card small{color:#f1262c;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.social-card:hover{border-color:rgba(241,38,44,.7);transform:translateY(-3px)}
.footer-grid a:not(.brand):hover{color:#fff}
.footer-base a:hover{color:#fff}
@media(max-width:1000px){
  .activity-grid{grid-template-columns:1fr 1fr}
  .activity-feature{grid-column:auto;height:480px}
  .activity-card{height:480px}
  .social-grid{grid-template-columns:1fr;gap:36px}
}
@media(max-width:700px){
  .location-map{height:340px;min-height:340px}
  .hero-actions .btn{padding:14px 16px;font-size:15px}
  .hero-bottom span{font-size:10px;letter-spacing:.08em}
  .activity-grid{grid-template-columns:1fr}
  .activity-feature,.activity-card{height:430px;grid-column:auto}
  .activity-body{left:22px;right:22px;bottom:22px}
  .plan-card{padding:32px 24px 28px}
  .plan-card::before{left:24px;right:24px}
  .social-card{min-height:280px;padding:28px 24px}
  .social-card:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .activity-body em::after,.social-card{transition:none}
  .social-card:hover{transform:none}
  .activity-card:hover .activity-body em::after{width:28px}
}

/* Calendario semanal */
.schedule-bar{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;padding:14px 18px;background:#191c1f;border-bottom:1px solid #33363a}
.schedule-bar .schedule-days{flex:1;min-width:min(100%,420px);padding:0;background:transparent}
.schedule-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;list-style:none;color:#d5d5d5;font-size:12px;font-weight:600}
.schedule-legend li{display:flex;align-items:center;gap:8px}
.schedule-legend i{width:10px;height:10px;display:block;flex:none}
.schedule-legend i[data-kind="spinning"]{background:#e3262d}
.schedule-legend i[data-kind="funcional"]{background:#f4f1ec}
.schedule-legend i[data-kind="ritmos"]{background:#241416;box-shadow:inset 0 0 0 1.5px #e3262d}
.schedule-day.is-today:not(.is-active){box-shadow:inset 0 -2px 0 #f1262c}
.schedule-next{display:grid;grid-template-columns:1fr auto;grid-template-areas:"kicker time" "title time" "when time";gap:2px 18px;width:100%;margin:0;padding:18px 22px;border:0;border-bottom:1px solid #33363a;background:#101214;color:inherit;text-align:left;cursor:pointer}
.schedule-next[hidden]{display:none}
.schedule-next-kicker{grid-area:kicker;color:#f1262c;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.schedule-next strong{grid-area:title;font-family:"Barlow Condensed",Impact,sans-serif;font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:.02em;line-height:.95;text-transform:uppercase}
.schedule-next em{grid-area:when;font-style:normal;color:#b7b8bb;font-size:13px}
.schedule-next time{grid-area:time;align-self:center;font-family:"Barlow Condensed",Impact,sans-serif;font-size:clamp(36px,4vw,52px);font-weight:800;line-height:.9;color:#fff}
.schedule-next:hover{background:#171b1e}
.schedule-next:focus-visible,.week-class:focus-visible{outline:2px solid #fff;outline-offset:2px}
.schedule-content{padding:14px}
.week-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch}
.week-board.is-day{grid-template-columns:minmax(0,560px)}
.week-col{display:flex;flex-direction:column;min-width:0;background:#16191c;border:1px solid rgba(255,255,255,.08)}
.week-col.is-today{border-color:rgba(241,38,44,.7);box-shadow:inset 0 2px 0 #f1262c}
.week-col-head{padding:14px 10px 12px;text-align:center;border-bottom:1px solid rgba(255,255,255,.06)}
.week-today{display:block;margin-bottom:4px;color:#f1262c;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.week-col-head h3{margin:0;font-size:26px;font-weight:700;letter-spacing:.04em;line-height:1}
.week-col-head small{display:block;margin-top:4px;color:#9aa0a6;font-size:11px;letter-spacing:.06em}
.week-classes{display:flex;flex-direction:column;gap:8px;padding:10px}
.week-class{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;min-height:62px;padding:10px 12px;border:0;border-radius:3px;color:#fff;text-align:left;cursor:pointer}
.week-class time{font-family:"Barlow Condensed",Impact,sans-serif;font-size:22px;font-weight:700;line-height:1}
.week-class strong{font-size:13px;font-weight:700;letter-spacing:.03em;line-height:1.1;text-transform:uppercase}
.week-class[data-kind="spinning"]{background:linear-gradient(180deg,#e3262d 0%,#b3121a 100%)}
.week-class[data-kind="funcional"]{background:#f4f1ec;color:#161616}
.week-class[data-kind="ritmos"]{background:#241416;color:#fff;box-shadow:inset 0 0 0 1px rgba(241,38,44,.5)}
.week-class[data-kind="ritmos"] time{color:#f1262c}
.week-class:hover{filter:brightness(1.06)}
.week-board.is-day .week-class{flex-direction:row;align-items:center;justify-content:flex-start;gap:18px;min-height:72px;padding:14px 18px}
.week-board.is-day .week-class time{font-size:32px}
.week-board.is-day .week-class strong{font-size:18px}
.class-dialog-facts{grid-template-columns:1fr 1fr}
.class-dialog-facts small{text-transform:uppercase}
@media(max-width:760px){
  .marquee{display:none}
  .schedule-bar{align-items:stretch;padding:12px}
  .schedule-bar .schedule-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;flex:none;min-width:0;gap:6px;overflow:visible}
  .schedule-bar .schedule-day{padding:12px 4px;letter-spacing:.04em}
  .schedule-legend{margin-right:58px}
  .schedule-next{padding:16px}
  .schedule-content{padding:12px}
  .week-board:not(.is-day){display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:4px;scrollbar-width:thin}
  .week-board:not(.is-day) .week-col{flex:0 0 86%;scroll-snap-align:start}
  .week-board.is-day{grid-template-columns:1fr}
  .week-board.is-day .week-class time{font-size:28px}
}
@media(prefers-reduced-motion:reduce){
  .week-class:hover{filter:none}
}

/* Ficha de clase o actividad */
button.activity-hit{border:0;background:transparent;padding:0;cursor:pointer}
.class-dialog{border:0;padding:0;background:transparent;color:#f5f5f4;width:min(440px,calc(100% - 28px));max-width:440px;height:fit-content;max-height:calc(100% - 32px);margin:auto;box-shadow:none;overflow:visible}
.class-dialog::backdrop{background:rgba(5,6,8,.74);backdrop-filter:blur(8px)}
.class-dialog-sheet{position:relative;overflow:hidden;background:#121416;border:1px solid rgba(255,255,255,.1);box-shadow:0 30px 80px rgba(0,0,0,.55)}
.class-dialog-head{padding:28px 56px 22px 24px}
.class-dialog[data-kind="spinning"] .class-dialog-head{background:linear-gradient(180deg,#e3262d 0%,#b3121a 100%);color:#fff}
.class-dialog[data-kind="funcional"] .class-dialog-head{background:#f4f1ec;color:#161616}
.class-dialog[data-kind="ritmos"] .class-dialog-head,.class-dialog[data-kind="sala"] .class-dialog-head,.class-dialog[data-kind="clases"] .class-dialog-head{background:#1a1214;color:#fff;box-shadow:inset 0 -2px 0 #f1262c}
.class-dialog-kicker{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.class-dialog[data-kind="funcional"] .class-dialog-kicker{color:#9d1419}
.class-dialog[data-kind="ritmos"] .class-dialog-kicker,.class-dialog[data-kind="sala"] .class-dialog-kicker,.class-dialog[data-kind="clases"] .class-dialog-kicker{color:#f1262c}
.class-dialog .class-dialog-time{margin:8px 0 0;font-family:"Barlow Condensed",Impact,sans-serif;font-size:clamp(56px,10vw,76px);font-weight:800;line-height:.82;letter-spacing:.02em;color:inherit}
.class-dialog-head h2{margin:8px 0 0;font-size:clamp(36px,6vw,52px);line-height:.9;letter-spacing:.02em}
.class-dialog-body{padding:20px 24px 24px}
.class-dialog-body p{margin:0;color:#c5c8cb;line-height:1.6}
.class-dialog-close{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,0,0,.28);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.class-dialog[data-kind="funcional"] .class-dialog-close{background:rgba(0,0,0,.08);color:#161616}
.class-dialog-close:hover{background:rgba(0,0,0,.45)}
.class-dialog[data-kind="funcional"] .class-dialog-close:hover{background:rgba(0,0,0,.16)}
.class-dialog-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.class-dialog-facts[hidden]{display:none}
.class-dialog-facts div{border:1px solid rgba(255,255,255,.08);background:#0e1012;padding:12px 14px}
.class-dialog-facts small{display:block;color:#f1262c;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.class-dialog-facts strong{display:block;margin-top:4px;color:#fff;font-family:"Barlow Condensed",Impact,sans-serif;font-size:26px;font-weight:700;letter-spacing:.02em;line-height:1}
.class-dialog[data-kind="clases"] .class-dialog-facts{grid-template-columns:1fr}
.class-dialog[data-kind="clases"] .class-dialog-facts div{display:flex;flex-direction:row;align-items:center;gap:12px}
.class-dialog[data-kind="clases"] .class-dialog-facts strong{order:1}
.class-dialog[data-kind="clases"] .class-dialog-facts small{order:2}
.class-dialog[data-kind="clases"] .class-dialog-facts div::before{content:"";width:10px;height:10px;flex:none;background:#e3262d}
.class-dialog[data-kind="clases"] .class-dialog-facts div[data-kind="funcional"]::before{background:#f4f1ec}
.class-dialog[data-kind="clases"] .class-dialog-facts div[data-kind="ritmos"]::before{background:#241416;box-shadow:inset 0 0 0 1.5px #e3262d}
.class-dialog[data-kind="clases"] .class-dialog-facts strong{flex:1;margin-top:0;font-size:24px}
.class-dialog[data-kind="clases"] .class-dialog-facts small{color:#9aa0a6;letter-spacing:.04em;text-transform:none;font-weight:600}
.class-dialog-also{margin-top:14px!important;color:#d5d5d5!important;font-size:14px}
.class-dialog-notice{margin-top:12px!important;color:#8f969b!important;font-size:12px!important}
.class-dialog-actions{display:grid;gap:10px;margin-top:18px}
.class-dialog-actions .btn{width:100%}
.class-dialog-actions .btn[hidden]{display:none}
@media(prefers-reduced-motion:no-preference){
  .class-dialog[open] .class-dialog-sheet{animation:dialog-in .22s ease}
}
@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
  .class-dialog[open] .class-dialog-sheet{animation:none}
}

/* Cinta de actividades: tipografía editorial */
.marquee{
  padding:15px 0;
  background:#f1262c;
  color:#16080a;
  font-family:Inter,Arial,sans-serif;
  font-size:13px;
  font-weight:500;
  letter-spacing:.34em;
  line-height:1
}
.marquee b{
  margin:0 1.35em;
  font-weight:400;
  font-size:7px;
  letter-spacing:0;
  opacity:.55;
  vertical-align:2px
}

/* Carrusel de actividades */
.section-heading.activity-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.activity-controls{display:flex;gap:8px;flex:none}
.activity-arrow{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;font-size:28px;line-height:1;cursor:pointer}
.activity-arrow:hover,.activity-arrow:focus-visible{background:#f1262c;border-color:#f1262c;outline:none}
.activity-carousel{margin-top:6px}
.activity-track{position:relative;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:max(20px,calc((100% - 1320px) / 2));padding:0 max(20px,calc((100% - 1320px) / 2)) 4px;scrollbar-width:none}
.activity-track::-webkit-scrollbar{display:none}
.activity-slide{position:relative;flex:0 0 min(860px,86%);height:min(640px,72vh);min-height:520px;scroll-snap-align:start;overflow:hidden;background:#121416}
.activity-slide img{width:100%;height:100%;object-fit:cover}
.activity-slide-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,11,13,.08) 18%,rgba(9,11,13,.42) 48%,rgba(9,11,13,.92) 100%)}
.activity-slide-copy{position:absolute;left:32px;right:32px;bottom:28px;max-width:520px;z-index:1}
.activity-slide-copy span{display:block;color:#f1262c;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.activity-slide-copy h3{margin:8px 0 10px;font-size:clamp(46px,5vw,76px);line-height:.9}
.activity-slide-copy p{margin:0;max-width:38ch;color:#ececec;font-size:16px;line-height:1.55}
.mobile-bottom a{
  color:#fff;
  background:linear-gradient(180deg,#ff3136 0%,#c81018 100%);
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 10px 24px rgba(241,38,44,.5);
  text-shadow:0 1px 0 rgba(0,0,0,.18)
}
.mobile-bottom a:active{background:#a50d14}
.activity-slide-copy .btn{margin-top:18px}
.activity-dots{display:flex;gap:8px;align-items:center;margin-top:16px}
.activity-dots button{width:8px;height:8px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.35);cursor:pointer}
.activity-dots button[aria-current="true"]{width:22px;background:#f1262c}
.activity-dots button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:760px){
  .section-heading.activity-heading{flex-wrap:wrap;align-items:flex-end}
  .activity-heading>div:first-child{flex:1 1 100%}
  .activity-controls{margin-left:auto}
  .activity-carousel{max-width:100%;overflow:hidden}
  .activity-slide{flex-basis:88%;height:560px;min-height:560px}
  .activity-slide-copy{left:20px;right:20px;bottom:20px}
  .activity-slide-copy h3{font-size:48px}
  .activity-slide-copy .btn{padding:14px 18px}
}
@media(prefers-reduced-motion:reduce){
  .activity-track{scroll-behavior:auto}
}

/* Celular */
@media(max-width:760px){
  .announcement{font-size:11px;letter-spacing:.08em;line-height:1.45;white-space:normal;padding:10px 18px}
  .btn{color:#fff}
  .btn-light{color:#141414}
  .schedule-help{color:#fff!important;width:100%;justify-content:center;white-space:normal;text-align:center}
  .floating-cta{display:none}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .section{padding:64px 0}
  .closing{padding:72px 20px}
  .hero{height:auto;min-height:calc(100svh - 250px);max-height:none;flex-direction:column;justify-content:flex-end;align-items:stretch;padding:28px 0 16px}
  .hero-content{padding-bottom:8px}
  .hero p{font-size:15px;line-height:1.65;margin:18px 0}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero-actions .btn{width:100%;padding:14px 10px;font-size:15px}
  .hero-bottom{position:relative;left:auto;right:auto;bottom:auto;width:min(1320px,90%);margin:18px auto 0;gap:12px}
  .hero-bottom span{font-size:12px;letter-spacing:.06em;padding-top:10px}
  .activity-track{gap:0;padding-left:0;padding-right:0;scroll-padding-inline:0}
  .activity-slide{flex-basis:100%;height:540px;min-height:540px}
  .activity-slide-copy{left:22px;right:22px;bottom:24px}
  .week-board:not(.is-day){align-items:flex-start;gap:0}
  .week-board:not(.is-day) .week-col{flex:0 0 100%}
  .location-map{height:300px;min-height:300px}
  .open-hours article strong{font-size:36px}
  .schedule-next{padding:16px}
  .schedule-next time{font-size:40px}
  .footer-base{font-size:12px;letter-spacing:.04em;line-height:1.5}
  .footer-grid a:not(.brand){font-size:15px;padding:4px 0}
}

/* Listo para publicar */
.manifesto-image{background-image:url('assets/img/Horarios.jpg');filter:brightness(.42) saturate(.8) contrast(1.05)}
.btn:not(.btn-outline):not(.btn-light),
.header .nav-action,
.schedule-help{color:#fff}
.schedule-help{color:#fff!important}
.closing{color:#fff}
.closing .eyebrow{color:rgba(255,255,255,.82)}
.closing p{color:rgba(255,255,255,.9)}
.closing h2,.closing h2 em{color:#fff}
.btn:focus-visible,
.menu-toggle:focus-visible,
.schedule-day:focus-visible,
.activity-arrow:focus-visible,
.text-link:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(prefers-reduced-motion:reduce){
  .marquee div{animation:none}
}
@media(max-width:760px){
  .activity-slide{height:400px;min-height:400px}
  .activity-slide-copy{bottom:18px}
  .activity-slide-copy h3{font-size:42px}
}
