/* ============================================================
   YANG SHENG · assets/web-ys.css — lo que Yang Sheng añade a web.css
   (productos, caminos, ebooks, tienda, mi espacio,
   entradas, legales). Solo variables del contrato: funciona con las
   5 plantillas y las 15 paletas. web.css NO se toca.
   ============================================================ */
.site .pre{white-space:pre-line}
.site .ys-sec{padding:20px 30px 60px;max-width:1180px;margin:0 auto}
.t2 .ys-sec{padding-top:0}
.site .ys-center{text-align:center;margin-top:26px}
.site .ys-vacio{opacity:.65;font-style:italic;text-align:center;padding:22px;border:1px dashed color-mix(in srgb,var(--c-dark) 25%,transparent);border-radius:calc(var(--rad)*.2);max-width:640px;margin:0 auto}
.site .ys-suave{opacity:.65;font-size:.92em}
.site .ys-nota{font-size:13px;opacity:.7;line-height:1.55;max-width:720px;margin:18px auto 0}
.site .ys-contra{color:#8a4b00;opacity:1;background:#f5c26b33;padding:12px 16px;border-radius:calc(var(--rad)*.2)}
.t2 .ys-contra{color:#f5c26b}
.site .ys-link{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;border-bottom:1px solid var(--c-accent);padding-bottom:2px;display:inline-block;margin-top:14px;font-size:14px}
.site .ys-msg{background:color-mix(in srgb,var(--c-accent) 18%,var(--c-bg));border-left:3px solid var(--c-accent);padding:12px 16px;border-radius:calc(var(--rad)*.15);margin:0 auto 22px;max-width:640px;font-size:14.5px}
.site .ys-msg-ok{border-color:#3a8a4a}
.site .ys-banda-prueba{background:#f5c26b33;border:1px dashed #c99a3a;color:#6a4a00;padding:12px 16px;border-radius:calc(var(--rad)*.15);font-size:13.5px;line-height:1.5;margin:14px 0}
.t2 .ys-banda-prueba{color:#f5c26b}
.site .ys-banda-prueba a{text-decoration:underline}
.site .ys-plazas{font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.75;margin-top:12px}
.site .ys-precio{font-family:var(--f-head);font-size:18px;color:var(--c-accent);text-align:right;line-height:1.2}
.site .ys-aviso{max-width:560px;margin:14px auto 0;line-height:1.5}
.site .ys-foto-wrap{max-width:1040px;margin:0 auto 30px}
.site .ys-foto-ancha{width:100%;height:340px;border-radius:calc(var(--rad)*.25)}
.site .ph-vacio{display:grid;place-items:center;min-height:180px;background:color-mix(in srgb,var(--c-dark) 8%,transparent);color:color-mix(in srgb,var(--c-dark) 60%,transparent);font-size:14px;font-family:var(--f-body);cursor:pointer;border-radius:calc(var(--rad)*.2);border:1.5px dashed color-mix(in srgb,var(--c-dark) 30%,transparent)}
.site .ys-ph-tipo{display:grid;place-items:center;background:color-mix(in srgb,var(--c-accent) 22%,var(--c-surface));font-size:44px;min-height:160px;width:100%}
.site .pg-svc .foto .ys-ph-tipo{height:380px;border-radius:calc(var(--rad)*.22)}

/* ── bloques de página interior ── */
.site .ys-bloque{max-width:820px;margin:44px auto 0}
.site .ys-bloque>h2{font-size:clamp(24px,3cqw,36px);margin-bottom:18px;letter-spacing:-.01em}
.site .ys-bloque>h3,.site .ys-prosa h3{font-size:20px;margin:22px 0 10px}
.site .ys-prosa p,.site .ys-historia p{font-size:16.5px;line-height:1.75;margin-bottom:14px;opacity:.9}
.site .ys-prosa h2{font-size:clamp(24px,3cqw,34px);margin:30px 0 12px}
.site .ys-prosa h4{font-size:16px;margin:18px 0 8px}
.site .ys-prosa ul,.site .ys-prosa ol{margin:0 0 14px 22px;line-height:1.7;font-size:15.5px}
.site .ys-prosa li{margin-bottom:6px}
.site .ys-historia p:first-child{font-family:var(--f-head);font-size:21px;line-height:1.5;opacity:1}
.site .ys-legal .ys-prosa{font-size:15px}
.site .ys-estrecha{max-width:720px}

/* ── rejillas y tarjetas genéricas ── */
.site .ys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.site .ys-tres{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.site .ys-card{background:color-mix(in srgb,var(--c-surface) 55%,var(--c-bg));border:1px solid color-mix(in srgb,var(--c-dark) 10%,transparent);border-radius:calc(var(--rad)*.25);padding:26px 26px 22px;display:flex;flex-direction:column;gap:10px;transition:transform .3s,box-shadow .3s}
.site .ys-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -28px color-mix(in srgb,var(--c-dark) 60%,transparent)}
.t2 .ys-card{background:#ffffff08;border-color:#ffffff18}
.site .ys-card h3{font-size:21px;font-weight:500;line-height:1.2}
.site .ys-card p{font-size:14.5px;line-height:1.6;opacity:.85;flex:1}
.site .ys-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.site .ys-card-mini{gap:4px;padding:18px 20px}
.site .ys-card-mini span{font-size:13.5px;opacity:.7}
.site .ys-caminos .ys-link{margin-top:6px;align-self:flex-start}
.site .ys-dos{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.site .ys-caja{background:color-mix(in srgb,var(--c-surface) 60%,var(--c-bg));border-radius:calc(var(--rad)*.25);padding:26px 28px}
.site .ys-caja-b{background:var(--c-dark);color:var(--c-bg)}
.t2 .ys-caja{background:#ffffff08}
.t2 .ys-caja-b{background:var(--c-bg);color:var(--c-dark)}
.site .ys-caja h3{font-size:19px;margin-bottom:14px}
.site .ys-caja ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.site .ys-caja li{font-size:14.5px;line-height:1.6;padding-left:20px;position:relative;opacity:.9}
.site .ys-caja li::before{content:"—";position:absolute;left:0;color:var(--c-accent)}
.site .ys-caja-b li::before{color:var(--c-accent)}
.site .ys-frases{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.site .ys-frases blockquote{margin:0;font-family:var(--f-head);font-size:19px;line-height:1.4;padding:20px 22px;border-left:2px solid var(--c-accent);background:color-mix(in srgb,var(--c-surface) 45%,var(--c-bg))}
.t2 .ys-frases blockquote{background:#ffffff06}

/* tabla de los cinco elementos */
.site .ys-tabla-wrap{overflow-x:auto;margin:12px 0}
.site .ys-tabla{width:100%;border-collapse:collapse;font-size:14px}
.site .ys-tabla th{text-align:left;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.65;padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--c-dark) 25%,transparent)}
.site .ys-tabla td{padding:12px;border-bottom:1px solid color-mix(in srgb,var(--c-dark) 10%,transparent);vertical-align:top;line-height:1.45}
.site .ys-tabla td:first-child{font-family:var(--f-head);font-size:17px;font-weight:500}
.site .ys-tabla tr.ys-el-madera td:first-child{color:#5f8f4e}.site .ys-tabla tr.ys-el-fuego td:first-child{color:#c0392b}.site .ys-tabla tr.ys-el-tierra td:first-child{color:#b0842a}.site .ys-tabla tr.ys-el-metal td:first-child{color:#8a8f96}.site .ys-tabla tr.ys-el-agua td:first-child{color:#2f4f7a}
.t2 .ys-tabla tr.ys-el-agua td:first-child{color:#7fa8d3}.t2 .ys-tabla tr.ys-el-metal td:first-child{color:#d9dde2}

/* ── los colores de los cinco elementos ── */
.site tr.ys-el-madera{background:linear-gradient(145deg,#6f9a5b,#3f6a37)}.site tr.ys-el-fuego{background:linear-gradient(145deg,#d9583f,#8f2c1c)}.site tr.ys-el-tierra{background:linear-gradient(145deg,#d1a24a,#8f6a1e)}.site tr.ys-el-metal{background:linear-gradient(145deg,#c7ccd2,#7e858d)}.site tr.ys-el-agua{background:linear-gradient(145deg,#3d5a80,#141e2b)}

/* ── el regalo ── */
.site .ys-regalo{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;max-width:1040px;margin:0 auto;padding:44px;border-radius:calc(var(--rad)*.3);background:var(--c-dark);color:var(--c-bg)}
.t2 .ys-regalo{background:var(--c-bg);color:var(--c-dark)}
.site .ys-regalo h2{font-size:clamp(26px,3.2cqw,40px);margin-bottom:12px}
.site .ys-regalo p{font-size:15.5px;line-height:1.65;opacity:.9}
.site .ys-regalo .skick,.site .ys-regalo .s-kicker{color:var(--c-accent);opacity:1}
.site .ys-regalo-form{background:color-mix(in srgb,var(--c-bg) 92%,transparent);color:var(--c-dark);border-radius:calc(var(--rad)*.25);padding:24px}
.site .ys-regalo-libro{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;margin-bottom:16px}
.site .ys-regalo-libro .ph{width:64px;height:84px;border-radius:6px;object-fit:cover;min-height:0;font-size:24px}
.site .ys-regalo-libro b{display:block;font-family:var(--f-head);font-size:19px;line-height:1.2}
.site .ys-regalo-libro span{font-size:13px;opacity:.7}

/* ── formularios ── */
.site .ys-form{display:flex;flex-direction:column;gap:14px;max-width:520px;margin:0 auto}
.site .ys-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;letter-spacing:.04em;opacity:.9}
.site .ys-form input:not([type=checkbox]),.site .ys-form textarea,.site .ys-form select{font:inherit;font-size:16px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--c-dark) 25%,transparent);border-radius:calc(var(--rad)*.2);background:#fff;color:#222;letter-spacing:0}
.site .ys-form input:focus,.site .ys-form textarea:focus,.site .ys-form select:focus{outline:2px solid var(--c-accent);outline-offset:1px}
.site .ys-form .ys-check{display:block;position:relative;padding-left:29px;font-size:13.5px;line-height:1.55;letter-spacing:0;opacity:.85}
.site .ys-form .ys-check input{position:absolute;left:0;top:3px;width:18px;height:18px}
.site .ys-form .ys-check .ys-link{display:inline;white-space:nowrap}
.site .ys-form button[type=submit]{border:none;cursor:pointer;font-family:var(--f-body);margin-top:4px}
.site .ys-form-linea{text-align:center;margin-top:8px}
.site .ys-codigo{font-size:28px!important;letter-spacing:.35em!important;text-align:center;font-family:var(--f-head)}
.site .ys-salir{margin-top:40px}
.site .ys-pagar{font-size:14px!important;padding:17px 30px!important}

/* ── ebooks ── */
.site .ys-libros{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.site .ys-libro{display:grid;grid-template-columns:110px 1fr;gap:18px;background:color-mix(in srgb,var(--c-surface) 55%,var(--c-bg));border:1px solid color-mix(in srgb,var(--c-dark) 10%,transparent);border-radius:calc(var(--rad)*.25);padding:18px;align-items:start}
.t2 .ys-libro{background:#ffffff08;border-color:#ffffff18}
.site .ys-libro .ph{width:110px;height:150px;border-radius:8px;object-fit:cover;min-height:0;font-size:34px}
.site .ys-libro h3{font-size:19px;line-height:1.2;margin-bottom:6px}
.site .ys-libro p{font-size:13.5px;line-height:1.55;opacity:.8}
.site .ys-libro-pie{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}
.site .ys-indice{margin:14px 0}
.site .ys-indice b{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.65;margin-bottom:8px}
.site .ys-indice ol{margin:0 0 0 20px;font-size:14px;line-height:1.7;opacity:.85}

/* ── membresía ── */
.site .ys-banda{max-width:820px;margin:44px auto 0;padding:34px 36px;border-radius:calc(var(--rad)*.3);background:var(--c-dark);color:var(--c-bg);text-align:center}
.t2 .ys-banda{background:var(--c-bg);color:var(--c-dark)}
.site .ys-banda h2{font-size:clamp(22px,2.8cqw,32px);margin-bottom:10px}
.site .ys-banda p{font-size:15px;line-height:1.65;opacity:.9;margin-bottom:18px}
.site .ys-banda .pg-rsv{background:var(--c-bg);color:var(--c-dark)}
.t2 .ys-banda .pg-rsv{background:var(--c-dark);color:var(--c-bg)}
.site .ys-banda ol,.site .ys-banda ul{text-align:left;margin:0 auto 12px;max-width:560px;line-height:1.65;font-size:15px}
.site .ys-precios{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:10px 0 18px}
.site .ys-precio-card{border:1px solid color-mix(in srgb,var(--c-dark) 18%,transparent);border-radius:calc(var(--rad)*.25);padding:28px 24px;text-align:center;display:flex;flex-direction:column;gap:8px;align-items:center;background:color-mix(in srgb,var(--c-surface) 45%,var(--c-bg))}
.site .ys-precio-card-b{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-accent) 20%,transparent)}
.t2 .ys-precio-card{background:#ffffff08}
.site .ys-precio-n{font-family:var(--f-head);font-size:44px;line-height:1}
.site .ys-precio-l{font-size:13px;letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.site .ys-precio-card .pg-rsv{margin-top:10px}

/* ── faq ── */
.site .ys-faq{max-width:760px;margin:0 auto}
.site .ys-faq-item{border-top:1px solid color-mix(in srgb,var(--c-dark) 15%,transparent);padding:6px 0}
.site .ys-faq-item:last-child{border-bottom:1px solid color-mix(in srgb,var(--c-dark) 15%,transparent)}
.site .ys-faq-item summary{cursor:pointer;font-family:var(--f-head);font-size:19px;padding:14px 30px 14px 0;position:relative;list-style:none}
.site .ys-faq-item summary::-webkit-details-marker{display:none}
.site .ys-faq-item summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:22px;color:var(--c-accent)}
.site .ys-faq-item[open] summary::after{content:"–"}
.site .ys-faq-item p{font-size:15px;line-height:1.7;opacity:.85;padding:0 0 16px}

/* ── evento ── */
.site .ys-evento-datos{display:flex;flex-direction:column;gap:10px;margin:6px 0 16px;font-size:14.5px;line-height:1.5}
.site .ys-evento-datos b{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent);margin-bottom:2px}
.site .ys-pasados .ys-card{opacity:.7}

/* ── mi espacio ── */
.site .ys-hoy{max-width:820px;margin:0 auto}
.site .ys-hoy h2{font-size:clamp(22px,2.8cqw,32px);margin-bottom:14px}
.site .ys-hoy-card{background:var(--c-dark);color:var(--c-bg);border-radius:calc(var(--rad)*.3);padding:30px 34px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.t2 .ys-hoy-card{background:var(--c-bg);color:var(--c-dark)}
.site .ys-hoy-card .s-kicker{color:var(--c-accent);opacity:1;margin-bottom:4px}
.site .ys-hoy-card h3{font-size:24px}
.site .ys-hoy-card p{font-size:15px;line-height:1.6;opacity:.9}
.site .ys-hoy-card .pg-rsv{background:var(--c-bg);color:var(--c-dark);margin-top:8px}
.t2 .ys-hoy-card .pg-rsv{background:var(--c-dark);color:var(--c-bg)}
.site .ys-mio{border:1px solid color-mix(in srgb,var(--c-dark) 12%,transparent);border-radius:calc(var(--rad)*.25);padding:22px;margin-bottom:16px;background:color-mix(in srgb,var(--c-surface) 40%,var(--c-bg))}
.t2 .ys-mio{background:#ffffff06;border-color:#ffffff18}
.site .ys-mio-cab{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;margin-bottom:16px}
.site .ys-mio-cab h3{font-size:22px;line-height:1.2}
.site .ys-mini{width:72px;height:72px;border-radius:12px;object-fit:cover;min-height:0;font-size:28px}
.site .ys-dias{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.site .ys-dia{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:calc(var(--rad)*.2);border:1px solid color-mix(in srgb,var(--c-dark) 15%,transparent);font-size:13px;line-height:1.35;color:inherit}
.site .ys-dia b{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent)}
.site .ys-dia i{font-style:normal;font-size:11.5px;opacity:.6}
.site .ys-dia.abierta{background:color-mix(in srgb,var(--c-accent) 14%,var(--c-bg));border-color:var(--c-accent)}
.site .ys-dia.abierta:hover{transform:translateY(-2px)}
.site .ys-dia.cerrada{opacity:.55;border-style:dashed}
.site .ys-dia.hoy{box-shadow:0 0 0 3px color-mix(in srgb,var(--c-accent) 35%,transparent)}
.site .ys-pasos{margin:0 auto;max-width:560px;text-align:left;line-height:1.7;font-size:15px;padding-left:22px}

/* ── entradas ── */
.site .ys-entrada-mini{align-items:flex-start;gap:6px}
.site .ys-codigo-txt{font-family:var(--f-head);font-size:22px;letter-spacing:.2em;color:var(--c-accent)}
.site .ys-codigo-txt.grande{font-size:30px;text-align:center;margin:10px 0}
.site .ys-ticket{max-width:420px;margin:0 auto;border:2px dashed color-mix(in srgb,var(--c-dark) 30%,transparent);border-radius:calc(var(--rad)*.3);padding:26px;text-align:center;background:#fff;color:#222}
.site .ys-ticket-estado{font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:8px 14px;border-radius:99px;display:inline-block;margin-bottom:14px;background:#3a8a4a;color:#fff}
.site .ys-ticket-usada .ys-ticket-estado{background:#888}
.site .ys-ticket-anulada .ys-ticket-estado{background:#b3362b}
.site .ys-ticket-estado small{display:block;font-size:10px;letter-spacing:.05em;text-transform:none;opacity:.85}
.site .ys-qr svg{width:220px;height:220px;display:block;margin:0 auto}
.site .ys-ticket .ys-nota{margin-top:10px}
.site .ys-checkin{margin:18px auto 0;max-width:420px;text-align:center}
.site .ys-checkin button{font:inherit;font-size:16px;padding:16px 28px;border:none;border-radius:calc(var(--rad)*.3);background:#3a8a4a;color:#fff;cursor:pointer;width:100%}
.site .ys-checkin .hecho{color:#3a8a4a;font-weight:600;margin-top:8px}

/* ── checkout ── */
.site .ys-resumen{background:color-mix(in srgb,var(--c-surface) 55%,var(--c-bg));border-radius:calc(var(--rad)*.25);padding:20px 22px;margin-bottom:26px}
.t2 .ys-resumen{background:#ffffff08}
.site .ys-resumen-fila{display:grid;grid-template-columns:72px 1fr auto;gap:16px;align-items:center}
.site .ys-resumen-fila b{display:block;font-family:var(--f-head);font-size:20px;line-height:1.2}
.site .ys-resumen-precio{text-align:right;font-family:var(--f-head);font-size:28px;line-height:1}
.site .ys-resumen-precio span{display:block;font-family:var(--f-body);font-size:11px;opacity:.6;margin-top:4px;letter-spacing:.05em}
.site .ys-checkout .ys-form{max-width:none}
.site .ys-checkout .s-kicker{margin:10px 0 0}

/* ── lección ── */
.site .ys-video{max-width:820px;margin:0 auto 26px;aspect-ratio:16/9;background:#000;border-radius:calc(var(--rad)*.2);overflow:hidden}
.site .ys-video iframe,.site .ys-video video{width:100%;height:100%;border:0;display:block}
.site .ys-leccion .ys-banda{text-align:left}
.site .ys-leccion .ys-banda p{margin-bottom:10px}

/* ── editor: el lint sanitario y las fotos clicables ── */
.site [data-edit].ed-lint{outline:2px solid #e0a020!important;background:#e0a02022}
.site [data-foto]{cursor:pointer}
.site img[data-foto]:hover,.site .ph-vacio:hover{outline:3px dashed #5b8fc7;outline-offset:-3px}

/* ── móvil (según el ancho del propio marco) ── */
@container web (max-width:860px){
  .site .ys-sec{padding:10px 18px 40px}
  .site .ys-dos,.site .ys-regalo,.site .ys-precios{grid-template-columns:1fr}
  .site .ys-regalo{padding:28px 22px}
  .site .ys-libro{grid-template-columns:84px 1fr}
  .site .ys-libro .ph{width:84px;height:116px}
  .site .ys-foto-ancha{height:220px}
  .site .ys-resumen-fila{grid-template-columns:56px 1fr;grid-template-rows:auto auto}
  .site .ys-resumen-precio{grid-column:1/3;text-align:left}
  .site .ys-banda,.site .ys-bloque{margin-top:34px}
  .site .ys-hoy-card{padding:22px}
}

/* ── sin foto: el diseño se reordena a una columna en vez de dejar un hueco ── */
.t0 .hero.sin-foto{grid-template-columns:1fr;min-height:0}
.t0 .hero.sin-foto .hero-in{padding:64px 56px}
.t2 .r-hero.sin-foto{min-height:0;padding:80px 20px}
.t3 .hero.sin-foto,.t4 .hero.sin-foto{grid-template-columns:1fr}
.site .about.sin-foto,.t1 .e-about.sin-foto,.t2 .r-about.sin-foto{grid-template-columns:1fr;max-width:760px}
.site .ys-regalo-libro>div{min-width:0}

/* ── el menú con siete entradas: que quepa en cualquier plantilla ── */
.t0 .links,.t3 .links,.t2 .r-links{flex-wrap:wrap;justify-content:center;row-gap:6px}
.t0 .links{gap:6px 18px;font-size:11.5px} .t3 .links{gap:6px 16px;font-size:13px} .t2 .r-links{gap:6px 20px;font-size:10.5px}
.t2 .r-nav{gap:16px;padding:22px 30px} .t2 .r-logo{white-space:nowrap}
.t1 .e-navline{flex-wrap:wrap;gap:10px 24px;font-size:10.5px}
.t4 .links{flex-wrap:wrap;row-gap:6px;font-size:10.5px} .t4 .links span,.t4 .links a{padding:0 10px}
.t0 .nav .logo,.t3 .nav .logo,.t4 .nav .logo{white-space:nowrap}
@container web (max-width:1120px){
  .t0 .links,.t3 .links,.t2 .r-links,.t4 .links{gap:4px 12px}
}
/* ── plantilla oscura (Ritual): los días abiertos y las tarjetas no pueden quedar blancos sobre blanco ── */
.t2 .ys-dia.abierta{background:color-mix(in srgb,var(--c-accent) 28%,transparent);color:var(--c-bg)}
.t2 .ys-dia{border-color:#ffffff22}
.t2 .ys-libro-tx,.t2 .ys-card h3{color:var(--c-bg)}
.t2 .ys-form input:not([type=checkbox]),.t2 .ys-form textarea,.t2 .ys-form select{background:#fff;color:#222}
.t2 .ys-resumen b{color:var(--c-bg)}
.t2 .ys-precio-n{color:var(--c-bg)}
.site .ys-msg-top{position:sticky;top:0;z-index:70;margin:0;max-width:none;border-radius:0;text-align:center;background:var(--c-dark);color:var(--c-bg);border-left:0;border-bottom:3px solid var(--c-accent)}
.t2 .ys-msg-top{background:var(--c-bg);color:var(--c-dark)}

/* ============================================================
   16/09/2026 · EL DISEÑO ÚNICO: Ritual + Salvia y tierra, fundidas.
   La salvia (--c-dark) es el fondo de la plantilla. La tierra (--c-dark2)
   entra como una banda cálida que se funde por arriba y por abajo. Detrás
   de cada zona puede ir un FONDO: una foto de textura desbordada y
   desenfocada, con una capa de color encima para que el texto respire.
   ============================================================ */
.site .ys-zona{position:relative;isolation:isolate}
.site .ys-zona-in{position:relative;z-index:1}
.site .ys-zona-tierra{color:var(--c-bg2);padding:36px 0;
  background:linear-gradient(180deg,var(--c-dark) 0%,var(--c-dark2) min(180px,22%),var(--c-dark2) max(calc(100% - 180px),78%),var(--c-dark) 100%)}
/* dentro de la tierra, lo que era «oscuro sobre claro» se invierte con la tierra clara */
.site .ys-zona-tierra .ys-caja-b{background:var(--c-bg2);color:var(--c-dark2)}
.site .ys-zona-tierra .r-contact{background:#00000014;border-color:#ffffff1c}
.site .ys-zona-tierra .r-hours h3,.site .ys-zona-tierra .s-cline b{color:var(--c-accent)}
.site .ys-zona-tierra .r-dit{border-color:#ffffff14}
.site .ys-zona-tierra .r-sechead h2,.site .ys-zona-tierra .r-dit{color:var(--c-bg2)}
.site .ys-zona-salvia{background:transparent}
.site .ys-fondo{position:absolute;inset:-40px;z-index:0;background-size:cover;background-position:center;
  filter:blur(22px) saturate(.75) brightness(.7);opacity:.42;transform:scale(1.06);pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 140px,#000 calc(100% - 140px),transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0,#000 140px,#000 calc(100% - 140px),transparent 100%)}
.site .ys-zona-tierra .ys-fondo{filter:blur(30px) saturate(.65) brightness(.95) contrast(.85);opacity:.26;mix-blend-mode:soft-light}
.site .ys-zona-salvia .ys-fondo{opacity:.3;filter:blur(24px) saturate(.7) brightness(.8)}
/* una luz suave arriba de cada zona de tierra: le quita lo plano sin ensuciar */
.site .ys-zona-tierra::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(70% 45% at 50% 22%,#ffffff10,transparent 70%)}
/* grano fino encima del fondo: quita el aspecto plano del desenfoque */
.site .ys-zona.con-fondo::after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.045;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E")}
/* la tierra usa su propio acento (salvia) en lo pequeño, y el dorado en lo grande */
.site .ys-zona-tierra .r-sechead .s-kicker,.site .ys-zona-tierra .s-kicker{color:var(--c-accent2)}
.site .ys-zona-tierra .s-philo{border-color:transparent;margin-bottom:0}
.site .ys-zona-tierra .s-philo blockquote{color:var(--c-bg2)}
.site .ys-zona-tierra .ys-card{background:#00000018;border-color:#ffffff1c}
.site .ys-zona-tierra .r-about .phw::after{border-color:var(--c-accent2)}
.site .ys-zona-tierra .r-about h2{color:var(--c-bg2)}
.site .ys-zona-tierra .ys-regalo{background:var(--c-bg2);color:var(--c-dark2);box-shadow:0 40px 80px -40px #00000080}
.site .ys-zona-tierra .ys-regalo .s-kicker{color:var(--c-accent2)}
.site .ys-zona-tierra .pg-quote,.site .ys-zona-tierra .pg-step{border-color:#ffffff22}
.site .ys-zona-tierra .r-cta.line,.site .ys-zona-tierra .pg-rsv.linea{border-color:#ffffff66}
.site .ys-zona-tierra .pg-rsv.grande{background:var(--c-bg2);color:var(--c-dark2)}
/* la cabecera de una página interior lleva el fondo solo arriba */
.site .ys-zona-cabecera .ys-fondo{inset:-40px -40px auto -40px;height:620px;-webkit-mask-image:linear-gradient(180deg,#000 0,#000 40%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 40%,transparent 100%)}
/* el cierre de una página interior: banda de tierra a todo el ancho aunque viva dentro de .pg */
.site .ys-zona-cierre{width:100cqw;margin:56px 0 -70px calc(50% - 50cqw);padding:60px 26px 70px}
.site .ys-zona-cierre .pg-quote{margin-bottom:26px;border-top:0}
.site .ys-zona-cierre .pg-cta-fila{margin-top:0}
.site .ys-zona-cierre .ys-fondo{opacity:.55}
/* el botón del editor para cambiar el fondo de una zona */
.site .ys-fondo-btn{position:absolute;right:18px;top:18px;z-index:3;font:inherit;font-size:12px;letter-spacing:.06em;padding:8px 12px;border-radius:99px;
  border:1px dashed #ffffff88;background:#00000066;color:#fff;cursor:pointer;backdrop-filter:blur(6px)}
.site .ys-fondo-btn:hover{background:var(--c-accent);color:var(--c-dark);border-style:solid}
/* la galería de la portada, en Ritual: tres fotos a sangre con un velo suave */
.t2 .r-gal .ph{height:360px;opacity:.92;transition:transform .6s,opacity .3s;filter:saturate(.85)}
.t2 .r-gal>div{overflow:hidden}
.t2 .r-gal:hover .ph{opacity:.75} .t2 .r-gal>div:hover .ph{opacity:1;transform:scale(1.03)}
/* el hero, con la foto un poco más presente y más aire */
.t2 .r-hero .ph{opacity:.55;filter:saturate(.85)}
.t2 .r-hero{min-height:720px}
.t2 .r-hero .sub{max-width:600px;font-size:16.5px;line-height:1.75}
/* la página de qigong: retrato alto y el índice de la postura Wuji */
.site .pg-qigong .foto img{height:520px;object-fit:cover;object-position:center top}
.site .pg-qigong .tx .s-kicker{color:var(--c-accent)}
.site .ys-bloque-ancho{max-width:1040px}
.site .ys-bloque-ancho .ys-regalo{padding:40px}
.site .ys-prosa .ys-caja{margin-top:6px}
.site .ys-prosa .ys-caja li{font-size:16px}
.t2 .ys-caja:not(.ys-caja-b){color:var(--c-bg)}
/* móvil */
@container web (max-width:860px){
  .site .ys-zona-tierra{padding:20px 0;background:linear-gradient(180deg,var(--c-dark) 0%,var(--c-dark2) min(90px,20%),var(--c-dark2) max(calc(100% - 90px),80%),var(--c-dark) 100%)}
  .site .ys-zona-cierre{padding:44px 18px 56px}
  .site .ys-fondo-btn{right:10px;top:10px}
  .site .pg-qigong .foto img{height:360px}
  .t2 .r-hero{min-height:0}
  .t2 .r-gal .ph{height:240px}
}

/* ============================================================
   MODO LUMINOSO (.ys-claro · paleta 16 «Salvia y tierra · luz», 16/09/2026)
   Ritual es una plantilla oscura: pinta el fondo con --c-dark y el texto con --c-bg.
   Con la paleta luminosa esos papeles se invierten (fondo salvia claro, tinta verde;
   arena y tinta tierra en las zonas de tierra). Aquí se arregla lo que la plantilla
   daba por hecho: los blancos translúcidos pasan a sombras, y la portada sigue
   siendo oscura y cinematográfica para que la foto y el menú respiren.
   ============================================================ */
.site.ys-claro{--ink:#2E372D;--ink-2:#4A3B2E;--luz:#F4F2EA;--linea:#0000001a;--velo:#00000008}
/* la portada: bloque oscuro sobre la foto, que se funde con la página clara por abajo */
.ys-claro.t2 .r-hero{background:var(--ink)}
.ys-claro.t2 .r-hero .ph{opacity:.62}
.ys-claro.t2 .r-hero::before{background:linear-gradient(180deg,#2E372Dd9 0%,#2E372D66 30%,#2E372D73 62%,var(--c-dark) 100%)}
.ys-claro.t2 .r-hero h1,.ys-claro.t2 .r-hero .sub{color:var(--luz)}
.ys-claro.t2 .r-hero .s-kicker,.ys-claro.t2 .r-hero .kick2{color:#DDB995}
.ys-claro.t2 .r-hero .r-cta.line{color:var(--luz);border-color:#ffffff66}
.ys-claro.t2 .r-hero.sin-foto{background:var(--ink)}
/* el menú: tinta sobre las páginas claras; claro solo en la portada, donde va encima de la foto oscura */
.ys-claro.t2 .r-nav,.ys-claro.t2 .r-nav a,.ys-claro.t2 .r-nav span{color:var(--ink)}
.ys-claro.t2 .r-links{opacity:.85}
.ys-claro.t2 .r-links .on{color:var(--c-accent)}
.ys-claro.t2 .r-book{color:var(--ink);border-color:var(--c-accent)}
.ys-claro.t2 .r-book:hover{background:var(--c-accent);color:var(--luz)}
.ys-claro.t2 .mburger{border-color:#00000040;color:var(--ink)}
.ys-claro.t2.pag-inicio .r-nav,.ys-claro.t2.pag-inicio .r-nav a,.ys-claro.t2.pag-inicio .r-nav span{color:var(--luz)}
.ys-claro.t2.pag-inicio .r-links .on{color:#DDB995}
.ys-claro.t2.pag-inicio .r-book{color:var(--luz);border-color:#DDB995}
.ys-claro.t2.pag-inicio .r-book:hover{background:#DDB995;color:var(--ink)}
.ys-claro.t2.pag-inicio .mburger{border-color:#ffffff55;color:var(--luz)}
/* si la portada está apagada, la home tampoco tiene foto oscura: menú en tinta */
.ys-claro.t2.pag-inicio.sin-hero .r-nav,.ys-claro.t2.pag-inicio.sin-hero .r-nav a,.ys-claro.t2.pag-inicio.sin-hero .r-nav span{color:var(--ink)}
/* los blancos translúcidos de la plantilla, ahora sombras suaves */
.ys-claro.t2 .s-philo,.ys-claro.t2 .r-badges,.ys-claro.t2 .r-dit,.ys-claro.t2 .r-dit:last-of-type,.ys-claro.t2 .r-svc,.ys-claro.t2 .r-svc .quien,
.ys-claro.t2 .r-step,.ys-claro.t2 .r-step:last-child,.ys-claro.t2 .r-box,.ys-claro.t2 .r-contact,.ys-claro.t2 .s-hrow,.ys-claro.t2 .r-footer,
.ys-claro.t2 .pg-quote,.ys-claro.t2 .pg-step,.ys-claro.t2 .pg-step:last-child,.ys-claro.t2 .pg-list li,.ys-claro.t2 .pg-list li:last-child,.ys-claro.t2 .pg-datos .fila,
.ys-claro.t2 .ys-card,.ys-claro.t2 .ys-libro,.ys-claro.t2 .ys-mio,.ys-claro.t2 .ys-dia{border-color:var(--linea)}
.ys-claro.t2 .r-box,.ys-claro.t2 .r-contact,.ys-claro.t2 .ys-card,.ys-claro.t2 .ys-caja,.ys-claro.t2 .ys-frases blockquote,.ys-claro.t2 .ys-libro,
.ys-claro.t2 .ys-precio-card,.ys-claro.t2 .ys-mio,.ys-claro.t2 .ys-resumen{background:var(--velo)}
.ys-claro.t2 .r-cta.line{color:var(--c-bg);border-color:#00000040}
.ys-claro.t2 .ys-contra,.ys-claro.t2 .ys-banda-prueba{color:#8F5A3C}
.ys-claro.t2 .r-badge{opacity:.8}
.ys-claro.t2 .r-sechead p{opacity:.8}
.ys-claro.t2 .r-badge::before{color:var(--c-accent)}
/* las cajas «invertidas» de la plantilla (regalo, banda, hoy) quedan como bloques de tinta: buen contraste */
.ys-claro.t2 .ys-regalo,.ys-claro.t2 .ys-banda,.ys-claro.t2 .ys-hoy-card,.ys-claro.t2 .ys-caja-b{box-shadow:0 30px 60px -30px #2E372D66}
.ys-claro.t2 .ys-regalo .s-kicker,.ys-claro.t2 .ys-banda .s-kicker{color:#DDB995}
.ys-claro.t2 .ys-regalo .pg-rsv,.ys-claro.t2 .ys-regalo button[type=submit]{background:var(--c-accent);color:var(--luz)}
/* la tierra: arena clara, tinta tierra, líneas y velos oscuros */
.site.ys-claro .ys-zona-tierra .r-contact,.site.ys-claro .ys-zona-tierra .ys-card{background:#00000008;border-color:var(--linea)}
.site.ys-claro .ys-zona-tierra .r-dit,.site.ys-claro .ys-zona-tierra .pg-quote,.site.ys-claro .ys-zona-tierra .pg-step{border-color:#00000018}
.site.ys-claro .ys-zona-tierra .r-cta.line,.site.ys-claro .ys-zona-tierra .pg-rsv.linea{border-color:#00000040}
.site.ys-claro .ys-zona-tierra .r-hours h3,.site.ys-claro .ys-zona-tierra .s-cline b{color:var(--c-accent)}
.site.ys-claro .ys-zona-tierra::before{background:radial-gradient(70% 45% at 50% 22%,#ffffff70,transparent 70%)}
.site.ys-claro .ys-zona-tierra .ys-regalo{box-shadow:0 30px 60px -30px #4A3B2E66}
/* los fondos de textura: multiplican sobre el claro, muy suaves, para no ensuciar */
.site.ys-claro .ys-fondo{filter:blur(26px) saturate(.55) brightness(1.06);opacity:.28;mix-blend-mode:multiply}
.site.ys-claro .ys-zona-tierra .ys-fondo{filter:blur(30px) saturate(.5) brightness(1.08);opacity:.22;mix-blend-mode:multiply}
.site.ys-claro .ys-zona.con-fondo::after{opacity:.03}
.site.ys-claro .ys-zona-cierre .ys-fondo{opacity:.3}
/* el pie, en tinta, cierra la página */
.ys-claro.t2 .r-footer{background:var(--ink);color:var(--luz);border-top:0;padding-top:56px}
.ys-claro.t2 .r-footer a,.ys-claro.t2 .r-footer span{color:var(--luz)}
.ys-claro.t2 .r-footer .r-logo{color:var(--luz)}

/* ============================================================
   22/09/2026 · LA PIEL v2 (.ys-v2 · paleta 17 «Arena y salvia cálida»)
   Fede: «colores mucho más cálidos, sin franjas, sin márgenes blancos, las
   tarjetas se ven fatal en escritorio, el regalo no combina». Aquí se
   reescribe la piel encima de Ritual + .ys-claro sin tocar web.css:
   crema cálida de fondo, tinta oliva, terracota, arena. Las tarjetas de
   producto pasan de carrusel a rejilla en escritorio; el regalo es una
   tarjeta clara; las zonas de tierra son un cambio de tono suave, no
   una franja; el pie es tierra oscura.
   ============================================================ */
.site.ys-v2{--ink:#2F352A;--ink-2:#4A3A2C;--luz:#F8F3EA;--crema:#F6EFE3;--arena:#EEE1CB;--terra:#BF7448;--terra-2:#A8623A;--salvia:#7E8C62;--linea:#4a3a2c1f;--velo:#4a3a2c0a;--blanco:#FFFCF7;
  --sombra:0 26px 56px -40px #4a3a2c73;
  /* 22/09/2026 tarde, Fede: «ha desaparecido el verde, ahora es todo tierra;
     habría que hacer un mix». El salvia vuelve como la voz tranquila (superficies
     grandes, números, viñetas, rayas) y la terracota se queda para lo que se pulsa. */
  --salvia-2:#69784F;--oliva:#333B2B;--oliva-2:#3C4433;--salvia-velo:#7e8c620f}
.site.ys-v2{background:var(--crema);color:var(--ink);font-weight:400}
.site.ys-v2 p{letter-spacing:.005em}
.ys-v2.t2 .r-links{opacity:.9;font-size:11px;letter-spacing:.18em}
.ys-v2.t2 .r-nav{padding:22px 44px}
.ys-v2.t2 .r-logo{letter-spacing:.26em}
/* ── portada: bloque cálido y oscuro sobre la foto, que se funde con la crema ── */
.ys-v2.t2 .r-hero{background:var(--oliva);min-height:min(760px,92vh);padding:150px 30px 96px}
.ys-v2.t2 .r-hero .ph{opacity:.6;filter:saturate(.8) sepia(.18) brightness(.95)}
.ys-v2.t2 .r-hero::before{background:linear-gradient(180deg,#242b1fe6 0%,#2b331f5e 30%,#333b2b78 58%,var(--crema) 100%)}
.ys-v2.t2 .r-hero .s-kicker,.ys-v2.t2 .r-hero .kick2{color:#E8C39A}
.ys-v2.t2 .r-hero .s-kicker{font-size:10.5px;letter-spacing:.3em;opacity:.95}
.ys-v2.t2 .r-hero h1{font-size:clamp(38px,5.4cqw,74px);letter-spacing:0;line-height:1.08;font-weight:400}
.ys-v2.t2 .r-hero .kick2{font-size:clamp(22px,2.6cqw,32px);margin:8px 0 26px}
.ys-v2.t2 .r-hero .sub{font-size:17px;line-height:1.8;max-width:620px;opacity:.94}
.ys-v2.t2 .r-hero .r-cta.line{border-color:#ffffff7a}
.ys-v2.t2 .trust,.ys-v2.t2 .r-hero .trust{opacity:.8}
.ys-v2.t2.pag-inicio .r-links .on,.ys-v2.t2.pag-inicio .r-book{color:#E8C39A;border-color:#E8C39A}
.ys-v2.t2.pag-inicio .r-book:hover{background:#E8C39A;color:var(--ink)}
/* ── botones: terracota con letra crema, esquinas suaves ── */
.ys-v2.t2 .r-cta,.ys-v2.t2 .pg-rsv,.ys-v2.t2 .ys-regalo .pg-rsv,.ys-v2.t2 .ys-regalo button[type=submit]{background:var(--terra);color:var(--luz);border-radius:6px;letter-spacing:.16em;font-weight:500;box-shadow:0 12px 24px -16px #bf744899}
.ys-v2.t2 .r-cta:hover,.ys-v2.t2 .pg-rsv:hover{background:var(--terra-2);filter:none;opacity:1}
.ys-v2.t2 .r-cta.line,.ys-v2.t2 .pg-rsv.linea{background:transparent;box-shadow:none;color:inherit}
.ys-v2.t2 .r-cta.line{color:var(--luz)}
.ys-v2.t2 .ys-zona-salvia .r-cta.line,.ys-v2.t2 .ys-zona-tierra .r-cta.line,.ys-v2.t2 .r-pg .r-cta.line{color:var(--ink);border-color:#4a3a2c55}
.ys-v2.t2 .r-rsv,.ys-v2.t2 .r-book{border-radius:6px;border-color:var(--terra);color:var(--ink)}
.ys-v2.t2 .r-rsv:hover,.ys-v2.t2 .r-book:hover{background:var(--terra);color:var(--luz)}
.ys-v2.t2 .r-more,.ys-v2 .ys-link{color:var(--terra);border-color:var(--terra)}
/* ── los sellos bajo la portada ── */
.ys-v2.t2 .r-badges{border-color:var(--linea);padding:22px 20px;gap:44px}
.ys-v2.t2 .r-badge{font-size:10.5px;letter-spacing:.2em;opacity:.75}
.ys-v2.t2 .r-badge::before{color:var(--salvia)}
/* ── cabeceras de sección: kicker terracota con una raya, título en serif sin mayúsculas ── */
.ys-v2.t2 .r-sechead{padding:88px 20px 52px}
.ys-v2.t2 .r-sechead .s-kicker,.ys-v2 .s-kicker,.ys-v2 .skick{color:var(--terra);font-size:10.5px;letter-spacing:.28em}
.ys-v2.t2 .r-sechead .s-kicker::after{content:'';display:block;width:34px;height:1px;background:var(--salvia);margin:14px auto 0;opacity:.85}
.ys-v2.t2 .r-sechead h2{text-transform:none;letter-spacing:0;font-size:clamp(30px,3.8cqw,50px);line-height:1.12;font-weight:400}
.ys-v2.t2 .r-sechead p{opacity:.78;font-size:16px;max-width:560px;margin-top:16px;line-height:1.7}
/* ── las zonas: crema y arena, sin franjas. El cambio de tono es un degradado largo y suave. ── */
.site.ys-v2 .ys-zona-salvia{padding:20px 0;
  background:linear-gradient(180deg,var(--crema) 0%,#EFF0E4 230px,#EFF0E4 calc(100% - 230px),var(--crema) 100%)}
.site.ys-v2 .ys-zona-salvia::before{background:radial-gradient(60% 40% at 50% 15%,#ffffff66,transparent 70%)}
.site.ys-v2 .ys-zona-tierra{padding:20px 0;color:var(--ink-2);
  background:linear-gradient(180deg,var(--crema) 0%,var(--arena) 260px,var(--arena) calc(100% - 260px),var(--crema) 100%)}
.site.ys-v2 .ys-zona-tierra::before{background:radial-gradient(60% 40% at 50% 18%,#ffffff5c,transparent 70%)}
.site.ys-v2 .ys-fondo{opacity:.16;filter:blur(30px) saturate(.5) brightness(1.1);mix-blend-mode:multiply}
.site.ys-v2 .ys-zona-tierra .ys-fondo{opacity:.14}
.site.ys-v2 .ys-zona.con-fondo::after{opacity:.025}
/* ── «te suena»: frases en serif, líneas cálidas, un número pequeño en terracota ── */
.ys-v2.t2 .r-dolor{max-width:860px}
.ys-v2.t2 .r-dit,.ys-v2.t2 .r-dit:last-of-type{border-color:#4a3a2c22;font-size:clamp(21px,2.5cqw,30px);padding:30px 16px;color:var(--ink-2);font-weight:400}
.ys-v2.t2 .r-dcierre{opacity:.75;font-size:14.5px}
/* ── tu frase: bloque de arena con ornamento ── */
.ys-v2.t2 .s-philo{border:0;margin:56px auto 24px;max-width:960px;padding:64px 40px;background:var(--blanco);border-radius:10px;box-shadow:var(--sombra)}
.ys-v2.t2 .s-philo .orn{color:var(--salvia)}
.ys-v2.t2 .s-philo blockquote{color:var(--ink);font-size:clamp(26px,3.2cqw,40px);line-height:1.3}
.ys-v2.t2 .s-philo .by{opacity:.6}
/* ── los caminos: tarjetas claras ── */
.ys-v2.t2 .ys-card{background:var(--blanco);border:1px solid var(--linea);border-radius:10px;padding:28px 28px 24px;box-shadow:var(--sombra);color:var(--ink)}
.ys-v2.t2 .ys-card h3{color:var(--ink);font-size:23px;letter-spacing:0}
.ys-v2.t2 .ys-card p{opacity:.85;font-size:15px}
.ys-v2.t2 .ys-precio{color:var(--terra)}
.site.ys-v2 .ys-zona-tierra .ys-card{background:var(--blanco);border-color:var(--linea)}
/* ── las tarjetas de producto: un CARRUSEL de librería (D-2026-09-22-f y -g)
      22/09 tarde, Fede: «la sombra sale cortada, no hay animación, las portadas
      se ven horribles». Así que: la pista tiene aire propio para que la sombra
      no se recorte, la portada descansa sobre papel (sin el halo desenfocado,
      que quedaba sucio) y las tarjetas entran con una animación de scroll.
      Las portadas van de 0,75 a 1,15 de proporción, así que `contain` manda. ── */
.ys-v2.t2 .car{padding:0 30px;max-width:1180px;--car-gap:26px;--car-w:clamp(286px,calc((100cqw - 112px)/3),348px);--arw-top:150px}
/* el aire de la pista: sin él, overflow-x recorta la sombra de las tarjetas */
.ys-v2.t2 .car .track{align-items:stretch;padding:22px 26px 30px;margin:-22px -26px -12px;scroll-padding-left:26px}
.ys-v2.t2 .car .arw{background:var(--blanco);color:var(--terra);border:1px solid var(--linea);box-shadow:0 18px 34px -18px #4a3a2c80;width:46px;height:46px}
.ys-v2.t2 .car .arw:hover{background:var(--terra);color:var(--luz);border-color:var(--terra)}
.ys-v2.t2 .car .dots{color:var(--ink);margin-top:2px}
.ys-v2.t2 .car .dots button{background:var(--salvia);opacity:.3}
.ys-v2.t2 .car .dots button[aria-current="true"]{background:var(--terra);opacity:1}
.ys-v2.t2 .r-svc{display:flex;flex-direction:column;min-height:0;border:1px solid var(--linea);border-radius:18px;overflow:hidden;background:var(--blanco);box-shadow:0 24px 48px -34px #4a3a2c8c;color:var(--ink);transition:transform .4s cubic-bezier(.2,.7,.3,1),box-shadow .4s}
.ys-v2.t2 .r-svc:hover{transform:translateY(-6px);box-shadow:0 40px 70px -36px #4a3a2ca6}
/* la portada: descansa sobre papel, entera y con su sombra — como un librito en la mesa */
.ys-v2.t2 .r-svc .rim{aspect-ratio:1/1;min-height:0;border-bottom:1px solid var(--linea);
  background:linear-gradient(168deg,#FBF6EC 0%,var(--arena) 100%)}
.ys-v2.t2 .r-svc .rim::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 80% at 50% 0%,#ffffff5e,transparent 60%)}
.ys-v2.t2 .r-svc .rim .ph{inset:26px;width:calc(100% - 52px);height:calc(100% - 52px);object-fit:contain;object-position:center;
  border-radius:3px;filter:drop-shadow(0 4px 6px #4a3a2c2e) drop-shadow(0 22px 30px #4a3a2c3d);transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.ys-v2.t2 .r-svc:hover .rim .ph{transform:scale(1.035)}
.ys-v2.t2 .r-svc .rtx{padding:24px 26px 24px;justify-content:flex-start;flex:1}
.ys-v2.t2 .r-svc .r-num{color:var(--salvia);font-size:11px;letter-spacing:.3em;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.ys-v2.t2 .r-svc .r-num::after{content:'';flex:1;height:1px;background:var(--salvia);opacity:.4}
.ys-v2.t2 .r-svc h3{text-transform:none;letter-spacing:0;font-size:22px;line-height:1.2;color:var(--ink);margin-bottom:10px}
.ys-v2.t2 .r-svc .ben{color:var(--terra);font-size:17px;line-height:1.35;margin-bottom:12px}
.ys-v2.t2 .r-svc .desc{opacity:.82;font-size:14.5px;line-height:1.65;margin-bottom:0}
.ys-v2.t2 .r-svc .inc{opacity:.75;font-size:12px;letter-spacing:.02em}
.ys-v2.t2 .r-svc .inc::before{color:var(--salvia)}
.ys-v2.t2 .r-svc .quien{border-color:var(--linea);opacity:.75}
.ys-v2.t2 .r-svc .rfoot{margin-top:auto;padding-top:20px;justify-content:space-between;border-top:1px solid var(--linea);gap:14px}
.ys-v2.t2 .r-svc .pr{color:var(--ink);font-size:23px}
.ys-v2.t2 .r-svc .pr span{color:var(--ink);opacity:.55}
/* ── el texto plegado y su «Ver más» ── */
.ys-v2 .desc-w{margin-bottom:14px}
.ys-v2 .desc-w .desc{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.ys-v2 .desc-w.abierta .desc{display:block;overflow:visible}
.ys-v2 .ys-mas{margin-top:8px;padding:0;background:none;border:0;border-bottom:1px solid currentColor;color:var(--terra);font-family:var(--f-body);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;line-height:1.6}
.ys-v2 .ys-mas:hover{opacity:.7}
.ys-v2 .ys-mas:focus-visible{outline:2px solid var(--salvia);outline-offset:3px;border-radius:2px}
/* la animación del carrusel: las tarjetas entran y salen con suavidad.
   Solo donde el navegador sabe hacerlo (animation-timeline); en el resto, nada. */
@supports (animation-timeline: view()){
  @keyframes ys-entra{from{opacity:.3;transform:scale(.93)}18%,82%{opacity:1;transform:scale(1)}to{opacity:.3;transform:scale(.93)}}
  .ys-v2.t2 .car .track>*{animation:ys-entra linear both;animation-timeline:view(inline);animation-range:entry 0% exit 100%}
  .ys-v2.t2 .car .track>*:hover{animation:none}
}
@media (prefers-reduced-motion: reduce){
  .ys-v2.t2 .car .track>*{animation:none!important}
  .ys-v2.t2 .r-svc,.ys-v2.t2 .r-svc .rim .ph{transition:none}
}
.ys-v2.t2 .llamfila{margin-top:26px}
/* ── sobre Ale: retrato con marco terracota fino y aire ── */
.ys-v2.t2 .r-about{padding:100px 30px;gap:76px}
.ys-v2.t2 .r-about .phw::after{border-color:var(--terra);opacity:.7}
.ys-v2.t2 .r-about .ph{border-radius:4px;filter:saturate(.95)}
.ys-v2.t2 .r-about h2{color:var(--ink);text-transform:none;letter-spacing:0;font-size:clamp(30px,3.6cqw,46px)}
.ys-v2.t2 .r-about p{opacity:.88;font-size:16.5px;line-height:1.8}
/* ── el regalo: tarjeta clara, libro grande a la izquierda, formulario a la derecha ── */
.ys-v2.t2 .ys-regalo,.site.ys-v2 .ys-zona-tierra .ys-regalo{background:var(--blanco);color:var(--ink);border:1px solid var(--linea);border-radius:14px;box-shadow:var(--sombra);padding:52px;gap:52px;grid-template-columns:1fr 1fr}
.ys-v2.t2 .ys-regalo .s-kicker,.site.ys-v2 .ys-zona-tierra .ys-regalo .s-kicker{color:var(--terra)}
.ys-v2.t2 .ys-regalo h2{font-size:clamp(30px,3.6cqw,44px);color:var(--ink);line-height:1.1}
.ys-v2.t2 .ys-regalo p{opacity:.85;font-size:16px;line-height:1.75}
.ys-v2.t2 .ys-regalo-form{background:var(--arena);border-radius:10px;padding:28px;box-shadow:none;color:var(--ink)}
.ys-v2.t2 .ys-regalo-libro{grid-template-columns:96px 1fr;gap:18px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--linea)}
.ys-v2.t2 .ys-regalo-libro .ph{width:96px;height:128px;border-radius:6px;box-shadow:0 14px 28px -18px #4a3a2c99}
.ys-v2.t2 .ys-regalo-libro b{color:var(--ink);font-size:20px}
.ys-v2.t2 .ys-regalo-libro span{opacity:.75;font-size:13.5px}
.ys-v2.t2 .ys-form label{opacity:1;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.ys-v2.t2 .ys-form input:not([type=checkbox]),.ys-v2.t2 .ys-form textarea,.ys-v2.t2 .ys-form select{border-radius:6px;border-color:#4a3a2c33;background:#fff}
.ys-v2.t2 .ys-form .ys-check{text-transform:none;letter-spacing:0;font-size:13.5px}
/* ── preguntas: acordeón limpio ── */
.ys-v2.t2 .ys-faq-item,.ys-v2.t2 .ys-faq-item:last-child{border-color:var(--linea)}
.ys-v2.t2 .ys-faq-item summary{font-size:21px;color:var(--ink);padding:18px 34px 18px 0}
.ys-v2.t2 .ys-faq-item summary::after{color:var(--terra);top:16px}
.ys-v2.t2 .ys-faq-item p{opacity:.85;font-size:15.5px}
/* ── contacto: tarjeta clara sobre la arena ── */
.ys-v2.t2 .r-contact,.site.ys-v2 .ys-zona-tierra .r-contact{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;box-shadow:var(--sombra);color:var(--ink)}
.ys-v2.t2 .r-contact h2{color:var(--ink);text-transform:none;letter-spacing:0;font-size:clamp(28px,3.2cqw,40px)}
.ys-v2.t2 .r-contact .lead{opacity:.85}
.ys-v2.t2 .s-cline b,.site.ys-v2 .ys-zona-tierra .s-cline b,.ys-v2.t2 .r-hours h3,.site.ys-v2 .ys-zona-tierra .r-hours h3{color:var(--terra)}
.ys-v2.t2 .s-hrow{border-color:var(--linea)}
/* ── el pie: tierra oscura y cálida ── */
.ys-v2.t2 .r-footer{background:var(--oliva);color:#EFE4D2;margin-top:80px;padding-top:64px}
.ys-v2.t2 .r-footer a,.ys-v2.t2 .r-footer span,.ys-v2.t2 .r-footer .r-logo{color:#EFE4D2}
/* ── páginas interiores ── */
.ys-v2.t2 .r-pg{color:var(--ink)}
.ys-v2.t2 .pg-head h1,.ys-v2.t2 .pg-sobre h1,.ys-v2.t2 .pg-svc h1{color:var(--ink);letter-spacing:0}
.ys-v2.t2 .pg-lead{opacity:.85;font-size:17px;line-height:1.75}
.ys-v2.t2 .pg-quote,.ys-v2.t2 .pg-step,.ys-v2.t2 .pg-step:last-child,.ys-v2.t2 .pg-list li,.ys-v2.t2 .pg-list li:last-child,.ys-v2.t2 .pg-datos .fila{border-color:var(--linea)}
.ys-v2.t2 .pg-quote .orn,.ys-v2.t2 .pg-list li::before,.ys-v2.t2 .pg-svc .inc::before{color:var(--salvia)}
.ys-v2.t2 .pg-step .t,.ys-v2.t2 .pg-svc .quien b{color:var(--terra)}
.ys-v2.t2 .pg-svc .ben{color:var(--terra);border-color:var(--terra)}
.ys-v2.t2 .pg-rsv.linea{color:var(--ink);border-color:var(--terra)}
.ys-v2 .ys-bloque>h2,.ys-v2 .ys-prosa h2{letter-spacing:0;color:var(--ink)}
.ys-v2 .ys-prosa p,.ys-v2 .ys-historia p{opacity:.9;font-size:17px;line-height:1.8}
.ys-v2.t2 .ys-caja,.ys-v2.t2 .ys-caja:not(.ys-caja-b){background:var(--blanco);border:1px solid var(--linea);border-radius:10px;color:var(--ink);box-shadow:var(--sombra)}
.ys-v2.t2 .ys-caja-b,.site.ys-v2 .ys-zona-tierra .ys-caja-b{background:var(--oliva-2);color:#EFE4D2;border:0}
.ys-v2.t2 .ys-caja li::before,.ys-v2.t2 .ys-caja-b li::before{color:var(--salvia)}
.ys-v2.t2 .ys-frases blockquote{background:var(--blanco);border-left-color:var(--terra);border-radius:0 8px 8px 0;color:var(--ink);box-shadow:var(--sombra)}
.ys-v2.t2 .ys-tabla th{border-color:#4a3a2c33;opacity:.7}
.ys-v2.t2 .ys-tabla td{border-color:var(--linea)}
.ys-v2.t2 .ys-libro{background:var(--blanco);border-color:var(--linea);border-radius:10px;box-shadow:var(--sombra);color:var(--ink)}
.ys-v2.t2 .ys-libro-tx,.ys-v2.t2 .ys-libro h3{color:var(--ink)}
.ys-v2.t2 .ys-banda,.ys-v2.t2 .ys-hoy-card{background:var(--oliva-2);color:#EFE4D2;border-radius:14px}
.ys-v2.t2 .ys-banda .s-kicker,.ys-v2.t2 .ys-hoy-card .s-kicker{color:#E8C39A}
.ys-v2.t2 .ys-banda .pg-rsv,.ys-v2.t2 .ys-hoy-card .pg-rsv{background:var(--terra);color:var(--luz)}
.ys-v2.t2 .ys-zona-cierre{padding:64px 26px 80px}
.ys-v2.t2 .ys-precio-card{background:var(--blanco);border-color:var(--linea);border-radius:12px}
.ys-v2.t2 .ys-precio-card-b{border-color:var(--terra);box-shadow:0 0 0 3px #bf744833}
.ys-v2.t2 .ys-precio-n{color:var(--ink)}
.ys-v2.t2 .mhead{background:var(--crema);color:var(--ink);box-shadow:0 1px 0 var(--linea)}
.ys-v2.t2 .mburger{border-color:#4a3a2c33;color:var(--ink)}
.ys-v2.t2.pag-inicio .mhead{background:var(--oliva);color:var(--luz)}
.ys-v2.t2.pag-inicio .mburger{border-color:#ffffff55;color:var(--luz)}
/* la página de qigong y las fotos de página: esquinas suaves */
.ys-v2 .pg-sobre .foto img,.ys-v2 .pg-svc .foto img,.ys-v2 .pg-qigong .foto img,.ys-v2 .ys-foto-ancha{border-radius:8px}
/* ── móvil ── */
@container web (max-width:860px){
  .ys-v2.t2 .r-hero{padding:120px 22px 70px;min-height:0}
  .ys-v2.t2 .r-hero h1{font-size:38px}
  .ys-v2.t2 .r-sechead{padding:60px 18px 34px}
  .ys-v2.t2 .s-philo{margin:34px 18px 10px;padding:44px 24px;border-radius:8px}
  .site.ys-v2 .ys-zona-tierra{background:linear-gradient(180deg,var(--crema) 0%,var(--arena) 120px,var(--arena) calc(100% - 120px),var(--crema) 100%)}
  /* el carrusel en el móvil: una tarjeta por pantalla, centrada, con el mismo
     aire a los dos lados y un asomo de la siguiente que invita a arrastrar */
  .ys-v2.t2 .car{padding:0 18px;--car-w:calc(100cqw - 74px);--car-gap:14px;--arw-top:130px}
  .ys-v2.t2 .car .track{padding:18px 18px 26px;margin:-18px -18px -10px;scroll-padding-left:18px}
  .ys-v2.t2 .r-svc{border-radius:16px}
  .ys-v2.t2 .r-svc .rim .ph{inset:20px;width:calc(100% - 40px);height:calc(100% - 40px)}
  .ys-v2.t2 .r-svc .rtx{padding:22px 22px 22px}
  .ys-v2.t2 .r-svc h3{font-size:21px}
  .ys-v2.t2 .r-about{padding:56px 22px;gap:36px}
  /* EL REGALO EN MÓVIL: una sola columna. La piel v2 volvía a poner 1fr 1fr
     y se salía de la pantalla (Fede, 22/09 tarde: «está totalmente roto»). */
  .ys-v2.t2 .ys-regalo,.site.ys-v2 .ys-zona-tierra .ys-regalo{grid-template-columns:1fr;padding:30px 22px;gap:26px;border-radius:14px}
  .ys-v2.t2 .ys-regalo h2{font-size:31px}
  .ys-v2.t2 .ys-regalo-form{padding:20px}
  .ys-v2.t2 .ys-regalo-libro{grid-template-columns:76px 1fr;gap:14px}
  .ys-v2.t2 .ys-regalo-libro .ph{width:76px;height:102px}
  .ys-v2.t2 .ys-regalo-libro b{font-size:17px;line-height:1.25}
  .ys-v2.t2 .r-contact{padding:34px 22px;border-radius:14px}
  .ys-v2.t2 .r-footer{margin-top:50px;padding-top:44px}
  /* la cabecera del móvil: el botón se comía el nombre y salía «Yang Sh…»
     (medido: el nombre pedía 82 px y solo tenía 76) */
  .ys-v2.t2 .mhead{padding:10px 12px;gap:9px}
  .ys-v2.t2 .mhead .mbook{padding:9px 12px;font-size:10px;letter-spacing:.1em}
  /* el logo del pie cabía en 34cqw y salía «YANG S…» */
  .ys-v2 .s-footer .s-logotxt{max-width:min(340px,88cqw)}
  .ys-v2.t2 .s-footer .r-logo{font-size:18px;letter-spacing:.2em}
}
/* ══════════════════════════════════════════════════════════════
   EL POP-UP «¿HABLAMOS ANTES?» (22/09/2026 tarde)
   El marcado estaba en web.php desde el principio, pero NADIE le había
   escrito el CSS: `.lm-*` tenía 0 reglas (comprobado en testing), así que
   al pulsar el botón el formulario aparecía desnudo al final de la página
   en vez de abrirse encima. Aquí está el cristal que le faltaba.
   ══════════════════════════════════════════════════════════════ */
/* el modal vive FUERA de .site, donde no hay reset: se lo pone él */
.lm-fondo,.lm-fondo *{box-sizing:border-box}
.lm-fondo{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;
  background:#242b1fb8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  animation:lm-entra .22s ease-out;overflow-y:auto}
.lm-fondo[hidden]{display:none}
@keyframes lm-entra{from{opacity:0}to{opacity:1}}
@keyframes lm-sube{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.lm-caja{position:relative;width:min(520px,100%);max-height:calc(100vh - 40px);overflow-y:auto;
  background:#FFFCF7;color:#2F352A;border-radius:18px;padding:38px 34px 32px;
  box-shadow:0 50px 90px -40px #1a1f14cc;animation:lm-sube .3s cubic-bezier(.2,.7,.3,1);
  font-family:var(--f-body,system-ui)}
.lm-x{position:absolute;top:12px;right:14px;width:38px;height:38px;border:0;background:transparent;
  color:#2F352A;opacity:.45;font-size:26px;line-height:1;cursor:pointer;border-radius:50%;transition:.15s}
.lm-x:hover{opacity:1;background:#2f352a12}
.lm-caja h3{font-family:var(--f-head,Georgia,serif);font-size:27px;line-height:1.18;font-weight:400;margin:0 26px 10px 0;color:#2F352A}
.lm-caja .lm-p{font-size:15px;line-height:1.65;opacity:.8;margin:0 0 22px}
.lm-caja form{display:flex;flex-direction:column;gap:14px}
.lm-caja label{display:flex;flex-direction:column;gap:6px;font-size:11.5px;letter-spacing:.1em;
  text-transform:uppercase;color:#4A3A2C;font-weight:500}
.lm-caja input,.lm-caja textarea{font:inherit;font-size:15.5px;text-transform:none;letter-spacing:0;
  color:#2F352A;background:#fff;border:1px solid #4a3a2c33;border-radius:8px;padding:12px 13px;width:100%;box-sizing:border-box}
.lm-caja textarea{resize:vertical;min-height:84px;line-height:1.55}
.lm-caja input:focus,.lm-caja textarea:focus{outline:none;border-color:#7E8C62;box-shadow:0 0 0 3px #7e8c6230}
.lm-nota{margin:-8px 0 0;font-size:12.5px;opacity:.6}
.lm-check{display:block!important;position:relative;padding-left:30px;
  text-transform:none!important;letter-spacing:0!important;font-size:13.5px!important;font-weight:400!important;line-height:1.55;opacity:.85}
.lm-check input{position:absolute;left:0;top:2px;width:19px;height:19px;accent-color:#7E8C62}
.lm-check a{color:#BF7448;text-decoration:underline;text-underline-offset:2px}
.lm-enviar{margin-top:6px;background:#BF7448;color:#F8F3EA;border:0;border-radius:8px;padding:15px 22px;
  font:inherit;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;cursor:pointer;
  transition:background .18s;box-shadow:0 14px 26px -16px #bf7448aa}
.lm-enviar:hover{background:#A8623A}
.lm-enviar:disabled{opacity:.6;cursor:default}
.lm-gracias{font-size:16px;line-height:1.7;color:#2F352A;margin:0;padding:6px 0 4px}
@media (max-width:520px){
  .lm-fondo{padding:0;place-items:end stretch}
  .lm-caja{width:100%;max-height:92vh;border-radius:20px 20px 0 0;padding:30px 22px 26px}
  .lm-caja h3{font-size:24px}
}
@media (prefers-reduced-motion: reduce){ .lm-fondo,.lm-caja{animation:none} }

/* «¿Hablamos antes?» fuera de la portada va en tinta, no en claro */
.ys-v2 .llamfila .llam.clara,.ys-v2 .ys-zona-tierra .llam.clara,.ys-v2 .r-pg .llam.clara{color:var(--ink);opacity:.75}
.ys-v2.t2 .trust{font-size:11px}

/* ═══════════════ LA FICHA DEL EBOOK (22/09/2026, rehecha) ═══════════════
   La portada entera, como un libro sobre la mesa; el texto y el regalo al lado;
   los capítulos en su banda; «Otros ebooks» con el carrusel de la portada. */
.ebf{max-width:1180px;padding:56px 34px 40px;--acc:var(--eb-acento,#B59E7D)}
.ebf-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start}
.ebf-izq{position:sticky;top:96px;display:flex;flex-direction:column;align-items:center}
.ebf-libro{position:relative;margin:0;width:100%;box-sizing:border-box;padding:44px 40px 50px;border-radius:22px;
  background:radial-gradient(90% 70% at 50% 42%,color-mix(in srgb,var(--acc) 26%,transparent),transparent 72%),linear-gradient(170deg,#FBF6EC,var(--arena,#EEE1CB));
  box-shadow:inset 0 0 0 1px var(--linea,#0000001a)}
.ebf-portada{display:block;width:100%;height:auto;max-height:min(640px,72vh);object-fit:contain;margin:0 auto;border-radius:3px 6px 6px 3px;
  box-shadow:-1px 0 0 #00000014,0 2px 4px #4a3a2c24,0 18px 30px -8px #4a3a2c4d,0 44px 60px -30px #4a3a2c59}
.ebf-libro::after{content:'';position:absolute;left:40px;top:44px;bottom:50px;width:14px;pointer-events:none;border-radius:3px 0 0 3px;
  background:linear-gradient(90deg,#00000022,#ffffff26 40%,transparent)}
.ebf-sin{aspect-ratio:3/4;display:grid;place-items:center;font-size:54px;background:var(--blanco,#fff)}
.ebf-meta{margin:18px 0 0;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;opacity:.7;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.ebf-meta span{color:var(--acc)}
.ebf-der{padding-top:6px}
.ebf-der h1{font-family:var(--f-head);font-weight:500;font-size:clamp(34px,4.2vw,52px);line-height:1.06;margin:10px 0 18px;color:var(--ink,#2F352A)}
.ebf-ben{font-family:var(--f-head);font-style:italic;font-size:22px;line-height:1.35;color:var(--terra,#BF7448);margin:0 0 20px;padding-left:16px;border-left:2px solid var(--acc)}
.ebf-desc{font-size:16px;line-height:1.75;opacity:.88}
.ebf-desc p{margin:0 0 12px}
.ebf-para{margin:26px 0 30px;padding:20px 22px;border-radius:14px;background:color-mix(in srgb,var(--acc) 12%,var(--blanco,#FFFCF7));border:1px solid color-mix(in srgb,var(--acc) 28%,transparent)}
.ebf-para b{display:block;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:10px;color:var(--ink-2,#4A3A2C)}
.ebf-para ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ebf-para li{position:relative;padding-left:22px;font-size:15px;line-height:1.5}
.ebf-para li::before{content:'';position:absolute;left:2px;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--acc)}
.ebf-caja{margin-top:8px;padding:26px 26px 28px;border-radius:18px;background:var(--blanco,#FFFCF7);border:1px solid var(--linea,#0000001a);box-shadow:0 30px 60px -40px #4a3a2c80}
.ebf-precio{font-family:var(--f-head);font-size:34px;line-height:1;margin-bottom:16px;color:var(--ink,#2F352A)}
.ebf-precio span{display:block;font-family:var(--f-body);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin-top:6px}
.ebf .ebf-caja .ys-regalo-form{background:none;padding:0;border:0;box-shadow:none;margin:0}
.ebf-dentro{margin:96px auto 0;max-width:980px;text-align:center}
.ebf-dentro h2{font-family:var(--f-head);font-weight:500;font-size:clamp(28px,3.2vw,40px);margin:8px 0 34px}
.ebf-dentro ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;text-align:left;counter-reset:none}
.ebf-dentro ol li{display:flex;gap:16px;align-items:baseline;padding:16px 18px;border-radius:12px;background:var(--blanco,#FFFCF7);border:1px solid var(--linea,#0000001a);font-size:15.5px;line-height:1.45}
.ebf-dentro ol li span{font-family:var(--f-head);font-size:24px;line-height:1;color:var(--acc);min-width:30px}
.ebf-inc{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px;text-align:left}
.ebf-inc li{display:flex;gap:12px;align-items:center;font-size:14.5px;opacity:.9}
.ebf-inc .ys-inf{height:16px;flex:none}
.ebf-subir{display:inline-block;margin-top:34px}
.ebf-aviso{max-width:760px;margin:56px auto 0;text-align:center}
.ebf-otros{margin-top:84px}
.ebf-otros .r-sechead{padding:0 0 30px;text-align:center}
.ebf-otros .r-sechead h2{font-family:var(--f-head);font-weight:500;font-size:clamp(28px,3.2vw,40px);margin:8px 0 0}
@container web (max-width:860px){
  .ebf{padding:22px 18px 30px}
  .ebf-hero{grid-template-columns:minmax(0,1fr);gap:28px}
  .ebf-izq{position:static}
  .ebf-libro{padding:28px 26px 32px;max-width:420px;margin:0 auto}
  .ebf-libro::after{left:26px;top:28px;bottom:32px}
  .ebf-portada{max-height:none}
  .ebf-der h1{font-size:34px}
  .ebf-ben{font-size:19px}
  .ebf-caja{padding:22px 18px 24px}
  .ebf-dentro{margin-top:64px}
  .ebf-dentro ol,.ebf-inc{grid-template-columns:minmax(0,1fr)}
  .ebf-otros{margin-top:60px}
}
/* las tarjetas del carrusel: marco vertical para que la portada (casi siempre 3:4) se vea entera y grande */
.ys-v2.t2 .r-svc .rim{aspect-ratio:4/5;height:auto;min-height:0}
.ys-v2.t2 .r-svc .rim .ph{inset:22px;width:calc(100% - 44px);height:calc(100% - 44px)}
/* el aviso de la vista previa privada de un ebook (?ver=…) */
.ys-vista{position:sticky;top:0;z-index:30;background:#8E4227;color:#FDF1ED;text-align:center;font-size:13px;letter-spacing:.04em;padding:9px 16px}

/* ═══════════════ MEDICINA TRADICIONAL CHINA Y QIGONG CON ACUARELAS (23/09/2026) ═══════════════
   Ale: «las acuarelas más finas, no tan densas» y «falta luz». Fede: la foto de arriba de MTC fuera,
   la tabla de los cinco elementos no se leía, y en Qigong el ebook de qigong y sus acuarelas. */
.site .ys-trans{background:none}
/* la cabecera de MTC: los cinco elementos flotando en un arco */
.ys-mtc-arco{display:flex;justify-content:center;align-items:flex-end;gap:clamp(4px,2vw,28px);margin:6px auto 30px;max-width:900px;padding:0 10px}
.ys-mtc-arco img{width:clamp(58px,15vw,150px);height:auto;transform:translateY(calc(var(--k) * 0px));animation:ys-flota 8s ease-in-out infinite,ys-aparece 1.1s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--k) * -1.6s),calc(var(--k) * .12s)}
.ys-mtc-arco img:nth-child(2),.ys-mtc-arco img:nth-child(4){margin-bottom:26px}
.ys-mtc-arco img:nth-child(3){margin-bottom:44px}
@keyframes ys-flota{0%,100%{translate:0 0;rotate:-1.5deg}50%{translate:0 -8px;rotate:1.5deg}}
@keyframes ys-aparece{from{opacity:0;filter:blur(8px);scale:.9}to{opacity:1;filter:none;scale:1}}

/* la rueda de los cinco elementos */
.ys-bloque-5e .ys-nota{margin-top:22px}
.ys-5e{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:center;margin-top:26px}
.ys-5e-rueda{position:relative;width:min(100%,420px);aspect-ratio:1;margin:0 auto}
.ys-5e-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ys-5e-svg .c{fill:none;stroke:#4a3a2c1c;stroke-width:.6}
.ys-5e-svg .k{fill:none;stroke:#4a3a2c14;stroke-width:.5;stroke-dasharray:2 3}
.ys-5e-svg .g{fill:none;stroke:url(#none);stroke:var(--terra,#BF7448);stroke-width:1.1;stroke-linecap:round;stroke-dasharray:36 429;opacity:.55;transform-origin:100px 100px;animation:ys-gira 14s linear infinite}
@keyframes ys-gira{to{transform:rotate(360deg)}}
/* cada elemento en su vértice: Fuego arriba, en el sentido del reloj (Madera a la izquierda de arriba) */
.ys-5e-b{--ang:calc(-90deg + (var(--p) - 1) * 72deg);position:absolute;left:50%;top:50%;width:27%;aspect-ratio:1;margin:-13.5% 0 0 -13.5%;
  transform:rotate(var(--ang)) translate(137%) rotate(calc(-1 * var(--ang)));border:0;border-radius:50%;cursor:pointer;padding:6px;
  background:radial-gradient(circle,#FFFDF8 55%,#FFFDF800 72%);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:scale .35s cubic-bezier(.2,.7,.3,1),filter .35s}
.ys-5e-b img{width:88%;height:auto;transition:scale .5s cubic-bezier(.2,.7,.3,1)}
.ys-5e-b span{font-family:var(--f-head);font-size:15px;margin-top:-4px;color:var(--ink,#2F352A)}
.ys-5e-b:hover img,.ys-5e-b.on img{scale:1.12}
.ys-5e-b.on{filter:drop-shadow(0 10px 18px #4a3a2c33)}
.ys-5e-b.on span{font-weight:600}
.ys-5e-b:focus-visible{outline:2px solid var(--terra,#BF7448);outline-offset:2px}
.ys-5e-b::after{content:'';position:absolute;inset:6%;border-radius:50%;border:1.5px solid var(--el);opacity:0;scale:.85;transition:.35s}
.ys-5e-b.on::after{opacity:.55;scale:1}
/* la ficha */
.ys-5e-fichas{display:grid}
.ys-5e-f{grid-area:1/1;display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:start;padding:26px 26px 24px;border-radius:22px;
  background:linear-gradient(150deg,#FFFDF8 20%,var(--el-velo) 100%);border:1px solid var(--el-borde);box-shadow:0 30px 60px -44px #4a3a2c80;
  opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .5s,transform .5s cubic-bezier(.2,.7,.3,1),visibility .5s}
.ys-5e-f.on{opacity:1;visibility:visible;transform:none}
.ys-5e-im img{width:100%;height:auto}
.ys-5e-f h3{font-family:var(--f-head);font-size:34px;font-weight:500;margin:0 0 12px;color:var(--el)}
.ys-5e-f dl{margin:0;display:grid;gap:10px}
.ys-5e-f dl div{display:grid;grid-template-columns:92px 1fr;gap:10px;align-items:baseline;padding-bottom:9px;border-bottom:1px dashed var(--el-borde)}
.ys-5e-f dl div:last-child{border-bottom:0;padding-bottom:0}
.ys-5e-f dt{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--el);opacity:.9}
.ys-5e-f dd{margin:0;font-size:16px;line-height:1.45;color:var(--ink,#2F352A)}
.ys-el-madera{--el:#5E7F45;--el-velo:#E6EEDB;--el-borde:#5E7F4533}
.ys-el-fuego{--el:#C4553A;--el-velo:#F8E2D8;--el-borde:#C4553A33}
.ys-el-tierra{--el:#A87A2A;--el-velo:#F4E8CF;--el-borde:#A87A2A38}
.ys-el-metal{--el:#6F7A86;--el-velo:#ECEEF0;--el-borde:#6F7A8638}
.ys-el-agua{--el:#2F5A86;--el-velo:#DDE8F2;--el-borde:#2F5A8633}
/* sin JavaScript (o en el editor antes de engancharse): las cinco fichas una debajo de otra */
.ys-5e:not(.vivo) .ys-5e-fichas{gap:14px}
.ys-5e:not(.vivo) .ys-5e-f{grid-area:auto;opacity:1;visibility:visible;transform:none}
@container web (max-width:860px){
  .ys-5e{grid-template-columns:1fr;gap:18px}
  .ys-5e-rueda{width:min(100%,330px)}
  .ys-5e-b span{font-size:13px}
  .ys-5e-f{grid-template-columns:78px 1fr;padding:20px 18px;gap:14px}
  .ys-5e-f h3{font-size:28px}
  .ys-5e-f dl div{grid-template-columns:78px 1fr}
  .ys-5e-f dd{font-size:15px}
}

/* QIGONG: Ale en acuarela arriba, la postura Wuji dibujada, los tres movimientos */
.ys-qg-hero .foto{display:flex;align-items:flex-end;justify-content:center;background:radial-gradient(70% 60% at 50% 60%,#E4EDDD 0%,#F3EEE3 55%,transparent 80%);border-radius:28px}
.site .ys-qg-hero .foto img.ys-qg-ale{height:auto!important;max-height:560px;width:auto;max-width:100%;object-fit:contain;animation:ys-aparece 1.4s cubic-bezier(.2,.7,.2,1) both}
.ys-qg-lado{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:34px;align-items:start}
.ys-qg-lado>img{width:100%;height:auto;position:sticky;top:110px}
.ys-qg-mov-intro{max-width:640px}
.ys-qg-mov{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.ys-qg-mov article{position:relative;padding:18px 20px 22px;border-radius:22px;background:linear-gradient(170deg,#FFFDF8,#F1F4EA);border:1px solid #7E8C6226;box-shadow:0 26px 50px -40px #4a3a2c80;
  transition:transform .45s cubic-bezier(.2,.7,.3,1),box-shadow .45s}
.ys-qg-mov article:hover{transform:translateY(-5px);box-shadow:0 36px 60px -40px #4a3a2c99}
.ys-qg-mov img{width:100%;aspect-ratio:1;height:auto;object-fit:contain;transition:scale .6s cubic-bezier(.2,.7,.3,1)}
.ys-qg-mov article:hover img{scale:1.04}
.ys-qg-mov .n{position:absolute;top:16px;left:18px;font-family:var(--f-head);font-size:24px;color:var(--salvia,#7E8C62)}
.ys-qg-mov h3{font-family:var(--f-head);font-weight:500;font-size:23px;margin:6px 0 6px}
.ys-qg-mov p{margin:0;font-size:15px;line-height:1.55;opacity:.85}
@container web (max-width:860px){
  .ys-qg-lado{grid-template-columns:1fr;gap:12px}
  .ys-qg-lado>img{position:static;width:min(60%,200px);margin:0 auto}
  .ys-qg-mov{grid-template-columns:1fr}
  .site .ys-qg-hero .foto img.ys-qg-ale{max-height:420px}
}
@media (prefers-reduced-motion:reduce){ .ys-mtc-arco img,.ys-5e-svg .g,.site .ys-qg-hero .foto img.ys-qg-ale{animation:none} }

/* ═══════════════ MÁS LUZ Y MÁS ALEGRÍA (23/09/2026) ═══════════════
   Ale: «falta luz y falta alegría, es todo un poco demasiado denso». Sin tocar la estructura:
   papel más claro, la cabecera de la portada en luz (antes, bosque oscuro con velo oliva),
   el pie y las cajas oscuras en tonos de arena y salvia, manchas de acuarela suaves detrás de
   las cabeceras, y todo aparece al bajar, despacio (web-publico.js · html.ys-anim). */
.site.ys-v2{--crema:#FBF6EE;--luz:#FFFBF4;--arena:#F3E7D4;background:var(--crema)}
/* la cabecera de la portada, en luz */
.ys-v2.t2 .r-hero{background:linear-gradient(180deg,#FFF8EE 0%,var(--crema) 100%)}
.ys-v2.t2 .r-hero .ph{opacity:.38;filter:saturate(.9) brightness(1.08)}
.ys-v2.t2 .r-hero::before{background:radial-gradient(70% 60% at 20% 20%,#F6D9C3aa,transparent 70%),radial-gradient(60% 60% at 85% 40%,#DDE8CFaa,transparent 70%),linear-gradient(180deg,#FFF9F0d9 0%,#FFF9F099 45%,var(--crema) 100%)}
.site.ys-v2.t2 .r-hero h1,.site.ys-v2.t2 .r-hero .sub,.site.ys-v2.t2 .r-hero .trust{color:var(--ink);text-shadow:none}
.site.ys-v2.t2 .r-hero .s-kicker,.site.ys-v2.t2 .r-hero .kick2{color:var(--terra);text-shadow:none}
.ys-v2.t2 .r-hero .r-cta.line{border-color:var(--terra);color:var(--terra-2)}
.ys-v2.t2.pag-inicio .r-nav,.ys-v2.t2.pag-inicio .r-nav a,.ys-v2.t2.pag-inicio .r-nav span{color:var(--ink)}
.ys-v2.t2.pag-inicio .r-links .on,.ys-v2.t2.pag-inicio .r-book{color:var(--terra-2);border-color:var(--terra)}
.ys-v2.t2.pag-inicio .r-book:hover{background:var(--terra);color:#fff}
.ys-v2.t2.pag-inicio .mhead{background:#FFF9F0ee;color:var(--ink)}
.ys-v2.t2.pag-inicio .mburger{border-color:var(--linea);color:var(--ink)}
/* el pie y las cajas oscuras, en claro */
.ys-v2.t2 .r-footer{background:linear-gradient(180deg,#F1EADB 0%,#E7EBDD 100%);color:var(--ink)}
.ys-v2.t2 .r-footer a,.ys-v2.t2 .r-footer span,.ys-v2.t2 .r-footer .r-logo,.ys-v2.t2 .r-footer p{color:var(--ink)}
.ys-v2.t2 .ys-caja-b,.site.ys-v2 .ys-zona-tierra .ys-caja-b{background:linear-gradient(160deg,#EEF2E6,#E4EAD8);color:var(--ink);border:1px solid #7E8C6233}
.ys-v2.t2 .ys-caja-b h3,.ys-v2.t2 .ys-caja-b li{color:var(--ink)}
/* manchas de acuarela detrás de las cabeceras de las páginas interiores */
.site.ys-v2 .pg{position:relative}
.site.ys-v2 .pg::before{content:'';position:absolute;left:50%;top:-40px;width:min(1100px,140%);height:520px;translate:-50% 0;z-index:-1;pointer-events:none;
  background:radial-gradient(38% 50% at 22% 40%,#F7DCC8b0,transparent 70%),radial-gradient(34% 46% at 78% 30%,#DDE9D0b0,transparent 70%),radial-gradient(30% 40% at 55% 70%,#DCE9EF80,transparent 70%);
  filter:blur(10px);animation:ys-respira 24s ease-in-out infinite alternate}
@keyframes ys-respira{to{transform:translate3d(2%,-2%,0) scale(1.05)}}
.site.ys-v2 .siteFrame,.site.ys-v2{isolation:isolate}
/* aparecer al bajar: solo si el JavaScript ha encendido html.ys-anim (sin él, todo se ve) */
html.ys-anim .site .ys-anim-o{opacity:0;transform:translateY(22px);filter:blur(4px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1),filter .9s}
html.ys-anim .site .ys-anim-o.visto{opacity:1;transform:none;filter:none}
/* los botones principales, un brillo que pasa despacio */
.ys-v2.t2 .pg-rsv.grande,.ys-v2.t2 .r-cta:not(.line){position:relative;overflow:hidden}
.ys-v2.t2 .pg-rsv.grande::after,.ys-v2.t2 .r-cta:not(.line)::after{content:'';position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,#ffffff55,transparent);transform:skewX(-18deg);animation:ys-brillo 6s ease-in-out infinite}
@keyframes ys-brillo{0%,70%{left:-60%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){
  .site.ys-v2 .pg::before,.ys-v2.t2 .pg-rsv.grande::after,.ys-v2.t2 .r-cta:not(.line)::after{animation:none}
  html.ys-anim .site .ys-anim-o{opacity:1;transform:none;filter:none;transition:none}
}

/* ═══════════════ LAS ESCENAS: ALE EN ACUARELA EN SUS PAISAJES (23/09/2026) ═══════════════
   Fede: «darle muchísima vida a toda la web», Ale en el campo, la montaña, el mar, la playa, un jardín.
   · .ys-esc-v  vídeo en bucle; el papel del vídeo es blanco puro y se funde con la página (multiply).
   · .ys-esc-i  acuarela con fondo transparente, flotando despacio.
   · Al entrar en pantalla, la acuarela «se pinta» desde el centro (máscara que crece: --esc-r).
   · Detrás, una mancha de color del paisaje que respira.
   Sin JavaScript todo se ve quieto y entero; con movimiento reducido, sin animación y sin vídeo. */
@property --esc-r{syntax:'<percentage>';inherits:false;initial-value:220%}
.site .ys-esc{--esc-fin:220%;--esc-c:#EFE6D6;position:relative;margin:0;display:block}
.site .ys-esc-v{--esc-fin:100%}
.site .ys-esc::before{content:'';position:absolute;inset:6% 4%;border-radius:50%;background:radial-gradient(closest-side,var(--esc-c),transparent);
  filter:blur(18px);opacity:.75;pointer-events:none;animation:ys-esc-halo 11s ease-in-out infinite alternate}
.site .ys-esc-m{position:relative;display:block;width:100%;height:auto;background:none;
  --esc-r:var(--esc-fin);
  -webkit-mask-image:radial-gradient(50% 50% at 50% 50%,#000 calc(var(--esc-r) * .7),transparent var(--esc-r));
          mask-image:radial-gradient(50% 50% at 50% 50%,#000 calc(var(--esc-r) * .7),transparent var(--esc-r))}
.site .ys-esc.pinta .ys-esc-m{transition:--esc-r 2.4s cubic-bezier(.2,.7,.2,1)}
.site .ys-esc-v .ys-esc-m{mix-blend-mode:multiply;object-fit:cover}
.site .ys-esc-i .ys-esc-m{animation:ys-esc-flota 10s ease-in-out infinite}
html.ys-esc .site .ys-esc:not(.pinta) .ys-esc-m{--esc-r:0%}
.ys-esc-mar{--esc-c:#CFE7E5}.ys-esc-playa{--esc-c:#F7DDC9}.ys-esc-montana{--esc-c:#E3E2F2}
.ys-esc-campo{--esc-c:#F4E4C2}.ys-esc-jardin{--esc-c:#ECDDF0}.ys-esc-olivo{--esc-c:#E2EBD1}
@keyframes ys-esc-flota{0%,100%{translate:0 0;rotate:-.6deg}50%{translate:0 -10px;rotate:.6deg}}
@keyframes ys-esc-halo{from{transform:scale(.94) translate(-2%,1%)}to{transform:scale(1.06) translate(2%,-1%)}}

/* la portada (/home): el texto a la izquierda, Ale en el mar a la derecha */
.ys-v2.t2 .r-hero.con-escena{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:10px 30px;align-items:center;text-align:left;
  padding-left:max(30px,calc((100% - 1260px) / 2));padding-right:max(20px,calc((100% - 1260px) / 2))}
.ys-v2.t2 .r-hero.con-escena>.ph{display:none}
.ys-v2.t2 .r-hero.con-escena .r-hero-inner{max-width:560px}
.ys-v2.t2 .r-hero.con-escena .sub{margin-left:0}
.ys-v2.t2 .r-hero.con-escena .r-ctas{justify-content:flex-start}
.ys-v2.t2 .r-hero.con-escena .trust{justify-content:flex-start}
.ys-esc-hero{width:100%;max-width:760px;justify-self:center}
/* la cita de la portada: Ale meditando entre flores, encima */
.ys-esc-philo{width:min(300px,70%);margin:0 auto 6px!important}
/* el regalo de la portada: Ale leyendo bajo el olivo, bajo el texto */
.ys-esc-regalo{width:min(380px,100%);margin:18px 0 -10px!important}
/* texto + escena, lado a lado; la escena se queda quieta mientras se lee */
.site .ys-con-esc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:34px;align-items:start}
.site .ys-con-esc>.ys-esc{position:sticky;top:96px}
.site .ys-bloque.ys-historia.ys-con-esc,.site .ys-bloque-esc{max-width:1040px}
.site .ys-esc-peq{max-width:300px;justify-self:center}
.site .ys-esc-centro{width:min(560px,100%);margin:0 auto 10px!important}
.site .ys-esc-cab{width:min(820px,100%);margin:-6px auto 10px!important}
/* qigong: la montaña ocupa la foto de la cabecera */
.ys-qg-hero .foto .ys-esc-qg{width:min(100%,430px);margin:0 auto}
@container web (max-width:860px){
  .ys-v2.t2 .r-hero.con-escena{grid-template-columns:1fr;text-align:center;padding:110px 18px 40px}
  .ys-v2.t2 .r-hero.con-escena .sub{margin:0 auto 26px}
  .ys-v2.t2 .r-hero.con-escena .r-ctas,.ys-v2.t2 .r-hero.con-escena .trust{justify-content:center}
  .ys-esc-hero{max-width:520px;margin-top:4px!important}
  .site .ys-con-esc{grid-template-columns:1fr;gap:6px}
  .site .ys-con-esc>.ys-esc{position:relative;top:auto;order:-1;width:min(100%,460px);justify-self:center}
  .site .ys-esc-peq{max-width:220px}
  .ys-esc-regalo{margin:12px auto -6px!important}
}
@media (prefers-reduced-motion:reduce){
  .site .ys-esc::before,.site .ys-esc-i .ys-esc-m{animation:none}
  .site .ys-esc.pinta .ys-esc-m{transition:none}
}
/* la portada en luz: «¿Hablamos antes?» ya no puede ir en blanco */
.ys-v2.t2 .r-hero .llam{color:var(--terra-2,#8E4227);text-shadow:none;opacity:.9}

/* ═══════════════ LOS COLORES DE LOS CINCO ELEMENTOS (23/09/2026, tarde) ═══════════════
   Fede: «los colores de los cinco elementos están increíbles, el color y el degradado».
   · METAL  (#6F7A86 · velo #ECEEF0) → el fondo general de la web: limpio, frío, deja brillar lo demás.
   · AGUA, MADERA, TIERRA → las secciones (bandas, cajas, citas, regalo, pie), con degradados
     de varios tipos: lineal en diagonal, circular, desde un lado.
   · FUEGO  (#C4553A · velo #F8E2D8) → los botones que se pulsan (CTA).
   Es la última capa: se pinta encima de la piel v2 sin tocar la estructura. */
.site.ys-v2{
  --madera:#5E7F45;--madera-v:#E6EEDB;--fuego:#C4553A;--fuego-2:#A8432C;--fuego-v:#F8E2D8;
  --tierra:#A87A2A;--tierra-v:#F4E8CF;--metal:#6F7A86;--metal-v:#ECEEF0;--agua:#2F5A86;--agua-v:#DDE8F2;
  --papel:#FFFDF8;--crema:#F3F4F3;--terra:var(--fuego);--terra-2:var(--fuego-2);
  --ficha:linear-gradient(150deg,var(--papel) 20%,var(--metal-v) 100%);
  background:radial-gradient(120% 70% at 50% 0%,var(--papel) 0%,#FFFDF800 60%),linear-gradient(180deg,#F7F7F5 0%,var(--metal-v) 100%)}
/* las manchas detrás de las cabeceras: agua, madera y tierra */
.site.ys-v2 .pg::before{background:radial-gradient(38% 50% at 22% 40%,#DDE8F2d9,transparent 70%),radial-gradient(34% 46% at 78% 30%,#E6EEDBd9,transparent 70%),radial-gradient(30% 40% at 55% 72%,#F4E8CFb3,transparent 70%)}
/* la portada: metal con una marea de agua detrás de Ale en el mar */
.ys-v2.t2 .r-hero{background:radial-gradient(55% 70% at 78% 45%,var(--agua-v) 0%,#DDE8F200 70%),linear-gradient(180deg,var(--papel) 0%,#F3F4F3 100%)}
.ys-v2.t2 .r-hero::before{background:radial-gradient(60% 55% at 12% 18%,#F8E2D880,transparent 70%),linear-gradient(180deg,#FFFDF800 60%,#F3F4F3 100%)}
/* las bandas: salvia → MADERA (degradado desde la izquierda) · tierra → TIERRA (circular) */
.site.ys-v2 .ys-zona-salvia{background:radial-gradient(90% 60% at 0% 50%,#E6EEDBcc 0%,#E6EEDB00 70%),linear-gradient(180deg,#F3F4F300 0%,#EEF2E7 240px,#EEF2E7 calc(100% - 240px),#F3F4F300 100%)}
.site.ys-v2 .ys-zona-tierra{color:var(--ink-2);background:radial-gradient(70% 55% at 50% 50%,#F4E8CFf2 0%,#F4E8CF00 75%),linear-gradient(180deg,#F3F4F300 0%,#F6EEDD 240px,#F6EEDD calc(100% - 240px),#F3F4F300 100%)}
/* la cita de la portada: una ficha de madera · el regalo: una ficha de agua */
.ys-v2.t2 .s-philo{background:linear-gradient(150deg,var(--papel) 20%,var(--madera-v) 100%);border:1px solid #5E7F4533;box-shadow:0 30px 60px -44px #5E7F4599}
.ys-v2.t2 .s-philo .orn{color:var(--madera)}
.site.ys-v2 .ys-regalo,.site.ys-v2 .ys-zona-tierra .ys-regalo{background:linear-gradient(150deg,var(--papel) 20%,var(--agua-v) 100%);color:var(--ink);border:1px solid #2F5A8633;box-shadow:0 34px 70px -44px #2F5A8699}
.site.ys-v2 .ys-regalo h2{color:var(--agua)}
.site.ys-v2 .ys-regalo .s-kicker,.site.ys-v2 .ys-zona-tierra .ys-regalo .s-kicker{color:var(--agua)}
.site.ys-v2 .ys-regalo-form{background:#FFFDF8b3;border-color:#2F5A8622}
/* las tarjetas: fichas de metal; los tres tesoros y los pasos respiran igual */
.ys-v2.t2 .ys-card,.site.ys-v2 .ys-zona-tierra .ys-card{background:var(--ficha);border:1px solid #6F7A8633;box-shadow:0 26px 52px -40px #6F7A86b3;color:var(--ink)}
.ys-v2.t2 .r-svc{border-color:#6F7A8633;box-shadow:0 24px 48px -34px #6F7A86a6}
.ys-v2.t2 .r-svc .rim{background:radial-gradient(circle at 50% 45%,var(--papel) 30%,var(--metal-v) 100%)}
/* qué hago y qué no · qué puede y qué no: agua para el sí, madera para el no */
.ys-v2.t2 .ys-caja:not(.ys-caja-b),.site.ys-v2 .ys-caja{background:linear-gradient(150deg,var(--papel) 20%,var(--agua-v) 100%);border:1px solid #2F5A8629;color:var(--ink)}
.site.ys-v2 .ys-caja h3{color:var(--agua)}
.ys-v2.t2 .ys-caja-b,.site.ys-v2 .ys-zona-tierra .ys-caja-b{background:linear-gradient(150deg,var(--papel) 20%,var(--madera-v) 100%);border:1px solid #5E7F4533;color:var(--ink)}
.ys-v2.t2 .ys-caja-b h3{color:var(--madera)}
/* los movimientos de qigong: madera */
.site.ys-v2 .ys-qg-mov article{background:linear-gradient(170deg,var(--papel) 25%,var(--madera-v) 100%);border-color:#5E7F4533}
.site.ys-v2 .ys-qg-mov .n{color:var(--madera)}
/* los números y viñetas en madera; los kickers en fuego */
.ys-v2.t2 .r-sechead .s-kicker::after{background:var(--madera)}
/* el pie: madera que sube desde abajo */
.ys-v2.t2 .r-footer{background:radial-gradient(80% 90% at 50% 100%,var(--madera-v) 0%,#E6EEDB00 75%),linear-gradient(180deg,#F3F4F3 0%,#EDF1E6 100%);color:var(--ink)}
/* ── FUEGO: todo lo que se pulsa ── */
.ys-v2.t2 .r-cta:not(.line),.ys-v2.t2 .pg-rsv:not(.linea),.ys-v2.t2 .ys-regalo .pg-rsv,.ys-v2.t2 .ys-regalo button[type=submit],.site.ys-v2 .ys-form button[type=submit]{
  background:linear-gradient(135deg,var(--fuego) 0%,#D9785C 100%);color:#fff;border:0;box-shadow:0 14px 28px -16px #C4553Acc}
.ys-v2.t2 .r-cta:not(.line):hover,.ys-v2.t2 .pg-rsv:not(.linea):hover,.site.ys-v2 .ys-form button[type=submit]:hover{background:linear-gradient(135deg,var(--fuego-2) 0%,var(--fuego) 100%);filter:none}
.ys-v2.t2 .r-cta.line,.ys-v2.t2 .pg-rsv.linea,.ys-v2.t2 .ys-zona-salvia .r-cta.line,.ys-v2.t2 .ys-zona-tierra .r-cta.line,.ys-v2.t2 .r-pg .r-cta.line{border-color:var(--fuego);color:var(--fuego-2);background:transparent}
.ys-v2.t2 .r-book,.ys-v2.t2.pag-inicio .r-book,.ys-v2.t2 .r-rsv{border-color:var(--fuego);color:var(--fuego-2)}
.ys-v2.t2 .r-book:hover,.ys-v2.t2.pag-inicio .r-book:hover,.ys-v2.t2 .r-rsv:hover{background:var(--fuego);color:#fff}
.ys-v2.t2 .r-more,.ys-v2 .ys-link{color:var(--fuego-2);border-color:var(--fuego)}
/* la cabecera de Alejandra con su vídeo */
.site .pg-sobre.con-video .foto{background:none}
.site .ys-ale-video{display:block;width:auto;max-width:100%;height:auto;max-height:80vh;margin:0 auto;aspect-ratio:9/16;border-radius:18px;background:#1f241c;box-shadow:0 30px 60px -34px #2F5A8699;object-fit:cover}
/* las páginas interiores van enteras dentro de una banda: ahí manda el METAL (el fondo general), no la madera */
.site.ys-v2 .ys-zona-cabecera{background:none}
.ys-v2.t2.pag-inicio .r-nav a.r-book,.ys-v2.t2 .r-nav a.r-book{color:var(--fuego-2);border-color:var(--fuego)}
.ys-v2.t2.pag-inicio .r-nav a.r-book:hover,.ys-v2.t2 .r-nav a.r-book:hover{background:var(--fuego);color:#fff}

/* ═══════════════ UN SOLO FONDO DE METAL Y BLOQUES QUE FLOTAN (23/09/2026, noche) ═══════════════
   Fede: «en la web quiero que sea toda con el efecto metal… mantenemos todo el fondo de metal y así
   no hay unos cortes abruptos… los diferentes bloques de otro color, flotantes».
   · El fondo: un único degradado de metal de arriba abajo. Las bandas, las fotos de fondo de las
     zonas, la portada y el pie dejan de pintar su propio fondo: ya no hay cortes.
   · Los bloques de color flotan encima, redondeados y con sombra:
       MADERA → las citas («Todo es energía…», «Nuestro cuerpo ha nacido para ser sano…»)
       AGUA   → los ebooks y el regalo
       TIERRA → «¿Hablamos?»
   · Todo lo demás (tarjetas, cajas) en papel y metal, sin más colores. El FUEGO, solo en lo que se pulsa. */
.site.ys-v2.t2{background:radial-gradient(120% 40% at 50% 0%,var(--papel) 0%,#FFFDF800 70%),linear-gradient(180deg,#F8F8F6 0%,#F1F2F2 35%,var(--metal-v) 70%,#E6E9EC 100%)}
.site.ys-v2.t2 .ys-zona,.site.ys-v2.t2 .ys-zona-salvia,.site.ys-v2.t2 .ys-zona-tierra,.site.ys-v2.t2 .ys-zona-cabecera,
.site.ys-v2.t2 .r-hero,.site.ys-v2.t2 .r-footer{background:none}
.site.ys-v2.t2 .r-hero::before,.site.ys-v2.t2 .pg::before{background:none}
.site.ys-v2.t2 .ys-fondo,.site.ys-v2.t2 .ys-fondo-btn{display:none}
.site.ys-v2.t2 .r-footer{border-top:1px solid #6F7A861f}
/* el molde de un bloque flotante */
.site.ys-v2.t2{--flota-sombra:0 1px 0 #fff inset,0 50px 90px -60px var(--flota-c,#6F7A86),0 18px 40px -34px #2F352A40}
.site.ys-v2.t2 .pag-flota,
.site.ys-v2.t2.pag-inicio #productos,
.site.ys-v2.t2 .ys-zona-cierre .ys-zona-in,
.site.ys-v2.t2 .ys-bloque-ancho,
.site.ys-v2.t2 .r-contact{position:relative;border-radius:28px;box-shadow:var(--flota-sombra);
  background:linear-gradient(150deg,var(--papel) 18%,var(--flota-v) 100%);border:1px solid color-mix(in srgb,var(--flota-c) 20%,transparent)}
/* agua: los ebooks de la portada y el bloque del ebook en qigong */
.site.ys-v2.t2.pag-inicio #productos,.site.ys-v2.t2 .ys-bloque-ancho{--flota-c:var(--agua);--flota-v:var(--agua-v)}
.site.ys-v2.t2.pag-inicio #productos{box-sizing:border-box;max-width:1180px;margin:0 auto;padding:clamp(40px,6vw,80px) clamp(16px,3vw,40px);overflow:hidden}
.site.ys-v2.t2.pag-inicio #productos .s-kicker{color:var(--agua)}
.site.ys-v2.t2 .ys-bloque-ancho{padding:clamp(28px,4vw,48px)}
.site.ys-v2.t2 .ys-bloque-ancho .ys-regalo{background:none;border:0;box-shadow:none;padding:0}
/* madera: el cierre con la cita de cada página interior */
.site.ys-v2.t2 .ys-zona-cierre{width:auto;margin:70px auto 20px;padding:0 20px;max-width:1040px}
.site.ys-v2.t2 .ys-zona-cierre .ys-zona-in{--flota-c:var(--madera);--flota-v:var(--madera-v);padding:clamp(40px,6vw,70px) clamp(20px,5vw,60px)}
.site.ys-v2.t2 .ys-zona-cierre .pg-quote .orn,.site.ys-v2.t2 .ys-zona-cierre .ys-inf{color:var(--madera)}
/* tierra: ¿Hablamos? */
.site.ys-v2.t2 .r-contact{--flota-c:var(--tierra);--flota-v:var(--tierra-v)}
.site.ys-v2.t2 .r-contact .s-kicker,.site.ys-v2.t2 .r-contact h3{color:var(--tierra)}
/* la cita de la portada ya es madera; sombra de bloque flotante como los demás */
.ys-v2.t2 .s-philo{--flota-c:var(--madera);border-radius:28px;box-shadow:var(--flota-sombra)}
.site.ys-v2.t2 .ys-regalo{--flota-c:var(--agua);border-radius:28px;box-shadow:var(--flota-sombra)}
/* menos colores: las cajas de «puede / no puede» y «hago / no hago» en papel y metal; el título conserva su color */
.ys-v2.t2 .ys-caja:not(.ys-caja-b),.site.ys-v2.t2 .ys-caja,.ys-v2.t2 .ys-caja-b,.site.ys-v2.t2 .ys-zona-tierra .ys-caja-b{background:var(--ficha);border:1px solid #6F7A8629}
@container web (max-width:700px){
  .site.ys-v2.t2.pag-inicio #productos{margin:0 10px;border-radius:22px;padding:36px 12px}
  .site.ys-v2.t2 .ys-zona-cierre{margin:50px auto 10px;padding:0 12px}
  .site.ys-v2.t2 .ys-zona-cierre .ys-zona-in,.site.ys-v2.t2 .r-contact,.site.ys-v2.t2 .ys-bloque-ancho{border-radius:22px}
}

/* ═══════════════ LA PORTADA, REORDENADA (23/09/2026, noche) ═══════════════
   Fede: los ebooks sueltos sobre el fondo (su ficha de texto en agua), fuera «Empieza por lo gratis»
   y la fila de «sin permanencia…», dos botones en la portada, «te suena» con otro formato, la medicina
   tradicional china y el qigong en la portada, las preguntas más bonitas, Instagram como sección
   y un «¿Hablamos?» más cálido. */
/* la portada: el texto más arriba */
.ys-v2.t2 .r-hero.con-escena{padding-top:112px;padding-bottom:60px;min-height:0}
.ys-v2.t2 .r-hero.con-escena .r-ctas{gap:12px;flex-wrap:wrap}
.ys-v2.t2 .r-hero.con-escena button.r-cta{font-family:inherit;font-size:11.5px;letter-spacing:.16em;font-weight:500;cursor:pointer}
@container web (max-width:860px){
  .ys-v2.t2 .r-hero.con-escena{padding-top:34px;padding-bottom:20px}
  .ys-v2.t2 .r-hero.con-escena .r-ctas{justify-content:center}
  .ys-v2.t2 .r-hero.con-escena .r-ctas>*{flex:1 1 150px;max-width:260px;justify-content:center;text-align:center}
}
/* los ebooks: sin caja alrededor; la ficha del texto de cada ebook, en agua */
.site.ys-v2.t2.pag-inicio #productos{background:none;border:0;box-shadow:none;border-radius:0;max-width:1180px;padding:20px 30px 50px;overflow:visible}
.ys-v2.t2 .r-svc .rtx{background:linear-gradient(160deg,var(--papel) 0%,var(--agua-v) 100%)}
.ys-v2.t2 .r-svc{border-color:#2F5A8629;box-shadow:0 30px 60px -40px #2F5A86a6}
.ys-v2.t2 .r-svc .r-num{color:var(--agua)}
.ys-v2.t2 .r-svc .r-num::after{background:var(--agua)}
@container web (max-width:700px){ .site.ys-v2.t2.pag-inicio #productos{margin:0;padding:10px 18px 40px} }

/* «te suena alguna de estas»: la cabecera a un lado y cada frase en su ficha, con la acuarela de un elemento */
.ys-dolor{max-width:1120px;margin:0 auto;padding:30px 30px 20px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:50px;align-items:start}
.ys-dolor-cab{position:sticky;top:110px;text-align:left}
.ys-dolor-cab h2{font-size:clamp(32px,3.6cqw,48px);line-height:1.1;font-weight:400;margin:14px 0 26px;color:var(--ink)}
.ys-dolor-cab .s-kicker::after{display:none}
.ys-dolor-cierre{display:flex;gap:14px;align-items:flex-start;padding:20px 22px;border-radius:20px;background:#FFFDF8b3;border:1px solid #6F7A8626}
.ys-dolor-cierre .orn{flex:0 0 auto;width:44px}
.ys-dolor-cierre .orn img,.ys-dolor-cierre .orn svg{width:44px;height:auto}
.ys-dolor-cierre p{margin:0;font-family:var(--f-head);font-style:italic;font-size:19px;line-height:1.45;color:var(--ink-2)}
.ys-dolor-lista{display:grid;gap:16px}
.ys-dolor-it{--c:var(--metal);--cv:var(--metal-v);display:grid;grid-template-columns:74px minmax(0,1fr);gap:18px;align-items:center;padding:20px 24px 20px 16px;border-radius:22px;
  background:linear-gradient(150deg,var(--papel) 25%,var(--cv) 100%);border:1px solid color-mix(in srgb,var(--c) 20%,transparent);
  box-shadow:0 1px 0 #fff inset,0 26px 50px -38px color-mix(in srgb,var(--c) 80%,#000);transition:transform .4s cubic-bezier(.2,.7,.3,1)}
.ys-dolor-it:nth-child(even){margin-left:34px;margin-right:-10px}
.ys-dolor-it:hover{transform:translateY(-3px)}
.ys-dolor-it img{width:74px;height:74px;object-fit:contain;background:none}
.ys-dolor-it p{margin:0;font-family:var(--f-head);font-size:clamp(19px,1.9cqw,23px);line-height:1.35;color:var(--ink)}
.ys-el-madera{--c:var(--madera);--cv:var(--madera-v)} .ys-el-fuego{--c:var(--fuego);--cv:var(--fuego-v)} .ys-el-tierra{--c:var(--tierra);--cv:var(--tierra-v)}
.ys-el-metal{--c:var(--metal);--cv:var(--metal-v)} .ys-el-agua{--c:var(--agua);--cv:var(--agua-v)}
@container web (max-width:820px){
  .ys-dolor{grid-template-columns:1fr;gap:22px;padding:20px 18px 10px}
  .ys-dolor-cab{position:static;text-align:center}
  .ys-dolor-cab h2{margin:12px 0 0}
  .ys-dolor-cierre{order:2}
  .ys-dolor-cab .ys-dolor-cierre{display:none}
  .ys-dolor-it{grid-template-columns:56px minmax(0,1fr);gap:14px;padding:16px 18px 16px 12px}
  .ys-dolor-it:nth-child(even){margin:0}
  .ys-dolor-it img{width:56px;height:56px}
  .ys-dolor-lista::after{content:none}
}
/* en el móvil el cierre va debajo de las frases */
.ys-dolor-lista+.ys-dolor-cierre-m{display:none}

/* la medicina tradicional china en la portada */
.ys-home-mtc{text-align:center;max-width:1080px;margin:0 auto;padding:70px 30px 40px}
.ys-home-mtc h2,.ys-home-qg h2,.ys-insta h2,.ys-faq-cab h2{font-size:clamp(30px,3.4cqw,46px);line-height:1.12;font-weight:400;color:var(--ink);margin:14px 0 18px}
.ys-home-lead{max-width:680px;margin:0 auto 34px;font-size:17px;line-height:1.75;color:var(--ink-2)}
.ys-home-5e{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 auto 34px;max-width:900px}
.ys-home-5e figure{margin:0;padding:16px 8px 14px;border-radius:22px;background:linear-gradient(170deg,var(--papel) 30%,var(--cv) 100%);border:1px solid color-mix(in srgb,var(--c) 18%,transparent);
  box-shadow:0 24px 44px -36px color-mix(in srgb,var(--c) 80%,#000);transition:transform .45s cubic-bezier(.2,.7,.3,1)}
.ys-home-5e figure:hover{transform:translateY(-6px) rotate(-1deg)}
.ys-home-5e img{width:100%;max-width:120px;aspect-ratio:1;object-fit:contain;background:none;display:block;margin:0 auto}
.ys-home-5e figcaption{font-family:var(--f-head);font-size:19px;color:color-mix(in srgb,var(--c) 80%,#1c2118);margin-top:6px}
@container web (max-width:700px){
  .ys-home-mtc{padding:50px 18px 30px}
  .ys-home-5e{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .ys-home-5e figure{padding:8px 2px 8px;border-radius:14px}
  .ys-home-5e figcaption{font-size:13.5px}
}
/* el qigong en la portada: ficha de madera flotante */
.ys-home-qg{max-width:1120px;margin:30px auto;padding:0 30px}
.ys-home-qg-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;align-items:center;padding:clamp(34px,5vw,60px);border-radius:28px;
  background:linear-gradient(150deg,var(--papel) 18%,var(--madera-v) 100%);border:1px solid #5E7F4533;box-shadow:0 1px 0 #fff inset,0 50px 90px -60px var(--madera),0 18px 40px -34px #2F352A40}
.ys-home-qg-tx p{font-size:16.5px;line-height:1.75;color:var(--ink-2);margin:0 0 26px}
.ys-home-qg .s-kicker{color:var(--madera)}
.ys-home-qg-movs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ys-home-qg-movs figure{margin:0;text-align:center}
.ys-home-qg-movs figure:nth-child(2){transform:translateY(-18px)}
.ys-home-qg-movs img{width:100%;aspect-ratio:1;object-fit:contain;background:none;mix-blend-mode:multiply;display:block}
.ys-home-qg-movs figcaption{font-size:13px;letter-spacing:.04em;color:var(--ink-2);margin-top:4px}
.ys-home-qg-movs figcaption b{color:var(--madera);font-weight:500;margin-right:4px}
@container web (max-width:820px){
  .ys-home-qg{padding:0 12px}
  .ys-home-qg-in{grid-template-columns:1fr;gap:18px;border-radius:22px;padding:30px 20px 24px;text-align:center}
  .ys-home-qg-movs figure:nth-child(2){transform:none}
  .ys-home-qg-movs figcaption{font-size:11.5px}
}
/* las preguntas: la cabecera a un lado (con Ale en el campo) y cada pregunta en su ficha */
.ys-faq-home{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:50px;align-items:start;padding:0 0 10px}
.ys-faq-cab{position:sticky;top:110px}
.ys-faq-cab h2{margin-bottom:10px}
.ys-esc-faq{width:min(340px,100%);margin:6px 0 16px!important}
.ys-faq-home .ys-faq{max-width:none;margin:0;display:grid;gap:12px}
.ys-v2.t2 .ys-faq-home .ys-faq-item,.ys-v2.t2 .ys-faq-home .ys-faq-item:last-child{border:1px solid #6F7A8629;border-radius:20px;padding:4px 22px;
  background:linear-gradient(160deg,var(--papel) 40%,var(--metal-v) 100%);box-shadow:0 20px 40px -34px #6F7A86;transition:box-shadow .35s,background .35s}
.ys-v2.t2 .ys-faq-home .ys-faq-item[open]{background:linear-gradient(160deg,var(--papel) 30%,var(--agua-v) 100%);border-color:#2F5A8633;box-shadow:0 30px 60px -40px #2F5A86}
.ys-v2.t2 .ys-faq-home .ys-faq-item summary{font-size:20px;padding:16px 46px 16px 0}
.ys-v2.t2 .ys-faq-home .ys-faq-item summary::after{content:'+';top:50%;right:0;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
  font-size:20px;line-height:1;color:#fff;background:linear-gradient(135deg,var(--fuego) 0%,#D9785C 100%);transition:transform .35s}
.ys-v2.t2 .ys-faq-home .ys-faq-item[open] summary::after{content:'+';transform:translateY(-50%) rotate(45deg)}
.ys-v2.t2 .ys-faq-home .ys-faq-item p{padding:0 0 18px;font-size:15.5px}
@container web (max-width:820px){
  .ys-faq-home{grid-template-columns:1fr;gap:18px;padding:0 4px}
  .ys-faq-cab{position:static;text-align:center}
  .ys-esc-faq{margin:6px auto 10px!important;width:min(260px,80%)}
  .ys-faq-cab>div:last-child{display:none}
  .ys-faq-home::after{content:none}
  .ys-v2.t2 .ys-faq-home .ys-faq-item summary{font-size:18px}
}
.ys-faq-home+.ys-faq-mas{display:none}
/* Instagram, sección propia */
.ys-insta{max-width:1120px;margin:40px auto;padding:0 30px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;align-items:center}
.ys-insta-tx p{font-size:16.5px;line-height:1.75;color:var(--ink-2);margin:0 0 22px}
.ys-insta-btn{display:inline-flex!important;align-items:center;gap:10px}
.ys-insta-at{margin:12px 0 0!important;font-size:13px!important;letter-spacing:.06em;opacity:.75}
.ys-insta-fotos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ys-insta-f{border-radius:20px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 50px -36px #2F352A99;transform:rotate(calc((var(--k) - 1) * 2deg)) translateY(calc(var(--k) * 8px - 8px))}
.ys-insta-f .ph{width:100%;height:100%;object-fit:cover;display:block}
@container web (max-width:820px){
  .ys-insta{grid-template-columns:1fr;gap:22px;padding:0 18px;text-align:center}
  .ys-insta-fotos{gap:8px}
  .ys-insta-f{border-radius:14px}
}
/* ¿Hablamos?: su cara, su voz y el horario aparte */
.site.ys-v2.t2 .ys-hablamos{max-width:1080px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;padding:clamp(34px,5vw,60px);align-items:center;overflow:hidden}
.ys-hablamos::before{content:'';position:absolute;width:420px;height:420px;right:-120px;top:-160px;border-radius:50%;background:radial-gradient(circle,#F8E2D8cc,transparent 70%);pointer-events:none}
.ys-hab-tx{position:relative}
.ys-hab-cara{width:88px;height:88px;border-radius:50%;object-fit:cover;display:block;margin:0 0 18px;border:3px solid #fff;box-shadow:0 14px 30px -14px #A87A2A99}
.site.ys-v2.t2 .ys-hablamos h2{font-size:clamp(34px,4cqw,52px);margin:0 0 12px}
.ys-hab-btns{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.ys-hab-firma{margin:16px 0 0!important;font-family:var(--f-head);font-style:italic;font-size:18px;color:var(--tierra)}
.site.ys-v2.t2 .ys-hablamos .r-hours{position:relative;background:#FFFDF8d9;border:1px solid #A87A2A26;border-radius:22px;padding:26px 24px;box-shadow:0 24px 44px -34px #A87A2A}
.site.ys-v2.t2 .ys-hablamos .r-hours h3{margin-top:0}
@container web (max-width:820px){
  .site.ys-v2.t2 .ys-hablamos{grid-template-columns:1fr;gap:24px;margin:30px 12px 0;padding:30px 20px}
  .ys-hab-cara{width:74px;height:74px}
  .site.ys-v2.t2 .ys-hablamos .r-hours{padding:20px 18px}
}
.ys-home-5e img,.ys-home-qg-movs img,.ys-dolor-it img{height:auto}
/* móvil: el cierre de «te suena» y «Todas las preguntas» van al final; los dos botones de la portada, iguales */
@container web (max-width:820px){
  .ys-dolor-cab,.ys-faq-cab{display:contents}
  .ys-dolor>.ys-dolor-lista{order:3} .ys-dolor .ys-dolor-cierre{order:4;display:flex!important;margin-top:4px}
  .ys-dolor .s-kicker,.ys-dolor h2{text-align:center}
  .ys-faq-home>.ys-faq{order:3} .ys-faq-cab>div:last-child{display:block!important;order:4;text-align:center}
  .ys-faq-home .s-kicker,.ys-faq-home h2{text-align:center}
}
@container web (max-width:860px){ .ys-v2.t2 .r-hero.con-escena .r-ctas>*{width:100%;max-width:300px;flex:0 0 auto;box-sizing:border-box} }
.site.ys-v2.t2 .ys-hablamos .s-hrow{gap:14px}
.ys-v2.t2 .r-hero.con-escena .r-ctas>*{display:inline-flex;align-items:center;justify-content:center;min-height:52px;line-height:1.2;padding-top:0;padding-bottom:0;box-sizing:border-box}

/* ═══════════════ LOS DOS CICLOS DE LA RUEDA (23/09/2026, noche · Ale) ═══════════════
   Generación por el círculo (fuego cálido, la armonía) y control por la estrella (agua, el equilibrio).
   Una estela recorre cada trazo y una luz la encabeza; cada elemento late cuando le llega su luz. */
.ys-5e-col{display:flex;flex-direction:column;align-items:center;gap:14px}
.ys-5e-svg .c{fill:none;stroke:#C4553A2e;stroke-width:.7}
.ys-5e-svg .k{fill:none;stroke:#2F5A8629;stroke-width:.6;stroke-dasharray:1.6 2.6}
.ys-5e-svg .gen,.ys-5e-svg .ctl{fill:none;stroke-linecap:round;animation:ys-estela 12s linear infinite}
.ys-5e-svg .gen{stroke:#C4553A;stroke-width:1.5;stroke-dasharray:12 88;opacity:.75}
.ys-5e-svg .ctl{stroke:#2F5A86;stroke-width:1.2;stroke-dasharray:9 91;opacity:.6}
@keyframes ys-estela{from{stroke-dashoffset:12}to{stroke-dashoffset:-88}}
.ys-5e-svg .ctl{animation-name:ys-estela-k}
@keyframes ys-estela-k{from{stroke-dashoffset:9}to{stroke-dashoffset:-91}}
.ys-5e-svg .luz-gen .punto{fill:#C4553A}.ys-5e-svg .luz-gen .halo{fill:#F8E2D8;opacity:.85}
.ys-5e-svg .luz-ctl .punto{fill:#2F5A86}.ys-5e-svg .luz-ctl .halo{fill:#DDE8F2;opacity:.9}
.ys-5e-svg .halo{animation:ys-luz 2.4s ease-in-out infinite}
@keyframes ys-luz{0%,100%{r:5.5}50%{r:8}}
/* cada elemento late al llegarle cada luz: aro cálido (generación) y aro azul (control) */
.ys-5e-b .ys-5e-pg,.ys-5e-b .ys-5e-pk{position:absolute;inset:8%;border-radius:50%;pointer-events:none;opacity:0}
.ys-5e-b .ys-5e-pg{box-shadow:0 0 0 2px #C4553A99,0 0 22px 4px #F8E2D8;animation:ys-late 12s ease-out infinite;animation-delay:calc(var(--gi) * 2.4s)}
.ys-5e-b .ys-5e-pk{inset:2%;box-shadow:0 0 0 1.5px #2F5A8680,0 0 20px 3px #DDE8F2;animation:ys-late 12s ease-out infinite;animation-delay:calc(var(--ki) * 2.4s)}
@keyframes ys-late{0%{opacity:0;transform:scale(.8)}2%{opacity:1;transform:scale(1)}12%{opacity:0;transform:scale(1.18)}100%{opacity:0}}
.ys-5e-b img{position:relative}
.ys-5e-ley{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:0!important;font-size:12px!important;letter-spacing:.06em;color:var(--ink-2,#5E5A4F)}
.ys-5e-ley span{display:inline-flex;align-items:center;gap:8px}
.ys-5e-ley i{display:inline-block;width:26px;height:0;border-top:2px solid #C4553A;border-radius:2px}
.ys-5e-ley .k i{border-top:2px dashed #2F5A86}
@media (prefers-reduced-motion:reduce){
  .ys-5e-svg .gen,.ys-5e-svg .ctl,.ys-5e-svg .halo,.ys-5e-b .ys-5e-pg,.ys-5e-b .ys-5e-pk{animation:none}
  .ys-5e-svg .luz-gen,.ys-5e-svg .luz-ctl{display:none}
}
/* «te suena»: la quinta ficha es el cierre, con la tierra, en cursiva y alineada como las demás */
.ys-dolor-fin p{font-style:italic;color:var(--ink-2)}
.ys-dolor-it.ys-dolor-fin:nth-child(even){margin-left:0;margin-right:0}
.ys-dolor-cab{align-self:start}

/* ═══════════════ EL CARRUSEL, «¿NECESITAS HABLAR?», EL POP-UP Y EL MENÚ DEL MÓVIL (23/09/2026, noche) ═══════════════ */
/* los puntos del carrusel → una barra fina por tramos; el tramo que ves, en fuego y más largo */
.ys-v2.t2 .car .dots{display:flex;justify-content:center;align-items:center;gap:5px;margin:14px auto 0;max-width:280px}
.ys-v2.t2 .car .dots button{flex:1 1 0;min-width:10px;max-width:26px;height:3px;padding:0;border:0;border-radius:3px;cursor:pointer;
  background:#6F7A86;opacity:.22;transition:flex-grow .45s cubic-bezier(.2,.7,.3,1),max-width .45s cubic-bezier(.2,.7,.3,1),opacity .3s,background .3s;position:relative}
.ys-v2.t2 .car .dots button::before{content:'';position:absolute;inset:-10px 0}
.ys-v2.t2 .car .dots button[aria-current="true"]{flex-grow:3;max-width:64px;background:linear-gradient(90deg,var(--fuego),#D9785C);opacity:1}
.ys-v2.t2 .car .dots button:hover{opacity:.5}
/* «¿Necesitas hablar?» bajo los ebooks: la cara de Ale y una pastilla */
.llamfila{text-align:center}
.ys-hablar{display:inline-flex;align-items:center;gap:12px;padding:7px 20px 7px 7px;border-radius:99px;cursor:pointer;font:inherit;
  background:linear-gradient(150deg,var(--papel,#FFFDF8) 20%,var(--tierra-v,#F4E8CF) 100%);border:1px solid #A87A2A33;color:var(--ink,#2F352A);
  box-shadow:0 1px 0 #fff inset,0 18px 34px -22px #A87A2Aaa;transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s}
.ys-hablar img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 4px 10px -4px #2F352A66}
.ys-hablar span{font-family:var(--f-head);font-size:20px;line-height:1}
.ys-hablar i{font-style:normal;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:15px;
  background:linear-gradient(135deg,var(--fuego,#C4553A),#D9785C);transition:transform .35s}
.ys-hablar:hover{transform:translateY(-2px);box-shadow:0 1px 0 #fff inset,0 24px 40px -22px #A87A2Acc}
.ys-hablar:hover i{transform:translateX(3px)}
/* el pop-up: con la cara de Ale arriba */
.lm-cara{display:block;width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 0 14px;border:3px solid #fff;box-shadow:0 12px 24px -12px #A87A2A99}
.lm-caja{background:linear-gradient(160deg,#FFFDF8 30%,#F4E8CF 130%)!important}
.lm-enviar{background:linear-gradient(135deg,#C4553A 0%,#D9785C 100%)!important;border-radius:99px!important;letter-spacing:.08em}

/* ── EL MENÚ DEL MÓVIL ── */
html.ys-menu-abierto,html.ys-menu-abierto body{overflow:hidden}
.site .mdrawer{background:#2F352A00;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);opacity:1;visibility:hidden;
  transition:background .5s ease,backdrop-filter .5s ease,-webkit-backdrop-filter .5s ease,visibility 0s linear .6s}
.site .mdrawer.open{background:#2F352A59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);visibility:visible;transition:background .45s ease,backdrop-filter .45s ease,-webkit-backdrop-filter .45s ease,visibility 0s}
.site .mdrawer-in{top:10px;right:10px;bottom:auto;left:auto;width:min(360px,calc(100% - 20px));max-height:calc(100dvh - 20px);padding:0;border-radius:26px;overflow-y:auto;overscroll-behavior:contain;
  background:linear-gradient(170deg,#FFFDF8 0%,#F5F5F2 55%,#ECEEF0 100%);color:var(--ink,#2F352A);display:block;
  box-shadow:0 1px 0 #fff inset,0 40px 80px -30px #1c211899,0 10px 30px -20px #1c211866;
  transform:none;clip-path:circle(0% at calc(100% - 34px) 30px);transition:clip-path .5s cubic-bezier(.7,0,.3,1)}
.site .mdrawer.open .mdrawer-in{clip-path:circle(150% at calc(100% - 34px) 30px);transition:clip-path .75s cubic-bezier(.2,.8,.2,1)}
/* la cabecera: Ale en acuarela, quién es y cerrar */
.mm-cab{position:relative;display:flex;align-items:center;gap:14px;padding:18px 58px 16px 16px;background:radial-gradient(120% 140% at 0% 0%,#F8E2D8 0%,#FFFDF800 60%),radial-gradient(100% 120% at 100% 0%,#DDE8F2 0%,#FFFDF800 60%);
  border-bottom:1px solid #6F7A861f}
.mm-ale{flex:0 0 auto;width:74px;height:74px;border-radius:50%;background:radial-gradient(circle,#FFFDF8 45%,#E6EEDB 100%);display:grid;place-items:center;overflow:hidden;
  box-shadow:0 0 0 3px #fff,0 12px 26px -12px #5E7F4599}
.mm-ale img{width:118%;height:auto;margin-top:18%;mix-blend-mode:multiply;background:none}
.mm-quien{display:flex;flex-direction:column;min-width:0}
.mm-marca{font-family:var(--f-head);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2,#5E5A4F)}
.mm-marca em{font-style:normal;letter-spacing:.08em;color:var(--fuego,#C4553A)}
.mm-quien b{font-family:var(--f-head);font-weight:500;font-size:21px;line-height:1.15;margin-top:3px}
.mm-quien small{font-size:12.5px;color:var(--ink-2,#5E5A4F);margin-top:2px;line-height:1.35}
.mm-x{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;border:1px solid #6F7A8633;background:#FFFDF8cc;cursor:pointer;
  font-size:22px;line-height:1;color:var(--ink,#2F352A);display:grid;place-items:center;transition:transform .35s}
.mm-x:hover{transform:rotate(90deg)}
/* la lista, como un menú de app: icono en su color de elemento, nombre y una línea */
.mm-lista{padding:8px 8px 4px}
.mdrawer-in .mlink.mm-it{display:grid;grid-template-columns:40px minmax(0,1fr) 14px;align-items:center;gap:12px;padding:10px 10px;border:0;border-radius:16px;
  font-family:var(--f-body);font-size:inherit;color:var(--ink,#2F352A);text-decoration:none;transition:background .25s}
.mdrawer-in .mlink.mm-it:hover,.mdrawer-in .mlink.mm-it:focus-visible{background:#6F7A8612;outline:none}
.mdrawer-in .mlink.mm-it.on{background:linear-gradient(90deg,#F8E2D8cc,#FFFDF800)}
.mdrawer-in .mlink.mm-it.on b{color:var(--fuego-2,#A8432C)}
.mm-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(150deg,#FFFDF8 10%,var(--cv) 100%);
  border:1px solid color-mix(in srgb,var(--c) 22%,transparent);color:var(--c)}
.mm-ico svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mm-tx{display:flex;flex-direction:column;min-width:0}
.mm-tx b{font-family:var(--f-head);font-weight:500;font-size:18.5px;line-height:1.15}
.mm-tx small{font-size:12.5px;color:var(--ink-2,#5E5A4F);line-height:1.35;margin-top:1px}
.mm-fl{font-size:22px;color:#6F7A8680;line-height:1;transition:transform .3s}
.mm-it:hover .mm-fl{transform:translateX(3px)}
/* el pie: los dos botones, Instagram y dónde */
.mm-pie{padding:12px 16px 18px;border-top:1px solid #6F7A861f;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.site .mm-cta{display:flex;align-items:center;justify-content:center;text-align:center;min-height:46px;padding:0 10px;border-radius:99px;font:inherit;font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;font-weight:500;text-decoration:none;cursor:pointer;color:#fff;border:0;background:linear-gradient(135deg,var(--fuego,#C4553A),#D9785C);box-shadow:0 12px 22px -14px #C4553Acc}
.site .mm-cta.b{background:#FFFDF8;color:var(--fuego-2,#A8432C);box-shadow:inset 0 0 0 1.5px var(--fuego,#C4553A);letter-spacing:.06em}
.mm-ig{grid-column:1 / -1;justify-self:center;display:inline-flex;align-items:center;gap:7px;margin-top:4px;font-size:13px;color:var(--ink-2,#5E5A4F);text-decoration:none}
.mm-ig svg{color:var(--fuego,#C4553A)}
.mm-donde{grid-column:1 / -1;margin:0;text-align:center;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2,#5E5A4F);opacity:.7}
/* la coreografía: al abrir, Ale florece y los enlaces entran uno a uno; al cerrar, todo se va a la vez y rápido */
.mm-ale,.mm-quien,.mm-it,.mm-pie{opacity:0;transform:translateX(16px);transition:opacity .2s ease,transform .2s ease}
.mm-ale{transform:scale(.6) rotate(-12deg)}
.mdrawer.open .mm-ale{opacity:1;transform:none;transition:opacity .6s ease .18s,transform .8s cubic-bezier(.2,1.4,.3,1) .18s}
.mdrawer.open .mm-quien{opacity:1;transform:none;transition:opacity .5s ease .26s,transform .6s cubic-bezier(.2,.8,.2,1) .26s}
.mdrawer.open .mm-it,.mdrawer.open .mm-pie{opacity:1;transform:none;transition:opacity .45s ease calc(.3s + var(--i,0) * .055s),transform .6s cubic-bezier(.2,.8,.2,1) calc(.3s + var(--i,0) * .055s),background .25s}
/* la hamburguesa, más fina */
.ys-v2.t2 .mburger{border-radius:50%;width:42px;height:42px;background:#FFFDF8b3}
.ys-v2.t2 .mburger span{width:17px;height:1.6px}
.ys-v2.t2 .mburger span:nth-child(2){width:11px;margin-left:6px}
@media (prefers-reduced-motion:reduce){
  .site .mdrawer-in,.site .mdrawer.open .mdrawer-in{clip-path:none;transition:none}
  .mm-ale,.mm-quien,.mm-it,.mm-pie,.mdrawer.open .mm-ale,.mdrawer.open .mm-quien,.mdrawer.open .mm-it,.mdrawer.open .mm-pie{opacity:1;transform:none;transition:none}
}
/* Ale en la cabecera del menú: encuadrada de medio cuerpo (la acuarela es de cuerpo entero) */
.mm-ale{position:relative;display:block}
.mm-ale img{position:absolute;width:215px;max-width:none;height:auto;left:-65px;top:-24px;margin:0}

/* ═══════════════ LA ESTANTERÍA DE EBOOKS (/ebooks · 23/09/2026, noche) ═══════════════
   Portada grande de Ale en acuarela sobre el color de cada ebook; la tarjeta entera lleva al ebook. */
.site.ys-v2 .ys-libros{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:26px;max-width:1120px;margin:0 auto}
.site.ys-v2 .ys-libro{--ev:color-mix(in srgb,var(--eb-acento) 18%,#FFFDF8);display:flex;flex-direction:column;padding:0;overflow:hidden;border-radius:24px;text-decoration:none;color:var(--ink);
  background:#FFFDF8;border:1px solid color-mix(in srgb,var(--eb-acento) 26%,transparent);box-shadow:0 1px 0 #fff inset,0 30px 60px -44px color-mix(in srgb,var(--eb-acento) 80%,#000);
  transition:transform .45s cubic-bezier(.2,.7,.3,1),box-shadow .45s}
.site.ys-v2 a.ys-libro:hover{transform:translateY(-6px);box-shadow:0 1px 0 #fff inset,0 44px 70px -44px color-mix(in srgb,var(--eb-acento) 90%,#000)}
.site.ys-v2 .ys-libro-port{aspect-ratio:4/4.4;display:grid;place-items:center;padding:18px 18px 0;background:radial-gradient(70% 70% at 50% 55%,color-mix(in srgb,var(--eb-acento) 30%,#FFFDF8) 0%,var(--ev) 55%,#FFFDF8 100%)}
.site.ys-v2 .ys-libro-port .ph{width:auto;height:100%;max-width:100%;object-fit:contain;border-radius:0;mix-blend-mode:multiply;background:none;transition:transform .6s cubic-bezier(.2,.7,.3,1)}
.site.ys-v2 a.ys-libro:hover .ys-libro-port .ph{transform:scale(1.04)}
.site.ys-v2 .ys-libro-tx{display:flex;flex-direction:column;flex:1;padding:18px 22px 20px}
.site.ys-v2 .ys-libro h3{font-size:22px;line-height:1.18;margin:0 0 8px;color:var(--ink)}
.site.ys-v2 .ys-libro p{font-size:14.5px;line-height:1.55;color:var(--ink-2);opacity:1;margin:0}
.site.ys-v2 .ys-libro-pie{margin-top:auto;padding-top:16px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.ys-libro-meta{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--eb-acento) 70%,#2F352A)}
.ys-libro-ir{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:#fff;padding:9px 14px;border-radius:99px;background:linear-gradient(135deg,var(--fuego),#D9785C)}
@container web (max-width:700px){ .site.ys-v2 .ys-libros{grid-template-columns:1fr 1fr;gap:12px} .site.ys-v2 .ys-libro h3{font-size:17px} .site.ys-v2 .ys-libro p{display:none} .site.ys-v2 .ys-libro-tx{padding:12px 12px 14px} .site.ys-v2 .ys-libro-pie{flex-direction:column;align-items:flex-start;gap:8px;padding-top:10px} .site.ys-v2 .ys-libro{border-radius:18px} }
/* la ficha del ebook: la portada de Ale sin marco de papel, fundida con el color del ebook */
.site.ys-v2 .ebf-libro{background:radial-gradient(70% 70% at 50% 55%,color-mix(in srgb,var(--eb-acento) 30%,#FFFDF8) 0%,color-mix(in srgb,var(--eb-acento) 14%,#FFFDF8) 55%,#FFFDF800 100%)!important;box-shadow:none!important;border:0!important}
.site.ys-v2 .ebf-libro .ebf-portada{mix-blend-mode:multiply;box-shadow:none!important;filter:none!important;border-radius:0!important}
/* las portadas son acuarela sobre papel crema: el borde del papel se desvanece para que no se vea el rectángulo */
.site.ys-v2 .ys-libro-port .ph,.site.ys-v2 .ebf-libro .ebf-portada,.site.ys-v2 .ys-regalo-libro .ph{
  -webkit-mask-image:radial-gradient(closest-side,#000 72%,transparent 100%);mask-image:radial-gradient(closest-side,#000 72%,transparent 100%)}
.site .ys-bloque:has(>.ys-libros){max-width:1120px}

/* ═══════════════ 24/09/2026 · LOS EBOOKS AL FRENTE, LOS BOTONES CON FUEGO Y LA CABECERA QUE SE APARTA ═══════════════
   Fede: «los tres grandes (10 rituales, qigong, dormir) en cajas grandes con la explicación y el preview; el resto
   en pequeño y horizontal; en el móvil un carrusel con uno central fuerte y los de al lado atrás y cortados; lo mismo
   en la portada; los botones con más fuego; la cabecera que se esconde al bajar y vuelve al subir; la foto real de
   Ale en el menú; "Ebooks gratis" en vez de "Empezar gratis"; el Yang Sheng con sus letras chinas».
   Lo pinta lib/web-render.php (pageEbooks, cardDest, cardMini, coverflow, cta, logoTxt, mhead); el efecto del
   carrusel y la cabecera, web-publico.js (coverflow, minis, cabecera). */

/* ── la marca: YANG SHENG 養生, como en la página de enlaces ── */
.site .s-logotxt .s-logo-han,.site .mname .s-logo-han{font-style:normal;letter-spacing:.06em;color:var(--fuego,#C4553A);font-size:.82em;margin-left:.25em}
.ys-v2.t2 .r-logo .s-logotxt{font-size:16px;letter-spacing:.34em;text-transform:uppercase}
.ys-v2.t2 .mhead .mlogo{display:flex;align-items:center;min-width:0;flex:1}
.ys-v2.t2 .mhead .mname{font-family:var(--f-head);font-size:13.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink)}

/* ── la cabecera se esconde al bajar y vuelve al subir ── */
.ys-v2.t2 .r-nav{position:sticky;top:0;z-index:40;transition:transform .45s cubic-bezier(.3,.7,.2,1),background .35s,box-shadow .35s,padding .35s}
.ys-nav-flota .ys-v2.t2 .r-nav{background:#FFFDF8e6;-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 1px 0 #6F7A861f,0 18px 40px -30px #2F352A66;padding-top:14px;padding-bottom:14px}
.ys-nav-oculta .ys-v2.t2 .r-nav{transform:translateY(-110%);box-shadow:none}
.ys-v2.t2 .mhead{transition:transform .4s cubic-bezier(.3,.7,.2,1)}
.ys-nav-oculta .ys-v2.t2 .mhead{transform:translateY(-110%)}
@media (prefers-reduced-motion:reduce){.ys-v2.t2 .r-nav,.ys-v2.t2 .mhead{transition:none}}

/* ── los botones, con más fuego: degradado vivo, brillo que pasa, flecha que avanza ── */
.ys-v2.t2 .r-cta:not(.line),.ys-v2.t2 .pg-rsv:not(.linea),.ys-v2.t2 a.ys-fuego,.site.ys-v2 .ys-form button[type=submit]{
  background:linear-gradient(120deg,#B8432A 0%,var(--fuego) 38%,#E0795A 100%);background-size:160% 100%;background-position:0 0;color:#fff;border:0;border-radius:99px;
  box-shadow:0 1px 0 #ffffff40 inset,0 16px 30px -14px #C4553Ae6,0 4px 10px -6px #A8432C99;transition:transform .3s cubic-bezier(.3,.7,.2,1),box-shadow .3s,background-position .5s}
.ys-v2.t2 .r-cta:not(.line):hover,.ys-v2.t2 .pg-rsv:not(.linea):hover,.ys-v2.t2 a.ys-fuego:hover,.site.ys-v2 .ys-form button[type=submit]:hover{
  transform:translateY(-2px);background-position:100% 0;box-shadow:0 1px 0 #ffffff40 inset,0 22px 38px -14px #C4553Aff,0 0 0 6px #C4553A14}
.ys-v2.t2 .r-cta,.ys-v2.t2 .pg-rsv,.ys-v2.t2 .r-book,.ys-v2.t2 .mbook{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.ys-v2.t2 .r-cta.line,.ys-v2.t2 .pg-rsv.linea{border-radius:99px;border:1.5px solid var(--fuego);color:var(--fuego-2);background:#FFFDF8b3;transition:background .3s,color .3s,transform .3s}
.ys-v2.t2 .r-cta.line:hover,.ys-v2.t2 .pg-rsv.linea:hover{background:var(--fuego);color:#fff;transform:translateY(-2px)}
.ys-v2.t2 .r-cta i,.ys-v2.t2 .pg-rsv i,.ys-v2.t2 .ys-dest-btn i{font-style:normal;display:inline-block;transition:transform .3s}
.ys-v2.t2 .r-cta:hover i,.ys-v2.t2 .pg-rsv:hover i,.ys-v2.t2 a.ys-dest:hover .ys-dest-btn i{transform:translateX(4px)}
.ys-ico-libro{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
/* el de arriba («Ebooks gratis»): lleno de fuego, que se vea */
.ys-v2.t2 .r-nav a.r-book,.ys-v2.t2.pag-inicio .r-nav a.r-book{background:linear-gradient(120deg,#B8432A,var(--fuego) 45%,#E0795A);color:#fff;border:0;border-radius:99px;padding:12px 22px;
  box-shadow:0 12px 24px -14px #C4553Ae6;transition:transform .3s,box-shadow .3s}
.ys-v2.t2 .r-nav a.r-book:hover,.ys-v2.t2.pag-inicio .r-nav a.r-book:hover{background:linear-gradient(120deg,#A8432C,var(--fuego) 45%,#E0795A);color:#fff;transform:translateY(-2px);box-shadow:0 18px 30px -14px #C4553Aff}
.ys-v2.t2 .mhead .mbook{background:linear-gradient(120deg,#B8432A,var(--fuego) 45%,#E0795A);color:#fff;border:0;border-radius:99px;box-shadow:0 10px 20px -12px #C4553Ae6;white-space:nowrap}
.ys-v2.t2 .mhead .mbook .ys-ico-libro{width:15px;height:15px}
/* «Leer mi historia entera» y los enlaces «ver más»: una pastilla con borde de fuego y flecha */
.ys-v2.t2 .r-more,.ys-v2 .ys-link{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--fuego);border-radius:99px;padding:11px 20px;color:var(--fuego-2);
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;text-decoration:none;background:#FFFDF8b3;transition:background .3s,color .3s,transform .3s,box-shadow .3s}
.ys-v2.t2 .r-more:hover,.ys-v2 .ys-link:hover{background:var(--fuego);color:#fff;transform:translateY(-2px);box-shadow:0 14px 26px -14px #C4553Ae6}
.site.ys-v2 .ys-form .ys-check .ys-link{display:inline;border:0;border-bottom:1px solid var(--fuego);border-radius:0;padding:0;background:none;text-transform:none;letter-spacing:0;font-size:inherit;font-weight:inherit}

/* ── el menú del móvil: su foto real, redonda ── */
.mm-ale.mm-ale-foto{background:#E6EEDB;box-shadow:0 0 0 3px #fff,0 10px 22px -12px #2F352A99}
.mm-ale.mm-ale-foto img{position:static;width:100%;height:100%;object-fit:cover;left:auto;top:auto;margin:0;mix-blend-mode:normal}

/* ── /ebooks · la cabecera: en el ordenador, texto a la izquierda y Ale bajo el olivo a la derecha, y cabe entera ── */
.site .pg-ebooks{max-width:1180px}
.site .ys-eb-hero .ys-eb-hero-cta{display:flex;justify-content:center;margin-top:8px}
@container web (min-width:901px){
  .site .pg-ebooks{padding-top:14px}
  .site .ys-eb-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center;min-height:min(560px,calc(100vh - 150px))}
  .site .ys-eb-hero .pg-head{text-align:left;margin:0 0 26px;max-width:none}
  .site .ys-eb-hero .pg-head h1{font-size:clamp(40px,4.6cqw,60px)}
  .site .ys-eb-hero .ys-eb-hero-cta{justify-content:flex-start}
  .site .ys-eb-hero .ys-esc-cab{width:100%;margin:0!important;max-height:calc(100vh - 170px)}
  .site .ys-eb-hero .ys-esc-cab video,.site .ys-eb-hero .ys-esc-cab img{max-height:calc(100vh - 170px);width:100%;object-fit:contain}
}
.site .ys-eb-intro{max-width:760px;margin-left:auto;margin-right:auto;text-align:center}
.site .ys-eb-intro p{font-size:17px;line-height:1.75}

/* ── el carrusel con una caja en el centro ── */
.site .ys-cf{position:relative;--cf-w:min(380px,74cqw)}
.site .ys-cf-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  padding:26px calc(50% - var(--cf-w) / 2) 64px;margin:0 -26px}
.site .ys-cf-track::-webkit-scrollbar{display:none}
.site .ys-cf-track>*{flex:0 0 var(--cf-w);scroll-snap-align:center;transform-origin:50% 0;transition:transform .18s linear,opacity .18s linear;will-change:transform}
.site .ys-cf-arw{position:absolute;top:calc(50% - 44px);z-index:20;width:48px;height:48px;border-radius:50%;border:1px solid #6F7A8633;background:#FFFDF8ee;color:var(--ink);font-size:26px;line-height:1;cursor:pointer;
  box-shadow:0 14px 30px -18px #2F352A99;display:grid;place-items:center;transition:transform .3s,opacity .3s}
.site .ys-cf-arw:hover:not(:disabled){transform:scale(1.08)}
.site .ys-cf-arw:disabled{opacity:0;pointer-events:none}
.site .ys-cf-arw.prev{left:max(4px,calc(50% - var(--cf-w) / 2 - 70px))}
.site .ys-cf-arw.next{right:max(4px,calc(50% - var(--cf-w) / 2 - 70px))}
.site .ys-cf-dots{display:flex;justify-content:center;gap:8px;margin-top:-34px}
.site .ys-cf-dots button{width:8px;height:8px;border-radius:99px;border:0;padding:0;background:#6F7A8640;cursor:pointer;transition:width .35s,background .35s}
.site .ys-cf-dots button[aria-current=true]{width:26px;background:var(--fuego)}
.site .ys-cf:not(.cf-on) .ys-cf-arw,.site .ys-cf:not(.cf-on) .ys-cf-dots{display:none}
/* los tres destacados en el ordenador: una fila de tres, sin efecto */
@container web (min-width:901px){
  .site .ys-cf-dest .ys-cf-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;overflow:visible;padding:10px 0 20px;margin:0}
  .site .ys-cf-dest .ys-cf-track>*{transform:none!important;opacity:1!important}
  .site .ys-cf-home{--cf-w:390px}
}

/* ── la caja grande de un ebook ── */
.site .ys-dest{--ev:color-mix(in srgb,var(--eb-acento) 18%,#FFFDF8);position:relative;display:flex;flex-direction:column;border-radius:28px;overflow:hidden;text-decoration:none;color:var(--ink);
  background:linear-gradient(180deg,#FFFDF8 0%,#FFFDF8 60%,var(--ev) 100%);border:1px solid color-mix(in srgb,var(--eb-acento) 26%,#FFFFFF);
  box-shadow:0 1px 0 #fff inset,0 40px 80px -46px color-mix(in srgb,var(--eb-acento) 80%,#2F352A),0 10px 24px -20px #2F352A55;transition:box-shadow .4s}
.site a.ys-dest:hover{box-shadow:0 1px 0 #fff inset,0 50px 90px -44px color-mix(in srgb,var(--eb-acento) 95%,#2F352A),0 12px 26px -18px #2F352A66}
.site .ys-dest-port{position:relative;aspect-ratio:1/1;display:grid;place-items:center;padding:22px 22px 4px;overflow:hidden;
  background:radial-gradient(68% 68% at 50% 56%,color-mix(in srgb,var(--eb-acento) 34%,#FFFDF8) 0%,var(--ev) 52%,#FFFDF8 100%)}
.site .ys-dest-port .ph{width:auto;height:100%;max-width:100%;object-fit:contain;border-radius:0;mix-blend-mode:multiply;background:none;min-height:0;
  -webkit-mask-image:radial-gradient(closest-side,#000 76%,transparent 100%);mask-image:radial-gradient(closest-side,#000 76%,transparent 100%);transition:transform .7s cubic-bezier(.2,.7,.3,1)}
.site a.ys-dest:hover .ys-dest-port .ph{transform:scale(1.045)}
.site .ys-dest-chip{position:absolute;left:18px;top:18px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:color-mix(in srgb,var(--eb-acento) 60%,#2F352A);
  background:#FFFDF8e6;border:1px solid color-mix(in srgb,var(--eb-acento) 30%,transparent);padding:6px 11px;border-radius:99px}
.site .ys-dest-tx{display:flex;flex-direction:column;flex:1;padding:20px 26px 26px}
.site .ys-dest h3{font-family:var(--f-head);font-weight:500;font-size:27px;line-height:1.12;margin:0 0 8px;color:var(--ink);text-wrap:balance}
.site .ys-dest-sub{font-family:var(--f-head);font-style:italic;font-size:18px;line-height:1.35;color:color-mix(in srgb,var(--eb-acento) 62%,#2F352A);margin:0 0 12px}
.site .ys-dest-desc{font-size:14.5px;line-height:1.6;color:var(--ink-2);margin:0 0 14px}
.site .ys-dest-dentro{list-style:none;margin:0 0 20px;padding:12px 0 0;border-top:1px solid color-mix(in srgb,var(--eb-acento) 25%,transparent)}
.site .ys-dest-dentro li{display:flex;gap:12px;align-items:baseline;font-family:var(--f-head);font-size:17px;line-height:1.3;padding:5px 0;color:var(--ink)}
.site .ys-dest-dentro li::before{display:none}
.site .ys-dest-dentro span{font-family:var(--f-body);font-size:10.5px;letter-spacing:.14em;color:color-mix(in srgb,var(--eb-acento) 70%,#2F352A);min-width:20px}
.site .ys-dest-mas{font-size:12.5px;color:var(--ink-2);opacity:.8;margin:4px 0 0 32px;font-style:italic}
.site .ys-dest-btn{align-self:stretch;margin-top:auto;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 20px;border-radius:99px;
  font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:#fff;background:linear-gradient(120deg,#B8432A 0%,var(--fuego) 40%,#E0795A 100%);
  box-shadow:0 1px 0 #ffffff40 inset,0 16px 30px -14px #C4553Ae6;position:relative;overflow:hidden;flex:none}
.site .ys-dest-btn::after{content:'';position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,#ffffff55,transparent);transform:skewX(-18deg);animation:ys-brillo 6s ease-in-out infinite}
.site .ys-cf.cf-on .ys-dest:not(.cf-centro) .ys-dest-btn::after{animation:none}
@media (prefers-reduced-motion:reduce){.site .ys-dest-btn::after{animation:none}}

/* ── las cajas pequeñas (horizontales) ── */
.site .ys-minis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.site .ys-ebh{--ev:color-mix(in srgb,var(--eb-acento) 18%,#FFFDF8);display:grid;grid-template-columns:132px 1fr;gap:0;border-radius:22px;overflow:hidden;text-decoration:none;color:var(--ink);background:#FFFDF8;
  border:1px solid color-mix(in srgb,var(--eb-acento) 22%,#FFFFFF);box-shadow:0 24px 50px -40px color-mix(in srgb,var(--eb-acento) 80%,#2F352A);transition:transform .35s cubic-bezier(.3,.7,.2,1),box-shadow .35s}
.site a.ys-ebh:hover{transform:translateY(-4px);box-shadow:0 34px 60px -40px color-mix(in srgb,var(--eb-acento) 95%,#2F352A)}
.site .ys-ebh-port{display:grid;place-items:center;padding:10px;background:radial-gradient(75% 75% at 50% 55%,color-mix(in srgb,var(--eb-acento) 30%,#FFFDF8) 0%,var(--ev) 60%,#FFFDF8 100%)}
.site .ys-ebh-port .ph{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:0;mix-blend-mode:multiply;background:none;min-height:0}
.site .ys-ebh-tx{display:flex;flex-direction:column;padding:16px 18px 14px}
.site .ys-ebh h3{font-family:var(--f-head);font-weight:500;font-size:20px;line-height:1.18;margin:0 0 6px;color:var(--ink)}
.site .ys-ebh p{font-size:13.5px;line-height:1.5;color:var(--ink-2);margin:0 0 10px}
.site .ys-ebh-pie{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--eb-acento) 70%,#2F352A)}
.site .ys-ebh-pie b{font-weight:500;color:var(--fuego-2)}
.site .ys-minis-ver{display:none}

/* ── ¿Por qué son gratis? una carta de Ale ── */
.site .ys-gratis-in{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:30px;align-items:center;padding:46px 52px;border-radius:32px;overflow:hidden;
  background:radial-gradient(70% 90% at 100% 100%,var(--fuego-v,#F8E2D8) 0%,#F8E2D800 70%),linear-gradient(150deg,var(--papel,#FFFDF8) 30%,var(--agua-v,#DDE8F2) 130%);
  border:1px solid #C4553A26;box-shadow:0 44px 80px -54px #A8432Caa}
.site .ys-gratis .s-kicker{color:var(--fuego-2)}
.site .ys-gratis h2{text-align:left;margin:6px 0 20px;font-size:clamp(32px,3.6cqw,48px);line-height:1.1}
.site .ys-gratis-carta{position:relative;padding-left:26px;border-left:2px solid #C4553A55}
.site .ys-gratis-carta::before{content:'“';position:absolute;left:-14px;top:-34px;font-family:var(--f-head);font-size:96px;line-height:1;color:var(--fuego);opacity:.35}
.site .ys-gratis-carta p{font-family:var(--f-head);font-size:clamp(21px,2.1cqw,26px);line-height:1.45;color:var(--ink);margin:0}
.site .ys-gratis-firma{display:flex;align-items:center;gap:14px;margin-top:24px}
.site .ys-gratis-firma img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 10px 22px -12px #2F352A99}
.site .ys-gratis-firma span{display:flex;flex-direction:column;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.site .ys-gratis-firma b{font-family:var(--f-head);font-style:italic;font-weight:500;font-size:28px;letter-spacing:0;text-transform:none;color:var(--fuego-2);line-height:1}
.site .ys-gratis-esc{margin:0!important;width:100%}

/* ── Cómo funciona: tres pasos con icono, unidos por una línea ── */
.site .ys-como-pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative;counter-reset:none}
.site .ys-como-pasos::before{content:'';position:absolute;left:16%;right:16%;top:38px;border-top:2px dashed #C4553A40;z-index:0}
.site .ys-como-pasos li{position:relative;z-index:1;text-align:center;padding:0 16px 22px;margin:0}
.site .ys-como-pasos li::before{display:none}
.site .ys-como-ico{position:relative;display:grid;place-items:center;width:76px;height:76px;margin:0 auto 16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,var(--fuego-v,#F8E2D8));
  box-shadow:0 0 0 6px #FFFDF8,0 18px 32px -18px #A8432Ccc}
.site .ys-como-ico svg{width:30px;height:30px;fill:none;stroke:var(--fuego-2);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.site .ys-como-ico b{position:absolute;right:-4px;top:-4px;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--fuego),#E0795A);color:#fff;font-size:12.5px;font-weight:500;display:grid;place-items:center;box-shadow:0 0 0 3px #FFFDF8}
.site .ys-como-pasos .x{font-size:16px;line-height:1.6;color:var(--ink-2);max-width:300px;margin:0 auto}
.site .ys-como-cta{display:flex;justify-content:center;margin-top:18px}

/* ── el móvil ── */
@container web (max-width:900px){
  .site .ys-cf{--cf-w:70cqw}
  .site .ys-cf-arw{display:none!important}
  .site .ys-cf-track{margin:0 -18px;gap:14px;padding-top:18px;padding-bottom:58px}
  .site .ys-dest-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .site .ys-ebh-pie{flex-wrap:wrap;gap:4px 10px}
  .site .ys-ebh-pie>*{white-space:nowrap}
  .site .ys-dest h3{font-size:24px}
  .site .ys-dest-tx{padding:16px 20px 22px}
  .site .ys-dest-port{padding:16px 16px 2px}
  .site .ys-minis{grid-template-columns:1fr;gap:12px}
  .site .ys-minis:not(.abiertos)>*:nth-child(n+3){display:none}
  .site .ys-minis-ver{display:flex;align-items:center;justify-content:center;gap:6px;margin:16px auto 0;font:inherit;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;
    color:var(--fuego-2);background:#FFFDF8;border:1.5px solid var(--fuego);border-radius:99px;padding:12px 22px;cursor:pointer}
  .site .ys-minis-ver span{opacity:.6}
  .site .ys-ebh{grid-template-columns:104px 1fr;border-radius:18px}
  .site .ys-ebh h3{font-size:18px}
  .site .ys-ebh p{font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .site .ys-gratis-in{grid-template-columns:1fr;padding:30px 22px 26px;gap:12px;border-radius:26px}
  .site .ys-gratis-esc{order:-1;width:min(78%,300px);justify-self:center}
  .site .ys-gratis-carta{padding-left:18px}
  .site .ys-gratis-carta p{font-size:21px}
  .site .ys-como-pasos{grid-template-columns:1fr;gap:0;padding-left:4px}
  .site .ys-como-pasos::before{left:41px;right:auto;top:30px;bottom:60px;border-top:0;border-left:2px dashed #C4553A40}
  .site .ys-como-pasos li{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:center;text-align:left;padding:0 0 20px}
  .site .ys-como-ico{margin:0;width:70px;height:70px}
  .site .ys-como-pasos .x{margin:0;max-width:none}
}
.site .ys-bloque.ys-eb-dest,.site .ys-bloque.ys-eb-resto,.site .ys-bloque.ys-gratis,.site .ys-bloque.ys-como{max-width:1120px;margin-left:auto;margin-right:auto}
.ys-v2.t2 .pg-ebooks .r-sechead{padding:56px 20px 34px}
@container web (max-width:900px){.ys-v2.t2 .pg-ebooks .r-sechead{padding:40px 12px 18px}}
/* para que la cabecera pueda quedarse arriba (sticky), la web recorta lo que sobra por los lados con «clip», que no crea
   una caja con scroll propio (con «hidden» la cabecera se iba con la página) */
.site.ys-v2{overflow-x:hidden;overflow-x:clip}
/* «Leer mi historia entera» (Hola, soy Ale): lleno de fuego, como «Ver el ebook» */
.ys-v2.t2 .r-about .r-more{background:linear-gradient(120deg,#B8432A 0%,var(--fuego) 40%,#E0795A 100%);color:#fff;border:0;padding:14px 26px;margin-top:18px;
  box-shadow:0 1px 0 #ffffff40 inset,0 16px 30px -14px #C4553Ae6}
.ys-v2.t2 .r-about .r-more:hover{color:#fff;box-shadow:0 1px 0 #ffffff40 inset,0 22px 38px -14px #C4553Aff,0 0 0 6px #C4553A14}
