/* Etapa 1 · Solo web pública. Respeta identidad y contenido existentes. */
html{scrollbar-gutter:stable}
nav{background:var(--ink);backdrop-filter:none;-webkit-backdrop-filter:none}
nav::after{background:none;height:0}
.nav-links a{min-height:48px;display:flex;align-items:center}
.nav-links a[aria-current="location"]{color:var(--white)}
.nav-links a[aria-current="location"]::after{right:0;background:var(--blue)}
.hero{padding:64px 0 72px;overflow:clip}
.hero .wrap{grid-template-columns:1.1fr 1fr;gap:52px;align-items:center}
.hero-location{font-size:1rem!important;color:var(--blue)!important;margin:0 0 14px!important}
.hero h1{font-size:clamp(3rem,6.2vw,5rem);margin:0 0 24px;letter-spacing:0;line-height:1.02}
.hero p{font-size:1.05rem;line-height:1.6;margin-bottom:22px}
.hero-more{border:0;padding:0;margin:0 0 22px;background:none;border-radius:0}
.hero-more summary{padding:0;min-height:44px;font:600 .95rem/1.5 Inter,sans-serif;letter-spacing:0;text-transform:none;justify-content:flex-start;gap:12px;color:var(--muted)}
.hero-more summary::after{font-size:1.1rem}
.hero-more p{margin:8px 0 0!important;font-size:1rem!important;max-width:48ch}
.hero-cta{gap:12px}
.hero-cta .btn{min-height:52px;padding:12px 20px;font-size:1.05rem;letter-spacing:.02em}
.hero .hero-note{font-size:.875rem;margin:18px 0 0;color:var(--muted)}
.hero-scene{min-width:0;perspective:1200px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.hero-photo{min-height:460px;height:100%;max-height:580px;border-radius:4px;border-right:7px solid #233b59;border-bottom:7px solid #233b59;transform-origin:center;transition:transform 240ms cubic-bezier(.23,1,.32,1);animation:none!important}
.photo-caption{font-size:.8125rem!important;color:var(--muted);margin:12px 0 0!important}
#menu-backdrop{position:fixed;inset:66px 0 0;background:rgba(0,0,0,.58);border:0;z-index:45;cursor:default}
#menu-backdrop[hidden]{display:none}
.menu-title{display:none}
body.menu-open{overflow:hidden}
body.menu-open .wa-float,body.menu-open #bio-coach-btn,body.menu-open .wa-menu{visibility:hidden}
.day-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:24px 0}
.day-picker button{font:600 .875rem/1 Inter,sans-serif;min-height:48px;min-width:0;border:0;border-radius:4px;background:var(--card);color:var(--white);cursor:pointer}
.day-picker button[aria-pressed="true"]{background:var(--blue);color:var(--ink)}
.day-picker button:focus-visible,.time-option:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
#day-schedule h3{font-size:1.5rem;margin-bottom:10px}
#day-schedule p{color:var(--muted);font-size:.9375rem}
.time-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;list-style:none}
.time-option{display:flex;align-items:center;justify-content:center;min-height:48px;min-width:104px;padding:10px 14px;background:var(--card);text-decoration:none;border-radius:4px;font-size:1rem;color:var(--white)}
.schedule-picker[hidden]{display:none}
.ag-field label{text-transform:none;letter-spacing:0}
.btn,.btn-cta{touch-action:manipulation}
@media(hover:hover) and (pointer:fine){.time-option:hover{background:#233b59}.hero-photo.is-tilting{transition:transform 80ms linear}}
@media(max-width:1100px){
 .nav-links{display:none}.burger{display:flex}.nav-in{gap:12px}.nav-in .btn-cta{margin-left:auto;order:2}.burger{order:3}
 .mobile-menu{display:grid!important;grid-template-columns:1fr 1fr;position:absolute;top:66px;left:0;right:0;padding:22px max(20px,calc((100vw - 1060px)/2));gap:6px 20px;background:var(--ink-2);max-height:calc(100dvh - 66px);overflow:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:opacity 180ms ease,transform 200ms cubic-bezier(.23,1,.32,1),visibility 200ms;animation:none!important;border:0}
 .mobile-menu.show{opacity:1;visibility:visible;pointer-events:auto;transform:none}
 .mobile-menu a{display:flex;align-items:center;min-height:52px;padding:10px 0;border:0;font-size:1rem;color:var(--white)}
 .menu-title{display:block;grid-column:1/-1;font-family:'Bebas Neue',sans-serif;font-size:2rem;margin:0 0 10px}
}
@media(min-width:1101px){.mobile-menu{display:none!important}#menu-backdrop{display:none!important}body.menu-open{overflow:visible}}
@media(max-width:860px){
 .hero{padding:32px 0 48px}.hero .wrap{grid-template-columns:1fr;gap:30px}.hero-scene{order:0}.hero-photo{min-height:0;height:clamp(210px,52vw,350px);max-height:none;transform:none!important;border-width:0;border-radius:4px}.hero h1{font-size:clamp(2.6rem,10.6vw,4.4rem)}
 .hero p{max-width:52ch}.hero-location{font-size:.9375rem!important}.hero-more{margin-bottom:18px}.hero-cta{display:grid;grid-template-columns:minmax(0,1fr) auto}.hero-cta .btn{font-size:1rem;padding:12px;white-space:nowrap}.hero .hero-note{font-size:.8125rem}
 .photo-caption{font-size:.75rem!important}.brand strong{display:none}.hero-scene{min-height:0}
 .menu-title{font-size:1.75rem}
}
@media(max-width:640px){.schedule-enhanced .sched-list{display:none}.schedule-enhanced .schedule-picker{display:block}.schedule-enhanced .schedule-picker[hidden]{display:none}}
@media(min-width:641px){.schedule-picker{display:none!important}}
@media(max-width:360px){.hero-cta{grid-template-columns:1fr}.nav-in .btn-cta{font-size:.9rem;padding:10px 12px}.brand img{height:27px!important}.day-picker button{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.hero-photo,.mobile-menu{transition:none!important;animation:none!important;transform:none!important}}
