:root{--green:#123f3b;--deep:#082b29;--mint:#97b7a8;--cream:#f3efe8;--paper:#fbfaf7;--ink:#132b29;--line:rgba(18,63,59,.18);--sans:'DM Sans',sans-serif;--serif:'Italiana',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}.container{width:min(1160px,calc(100% - 40px));margin:auto}.section{padding:110px 0}.eyebrow{margin:0 0 18px;font-size:.75rem;letter-spacing:.23em;text-transform:uppercase;font-weight:700}.eyebrow.light{color:#c4d6ce}h1,h2,h3,p{margin-top:0}h2{font-family:var(--serif);font-size:clamp(2.65rem,6vw,5.4rem);line-height:.98;font-weight:400;letter-spacing:-.02em}h2 em{font-weight:400;color:#66877d}.button{display:inline-flex;gap:24px;align-items:center;padding:15px 24px;border-radius:99px;text-decoration:none;font-size:.88rem;font-weight:600;letter-spacing:.04em;transition:.3s}.button span{font-size:1.15rem;transition:transform .3s}.button:hover span{transform:translate(3px,-3px)}.primary{background:var(--green);color:#fff}.cream{background:var(--cream);color:var(--deep)}
.loader{position:fixed;inset:0;z-index:9999;background:var(--deep);display:grid;place-content:center;color:#fff;transition:opacity .7s,visibility .7s}.loader span{font-family:var(--serif);font-size:3rem;letter-spacing:.2em}.loader i{height:1px;background:#fff;display:block;animation:load 1s ease both}.loader.hidden{opacity:0;visibility:hidden}@keyframes load{from{width:0}to{width:100%}}
.hero{height:min(900px,100svh);min-height:690px;position:relative;overflow:hidden;background:var(--cream)}.hero-media{position:absolute;inset:0;background:url('assets/pao-puertas-hero.jpg') center/cover no-repeat;transform:scale(1.06);animation:heroZoom 8s cubic-bezier(.2,.8,.2,1) forwards}@keyframes heroZoom{to{transform:scale(1)}}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,246,241,.98) 0%,rgba(248,246,241,.94) 36%,rgba(248,246,241,.08) 65%,rgba(4,30,28,.25) 100%)}.nav{height:90px;position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(18,63,59,.18)}.brand{color:var(--green);text-decoration:none;font-size:.76rem;letter-spacing:.18em}.brand span{display:block;font-family:var(--serif);font-size:1.55rem;line-height:1;letter-spacing:.25em}.nav-links{display:flex;align-items:center;gap:32px}.nav-links>a{color:var(--deep);text-decoration:none;font-size:.85rem}.nav-links .nav-cta{border:1px solid var(--green);border-radius:99px;padding:10px 20px}.menu-toggle{display:none}.hero-content{height:calc(100% - 90px);position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding-bottom:40px}.hero-content h1{font-family:var(--serif);font-size:clamp(4rem,8.5vw,8rem);line-height:.82;font-weight:400;letter-spacing:-.04em;margin-bottom:32px}.hero-content h1 span{color:#4f776e;font-style:italic}.hero-copy{max-width:510px;font-size:1.13rem;line-height:1.7;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:30px}.play-button{border:0;background:none;font:inherit;color:var(--deep);cursor:pointer;display:flex;gap:10px;align-items:center}.play-button i{width:34px;height:34px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:.55rem}.hero-note{position:absolute;z-index:3;right:6%;top:26%;color:#fff;text-align:center;font-family:var(--serif);transform:rotate(-6deg);text-shadow:0 2px 15px #102e2c}.hero-note span,.hero-note em{display:block;font-weight:400}.hero-note span{font-size:1.3rem}.hero-note em{font-size:2rem;max-width:240px;line-height:1.25}.scroll-cue{position:absolute;z-index:3;left:50%;bottom:25px;display:flex;align-items:center;gap:12px;font-size:.62rem;letter-spacing:.2em}.scroll-cue span{height:40px;width:1px;background:var(--green);animation:pulse 1.8s infinite}@keyframes pulse{50%{transform:scaleY(.45);transform-origin:top}}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.intro{overflow:hidden}.intro-grid{display:grid;grid-template-columns:70px 1fr 300px;gap:45px;align-items:start}.section-number{font-family:var(--serif);font-size:1.3rem;color:#79968e}.intro h2{font-size:clamp(2.8rem,5vw,4.8rem)}.intro-copy{padding-top:47px;color:#536763}.marquee{margin-top:90px;border-block:1px solid var(--line);padding:15px 0;white-space:nowrap;overflow:hidden;color:#79968e;font-size:.7rem;letter-spacing:.25em}.marquee-track{display:flex;width:max-content;will-change:transform;animation:marquee var(--marquee-duration,20s) linear infinite}.marquee-group{display:flex;flex-shrink:0;width:max-content}.marquee-group span{display:block;flex-shrink:0;padding-right:2rem}@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-1 * var(--marquee-distance,600px)),0,0)}}
.routines{background:var(--green);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px}.section-head h2{margin-bottom:0}.section-head>p{max-width:390px;color:#c9d8d2}.location-switch{display:flex;width:max-content;margin:60px auto 45px;padding:5px;border:1px solid rgba(255,255,255,.25);border-radius:99px}.location-switch button{border:0;background:none;color:#b9ccc5;padding:12px 30px;border-radius:99px;font:inherit;cursor:pointer;transition:.3s}.location-switch button.active{background:var(--cream);color:var(--deep)}.place-stage{background:#184b46;border-radius:28px;display:grid;grid-template-columns:1fr 1.22fr;min-height:470px;overflow:hidden}.place-copy{padding:65px}.place-icon{font-size:2rem}.mini{font-size:.67rem;letter-spacing:.2em;margin:14px 0}.place-copy h3{font-family:var(--serif);font-size:2.3rem;line-height:1.15;font-weight:400}.place-copy>p{color:#bfd0ca}.place-copy ul,.plan-card ul{list-style:none;padding:0}.place-copy li,.plan-card li{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.15)}.place-copy li:before,.plan-card li:before{content:'✓';margin-right:10px;color:#9fc2b3}.place-visual{position:relative;overflow:hidden}.woman-crop{position:absolute;inset:0;background:url('assets/pao-puertas-hero.jpg') 78% center/auto 100% no-repeat;filter:saturate(.75) contrast(1.03);transition:transform .7s}.place-stage:hover .woman-crop{transform:scale(1.035)}.stat-card{position:absolute;left:25px;bottom:25px;background:rgba(247,243,235,.9);color:var(--deep);padding:17px 23px;border-radius:16px;backdrop-filter:blur(10px);display:flex;align-items:center;gap:14px}.stat-card strong{font-family:var(--serif);font-size:2rem}.stat-card span{font-size:.72rem;line-height:1.3}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.plan-card{position:relative;padding:42px;border:1px solid rgba(255,255,255,.18);border-radius:24px}.plan-card.featured{background:var(--cream);color:var(--deep)}.plan-label{font-size:.65rem;letter-spacing:.2em}.plan-card h3{font-family:var(--serif);font-size:2.4rem;font-weight:400;margin:15px 0}.plan-card p{color:#bdd0c8}.plan-card.featured p{color:#526762}.plan-card li{font-size:.9rem}.plan-card.featured li{border-color:var(--line)}.plan-card a{display:flex;justify-content:space-between;color:inherit;text-decoration:none;margin-top:30px;font-weight:600}.badge{position:absolute;right:24px;top:24px;background:var(--green);color:#fff;border-radius:99px;padding:6px 13px;font-size:.64rem}
.tracking{background:var(--cream)}.tracking-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.tracking-visual{min-height:560px;border-radius:50% 50% 22px 22px;background:linear-gradient(145deg,#204d48,#0b302d);display:grid;place-items:center;position:relative}.rings{width:280px;height:280px;border-radius:50%;background:conic-gradient(#b9d0c5 0 84%,rgba(255,255,255,.12) 84%);display:grid;place-items:center;box-shadow:0 0 0 22px rgba(255,255,255,.05)}.rings:after{content:'';position:absolute;width:220px;height:220px;background:#123f3b;border-radius:50%}.rings div{position:relative;z-index:1;color:white;text-align:center}.rings strong,.rings span{display:block}.rings strong{font-family:var(--serif);font-size:4rem;line-height:1}.rings span{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}.week{position:absolute;bottom:45px;display:flex;gap:14px}.week span{width:30px;height:30px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:grid;place-items:center;color:#fff;font-size:.65rem}.week .done{background:var(--cream);color:var(--green)}.tracking-copy>p{color:#526762}.steps{margin-top:36px}.step{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.step>span{font-family:var(--serif);color:#76968c}.step h3{margin-bottom:4px}.step p{margin:0;color:#667874;font-size:.9rem}
.nutrition{background:var(--paper)}.nutrition-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}.nutrition-grid>div>p{max-width:600px}.nutrition-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.nutrition-tags span{border:1px solid var(--line);border-radius:99px;padding:9px 16px;font-size:.78rem}.nutrition-wheel{width:min(450px,90vw);aspect-ratio:1;border:1px solid var(--line);border-radius:50%;position:relative;display:grid;place-items:center;animation:float 5s ease-in-out infinite}@keyframes float{50%{transform:translateY(-10px)}}.nutrition-wheel:before,.nutrition-wheel:after{content:'';position:absolute;border:1px solid var(--line);border-radius:50%}.nutrition-wheel:before{inset:14%}.nutrition-wheel:after{inset:29%;background:var(--cream)}.wheel-center{position:relative;z-index:2;text-align:center}.wheel-center span,.wheel-center strong{display:block}.wheel-center span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase}.wheel-center strong{font-family:var(--serif);font-size:2rem;font-weight:400}.orbit-dot{position:absolute;background:var(--green);color:#fff;border-radius:50%;width:76px;height:76px;display:grid;place-items:center;font-size:.55rem;letter-spacing:.1em;z-index:3}.dot-a{top:-5px}.dot-b{right:0;bottom:15%}.dot-c{left:-8px;bottom:18%}
.cta{padding-top:0}.cta-box{background:var(--green);color:#fff;border-radius:30px;padding:75px;display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:60px}.cta h2{margin:0}.cta-box>div:last-child p{color:#c8d8d2;margin-bottom:28px}footer{background:var(--deep);color:#b9cbc4;padding:45px 0}.footer-grid{display:flex;justify-content:space-between;align-items:center}.footer-grid .brand{color:#fff}.footer-grid p{margin:0;font-size:.75rem}
@media(max-width:900px){.hero-media{background-position:60% center}.hero-shade{background:linear-gradient(90deg,rgba(248,246,241,.98) 0%,rgba(248,246,241,.85) 52%,rgba(4,30,28,.15))}.hero-note{display:none}.intro-grid{grid-template-columns:50px 1fr}.intro-copy{grid-column:2;padding-top:0}.section-head{align-items:start}.place-copy{padding:45px}.tracking-grid{gap:6%}.cta-box{padding:55px}.nutrition-grid{gap:4%}}
@media(max-width:720px){.section{padding:78px 0}.nav{height:74px}.menu-toggle{display:grid;gap:6px;border:0;background:none;padding:10px;z-index:2}.menu-toggle span{width:24px;height:1px;background:var(--green)}.nav-links{position:fixed;inset:0;background:var(--cream);display:flex;flex-direction:column;justify-content:center;transform:translateX(100%);transition:.4s}.nav-links.open{transform:none}.nav-links>a{font-size:1.4rem}.hero{min-height:650px}.hero-media{background-position:69% center}.hero-shade{background:linear-gradient(90deg,rgba(248,246,241,.97) 0%,rgba(248,246,241,.86) 70%,rgba(248,246,241,.15))}.hero-content h1{font-size:clamp(3.6rem,18vw,5.2rem)}.hero-copy{max-width:83%;font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.scroll-cue{display:none}.intro-grid{grid-template-columns:1fr;gap:10px}.section-number{display:none}.intro-copy{grid-column:auto}.section-head{display:block}.section-head>p{margin-top:25px}.location-switch{width:100%}.location-switch button{flex:1;padding:11px 13px}.place-stage{grid-template-columns:1fr}.place-copy{padding:35px}.place-visual{min-height:390px;grid-row:1}.plan-grid,.tracking-grid,.nutrition-grid,.cta-box{grid-template-columns:1fr}.plan-card{padding:32px}.tracking-visual{min-height:480px}.rings{width:230px;height:230px}.rings:after{width:180px;height:180px}.nutrition-wheel{margin:60px auto 0}.cta-box{width:calc(100% - 24px);padding:40px 26px;border-radius:22px;gap:35px}.footer-grid{flex-direction:column;gap:24px;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* Encabezado editorial basado en la composición elegida */
.hero{background:var(--cream)}
.hero-media{inset:0;width:100%;background-image:linear-gradient(rgba(13,57,53,.08),rgba(13,57,53,.08)),url('assets/pao-gym-clean.png');background-position:center;background-size:cover}
.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(243,239,232,.17),transparent 25%,rgba(8,43,41,.08))}
.hero-shade{background:linear-gradient(90deg,rgba(248,246,241,1) 0%,rgba(248,246,241,.98) 40%,rgba(248,246,241,.88) 48%,rgba(248,246,241,.06) 60%)}
.hero-content{max-width:1160px}
.hero-content>*{max-width:570px}
.nav{justify-content:flex-start;gap:54px}
.nav-links{gap:30px}
.nav-links .nav-cta{margin-left:5px;background:rgba(243,239,232,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.primary{box-shadow:0 12px 28px rgba(8,43,41,.2)}
.hero-quote{position:absolute;z-index:4;right:3.5%;bottom:3.5%;margin:0;padding:9px 15px;color:#fff;background:rgba(8,43,41,.52);border:1px solid rgba(255,255,255,.28);border-radius:99px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-family:var(--serif);font-size:clamp(.78rem,.95vw,.96rem);letter-spacing:.02em;box-shadow:0 10px 30px rgba(8,43,41,.15)}
.hero-quote span{font-family:var(--serif);font-size:1em;text-transform:none;letter-spacing:.02em;font-style:italic;color:#cfe0d9;margin-right:4px}
.hero-orbit{position:absolute;z-index:3;pointer-events:none;width:7px;height:7px;border:0;border-radius:50%;background:rgba(255,255,255,.88);filter:drop-shadow(0 0 7px rgba(255,255,255,.7))}
.orbit-one{left:50%;top:24%;box-shadow:-70px 50px 0 -2px rgba(255,255,255,.72),-36px 132px 0 2px rgba(255,255,255,.38),15px 205px 0 -1px rgba(255,255,255,.8),46px 290px 0 3px rgba(255,255,255,.3),-42px 375px 0 0 rgba(255,255,255,.7),22px 470px 0 2px rgba(255,255,255,.42),78px 545px 0 -1px rgba(255,255,255,.75);animation:dotsFloatA 4.8s ease-in-out infinite alternate}
.orbit-two{left:55%;top:14%;width:4px;height:4px;background:rgba(255,255,255,.58);box-shadow:-58px 92px 0 1px rgba(255,255,255,.34),12px 150px 0 -1px rgba(255,255,255,.88),-20px 250px 0 2px rgba(255,255,255,.32),38px 350px 0 0 rgba(255,255,255,.66),-62px 438px 0 1px rgba(255,255,255,.42),25px 520px 0 3px rgba(255,255,255,.28);animation:dotsFloatB 6s ease-in-out infinite alternate}
@keyframes dotsFloatA{to{transform:translate(7px,-13px);opacity:.62}}
@keyframes dotsFloatB{to{transform:translate(-9px,16px);opacity:.72}}

/* Respuestas visuales de botones y enlaces */
.button,.nav-links .nav-cta,.location-switch button,.play-button,.plan-card a{transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease,color .3s ease,border-color .3s ease}
.button,.nav-links .nav-cta{position:relative;overflow:hidden;isolation:isolate}
.button:before,.nav-links .nav-cta:before{content:'';position:absolute;z-index:-1;inset:-2px;transform:translateX(-115%) skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:transform .55s ease}
.button:hover,.nav-links .nav-cta:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(8,43,41,.24)}
.button:hover:before,.nav-links .nav-cta:hover:before{transform:translateX(115%) skewX(-18deg)}
.play-button:hover{transform:translateX(5px);color:#47766d}
.play-button:hover i{background:var(--green);color:#fff;transform:rotate(360deg)}
.play-button i{transition:transform .5s ease,background-color .3s ease,color .3s ease}
.location-switch button:hover{color:#fff;transform:translateY(-2px)}
.location-switch button.active:hover{color:var(--deep)}
.plan-card a:hover{transform:translateX(5px)}
.nav-links>a:not(.nav-cta){position:relative}
.nav-links>a:not(.nav-cta):after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .3s ease}
.nav-links>a:not(.nav-cta):hover:after{transform:scaleX(1);transform-origin:left}

@media(max-width:1080px){
  .nav{gap:24px}
  .nav-links{gap:19px}
  .nav-links>a{font-size:.78rem}
  .hero-content>*{max-width:52%}
  .hero-content h1{font-size:clamp(4rem,9.5vw,6.3rem)}
  .hero-media{left:0;width:100%;background-position:center}
  .hero-quote{right:2%;bottom:4%}
}

@media(max-width:840px){
  .nav{justify-content:space-between}
  .menu-toggle{display:grid;gap:6px;border:0;background:rgba(243,239,232,.78);padding:12px;border-radius:50%;z-index:7;cursor:pointer;backdrop-filter:blur(10px)}
  .menu-toggle span{width:24px;height:1px;background:var(--green)}
  .nav-links{position:fixed;z-index:6;inset:0;background:rgba(243,239,232,.98);display:flex;flex-direction:column;justify-content:center;gap:27px;transform:translateX(100%);transition:transform .4s ease}
  .nav-links.open{transform:none}
  .nav-links>a{font-family:var(--serif);font-size:2rem}
  .nav-links .nav-cta{font-family:var(--sans);font-size:1rem;padding:12px 28px;background:var(--green);color:#fff}
  .hero-media{left:0;width:100%;background-position:center}
  .hero-shade{background:linear-gradient(90deg,rgba(248,246,241,.98) 0%,rgba(248,246,241,.94) 49%,rgba(248,246,241,.12) 79%)}
  .hero-quote{right:18px;bottom:24px;font-size:.86rem}
}

@media(max-width:720px){
  .nav{width:calc(100% - 24px);margin-top:10px;height:64px;padding:0 16px;border:1px solid rgba(18,63,59,.12);border-radius:18px;background:rgba(243,239,232,.78);backdrop-filter:blur(14px)}
  .hero{height:auto;min-height:820px;padding-top:84px;display:flex;align-items:flex-end}
  .hero-media{inset:0 0 auto 0;width:100%;height:57%;background-size:auto 100%;background-position:58% center}
  .hero-shade{background:linear-gradient(180deg,transparent 0%,transparent 39%,var(--cream) 58%,var(--cream) 100%)}
  .hero-content{height:auto;min-height:455px;padding:98px 20px 56px;justify-content:flex-end}
  .hero-content>*{max-width:100%}
  .hero-content h1{font-size:clamp(3.4rem,17vw,5rem);margin-bottom:22px}
  .hero-copy{max-width:100%}
  .hero-actions{width:100%}
  .hero-actions .button{width:100%;justify-content:space-between}
  .play-button{padding-left:4px}
  .hero-quote{top:39%;right:14px;bottom:auto;font-size:.72rem;padding:8px 12px}
  .orbit-one{left:16%;top:13%;transform:scale(.75)}
  .orbit-two{left:75%;top:8%;transform:scale(.7)}
}

/* La misma escena reconstruida se reutiliza en la tarjeta de entrenamiento */
.woman-crop{background-image:url('assets/pao-gym-clean.png');background-position:58% center;background-size:auto 100%;filter:saturate(.94) contrast(1.01)}

/* Transición diagonal ondulada: la fotografía ocupa todo el fondo y la onda define el borde */
.hero-wave{position:absolute;z-index:1;inset:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(10px 0 22px rgba(243,239,232,.12))}
.hero-wave .wave-main{fill:rgba(248,246,241,.985)}
.hero-wave .wave-soft{fill:rgba(255,255,255,.27)}

/* Ajustes responsive integrales */
@media(max-width:1080px){
  .container{width:min(100% - 48px,960px)}
  .section{padding:92px 0}
  .section-head{gap:30px}
  .place-stage{min-height:440px}
  .place-copy{padding:42px}
  .tracking-grid,.nutrition-grid{gap:6%}
  .cta-box{padding:56px}
}

@media(max-width:840px){
  body.menu-open{overflow:hidden}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .container{width:calc(100% - 36px)}
  .section{padding:82px 0}
  .hero-content h1{font-size:clamp(3.8rem,10.6vw,5.3rem)}
  .hero-copy{font-size:1rem;line-height:1.6}
  .intro-grid{grid-template-columns:42px 1fr;gap:24px}
  .intro-copy{grid-column:2;padding-top:0;max-width:560px}
  .section-head{display:block}
  .section-head>p{margin:24px 0 0;max-width:560px}
  .place-stage{grid-template-columns:1fr;min-height:0}
  .place-visual{grid-row:1;min-height:460px}
  .place-copy{padding:40px}
  .tracking-grid,.nutrition-grid{grid-template-columns:1fr;gap:58px}
  .tracking-visual{min-height:500px;max-width:590px;width:100%;margin:auto}
  .nutrition-wheel{margin:10px auto 0}
  .cta-box{grid-template-columns:1fr;gap:34px;padding:48px}
  .cta-box>div:last-child{max-width:520px}
}

@media(max-width:720px){
  .container{width:calc(100% - 28px)}
  .section{padding:68px 0}
  h2{font-size:clamp(2.7rem,13vw,4rem)}
  .hero-content{width:100%}
  .hero-content h1{font-size:clamp(3.25rem,16.5vw,4.75rem);line-height:.88}
  .hero-actions{gap:13px}
  .button,.location-switch button,.nav-links .nav-cta{min-height:46px}
  .play-button{min-height:44px}
  .intro-grid{display:block}
  .intro-copy{margin-top:26px}
  .marquee{margin-top:58px}
  .location-switch{margin:40px 0 30px}
  .place-visual{min-height:390px}
  .place-copy{padding:32px 26px}
  .place-copy h3{font-size:2rem}
  .plan-grid{gap:14px}
  .plan-card{padding:30px 25px}
  .plan-card h3{font-size:2.1rem}
  .tracking-visual{min-height:440px;border-radius:42% 42% 22px 22px}
  .steps{margin-top:28px}
  .nutrition-wheel{width:min(350px,86vw)}
  .orbit-dot{width:66px;height:66px;font-size:.5rem}
  .cta-box{padding:38px 25px}
  .cta-box .button{width:100%;justify-content:space-between}
  .footer-grid{gap:18px}
}

@media(max-width:480px){
  .hero{min-height:790px}
  .hero-media{height:54%;background-position:57% center}
  .hero-shade{height:55%;width:68%}
  .hero-content{min-height:470px;padding-top:120px}
  .hero-content h1{font-size:clamp(3rem,16vw,4rem)}
  .hero-copy{font-size:.96rem}
  .hero-quote{top:36%;max-width:calc(100% - 28px);white-space:normal;text-align:center;line-height:1.35}
  .location-switch{display:grid;grid-template-columns:1fr;width:100%;border-radius:20px}
  .location-switch button{width:100%}
  .place-visual{min-height:330px}
  .stat-card{left:16px;bottom:16px;padding:13px 17px}
  .plan-card{border-radius:19px}
  .badge{position:static;display:inline-block;margin:12px 0 0}
  .tracking-visual{min-height:400px}
  .rings{width:205px;height:205px}
  .rings:after{width:160px;height:160px}
  .rings strong{font-size:3.3rem}
  .week{gap:7px;bottom:34px}
  .week span{width:28px;height:28px}
  .nutrition-tags{gap:8px}
  .nutrition-tags span{font-size:.72rem;padding:8px 12px}
  .nutrition-wheel{width:min(290px,84vw)}
  .orbit-dot{width:58px;height:58px;font-size:.43rem}
  .cta-box{width:calc(100% - 20px);padding:34px 22px}
}

@media(max-width:360px){
  .hero-content h1{font-size:2.85rem}
  .hero-copy{line-height:1.5}
  .hero-quote span{display:none}
  .place-copy,.plan-card{padding-inline:21px}
  .tracking-visual{min-height:370px}
  .week span:nth-last-child(-n+2){display:none}
}

/* Franja intermedia: evita que el menú o el contenido invadan la fotografía */
@media(max-width:960px) and (min-width:841px){
  body.menu-open{overflow:hidden}
  .nav{justify-content:space-between}
  .menu-toggle{display:grid;gap:6px;border:0;background:rgba(243,239,232,.82);padding:12px;border-radius:50%;z-index:7;cursor:pointer;backdrop-filter:blur(10px)}
  .menu-toggle span{width:24px;height:1px;background:var(--green);transition:transform .3s ease}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3px) rotate(-45deg)}
  .nav-links{position:fixed;z-index:6;inset:0;background:rgba(243,239,232,.985);display:flex;flex-direction:column;justify-content:center;gap:28px;transform:translateX(100%);transition:transform .4s ease}
  .nav-links.open{transform:none}
  .nav-links>a{font-family:var(--serif);font-size:2rem}
  .nav-links .nav-cta{font-family:var(--sans);font-size:1rem;padding:12px 28px;background:var(--green);color:#fff}
  .hero-content>*{max-width:49%}
  .hero-content h1{font-size:clamp(3.8rem,8.8vw,5.1rem)}
}

/* Celulares en orientación horizontal */
@media(max-height:520px) and (orientation:landscape){
  .hero{min-height:620px;height:620px}
  .nav{height:66px}
  .hero-content{height:554px;padding-bottom:22px}
  .hero-content h1{font-size:3.8rem;margin-bottom:18px}
  .hero-copy{font-size:.92rem;line-height:1.45;margin-bottom:18px}
  .hero-actions{gap:14px}
  .hero-quote,.scroll-cue{display:none}
  .section{padding:58px 0}
}

@media(prefers-reduced-motion:reduce){
  .marquee-track{animation-duration:60s!important;animation-iteration-count:infinite!important}
}

/* Composición final del hero y cinta sin reinicio CSS */
.marquee-track{animation:none!important}
.hero-wave{filter:none}
.hero-wave .wave-main{fill:rgba(248,246,241,.99)}
.hero-wave .wave-soft{fill:rgba(255,255,255,.22)}
.hero-content>*{max-width:570px}

@media(max-width:960px){
  .hero-content>*{max-width:48%}
  .hero-content h1{font-size:clamp(3.7rem,9vw,5.2rem)}
  .hero-copy{font-size:1rem}
}

/* En móvil la foto y el texto dejan de competir por el mismo espacio. */
@media(max-width:720px){
  .hero{display:block;height:auto;min-height:0;padding-top:0;background:var(--cream)}
  .nav{position:absolute;top:10px;left:12px;right:12px;width:auto;margin:0}
  .hero-media{position:relative;inset:auto;width:100%;height:clamp(390px,112vw,540px);background-size:auto 100%;background-position:58% center}
  .hero-wave{top:0;bottom:auto;height:clamp(390px,112vw,540px);width:100%;transform:translateX(-22%);opacity:.96}
  .hero-content{height:auto;min-height:0;width:100%;padding:46px 20px 72px;display:block}
  .hero-content>*{max-width:100%}
  .hero-content h1{font-size:clamp(3.15rem,16vw,4.7rem);margin-bottom:22px}
  .hero-copy{max-width:36rem}
  .hero-quote{top:calc(clamp(390px,112vw,540px) - 58px);right:14px;bottom:auto;max-width:calc(100% - 28px);font-size:.72rem}
  .hero-orbit{z-index:2}
  .scroll-cue{display:none}
}

@media(max-width:480px){
  .hero-media{height:clamp(365px,118vw,480px);background-position:60% center}
  .hero-wave{height:clamp(365px,118vw,480px);transform:translateX(-29%)}
  .hero-content{padding:40px 16px 62px}
  .hero-content h1{font-size:clamp(3rem,16vw,4rem)}
  .hero-quote{top:calc(clamp(365px,118vw,480px) - 54px)}
}

/* La protagonista se desplaza a la derecha y la fotografía gana superficie. */
.hero-media{background-size:cover;background-position:220px center}
.hero-orbit{z-index:4;filter:drop-shadow(0 0 5px rgba(255,255,255,.72))}
.orbit-one{left:44%;top:7%;width:8px;height:8px;background:rgba(255,255,255,.96);box-shadow:9vw 6vh 0 -2px rgba(255,255,255,.84),2vw 18vh 0 1px rgba(255,255,255,.68),12vw 31vh 0 -1px rgba(255,255,255,.96),4vw 46vh 0 2px rgba(255,255,255,.58),14vw 61vh 0 0 rgba(255,255,255,.86),6vw 78vh 0 2px rgba(255,255,255,.62)}
.orbit-two{left:48%;top:12%;width:5px;height:5px;background:rgba(255,255,255,.82);box-shadow:-3vw 7vh 0 1px rgba(255,255,255,.58),8vw 20vh 0 -1px rgba(255,255,255,.94),1vw 35vh 0 2px rgba(255,255,255,.5),11vw 49vh 0 0 rgba(255,255,255,.82),-1vw 64vh 0 1px rgba(255,255,255,.58),9vw 76vh 0 3px rgba(255,255,255,.42)}

@media(max-width:1080px) and (min-width:721px){
  .hero-media{background-size:cover;background-position:140px center}
}

@media(max-width:720px){
  .hero-media{background-size:auto 100%;background-position:32% center}
  .hero-wave{transform:translateX(-22%)}
  .orbit-one{left:27%;top:7%;box-shadow:72px 28px 0 -2px rgba(255,255,255,.84),14px 82px 0 1px rgba(255,255,255,.68),96px 140px 0 -1px rgba(255,255,255,.96),32px 202px 0 2px rgba(255,255,255,.58),112px 264px 0 0 rgba(255,255,255,.86),48px 334px 0 2px rgba(255,255,255,.62)}
  .orbit-two{left:34%;top:11%;box-shadow:-24px 31px 0 1px rgba(255,255,255,.58),64px 86px 0 -1px rgba(255,255,255,.94),8px 146px 0 2px rgba(255,255,255,.5),88px 208px 0 0 rgba(255,255,255,.82),-8px 270px 0 1px rgba(255,255,255,.58),70px 328px 0 3px rgba(255,255,255,.42)}
}

@media(max-width:480px){
  .hero-media{background-size:auto 100%;background-position:30% center}
  .hero-wave{transform:translateX(-29%)}
}

/* Encabezado responsive independiente: no replica ni comprime el escritorio. */
@media(max-width:900px){
  body.menu-open{overflow:hidden}
  .hero{display:block;height:auto;min-height:0;padding:0;background:var(--cream);overflow:hidden}
  .nav{position:absolute;z-index:10;top:14px;left:16px;right:16px;width:auto;height:66px;margin:0;padding:0 17px;border:1px solid rgba(18,63,59,.16);border-radius:18px;background:#f7f3ed;backdrop-filter:none;-webkit-backdrop-filter:none;justify-content:space-between;gap:0}
  .brand{position:relative;z-index:12}.brand span{font-size:1.35rem}
  .menu-toggle{display:grid;place-content:center;gap:7px;width:43px;height:43px;padding:0;border:1px solid rgba(18,63,59,.15);border-radius:50%;background:rgba(255,255,255,.48);z-index:12;cursor:pointer}
  .menu-toggle span{display:block;width:21px;height:1px;background:var(--green);transition:transform .3s ease}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .nav-links{position:fixed;z-index:11;inset:0;width:100vw;height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:105px 26px 42px;background:#f3efe8!important;overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .42s cubic-bezier(.77,0,.18,1),visibility 0s linear .42s}
  .nav-links.open{transform:translateX(0);visibility:visible;transition:transform .42s cubic-bezier(.77,0,.18,1),visibility 0s}
  .nav-links>a{display:block;width:min(100%,430px);padding:18px 8px;border-bottom:1px solid rgba(18,63,59,.16);font-family:var(--serif);font-size:clamp(2rem,7vw,2.7rem);line-height:1.05;text-align:center;color:var(--deep)!important}
  .nav-links>a:not(.nav-cta):after{display:none}
  .nav-links .nav-cta{width:auto;margin:30px 0 0;padding:13px 30px;border:0;border-radius:99px;background:var(--green)!important;color:#fff!important;font-family:var(--sans);font-size:1rem;line-height:1.4}
  .hero-media{position:relative;inset:auto;width:100%;height:clamp(430px,68vw,590px);background-color:#173d39;background-size:auto 96%;background-position:48% bottom;background-repeat:no-repeat;transform:none;animation:none}
  .hero-media:after{background:linear-gradient(180deg,rgba(8,43,41,.04) 58%,rgba(8,43,41,.42) 100%)}
  .hero-wave{display:none}
  .hero-content{position:relative;z-index:2;display:block;width:min(100% - 36px,720px);height:auto;min-height:0;margin:auto;padding:44px 0 68px}
  .hero-content>*{max-width:100%}
  .hero-content .eyebrow{margin-bottom:14px;font-size:.7rem}
  .hero-content h1{font-size:clamp(3.5rem,10vw,5.2rem);line-height:.9;margin-bottom:24px}
  .hero-copy{max-width:620px;margin-bottom:28px;font-size:1rem;line-height:1.6}
  .hero-actions{display:flex;flex-direction:row;align-items:center;gap:22px}
  .hero-actions .button{width:auto}
  .hero-quote{z-index:5;top:calc(clamp(430px,68vw,590px) - 58px);right:18px;bottom:auto;max-width:calc(100% - 36px);padding:8px 13px;font-size:.74rem;white-space:normal;text-align:right}
  .hero-orbit{z-index:4;filter:drop-shadow(0 0 5px rgba(255,255,255,.7))}
  .orbit-one{left:12%;top:115px;width:7px;height:7px;box-shadow:26vw 42px 0 -2px rgba(255,255,255,.82),8vw 118px 0 1px rgba(255,255,255,.6),42vw 174px 0 -1px rgba(255,255,255,.9),18vw 242px 0 2px rgba(255,255,255,.48),55vw 304px 0 0 rgba(255,255,255,.78)}
  .orbit-two{left:22%;top:96px;width:4px;height:4px;box-shadow:40vw 74px 0 1px rgba(255,255,255,.5),4vw 154px 0 -1px rgba(255,255,255,.88),57vw 222px 0 2px rgba(255,255,255,.42),27vw 292px 0 0 rgba(255,255,255,.72)}
  .scroll-cue{display:none}
}

@media(max-width:520px){
  .nav{top:10px;left:10px;right:10px;height:62px;padding-inline:14px;border-radius:16px}
  .hero-media{height:clamp(400px,112vw,500px);background-size:auto 88%;background-position:58% bottom}
  .hero-content{width:calc(100% - 32px);padding:38px 0 58px}
  .hero-content h1{font-size:clamp(3rem,15vw,3.9rem)}
  .hero-actions{align-items:stretch;flex-direction:column;gap:13px}
  .hero-actions .button{width:100%;justify-content:space-between}
  .hero-quote{top:calc(clamp(400px,112vw,500px) - 64px);right:12px;max-width:calc(100% - 24px);font-size:.7rem}
  .orbit-one{top:92px}
  .orbit-two{top:78px}
}


/* Imágenes específicas para cada lugar de entrenamiento */
.place-visual{background:#0f3734}
.woman-crop{
  background-image:url('assets/pao-home-section-clean.png');
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  filter:saturate(.96) contrast(1.02);
  opacity:1;
  transition:transform .7s ease,opacity .28s ease,filter .45s ease;
}
.woman-crop:after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:none;
}
.woman-crop.is-switching{opacity:.18;transform:scale(1.02)}
.place-stage:hover .woman-crop{transform:scale(1.025)}
.place-stage:hover .woman-crop.is-switching{transform:scale(1.02)}
@media(max-width:720px){
  .woman-crop{background-size:cover;background-position:center center}
}


/* Solicitud del usuario: sin textos superpuestos sobre las imágenes de rutinas */
.stat-card{display:none!important}
