:root{--ink:#090909;--paper:#f3f1eb;--muted:#aaa89f;--line:rgba(255,255,255,.12);--accent:#d6ff3f;--accent2:#b8df28}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}a{text-decoration:none;color:inherit}.topbar{height:34px;background:#000;color:#aaa;font-size:10px;letter-spacing:.16em;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.topbar a{color:var(--accent);font-weight:700}.nav{height:76px;background:rgba(9,9,9,.96);color:#fff;display:flex;align-items:center;padding:0 5vw;gap:28px;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand,.footer-brand{display:flex;align-items:center;gap:8px;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-style:italic;letter-spacing:-.04em}.brand span,.footer-brand span{font-size:31px;color:var(--accent)}.brand b,.footer-brand b{font-size:18px;letter-spacing:.08em}.nav nav{display:flex;gap:24px;margin-left:auto}.nav nav a{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#bbb;transition:.2s}.nav nav a:hover{color:#fff}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:14px 19px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.nav-cta{background:var(--accent);color:#090909}.menu{display:none;background:none;border:0;color:#fff;font-size:24px}.hero{min-height:690px;position:relative;overflow:hidden;background:#111;color:#fff;display:flex;align-items:center}.hero-media{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&fit=crop&w=2200&q=85');background-size:cover;background-position:center;filter:grayscale(1) contrast(1.1)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.72) 44%,rgba(0,0,0,.2) 100%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 45%)}.hero-content{position:relative;z-index:2;max-width:720px;padding:100px 5vw}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.25em;font-weight:800;color:var(--accent);text-transform:uppercase;margin-bottom:22px}.hero h1{font-family:'Barlow Condensed',sans-serif;font-size:clamp(70px,9vw,124px);line-height:.82;text-transform:uppercase;margin:0 0 30px;letter-spacing:-.035em}.hero h1 em{color:var(--accent);font-style:normal}.hero p{font-size:16px;line-height:1.7;color:#d0d0cc;max-width:600px}.hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.btn.primary{background:var(--accent);color:#070707}.btn.ghost{border:1px solid rgba(255,255,255,.3);color:#fff}.hero-proof{display:flex;align-items:center;gap:8px;margin-top:26px;font-size:12px;color:#ddd}.hero-proof span{color:var(--accent);font-size:18px}.hero-proof small{color:#777;margin-left:8px}.hero-number{position:absolute;right:-20px;bottom:-65px;font-family:'Barlow Condensed';font-weight:900;font-size:330px;line-height:1;color:rgba(214,255,63,.08);font-style:italic}.strip{background:var(--accent);display:grid;grid-template-columns:repeat(3,1fr);padding:26px 5vw;gap:30px}.strip div{display:flex;flex-direction:column;gap:5px}.strip strong{font-size:10px;letter-spacing:.2em}.strip span{font-size:14px;font-weight:600}.section{padding:110px 8vw}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px}.intro h2,.schedule h2,.location-card h2,.final-cta h2,.goals h2{font-family:'Barlow Condensed';text-transform:uppercase;font-size:clamp(56px,7vw,96px);line-height:.86;margin:0;letter-spacing:-.02em}.intro h2 span,.schedule h2 span,.location-card h2 span,.final-cta h2 span,.goals h2 span{color:#9ab81f}.intro .lead{font-size:22px;line-height:1.45;font-weight:600;margin-top:0}.intro p:not(.lead){font-size:15px;line-height:1.8;color:#5f5e59}.text-link{display:inline-block;margin-top:22px;font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;border-bottom:2px solid #111;padding-bottom:8px}.dark{background:#0b0b0b;color:#fff}.goals h2{margin-bottom:48px}.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.goal{padding:34px 26px 32px 0;border-right:1px solid var(--line);margin-right:26px;min-height:240px}.goal:last-child{border-right:0}.goal b{font-size:11px;color:var(--accent)}.goal h3{font-family:'Barlow Condensed';font-size:43px;margin:45px 0 10px}.goal p{color:#999;line-height:1.6;font-size:14px}.goal span{display:inline-block;color:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:800;margin-top:18px}.micro-note{font-size:10px;color:#666;margin-top:35px}.schedule{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.schedule-copy p{color:#666;max-width:450px;line-height:1.7;margin:28px 0}.hours-card{border-top:3px solid #111}.hours-card>div{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid #d6d3ca}.hours-card span{font-size:10px;letter-spacing:.18em;font-weight:800}.hours-card b{font-size:13px}.hours-card .closed{color:#888}.location{display:grid;grid-template-columns:1.4fr .6fr;background:#111;color:#fff}.map-wrap{min-height:520px}.map-wrap iframe{width:100%;height:100%;min-height:520px;border:0;filter:grayscale(1) contrast(1.05)}.location-card{padding:80px 7vw}.location-card h2{font-size:65px}.location-card p{color:#aaa;line-height:1.8;font-size:14px}.location-card p a{color:var(--accent);font-weight:700}.full{width:100%;margin-top:18px}.final-cta{text-align:center;background:var(--accent);padding:110px 6vw}.final-cta h2{font-size:clamp(54px,7vw,94px);margin-bottom:40px}.final-cta h2 span{color:#536500}footer{background:#050505;color:#aaa;padding:48px 5vw 34px;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:20px}footer p{font-size:11px}footer>a{font-size:11px;color:var(--accent)}footer small{font-size:10px;color:#555}.float-wa{position:fixed;right:22px;bottom:22px;width:56px;height:56px;background:var(--accent);color:#070707;border-radius:50%;display:grid;place-items:center;font-size:28px;z-index:30;box-shadow:0 8px 30px rgba(0,0,0,.25)}@media(max-width:850px){.nav{height:68px}.nav nav,.nav-cta{display:none}.menu{display:block;margin-left:auto}.topbar{font-size:8px}.hero{min-height:720px}.hero-content{padding:80px 7vw}.hero h1{font-size:76px}.hero-number{font-size:220px}.strip{grid-template-columns:1fr;padding:24px 7vw;gap:16px}.section{padding:80px 7vw}.intro-grid,.schedule{grid-template-columns:1fr;gap:40px}.goal-grid{grid-template-columns:1fr}.goal{border-right:0;border-bottom:1px solid var(--line);margin-right:0}.location{grid-template-columns:1fr}.map-wrap,.map-wrap iframe{min-height:390px;height:390px}.location-card{padding:65px 7vw}.location-card h2{font-size:58px}footer{grid-template-columns:1fr;gap:10px}.footer-brand{margin-bottom:10px}}

/* ===== Añadidos: logo, precios, alquiler, horario de clases, contacto ===== */
.brand-logo{height:38px;width:auto;display:block}
.footer-brand{gap:0}
.footer-brand .brand-logo{height:34px}

.price-wrap{margin-top:64px;padding-top:48px;border-top:1px solid var(--line)}
.price-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(32px,4vw,44px);text-transform:uppercase;margin:0 0 26px;letter-spacing:-.01em}
.price-table{border-top:1px solid var(--line);margin-bottom:28px}
.price-row{display:grid;grid-template-columns:1.1fr 2fr .8fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}
.price-row span{font-size:13px;color:#bbb}
.price-row span:first-child{font-weight:700;color:#fff;font-size:14px}
.price-row b{font-size:18px;color:var(--accent);text-align:right}
.price-head{color:#777}
.price-head span{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#777;font-weight:700}

.rental h2{font-family:'Barlow Condensed';text-transform:uppercase;font-size:clamp(56px,7vw,96px);line-height:.86;margin:0 0 44px;letter-spacing:-.02em}
.rental h2 span{color:#9ab81f}
.rental-grid{display:grid;grid-template-columns:1.3fr .9fr;gap:60px;border-top:1px solid var(--line);padding-top:36px;margin-bottom:40px}
.rental-row{padding:18px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.rental-row span{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:800}
.rental-row b{font-size:17px;font-weight:600;line-height:1.4}
.rental-includes p{margin:0 0 16px}
.rental-includes ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.rental-includes li{font-size:14px;color:#ccc;padding-left:20px;position:relative}
.rental-includes li::before{content:'—';position:absolute;left:0;color:var(--accent)}

.classes h2{font-family:'Barlow Condensed';text-transform:uppercase;font-size:clamp(56px,7vw,96px);line-height:.86;letter-spacing:-.02em;margin:0 0 40px}
.classes h2 span{color:#9ab81f}
.class-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-top:3px solid #111}
.class-table{width:100%;border-collapse:collapse;min-width:760px}
.class-table th,.class-table td{border-bottom:1px solid #d6d3ca;padding:14px 12px;text-align:left;vertical-align:middle}
.class-table thead th{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#666;font-weight:800;border-bottom:2px solid #111}
.class-table tbody th{font-size:12px;font-weight:800;white-space:nowrap;color:#111}
.class-table td{font-size:12px}
.class-table td b{display:block;font-size:13px;font-weight:700;color:#111}
.class-table td span{display:block;font-size:11px;color:#777;margin-top:2px}
.class-table td.rotativo{background:#f0efe8;font-weight:700;color:#5f5e59;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.dark-note{color:#888}

.contact{background:#0b0b0b;color:#fff}
.contact .section-kicker{color:var(--accent)}
.contact h2{font-family:'Barlow Condensed';text-transform:uppercase;font-size:clamp(48px,6vw,80px);line-height:.86;margin:0 0 20px;letter-spacing:-.02em}
.contact h2 span{color:#9ab81f}
.contact .lead{font-size:18px;line-height:1.5;color:#ccc;font-weight:500;max-width:440px}
.contact .text-link{border-bottom-color:var(--accent);color:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.contact-form{display:flex;flex-direction:column;gap:18px}
.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#999}
.contact-form .opt{text-transform:none;letter-spacing:0;font-weight:400;color:#555}
.contact-form input,.contact-form textarea{background:#141414;border:1px solid rgba(255,255,255,.14);color:#fff;padding:13px 14px;font-size:14px;font-family:inherit;border-radius:2px}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent)}
.contact-form textarea{resize:vertical;min-height:100px}
.contact-form button{border:0;cursor:pointer;margin-top:6px}
.contact-form button:disabled{opacity:.6;cursor:not-allowed}
.cf-status{font-size:12px;min-height:16px;margin:0}
.cf-status.ok{color:var(--accent)}
.cf-status.err{color:#ff6b6b}

@media(max-width:850px){
  .rental-grid{grid-template-columns:1fr;gap:34px}
  .price-row{grid-template-columns:1fr;gap:4px}
  .price-row b{text-align:left}
  .contact-grid{grid-template-columns:1fr;gap:36px}
  .brand-logo{height:30px}
}
