/* ===== v35 · menos bloques, recorrido de 4 pasos, logo en texto real ===== */
:root { --c0: #2e2645; --c1: #3a3155; --c2: #463c63; --c3: #554a74; }
body.v35 { background: var(--c0); }
body.v35::before { background:
    radial-gradient(60% 38% at 0% 0%, rgba(183,255,74,.18), transparent 62%),
    radial-gradient(50% 32% at 100% 12%, rgba(255,63,120,.22), transparent 62%),
    radial-gradient(70% 45% at 20% 75%, rgba(111,60,195,.45), transparent 62%),
    radial-gradient(45% 30% at 95% 95%, rgba(63,216,194,.16), transparent 62%),
    var(--c0); }

/* cabecera: el logo en texto real, grande y sin pastilla */
.v35 .top33 { background: rgba(46,38,69,.82); padding-top: .6rem; padding-bottom: .55rem; }
.v35 .top33 .brand2 { column-gap: 10px; }
.v35 .top33 .brand2 img { width: 54px; }
.v35 .top33 .brand2 .wm .p { font-size: 1.02rem; color: #fff; }
.v35 .top33 .brand2 .wm .r { font-size: 1.42rem; color: var(--pink); }
.v35 .top33 .brand2 .firma { width: 150px; height: 28px; margin: -3px 0 0 36px; }
.v35 .firma text { fill: var(--yellow); }

/* arranque más limpio */
.v35 .nivel-lede { margin-bottom: 1rem; }
.v35 .n32-cta { margin-top: .2rem; }
.ruta35 { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 0 0 1.1rem; padding: 0; counter-reset: r; }
.ruta35 li { position: relative; }
.ruta35 li + li::before { content: ""; position: absolute; left: -6px; top: 15px; width: 6px; height: 2px; background: var(--c3); }
.ruta35 a { display: grid; justify-items: center; gap: 4px; text-align: center; text-decoration: none; color: #e6dfee; font: 700 .72rem/1.15 "DM Sans", sans-serif; }
.ruta35 b { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--c2); color: var(--lime); font: 1.2rem/1 "Bebas Neue", sans-serif; font-weight: 400; border: 1.5px solid rgba(183,255,74,.5); }
.ruta35 li:first-child b { background: var(--lime); color: var(--ink); }

/* cabecera de cada paso: el hilo del recorrido */
.paso35 { display: grid; grid-template-columns: auto 1fr; gap: .9rem; align-items: center; max-width: 1120px; margin: 2.4rem auto .4rem; padding: 0 clamp(1rem, 5vw, 2.2rem); }
.v35 #nivel .paso35 { margin: 2rem 0 .2rem; padding: 0; }
.p35-n { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: var(--lime); color: var(--ink); font: 2rem/1 "Bebas Neue", sans-serif; box-shadow: 0 0 0 6px rgba(183,255,74,.16); }
.p35-t { margin: 0; font: 2.3rem/.95 "Bebas Neue", sans-serif; color: #fff; letter-spacing: .01em; }
.p35-s { margin: .2rem 0 0; font-size: .92rem; color: #d9d0e4; }

/* casos: menos aire arriba */
.v35 #casos { padding-top: 1.6rem !important; }
.v35 #casos .h32 { font-size: clamp(2.4rem, 10vw, 4.2rem); }

/* entreno: fuera la consola y la tira repetidas; selector compacto */
.v35 .zona-entreno .hero, .v35 .anti-save-strip, .v35 .workout-studio .section-intro { display: none; }
.v35 .workout-studio { padding-top: .6rem; }
.sw35 { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; max-width: 1120px; margin: .9rem auto .2rem; padding: 0 clamp(1rem, 5vw, 2.2rem); }
.sw35 button { min-height: 52px; padding: .45rem .4rem; border-radius: 18px; border: 1px solid var(--l32); background: var(--c1); color: #fff; font: 1.05rem/1 "Bebas Neue", sans-serif; letter-spacing: .04em; cursor: pointer; }
.sw35 button[aria-pressed="true"] { background: var(--lime); color: var(--ink); border-color: var(--lime); }

/* paso 3: Jonathan encabeza el programa */
.pj35 { display: grid; grid-template-columns: 96px 1fr; gap: 1rem; align-items: center; margin-bottom: 1.2rem; }
.pj35 img { width: 96px; height: 120px; object-fit: cover; object-position: 50% 20%; border-radius: 18px; border: 2px solid var(--lime); }
.pj35 .h32 { font-size: clamp(2rem, 8.5vw, 3.4rem); margin-bottom: .4rem; }
.pj35 p { margin: 0; color: #e6dfee; font-size: .95rem; line-height: 1.45; }
.v35 .programa32 { padding-top: .8rem !important; }
.v35 .montse32 { padding-top: 1rem !important; }
.v35 .final32 { padding-top: 1rem !important; }

@media (min-width: 860px) {
  .v35 .top33 .brand2 img { width: 60px; }
  .ruta35 { max-width: 520px; }
  .pj35 { grid-template-columns: 150px 1fr; }
  .pj35 img { width: 150px; height: 188px; }
  .sw35 { max-width: 640px; }
}

/* v36 · ajustes del panel */
.v35 .workout-formula, .v35 .formula-note { display: none; }
.p35-noche { margin: .45rem 0 0; font-size: .9rem; color: #d9d0e4; }
.p35-noche button { padding: .15rem .55rem; border: 0; border-radius: 99px; background: var(--yellow); color: var(--ink); font: 800 .85rem "DM Sans", sans-serif; cursor: pointer; }
.n35-cero { margin: .9rem 0 0; padding: .75rem .9rem; border-radius: 18px; background: rgba(183,255,74,.08); border: 1px dashed rgba(183,255,74,.45); color: #e6dfee; font-size: .92rem; line-height: 1.45; }
