/* Pulpia · landing v5 · el CSS de TODO lo que está por debajo de la primera pantalla (4-nov, velocidad).
   Antes iba dentro de index.html (unos 220 KB de estilos en el HTML); ahora el HTML lleva solo lo de arriba y esta hoja se pide sin frenar el pintado
   (<link media="print" onload>). El orden es el de siempre: va DESPUÉS de lo de la portada. Cada bloque lleva el id de su sección. */

/* ===== #noche ===== */
  #noche{padding:0;background:var(--night);overflow:hidden;overflow:clip}
  /* ---------- la noche, de un vistazo: la lista a la vista y su móvil, que la reproduce solo al aparecer */
  #noche .nc-stage{position:relative;padding:clamp(64px,8vw,120px) 0 clamp(40px,5vw,72px)}
  #noche .nc-sky,#noche .nc-sky i{position:absolute;inset:0;pointer-events:none}
  #noche .nc-sky{background:radial-gradient(110% 80% at 70% 10%,#22114f 0%,#130a33 50%,#090418 100%)}
  #noche .nc-sky::before,#noche .nc-sky::after{content:"";position:absolute;left:0;right:0;height:140px;z-index:1}
  #noche .nc-sky::before{top:0;background:linear-gradient(180deg,var(--night),rgba(12,6,32,0))}   /* sin costura con la portada */
  #noche .nc-sky::after{bottom:0;background:linear-gradient(180deg,rgba(12,6,32,0),var(--night))}
  #noche .nc-stars{background-repeat:no-repeat;background-image:radial-gradient(1.3px 1.3px at 12% 18%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 27% 36%,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 41% 12%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 58% 28%,#fff 50%,transparent 52%),radial-gradient(1.4px 1.4px at 77% 9%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 88% 41%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 6% 63%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 33% 77%,#fff 50%,transparent 52%),radial-gradient(1.4px 1.4px at 66% 84%,#e9ddff 50%,transparent 52%),radial-gradient(1px 1px at 93% 71%,#fff 50%,transparent 52%),radial-gradient(1.6px 1.6px at 50% 55%,#fff 50%,transparent 52%);opacity:.85;transition:opacity .9s var(--ease)}
  /* 9:41: amanece detrás de su móvil (el texto sigue sobre la noche: se lee igual) */
  #noche .nc-sun{opacity:0;transition:opacity 1.1s var(--ease);background:radial-gradient(42% 46% at 72% 62%,rgba(255,176,140,.42),rgba(244,114,182,.18) 50%,rgba(124,77,255,0) 78%)}
  #noche:is([data-ph="3"],[data-ph="4"]) .nc-sun{opacity:1}
  #noche:is([data-ph="3"],[data-ph="4"]) .nc-stars{opacity:.35}

  #noche .nc-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,560px) auto;justify-content:center;align-items:center;gap:clamp(40px,6vw,110px)}
  #noche .nc-copy{position:relative;max-width:560px}
  #noche .nc-h{margin:0 0 22px;font:650 clamp(17px,1.5vw,21px)/1.35 var(--f-ui);color:var(--on-night-2);letter-spacing:-.01em}
  #noche .nc-h span{color:#fff}
  #noche .nc-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
  #noche .nc-list li{position:relative;display:grid;grid-template-columns:62px minmax(0,1fr);align-items:baseline;gap:12px;padding:12px 14px 12px 12px;border-radius:16px;color:var(--on-night-2);font:450 clamp(17px,1.5vw,20px)/1.4 var(--f-ui);transition:background-color .4s,color .4s,box-shadow .4s}
  #noche .nc-list time{font:750 16px/1 var(--f-ui);font-variant-numeric:tabular-nums;color:#fff;letter-spacing:-.01em}
  #noche .nc-list b{color:#fff;font-weight:650}
  #noche .nc-list li.on{background:rgba(255,255,255,.08);color:#fff;box-shadow:inset 3px 0 0 #f06292}
  #noche .nc-list .nc-last q{display:block;margin-top:6px;font:800 clamp(26px,2.7vw,38px)/1.1 var(--f-display);letter-spacing:-.025em;color:#fff;quotes:"«" "»"}
  #noche .nc-list .nc-last time{color:#ffd9a0}

  /* ---------- el móvil de la clínica */
  #noche .nc-dev{position:relative}
  #noche .nc-phone{width:auto;height:min(600px,calc(100svh - 170px));aspect-ratio:390/844}
  #noche .nc-scrn{background:#140a2e}
  #noche .nc-phone.buzz{animation:ncBuzz .42s linear}
  @keyframes ncBuzz{0%,100%{transform:none}15%{transform:translate3d(-3px,0,0) rotate(-1.2deg)}30%{transform:translate3d(3px,0,0) rotate(1.2deg)}45%{transform:translate3d(-2px,0,0) rotate(-.8deg)}60%{transform:translate3d(2px,0,0) rotate(.6deg)}80%{transform:translate3d(-1px,0,0)}}
  #noche .nc-wall{position:absolute;inset:0;background:radial-gradient(120% 70% at 30% 0%,#5b3aa8 0%,#2c1766 45%,#140a2e 100%);transition:opacity .8s}
  #noche .nc-wall::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 70% at 30% 0%,#ffd1c2 0%,#f3a9c6 40%,#a98ae8 100%);opacity:0;transition:opacity .9s var(--ease)}
  #noche:is([data-ph="3"],[data-ph="4"]) .nc-wall::after{opacity:1}
  #noche .nc-lock{position:absolute;inset:0;padding:52px 5.5% 0;display:flex;flex-direction:column;align-items:center;color:#fff;transition:opacity .5s var(--ease),transform .6s var(--ease)}
  #noche .nc-date{margin:0;font:600 clamp(12px,1.05vw,15px)/1 var(--f-ui);opacity:.9}
  #noche .nc-big{margin:6px 0 0;font:300 clamp(50px,5vw,74px)/1 var(--f-ui);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
  #noche .nc-notes{display:flex;flex-direction:column-reverse;width:100%;margin-top:9%}
  #noche .nc-n{max-height:0;margin-top:0;overflow:hidden;opacity:0;transform:translate3d(0,-14px,0) scale(.95);border-radius:18px;background:rgba(246,242,252,.94);color:#1b1230;transition:max-height .5s var(--ease),margin .5s var(--ease),opacity .35s,transform .55s var(--ease-back)}
  #noche .nc-n.in{max-height:130px;margin-top:8px;opacity:1;transform:none}
  #noche .nc-nh{display:flex;align-items:center;gap:7px;padding:9px 11px 0;font:600 11.5px/1 var(--f-ui);color:#6c6082}
  #noche .nc-app{width:19px;height:19px;border-radius:5px;display:grid;place-items:center;color:#fff;flex:none}
  #noche .nc-app svg{width:13px;height:13px}
  #noche .nc-app.wa{background:var(--wa)}#noche .nc-app.ig{background:linear-gradient(45deg,#f9a03f,#e1306c 50%,#833ab4)}#noche .nc-app.fm{background:#4c6ef5}
  #noche .nc-an{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #noche .nc-an b{color:#1b1230}
  #noche .nc-nh time{font-weight:550}
  #noche .nc-nb{display:flex;gap:9px;align-items:flex-start;padding:6px 11px 11px}
  #noche .nc-nb b{display:block;font:700 13.5px/1.25 var(--f-ui)}
  #noche .nc-nb p{margin:1px 0 0;font:450 13px/1.32 var(--f-ui);color:#3d3156}
  #noche .nc-av{width:34px;height:34px;flex:none;border-radius:50%;background:#d9cff0 center 22%/cover no-repeat}
  #noche .nc-unread{margin:14px 0 0;display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px 0 6px;border-radius:999px;background:var(--red);color:#fff;font:700 12.5px/1 var(--f-ui);box-shadow:0 10px 24px -10px rgba(255,59,92,.8);opacity:0;transition:opacity .3s}
  #noche[data-ph] .nc-unread{opacity:1}
  #noche .nc-unread b{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:9px;background:#fff;color:var(--red);font-size:12px}
  #noche .nc-unread.bump{animation:ncBump .5s var(--ease-back)}
  @keyframes ncBump{40%{transform:scale(1.18)}}
  /* 9:41: se abre el chat de Marta */
  #noche .nc-chat{position:absolute;inset:0;display:flex;flex-direction:column;background:#efeae2 url(wa-tile.svg) 0 0/210px 185px;opacity:0;transform:translate3d(0,4%,0) scale(.98);transition:opacity .5s var(--ease),transform .6s var(--ease)}
  #noche:is([data-ph="3"],[data-ph="4"]) .nc-chat{opacity:1;transform:none;transition-delay:.75s}
  #noche:is([data-ph="3"],[data-ph="4"]) .nc-lock{opacity:0;transform:scale(.96);transition-delay:.7s}
  #noche .nc-ch-hd{display:flex;align-items:center;gap:9px;padding:52px 12px 10px;background:#f7f5f3;box-shadow:0 1px 0 rgba(0,0,0,.08);color:#111b21}
  #noche .nc-back{font:300 30px/1 var(--f-ui);color:#008069;margin-right:-2px}
  #noche .nc-ch-hd b{display:block;font:650 14.5px/1.2 var(--f-ui)}
  #noche .nc-ch-hd small{font-size:11.5px;color:#667781}
  #noche .nc-ch-body{flex:1;display:flex;flex-direction:column;gap:7px;padding:12px 10px;overflow:hidden}
  #noche .nc-day{align-self:center;margin:2px 0;padding:4px 10px;border-radius:8px;background:rgba(255,255,255,.9);font:600 11px/1.2 var(--f-ui);color:#54656f;box-shadow:0 1px .5px rgba(11,20,26,.13)}
  #noche .nc-b{max-width:84%;padding:7px 9px 5px 10px;border-radius:10px;font:450 13.2px/1.36 var(--f-ui);color:#111b21;box-shadow:0 1px .5px rgba(11,20,26,.13)}
  #noche .nc-b time{display:flex;justify-content:flex-end;align-items:center;gap:3px;margin-top:2px;font-size:10.5px;color:#667781}
  #noche .nc-b time svg{width:15px;height:10px;color:#53bdeb}
  #noche .nc-b.in{align-self:flex-start;background:#fff;border-top-left-radius:3px}
  #noche .nc-b.out{align-self:flex-end;background:#d9fdd3;border-top-right-radius:3px}
  #noche .nc-late,#noche .nc-lost{opacity:0;transform:translate3d(0,10px,0) scale(.95);transition:opacity .35s,transform .5s var(--ease-back)}
  #noche:is([data-ph="3"],[data-ph="4"]) .nc-late{opacity:1;transform:none;transition-delay:1.35s}
  #noche[data-ph="4"] .nc-late{transition-delay:0s}
  #noche[data-ph="4"] .nc-lost{opacity:1;transform:none;transition-delay:.2s}
  #noche .nc-lost{box-shadow:0 1px .5px rgba(11,20,26,.13),0 0 0 2px rgba(255,59,92,.55)}

  /* ---------- «Hasta hoy.»: las tres Aura salen del logo y la fila invita a seguir */
  #noche .nc-end{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;padding:clamp(24px,3vw,40px) 0 clamp(64px,8vw,120px);text-align:center}
  #noche .nc-end::before{content:"";position:absolute;left:50%;top:-60px;width:min(980px,130vw);height:640px;margin-left:min(-490px,-65vw);background:radial-gradient(closest-side,rgba(140,104,255,.3),rgba(244,114,182,.14) 48%,rgba(255,138,101,.05) 74%,rgba(255,138,101,0));opacity:0;transition:opacity 1s var(--ease);pointer-events:none}
  #noche .nc-end.in::before{opacity:1}
  #noche .nc-buds{position:relative;width:min(560px,92vw);height:clamp(170px,22vw,230px)}
  #noche .nc-logo{position:absolute;left:50%;top:50%;width:clamp(116px,12vw,156px);aspect-ratio:1;transform:translate(-50%,-50%) scale(.6);opacity:0;transition:transform .8s var(--ease-back),opacity .4s}
  #noche .nc-end.in .nc-logo{transform:translate(-50%,-50%);opacity:1}
  #noche .nc-mark{position:relative;width:100%;height:100%;overflow:visible}
  #noche .nc-glow{position:absolute;left:50%;top:50%;width:330%;height:330%;margin:-165% 0 0 -165%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,214,236,.4),rgba(240,98,146,.18) 40%,rgba(124,77,255,.1) 64%,rgba(124,77,255,0))}
  #noche .nc-buds .buddy{left:50%;top:50%}
  #noche .nc-hh{position:relative;margin:6px 0 0;font:800 clamp(54px,8vw,116px)/.95 var(--f-display);letter-spacing:-.04em;color:#fff;opacity:0;transform:translate3d(0,24px,0);transition:opacity .5s var(--ease) .1s,transform .8s var(--ease-back) .1s}
  #noche .nc-hs{position:relative;margin:16px 0 0;max-width:32ch;font:500 clamp(17px,1.5vw,21px)/1.5 var(--f-ui);color:var(--on-night-2);opacity:0;transition:opacity .6s var(--ease) .35s}
  #noche .nc-end.in .nc-hh{opacity:1;transform:none}
  #noche .nc-end.in .nc-hs{opacity:1}
  /* la fila del siguiente paso, sin mascota propia: el bocadillo apunta hacia arriba, a las tres Aura */
  #noche .nc-guide{position:relative;width:min(100%,440px);margin-top:10px}
  #noche .nc-guide .gd-row{grid-template-columns:minmax(0,1fr);justify-items:center;min-height:0;margin:22px 0 0}
  #noche .nc-guide .gd-mas{display:none}
  #noche .nc-guide .gd-bub{justify-self:center;text-align:center}
  #noche .nc-guide .gd-bub::before{left:50%;top:-7px;margin:0 0 0 -7.5px}
  #noche .nc-guide .gd-bub small{justify-content:center}

  @media (max-width:860px){
    #noche .nc-stage{padding:44px 0 28px}
    #noche .nc-grid{grid-template-columns:minmax(0,1fr);justify-items:center;gap:18px}
    #noche .nc-copy{width:100%}
    #noche .nc-h{margin-bottom:10px;font-size:15.5px}
    #noche .nc-list{gap:2px}
    #noche .nc-list li{grid-template-columns:50px minmax(0,1fr);gap:8px;padding:7px 10px 7px 8px;font-size:16px;line-height:1.35}
    #noche .nc-list time{font-size:15px}
    #noche .nc-list .nc-last q{margin-top:4px;font-size:clamp(23px,6.4vw,28px)}
    #noche .nc-dev{width:min(240px,62vw)}
    #noche .nc-phone{width:100%;height:auto;border-radius:40px;padding:9px}
    #noche .nc-phone>.scrn{border-radius:32px}
    #noche .nc-phone>.isl{top:16px;height:20px}
    #noche .nc-lock{padding-top:42px}
    #noche .nc-notes{margin-top:6%}
    #noche .nc-nh{font-size:10.5px;padding:7px 9px 0}
    #noche .nc-nb{padding:5px 9px 9px;gap:7px}
    #noche .nc-nb p{font-size:11.5px}
    #noche .nc-nb b{font-size:12px}
    #noche .nc-av{width:26px;height:26px}
    #noche .nc-big{font-size:clamp(42px,12vw,52px)}
    #noche .nc-ch-hd{padding-top:40px}
    #noche .nc-b{font-size:12px}
    #noche .nc-buds{height:150px}
    #noche .nc-end{padding:12px 0 56px}
  }

  /* menos movimiento: la noche entera de un vistazo, sin animaciones */
  @media (prefers-reduced-motion:reduce){
    #noche *{transition:none!important;animation:none!important}
  }
  

/* ===== #whatsapp ===== */
#whatsapp{overflow:hidden;overflow:clip;contain-intrinsic-size:auto 1300px}
@media (max-width:959px){#whatsapp{contain-intrinsic-size:auto 1120px}}
#whatsapp::before{content:"";position:absolute;right:-12%;top:18%;width:min(900px,90vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(124,77,255,.28),rgba(240,98,146,.1) 55%,rgba(124,77,255,0));pointer-events:none}
/* móvil: titular → fila con el siguiente paso → el chat → una línea; escritorio: titular arriba, la fila junto al chat */
#whatsapp::after{content:"";position:absolute;left:0;right:0;top:0;height:110px;background:linear-gradient(180deg,var(--night),rgba(12,6,32,0));pointer-events:none}   /* sin costura con la noche */
#whatsapp .wa-g{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "guide" "demo" "foot";row-gap:0}
#whatsapp .wa-copy{grid-area:copy}
#whatsapp .wa-guide{grid-area:guide;min-width:0}
#whatsapp .wa-demo{grid-area:demo;position:relative;min-width:0}
#whatsapp .wa-foot{grid-area:foot}
@media (min-width:960px){
  #whatsapp .wa-g{grid-template-columns:minmax(0,390px) minmax(0,1fr);grid-template-areas:"copy copy" "foot demo" "guide demo";grid-template-rows:auto 1fr auto;column-gap:clamp(36px,4.5vw,70px)}
  #whatsapp .wa-copy{margin-bottom:clamp(30px,3.6vw,48px)}
  #whatsapp .wa-guide{align-self:end;padding-bottom:84px}
  #whatsapp .wa-foot{align-self:start;margin:6px 0 0}
}
#whatsapp .clock svg{color:var(--lilac)}
#whatsapp .wa-pain{margin-top:20px;font-size:clamp(34px,4.9vw,68px);line-height:1.02;letter-spacing:-.032em}
#whatsapp .wa-late{color:var(--on-night-2)}
#whatsapp .wa-tt{position:relative;display:inline-block;white-space:nowrap}
#whatsapp .wa-old{position:relative;display:inline-block;transition:opacity .5s .5s}
#whatsapp .wa-old::after{content:"";position:absolute;left:-4%;right:-4%;top:54%;height:.08em;border-radius:9px;background:var(--coral);transform:scaleX(0);transform-origin:0 50%;transition:transform .55s var(--ease)}
#whatsapp .wa-new{display:none;margin-left:.22em}
#whatsapp .solved .wa-old{opacity:.5}
#whatsapp .solved .wa-old::after{transform:scaleX(1)}
#whatsapp .solved .wa-new{display:inline-block;animation:waNew .7s .45s var(--ease-back) both}
@keyframes waNew{from{opacity:0;transform:translateY(.35em) scale(.9)}to{opacity:1;transform:none}}
#whatsapp .wa-lead{margin-top:18px;max-width:52ch;color:var(--on-night-2)}
#whatsapp .wa-lead b{color:#fff;font-weight:650}
/* una línea debajo: lo médico no lo contesta */
#whatsapp .wa-foot{display:flex;align-items:flex-start;gap:12px;margin:22px 0 0;max-width:46ch;font:450 16px/1.5 var(--f-ui);color:var(--on-night-2)}
#whatsapp .wa-foot b{color:#fff;font-weight:650}
#whatsapp .wa-foot i{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);color:var(--lilac)}
#whatsapp .wa-foot i svg{width:18px;height:18px}

/* ---------- el WhatsApp de AURA (recreación fiel del panel) */
#whatsapp .wa-win{position:relative;container:wa/inline-size;border-radius:22px;background:#fff;color:#2b1b25;overflow:hidden;box-shadow:0 80px 140px -60px rgba(0,0,0,.9),0 30px 70px -30px rgba(90,40,170,.55),0 0 0 1px rgba(255,255,255,.12)}
#whatsapp .wa-bar{display:flex;align-items:center;gap:8px;height:52px;padding:0 12px 0 16px;background:linear-gradient(180deg,#f8f4fc,#efe9f7);border-bottom:1px solid rgba(40,22,70,.09)}
#whatsapp .wa-dots{display:flex;gap:7px;margin-right:4px}
#whatsapp .wa-dots i{width:11px;height:11px;border-radius:50%;background:#ff8b7a}
#whatsapp .wa-dots i:nth-child(2){background:#ffd36b}#whatsapp .wa-dots i:nth-child(3){background:#5ad38a}
#whatsapp .wa-brand{margin-right:4px;font:800 15px/1 var(--f-ui);letter-spacing:-.02em;color:#2b1b25;white-space:nowrap}
#whatsapp .wa-brand span{font-weight:800;letter-spacing:.02em;background:linear-gradient(95deg,#c13b8f,#7c4dff);-webkit-background-clip:text;background-clip:text;color:transparent}
#whatsapp .wa-time{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 11px;border-radius:11px;background:#fff;color:#2b1b25;font:650 14px/1 var(--f-ui);font-variant-numeric:tabular-nums;box-shadow:0 2px 6px -2px rgba(40,22,70,.25),0 0 0 1px rgba(40,22,70,.07)}
#whatsapp .wa-time svg{width:15px;height:15px}
#whatsapp .wa-cl{margin-left:auto;display:inline-flex;align-items:center;gap:8px;min-width:0;padding:0 4px;font:650 13.5px/1 var(--f-ui);color:#3b2a45;white-space:nowrap}
#whatsapp .wa-cl>span:last-child{overflow:hidden;text-overflow:ellipsis;max-width:22ch}
#whatsapp .wa-cl-lg{width:28px;height:28px;flex:none;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px rgba(40,22,70,.08)}
#whatsapp .wa-cl-lg svg{width:100%;height:100%;display:block}
#whatsapp .wa-conn{margin-left:4px;padding:7px 12px;border-radius:999px;background:#fff7e8;color:#6b5228;font:650 12.5px/1 var(--f-ui);box-shadow:inset 0 0 0 1px #f1e3c4;white-space:nowrap}
#whatsapp .wa-body{position:relative;height:620px;background:#f0eae3}
#whatsapp .wa-view{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff}
/* cabecera del chat: quién es, quién responde y las acciones del chat (la misma del panel) */
#whatsapp .wa-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who qr" "acts acts";align-items:center;gap:10px 14px;padding:11px 14px 11px 16px;border-bottom:1px solid #efe7f1;background:#fff}
#whatsapp .wa-head::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,#dfa1cf,#c9b6ff)}
#whatsapp .wa-who{grid-area:who;display:flex;align-items:center;gap:12px;min-width:0}
#whatsapp .wa-ini{width:44px;height:44px;border-radius:50%;flex:none;display:grid;place-items:center;font:700 16px/1 var(--f-ui);color:#fff;background:linear-gradient(145deg,#e6a5ab,#c8777f);box-shadow:0 6px 14px -8px rgba(120,40,60,.7)}
#whatsapp .wa-nm{min-width:0}
#whatsapp .wa-nm b{display:block;font:700 17px/1.2 var(--f-ui);color:#2b1b25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#whatsapp .wa-nm small{display:block;font:450 13px/1.35 var(--f-ui);color:#66727a;white-space:nowrap}
#whatsapp .wa-qr{grid-area:qr;display:flex;flex-direction:column;gap:3px;flex:none}
#whatsapp .wa-qr-l{font:700 10.5px/1 var(--f-ui);letter-spacing:.05em;text-transform:uppercase;color:#9b7f8c}
#whatsapp .wa-seg{position:relative;display:flex;padding:3px;border-radius:14px;background:#f7f1f9;box-shadow:inset 0 0 0 1px #ece2f0}
#whatsapp .wa-seg span{display:inline-flex;align-items:center;height:38px;padding:0 13px;border-radius:11px;font:650 14px/1 var(--f-ui);color:#8a6680}
#whatsapp .wa-seg .on{background:#e3f0e2;color:#4f6e4b}
#whatsapp .wa-acts{grid-area:acts;display:flex;gap:6px;min-width:0}
#whatsapp .wa-ab{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;padding:0 14px;border-radius:13px;font:650 13.5px/1 var(--f-ui);color:#6a526a;background:#fff;box-shadow:inset 0 0 0 1px #eadff0;white-space:nowrap;transition:background-color .2s,box-shadow .2s,transform .2s var(--ease-back)}
#whatsapp .wa-ab svg{width:16px;height:16px;flex:none}
#whatsapp .wa-ab.hi{background:#f6eefa;color:#6d4a6f}
#whatsapp .wa-ab.press{transform:scale(.93);background:#2b1b25;color:#fff}
#whatsapp .wa-ab.cue{animation:waCue 1.2s var(--ease) infinite}
@keyframes waCue{0%,100%{box-shadow:inset 0 0 0 1.5px #c78ad0,0 0 0 0 rgba(240,98,146,0)}50%{box-shadow:inset 0 0 0 1.5px #c78ad0,0 0 0 6px rgba(240,98,146,.3)}}
#whatsapp .wa-ab.call::after{content:"";position:absolute;right:7px;top:7px;width:6px;height:6px;border-radius:50%;background:#e0a24d}
#whatsapp .wa-sub{display:flex;align-items:center;gap:12px;height:34px;padding:0 14px 0 16px;border-bottom:1px solid #f1eaf3;font:450 12.5px/1 var(--f-ui);color:#584950;background:#fff}
#whatsapp .wa-sub em{margin-left:auto;font-style:normal;padding:6px 11px;border-radius:999px;box-shadow:inset 0 0 0 1px #e8dcef;font-weight:650;color:#6e4c68}
/* zona de mensajes + compositor (la hoja «Agendar» se abre encima, sin salir del chat) */
#whatsapp .wa-main{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}
#whatsapp .wa-msgs{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;gap:9px;padding:14px 18px 14px;overflow:hidden auto;overscroll-behavior:contain;scrollbar-width:none;background-color:#f0eae3;background-size:210px 185px}
#whatsapp .wa-msgs::-webkit-scrollbar{display:none}
#whatsapp .wa-msgs>:first-child{margin-top:auto}
#whatsapp .wa-day{align-self:center;padding:4px 10px;border-radius:8px;background:#e1f2fa;color:#4b6167;font:500 12.5px/1.3 var(--f-ui)}
#whatsapp .wa-sys{align-self:center;max-width:88%;text-align:center;padding:6px 12px;border-radius:9px;background:#fff5d7;color:#6b5a2e;font:500 12.5px/1.45 var(--f-ui);box-shadow:0 1px 1px rgba(0,0,0,.05)}
#whatsapp .wa-evt{align-self:center;display:inline-flex;align-items:center;gap:8px;max-width:94%;padding:7px 13px 7px 8px;border-radius:12px;background:#fff;color:#23513f;font:600 13px/1.35 var(--f-ui);box-shadow:0 1px 1px rgba(0,0,0,.06),inset 0 0 0 1.5px #bfe9d3;animation:waPop .5s var(--ease-back) both}
#whatsapp .wa-evt i{width:24px;height:24px;flex:none;display:grid;place-items:center;border-radius:50%;background:#22c58b;color:#fff}
#whatsapp .wa-evt i svg{width:14px;height:14px}
#whatsapp .wa-b{position:relative;max-width:min(80%,540px);padding:9px 12px 6px;border-radius:12px;font:400 15px/1.45 var(--f-ui);color:#1f2421;box-shadow:0 1px 1px rgba(0,0,0,.07),0 8px 16px -12px rgba(0,0,0,.3);opacity:0;transform:translateY(10px) scale(.96);transform-origin:0 100%;transition:opacity .3s var(--ease),transform .5s var(--ease-back)}
#whatsapp .wa-b.on{opacity:1;transform:none}
#whatsapp .wa-b.in{align-self:flex-start;background:#fff;border-top-left-radius:4px}
#whatsapp .wa-b.out{align-self:flex-end;background:#d9fdd3;border-top-right-radius:4px;transform-origin:100% 100%}
#whatsapp .wa-b p{margin:0}
#whatsapp .wa-tm{display:block;margin-top:1px;text-align:right;font:400 11px/1.2 var(--f-ui);color:#6f6f6b}
#whatsapp .wa-tm i{margin-left:3px;font-style:normal;color:#53bdeb;letter-spacing:-.18em}
#whatsapp .wa-typ{align-self:flex-end;display:flex;align-items:center;gap:10px;animation:waPop .35s var(--ease-back) both}
#whatsapp .wa-typ small{font:500 12px/1 var(--f-ui);color:#6c6082}
#whatsapp .wa-typ span{display:flex;gap:4px;padding:12px 14px;border-radius:12px;border-top-right-radius:4px;background:#d9fdd3;box-shadow:0 1px 1px rgba(0,0,0,.07)}
#whatsapp .wa-typ i{width:7px;height:7px;border-radius:50%;background:#5f9a64;animation:waDot 1.1s infinite}
#whatsapp .wa-typ i:nth-child(2){animation-delay:.15s}#whatsapp .wa-typ i:nth-child(3){animation-delay:.3s}
@keyframes waDot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@keyframes waPop{from{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}
/* lo que toca el visitante: el mensaje de Marta (paso 1) y su respuesta «¡Sí! 😍» (paso 2), grandes y dentro del chat */
#whatsapp .wa-ask{align-self:stretch;display:flex;align-items:center;gap:12px;width:100%;min-height:68px;margin-top:2px;padding:10px 12px 10px 10px;border:0;border-radius:18px 18px 18px 6px;background:#fff;color:#1f2421;text-align:left;font:500 16px/1.35 var(--f-ui);cursor:pointer;box-shadow:0 14px 28px -16px rgba(20,8,60,.6),inset 0 0 0 1.5px #d9cde6;-webkit-tap-highlight-color:transparent;touch-action:manipulation;animation:waPop .5s var(--ease-back) both;transition:transform .2s var(--ease-back)}
#whatsapp .wa-ask:active{transform:scale(.98)}
#whatsapp .wa-ask .av{width:42px;height:42px;flex:none;border-radius:50%;background:#d9cff0 center 22%/cover no-repeat}
#whatsapp .wa-ask small{display:block;margin-bottom:2px;font:700 12.5px/1.2 var(--f-ui);color:#8a4a86}
#whatsapp .wa-ask .go{margin-left:auto;width:42px;height:42px;flex:none;display:grid;place-items:center;border-radius:50%;background:#22c58b;color:#fff}
#whatsapp .wa-ask .go svg{width:19px;height:19px}
#whatsapp .wa-quick{align-self:center;display:flex;align-items:center;gap:12px;margin-top:4px;padding:6px 6px 6px 16px;border-radius:999px;background:#1d1236;color:#fff;font:600 14px/1.2 var(--f-ui);box-shadow:0 14px 30px -14px rgba(20,8,60,.9);animation:waPop .5s var(--ease-back) both}
#whatsapp .wa-quick button{min-height:50px;padding:0 24px;border:0;border-radius:999px;background:#fff;color:#1f2421;font:700 18px/1 var(--f-ui);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
/* pie: ventana de atención y compositor (Responder / Nota interna), como en el panel */
#whatsapp .wa-wbar{display:flex;align-items:center;gap:8px;height:30px;padding:0 18px;background:#eef8f2;color:#245442;font:500 12.5px/1 var(--f-ui);white-space:nowrap;overflow:hidden}
#whatsapp .wa-wbar[hidden]{display:none}
#whatsapp .wa-wbar i{width:7px;height:7px;border-radius:50%;background:#2a9d6f;flex:none}
#whatsapp .wa-comp{padding:7px 14px 10px;background:#fff;border-top:1px solid #f1eaf3}
#whatsapp .wa-ctabs{display:flex;gap:6px;margin-bottom:6px}
#whatsapp .wa-ctabs span{display:inline-flex;align-items:center;height:30px;padding:0 11px;border-radius:10px;font:650 13px/1 var(--f-ui);color:#786e7f;background:#f6f4f0}
#whatsapp .wa-ctabs span.on{background:#f0e4f6;color:#683c68}
#whatsapp .wa-inp{display:flex;align-items:center;gap:12px;height:48px;padding:0 6px 0 7px;border-radius:26px;box-shadow:inset 0 0 0 1px #eadff0}
#whatsapp .wa-plus{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:12px;box-shadow:inset 0 0 0 1px #e5dcec;color:#7a6a80}
#whatsapp .wa-plus svg{width:18px;height:18px}
#whatsapp .wa-ph{flex:1;min-width:0;font:450 14.5px/1.3 var(--f-ui);color:#7c8181;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#whatsapp .wa-send{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#c13b8f,#7c4dff);color:#fff}
#whatsapp .wa-send svg{width:18px;height:18px}
/* hoja «Agendar» (se abre dentro del chat) */
#whatsapp .wa-sheet{position:absolute;left:0;right:0;bottom:0;z-index:5;display:flex;flex-direction:column;max-height:100%;border-radius:22px 22px 0 0;background:#fff;color:#2b1b25;box-shadow:0 -30px 60px -30px rgba(40,10,70,.55),0 -1px 0 rgba(40,22,70,.08);opacity:0;visibility:hidden;transform:translateY(26px);transition:opacity .3s var(--ease),transform .5s var(--ease-back),visibility 0s .5s}
#whatsapp .wa-sheet.on{opacity:1;visibility:visible;transform:none;transition:opacity .25s var(--ease),transform .5s var(--ease-back),visibility 0s}
#whatsapp .wa-msgs,#whatsapp .wa-comp,#whatsapp .wa-wbar{transition:opacity .3s}
#whatsapp .wa-main.sheeted .wa-msgs,#whatsapp .wa-main.sheeted .wa-comp,#whatsapp .wa-main.sheeted .wa-wbar{opacity:.5}
#whatsapp .wa-sh-h{position:relative;padding:14px 18px 8px}
#whatsapp .wa-sh-h::before{content:"";position:absolute;left:50%;top:6px;width:38px;height:4px;margin-left:-19px;border-radius:9px;background:#e6dcea}
#whatsapp .wa-sh-k{display:block;font:700 10.5px/1.2 var(--f-ui);letter-spacing:.12em;text-transform:uppercase;color:#8d5a8b}
#whatsapp .wa-sh-t{display:block;margin-top:2px;font:750 18px/1.2 var(--f-ui);letter-spacing:-.015em;color:#2b1b25}
#whatsapp .wa-sh-b{flex:1;min-height:0;overflow:hidden;padding:2px 18px 14px}
#whatsapp .wa-agw{position:relative;height:206px;border-radius:16px;overflow:hidden;background:#f6f2fb;box-shadow:inset 0 0 0 1px #ece2f0}
#whatsapp .wa-cam{position:absolute;inset:0;overflow:hidden}
#whatsapp .wa-cam .scr{position:absolute;left:0;top:0;transform-origin:0 0}
#whatsapp .wa-agl{position:absolute;right:10px;top:10px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.96);color:#4a2f52;font:650 12px/1.2 var(--f-ui);box-shadow:0 6px 16px -10px rgba(40,10,70,.6)}
#whatsapp .wa-agl svg{width:13px;height:13px;color:#8a4a86}
#whatsapp .wa-slot{position:absolute;border-radius:12px;box-shadow:inset 0 0 0 2.5px #22c58b;background:rgba(34,197,139,.08);animation:waSlot 1.3s ease-in-out infinite}
#whatsapp .wa-slot.off{animation:none;opacity:0;transition:opacity .3s}
#whatsapp .wa-slot span{position:absolute;left:8px;top:50%;transform:translateY(-50%);padding:3px 9px;border-radius:999px;background:#fff;color:#16613f;font:700 12px/1.2 var(--f-ui);white-space:nowrap;box-shadow:0 4px 12px -8px rgba(16,90,60,.8)}
@keyframes waSlot{50%{background:rgba(34,197,139,.2)}}
#whatsapp .wa-card{opacity:0;transform:translateY(-160%) scale(1.08) rotate(-2deg);transition:transform .75s var(--ease-back),opacity .25s,box-shadow .4s;box-shadow:0 30px 50px -20px rgba(20,8,60,.6)}
#whatsapp .wa-card.in{opacity:1;transform:none;box-shadow:0 12px 24px -14px rgba(20,8,60,.5)}
#whatsapp .wa-spark{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;opacity:0;pointer-events:none}
#whatsapp .wa-spark.go{animation:waSpark .9s var(--ease) forwards}
@keyframes waSpark{0%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.3)}}
#whatsapp .wa-sum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:12px 2px 0}
#whatsapp .wa-sum div{min-width:0}
#whatsapp .wa-sum dt{font:700 10px/1.2 var(--f-ui);letter-spacing:.1em;text-transform:uppercase;color:#8f6f8c}
#whatsapp .wa-sum dd{margin:2px 0 0;font:650 14px/1.3 var(--f-ui);color:#2b1b25;overflow-wrap:anywhere}
#whatsapp .wa-sh-f{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px}
#whatsapp .wa-okb{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:14px;background:linear-gradient(95deg,#c13b8f,#7f43c5);color:#fff;font:700 15px/1 var(--f-ui);box-shadow:0 12px 24px -14px rgba(150,40,140,.9);transition:transform .2s var(--ease-back),opacity .2s,background .3s}
#whatsapp .wa-okb.press{transform:scale(.96)}
#whatsapp .wa-okb.wait{opacity:.6}
#whatsapp .wa-okb.done{opacity:1;background:#22c58b;box-shadow:0 12px 24px -14px rgba(16,120,80,.9)}
#whatsapp .wa-okb.cue{animation:waOk 1.2s ease-in-out infinite}
@keyframes waOk{50%{box-shadow:0 12px 24px -14px rgba(150,40,140,.9),0 0 0 6px rgba(193,59,143,.22)}}
#whatsapp .wa-okb svg{width:17px;height:17px}

/* ---------- ventana ancha: una sola fila en la cabecera, como el panel en el ordenador */
@container wa (min-width:900px){#whatsapp .wa-head{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"who qr acts"}}
/* ---------- ventana estrecha (móvil): como el WhatsApp de AURA en el teléfono */
@container wa (max-width:600px){
  #whatsapp .wa-head{gap:9px 10px;padding:9px 10px 9px 12px}
  #whatsapp .wa-ini{width:38px;height:38px;font-size:14px}
  #whatsapp .wa-nm b{font-size:15px}
  #whatsapp .wa-nm small{font-size:12px}
  #whatsapp .wa-seg span{height:34px;padding:0 9px;font-size:12.5px}
  #whatsapp .wa-ab{flex:1 1 auto;min-width:0;height:40px;padding:0 6px;gap:5px;font-size:13px}
  #whatsapp .wa-sub{display:none}
  #whatsapp .wa-msgs{padding:10px 10px 12px}
  #whatsapp .wa-b{max-width:88%;font-size:14.5px}
  #whatsapp .wa-comp{padding:6px 10px 9px}
  #whatsapp .wa-ctabs{display:none}
  #whatsapp .wa-inp{height:46px}
  #whatsapp .wa-conn{display:none}
  #whatsapp .wa-sh-h{padding:14px 14px 6px}
  #whatsapp .wa-sh-b{padding:2px 12px 12px}
  #whatsapp .wa-agw{height:150px}
  #whatsapp .wa-agl{right:auto;left:10px}
  #whatsapp .wa-sum{gap:7px 10px;margin-top:10px}
  #whatsapp .wa-sum dd{font-size:13.5px}
  #whatsapp .wa-sh-f{margin-top:10px}
  #whatsapp .wa-okb{flex:1 1 auto}
}
@container wa (max-width:470px){#whatsapp .wa-cl>span:last-child{display:none}#whatsapp .wa-cl{padding-right:2px}#whatsapp .wa-dots{display:none}#whatsapp .wa-bar{padding-left:14px}}
@container wa (max-width:350px){#whatsapp .wa-brand{font-size:13.5px;margin-right:0}#whatsapp .wa-bar{gap:6px;padding:0 8px 0 12px}#whatsapp .wa-ini{width:34px;height:34px;font-size:13px}#whatsapp .wa-who{gap:8px}#whatsapp .wa-seg span{padding:0 7px;font-size:12px}#whatsapp .wa-acts{gap:4px}#whatsapp .wa-ab{padding:0 4px;gap:4px;font-size:12.5px}#whatsapp .wa-ask{font-size:15px;gap:9px}#whatsapp .wa-ask .av{width:36px;height:36px}}
@container wa (max-width:318px){#whatsapp .wa-brand span{display:none}#whatsapp .wa-ab svg{display:none}}
/* en el móvil, la fila del siguiente paso y el chat entero caben a la vez en la pantalla */
@media (max-width:959px){
  #whatsapp{padding-block:64px 56px}
  #whatsapp .wa-pain{font-size:clamp(32px,8.6vw,46px)}
  #whatsapp .wa-lead{margin-top:14px;font-size:17px}
  #whatsapp .wa-guide .gd-row{margin:18px 0 14px}
  #whatsapp .wa-body{height:520px;height:clamp(440px,calc(100svh - 300px),540px)}
  #whatsapp .wa-msgs>*{flex:none}
}
/* alto corto (navegador integrado del móvil, ~660 px): cabecera y pie más bajos para que el chat respire */
@media (max-width:959px) and (max-height:780px){
  #whatsapp .wa-body{height:420px;height:clamp(400px,calc(100svh - 270px),540px)}
  #whatsapp .wa-bar{height:44px}
  #whatsapp .wa-time{height:30px}
  #whatsapp .wa-head{gap:6px 8px;padding:7px 10px 7px 12px}
  #whatsapp .wa-ini{width:34px;height:34px;font-size:13px}
  #whatsapp .wa-who{gap:9px}
  #whatsapp .wa-qr{gap:0}
  #whatsapp .wa-qr-l{display:none}
  #whatsapp .wa-seg{padding:2px;border-radius:12px}
  #whatsapp .wa-seg span{height:30px}
  #whatsapp .wa-ab{height:32px;border-radius:11px}
  #whatsapp .wa-wbar{height:26px}
  #whatsapp .wa-comp{padding:5px 10px 7px}
  #whatsapp .wa-inp{height:40px;gap:8px}
  #whatsapp .wa-plus{width:30px;height:30px}
  #whatsapp .wa-send{width:32px;height:32px}
  #whatsapp .wa-msgs{gap:7px;padding:8px 10px 10px}
  #whatsapp .wa-b{padding:7px 11px 5px;line-height:1.38}
  #whatsapp .wa-quick{margin-top:2px;padding:4px 4px 4px 14px}
  #whatsapp .wa-quick button{min-height:44px;padding:0 20px}
  #whatsapp .wa-ask{min-height:60px}
  #whatsapp .wa-guide .gd-row{margin:12px 0 10px}
}
@media (prefers-reduced-motion:reduce){#whatsapp .wa-b,#whatsapp .wa-card,#whatsapp .wa-sheet,#whatsapp .wa-sheet.on{transition:none}#whatsapp .wa-slot,#whatsapp .wa-ab.cue,#whatsapp .wa-okb.cue,#whatsapp .wa-typ i{animation:none}}

/* ===== #instagram ===== */
#instagram{overflow:hidden;overflow:clip;contain-intrinsic-size:auto 1380px;background:radial-gradient(110% 80% at 85% 10%,#2b1458 0%,#170b35 50%,#0b0519 100%)}
#instagram::before{content:"";position:absolute;left:46%;top:34%;width:min(860px,98vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(240,98,146,.24),rgba(255,138,101,.07) 55%,rgba(124,77,255,0));pointer-events:none}
/* móvil: titular → fila con el siguiente paso → su móvil (con el botón dentro); escritorio: los pasos y la fila a la izquierda */
#instagram .ig-g{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "guide" "demo";row-gap:0}
@media (min-width:960px){#instagram .ig-g{grid-template-columns:minmax(0,350px) minmax(0,1fr);grid-template-areas:"copy copy" "steps demo" "guide demo" ". demo";grid-template-rows:auto auto auto 1fr;column-gap:clamp(40px,5vw,76px)}#instagram .ig-copy{margin-bottom:34px}#instagram .ig-guide .gd-row{margin:30px 0 0}}
#instagram .ig-copy{grid-area:copy}
#instagram .ig-steps{grid-area:steps}
#instagram .ig-guide{grid-area:guide;min-width:0}
#instagram .ig-demo{grid-area:demo;position:relative;min-width:0}
#instagram .clock svg{color:#ffb39b}
#instagram .ig-pain{margin-top:22px;font-size:clamp(36px,4.9vw,68px);line-height:1.02;letter-spacing:-.032em}
#instagram .ig-l2{color:var(--on-night-2)}
#instagram .ig-who{position:relative;display:inline-block;white-space:nowrap}
#instagram .ig-old{position:relative;display:inline-block;transition:opacity .5s .5s}
#instagram .ig-old::after{content:"";position:absolute;left:-4%;right:-4%;top:54%;height:.08em;border-radius:9px;background:var(--coral);transform:scaleX(0);transform-origin:0 50%;transition:transform .55s var(--ease)}
#instagram .ig-new{display:none;margin-left:.22em}
#instagram .solved .ig-old{opacity:.5}
#instagram .solved .ig-old::after{transform:scaleX(1)}
#instagram .solved .ig-new{display:inline-block;animation:igNew .7s .45s var(--ease-back) both}
@keyframes igNew{from{opacity:0;transform:translateY(.35em) scale(.9)}to{opacity:1;transform:none}}
#instagram .ig-lead{margin-top:18px;max-width:54ch;color:var(--on-night-2)}
#instagram .ig-lead b{color:#fff;font-weight:650}

/* ---------- la secuencia real: comentario → privado → página → solicitud → cita */
#instagram .ig-steps{list-style:none;margin:0;padding:0;display:grid;gap:2px}
#instagram .ig-steps li{position:relative;display:grid;grid-template-columns:34px 1fr;align-items:center;gap:14px;min-height:50px;padding:8px 12px 8px 8px;border-radius:18px;color:var(--on-night-2);transition:background-color .35s,color .35s}
#instagram .ig-steps li::before{content:"";position:absolute;left:24px;top:42px;height:24px;width:2px;border-radius:2px;background:rgba(255,255,255,.12);transition:background .35s}
#instagram .ig-steps li:last-child::before{display:none}
#instagram .ig-steps .n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:700 14px/1 var(--f-ui);color:var(--on-night-2);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.22);background:rgba(10,4,26,.6);transition:background .35s,color .35s,box-shadow .35s,transform .45s var(--ease-back)}
#instagram .ig-steps .n svg{width:16px;height:16px;display:none}
#instagram .ig-steps b{font:650 16.5px/1.25 var(--f-ui);color:inherit}
#instagram .ig-steps .s{display:none}
#instagram .ig-steps li.on{background:rgba(255,255,255,.075);color:#fff}
#instagram .ig-steps li.on .n{background:var(--grad);color:#fff;box-shadow:0 8px 20px -8px rgba(240,98,146,.9);transform:scale(1.08)}
#instagram .ig-steps li.ok{color:#fff}
#instagram .ig-steps li.ok .n{background:#fff;color:#2a1a3e;box-shadow:none}
#instagram .ig-steps li.ok .n span{display:none}
#instagram .ig-steps li.ok .n svg{display:block}
#instagram .ig-steps li.ok::before{background:linear-gradient(#ff8a65,#f06292)}

@keyframes igPop{from{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:none}}
/* el dedo de la paciente: un toque que se ve donde pulsa (la demo sigue sola tras el primer toque del visitante) */
#instagram .ig-touch{position:absolute;z-index:9;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 0 0 2px rgba(20,10,40,.25),0 8px 20px -6px rgba(20,10,40,.5);pointer-events:none;opacity:0;transform:scale(.4)}
#instagram .ig-touch.go{animation:igTouch .62s var(--ease) forwards}
@keyframes igTouch{0%{opacity:0;transform:scale(1.5)}35%{opacity:1;transform:scale(.8)}60%{opacity:1;transform:scale(.68)}100%{opacity:0;transform:scale(1)}}
#instagram .ig-v .tapd{transform:scale(.95)!important;transition:transform .15s}
/* la reserva, dentro del bocadillo de la fila al terminar */
#instagram .ig-book{display:flex;width:100%;height:auto;min-height:50px;margin-top:12px;padding:12px 16px;font-size:16.5px;line-height:1.2;white-space:normal;text-align:center}

/* ---------- escenario: el móvil de la paciente y tu panel */
#instagram .ig-stage{position:relative;--ph-w:330px;--ph-h:calc(var(--ph-w) * 844 / 390);height:calc(var(--ph-h) + 44px)}
#instagram .ig-phone{position:absolute;left:0;top:0;z-index:3;width:var(--ph-w)}
#instagram .ig-phone .scrn{container-type:inline-size;background:#fff;isolation:isolate}
#instagram .ig-cap{position:absolute;left:0;width:var(--ph-w);top:calc(var(--ph-h) + 16px);margin:0;text-align:center;font:500 13.5px/1.3 var(--f-ui);color:var(--on-night-2)}
#instagram .ig-v{--u:calc(100cqw / 390);position:absolute;inset:0;overflow:hidden;background:#fff;color:#141018;font-family:var(--f-ui);transition:opacity .45s var(--ease),transform .6s var(--ease)}
#instagram .ig-v:not(.on){opacity:0;pointer-events:none;transform:translateX(16%)}
#instagram .ig-v.back:not(.on){transform:translateX(-10%)}
#instagram .ig-v.up:not(.on){transform:translateY(14%)}
/* barra de estado */
#instagram .ig-sb{--u:calc(100cqw / 390);position:absolute;left:0;right:0;top:0;z-index:7;height:calc(47 * var(--u));display:flex;align-items:center;justify-content:space-between;padding:calc(4 * var(--u)) calc(30 * var(--u)) 0 calc(38 * var(--u));font:600 calc(15 * var(--u))/1 var(--f-ui);color:#111;pointer-events:none;transition:color .4s}
#instagram .ig-sb.light{color:#fff}
#instagram .ig-sb .t{transition:opacity .3s}
#instagram .ig-sb.lock .t{opacity:0}
#instagram .ig-sb svg{height:calc(12 * var(--u));width:auto}
/* publicación de la clínica */
#instagram .post{padding-top:calc(47 * var(--u))}
#instagram .post .nav{display:flex;align-items:center;gap:calc(12 * var(--u));height:calc(42 * var(--u));padding:0 calc(14 * var(--u));font:700 calc(16 * var(--u))/1 var(--f-ui)}
#instagram .post .nav svg{width:calc(22 * var(--u));height:calc(22 * var(--u))}
#instagram .post .hd{display:flex;align-items:center;gap:calc(10 * var(--u));height:calc(54 * var(--u));padding:0 calc(12 * var(--u))}
#instagram .ig-ring{width:calc(38 * var(--u));height:calc(38 * var(--u));border-radius:50%;padding:calc(2 * var(--u));background:conic-gradient(from 200deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5,#feda75);flex:none}
#instagram .ig-ring span{display:block;width:100%;height:100%;border-radius:50%;background:#fff;padding:calc(1.5 * var(--u))}
#instagram .ig-ring svg,#instagram .lgx svg{width:100%;height:100%;display:block}
#instagram .post .who{min-width:0;flex:1}
#instagram .post .who b{display:block;font:700 calc(14 * var(--u))/1.2 var(--f-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#instagram .post .who small{display:block;font:450 calc(12 * var(--u))/1.3 var(--f-ui);color:#6b6470}
#instagram .post .dots{width:calc(20 * var(--u));height:calc(20 * var(--u));color:#222;flex:none}
#instagram .post .ph{position:relative;height:calc(372 * var(--u));background:#e9c9c0 url(../pulpia/reel/labios.ce8b23a7.webp) 50% 50%/cover no-repeat;overflow:hidden}#instagram .post .ph .ig-reel{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}#instagram .post .ph>:not(.ig-reel){z-index:1}
#instagram .post .ph i{position:absolute;right:calc(12 * var(--u));top:calc(12 * var(--u));width:calc(24 * var(--u));height:calc(24 * var(--u));color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}
#instagram .post .ph i svg{width:100%;height:100%}
#instagram .post .ph .say{position:absolute;left:0;right:0;top:calc(30 * var(--u));text-align:center;font:800 calc(22 * var(--u))/1.22 var(--f-ui);letter-spacing:-.01em;color:#111;pointer-events:none}
#instagram .post .ph .say b,#instagram .post .ph .say>span{display:inline;padding:calc(3 * var(--u)) calc(10 * var(--u));border-radius:calc(9 * var(--u));background:#fff;-webkit-box-decoration-break:clone;box-decoration-break:clone;box-shadow:0 calc(6 * var(--u)) calc(16 * var(--u)) calc(-8 * var(--u)) rgba(0,0,0,.45)}
#instagram .post .ph .say b{font-weight:800}
#instagram .post .ph .say em{font-style:normal;color:#c2185b}
#instagram .post .ph .say>span{font-weight:700;font-size:calc(18 * var(--u));line-height:1.9}
#instagram .post .ph .prog{position:absolute;left:0;right:0;bottom:0;height:calc(3 * var(--u));background:rgba(255,255,255,.35)}
#instagram .post .ph .prog::after{content:"";position:absolute;left:0;top:0;bottom:0;width:42%;background:#fff}
#instagram .post .ph .ilu{position:absolute;left:calc(9 * var(--u));bottom:calc(9 * var(--u));padding:calc(3 * var(--u)) calc(8 * var(--u));border-radius:calc(6 * var(--u));background:rgba(10,4,24,.42);color:#fff;font:600 calc(11 * var(--u))/1.25 var(--f-ui);font-style:normal}
#instagram .post .acts{display:flex;align-items:center;gap:calc(16 * var(--u));height:calc(44 * var(--u));padding:0 calc(14 * var(--u))}
#instagram .post .acts svg{width:calc(25 * var(--u));height:calc(25 * var(--u));color:#141018}
#instagram .post .acts .sv{margin-left:auto}
#instagram .post .capt{margin:0;padding:0 calc(14 * var(--u));font:400 calc(14 * var(--u))/1.42 var(--f-ui)}
#instagram .post .capt b{font-weight:700}
#instagram .post .cms{display:flex;flex-direction:column;gap:calc(9 * var(--u));padding:calc(10 * var(--u)) calc(14 * var(--u)) 0}
#instagram .post .ttl{font:450 calc(13.5 * var(--u))/1 var(--f-ui);color:#78707e}
#instagram .post .cm{display:flex;align-items:flex-start;gap:calc(10 * var(--u));font:400 calc(14 * var(--u))/1.3 var(--f-ui);animation:igCm .5s var(--ease-back) both}
#instagram .post .cm .av{width:calc(30 * var(--u));height:calc(30 * var(--u));border-radius:50%;flex:none;background:center 22%/cover no-repeat}
#instagram .post .cm b{font-weight:700;margin-right:calc(5 * var(--u))}
#instagram .post .cm small{display:block;margin-top:calc(3 * var(--u));font:500 calc(12 * var(--u))/1.2 var(--f-ui);color:#8a838f}
#instagram .post .cm small em{font-style:normal;color:#c2185b;font-weight:650}
#instagram .post .cm mark{background:none;color:inherit;font-weight:700;padding:0 calc(3 * var(--u));border-radius:calc(5 * var(--u));transition:background-color .4s,color .4s}
#instagram .post .cm.hit mark{background:linear-gradient(95deg,#ff8a65,#f06292 50%,#7c4dff);color:#fff}
@keyframes igCm{from{opacity:0;transform:translateY(calc(10 * var(--u)))}to{opacity:1;transform:none}}
#instagram .post .sug{position:absolute;left:0;right:0;bottom:calc(80 * var(--u));display:flex;justify-content:center;transition:opacity .3s,transform .3s}
#instagram .post .sug.off{opacity:0;transform:translateY(calc(8 * var(--u)));pointer-events:none}
#instagram .ig-cta{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:0 18px;border:0;border-radius:999px;background:#141018;color:#fff;font:700 16.5px/1 var(--f-ui);white-space:nowrap;cursor:pointer;box-shadow:0 14px 30px -12px rgba(20,10,40,.75),0 0 0 3px #fff;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .2s var(--ease-back)}
#instagram .ig-cta:active{transform:scale(.96)}
#instagram .ig-cta svg{width:21px;height:21px;flex:none}
#instagram .post .cmp{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:calc(10 * var(--u));height:calc(70 * var(--u));margin:0;padding:0 calc(12 * var(--u)) calc(12 * var(--u));border-top:1px solid #efedf1;background:#fff}
#instagram .post .cmp .av{width:calc(32 * var(--u));height:calc(32 * var(--u));border-radius:50%;flex:none;background:center 22%/cover no-repeat}
#instagram .post .cmp .inp{flex:1;min-width:0;display:flex;align-items:center;height:calc(40 * var(--u));padding:0 calc(14 * var(--u));border-radius:calc(20 * var(--u));box-shadow:inset 0 0 0 1px #e3dfe6;background:#fff;font:400 calc(14 * var(--u))/1 var(--f-ui);color:#8e8794;white-space:nowrap;overflow:hidden}
#instagram .post .cmp .inp.on{color:#141018;box-shadow:inset 0 0 0 1.5px #d62976}
#instagram .post .cmp .pub{padding:0 calc(4 * var(--u));font:700 calc(14 * var(--u))/1 var(--f-ui);color:#4f5bd5}
/* aviso que entra arriba */
#instagram .ig-ban{--u:calc(100cqw / 390);position:absolute;left:calc(10 * var(--u));right:calc(10 * var(--u));top:calc(50 * var(--u));z-index:8;display:flex;align-items:center;gap:calc(10 * var(--u));padding:calc(10 * var(--u)) calc(12 * var(--u));border:0;border-radius:calc(18 * var(--u));background:rgba(250,248,252,.98);box-shadow:0 calc(14 * var(--u)) calc(30 * var(--u)) calc(-12 * var(--u)) rgba(0,0,0,.45),0 0 0 1px rgba(0,0,0,.05);font-family:var(--f-ui);text-align:left;color:#141018;transform:translateY(calc(-150 * var(--u)));transition:transform .55s var(--ease-back);visibility:hidden}
#instagram .ig-ban.on{transform:none;visibility:visible}
#instagram .ig-ban .lgx{width:calc(38 * var(--u));height:calc(38 * var(--u));flex:none;border-radius:50%;overflow:hidden;background:#fff}
#instagram .ig-ban b{display:block;font:700 calc(13.5 * var(--u))/1.25 var(--f-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#instagram .ig-ban span.p{display:block;margin-top:calc(2 * var(--u));font:400 calc(13 * var(--u))/1.3 var(--f-ui);color:#3a3440;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#instagram .ig-ban .tx{min-width:0;flex:1}
#instagram .ig-ban small{align-self:flex-start;font:500 calc(11.5 * var(--u))/1 var(--f-ui);color:#8a838f}
/* mensaje privado */
#instagram .dm{padding-top:calc(47 * var(--u));display:flex;flex-direction:column}
#instagram .dm .hd{display:flex;align-items:center;gap:calc(10 * var(--u));height:calc(56 * var(--u));padding:0 calc(12 * var(--u));border-bottom:1px solid #f0edf2;flex:none}
#instagram .dm .hd svg{width:calc(22 * var(--u));height:calc(22 * var(--u));flex:none}
#instagram .dm .hd .lgx{width:calc(34 * var(--u));height:calc(34 * var(--u));flex:none;border-radius:50%;overflow:hidden}
#instagram .dm .hd b{display:block;font:700 calc(15 * var(--u))/1.2 var(--f-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#instagram .dm .hd small{display:block;font:450 calc(12 * var(--u))/1.25 var(--f-ui);color:#78707e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#instagram .dm .hd .tx{min-width:0;flex:1}
#instagram .dm .th{flex:1;min-height:0;display:flex;flex-direction:column;gap:calc(7 * var(--u));padding:calc(8 * var(--u)) calc(12 * var(--u)) calc(80 * var(--u));overflow:hidden auto;scrollbar-width:none;overscroll-behavior:contain}
#instagram .dm .th::-webkit-scrollbar{display:none}
#instagram .dm .pf{display:flex;flex-direction:column;align-items:center;gap:calc(3 * var(--u));padding:calc(10 * var(--u)) 0 calc(14 * var(--u));text-align:center;transition:opacity .4s}
#instagram .dm .pf .lgx{width:calc(76 * var(--u));height:calc(76 * var(--u));border-radius:50%;overflow:hidden;margin-bottom:calc(6 * var(--u))}
#instagram .dm .pf b{font:700 calc(17 * var(--u))/1.2 var(--f-ui)}
#instagram .dm .pf small{font:450 calc(12.5 * var(--u))/1.3 var(--f-ui);color:#78707e}
#instagram .dm .row{display:flex;align-items:flex-end;gap:calc(8 * var(--u));animation:igCm .45s var(--ease-back) both}
#instagram .dm .row .mini{width:calc(24 * var(--u));height:calc(24 * var(--u));border-radius:50%;overflow:hidden;flex:none}
#instagram .dm .row .mini svg{width:100%;height:100%;display:block}
#instagram .dm .row.cont .mini{visibility:hidden}
#instagram .dm .bb{max-width:80%;padding:calc(9 * var(--u)) calc(13 * var(--u));border-radius:calc(20 * var(--u));background:#efedf2;font:400 calc(14.5 * var(--u))/1.38 var(--f-ui);color:#141018;overflow-wrap:anywhere}
#instagram .dm .bb a{color:#3b62d6;text-decoration:underline;text-underline-offset:2px}
#instagram .dm .me{align-self:flex-end;max-width:70%;padding:calc(9 * var(--u)) calc(14 * var(--u));border-radius:calc(20 * var(--u));background:linear-gradient(135deg,#8a3ffc,#4d5cf5);color:#fff;font:500 calc(14.5 * var(--u))/1.35 var(--f-ui);animation:igCm .4s var(--ease-back) both}
#instagram .dm .qr{position:relative;align-self:stretch;display:grid;place-items:center;margin-left:calc(32 * var(--u));height:calc(46 * var(--u));border-radius:calc(14 * var(--u));background:#fff;box-shadow:inset 0 0 0 1px #d9d4df;color:#3b62d6;font:600 calc(14.5 * var(--u))/1 var(--f-ui);animation:igCm .5s .15s var(--ease-back) both,igQr 1.8s 1.2s ease-in-out infinite;transition:transform .15s}
@keyframes igQr{0%,100%{box-shadow:inset 0 0 0 1px #d9d4df,0 0 0 0 rgba(59,98,214,0)}50%{box-shadow:inset 0 0 0 1.5px #3b62d6,0 0 0 calc(5 * var(--u)) rgba(59,98,214,.18)}}
#instagram .dm .typ{display:flex;gap:calc(4 * var(--u));padding:calc(12 * var(--u)) calc(14 * var(--u));border-radius:calc(20 * var(--u));background:#efedf2}
#instagram .dm .typ i{width:calc(7 * var(--u));height:calc(7 * var(--u));border-radius:50%;background:#8e8794;animation:igDot 1.1s infinite}
#instagram .dm .typ i:nth-child(2){animation-delay:.15s}#instagram .dm .typ i:nth-child(3){animation-delay:.3s}
@keyframes igDot{0%,60%,100%{transform:none;opacity:.45}30%{transform:translateY(calc(-3 * var(--u)));opacity:1}}
#instagram .dm .lk{display:block;width:calc(250 * var(--u));margin-left:calc(32 * var(--u));padding:0;border:0;border-radius:calc(18 * var(--u));overflow:hidden;background:#efedf2;text-align:left;font-family:var(--f-ui);color:#141018;animation:igCm .5s .1s var(--ease-back) both;box-shadow:0 0 0 0 rgba(214,41,118,0);transition:box-shadow .3s}
#instagram .dm .lk.pulse{animation:igCm .5s .1s var(--ease-back) both,igLk 1.8s 1s ease-in-out infinite}
@keyframes igLk{0%,100%{box-shadow:0 0 0 0 rgba(214,41,118,0)}50%{box-shadow:0 0 0 calc(4 * var(--u)) rgba(214,41,118,.35)}}
#instagram .dm .lk .im{display:block;height:calc(118 * var(--u));background:#e9dfd8 url(../pulpia/tratamientos/labios-enlace.webp) center/cover no-repeat}
#instagram .dm .lk b{display:block;padding:calc(9 * var(--u)) calc(12 * var(--u)) 0;font:700 calc(14 * var(--u))/1.25 var(--f-ui)}
#instagram .dm .lk small{display:block;padding:calc(2 * var(--u)) calc(12 * var(--u)) calc(10 * var(--u));font:450 calc(12 * var(--u))/1.3 var(--f-ui);color:#6b6470}
#instagram .dm .cmp{position:absolute;left:calc(12 * var(--u));right:calc(12 * var(--u));bottom:calc(16 * var(--u));display:flex;align-items:center;gap:calc(10 * var(--u));height:calc(46 * var(--u));padding:0 calc(6 * var(--u));border-radius:calc(23 * var(--u));background:#f1eff3;font:400 calc(14 * var(--u))/1 var(--f-ui);color:#8e8794}
#instagram .dm .cmp i{width:calc(34 * var(--u));height:calc(34 * var(--u));border-radius:50%;background:linear-gradient(135deg,#8a3ffc,#4d5cf5);flex:none}
/* navegador de Instagram con las páginas REALES del embudo */
#instagram .web{background:#fffaf8}
#instagram .web .bw{position:absolute;left:0;right:0;top:calc(47 * var(--u));z-index:3;display:flex;align-items:center;gap:calc(12 * var(--u));height:calc(44 * var(--u));padding:0 calc(14 * var(--u));background:#fff;border-bottom:1px solid #efe9ec}
#instagram .web .bw svg{width:calc(20 * var(--u));height:calc(20 * var(--u));flex:none;color:#222}
#instagram .web .bw div{flex:1;min-width:0;text-align:center}
#instagram .web .bw b{display:block;font:700 calc(13.5 * var(--u))/1.2 var(--f-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#instagram .web .bw small{display:block;font:450 calc(11.5 * var(--u))/1.2 var(--f-ui);color:#7b737f}
#instagram .web .bw.mini{height:calc(22 * var(--u));background:rgba(253,250,253,.96);border:0}
#instagram .web .bw.mini small{font-size:calc(11 * var(--u))}
#instagram .web .pgv{position:absolute;left:0;right:0;top:calc(91 * var(--u))}
#instagram .web .pgv.full{top:calc(47 * var(--u))}
#instagram .web .scr{border-radius:0;background:#fffaf8}
#instagram .ig-tz{position:absolute;border-radius:calc(14 * var(--u));z-index:2;box-shadow:0 0 0 0 rgba(124,77,255,.55);animation:igTz 1.7s ease-out infinite}
@keyframes igTz{0%{box-shadow:0 0 0 0 rgba(240,98,146,.6)}100%{box-shadow:0 0 0 calc(12 * var(--u)) rgba(240,98,146,0)}}
/* «Solicitud guardada» (texto real de la página pública) */
#instagram .sheet{position:absolute;left:calc(10 * var(--u));right:calc(10 * var(--u));bottom:calc(14 * var(--u));z-index:4;padding:calc(20 * var(--u)) calc(20 * var(--u)) calc(16 * var(--u));border-radius:calc(26 * var(--u));background:#fff;color:#2b1d2c;box-shadow:0 calc(30 * var(--u)) calc(60 * var(--u)) calc(-20 * var(--u)) rgba(40,10,60,.55),0 0 0 1px rgba(60,20,70,.08);transform:translateY(115%);transition:transform .6s var(--ease-back);visibility:hidden}
#instagram .sheet.on{transform:none;visibility:visible}
#instagram .sheet .ok{width:calc(40 * var(--u));height:calc(40 * var(--u));border-radius:50%;display:grid;place-items:center;margin-bottom:calc(10 * var(--u));background:#e7f6ee;color:#1f9d6c}
#instagram .sheet .ok svg{width:58%;height:58%}
#instagram .sheet h4{margin:0;font:700 calc(21 * var(--u))/1.15 var(--f-ui);letter-spacing:-.01em;color:#2a1a33}
#instagram .sheet p{margin:calc(6 * var(--u)) 0 0;font:400 calc(14 * var(--u))/1.45 var(--f-ui);color:#5d4e60}
#instagram .sheet .wab{display:flex;align-items:center;justify-content:center;gap:calc(8 * var(--u));width:100%;height:calc(50 * var(--u));margin-top:calc(14 * var(--u));border-radius:calc(14 * var(--u));background:linear-gradient(95deg,#5c3a5f,#9b5f8d);color:#fff;font:700 calc(15 * var(--u))/1 var(--f-ui);animation:igQr2 1.8s 1s ease-in-out infinite;transition:transform .15s}
#instagram .sheet .wab svg{width:calc(20 * var(--u));height:calc(20 * var(--u))}
@keyframes igQr2{0%,100%{box-shadow:0 0 0 0 rgba(155,95,141,0)}50%{box-shadow:0 0 0 calc(5 * var(--u)) rgba(155,95,141,.28)}}
#instagram .sheet small{display:block;margin-top:calc(8 * var(--u));font:450 calc(12 * var(--u))/1.4 var(--f-ui);color:#7a6a7c;text-align:center}
/* pantalla de bloqueo, 23:48 */
#instagram .lock{background:radial-gradient(130% 80% at 20% 0%,#6b3fd1 0%,#3a1d86 38%,#170a3d 72%,#0d0624 100%);color:#fff;text-align:center}
#instagram .lock::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 45% at 85% 105%,rgba(255,110,150,.5),rgba(255,110,150,0) 70%);pointer-events:none}
#instagram .lock .dt{margin-top:calc(92 * var(--u));font:600 calc(17 * var(--u))/1 var(--f-ui);opacity:.86}
#instagram .lock .tm{margin-top:calc(6 * var(--u));font:300 calc(84 * var(--u))/1 var(--f-ui);letter-spacing:-.045em;font-variant-numeric:tabular-nums}
#instagram .lock .nt{position:relative;z-index:1;margin:calc(10 * var(--u)) calc(10 * var(--u)) 0;padding:calc(12 * var(--u)) calc(14 * var(--u)) calc(13 * var(--u));border-radius:calc(22 * var(--u));background:rgba(246,243,251,.95);color:#17101f;text-align:left;box-shadow:0 calc(18 * var(--u)) calc(40 * var(--u)) calc(-18 * var(--u)) rgba(0,0,0,.6);opacity:0}
#instagram .lock .nt.in{animation:igNt .6s var(--ease-back) both}
#instagram .lock .nt.old.in{animation:igNtOld .6s .1s var(--ease) both}
@keyframes igNt{from{opacity:0;transform:translateY(calc(-30 * var(--u))) scale(.94)}to{opacity:1;transform:none}}
@keyframes igNtOld{from{opacity:0}to{opacity:.84;transform:scale(.96)}}
#instagram .lock .nts{margin-top:calc(36 * var(--u))}
#instagram .lock .ap{display:flex;align-items:center;gap:calc(8 * var(--u));font:600 calc(12.5 * var(--u))/1 var(--f-ui);color:#6d6280;text-transform:uppercase;letter-spacing:.02em}
#instagram .lock .ap em{margin-left:auto;font-style:normal;text-transform:none;font-weight:500}
#instagram .lock .ic{width:calc(22 * var(--u));height:calc(22 * var(--u));border-radius:calc(6 * var(--u));display:grid;place-items:center;flex:none}
#instagram .lock .ic svg{width:72%;height:72%}
#instagram .lock .ic.wa{background:#25d366}
#instagram .lock .ic.ig{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}
#instagram .lock .nt b{display:block;margin-top:calc(7 * var(--u));font:700 calc(15 * var(--u))/1.25 var(--f-ui)}
#instagram .lock .nt p{margin:calc(2 * var(--u)) 0 0;font:400 calc(14 * var(--u))/1.35 var(--f-ui);color:#2a2235}
#instagram .lock .nt.old p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- tu panel (capturas reales) */
#instagram .ig-win{position:absolute;z-index:2;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 60px 110px -50px rgba(0,0,0,.9),0 24px 50px -30px rgba(90,40,170,.6),0 0 0 1px rgba(255,255,255,.12);transition:opacity .5s var(--ease),transform .7s var(--ease-back)}
#instagram .ig-win .bar{display:flex;align-items:center;gap:7px;height:38px;padding:0 14px;background:linear-gradient(180deg,#f7f3fc,#efe9f7);border-bottom:1px solid rgba(40,22,70,.09);font:650 12.5px/1 var(--f-ui);color:#6c6082;white-space:nowrap;overflow:hidden}
#instagram .ig-win .bar i{width:10px;height:10px;border-radius:50%;background:#ff8b7a;flex:none}
#instagram .ig-win .bar i:nth-child(2){background:#ffd36b}#instagram .ig-win .bar i:nth-child(3){background:#5ad38a;margin-right:8px}
#instagram .ig-win .bar span{overflow:hidden;text-overflow:ellipsis}
#instagram .ig-cam{position:relative;overflow:hidden;background:#f6f2fb}
#instagram .ig-cam .scr{position:absolute;left:0;top:0;transform-origin:0 0;transition:transform .9s cubic-bezier(.65,0,.25,1)}
#instagram .ig-wa{left:calc(var(--ph-w) - 34px);right:-56px;top:34px}
#instagram .ig-wa .bar{padding-left:52px}
#instagram .ig-wa .tag{left:50px}
#instagram .ig-wa .ig-cam{height:372px}
#instagram .ig-wb{left:calc(var(--ph-w) + 22px);right:-20px;top:452px;z-index:4;opacity:0;transform:translateY(34px) scale(.95);pointer-events:none}
#instagram .ig-wb .ig-cam{height:262px}
#instagram .ig-wb.on{opacity:1;transform:none}
#instagram .ig-win .tag{position:absolute;left:12px;bottom:12px;z-index:3;display:inline-flex;align-items:center;gap:7px;max-width:calc(100% - 24px);padding:8px 12px;border-radius:999px;background:#1d1236;color:#fff;font:650 13px/1.2 var(--f-ui);opacity:0;transform:translateY(6px);transition:opacity .35s,transform .45s var(--ease-back);pointer-events:none}
#instagram .ig-win .tag.on{opacity:1;transform:none}
#instagram .ig-win .tag svg{width:14px;height:14px;flex:none;color:#7ef0bb}
#instagram .ig-fx{position:absolute;left:0;top:0;width:100%;height:100%;z-index:8;pointer-events:none;overflow:visible}

@media (min-width:960px) and (max-width:1260px){#instagram .ig-stage{--ph-w:300px}#instagram .ig-wa{right:-6px}#instagram .ig-wb{top:420px;right:0}}
@media (max-width:959px){
  #instagram{padding-block:64px 40px;contain-intrinsic-size:auto 1240px;overflow-anchor:none}   /* sin anclaje: el móvil no se mueve cuando cambia la fila (el titular lo compensa steady()) */
  #instagram .ig-pain{font-size:clamp(32px,8.6vw,46px)}
  #instagram .ig-lead{margin-top:14px;font-size:17px}
  #instagram .ig-guide .gd-row{margin:18px 0 14px}
  #instagram .ig-steps{display:none}
  #instagram .ig-demo{display:flex;flex-direction:column;align-items:center}
  #instagram .ig-stage{width:var(--ph-w);--ph-w:min(300px,80vw);height:calc(var(--ph-h) + 34px)}
  @supports (height:100svh){#instagram .ig-stage{--ph-w:min(300px,80vw,calc((100svh - 236px) * .4621))}}
  #instagram .ig-cap{top:calc(var(--ph-h) + 10px)}
  #instagram .ig-wa{display:none}
  #instagram .ig-wb{left:-7%;right:-7%;top:auto;bottom:66px;z-index:5}
  #instagram .ig-wb .ig-cam{height:190px}
}
@media (prefers-reduced-motion:reduce){#instagram .ig-v,#instagram .ig-win,#instagram .ig-ban,#instagram .ig-cam .scr,#instagram .sheet{transition:none}#instagram .dm .qr,#instagram .dm .lk.pulse,#instagram .ig-tz,#instagram .sheet .wab,#instagram .ig-touch.go{animation:none}}

/* ===== #pipeline ===== */
#pipeline{overflow:hidden;overflow:clip;contain-intrinsic-size:auto 1680px;background:radial-gradient(70% 55% at 88% -6%,#ffe4cc 0%,rgba(255,228,204,0) 70%),radial-gradient(60% 50% at 0% 40%,#f6e9ff 0%,rgba(246,233,255,0) 70%),linear-gradient(180deg,#fffaf4 0%,#fbf8ff 62%,#f8f2fd 100%);color:var(--ink)}
#pipeline .pl-g{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0}
#pipeline .clock svg{color:#f0a020}
#pipeline .pl-pain{margin-top:22px;max-width:19ch;font-size:clamp(34px,4.7vw,64px);line-height:1.03;letter-spacing:-.032em}
#pipeline .pl-cold{position:relative;display:inline-block;color:#5f7d9c;transition:color .8s var(--ease)}
#pipeline .pl-cold::after{content:"";position:absolute;left:-2%;right:-2%;bottom:.04em;height:.1em;border-radius:9px;background:linear-gradient(90deg,#a9c6e8,#c8dbf0);opacity:.75;transform-origin:0 50%;transition:transform .7s var(--ease),opacity .4s}
#pipeline .pl-old{text-decoration:line-through;text-decoration-color:transparent;text-decoration-thickness:.075em;transition:text-decoration-color .55s var(--ease),opacity .5s .45s}
#pipeline .pl-new{display:none}
#pipeline .pl-new .grad-text{display:inline-block;animation:plNew .7s .5s var(--ease-back) both}
#pipeline .pl-pain.solved .pl-old{text-decoration-color:var(--coral);opacity:.42}
#pipeline .pl-pain.solved .pl-cold::after{opacity:0}
#pipeline .pl-pain.solved .pl-cold{text-decoration:line-through;text-decoration-color:var(--coral);text-decoration-thickness:.075em}
#pipeline .pl-pain.solved .pl-new{display:inline}
@keyframes plNew{from{opacity:0;transform:translateY(.35em) scale(.9)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#pipeline .pl-old{transition:none}#pipeline .pl-new .grad-text{animation:none}}
#pipeline .pl-hoja{margin:18px 0 0;max-width:min(100%,430px);border:1px solid #cfd3d8;border-radius:8px;background:#fff;overflow:hidden;box-shadow:0 10px 24px -16px rgba(30,20,60,.35);font:450 12.5px/1.2 Calibri,"Segoe UI",Arial,var(--f-ui);color:#222;transition:opacity .5s}
#pipeline .pl-hoja table{width:100%;border-collapse:collapse;table-layout:fixed}
#pipeline .pl-hoja th,#pipeline .pl-hoja td{height:22px;padding:0 7px;border:1px solid #dcdfe3;text-align:left;font-weight:450;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pipeline .pl-hoja thead th{background:#f1f3f4;color:#666;text-align:center;font-weight:500;font-size:11.5px}
#pipeline .pl-hoja th.n,#pipeline .pl-hoja tbody th{width:26px;background:#f1f3f4;color:#777;text-align:center;font-size:11px;font-weight:500;padding:0}
#pipeline .pl-hoja td.y{background:#fff2a8}
#pipeline .pl-hoja td.r{background:#ffc7c2;font-weight:700}
#pipeline .pl-hoja td.g{background:#e6e6e6;color:#555}
#pipeline .pl-copy:has(.pl-pain.solved) .pl-hoja{opacity:.4}
#pipeline .pl-copy:has(.pl-pain.solved) .pl-hoja td{text-decoration:line-through;text-decoration-color:var(--coral)}
#pipeline .pl-lead{margin-top:18px;max-width:56ch}
#pipeline .pl-lead b{color:var(--ink);font-weight:650}
#pipeline .pl-copy{position:relative;z-index:2}

/* ---------- la demo: el tablero REAL y la guía de la llamada */
#pipeline .pl-demo{position:relative;min-width:0}
#pipeline .pl-in{position:relative;z-index:1;margin:18px 0 0;max-width:none;font:600 15px/1.9 var(--f-ui);color:var(--ink-2)}
#pipeline .pl-k{display:inline-flex;align-items:center;gap:6px;margin:0 1px;padding:0 10px 0 8px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--line),0 6px 14px -12px rgba(40,10,70,.5);font:600 14px/1.9 var(--f-ui);color:var(--ink);white-space:nowrap}
#pipeline .pl-k i{width:8px;height:8px;border-radius:50%;background:var(--c)}
#pipeline .pl-mcap b{color:var(--ink);font-weight:700}
#pipeline .pl-win{position:relative;border-radius:20px;background:#fff;box-shadow:0 70px 130px -60px rgba(60,20,90,.55),0 30px 60px -36px rgba(120,60,140,.45),0 0 0 1px rgba(40,22,70,.07);overflow:hidden}
#pipeline .pl-win>.bar{display:flex;align-items:center;gap:7px;height:38px;padding:0 16px;background:linear-gradient(180deg,#faf6fd,#f2ecf8);border-bottom:1px solid rgba(40,22,70,.08)}
#pipeline .pl-win>.bar i{width:11px;height:11px;border-radius:50%;background:#ff8b7a}
#pipeline .pl-win>.bar i:nth-child(2){background:#ffd36b}#pipeline .pl-win>.bar i:nth-child(3){background:#5ad38a}
#pipeline .pl-win>.bar span{margin-left:12px;font:600 13px/1 var(--f-ui);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pipeline .pl-win>.bar em{margin-left:auto;font:650 12.5px/1 var(--f-ui);font-style:normal;color:#7a5a86;white-space:nowrap}
#pipeline .pl-body{position:relative;container:plb/inline-size;overflow:hidden;background:#f8f2fb}
#pipeline .pl-board{position:relative}
#pipeline .pl-board .scr{width:100%}
#pipeline .pl-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,244,253,.62),rgba(240,228,248,.5));opacity:0;transition:opacity .45s var(--ease);pointer-events:none}
#pipeline .open .pl-veil{opacity:1}
#pipeline .open .pl-veil{pointer-events:auto;cursor:pointer}
/* zonas que se pueden tocar en la captura (fichas y «Tu siguiente conversación») */
#pipeline .pl-hz{position:absolute;padding:0;border:0;border-radius:16px;background:transparent;cursor:pointer;transition:box-shadow .25s,background-color .25s;-webkit-tap-highlight-color:transparent}
#pipeline .pl-hz:hover{background:rgba(124,77,255,.05);box-shadow:0 0 0 2.5px rgba(124,77,255,.55)}
#pipeline .pl-hz:focus-visible{outline:3px solid var(--violet);outline-offset:2px}
#pipeline .pl-hz.cue{animation:plCue 1.9s ease-out infinite}
@keyframes plCue{0%{box-shadow:0 0 0 0 rgba(240,98,146,.75)}70%{box-shadow:0 0 0 16px rgba(240,98,146,0)}100%{box-shadow:0 0 0 0 rgba(240,98,146,0)}}
#pipeline .pl-hz.next{border-radius:22px}
/* tras darle cita a Helena, su tarjeta del tablero (captura real) lo dice: ya no es «la siguiente» */
#pipeline .pl-hz.next.done{cursor:default;background:rgba(20,8,40,.28)}
#pipeline .pl-hz.next.done::after{content:"✓ Helena ya tiene cita";position:absolute;right:5%;top:12%;display:flex;align-items:center;height:28px;padding:0 12px;border-radius:999px;background:#1fbf86;color:#fff;font:750 13px/1 Inter,system-ui,sans-serif;white-space:nowrap;box-shadow:0 10px 22px -10px rgba(0,0,0,.6);animation:plDone .5s cubic-bezier(.3,1.4,.5,1) both}
@keyframes plDone{from{transform:scale(.6);opacity:0}}
@media (max-width:760px){#pipeline .pl-hz.next.done::after{height:24px;padding:0 10px;font-size:12px}}
/* cifras del panel que cambian (en coordenadas de la captura) */
#pipeline .pl-num{opacity:0;transition:opacity .25s}
#pipeline .pl-num.on{opacity:1}
#pipeline .pl-pop{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:7px 11px;border-radius:999px;background:#1f9d6c;color:#fff;font:700 13px/1 var(--f-ui);box-shadow:0 12px 26px -12px rgba(16,90,60,.8);opacity:0;transform:translateY(8px) scale(.9);pointer-events:none}
#pipeline .pl-pop.go{animation:plPop 2.6s var(--ease) forwards}
@keyframes plPop{0%{opacity:0;transform:translateY(8px) scale(.9)}12%{opacity:1;transform:none}80%{opacity:1;transform:translateY(-6px)}100%{opacity:0;transform:translateY(-16px)}}

/* ---------- la guía de la llamada (recreación fiel de «Asistente de recepción · Tu próxima conversación») */
#pipeline .pl-dw{position:absolute;top:0;right:0;bottom:0;z-index:4;width:min(100%,540px);display:flex;flex-direction:column;background:#fff;color:#2c1d2f;box-shadow:-30px 0 60px -30px rgba(50,15,70,.45),-1px 0 0 rgba(60,25,80,.08);transform:translateX(104%);transition:transform .6s var(--ease);font-family:var(--f-ui);visibility:hidden}
#pipeline .open .pl-dw{transform:none;visibility:visible}
#pipeline .pl-dh{display:flex;align-items:center;gap:12px;padding:12px 14px 12px 22px;border-bottom:1px solid #f1e8f3;flex:none}
#pipeline .pl-dh small{display:block;font:700 10.5px/1.2 var(--f-ui);letter-spacing:.12em;text-transform:uppercase;color:#8d5a8b}
#pipeline .pl-dh b{display:block;margin-top:3px;font:650 15px/1.2 var(--f-ui);color:#2c1d2f}
#pipeline .pl-x{margin-left:auto;width:44px;height:44px;border:0;border-radius:13px;background:#f8f2fb;box-shadow:inset 0 0 0 1px #eadff0;color:#7a5a86;font:400 24px/1 var(--f-ui);cursor:pointer}
#pipeline .pl-x:hover{background:#f1e7f6}
#pipeline .pl-db{flex:1;min-height:0;overflow:hidden auto;overscroll-behavior:contain;padding:16px 22px 18px;scrollbar-width:thin;scrollbar-color:#e3d5ea transparent}
#pipeline .pl-cols{display:grid;gap:14px}
#pipeline .pl-col{display:grid;gap:12px;align-content:start;min-width:0}
#pipeline .pl-who{display:flex;gap:14px;align-items:flex-start}
#pipeline .pl-av{width:50px;height:50px;flex:none;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#f7eefa,#efe2f5);color:#9b4f8f;font:700 18px/1 var(--f-ui);box-shadow:inset 0 0 0 1px #eadbef}
#pipeline .pl-who h4{margin:0;font:750 23px/1.1 var(--f-ui);letter-spacing:-.02em;color:#3d2140}
#pipeline .pl-who p{margin:3px 0 0;font:450 14px/1.3 var(--f-ui);color:#6e5b6f}
#pipeline .pl-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
#pipeline .pl-tags span{padding:4px 8px;border-radius:7px;font:600 11.5px/1.2 var(--f-ui);background:#f7effa;color:#7b4a83;box-shadow:inset 0 0 0 1px #e8d8ef}
#pipeline .pl-tags span.st{background:#fff7e8;color:#8a6a2a;box-shadow:inset 0 0 0 1px #f0dfb8}
#pipeline .pl-tags span.pr{background:#fff0f1;color:#b2404f;box-shadow:inset 0 0 0 1px #f6d2d6}
#pipeline .pl-box{padding:10px 13px;border-radius:14px;box-shadow:inset 0 0 0 1px #efe4f2;background:#fff}
#pipeline .pl-lb{display:block;font:700 10px/1.2 var(--f-ui);letter-spacing:.11em;text-transform:uppercase;color:#8f6f8c}
#pipeline .pl-box p{margin:4px 0 0;font:450 14px/1.4 var(--f-ui);color:#3a2a3c}
#pipeline .pl-goal{position:relative;overflow:hidden;padding:12px 16px 14px;border-radius:16px;background:linear-gradient(105deg,#3a1846 0%,#5a2b62 60%,#7b4a83 100%);color:#fff;box-shadow:0 14px 30px -18px rgba(60,20,80,.8)}
#pipeline .pl-goal::after{content:"";position:absolute;right:-20px;top:-30px;width:180px;height:120px;border-radius:50%;border:1.5px solid rgba(255,255,255,.14)}
#pipeline .pl-goal .pl-lb{color:rgba(255,255,255,.72)}
#pipeline .pl-goal p{margin:5px 0 0;font:700 18px/1.25 var(--f-ui);letter-spacing:-.01em;color:#fff}
#pipeline .pl-script{list-style:none;margin:0;padding:6px 16px;border-radius:18px;background:linear-gradient(160deg,#fdf7fd 0%,#f5e9f8 100%);box-shadow:inset 0 0 0 1px #efe0f3}
#pipeline .pl-script li{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:12px 0}
#pipeline .pl-script li+li{border-top:1px solid #ecdcef}
#pipeline .pl-script .n{width:28px;height:24px;border-radius:8px;display:grid;place-items:center;background:#f1e0f4;color:#8a4a86;font:750 11.5px/1 var(--f-ui);margin-top:1px}
#pipeline .pl-script p{margin:5px 0 0;font:450 16px/1.5 var(--f-ui);color:#3a2a3c}
#pipeline .pl-say{min-height:4.5em}
#pipeline .pl-say mark{-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .18em;border-radius:6px;background:linear-gradient(95deg,rgba(255,138,101,.22),rgba(240,98,146,.22) 50%,rgba(124,77,255,.2));color:#4a1f55;font-weight:650}
#pipeline .pl-say .k{display:inline-block;width:2px;height:1.05em;margin-left:1px;vertical-align:-2px;background:#b04a9b;animation:kc 1s steps(1) infinite}
#pipeline .pl-src{margin:0;font:450 12px/1.5 var(--f-ui);color:#7d6f80}
@keyframes plIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
#pipeline .pl-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#pipeline .pl-slot{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 9px;min-height:58px;padding:9px 12px;border:0;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px #e3d9ec;text-align:left;cursor:pointer;color:#2c1d2f;transition:box-shadow .2s,background-color .2s,transform .2s var(--ease-back)}
#pipeline .pl-slot:hover{transform:translateY(-1px);box-shadow:inset 0 0 0 2px #b993d6}
#pipeline .pl-slot svg{grid-row:span 2;width:20px;height:20px;color:#8a4a86}
#pipeline .pl-slot b{font:700 14.5px/1.2 var(--f-ui)}
#pipeline .pl-slot small{font:500 12px/1.2 var(--f-ui);color:#7d6f80}
#pipeline .pl-slot.sel{background:#effaf4;box-shadow:inset 0 0 0 2px #22c58b}
#pipeline .pl-slot.sel svg{color:#1f9d6c}
#pipeline .pl-slot[disabled]{cursor:default}
#pipeline .pl-slot.cue{animation:plSl 1.8s ease-in-out infinite}
@keyframes plSl{0%,100%{box-shadow:inset 0 0 0 1.5px #e3d9ec,0 0 0 0 rgba(34,197,139,0)}50%{box-shadow:inset 0 0 0 2px #7fd8b2,0 0 0 5px rgba(34,197,139,.16)}}
#pipeline .pl-dh b:focus{outline:none}
#pipeline .pl-res{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:14px;background:#effaf4;color:#16613f;font:600 14px/1.35 var(--f-ui);box-shadow:inset 0 0 0 1px #c9ecd9;animation:plIn .4s var(--ease) both}
#pipeline .pl-res[hidden]{display:none}
#pipeline .pl-res i{width:26px;height:26px;flex:none;border-radius:50%;display:grid;place-items:center;background:#22c58b;color:#fff}
#pipeline .pl-res i svg{width:15px;height:15px}
#pipeline .pl-res .spin{background:none;border:2.5px solid #9fdcc0;border-right-color:transparent;animation:btnSpinPl .7s linear infinite}
@keyframes btnSpinPl{to{transform:rotate(1turn)}}
#pipeline .pl-df{flex:none;display:flex;flex-wrap:wrap;gap:8px;padding:12px 22px 10px;border-top:1px solid #f1e8f3;background:#fff}
#pipeline .pl-df span{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;padding:0 13px;border-radius:12px;font:650 13px/1 var(--f-ui);color:#4d3550;background:#fff;box-shadow:inset 0 0 0 1px #e6d8ec;white-space:nowrap}
#pipeline .pl-df span svg{width:15px;height:15px}
#pipeline .pl-df span.call{color:#fff;background:linear-gradient(95deg,#e892b9,#b592e2);box-shadow:none;opacity:.9}
#pipeline .pl-df small{flex-basis:100%;text-align:center;font:450 11.5px/1.3 var(--f-ui);color:#8a7a8d}

/* ---------- cada cola, su frase */

/* ---------- móvil: el mismo panel en el móvil (captura real 'pipeline-movil') */
#pipeline .pl-m{display:none}
@media (max-width:959px){
  #pipeline{contain-intrinsic-size:auto 1320px}
  #pipeline .pl-pain{font-size:clamp(32px,7.4vw,52px)}
  #pipeline .pl-win{display:none}
  #pipeline .pl-m{display:block;position:relative;width:min(100%,380px);margin:0 auto;border-radius:30px;padding:9px;background:linear-gradient(145deg,#4a4058 0%,#17121f 22%,#0b0810 60%,#2b2433 100%);box-shadow:0 50px 90px -46px rgba(30,8,60,.75),inset 0 0 0 2px rgba(255,255,255,.12)}
  #pipeline .pl-m .pl-body{border-radius:22px;aspect-ratio:390/700}
  #pipeline .pl-m .pl-board{height:100%}
  #pipeline .pl-dw{width:100%;transform:translateY(102%);border-radius:22px 22px 0 0}
  #pipeline .pl-dh{padding:10px 10px 10px 16px}
  #pipeline .pl-db{padding:12px 14px 16px}
  #pipeline .pl-who h4{font-size:20px}
  #pipeline .pl-av{width:44px;height:44px;font-size:16px;border-radius:13px}
  #pipeline .pl-goal p{font-size:16px}
  #pipeline .pl-script{padding:4px 12px}
  #pipeline .pl-script li{grid-template-columns:26px 1fr;gap:9px;padding:10px 0}
  #pipeline .pl-script p{font-size:15px}
  #pipeline .pl-slots{grid-template-columns:1fr}
  #pipeline .pl-df{flex-wrap:nowrap;padding:8px 10px;gap:6px}
  #pipeline .pl-df span{height:36px;padding:0 8px;font-size:12px;flex:1}
  #pipeline .pl-df span:nth-child(n+3),#pipeline .pl-df small{display:none}
  #pipeline .pl-in{font-size:15px;line-height:2}
  #pipeline .pl-k{font-size:14px}
  #pipeline .pl-mcap{margin:12px 0 0;text-align:center;font:500 13.5px/1.3 var(--f-ui);color:var(--muted)}
}
@media (min-width:960px){#pipeline .pl-mcap{display:none}}
@media (max-width:959px){#pipeline .pl-mcap{font-size:14.5px;line-height:1.4}}
@media (prefers-reduced-motion:reduce){#pipeline .pl-dw,#pipeline .pl-veil{transition:none}#pipeline .pl-hz.cue,#pipeline .pl-ob.hint,#pipeline .pl-slot.cue,#pipeline .pl-say .k{animation:none}}

/* ---------- guía de pasos (guide.js): la fila encima de la demo, una nota corta debajo */
#pipeline .pl-guide{min-width:0}
#pipeline .pl-guide .gd-row{margin:26px 0 14px}
#pipeline .pl-note{margin:14px 0 0;text-align:center;font:450 13.5px/1.45 var(--f-ui);color:var(--muted)}
#pipeline .pl-slots .pl-slot{min-height:56px}
#pipeline .pl-slots .pl-slot b{font-size:16px}
#pipeline .pl-script .pl-slots{margin-top:10px}
@media (max-width:959px){
  #pipeline{padding-block:64px 48px}
  #pipeline .pl-lead{font-size:17px}
  #pipeline .pl-guide .gd-row{margin:18px 0 16px}
  #pipeline .pl-m{width:min(100%,330px,calc((100svh - 250px) * .557 + 18px))}
  #pipeline .pl-df{display:none}
  #pipeline .pl-mcap{margin-top:10px}
}

/* ===== #contenido ===== */
/* ===== 13:30 · Contenido (L2) · mobile first: la base es el móvil; @media (min-width:981px) para escritorio =====
   Dos demos, una acción cada una (con su fila de «Tu siguiente paso» encima): grabar el vídeo de hoy y adaptar un anuncio. */
#contenido{contain-intrinsic-size:auto 2500px;background:radial-gradient(56% 440px at 92% 560px,rgba(255,206,160,.34),rgba(255,206,160,0) 70%),linear-gradient(180deg,#f8f2fd 0%,#fcf6fb 12%,#fff7f0 46%,#fff2ea 100%);overflow:hidden;overflow:clip}
#contenido [hidden]{display:none!important}
#contenido .clock svg circle{stroke:#ff8a65}
#contenido .ct-top{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
#contenido .ct-copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
#contenido .pain{font-size:clamp(31px,3.4vw,46px);max-width:15ch}
#contenido .t-lead{max-width:34ch}
#contenido .t-lead b{color:var(--ink);font-weight:650}
#contenido .ct-points{display:none;margin:4px 0 0;padding:0;list-style:none;gap:12px;font:500 16px/1.45 var(--f-ui);color:var(--ink-2)}
#contenido .ct-points li{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start}
#contenido .ct-points svg{width:28px;height:28px}
#contenido .ct-points b{color:var(--ink)}
#contenido .gd-row{margin:14px 0 16px}
/* ---------- el vídeo de hoy: un Reel (interfaz genérica) que se graba con el guion */
#contenido .ct-demo{position:relative;min-width:0}
#contenido .ct-stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px}
#contenido .ct-pw{position:relative;width:min(70vw,262px)}
#contenido .ct-phone{position:relative;padding:7px;border-radius:37px;background:linear-gradient(145deg,#463c52 0%,#16101d 24%,#0a070d 66%,#2c2433 100%);box-shadow:0 50px 90px -46px rgba(24,8,64,.85),inset 0 0 0 1.5px rgba(255,255,255,.14)}
#contenido .ct-reel{position:relative;aspect-ratio:9/16;border-radius:30px;overflow:hidden;background:#2b2034;color:#fff;font-family:var(--f-ui);isolation:isolate}
#contenido .ct-v{position:absolute;inset:0;overflow:hidden}
#contenido .ct-v img{width:100%;height:100%;object-fit:cover;object-position:50% 26%;transform:scale(1.04);transform-origin:50% 34%;transition:transform 1.2s var(--ease)}
#contenido .ct-v video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transform-origin:50% 34%;background:#2b2034}
#contenido .ct-reel[data-st="rec"] .ct-v img{transform:scale(1.04);transition:none}
#contenido .ct-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(12,5,24,.5) 0%,rgba(12,5,24,0) 19%,rgba(12,5,24,0) 48%,rgba(12,5,24,.8) 100%)}
#contenido .ct-grid{position:absolute;inset:0;pointer-events:none;transition:opacity .4s;
  background:linear-gradient(90deg,transparent 33.2%,rgba(255,255,255,.24) 33.2%,rgba(255,255,255,.24) calc(33.2% + 1px),transparent calc(33.2% + 1px),transparent 66.6%,rgba(255,255,255,.24) 66.6%,rgba(255,255,255,.24) calc(66.6% + 1px),transparent calc(66.6% + 1px)),
  linear-gradient(180deg,transparent 33.2%,rgba(255,255,255,.24) 33.2%,rgba(255,255,255,.24) calc(33.2% + 1px),transparent calc(33.2% + 1px),transparent 66.6%,rgba(255,255,255,.24) 66.6%,rgba(255,255,255,.24) calc(66.6% + 1px),transparent calc(66.6% + 1px))}
#contenido .ct-reel[data-st="done"] .ct-grid{opacity:0}
#contenido .ct-hud{position:absolute;left:12px;right:12px;top:14px;display:flex;align-items:center;justify-content:space-between;gap:8px;font:700 12px/1 var(--f-ui);letter-spacing:.02em;transition:opacity .3s}
#contenido .ct-hud .lab{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:rgba(12,6,24,.58)}
#contenido .ct-rec{display:none;align-items:center;gap:7px;height:26px;padding:0 10px 0 8px;border-radius:999px;background:rgba(12,6,24,.72);font-variant-numeric:tabular-nums}
#contenido .ct-rec i{width:9px;height:9px;border-radius:50%;background:#ff3b5c;box-shadow:0 0 0 3px rgba(255,59,92,.3)}
#contenido .ct-reel[data-st="rec"] .ct-rec{display:inline-flex}
#contenido .ct-reel[data-st="rec"] .ct-rec i{animation:ct-blink 1s steps(1) infinite}
#contenido .ct-reel[data-st="rec"] .ct-hud .lab.l{display:none}
#contenido .ct-reel[data-st="done"] .ct-hud{opacity:0}
@keyframes ct-blink{50%{opacity:.25}}
#contenido .ct-prog{position:absolute;left:12px;right:12px;top:12px;display:flex;gap:4px;opacity:0;transition:opacity .3s}
#contenido .ct-prog i{position:relative;height:3px;border-radius:3px;background:rgba(255,255,255,.4);overflow:hidden}
#contenido .ct-prog i:nth-child(1),#contenido .ct-prog i:nth-child(3){flex:3}
#contenido .ct-prog i:nth-child(2){flex:9}
#contenido .ct-prog i::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:0 50%;transform:scaleX(var(--k,0))}
#contenido .ct-reel[data-st="done"] .ct-prog{opacity:1}
#contenido .ct-ill{position:absolute;left:12px;top:48px;display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:rgba(12,6,24,.55);font:600 11.5px/1 var(--f-ui);transition:transform .35s var(--ease)}
#contenido .ct-reel[data-st="done"] .ct-ill{transform:translateY(-22px)}
#contenido .ct-hook{position:absolute;left:8%;right:8%;top:36%;margin:0;text-align:center;font:800 25px/1.12 var(--f-ui);letter-spacing:-.02em;color:#1b1230;transition:opacity .3s,transform .45s var(--ease-back)}
#contenido .ct-hook span{display:inline;padding:3px 10px;border-radius:10px;background:#fff;box-decoration-break:clone;-webkit-box-decoration-break:clone;line-height:1.42}
#contenido .ct-hook.off{opacity:0;transform:translateY(-8px) scale(.96)}
#contenido .ct-sub{position:absolute;left:7%;right:10%;bottom:27%;margin:0;font:700 14px/1.4 var(--f-ui);opacity:0;transform:translateY(8px);transition:opacity .25s,transform .35s var(--ease)}
#contenido .ct-sub span{padding:3px 8px;border-radius:8px;background:rgba(14,7,26,.74);box-decoration-break:clone;-webkit-box-decoration-break:clone}
#contenido .ct-sub.on{opacity:1;transform:none}
#contenido .ct-stk{position:absolute;left:12%;right:12%;top:43%;margin:0;padding:10px 12px;border-radius:15px;background:#fff;color:#1b1230;text-align:center;font:750 15px/1.3 var(--f-ui);box-shadow:0 18px 32px -14px rgba(10,4,20,.65);opacity:0;transform:rotate(-3deg) scale(.6);transition:opacity .25s,transform .55s var(--ease-back)}
#contenido .ct-stk b{display:inline-block;padding:1px 7px;border-radius:7px;background:var(--grad);color:#fff;letter-spacing:.03em}
#contenido .ct-stk.on{opacity:1;transform:rotate(-3deg)}
#contenido .ct-side{position:absolute;right:9px;bottom:20px;display:flex;flex-direction:column;align-items:center;gap:15px;opacity:0;transition:opacity .35s}
#contenido .ct-side svg{width:25px;height:25px;filter:drop-shadow(0 1px 4px rgba(10,4,20,.45))}
#contenido .ct-paso{position:absolute;left:7%;right:7%;bottom:5%;margin:0;padding:9px 12px 10px;border-radius:14px;background:rgba(14,7,26,.78);color:#fff;font:600 13.5px/1.35 var(--f-ui);opacity:0;transform:translateY(6px);transition:opacity .25s,transform .35s var(--ease);pointer-events:none}
#contenido .ct-paso b{display:block;margin-bottom:2px;font:800 11.5px/1.2 var(--f-ui);letter-spacing:.06em;text-transform:uppercase;color:#ffb3cf}
#contenido .ct-paso.on{opacity:1;transform:none}
#contenido .ct-reel:not([data-st="rec"]) .ct-paso{opacity:0}
#contenido .ct-sil{position:absolute;left:50%;bottom:30%;width:64%;margin-left:-32%;display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;transition:opacity .3s;pointer-events:none}
#contenido .ct-sil.on{opacity:1}
#contenido .ct-sil svg{width:100%;display:block;overflow:visible}
#contenido .ct-sil span{padding:2px 9px;border-radius:999px;background:rgba(14,7,26,.7);font:700 12.5px/1.4 var(--f-ui)}
#contenido .ct-meta{position:absolute;left:12px;right:52px;bottom:14px;opacity:0;transform:translateY(10px);transition:opacity .35s,transform .45s var(--ease)}
#contenido .ct-reel[data-st="done"] .ct-side,#contenido .ct-reel[data-st="done"] .ct-meta{opacity:1;transform:none}
#contenido .ct-who{display:flex;align-items:center;gap:8px;min-width:0;margin:0;font:700 13px/1 var(--f-ui)}
#contenido .ct-who .av{width:30px;height:30px;flex:none;border-radius:50%;background:#fff;overflow:hidden;box-shadow:0 0 0 1.5px #fff}
#contenido .ct-who .av svg{width:100%;height:100%;display:block}
#contenido .ct-who b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#contenido .ct-cap{margin:8px 0 0;font:500 12.5px/1.35 var(--f-ui);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#contenido .ct-aud{margin:6px 0 0;display:flex;align-items:center;gap:6px;font:500 11.5px/1 var(--f-ui);opacity:.9}
#contenido .ct-aud svg{width:13px;height:13px}
#contenido .ct-nt{position:absolute;left:8px;right:8px;top:8px;z-index:3;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:16px;background:rgba(255,255,255,.97);color:#1b1230;box-shadow:0 14px 30px -12px rgba(10,4,20,.6);font:500 12.5px/1.3 var(--f-ui);opacity:0;transform:translateY(-130%);transition:transform .5s var(--ease-back),opacity .3s}
#contenido .ct-nt i{width:30px;height:30px;flex:none;border-radius:50%;background-size:cover;background-position:center 22%}
#contenido .ct-nt b{font-weight:700}
#contenido .ct-nt.on{opacity:1;transform:none}
/* el botón de grabar: grande, rojo y con su texto */
#contenido .ct-recb{position:absolute;left:50%;bottom:4.5%;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:170px;margin-left:-85px;border:0;background:none;padding:6px 8px 8px;color:#fff;font:750 15.5px/1.2 var(--f-ui);text-shadow:0 1px 6px rgba(10,4,20,.8);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:20px}
#contenido .ct-recb i{position:relative;display:grid;place-items:center;width:70px;height:70px;border-radius:50%;box-shadow:inset 0 0 0 4px #fff,0 8px 20px -8px rgba(10,4,20,.8)}
#contenido .ct-recb i::before{content:"";width:50px;height:50px;border-radius:50%;background:#ff3b5c;transition:transform .3s var(--ease-back)}
#contenido .ct-recb:hover i::before{transform:scale(.9)}
#contenido .ct-recb:active i::before{transform:scale(.8)}
#contenido .ct-reel[data-st="rec"] .ct-recb,#contenido .ct-reel[data-st="done"] .ct-recb{display:none}
#contenido .ct-flash{position:absolute;inset:0;z-index:4;background:#fff;opacity:0;pointer-events:none}
/* el guion: en el móvil, las tres partes en una fila (la frase sale en el vídeo); en escritorio, la lista entera */
#contenido .ct-tp{position:relative;width:100%;padding:12px 12px 12px;border-radius:22px;background:#fff;box-shadow:0 30px 70px -40px rgba(40,10,80,.55),0 0 0 1px rgba(40,22,70,.07)}
#contenido .ct-tp header{display:flex;align-items:center;gap:10px;margin:0 2px 9px}
#contenido .ct-tp header b{font:700 16px/1.25 var(--f-ui);color:var(--ink)}
#contenido .ct-tp header small{margin-left:auto;white-space:nowrap;font:700 15px/1 var(--f-ui);color:var(--muted);font-variant-numeric:tabular-nums}
#contenido .ct-beats{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
#contenido .ct-beat{position:relative;padding:9px 10px 11px;border-radius:14px;background:#faf7fd;overflow:hidden;transition:background .3s}
#contenido .ct-beat .k{display:flex;flex-direction:column;gap:3px;font:700 15px/1.15 var(--f-ui);color:#6f5f8c}
#contenido .ct-beat .k i{display:none}
#contenido .ct-beat .k small{font:600 13.5px/1.1 var(--f-ui);color:var(--muted)}
#contenido .ct-beat p{display:none;margin:5px 0 0;font:500 15px/1.45 var(--f-ui);color:var(--ink-2)}
#contenido .ct-beat .bar{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--grad);transform-origin:0 50%;transform:scaleX(0)}
#contenido .ct-beat.on{background:#fff1f5}
#contenido .ct-beat.on .k{color:#b0175a}
#contenido .ct-beat.on p{color:var(--ink)}
#contenido .ct-kw{display:inline-block;padding:0 6px;border-radius:6px;background:#1b1230;color:#fff;font-weight:800;letter-spacing:.02em;transition:transform .4s var(--ease-back),background .3s}
#contenido .ct-stage.kw .ct-kw{background:#e0457b;transform:scale(1.08)}
/* el mismo día, en tu panel (pantallas reales) */
#contenido .ct-panel{margin:22px 0 0}
#contenido .ct-panel .dev-win{box-shadow:var(--sh-1)}
#contenido .ct-panel .bar span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* en el móvil se ve la parte de arriba de la pantalla (la semana y el guion): lo que importa, en menos alto */
#contenido .ct-body{position:relative;aspect-ratio:1440/600;overflow:hidden;background:#f6f2fb}
#contenido .ct-body .scr{position:absolute;left:0;right:0;top:0;transition:opacity .5s var(--ease)}
#contenido .ct-body .scr.off{opacity:0;pointer-events:none}
#contenido .ct-panel figcaption{margin-top:10px;font:500 15px/1.45 var(--f-ui);color:var(--muted)}
/* ---------- la clínica de al lado ya tiene anuncios: biblioteca de anuncios activos */
#contenido .ct-ads{margin-top:clamp(56px,9vw,130px)}
#contenido .ct-ads-h{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
#contenido .ct-h3{margin:0;font:800 clamp(29px,3.2vw,44px)/1.08 var(--f-display);letter-spacing:-.02em;color:var(--ink);max-width:17ch}
#contenido .ct-ads-h p{margin:0;font:450 17px/1.55 var(--f-ui);color:var(--ink-2);max-width:48ch}
#contenido .ct-ads-h p b{color:var(--ink);font-weight:650}
#contenido .ct-lib{position:relative;margin:0 -16px;padding:14px 0 2px;background:rgba(255,255,255,.66);box-shadow:0 0 0 1px rgba(40,22,70,.06)}
#contenido .ct-lt{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:0 16px;margin-bottom:8px}
#contenido .ct-lt h4{margin:0;display:flex;align-items:center;gap:9px;font:700 16px/1.25 var(--f-ui);color:var(--ink)}
#contenido .ct-lt h4 i{width:9px;height:9px;border-radius:50%;background:#22c58b;box-shadow:0 0 0 4px rgba(34,197,139,.2)}
#contenido .ct-lt small{font:500 15px/1.3 var(--f-ui);color:var(--muted)}
#contenido .ct-rail{display:flex;gap:14px;margin:0;padding:6px 16px 16px;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
#contenido .ct-rail::-webkit-scrollbar{display:none}
#contenido .ct-rail{align-items:flex-start}
#contenido .ct-rail>li{flex:0 0 min(80vw,300px);scroll-snap-align:start;display:flex}
#contenido .ct-ad{position:relative;width:100%;display:flex;flex-direction:column;border-radius:22px;background:#fff;box-shadow:0 26px 60px -40px rgba(40,10,80,.6),0 0 0 1px rgba(40,22,70,.08);overflow:hidden;transition:box-shadow .35s}
#contenido .ct-ad::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(100deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.9) 48%,rgba(240,98,146,.25) 52%,rgba(255,255,255,0) 70%);transform:translateX(-120%)}
#contenido .ct-ad.sweep::after{animation:ct-sweep .85s var(--ease)}
@keyframes ct-sweep{to{transform:translateX(120%)}}
#contenido .ct-ad.mine{box-shadow:0 30px 70px -36px rgba(124,77,255,.6),0 0 0 2.5px #7c4dff}
#contenido .ct-ad .hd{display:flex;align-items:center;gap:10px;padding:11px 14px 10px}
#contenido .ct-ad .lg{flex:none;width:38px;height:38px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px rgba(40,22,70,.08)}
#contenido .ct-ad .lg svg,#contenido .ct-ad .lg span{display:block;width:100%;height:100%}
#contenido .ct-ad .lg span svg{width:100%;height:100%}
#contenido .ct-ad.pop .lg{animation:ct-pop .5s var(--ease-back)}
@keyframes ct-pop{from{transform:scale(.4)}}
#contenido .ct-ad .nm{display:flex;flex-direction:column;gap:3px;min-width:0}
#contenido .ct-ad .nm b{font:700 15px/1.2 var(--f-ui);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#contenido .ct-ad .nm small{font:500 14px/1.2 var(--f-ui);color:var(--muted)}
#contenido .ct-ad.mine .nm small{color:#5b33b0;font-weight:650}
#contenido .ct-ad .cr{position:relative;aspect-ratio:16/11;background:#eadff0;overflow:hidden}
#contenido .ct-ad .cr img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
#contenido .ct-ad .cr::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,6,28,.55) 0%,rgba(14,6,28,0) 42%,rgba(14,6,28,0) 66%,rgba(14,6,28,.5) 100%)}
#contenido .ct-ad .hk{position:absolute;left:14px;right:14px;top:13px;z-index:2;font:800 21px/1.12 var(--f-ui);letter-spacing:-.02em;color:#fff;text-shadow:0 2px 12px rgba(10,4,20,.45)}
#contenido .ct-ad .bt{position:absolute;left:14px;bottom:13px;z-index:2;display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:999px;background:#fff;color:#1b1230;font:700 12.5px/1 var(--f-ui)}
#contenido .ct-ad .il{position:absolute;right:10px;bottom:15px;z-index:2;font:600 11px/1 var(--f-ui);color:#fff;opacity:.9;text-shadow:0 1px 4px rgba(10,4,20,.6)}
#contenido .ct-ad .fm{margin-left:auto;flex:none;font:650 13px/1 var(--f-ui);color:var(--muted);white-space:nowrap}
#contenido .ct-ad .st{display:flex;align-items:center;gap:7px;margin:11px 14px 0;font:650 15px/1.25 var(--f-ui);color:#16784f}
#contenido .ct-ad .st i{flex:none;width:9px;height:9px;border-radius:50%;background:#22c58b;box-shadow:0 0 0 3px rgba(34,197,139,.2)}
#contenido .ct-ad .st s{margin-left:auto;text-decoration:none;padding:4px 8px;border-radius:8px;background:#eef8f3;font:700 13.5px/1 var(--f-ui);color:#16784f;white-space:nowrap}
#contenido .ct-ad.mine .st{color:#5b33b0}
#contenido .ct-ad.mine .st i{background:#7c4dff;box-shadow:0 0 0 3px rgba(124,77,255,.2)}
#contenido .ct-ad .tx{margin:8px 14px 0;font:500 15.5px/1.45 var(--f-ui);color:var(--ink)}
#contenido .ct-ad .wy{display:none;margin:8px 14px 0;font:500 14.5px/1.45 var(--f-ui);color:var(--muted)}
#contenido .ct-ad .wy b{color:var(--ink-2);font-weight:650}
#contenido .ct-ad .go{display:flex;align-items:center;justify-content:center;gap:9px;margin:auto 14px 14px;min-height:54px;padding:0 16px;border:0;border-radius:16px;background:#1b1230;color:#fff;font:750 16.5px/1.2 var(--f-ui);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .25s var(--ease-back),background .2s}
#contenido .ct-ad .tx+.wy+.go,#contenido .ct-ad .tx+.go{margin-top:14px}
#contenido .ct-ad .go svg{width:19px;height:19px;flex:none}
#contenido .ct-ad .go:active{transform:scale(.97)}
#contenido .ct-ad.mine .go{background:#f3ecfc;color:#3d1f86}
#contenido .ct-rp{height:4px;margin:0 16px 12px;border-radius:4px;background:rgba(40,22,70,.09);overflow:hidden}
#contenido .ct-rp i{display:block;height:100%;width:30%;border-radius:4px;background:var(--grad);transform-origin:0 50%}
#contenido .ct-lnote{margin:14px 0 0;font:500 15.5px/1.5 var(--f-ui);color:var(--ink-2);max-width:70ch}
#contenido .ct-lnote:empty{display:none}
#contenido .ct-lnote b{color:var(--ink);font-weight:650}
#contenido .ct-foot{margin:20px 0 0;display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;justify-content:space-between}
#contenido .ct-foot p{margin:0;font:500 15px/1.5 var(--f-ui);color:var(--muted);max-width:62ch}
#contenido .ct-foot .btn-ghost{display:none}
@media (min-width:761px){
  #contenido .ct-lib{margin:0;border-radius:28px;padding:20px 0 4px;background:#fff;box-shadow:0 40px 90px -60px rgba(40,10,80,.6),0 0 0 1px rgba(40,22,70,.07)}
  #contenido .ct-lt{padding:0 22px}
  #contenido .ct-rail{padding:6px 22px 20px;scroll-padding-inline:22px;gap:18px}
  #contenido .ct-rail{align-items:stretch}
  #contenido .ct-rail>li{flex-basis:calc((100% - 2 * 18px) / 3)}
  #contenido .ct-ad .cr{aspect-ratio:4/3}
  #contenido .ct-rp{display:none}
  #contenido .ct-ad .wy{display:block}
  #contenido .ct-foot .btn-ghost{display:inline-flex}
}
@media (min-width:981px){
  #contenido .ct-top{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,5.5vw,84px);align-items:start}
  #contenido .ct-copy{position:sticky;top:96px;gap:22px;padding-top:6px}
  #contenido .ct-points{display:grid}
  #contenido .gd-row{margin:0 0 18px}
  #contenido .ct-stage{display:grid;grid-template-columns:282px minmax(0,1fr);gap:30px;align-items:center}
  #contenido .ct-pw{width:282px}
  #contenido .ct-tp{padding:16px 16px 14px}
  #contenido .ct-beats{grid-template-columns:1fr;gap:8px}
  #contenido .ct-beat{padding:10px 12px 12px 14px}
  #contenido .ct-beat .k{display:block;font-size:13.5px;letter-spacing:.03em}
  #contenido .ct-beat .k i{display:inline;font-style:normal}
  #contenido .ct-beat .k small{font:inherit;color:inherit}
  #contenido .ct-beat p{display:block}
  #contenido .ct-ads-h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:20px 56px;margin-bottom:8px}
  #contenido .ct-body{aspect-ratio:1440/900}
}
@media (prefers-reduced-motion:reduce){
  #contenido .ct-reel[data-st="rec"] .ct-rec i{animation:none}
  #contenido .ct-v img,#contenido .ct-reel[data-st="rec"] .ct-v img{transition:none;transform:scale(1.04)}
  #contenido .ct-paso,#contenido .ct-sil{transition:none}
  #contenido .ct-hook,#contenido .ct-sub,#contenido .ct-stk,#contenido .ct-meta,#contenido .ct-side,#contenido .ct-nt,#contenido .ct-ill,#contenido .ct-body .scr{transition:none}
  #contenido .ct-ad.sweep::after,#contenido .ct-ad.pop .lg{animation:none}
}

/* ===== #app ===== */
/* ===== 17:00 · Portal del paciente (L2) · mobile first =====
   Tres demos, una acción cada una, con la fila de «Tu siguiente paso» encima: tocar el icono de tu clínica (el portal se
   recorre solo), firmar con el dedo y compartir el enlace de Marta. */
#app{contain-intrinsic-size:auto 3000px;background:radial-gradient(52% 500px at 6% 560px,rgba(255,196,150,.34),rgba(255,196,150,0) 70%),linear-gradient(180deg,#fff2ea 0%,#fdecef 55%,#f8eaf6 100%);overflow:hidden;overflow:clip}
#app [hidden]{display:none!important}
#app .clock svg circle{stroke:#f2a15f}
#app .ap-top{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
#app .ap-copy{display:contents}
#app .ap-head{order:0;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
#app .ap-copy>.gd-row{order:1;margin:20px 0 14px}
#app .ap-stage{order:2}
#app .pain{font-size:clamp(32px,3.6vw,50px);max-width:13ch}
#app .t-lead{max-width:36ch}
#app .t-lead b{color:var(--ink);font-weight:650}
/* lista de pantallas (solo escritorio: leyenda del recorrido) */
#app .ap-nav{display:none;margin:4px 0 0;padding:0;list-style:none;gap:6px;width:100%;max-width:470px}
#app .ap-nav button{appearance:none;width:100%;display:grid;grid-template-columns:40px 1fr;gap:4px 14px;align-items:center;text-align:left;border:0;background:transparent;padding:10px 14px 10px 10px;border-radius:18px;cursor:pointer;color:var(--ink-2);transition:background .25s,box-shadow .25s;-webkit-tap-highlight-color:transparent}
#app .ap-nav button:hover{background:rgba(255,255,255,.6)}
#app .ap-nav button[aria-current="true"]{background:#fff;box-shadow:0 18px 40px -26px rgba(60,10,80,.5),0 0 0 1px rgba(40,22,70,.06)}
#app .ap-nav .ic{grid-row:span 2;width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--ib,#f3ecfc)}
#app .ap-nav .ic svg{width:22px;height:22px}
#app .ap-nav b{font:700 16px/1.2 var(--f-ui);color:var(--ink)}
#app .ap-nav span.d{font:450 15px/1.4 var(--f-ui);color:var(--muted)}
/* el móvil con la pantalla de inicio */
#app .ap-stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px}
#app .ap-phone{width:min(72vw,282px);flex:none}
#app .ap-phone>.scrn{background:#1d1430;isolation:isolate}
#app .ap-sb{position:absolute;left:0;right:0;top:0;height:5.6%;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:0 8.5% 0 11%;font:650 clamp(11px,1vw,13.5px)/1 var(--f-ui);color:#fff;letter-spacing:.01em;pointer-events:none;transition:color .3s}
#app .ap-sb svg{height:11px;width:auto}
#app .ap-sb .ic{display:flex;gap:5px;align-items:center}
#app .ap-phone.open .ap-sb{color:#1b1230}
#app .ap-home{position:absolute;inset:0;background:radial-gradient(90% 55% at 15% 12%,rgba(255,226,196,.9),rgba(255,226,196,0) 70%),radial-gradient(80% 50% at 95% 45%,rgba(190,150,255,.55),rgba(190,150,255,0) 70%),linear-gradient(168deg,#f4b19a 0%,#e48aa4 40%,#a374d4 74%,#5e43a8 100%);transition:transform .55s var(--ease),opacity .4s}
#app .ap-phone.open .ap-home{transform:scale(.92);opacity:0;pointer-events:none}
#app .ap-wid{position:absolute;left:6%;right:6%;top:9.6%;display:grid;grid-template-columns:1fr 1fr;gap:5%}
#app .ap-w{aspect-ratio:1;border-radius:22%;padding:11% 12%;display:flex;flex-direction:column;box-shadow:0 8px 18px -10px rgba(40,10,60,.55);font-family:var(--f-ui);line-height:1.05;overflow:hidden}
#app .ap-w.wx{background:linear-gradient(170deg,#4d9cf0 0%,#2f6fd6 100%);color:#fff}
#app .ap-w.wx small{font:600 clamp(9px,.8vw,11px)/1 var(--f-ui)}
#app .ap-w.wx b{font:300 clamp(26px,2.5vw,34px)/1 var(--f-ui);margin-top:4%}
#app .ap-w.wx svg{width:24%;margin-top:auto}
#app .ap-w.wx span{font:600 clamp(8.5px,.75vw,10.5px)/1.25 var(--f-ui);margin-top:5%}
#app .ap-w.wc{background:#fff;color:#1b1230}
#app .ap-w.wc small{font:700 clamp(8.5px,.75vw,10.5px)/1 var(--f-ui);color:#f2453d;letter-spacing:.04em}
#app .ap-w.wc b{font:300 clamp(28px,2.6vw,36px)/1 var(--f-ui);margin-top:3%}
#app .ap-w.wc span{margin-top:auto;font:600 clamp(8.5px,.75vw,10.5px)/1.3 var(--f-ui);color:#8a8494}
#app .ap-grid{position:absolute;left:6%;right:6%;top:33%;display:grid;grid-template-columns:repeat(4,1fr);row-gap:4.6%;column-gap:5%}
#app .ap-ico{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;border:0;background:none;padding:0;color:#fff;font:500 clamp(9.5px,.85vw,11px)/1.1 var(--f-ui);text-shadow:0 1px 3px rgba(40,10,60,.35);white-space:nowrap}
#app .ap-ico>i{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:24%;background:var(--bg,#fff);box-shadow:0 6px 14px -8px rgba(40,10,60,.55)}
#app .ap-ico>i svg{width:58%;height:58%}
#app .ap-ico>span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
/* el icono de TU clínica: zona táctil mayor que el icono y su nombre en negrita */
#app button.ap-mine{cursor:pointer;position:relative;z-index:1;-webkit-tap-highlight-color:transparent;font-weight:700}
#app button.ap-mine::after{content:"";position:absolute;inset:-10px -9px -8px}
#app .ap-mine>i{background:#fff;overflow:hidden;transition:transform .3s var(--ease-back)}
#app .ap-mine>i svg{width:88%;height:88%}
#app .ap-mine:hover>i{transform:scale(1.06)}
#app .ap-dock{position:absolute;left:4.5%;right:4.5%;bottom:3.2%;padding:3.6% 4.5%;border-radius:30px;background:rgba(255,255,255,.26);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);display:grid;grid-template-columns:repeat(4,1fr);column-gap:7%}
#app .ap-dock .ap-ico span{display:none}
#app .ap-pages{position:absolute;left:0;right:0;bottom:15.5%;display:flex;justify-content:center;gap:6px}
#app .ap-pages i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.5)}
#app .ap-pages i:first-child{background:#fff}
#app .ap-app{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;transition:opacity .25s}
#app .ap-phone.open .ap-app{opacity:1;pointer-events:auto}
#app .ap-view{position:absolute;left:0;right:0;bottom:0;top:5.6%;overflow:hidden}
#app .ap-view .scr{position:absolute;top:0;bottom:0;left:50%;height:100%;width:auto;background:#fff;transform:translateX(-50%);transition:opacity .35s var(--ease),transform .45s var(--ease)}
#app .ap-view .scr.off{opacity:0;transform:translateX(-46%);pointer-events:none}
#app .ap-view .scr.off.l{transform:translateX(-54%)}
#app .ap-hit{position:absolute;border:0;background:transparent;padding:0;cursor:pointer;border-radius:14px;-webkit-tap-highlight-color:transparent}
#app .ap-hit:focus-visible{outline:3px solid var(--violet);outline-offset:-2px}
#app .ap-homebar{position:absolute;left:50%;bottom:0;z-index:5;width:46%;height:28px;margin-left:-23%;border:0;background:transparent;cursor:pointer;padding:0}
#app .ap-homebar::after{content:"";position:absolute;left:18%;right:18%;bottom:8px;height:5px;border-radius:9px;background:rgba(20,10,30,.82)}
#app .ap-phone:not(.open) .ap-homebar{display:none}
/* ---------- la firma desde el móvil */
#app .ap-h3{margin:0;font:800 clamp(28px,3vw,42px)/1.08 var(--f-display);letter-spacing:-.02em;color:var(--ink);max-width:16ch}
#app .ap-sign{margin-top:clamp(64px,10vw,140px);display:grid;grid-template-columns:minmax(0,1fr);gap:0}
#app .ap-sign-copy{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
#app .ap-sign-copy>p{margin:0;font:450 17px/1.55 var(--f-ui);color:var(--ink-2);max-width:40ch}
#app .ap-sign-copy>.gd-row{margin:8px 0 12px;align-self:stretch}
#app .ap-sdemo{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px}
/* en el móvil, el teléfono se ve «desplazado» hasta la firma: recuadro y botón grandes, a mano del pulgar */
#app .ap-sphone{position:relative;width:min(92vw,360px);aspect-ratio:auto;height:auto;padding:0 10px 10px;border-radius:0 0 46px 46px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 56px);mask-image:linear-gradient(180deg,transparent 0,#000 56px)}
#app .ap-sphone>.scrn{height:auto;border-radius:0 0 36px 36px;background:#efe9f1}
#app .ap-sv{position:relative;aspect-ratio:390/514}
#app .ap-sv .scr{position:absolute;left:0;right:0;top:auto;bottom:0;transition:opacity .5s var(--ease),transform .6s var(--ease)}
#app .ap-sv .scr.off{opacity:0;transform:translateX(10%);pointer-events:none}
#app .ap-pad{position:absolute;border-radius:9px;background:#fff;border:2px dashed #b9a5cc;overflow:hidden;touch-action:none;cursor:crosshair}
#app .ap-pad::before{content:"Firma aquí con el dedo";position:absolute;left:0;right:0;top:50%;margin-top:-.6em;text-align:center;font:650 16px/1.2 var(--f-ui);color:#a493b8;letter-spacing:.01em;transition:opacity .2s;pointer-events:none}
#app .ap-pad::after{content:"";position:absolute;left:9%;right:9%;bottom:22%;border-bottom:1.5px dashed #d8cde2;pointer-events:none}
@media (hover:hover) and (pointer:fine){#app .ap-pad::before{content:"Firma aquí con el ratón"}}
#app .ap-pad.inked::before{opacity:0}
#app .ap-pad canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
#app .ap-clear{position:absolute;border:0;background:transparent;border-radius:10px;cursor:pointer;padding:0}
#app .ap-firmar{position:absolute;border:0;border-radius:11px;color:#fff;font:750 17px/1 var(--f-ui);background:linear-gradient(90deg,#c0448f,#8a4bc0);cursor:pointer;box-shadow:0 10px 24px -12px rgba(120,40,120,.8);transition:background .25s,transform .25s var(--ease-back)}
#app .ap-firmar::after{content:"";position:absolute;inset:-6px -2px}
#app .ap-firmar:disabled{background:#ddd2e3;color:#fff;cursor:not-allowed;box-shadow:none}
#app .ap-firmar:not(:disabled):active{transform:scale(.97)}
#app .ap-ok{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:0 12%;background:rgba(255,255,255,.94);text-align:center;opacity:0;pointer-events:none;transition:opacity .3s}
#app .ap-ok.on{opacity:1}
#app .ap-ok .ck{width:64px;height:64px;border-radius:50%;background:#22c58b;display:grid;place-items:center;box-shadow:0 14px 30px -12px rgba(34,197,139,.8);transform:scale(.4);transition:transform .5s var(--ease-back)}
#app .ap-ok.on .ck{transform:none}
#app .ap-ok .ck svg{width:32px;height:32px}
#app .ap-ok b{font:750 22px/1.15 var(--f-ui);color:var(--ink)}
#app .ap-ok span{font:500 15px/1.4 var(--f-ui);color:var(--muted)}
#app .ap-alt{min-height:44px;border:0;background:none;padding:10px 4px;font:600 15px/1.2 var(--f-ui);color:var(--ink-2);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
#app .ap-ficha{position:relative;width:100%;margin:10px 0 0}
/* en el móvil, de la ficha se ve la parte de los documentos (donde aparece el consentimiento firmado) */
#app .ap-fb{position:relative;aspect-ratio:1440/560;overflow:hidden}
#app .ap-fb .scr{position:absolute;left:0;right:0;bottom:0;top:auto}
#app .ap-toast{position:absolute;left:50%;top:38px;z-index:3;display:flex;align-items:center;gap:10px;padding:8px 12px 8px 8px;border-radius:16px;background:#1b1230;color:#fff;font:600 13px/1.3 var(--f-ui);white-space:nowrap;box-shadow:0 18px 40px -16px rgba(20,8,50,.8);transform:translate(-50%,-14px);opacity:0;transition:transform .5s var(--ease-back),opacity .3s}
#app .ap-toast i{width:26px;height:26px;border-radius:50%;background:#22c58b;display:grid;place-items:center;flex:none}
#app .ap-toast i svg{width:15px;height:15px}
#app .ap-toast small{display:block;font:500 12px/1.2 var(--f-ui);opacity:.75}
#app .ap-ficha.done .ap-toast{transform:translate(-50%,0);opacity:1}
#app .ap-ficha figcaption{display:none;margin-top:10px;font:500 15px/1.45 var(--f-ui);color:var(--muted)}
/* ---------- referidos: la bola de nieve */
#app .ap-ref{margin-top:clamp(64px,10vw,140px);display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:center}
#app .ap-ref-copy{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
#app .ap-ref-copy>p{margin:0;font:450 17px/1.55 var(--f-ui);color:var(--ink-2);max-width:42ch}
#app .ap-ref-copy>p b{color:var(--ink);font-weight:700}
#app .ap-ref-copy>.gd-row{margin:8px 0 2px;align-self:stretch}
#app .ap-grow{width:100%;max-width:420px}
#app .ap-grow:disabled{opacity:.6;cursor:default;pointer-events:none}
#app .ap-net{position:relative;min-width:0;display:flex;flex-direction:column;gap:10px;margin-top:6px}
#app .ap-nw{position:relative;width:100%;max-width:500px;aspect-ratio:1;margin:0 auto;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.9),rgba(255,255,255,.35) 62%,rgba(255,255,255,0) 100%)}
#app .ap-links{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
#app .ap-links path{fill:none;stroke:#e7a9c2;stroke-width:.55;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;transition:stroke-dashoffset .6s var(--ease),stroke .3s,opacity .2s}
#app .ap-links path.in{stroke-dashoffset:0;opacity:1}
#app .ap-links path.hl{stroke:#d23a72;stroke-width:.9}
#app .ap-nw.focus .ap-links path.in:not(.hl){opacity:.35}
#app .ap-node{position:absolute;width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);padding:0;border:0;border-radius:50%;background:#eadff0 center 22%/cover no-repeat;box-shadow:0 0 0 3px #fff,0 10px 22px -10px rgba(40,10,70,.6);cursor:pointer;opacity:0;transform:scale(0);transition:transform .55s var(--ease-back),opacity .25s,box-shadow .3s;-webkit-tap-highlight-color:transparent}
#app .ap-node::before{content:"";position:absolute;inset:-7px;border-radius:50%}
#app .ap-node:not(.in){background-image:none!important;background-color:transparent;box-shadow:inset 0 0 0 1.5px rgba(210,58,114,.32);opacity:.9;transform:scale(.62);cursor:default}
#app .ap-node:not(.in) .nm{opacity:0}
#app .ap-node.in{opacity:1;transform:none}
#app .ap-node.g0{box-shadow:0 0 0 3px #fff,0 0 0 6px #f06292,0 14px 30px -10px rgba(120,20,80,.6)}
#app .ap-node .nm{position:absolute;left:50%;top:100%;margin-top:7px;transform:translateX(-50%);white-space:nowrap;padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 4px 12px -6px rgba(40,10,70,.45);font:650 13px/1 var(--f-ui);color:var(--ink);pointer-events:none;transition:opacity .25s}
#app .ap-node.g3 .nm{opacity:0}
#app .ap-nw.focus .ap-node:not(.hl){opacity:.4}
#app .ap-node.hl{box-shadow:0 0 0 3px #fff,0 0 0 6px #d23a72,0 14px 30px -10px rgba(120,20,80,.6)}
#app .ap-node.hl .nm{opacity:1}
#app .ap-pts{position:absolute;z-index:3;padding:4px 8px;border-radius:999px;background:#fff6dc;color:#8a5a00;font:800 12.5px/1 var(--f-ui);box-shadow:0 8px 18px -10px rgba(120,80,0,.6);pointer-events:none;white-space:nowrap;transform:translate(-50%,-50%)}
#app .ap-tag{position:absolute;z-index:3;padding:5px 9px;border-radius:10px;background:#1b1230;color:#fff;font:650 12.5px/1.2 var(--f-ui);white-space:nowrap;pointer-events:none;transform:translate(-50%,0);opacity:0;transition:opacity .3s}
#app .ap-tag.on{opacity:1}
#app .ap-nstat{margin:0;min-height:1.5em;text-align:center;font:600 16px/1.5 var(--f-ui);color:var(--ink)}
#app .ap-nstat:empty{display:none}
#app .ap-nlab{margin:0;text-align:center;font:500 14.5px/1.45 var(--f-ui);color:var(--muted)}
/* el siguiente paso con enlace a la reserva, dentro del bocadillo de la mascota */
#app .gd-cta{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:11px;min-height:50px;padding:8px 18px;border-radius:999px;background:var(--grad);color:#fff;font:750 16px/1.2 var(--f-ui);text-align:center;text-decoration:none;box-shadow:0 14px 30px -14px rgba(240,98,146,.8)}
#app .gd-cta svg{width:18px;height:18px;flex:none}
@media (min-width:981px){
  #app .ap-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
  #app .ap-copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
  #app .ap-copy>.gd-row{order:0;margin:2px 0 0;align-self:stretch}
  #app .ap-alt{font-size:14.5px}
  #app .ap-nav{display:grid}
  #app .ap-phone{width:min(100%,330px)}
  #app .ap-sign{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,5vw,72px);align-items:center}
  #app .ap-sdemo{display:grid;grid-template-columns:minmax(0,44%) minmax(0,1fr);align-items:center;gap:0}
  #app .ap-sphone{grid-area:1/1/2/2;z-index:2;width:100%;max-width:300px;aspect-ratio:390/844;padding:12px;border-radius:52px;-webkit-mask-image:none;mask-image:none}
  #app .ap-sphone>.scrn{height:100%;border-radius:41px}
  #app .ap-sv{position:absolute;inset:0;aspect-ratio:auto}
  #app .ap-sv .scr{inset:0}
  #app .ap-alt{grid-area:2/1/3/2;justify-self:center}
  #app .ap-ficha{grid-area:1/1/2/3;margin:0 0 0 36%;width:auto;align-self:center}
  #app .ap-fb{aspect-ratio:1440/900}
  #app .ap-ficha figcaption{display:block;padding-left:14%}
  #app .ap-toast{top:44px;font-size:14px;padding:10px 16px 10px 10px}
  #app .ap-ref{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,5vw,72px)}
  #app .ap-grow{width:auto}
  #app .ap-net{margin-top:0}
}
@media (prefers-reduced-motion:reduce){
  #app .ap-home,#app .ap-view .scr,#app .ap-ok,#app .ap-ok .ck,#app .ap-sv .scr,#app .ap-toast{transition:none}
  #app .ap-node,#app .ap-links path,#app .ap-tag{transition:none}
}

/* ===== #email ===== */
/* ===== 19:00 · Email (L2) · mobile first =====
   Una acción: «Enviar campaña», con la fila de «Tu siguiente paso» justo encima. En el móvil: el correo, las pacientes,
   la fila y el botón; las plantillas (elegir otra) solo en escritorio o con «Preparar otra» al terminar. */
#email{contain-intrinsic-size:auto 1800px;background:radial-gradient(50% 460px at 96% 520px,rgba(255,170,190,.3),rgba(255,170,190,0) 70%),linear-gradient(180deg,#f8eaf6 0%,#f2e7fb 55%,#ece2fb 100%);overflow:hidden;overflow:clip}
#email [hidden]{display:none!important}
#email .clock svg circle{stroke:#e0679a}
#email .em-head{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
#email .pain{font-size:clamp(31px,3.6vw,50px);max-width:20ch}
#email .t-lead{max-width:44ch}
#email .t-lead b{color:var(--ink);font-weight:650}
#email .em-demo{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-top:26px}
#email .em-side{display:contents}
#email .em-main{order:1;position:relative;min-width:0}
#email .em-side>.gd-row{order:2;margin:18px 0 12px}
#email .em-go{order:3}
#email .em-real{order:4}
#email .em-box{display:none}
/* campañas preparadas (escritorio) */
#email .em-box{padding:16px;border-radius:24px;background:#fff;box-shadow:0 30px 70px -50px rgba(40,10,80,.55),0 0 0 1px rgba(40,22,70,.06)}
#email .em-box h3{margin:0 0 4px;font:700 16.5px/1.3 var(--f-ui);color:var(--ink)}
#email .em-box>p{margin:0 0 12px;font:500 15px/1.45 var(--f-ui);color:var(--muted)}
#email .em-tpls{display:grid;gap:8px}
#email .em-tpl{appearance:none;width:100%;min-height:64px;display:grid;grid-template-columns:42px 1fr;gap:2px 12px;align-items:center;text-align:left;padding:10px 12px;border:0;border-radius:16px;background:#faf7fd;cursor:pointer;color:var(--ink-2);box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .25s,background .25s;-webkit-tap-highlight-color:transparent}
#email .em-tpl:hover{background:#f5effc}
#email .em-tpl[aria-checked="true"]{background:#fff;box-shadow:inset 0 0 0 2px #7c4dff,0 14px 30px -22px rgba(80,30,160,.7)}
#email .em-tpl .ic{grid-row:span 2;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--tb)}
#email .em-tpl .ic svg{width:22px;height:22px}
#email .em-tpl b{font:700 15.5px/1.25 var(--f-ui);color:var(--ink)}
#email .em-tpl span.d{font:500 14px/1.35 var(--f-ui);color:var(--muted)}
/* el correo */
#email .em-mail{position:relative;border-radius:26px;background:#fff;box-shadow:var(--sh-2);overflow:hidden}
#email .em-env{padding:13px 16px 12px;border-bottom:1px solid #efe7f5;background:linear-gradient(180deg,#fcfaff,#f8f3fd)}
#email .em-env .lab{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
#email .em-env .lab b{font:700 12.5px/1 var(--f-ui);letter-spacing:.12em;color:#6a2fae}
#email .em-st{display:flex;align-items:center;gap:7px;margin:0;font:600 13.5px/1.3 var(--f-ui);color:var(--muted)}
#email .em-st i{flex:none;width:8px;height:8px;border-radius:50%;background:#c9b6ff;transition:background .3s}
#email .em-demo.sent .em-st i{background:#22c58b}
#email .em-env dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font:500 14px/1.35 var(--f-ui)}
#email .em-env dt{color:var(--muted)}
#email .em-env dd{margin:0;color:var(--ink);min-width:0;overflow-wrap:anywhere}
#email .em-env dd.sub{font-weight:650}
#email .em-scroll{position:relative;max-height:380px;overflow:hidden;padding:16px 0 0;background:linear-gradient(180deg,#efe8f6,#f7f3fa)}
#email .em-scroll::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(180deg,rgba(247,243,250,0),#f7f3fa 85%);pointer-events:none}
#email .em-phonec{width:min(100%,330px);margin:0 auto;padding:10px 10px 0;border-radius:40px 40px 0 0;background:#16111d;box-shadow:0 30px 60px -30px rgba(20,8,50,.7),inset 0 0 0 1.5px rgba(255,255,255,.12)}
#email .em-card{position:relative;max-width:560px;margin:0 auto;background:#fff;border-radius:31px 31px 0 0;padding:44px 18px 16px;color:#34243e;font-family:Arial,Helvetica,sans-serif;transition:opacity .25s}
#email .em-card::before{content:"";position:absolute;left:50%;top:12px;width:84px;height:22px;margin-left:-42px;border-radius:12px;background:#16111d}
#email .em-card.swap{opacity:0}
#email .em-card .lg{display:flex;align-items:center;gap:12px}
#email .em-card .lg [data-logo]{width:54px;height:54px;flex:none}
#email .em-card .lg [data-logo] svg{width:100%;height:100%}
#email .em-card .nm{font-size:18px;font-weight:bold;margin:0}
#email .em-card .eb{font-size:11px;letter-spacing:1.4px;color:#744296;margin:20px 0 8px}
#email .em-card h4{font:bold 22px/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.5px;margin:0 0 14px;color:#34243e}
#email .em-card p.b{font-size:15px;line-height:1.6;margin:0 0 14px}
#email .em-card .bt{display:block;text-align:center;margin:8px 0 18px;padding:14px 20px;border-radius:12px;background:#633b85;color:#fff;font-weight:bold;font-size:15px}
#email .em-card .sm{font-size:12.5px;line-height:1.6;color:#705d7a;margin:0 0 10px}
#email .em-card .ct{font-size:12.5px;line-height:1.6;margin:0 0 10px}
#email .em-card hr{border:0;border-top:1px solid #e9dfee;margin:18px 0}
#email .em-card .ft{font-size:11.5px;line-height:1.6;color:#705d7a;margin:0 0 8px}
#email .em-card .un{font-size:12.5px;color:#633b85;text-decoration:underline;margin:0 0 8px}
#email .em-card .by{font-size:11px;color:#705d7a;margin:0}
/* destinatarias */
#email .em-crowd{position:relative;display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;min-height:46px}
#email .em-crowd li{position:relative;width:42px;height:42px;opacity:.6;transform:scale(.9);transition:opacity .4s var(--ease),transform .5s var(--ease-back)}
#email .em-crowd li:nth-child(n+8){display:none}
#email .em-demo.going .em-crowd li,#email .em-demo.sent .em-crowd li{opacity:1;transform:none}
#email .em-crowd .face{display:block;width:100%;height:100%}
#email .em-crowd li::after{content:"";position:absolute;right:-3px;bottom:-3px;width:18px;height:18px;border-radius:50%;background:#22c58b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/78% no-repeat;box-shadow:0 0 0 2.5px #fff;transform:scale(0);transition:transform .4s var(--ease-back)}
#email .em-crowd li.got::after{transform:scale(1)}
#email .em-crowd-cap{margin:8px 0 0;text-align:center;font:500 15px/1.4 var(--f-ui);color:var(--muted)}
#email .em-fly{position:absolute;left:0;top:0;width:30px;height:22px;z-index:6;pointer-events:none;will-change:transform,opacity}
#email .em-fly svg{width:100%;height:100%;display:block;filter:drop-shadow(0 6px 8px rgba(60,20,110,.35))}
/* el clic */
#email .em-go{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:16px;border-radius:24px;background:#fff;box-shadow:0 30px 70px -50px rgba(40,10,80,.55),0 0 0 1px rgba(40,22,70,.06)}
#email .em-to{display:flex;align-items:baseline;gap:10px;margin:0;padding:0 2px;font:500 15.5px/1.35 var(--f-ui);color:var(--ink)}
#email .em-to span{flex:none;color:var(--muted)}
#email .em-to b{font-weight:650}
#email .em-legal{margin:0;display:flex;gap:8px;align-items:flex-start;font:500 15px/1.45 var(--f-ui);color:var(--ink-2)}
#email .em-legal svg{flex:none;width:18px;height:18px;margin-top:2px}
#email .em-send{--h:62px;width:100%;font-size:18px}
#email .em-send .pf{position:absolute;inset:0;z-index:0;border-radius:inherit;background:rgba(255,255,255,.3);transform-origin:0 50%;transform:scaleX(0);pointer-events:none}
#email .em-demo.going .em-send .pf{transform:scaleX(1);transition:transform .95s cubic-bezier(.4,0,.2,1)}
#email .em-send .arr svg{transition:transform .5s var(--ease),opacity .3s}
#email .em-demo.going .em-send .arr svg{transform:translate(26px,-22px) rotate(-12deg);opacity:0}
#email .em-demo.going .em-send{pointer-events:none}
#email .em-demo.sent .em-send{background:#17a06b;box-shadow:0 18px 40px -16px rgba(23,160,107,.7);cursor:default}
#email .em-demo.sent .em-send::before{animation:none;opacity:0}
#email .em-done{display:none;flex-direction:column;align-items:flex-start;gap:4px}
#email .em-demo.sent .em-done{display:flex}
#email .em-done span{font:500 15px/1.5 var(--f-ui);color:var(--muted)}
#email .em-link{min-height:44px;border:0;background:none;padding:10px 2px;font:650 15.5px/1 var(--f-ui);color:var(--ink-2);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
/* panel real */
#email .em-real{margin:22px 0 0}
#email .em-real .em-rb{position:relative;aspect-ratio:1440/900}
#email .em-real .em-rb .scr{position:absolute;inset:0;transition:opacity .45s var(--ease)}
#email .em-real .em-rb .scr.off{opacity:0}
#email .em-real figcaption{margin-top:10px;font:500 15px/1.45 var(--f-ui);color:var(--muted)}
#email .em-foot{margin-top:clamp(24px,5vw,64px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 26px}
#email .em-foot p{margin:0;font:500 15px/1.5 var(--f-ui);color:var(--muted);max-width:64ch}
#email .em-foot .btn-ghost{display:none}
@media (max-width:380px){#email .em-crowd{gap:6px}#email .em-crowd li{width:38px;height:38px}}
@media (min-width:761px){
  #email .em-foot .btn-ghost{display:inline-flex}
}
@media (min-width:641px){
  #email .em-crowd{gap:10px}
  #email .em-crowd li{width:54px;height:54px}
  #email .em-crowd li::after{width:22px;height:22px}
  #email .em-crowd li:nth-child(n+8){display:block}
}
@media (min-width:981px){
  #email .em-demo{grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start;margin-top:48px}
  #email .em-side{display:flex;flex-direction:column;gap:14px;min-width:0}
  #email .em-side>.gd-row{margin:6px 0 0}
  #email .em-box{display:block}
  #email .em-main{order:2}
  #email .em-scroll{max-height:470px;overflow:auto;scrollbar-width:thin;padding:18px 16px 26px;background:#f7f3fa}
  #email .em-scroll::after{display:none}
  #email .em-phonec{width:auto;padding:0;border-radius:0;background:none;box-shadow:none}
  #email .em-card{border:1px solid #e9dfee;border-radius:20px;padding:24px 24px 18px}
  #email .em-card::before{display:none}
  #email .em-card .bt{display:inline-block}
  #email .em-card h4{font-size:26px}
  #email .em-card p.b{font-size:15.5px}
  #email .em-env{padding:18px 22px 14px}
  #email .em-real{margin:4px 0 0}
}
@media (prefers-reduced-motion:reduce){
  #email .em-demo.going .em-send .pf,#email .em-send .arr svg,#email .em-crowd li,#email .em-crowd li::after,#email .em-card{transition:none}
}

/* ===== #papeleo ===== */
/* ===== 20:30 · Papeleo (L2) · mobile first =====
   El copiloto es la demo (guiada paso a paso con la fila de «Tu siguiente paso» encima); facturas, consentimientos,
   stock y equipo, en cuatro fichas compactas con su cifra real: cada una abre su pantalla real. */
#papeleo{contain-intrinsic-size:auto 1600px;overflow:hidden;overflow:clip;
  background:radial-gradient(46% 440px at 6% 500px,rgba(255,176,160,.24),rgba(255,176,160,0) 70%),linear-gradient(180deg,#ece2fb 0%,#e6dbf8 45%,#ddcff5 82%,#d5c6f1 100%)}
#papeleo [hidden]{display:none!important}
#papeleo .clock svg circle{stroke:#9b6dff}
#papeleo .pp-head{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
#papeleo .pp-head>div{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
#papeleo .pain{font-size:clamp(32px,3.6vw,50px);max-width:17ch}
#papeleo .t-lead{max-width:40ch}
#papeleo .t-lead b{color:var(--ink);font-weight:650}
#papeleo .pp-bento{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
#papeleo .pp-cw{min-width:0;display:flex;flex-direction:column}
#papeleo .pp-cw>.gd-row{margin:18px 0 30px}
/* ---------- copiloto (réplica del panel «TU COPILOTO · AURA.») */
#papeleo .pp-cop{position:relative;min-width:0;display:flex;flex-direction:column;border-radius:24px;background:linear-gradient(160deg,#fbf7ff 0%,#f4ecff 55%,#efe4ff 100%);box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 30px 60px -48px rgba(40,10,80,.55),0 0 0 1px rgba(40,22,70,.07)}
#papeleo .pp-cp{display:flex;flex-direction:column;height:100%;padding:16px 14px 12px}
#papeleo .pp-cp-top{display:flex;align-items:center;gap:12px}
#papeleo .pp-cp-top svg{width:44px;height:44px;flex:none;overflow:visible}
#papeleo .pp-cp-top small{display:block;font:700 11.5px/1 var(--f-ui);letter-spacing:.14em;color:#8a5bc7}
#papeleo .pp-cp-top b{display:block;margin-top:3px;font:800 24px/1 var(--f-ui);letter-spacing:-.03em;color:#2a1450}
#papeleo .pp-cp-top b i{font-style:normal;color:#e0457b}
#papeleo .pp-cp-top span{display:block;margin-top:4px;font:500 13.5px/1.2 var(--f-ui);color:var(--muted)}
#papeleo .pp-cp-cl{display:flex;align-items:center;gap:8px;margin:12px 0 0;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.75);box-shadow:inset 0 0 0 1px rgba(124,77,255,.12);font:650 14.5px/1.2 var(--f-ui);color:#2a1450}
#papeleo .pp-cp-cl i{width:7px;height:7px;border-radius:50%;background:#7c4dff}
#papeleo .pp-cp-cl em{margin-left:auto;font:600 12.5px/1 var(--f-ui);font-style:normal;color:var(--muted);padding:5px 8px;border-radius:8px;background:#f3eefa}
#papeleo .pp-cp-tabs{display:none;grid-template-columns:repeat(3,1fr);gap:4px;margin:12px 0 0;padding:4px;border-radius:14px;background:rgba(255,255,255,.6)}
#papeleo .pp-cp-tabs span{display:grid;place-items:center;height:36px;border-radius:10px;font:650 14px/1 var(--f-ui);color:#6b5a86}
#papeleo .pp-cp-tabs span.on{background:linear-gradient(90deg,#b8459a,#8a4bc0);color:#fff;box-shadow:0 8px 18px -10px rgba(140,40,140,.8)}
#papeleo .pp-cp-at{display:none;justify-content:space-between;margin:14px 2px 0;font:500 14px/1.3 var(--f-ui);color:var(--muted)}
#papeleo .pp-cp-at b{color:var(--ink)}
/* en el móvil la conversación tiene altura fija (como un chat) y baja sola: fila, chat y botón caben en una pantalla */
#papeleo .pp-cp-log{height:300px;display:flex;flex-direction:column;gap:10px;margin:10px 0 0;padding:6px 2px 6px;overflow:auto;scrollbar-width:thin;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14px);mask-image:linear-gradient(180deg,transparent 0,#000 14px)}
#papeleo .pp-q{align-self:flex-end;max-width:86%;padding:11px 15px;border-radius:18px 18px 6px 18px;background:linear-gradient(135deg,#4a2470,#2e1550);color:#fff;font:600 15.5px/1.35 var(--f-ui);box-shadow:0 12px 26px -16px rgba(40,10,70,.8);margin:0}
#papeleo .pp-a{align-self:stretch;padding:14px 15px 12px;border-radius:18px;background:#fff;box-shadow:0 18px 40px -30px rgba(40,10,80,.6),0 0 0 1px rgba(40,22,70,.06)}
#papeleo .pp-a p{margin:0;font:500 15.5px/1.5 var(--f-ui);color:var(--ink)}
#papeleo .pp-a dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0}
#papeleo .pp-a dl div{padding:9px 11px;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(40,22,70,.1);min-width:0}
#papeleo .pp-a dt{font:500 13px/1.2 var(--f-ui);color:var(--muted)}
#papeleo .pp-a dd{margin:5px 0 0;font:750 16px/1.3 var(--f-ui);color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#papeleo .pp-a .src{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 12px;margin-top:10px;padding-top:8px;border-top:1px solid rgba(40,22,70,.08);font:500 13.5px/1.3 var(--f-ui);color:var(--muted)}
#papeleo .pp-a .src button{min-height:44px;border:0;background:none;padding:0;font:650 14px/1 var(--f-ui);color:#6a3fc8;cursor:pointer}
#papeleo .pp-a .rest{opacity:0;transform:translateY(8px);transition:opacity .4s,transform .5s var(--ease)}
#papeleo .pp-a.done .rest{opacity:1;transform:none}
#papeleo .pp-dots{align-self:flex-start;display:flex;gap:5px;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px rgba(40,22,70,.06)}
#papeleo .pp-dots i{width:7px;height:7px;border-radius:50%;background:#a38cc9;animation:pp-dot 1s ease-in-out infinite}
#papeleo .pp-dots i:nth-child(2){animation-delay:.15s}#papeleo .pp-dots i:nth-child(3){animation-delay:.3s}
@keyframes pp-dot{0%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}
#papeleo .pp-cp-hint{margin:auto 0 0;padding:12px 6px 4px;text-align:center;font:500 15px/1.45 var(--f-ui);color:var(--muted)}
#papeleo .pp-cp-empty{margin:auto 0;display:flex;flex-direction:column;align-items:center;gap:14px;padding:10px 4px;text-align:center}
#papeleo .pp-cp-empty p{margin:0;font:700 13px/1 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:#8a5bc7}
#papeleo .pp-cp-empty small{font:500 15px/1.45 var(--f-ui);color:var(--muted);max-width:30ch}
#papeleo .pp-cp-sug0{display:flex;flex-direction:column;align-items:center;gap:10px}
#papeleo .pp-cp-sug0 .pp-chip{min-height:54px;padding:0 22px;font-size:16.5px}
#papeleo .pp-cp-sug{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
#papeleo .pp-chip{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:50px;padding:0 18px;border:0;border-radius:999px;background:#fff;color:var(--ink);font:650 16px/1.2 var(--f-ui);box-shadow:inset 0 0 0 1.5px rgba(124,77,255,.28),0 10px 22px -16px rgba(60,20,120,.6);cursor:pointer;transition:transform .25s var(--ease-back),box-shadow .2s,opacity .2s;text-align:left}
#papeleo .pp-chip:hover{transform:translateY(-1px);box-shadow:inset 0 0 0 1.5px rgba(124,77,255,.6),0 12px 26px -16px rgba(60,20,120,.7)}
#papeleo .pp-chip:disabled{opacity:.45;cursor:default;transform:none}
#papeleo .pp-cp-in{display:none;align-items:center;gap:10px;margin:12px 0 0;padding:6px 6px 6px 16px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px rgba(40,22,70,.12)}
#papeleo .pp-cp-in input{flex:1;min-width:0;height:44px;border:0;background:transparent;font:500 15.5px/1 var(--f-ui);color:var(--ink);outline:none}
#papeleo .pp-cp-in input::placeholder{color:#8a7aa0}
#papeleo .pp-cp-in button{flex:none;width:44px;height:44px;border:0;border-radius:12px;background:linear-gradient(135deg,#d64a9a,#8a4bc0);color:#fff;display:grid;place-items:center;cursor:pointer}
#papeleo .pp-cp-in button svg{width:20px;height:20px}
#papeleo .pp-cp-in:focus-within{box-shadow:inset 0 0 0 2px #7c4dff}
#papeleo .pp-cp-ft{margin:8px 2px 0;font:500 13.5px/1.4 var(--f-ui);color:var(--muted)}
#papeleo .pp-cp-ft button{min-height:44px;margin:-12px 0;padding:0 2px;border:0;background:none;font:650 13.5px/1 var(--f-ui);color:#6a3fc8;text-decoration:underline;text-underline-offset:4px;cursor:pointer;vertical-align:middle}
/* lo que escribe el copiloto: propuesta + «Confirmar» */
#papeleo .pp-w>p{margin:0;font:500 15.5px/1.5 var(--f-ui);color:var(--ink)}
#papeleo .pp-kv div.w{grid-column:1/-1}
#papeleo .pp-cf{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:12px 0 0}
#papeleo .pp-cf .ok{display:inline-flex;align-items:center;gap:8px;min-height:50px;padding:0 24px;border:0;border-radius:999px;background:linear-gradient(90deg,#b8459a,#8a4bc0);color:#fff;font:750 16.5px/1 var(--f-ui);cursor:pointer;box-shadow:0 12px 24px -14px rgba(120,40,140,.9);transition:transform .25s var(--ease-back)}
#papeleo .pp-cf .ok:active{transform:scale(.96)}
#papeleo .pp-cf .no{min-height:46px;padding:0 10px;border:0;border-radius:999px;background:none;color:var(--ink-2);font:650 15px/1 var(--f-ui);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
#papeleo .pp-cf small{flex-basis:100%;font:500 13.5px/1.4 var(--f-ui);color:var(--muted)}
#papeleo .pp-okd{display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:11px 12px;border-radius:14px;background:#ecf8f2;color:#145f40;font:650 15px/1.35 var(--f-ui)}
#papeleo .pp-okd i{flex:none;width:28px;height:28px;border-radius:50%;background:#22c58b;display:grid;place-items:center}
#papeleo .pp-okd i svg{width:16px;height:16px}
#papeleo .pp-okd.in{animation:pp-pop .5s var(--ease-back)}
#papeleo .pp-okd.cx{background:#f4f0f8;color:var(--ink-2)}
#papeleo .pp-okd.cx i{background:#b9adc9}
@keyframes pp-pop{from{opacity:0;transform:translateY(8px) scale(.96)}}
/* ---------- las otras cuatro piezas: una cifra real cada una y su pantalla real */
#papeleo .pp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}
#papeleo .pp-tile{appearance:none;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;padding:14px 13px 12px;border:0;border-radius:20px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 24px 50px -40px rgba(40,10,80,.6),0 0 0 1px rgba(40,22,70,.07);transition:transform .25s var(--ease-back),box-shadow .25s;-webkit-tap-highlight-color:transparent}
#papeleo .pp-tile:hover{transform:translateY(-2px);box-shadow:0 30px 60px -40px rgba(40,10,80,.7),0 0 0 1.5px rgba(124,77,255,.35)}
#papeleo .pp-tile:active{transform:scale(.98)}
#papeleo .pp-tile .tt{display:flex;align-items:center;gap:8px;font:700 15px/1.2 var(--f-ui);color:var(--ink)}
#papeleo .pp-tile .ic{flex:none;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--ib);color:var(--ic)}
#papeleo .pp-tile .ic svg{width:18px;height:18px}
#papeleo .pp-tile .big{margin-top:4px;font:800 clamp(21px,2vw,26px)/1.1 var(--f-ui);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
#papeleo .pp-tile .sm{font:500 14.5px/1.38 var(--f-ui);color:var(--muted)}
#papeleo .pp-tile .sm b{color:var(--ink-2);font-weight:650}
#papeleo .pp-tile .vw{display:inline-flex;align-items:center;gap:5px;margin-top:auto;padding-top:6px;font:650 14.5px/1.2 var(--f-ui);color:#6a3fc8}
#papeleo .pp-tile .vw svg{width:15px;height:15px}
#papeleo .pp-tile .soon{display:flex;flex-direction:column;gap:5px;width:100%;margin:2px 0 0}
#papeleo .pp-tile .soon i{display:block;height:6px;border-radius:9px;background:#f1ecf7;overflow:hidden}
#papeleo .pp-tile .soon i::after{content:"";display:block;height:100%;width:var(--k);border-radius:9px;background:#f0a020}
/* ---------- visor de la pantalla real */
#papeleo .pp-dlg{width:min(1100px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);padding:12px 12px 14px;border:0;border-radius:28px;background:#170c38;box-shadow:0 0 0 1px rgba(255,255,255,.1);overflow:visible;color:var(--ink)}
#papeleo .pp-dlg::backdrop{background:rgba(10,4,26,.82)}
#papeleo .pp-dlg[open]{animation:pp-in .35s var(--ease) both}
@keyframes pp-in{from{opacity:0;transform:translateY(14px) scale(.98)}}
#papeleo .pp-dlg .dev-win{box-shadow:0 40px 100px -30px rgba(0,0,0,.8)}
#papeleo .pp-dlg .bar span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#papeleo .pp-db{position:relative;overflow:hidden;max-height:calc(100vh - 150px)}
#papeleo .pp-db .scr{position:relative;width:100%}
#papeleo .pp-dcap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 18px;margin:14px 4px 0;font:500 15px/1.45 var(--f-ui);color:#efe7ff}
#papeleo .pp-dcap .acts{display:flex;gap:10px}
#papeleo .pp-dcap button{min-height:48px;padding:0 20px;border:0;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font:650 15.5px/1 var(--f-ui);cursor:pointer;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.25)}
#papeleo .pp-dcap button.x{background:#fff;color:var(--ink);box-shadow:none}
#papeleo .pp-foot{margin-top:clamp(22px,4vw,56px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 26px}
#papeleo .pp-foot p{margin:0;font:500 15px/1.5 var(--f-ui);color:var(--ink-2);max-width:64ch}
#papeleo .pp-foot .btn-ghost{display:none}
/* el siguiente paso con enlace a la reserva, dentro del bocadillo de la mascota */
#papeleo .gd-cta{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:11px;min-height:50px;padding:8px 18px;border-radius:999px;background:var(--grad);color:#fff;font:750 16px/1.2 var(--f-ui);text-align:center;text-decoration:none;box-shadow:0 14px 30px -14px rgba(240,98,146,.8)}
#papeleo .gd-cta svg{width:18px;height:18px;flex:none}
@media (min-width:761px){
  #papeleo .pp-foot .btn-ghost{display:inline-flex}
  #papeleo .pp-cp-in{display:flex}
}
@media (min-width:981px){
  #papeleo .pp-head{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:20px 56px;align-items:end}
  #papeleo .pp-bento{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:26px;align-items:start;margin-top:22px}
  #papeleo .pp-cw>.gd-row{margin:0 0 30px}
  #papeleo .pp-cp{padding:22px 24px 18px}
  #papeleo .pp-cp-top svg{width:52px;height:52px}
  #papeleo .pp-cp-top b{font-size:27px}
  #papeleo .pp-cp-tabs{display:grid}
  #papeleo .pp-cp-at{display:flex}
  #papeleo .pp-cp-log{height:340px}
  #papeleo .pp-tiles{gap:14px;margin-top:140px}
  #papeleo .pp-tile{padding:18px 18px 16px;gap:6px}
}
@media (prefers-reduced-motion:reduce){
  #papeleo .pp-dots i{animation:none}
  #papeleo .pp-dlg[open]{animation:none}
  #papeleo .pp-a .rest{transition:none}
  #papeleo .pp-okd.in{animation:none}
}

/* ===== #beneficio ===== */
/* 21:30 · «Cierras el día sin saber si has ganado dinero» — el cierre de caja de hoy, para el pulgar.
   Lo cobrado se desmonta en piezas (IVA, producto y comisiones, la parte de hoy de los gastos fijos) hasta quedar
   el beneficio real. Mobile first: en el móvil la cascada y el resultado arriba, los controles abajo (zona del pulgar),
   todo en una pantalla; en escritorio, cascada a la izquierda y controles a la derecha. */
#beneficio{--bn-sf:#1c1242;--bn-deck:#140c31;--bn-ln:rgba(255,255,255,.09);--bn-in:#ebe4ff;--bn-out:#d96a86;--bn-outt:#f3a9b9;--bn-keep:#5fe3ac;--bn-lose:#ff4d61;--bn-loset:#ff8597;--bn-even:#ffd27a;--bn-gh:#31275b;--bn-res:var(--bn-keep);--bn-rest:var(--bn-keep);
  contain-intrinsic-size:auto 2460px;padding-top:clamp(112px,13vw,190px);color:var(--on-night);overflow:hidden;overflow:clip;isolation:isolate;
  background:radial-gradient(56% 260px at 82% 230px,rgba(255,160,130,.34),rgba(255,160,130,0) 72%),
    radial-gradient(50% 280px at 50% 100%,#24124f,rgba(36,18,79,0)),
    linear-gradient(180deg,#d5c6f1 0,#a587d8 70px,#6a4aae 150px,#3c2577 260px,#251552 430px,#1a0e3d 62%,#170c38 82%,#170c36 100%)}
/* (abajo, el mismo perfil que arriba del recorrido: #24124f en el centro, #170c36 en los bordes; la junta no se ve) */
#beneficio [hidden]{display:none!important}
#beneficio .bn-sky{position:absolute;inset:0 0 auto 0;height:620px;z-index:-1;pointer-events:none}
#beneficio .bn-sky i{position:absolute;width:var(--s,2px);height:var(--s,2px);border-radius:50%;background:#fff;opacity:var(--o,.6)}
#beneficio .bn-sky i.tw{animation:bn-tw 4.8s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes bn-tw{0%,100%{opacity:var(--o,.6)}50%{opacity:.12}}
/* ---------- cabecera: la hora y el dolor */
#beneficio .bn-head{display:grid;gap:16px;margin-bottom:26px}
#beneficio .bn-head .clock{justify-self:start}
#beneficio .clock{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
#beneficio .clock svg circle{stroke:#ffd27a}
#beneficio .pain{color:#fff;font-size:clamp(33px,3.7vw,52px);max-width:14ch}
#beneficio .t-lead{color:var(--on-night-2);max-width:40ch}
#beneficio .t-lead b{color:#fff;font-weight:650}
/* ---------- el cierre de hoy (tarjeta) */
#beneficio .bn-calc{position:relative;border-radius:28px;background:linear-gradient(180deg,#25184f 0,var(--bn-sf) 42%,#1a103e 100%);box-shadow:0 0 0 1px rgba(255,255,255,.1)}
#beneficio .bn-viz{position:relative;min-width:0;padding:14px 18px 16px}
#beneficio .bn-top{display:flex;align-items:center;gap:10px;margin:0 0 13px}
#beneficio .bn-co{flex:1;min-width:0;display:flex;align-items:center;gap:10px}
#beneficio .bn-lg{flex:none;width:30px;height:30px;border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.16),0 6px 14px -6px rgba(0,0,0,.6)}
#beneficio .bn-lg svg{display:block;width:100%;height:100%}
#beneficio .bn-co b{min-width:0;font:700 16px/1.2 var(--f-ui);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#beneficio .bn-tag{flex:none;display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 13px 0 11px;border-radius:999px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);font:650 15px/1 var(--f-ui);color:var(--on-night-2);white-space:nowrap}
#beneficio .bn-tag i{width:8px;height:8px;border-radius:50%;background:var(--bn-even)}
#beneficio .bn-calc[data-mine] .bn-tag i{background:var(--bn-keep)}
#beneficio .bn-tag .sh{display:none}
@media (max-width:380px){#beneficio .bn-tag .lg{display:none}#beneficio .bn-tag .sh{display:inline}}
/* la cascada: cada fila con su importe y su pieza, alineadas a la misma escala */
#beneficio .bn-fall{margin:0;padding:0;list-style:none;display:grid;gap:10px}
#beneficio .bn-rt{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:12px;transition:opacity .4s}
#beneficio .bn-rl{font:650 16px/1.25 var(--f-ui);color:#fff}
#beneficio .bn-rv{font:700 16px/1.25 var(--f-ui);font-variant-numeric:tabular-nums;color:var(--bn-outt);white-space:nowrap;text-align:right}
#beneficio .bn-row[data-k="cob"] .bn-rt{align-items:last baseline}
#beneficio .bn-row[data-k="cob"] .bn-rl{font-size:17px}
#beneficio .bn-row[data-k="cob"] .bn-rv{color:#fff;font-size:25px;font-weight:760;letter-spacing:-.02em;font-variant-numeric:normal}
#beneficio .bn-rs{grid-column:1/-1;font:500 15px/1.3 var(--f-ui);color:var(--on-night-2)}
#beneficio .bn-tr{position:relative;height:12px;margin-top:6px}
#beneficio .bn-b{position:absolute;inset:0;color:var(--bn-out)}
#beneficio .bn-b>i{position:absolute;left:0;top:0;bottom:0;background:currentColor;transform-origin:0 0;transform:scaleX(0)}
#beneficio .bn-b>i:nth-child(1){width:8px;border-radius:4px 0 0 4px}
#beneficio .bn-b>i:nth-child(2){width:100%}
#beneficio .bn-b>i:nth-child(3){width:8px;border-radius:0 4px 4px 0}
#beneficio .bn-b.sqL>i:nth-child(1),#beneficio .bn-b.sqR>i:nth-child(3){border-radius:0}
#beneficio .bn-b.in{color:var(--bn-in)}
#beneficio .bn-b.gh{color:var(--bn-gh)}
#beneficio .bn-b.res{color:var(--bn-res);transition:color .45s}
#beneficio .bn-hatch{position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(60,0,20,0) 0 5px,rgba(60,0,20,.5) 5px 8px);opacity:0;transition:opacity .3s}
#beneficio .bn-calc[data-s="down"] .bn-hatch{opacity:1}
#beneficio .bn-z{position:absolute;left:0;top:-5px;bottom:-5px;width:2px;margin-left:-1px;border-radius:2px;background:#fff;opacity:0;transition:opacity .3s}
#beneficio .bn-calc[data-s="down"] .bn-z{opacity:.6}
/* el resultado: la frase termina aquí («…pero has ganado») con el número grande */
#beneficio .bn-res{position:relative;isolation:isolate;margin-top:14px;padding-top:11px;border-top:1px solid var(--bn-ln)}
#beneficio .bn-res::before{content:"";position:absolute;left:-14%;top:-6%;width:78%;height:120%;border-radius:50%;background:radial-gradient(closest-side,var(--bn-res),transparent);opacity:.13;z-index:-1;pointer-events:none}
#beneficio .bn-rlab{margin:0;font:650 18px/1.3 var(--f-ui);color:#fff}
#beneficio .bn-big{--fsb:clamp(43px,12.2vw,52px);margin:2px 0 10px}
#beneficio .bn-out{display:inline-flex;align-items:baseline;font:780 calc(var(--fsb) * var(--k,1))/1.02 var(--f-ui);letter-spacing:-.04em;color:var(--bn-rest);white-space:nowrap;transform-origin:0 70%;transition:color .45s}
#beneficio .bn-out .u{margin-left:.16em;font-size:.54em;font-weight:700;letter-spacing:0}
#beneficio .bn-tr.r{height:14px;margin-top:0}
#beneficio .bn-per{margin:9px 0 0;font:500 15px/1.4 var(--f-ui);color:var(--on-night-2);transition:opacity .5s}
#beneficio .bn-per b{color:#fff;font-weight:700;white-space:nowrap}
/* la fila de Gestión con el siguiente paso, dentro de «tus números» (en el flujo: no tapa la cascada) */
#beneficio .bn-deck .gd-row{margin:12px 0 4px}
#beneficio .gd-row>.gd-go{grid-column:1/-1;justify-self:stretch;--h:56px;margin-top:6px;padding:0 18px 0 24px;justify-content:space-between}
#beneficio .gd-row>.gd-go .arr{flex:none}
#beneficio .bn-calc[data-s="zero"]{--bn-res:var(--bn-even);--bn-rest:var(--bn-even)}
#beneficio .bn-calc[data-s="down"]{--bn-res:var(--bn-lose);--bn-rest:var(--bn-loset)}
/* antes y durante la cascada: el resultado aún no es «lo que ganas» */
#beneficio .bn-calc[data-intro="wait"],#beneficio .bn-calc[data-intro="run"]{--bn-res:var(--bn-in);--bn-rest:#fff}
#beneficio .bn-row.pre .bn-b{opacity:0}
#beneficio .bn-row.pre .bn-rt{opacity:.38}
#beneficio .bn-rv{transition:opacity .3s}
#beneficio .bn-row.pre .bn-rv{opacity:0}
#beneficio .bn-calc[data-intro="wait"] .bn-per,#beneficio .bn-calc[data-intro="run"] .bn-per{opacity:0}
/* ---------- tus números (abajo, en la zona del pulgar) */
#beneficio .bn-deck{position:relative;padding:2px 18px 6px;border-radius:0 0 28px 28px;background:var(--bn-deck);box-shadow:inset 0 1px 0 var(--bn-ln)}
#beneficio .bn-dh{margin:12px 0 0;font:700 16px/1.35 var(--f-ui);color:#fff}
#beneficio .bn-f{--c:var(--bn-out);border-top:1px solid var(--bn-ln)}
#beneficio .bn-f[data-k="cob"]{--c:var(--bn-in);border-top:0}
#beneficio .bn-fh{display:flex;align-items:center;gap:8px;min-height:56px}
#beneficio .bn-fl{flex:1;min-width:0;display:flex;align-items:center;gap:8px;min-height:48px;font:650 16px/1.25 var(--f-ui);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent}
#beneficio .bn-sw{flex:none;width:9px;height:9px;border-radius:3px;background:var(--c)}
#beneficio .bn-fv{flex:none;display:inline-flex;align-items:center;gap:3px;height:46px;padding:0 9px 0 8px;border-radius:13px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);cursor:text;transition:box-shadow .2s,background-color .2s}
#beneficio .bn-fv:focus-within{background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 2px #c9b6ff}
#beneficio .bn-num{width:var(--w,5.2ch);height:44px;min-width:0;padding:0;border:0;background:transparent;text-align:right;font:750 17.5px/1 var(--f-ui);color:#fff;font-variant-numeric:tabular-nums;outline:none}
#beneficio .bn-fv i{font:600 16px/1 var(--f-ui);font-style:normal;color:var(--on-night-2)}
#beneficio .bn-fx{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:0 -12px 0 -8px;padding:0;border:0;border-radius:12px;background:none;color:var(--on-night-2);cursor:pointer;-webkit-tap-highlight-color:transparent}
#beneficio .bn-fx svg{width:20px;height:20px;transition:transform .3s var(--ease)}
#beneficio .bn-f[data-open] .bn-fx svg{transform:rotate(180deg)}
#beneficio .bn-fs{padding:0 0 10px}
#beneficio .bn-f:not([data-open]) .bn-fs{display:none}
#beneficio .bn-rngw{position:relative}
#beneficio .bn-rng{--pp:.5;-webkit-appearance:none;appearance:none;display:block;width:100%;height:44px;margin:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}
#beneficio .bn-rng:focus{outline:none}
#beneficio .bn-rng:focus-visible{outline:3px solid #c9b6ff;outline-offset:2px;border-radius:12px}
#beneficio .bn-rng::-webkit-slider-runnable-track{height:8px;border-radius:99px;background:linear-gradient(var(--c),var(--c)) 0 0/calc(15px + (100% - 30px) * var(--pp)) 100% no-repeat,rgba(255,255,255,.14)}
#beneficio .bn-rng::-moz-range-track{height:8px;border-radius:99px;background:rgba(255,255,255,.14)}
#beneficio .bn-rng::-moz-range-progress{height:8px;border-radius:99px;background:var(--c)}
#beneficio .bn-rng::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;margin-top:-11px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.13),0 8px 18px -6px rgba(0,0,0,.65);transition:transform .25s var(--ease-back)}
#beneficio .bn-rng::-moz-range-thumb{width:30px;height:30px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.13),0 8px 18px -6px rgba(0,0,0,.65)}
#beneficio .bn-rng:active::-webkit-slider-thumb{transform:scale(1.12)}
#beneficio .bn-be{position:absolute;top:50%;left:calc(15px + (100% - 30px) * var(--be,0));width:3px;height:20px;margin:-10px 0 0 -1.5px;border-radius:2px;background:var(--bn-keep);pointer-events:none}
#beneficio .bn-hint{margin:0;font:500 15px/1.4 var(--f-ui);color:var(--on-night-2)}
#beneficio .bn-hint b{color:#fff;font-weight:700;white-space:nowrap}
#beneficio .bn-hint .bn-tk{display:inline-block;width:3px;height:14px;margin:0 7px -2px 1px;border-radius:2px;background:var(--bn-keep)}
#beneficio .bn-df{display:flex;justify-content:flex-end;border-top:1px solid var(--bn-ln)}
#beneficio .bn-reset{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 2px;border:0;background:none;color:#fff;font:650 15px/1 var(--f-ui);text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:4px;cursor:pointer}
#beneficio .bn-note{margin:16px 2px 0;font:500 15px/1.5 var(--f-ui);color:rgba(239,231,255,.7)}
#beneficio .bn-note b{color:#fff;font-weight:600}
/* ---------- la prueba: así lo ves cada noche en Aura */
#beneficio .bn-proof{margin-top:clamp(72px,9vw,128px)}
#beneficio .bn-ph h3{margin:0;font:800 clamp(28px,3vw,42px)/1.08 var(--f-display);letter-spacing:-.02em;color:#fff;max-width:18ch}
#beneficio .bn-ph p{margin:12px 0 0;max-width:54ch;font:500 16px/1.55 var(--f-ui);color:var(--on-night-2)}
#beneficio .bn-ph p b{color:#fff;font-weight:650}
#beneficio .bn-shots{display:grid;gap:22px;margin-top:26px}
#beneficio .bn-shots figure{margin:0;min-width:0}
#beneficio .bn-shots figcaption{margin-top:12px;font:500 15px/1.5 var(--f-ui);color:var(--on-night-2)}
#beneficio .bn-shots figcaption b{color:#fff;font-weight:650}
#beneficio .bn-win{display:none;box-shadow:0 60px 120px -50px rgba(0,0,0,.95),0 0 0 1px rgba(255,255,255,.08)}
#beneficio .bn-wb{position:relative;aspect-ratio:1440/900}
#beneficio .bn-wb .scr,#beneficio .bn-tb .scr{position:absolute;inset:0}
/* móvil: el teléfono real, con la pantalla en el bloque «Beneficio real» y fundido abajo */
#beneficio .bn-phone{position:relative;width:min(80vw,310px);margin:0 auto;padding:9px 9px 0;border-radius:44px 44px 0 0;background:linear-gradient(145deg,#4a4058 0%,#17121f 24%,#0b0810 62%);box-shadow:inset 0 0 0 2px rgba(255,255,255,.14),inset 0 0 0 7px #050308;-webkit-mask-image:linear-gradient(#000 74%,transparent);mask-image:linear-gradient(#000 74%,transparent)}
#beneficio .bn-pscr{position:relative;aspect-ratio:390/470;border-radius:36px 36px 0 0;overflow:hidden;background:#f6f2fb}
#beneficio .bn-pb .scr{margin-top:-41%}
#beneficio .bn-isl{position:absolute;left:50%;top:19px;width:30%;height:24px;margin-left:-15%;border-radius:14px;background:#020104;z-index:3}
#beneficio .bn-tablet{display:none;position:relative;padding:10px;border-radius:30px;background:linear-gradient(145deg,#3d3449,#141019 30%,#0b0810);box-shadow:0 50px 100px -40px rgba(0,0,0,.95),inset 0 0 0 1.5px rgba(255,255,255,.13)}
#beneficio .bn-tb{position:relative;aspect-ratio:820/1180;border-radius:21px;overflow:hidden;background:#f6f2fb}
#beneficio .bn-foot{margin-top:clamp(36px,5vw,72px);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px 28px}
#beneficio .bn-foot p{margin:0;max-width:56ch;font:500 15px/1.55 var(--f-ui);color:var(--on-night-2)}
@media (max-width:760px){
  #beneficio .bn-fgastos{display:none}
  #beneficio .bn-proof{margin-top:56px}
  #beneficio .bn-foot .btn{width:100%;white-space:normal;height:auto;min-height:64px;padding:14px 22px 14px 26px;line-height:1.25;justify-content:space-between;text-align:left;text-wrap:balance}
}
@media (max-width:370px){
  #beneficio .bn-viz{padding:14px 15px 18px}
  #beneficio .bn-deck{padding-left:15px;padding-right:15px}
  #beneficio .bn-num{font-size:17px}
}
/* ---------- tableta y escritorio */
@media (min-width:761px){
  #beneficio .bn-viz{padding:24px 30px 28px}
  #beneficio .bn-deck{padding:6px 30px 10px}
  #beneficio .bn-big{--fsb:64px}
  #beneficio .bn-shots{grid-template-columns:minmax(0,1fr) minmax(0,.34fr);align-items:end;gap:clamp(18px,2.6vw,36px)}
  #beneficio .bn-win,#beneficio .bn-tablet{display:block}
  #beneficio .bn-phone{display:none}
}
@media (min-width:980px){
  #beneficio{contain-intrinsic-size:auto 2400px}
  #beneficio .bn-row[data-k="cob"] .bn-rl{font-size:19px}
  #beneficio .bn-row[data-k="cob"] .bn-rv{font-size:32px}
  #beneficio .bn-head{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"clk clk" "pain lead";gap:22px clamp(32px,5vw,80px);align-items:end;margin-bottom:clamp(36px,4.4vw,56px)}
  #beneficio .bn-head .clock{grid-area:clk}
  #beneficio .bn-head .pain{grid-area:pain}
  #beneficio .bn-head .t-lead{grid-area:lead;justify-self:end}
  #beneficio .bn-calc{display:grid;grid-template-columns:minmax(0,1fr) 384px}
  #beneficio .bn-viz{padding:30px 40px 34px}
  #beneficio .bn-deck{padding:12px 30px 12px;border-radius:0 28px 28px 0;box-shadow:inset 1px 0 0 var(--bn-ln)}
  #beneficio .bn-fx{display:none}
  #beneficio .bn-fl{cursor:default}
  #beneficio .bn-rl,#beneficio .bn-rv{font-size:18px}
  #beneficio .bn-rs{font-size:15.5px}
  #beneficio .bn-top{margin-bottom:18px}
  #beneficio .bn-lg{width:34px;height:34px}
  #beneficio .bn-rlab{font-size:20px}
  #beneficio .bn-per{font-size:16px}
  #beneficio .bn-deck{display:flex;flex-direction:column;justify-content:space-evenly}
  #beneficio .bn-dh{margin:4px 0 6px;font-size:17px}
  #beneficio .bn-fs{padding-bottom:16px}
  #beneficio .bn-df{border-top:0;margin-top:-6px}
  #beneficio .bn-fall{gap:16px}
  #beneficio .bn-tr{height:16px;margin-top:10px}
  #beneficio .bn-tr.r{height:18px;margin-top:0}
  #beneficio .bn-big{--fsb:80px}
  #beneficio .bn-deck .gd-row{margin:0 0 4px}
  #beneficio .bn-note{margin-top:18px}
}
@media (prefers-reduced-motion:reduce){
  #beneficio .bn-sky i.tw{animation:none}
  #beneficio .bn-out,#beneficio .bn-b.res,#beneficio .bn-rt,#beneficio .bn-per,#beneficio .bn-hatch,#beneficio .bn-z{transition:none}
}

/* ===== #tour ===== */
#tour{overflow:hidden;overflow:clip;isolation:isolate;--tww:min(100%,calc((100vh - 300px) * 1.6))}
@supports (height:100svh){#tour{--tww:min(100%,calc((100svh - 300px) * 1.6))}}
@media (max-height:620px){#tour{--tww:100%}}
#tour [hidden]{display:none!important}
#tour::before{content:"";position:absolute;left:50%;top:40%;width:1500px;height:1100px;margin-left:-750px;background:radial-gradient(closest-side,rgba(124,77,255,.3),rgba(240,98,146,.1) 50%,transparent 72%);pointer-events:none;z-index:-1}
#tour .tr-head{max-width:860px;margin:0 auto;text-align:center}
#tour .tr-head .t-h2{color:#fff}
#tour .tr-head .t-lead{margin:16px auto 0;max-width:600px}
#tour .tr-head .t-lead b{color:#fff;font-weight:650}

/* ---------- barra de herramientas: Ordenador / Móvil + pista */
#tour .tr-ctl{position:relative;z-index:2;display:flex;align-items:center;gap:10px 22px;width:var(--tww);margin:clamp(22px,3vw,34px) auto 14px}
#tour .tr-ctl.ph{width:min(100%,760px)}
#tour .tr-ctl .gd-row{flex:1;min-width:0;margin:0}
#tour .tr-mode{display:inline-flex;flex:none;padding:4px;border-radius:999px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
#tour .tr-mode button{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px 0 15px;border:0;border-radius:999px;background:transparent;color:var(--on-night-2);font:650 15px/1 var(--f-ui);cursor:pointer;transition:background-color .25s,color .25s;-webkit-tap-highlight-color:transparent}
#tour .tr-mode button svg{width:19px;height:19px;flex:none}
#tour .tr-mode button:hover{color:#fff}
#tour .tr-mode button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 8px 20px -10px rgba(0,0,0,.6)}

/* ---------- escenario */
#tour .tr-stage{position:relative;z-index:1}
#tour .tr-stage[data-mode="win"] .tp-wrap{display:none}
#tour .tr-stage[data-mode="phone"] .tw-box,#tour .tr-stage[data-mode="phone"] .tr-out{display:none}

/* ---------- ventana de escritorio */
#tour .tw-box{position:relative;width:var(--tww);margin:0 auto}
#tour .tw{width:100%;border-radius:16px;box-shadow:0 0 0 1px rgba(255,255,255,.1),0 60px 140px -50px rgba(124,77,255,.75),0 40px 80px -40px rgba(0,0,0,.8)}
#tour .tw>.bar{position:relative;height:46px;padding:0 14px;gap:8px}
#tour .tw .bar span{margin:0;font:inherit;color:inherit}
#tour .tw-hist{display:flex;gap:2px;margin-left:12px!important}
#tour .tw-hist button{position:relative;width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:var(--ink-2);display:grid;place-items:center;cursor:pointer;padding:0}
#tour .tw-hist button::after{content:"";position:absolute;inset:-5px}
#tour .tw-hist button svg{width:18px;height:18px}
#tour .tw-hist button:hover:not(:disabled){background:rgba(40,22,70,.07)}
#tour .tw-hist button:disabled{opacity:.3;cursor:default}
#tour .tw-addr{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;height:30px;max-width:min(420px,calc(100% - 300px));padding:0 14px 0 9px;border-radius:9px;background:rgba(255,255,255,.8);box-shadow:inset 0 0 0 1px rgba(40,22,70,.09);font:600 13px/1 var(--f-ui)!important;color:var(--muted)!important;white-space:nowrap}
#tour .tw-addr .tw-logo{display:block;width:18px;height:18px;flex:none}
#tour .tw-addr .tw-logo svg{width:18px;height:18px}
#tour .tw-sec{color:var(--ink)!important}
#tour .tw-cn{overflow:hidden;text-overflow:ellipsis;min-width:0}
#tour .tw-prog{position:absolute!important;left:0;right:0;bottom:-1px;height:2px;background:var(--grad);transform-origin:0 50%;transform:scaleX(0);opacity:0;transition:opacity .2s}
#tour .tw.loading .tw-prog{opacity:1;animation:twp 1.4s var(--ease) infinite}
#tour .tw.loading .tw-scr{cursor:progress}
@keyframes twp{0%{transform:scaleX(.05)}70%{transform:scaleX(.82)}100%{transform:scaleX(.96)}}
#tour .tw-scr{position:relative;aspect-ratio:1440/900;overflow:hidden;background:#f6f2fb;contain:layout paint}
#tour .tw-layer{position:absolute;inset:0}
#tour .tw-layer>.scr{width:100%}
#tour .tw-nav{position:absolute;inset:0;z-index:4;pointer-events:none}
#tour .tw-nav button{position:absolute;pointer-events:auto;border:0;padding:0;margin:0;background:transparent;border-radius:10px;cursor:pointer;transition:background-color .15s,box-shadow .15s}
#tour .tw-nav button:hover{background:rgba(124,77,255,.09);box-shadow:inset 0 0 0 1.5px rgba(124,77,255,.4)}
#tour .tw-nav button[aria-current="page"]{cursor:default;background:transparent;box-shadow:none}
#tour .tw-nav button:focus-visible,#tour .tw-zone:focus-visible{outline:3px solid #7c4dff;outline-offset:1px}
#tour .tw.zoomed .tw-nav{display:none}
#tour .tw-zone{position:absolute;z-index:1;border:0;padding:0;margin:0;background:transparent;border-radius:16px;cursor:pointer;transition:box-shadow .2s,background-color .2s}
#tour .tw-zone:hover{background:rgba(124,77,255,.05);box-shadow:0 0 0 2px rgba(124,77,255,.55),0 14px 36px -14px rgba(124,77,255,.6)}
#tour .zoomed .scr-hot,#tour .zoomed .tw-zone{visibility:hidden}
#tour .tr-rip{position:absolute;z-index:6;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:rgba(124,77,255,.28);box-shadow:0 0 0 2px rgba(124,77,255,.55);pointer-events:none;animation:trrip .55s var(--ease) forwards}
@keyframes trrip{from{transform:scale(.3);opacity:1}to{transform:scale(1.5);opacity:0}}
#tour .tr-cursor{position:absolute;z-index:7;left:0;top:0;width:26px;height:30px;pointer-events:none;filter:drop-shadow(0 4px 6px rgba(20,8,50,.45));transition:opacity .3s}
#tour .tr-cursor.finger{width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(255,255,255,.45);box-shadow:0 0 0 2px rgba(255,255,255,.9),0 8px 22px -6px rgba(20,8,50,.6);filter:none}

/* ---------- puntos explicables y su nota */
#tour .scr-hot{--hc:#7c4dff}
#tour .scr-hot i{inset:14px;background:linear-gradient(140deg,#ff8a65,#f06292 52%,#7c4dff);box-shadow:0 0 0 3px #fff,0 5px 14px -3px rgba(20,8,50,.6)}
#tour .scr-hot::before{inset:7px;background:transparent;box-shadow:0 0 0 2.5px rgba(124,77,255,.75);opacity:.9;animation:trping 1.9s var(--ease) infinite}
@keyframes trping{0%{transform:scale(.55);opacity:.95}100%{transform:scale(1.45);opacity:0}}
#tour .scr-hot:hover i{transform:scale(1.18)}
#tour .scr-hot i{transition:transform .25s var(--ease-back)}
#tour .scr-hot.done::before{animation:none;opacity:0}
#tour .scr-hot.done i{inset:16px;background:#7c4dff}
#tour .scr-hot:focus-visible{outline:3px solid #fff;outline-offset:-4px}
#tour .tr-note{position:absolute;z-index:8;width:300px;max-width:calc(100% - 20px);padding:15px 17px 16px;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 30px 70px -24px rgba(16,6,48,.6),0 0 0 1px rgba(40,22,70,.08);opacity:0;transform:translateY(6px) scale(.97);transition:opacity .2s,transform .32s var(--ease-back);pointer-events:none}
#tour .tr-note.on{opacity:1;transform:none;pointer-events:auto}
#tour .tr-note h3{margin:0 34px 5px 0;font:700 16px/1.25 var(--f-ui);letter-spacing:-.01em}
#tour .tr-note p{margin:0;font:450 14.5px/1.5 var(--f-ui);color:var(--ink-2)}
#tour .tr-note .x{position:absolute;top:4px;right:4px;width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}
#tour .tr-note .x:hover{background:var(--paper-2);color:var(--ink)}
#tour .tr-note .x svg{width:16px;height:16px}
#tour .tr-note .go{display:inline-flex;align-items:center;gap:8px;margin-top:12px;height:44px;padding:0 18px;border:0;border-radius:999px;background:var(--ink);color:#fff;font:650 14.5px/1 var(--f-ui);cursor:pointer}
#tour .tr-note .go svg{width:15px;height:15px}
#tour .tr-note .go:hover{background:#2c1d4c}
#tour .tr-note i.ar{position:absolute;width:14px;height:14px;background:#fff;transform:rotate(45deg);border-radius:2px}
#tour .tr-out{margin:14px auto 0;max-width:560px}
#tour .tr-out .tr-note{position:relative;width:auto;max-width:none}

/* ---------- iPhone */
#tour .tp-wrap{position:relative;display:flex;justify-content:center;--tpw:372px;--tph:calc(100vh - 112px)}
@supports (height:100svh){#tour .tp-wrap{--tph:calc(100svh - 112px)}}
#tour .tp{--k:.862;--pad:11px;flex:none;width:min(100%,var(--tpw));height:min(calc(var(--k) * 888px + var(--pad) * 2),var(--tph));aspect-ratio:auto;padding:var(--pad);border-radius:calc(var(--k) * 54px + 9px);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 60px 130px -40px rgba(124,77,255,.7),0 40px 90px -40px rgba(0,0,0,.9),inset 0 0 0 2px rgba(255,255,255,.16),inset 0 0 0 7px #050308}
#tour .tp::before,#tour .tp::after{content:"";position:absolute;width:3px;border-radius:2px;background:linear-gradient(90deg,#3a3244,#15111b)}
#tour .tp::before{left:-3px;top:17%;height:9%;box-shadow:0 calc(var(--k) * 74px) 0 #2b2433}
#tour .tp::after{right:-3px;top:24%;height:13%}
#tour .tp>.scrn{height:100%;border-radius:calc(var(--k) * 54px);background:#fbf8ff;touch-action:pan-y;-webkit-user-select:none;user-select:none}
#tour .tp>.isl{top:calc(var(--pad) + var(--k) * 11px);height:calc(var(--k) * 31px);width:calc(var(--k) * 122px);margin-left:calc(var(--k) * -61px);border-radius:999px;z-index:12}
#tour .tp-sb{position:absolute;left:0;right:0;top:0;height:calc(var(--k) * 46px);z-index:7;color:#1b1230;pointer-events:none}
#tour .tp-sb .bg{position:absolute;inset:0;background-repeat:no-repeat;background-color:#fbf8ff;transition:opacity .22s}
#tour .tp-sb .row{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:calc(var(--k) * 6px) calc(var(--k) * 26px) 0 calc(var(--k) * 38px)}
#tour .tp-sb b{font:650 calc(var(--k) * 16.5px)/1 var(--f-ui);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
#tour .tp-sb .ic{display:flex;align-items:center;gap:calc(var(--k) * 6px)}
#tour .tp-sb .ic svg{height:calc(var(--k) * 12px);width:auto;fill:currentColor}
#tour .tp-view{position:absolute;left:0;right:0;top:calc(var(--k) * 46px);bottom:0;overflow:hidden;background:#fbf8ff}
#tour .tp-layer{position:absolute;inset:0;background:#fbf8ff}
#tour .tp-layer.push{z-index:4;box-shadow:-18px 0 40px -18px rgba(20,8,50,.35)}
#tour .tp-scr{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;touch-action:pan-y;overscroll-behavior-x:none}
#tour .tp-scr::-webkit-scrollbar{display:none}
#tour .tp-scr>.scr{width:100%;background:#fbf8ff}
#tour .tp-crop{position:absolute;left:0;right:0;z-index:2;background-repeat:no-repeat;background-size:100% auto}
#tour .tp-tab{position:absolute;left:0;right:0;bottom:0;height:calc(var(--k) * 72px);z-index:3}
#tour .tp-tab .bg{position:absolute;inset:0;background-repeat:no-repeat;background-size:100% auto;background-position:50% 100%;transition:opacity .2s}
#tour .tp-tab .bg:first-child{background-color:#f7f4f8}
#tour .tp-shade{position:absolute;inset:0;z-index:3;background:#120a26;opacity:0;pointer-events:none}
#tour .tp-btn{position:absolute;z-index:3;border:0;padding:0;margin:0;background:transparent;border-radius:calc(var(--k) * 14px);cursor:pointer;-webkit-tap-highlight-color:transparent}
#tour .tp-btn:active{background:rgba(124,77,255,.12)}
#tour .tp-btn:focus-visible{outline:3px solid #7c4dff;outline-offset:-2px}
#tour .tp-btn.big::after{content:"";position:absolute;inset:-4px}
#tour .tp-home{position:absolute;left:50%;bottom:calc(var(--k) * 7px);width:calc(var(--k) * 134px);height:calc(var(--k) * 5px);margin-left:calc(var(--k) * -67px);border-radius:9px;background:rgba(17,10,30,.82);z-index:11;pointer-events:none}
#tour .tp-sh{position:absolute;inset:0;z-index:9}
#tour .tp-sh canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0}
#tour .tp-sh .tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(84,70,104,.42),rgba(60,46,82,.5));opacity:0}
#tour .tp-panel{position:absolute;left:calc(var(--k) * 12px);right:calc(var(--k) * 12px);bottom:calc(var(--k) * 81.5px);height:min(calc(var(--k) * 487.5px),calc(100% - var(--k) * 150px));border-radius:calc(var(--k) * 19px);overflow:hidden;background:#fff;box-shadow:0 30px 60px -20px rgba(20,8,50,.55),0 0 0 1px rgba(40,22,70,.06);transform:translateY(130%)}
#tour .tp-ps{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y}
#tour .tp-ps::-webkit-scrollbar{display:none}
#tour .tp-strip{position:relative;height:calc(var(--k) * 768.5px)}
#tour .tp-strip .pa,#tour .tp-strip .pb{position:absolute;left:0;width:100%;background-repeat:no-repeat;background-size:calc(var(--k) * 390px) calc(var(--k) * 844px)}
#tour .tp-strip .pa{top:0;height:calc(var(--k) * 465px);background-position:calc(var(--k) * -12px) calc(var(--k) * -275px)}
#tour .tp-strip .pb{top:calc(var(--k) * 465px);height:calc(var(--k) * 303.5px);background-position:calc(var(--k) * -12px) calc(var(--k) * -459px)}
#tour .tp-strip .tp-btn{border-radius:calc(var(--k) * 10px)}
#tour .tp-strip .tp-btn.desk::after{content:"";position:absolute;right:calc(var(--k) * 14px);top:50%;width:calc(var(--k) * 22px);height:calc(var(--k) * 16px);margin-top:calc(var(--k) * -8px);background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16' fill='none' stroke='%239a8fb0' stroke-width='1.6'%3E%3Crect x='1.8' y='1.3' width='18.4' height='11' rx='2'/%3E%3Cpath d='M7 15h8' stroke-linecap='round'/%3E%3C/svg%3E")}
#tour .tp .tr-note{left:calc(var(--k) * 14px);right:calc(var(--k) * 14px);width:auto;max-width:none;z-index:10}
#tour .tp .scr-hot i{inset:15px}

/* ---------- recorrido: progreso y «Siguiente» */
#tour .tr-bar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px 22px;width:var(--tww);margin:18px auto 0}
#tour .tr-bar.ph{width:min(100%,640px)}
#tour .tr-prog{display:flex;align-items:center;gap:14px;min-width:0}
#tour .tr-dots{display:flex;flex-wrap:wrap;gap:5px;max-width:260px}
#tour .tr-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.16);transition:background-color .3s,transform .35s var(--ease-back)}
#tour .tr-dots i.v{background:#c9b6ff}
#tour .tr-dots i.c{background:#fff;transform:scale(1.35)}
#tour .tr-count{margin:0;font:500 15px/1.3 var(--f-ui);color:var(--on-night-2);white-space:nowrap}
#tour .tr-count b{color:#fff;font-weight:700;font-variant-numeric:tabular-nums}
#tour .tr-next{flex:none;gap:10px}
#tour .tr-next svg{width:18px;height:18px}
#tour .tr-next span{color:var(--on-night-2);font-weight:550}
#tour .tr-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- cierre */
#tour .tr-cta{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:clamp(40px,5vw,64px);text-align:center}
#tour .tr-cta p{margin:0;color:var(--on-night-2);font-size:15.5px}

@media (min-width:980px){
  #tour .tr-stage[data-mode="phone"] .tp-wrap{width:min(var(--tpw),calc((var(--tph) - 22px) * 390 / 888 + 22px));margin:0 auto}
  #tour .tr-stage[data-mode="phone"] .tp{width:100%}
}
@media (max-width:760px){
  /* en el móvil, solo el móvil (sin «Ordenador»): la fila con el siguiente paso y, debajo, el móvil entero a la vista */
  #tour .tr-mode{display:none}
  #tour .tr-ctl,#tour .tr-ctl.ph{width:100%;margin:18px 0 10px}
  #tour .tr-ctl.nr{display:none}                       /* en el móvil la fila va debajo del móvil (sec-tour.js) */
  #tour .gd-row.tr-gd{margin:16px 0 4px}
  #tour .tp-wrap{--tph:calc(100vh - 236px);--tpw:min(372px,calc((100vh - 236px) * .54))}
  #tour .tp{--pad:9px}
  #tour .tr-bar,#tour .tr-bar.ph{flex-wrap:wrap;justify-content:center;width:100%;margin-top:14px}
  #tour .tr-prog{width:100%;justify-content:center}
  #tour .tr-next{width:100%;--h:52px}
  #tour .tw>.bar{height:40px;padding:0 10px}
  #tour .tw>.bar>i{width:9px;height:9px}
  #tour .tw-hist{margin-left:4px!important}
  #tour .tw-addr{max-width:calc(100% - 150px);font-size:12px!important;padding:0 10px 0 7px;height:28px}
  #tour .tw-cn,#tour .tw-dot{display:none}
}
@supports (height:100svh){@media (max-width:760px){#tour .tp-wrap{--tph:calc(100svh - 236px);--tpw:min(372px,calc((100svh - 236px) * .54))}}}
@media (prefers-reduced-motion:reduce){
  #tour .scr-hot::before,#tour .tw.loading .tw-prog,#tour .tr-rip{animation:none}
  #tour .tr-note{transition:none}
}

/* ===== #todo ===== */
#todo{overflow:hidden;overflow:clip;isolation:isolate;background:radial-gradient(70% 55% at 50% 58%,#22104d 0%,#120a2e 52%,#0b0620 100%)}
#todo [hidden]{display:none!important}
#todo .td-head{max-width:820px;margin:0 auto;text-align:center}
#todo .td-head .t-h2{color:#fff;text-wrap:balance}
#todo .td-head .t-lead{margin:16px auto 0;max-width:600px;text-wrap:balance}
#todo .td-head .t-lead b{color:#fff;font-weight:650}
#todo .td-game{position:relative;max-width:1120px;margin:clamp(26px,4vw,46px) auto 0}

/* ---------------------------------------------------------------- el escenario (móvil primero) */
#todo .td-stage{--lg:150px;position:relative;display:flex;flex-direction:column;align-items:center;margin:0 -8px;padding:10px 10px 16px;border-radius:var(--r-lg);overflow:hidden;background:radial-gradient(64% 30% at 50% 13%,rgba(124,77,255,.3),rgba(124,77,255,0) 72%),linear-gradient(180deg,#170b3a 0%,#0f0828 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 50px 120px -60px rgba(124,77,255,.6);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
#todo .td-stage::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1.4px);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 40% at 50% 14%,#000 0%,transparent 80%);mask-image:radial-gradient(70% 40% at 50% 14%,#000 0%,transparent 80%);opacity:.5}
#todo .td-hub{display:contents}

/* Pulpia viva (la 3D del vídeo) con su anillo de doce */
#todo .td-core{position:relative;order:1;flex:none;width:var(--lg);height:var(--lg);pointer-events:none}
#todo .td-core>*{position:absolute;left:50%;top:50%}
#todo .td-glow{width:250%;height:250%;margin:-125% 0 0 -125%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,138,101,.55),rgba(240,98,146,.3) 38%,rgba(124,77,255,.15) 62%,rgba(124,77,255,0) 100%);opacity:calc(.22 + var(--lv,0) * .04);transform:scale(calc(.76 + var(--lv,0) * .022));transition:opacity .6s var(--ease),transform .8s var(--ease-back)}
#todo .td-stage.lit .td-glow{opacity:1;transform:scale(1.18)}
#todo .td-orb{border-radius:50%;border:1.5px dashed rgba(201,182,255,.16);animation:tdspin 90s linear infinite}
#todo .td-orb.o1{width:148%;height:148%;margin:-74% 0 0 -74%}
#todo .td-orb.o2{width:236%;height:236%;margin:-118% 0 0 -118%;animation-direction:reverse;animation-duration:140s;border-color:rgba(201,182,255,.09)}
#todo .td-stage.off .td-orb,#todo .td-stage.off .td-drop{animation-play-state:paused}
@keyframes tdspin{to{transform:rotate(1turn)}}
#todo .td-drop{width:112%;height:112%;margin:-56% 0 0 -56%;border-radius:50%;border:2px dashed rgba(255,255,255,.55);opacity:0;transform:scale(.9);transition:opacity .25s,transform .35s var(--ease-back),border-color .2s;animation:tdspin 14s linear infinite}
#todo .td-stage.drag .td-drop{opacity:.75;transform:scale(1)}
#todo .td-stage.near .td-drop{opacity:1;transform:scale(1.07);border-style:solid;border-color:#ffb199}
#todo .td-ring{width:100%;height:100%;margin:-50% 0 0 -50%;overflow:visible}
#todo .td-ring circle{fill:none;stroke-linecap:round}
#todo .td-ring .s0{stroke:rgba(255,255,255,.16);stroke-width:4.5}
#todo .td-ring .s1{stroke-width:6;opacity:0;transition:opacity .25s,stroke-width .3s}
#todo .td-ring .s1.on{opacity:1}
#todo .td-ring .sh{stroke-width:15;opacity:0;transition:opacity .3s}
#todo .td-ring .sh.on{opacity:.22}
#todo .td-ring .full{stroke-width:7;opacity:0;transition:opacity .5s .12s}
#todo .td-ring .fullh{stroke-width:22;opacity:0;transition:opacity .6s .12s}
#todo .td-stage.lit .td-ring .full{opacity:1}
#todo .td-stage.lit .td-ring .fullh{opacity:.3}
#todo .td-mark{width:72%;height:72%;margin:-36% 0 0 -36%}
#todo .td-rot{width:100%;height:100%;transition:transform .7s var(--ease-back)}
#todo .td-logo{display:none}
#todo .td-pv{position:absolute;left:0;top:0;width:100%;height:100%;--pv-size:calc(var(--lg) * .74)}
#todo .td-rot{position:relative}
#todo .td-flash{width:190%;height:190%;margin:-95% 0 0 -95%;border-radius:50%;background:radial-gradient(closest-side,#fff,rgba(255,214,200,.65) 35%,rgba(240,98,146,0) 100%);opacity:0}

/* contador */
#todo .td-count{order:2;margin:0 0 12px;font:600 16px/1.2 var(--f-ui);color:var(--on-night-2);font-variant-numeric:tabular-nums;white-space:nowrap}
#todo .td-count b{display:inline-block;min-width:1.25em;text-align:right;color:#fff;font-size:24px;font-weight:750;letter-spacing:-.02em}
#todo .td-count .of{color:#fff;font-weight:700;margin-right:.3em}

/* el montón: doce fichas desordenadas */
#todo .td-pile{order:3;list-style:none;margin:0;padding:0;width:100%;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 6px}
#todo .td-pile li{display:block;margin:0}
#todo .td-chip{display:block;margin:0;padding:0;border:0;border-radius:14px;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;touch-action:pan-y;-webkit-tap-highlight-color:transparent;transform-origin:50% 50%}
#todo .td-chip.held{position:relative;z-index:6;cursor:grabbing}
#todo .td-chip.gone{visibility:hidden;pointer-events:none}
#todo .td-cin{position:relative;display:block;transition:transform .28s var(--ease-back)}
#todo .td-old{display:flex;align-items:center;gap:7px;min-height:47px;padding:6px 10px 6px 6px;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f2edf8 100%);color:var(--ink);font:600 15px/1.2 var(--f-ui);letter-spacing:-.006em;box-shadow:0 16px 26px -15px rgba(3,0,14,.95),inset 0 -2px 0 rgba(40,22,70,.09)}
#todo .td-old>i{flex:none;width:28px;height:28px;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px rgba(40,22,70,.1),0 4px 8px -4px rgba(40,22,70,.45)}
#todo .td-old>i svg{display:block;width:100%;height:100%}
#todo .td-old>i:empty{background:var(--paper-3)}
#todo .td-lb{display:block;text-wrap:balance}
#todo .td-chip:active .td-cin{transform:scale(.94)}
#todo .td-chip.held .td-cin{transform:scale(1.06)}
#todo .td-chip.held .td-old{box-shadow:0 30px 40px -18px rgba(3,0,14,.9),0 0 0 2px rgba(255,255,255,.9)}
@media (hover:hover){#todo .td-chip:hover .td-cin{transform:translateY(-3px)}}
#todo .td-chip:focus-visible{outline:none}
#todo .td-chip:focus-visible .td-old{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--violet)}
#todo .td-ping{position:absolute;left:21px;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;box-shadow:0 0 0 2.5px #fff,0 0 18px 2px rgba(255,255,255,.45);pointer-events:none;opacity:0}

/* lo que vuela: la ficha da la vuelta y enseña lo que la sustituye dentro de Aura */
#todo .td-fx{position:absolute;inset:0;z-index:6;pointer-events:none}
#todo .td-fly{position:absolute;left:0;top:0;transform-origin:50% 50%}
#todo .td-fly .td-cin{height:100%}
#todo .td-fly .td-old{height:100%}
#todo .td-new{position:absolute;left:50%;top:50%;display:flex;align-items:center;gap:8px;box-sizing:border-box;width:max-content;min-width:100%;max-width:254px;min-height:100%;padding:8px 14px 8px 9px;border-radius:14px;background:var(--grad);color:#fff;font:700 15px/1.18 var(--f-ui);letter-spacing:-.01em;box-shadow:0 18px 34px -12px rgba(240,98,146,.85),inset 0 1px 0 rgba(255,255,255,.4);transform:translate(-50%,-50%);opacity:0;text-wrap:balance}
#todo .td-new>i{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.22)}
#todo .td-new>i svg{width:18px;height:18px}
#todo .td-wave{position:absolute;left:0;top:0;width:100px;height:100px;margin:-50px 0 0 -50px;border-radius:50%;border:2.5px solid var(--c,#fff)}

/* el botón grande */
#todo .td-all{order:5;margin-top:6px;width:100%;max-width:440px;transition:opacity .3s,transform .25s var(--ease-back),box-shadow .25s}
/* la fila de Gestión con el siguiente paso: en el móvil, dentro del escenario y justo encima del botón (al terminar,
   debajo de la lista ordenada); en escritorio, encima del escenario */
#todo .td-stage>.gd-row{order:4;align-self:stretch;margin:18px 0 8px}
#todo .td-game>.gd-row{max-width:560px;margin:0 auto 18px}
#todo .td-all .arr svg{width:18px;height:18px}
#todo .td-all[aria-disabled="true"]{pointer-events:none}
#todo .td-stage.run .td-all{opacity:.55}

/* resultado dentro del escenario: 12 → 1 */
#todo .td-sum{order:2;margin:2px 0 4px;font:800 clamp(30px,9.4vw,42px)/1.04 var(--f-display);letter-spacing:-.03em;color:#fff;text-align:center;white-space:nowrap}
#todo .td-sum:focus{outline:none}
#todo .td-sum .ar{display:inline-block;width:.78em;height:.78em;margin:0 .1em;vertical-align:-.06em;color:#ffb199}
#todo .td-sum .one{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em}
#todo .td-mods{order:3;list-style:none;margin:12px 0 0;padding:0;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#todo .td-mods li{display:flex;align-items:center;gap:9px;min-height:48px;padding:7px 10px 7px 7px;border-radius:14px;background:rgba(255,255,255,.075);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13);color:#fff;font:650 15px/1.18 var(--f-ui);letter-spacing:-.006em}
#todo .td-mods li>i{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--grad);box-shadow:0 6px 14px -6px rgba(240,98,146,.8)}
#todo .td-mods li>i svg{width:18px;height:18px;color:#fff}
#todo .td-mods li>span{min-width:0;text-wrap:balance}
#todo .td-mods s{display:none}
#todo .td-save{order:4;width:100%;margin:20px 0 0;padding:0 4px}
#todo .td-stage.done>.gd-row{order:6;margin-bottom:0}
@media (max-width:760px){#todo .td-save{display:none}}   /* en el móvil, la lista ordenada ya lo cuenta: más corto */
#todo .td-save>p{margin:0 0 10px;font:650 16px/1.35 var(--f-ui);color:#fff}
#todo .td-save ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
#todo .td-save li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;font:500 15.5px/1.42 var(--f-ui);color:var(--on-night-2)}
#todo .td-save li svg{width:22px;height:22px;margin-top:1px;color:#22c58b}
#todo .td-save b{color:#fff;font-weight:650}

/* ---------------------------------------------------------------- cierre: 48 horas + migración real + reserva */
#todo .td-res{display:grid;grid-template-areas:"big" "shot" "acts";gap:22px;margin-top:40px}
#todo .td-big{grid-area:big;margin:0;font:800 clamp(30px,8vw,46px)/1.08 var(--f-display);letter-spacing:-.025em;color:#fff;text-wrap:balance}
#todo .td-shot{grid-area:shot;position:relative;min-width:0}
#todo .td-acts{grid-area:acts;display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px}
#todo .td-acts .btn-lg{width:100%}
#todo .td-again svg{width:18px;height:18px}
#todo .td-win{position:relative;border-radius:16px;box-shadow:0 0 0 1px rgba(255,255,255,.1),0 50px 120px -50px rgba(124,77,255,.8),0 40px 80px -40px rgba(0,0,0,.8)}
#todo .td-win>.bar>span{display:block;flex:1;margin-left:12px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
#todo .td-win>.bar span b{color:var(--ink);font-weight:650}
#todo .td-win .td-wl{display:inline-block;width:16px;height:16px;margin-right:6px;vertical-align:-3px}
#todo .td-win .td-wl svg{width:16px;height:16px}
#todo .td-wp{display:none}
#todo .td-scr{position:relative;aspect-ratio:1440/900;overflow:hidden;background:#efe8f6}
#todo .td-scr .scr{position:absolute;inset:0;width:100%;transition:opacity .45s var(--ease)}
#todo .td-scr .scr.off{opacity:0}
#todo .td-lift{position:absolute;z-index:3;border-radius:10px;background-repeat:no-repeat;opacity:0;pointer-events:none;box-shadow:0 0 0 3px #22c58b,0 30px 60px -18px rgba(20,8,50,.65);transform-origin:50% 50%}
#todo .td-press{position:absolute;z-index:3;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 0 0 2px #fff;pointer-events:none;opacity:0}
#todo .td-cap{margin:12px 2px 0;font:500 15px/1.45 var(--f-ui);color:var(--on-night-2)}


/* ---------------------------------------------------------------- escritorio */
@media (min-width:761px){
  #todo .td-stage{--lg:236px;--cy:296px;--cw:min(400px,37%);display:block;height:640px;margin:0;padding:0 clamp(18px,2.4vw,34px);border-radius:var(--r-xl);background:radial-gradient(40% 46% at 50% var(--cy),rgba(124,77,255,.28),rgba(124,77,255,0) 72%),linear-gradient(180deg,#170b3a 0%,#0f0828 100%)}
  #todo .td-stage.done{height:740px}
  #todo .td-stage::before{-webkit-mask-image:radial-gradient(56% 60% at 50% var(--cy),#000 0%,transparent 80%);mask-image:radial-gradient(56% 60% at 50% var(--cy),#000 0%,transparent 80%)}
  #todo .td-hub{position:absolute;left:50%;top:calc(var(--cy) - var(--lg) / 2);z-index:2;display:flex;flex-direction:column;align-items:center;width:var(--cw);transform:translateX(-50%);pointer-events:none}
  #todo .td-count{margin:10px 0 0;font-size:17px}
  #todo .td-count b{font-size:28px}
  #todo .td-pile,#todo .td-mods{height:100%;margin:0;display:grid;grid-template-columns:minmax(0,1fr) var(--cw) minmax(0,1fr);grid-template-rows:repeat(6,auto);grid-auto-flow:column;align-content:center;column-gap:10px;row-gap:16px}
  #todo .td-pile>li:nth-child(-n+6),#todo .td-mods>li:nth-child(-n+6){grid-column:1;justify-self:end}
  #todo .td-pile>li:nth-child(n+7),#todo .td-mods>li:nth-child(n+7){grid-column:3;justify-self:start}
  #todo .td-old{font-size:16px;min-height:52px;padding:8px 16px 8px 8px;gap:11px}
  #todo .td-old>i{width:36px;height:36px;border-radius:10px}
  #todo .td-ping{left:26px}
  #todo .td-all{position:absolute;left:50%;bottom:34px;z-index:3;width:auto;margin:0;transform:translateX(-50%)}
  #todo .td-all:active{transform:translateX(-50%) scale(.97)}
  #todo .td-all:hover{transform:translateX(-50%) translateY(-2px)}
  #todo .td-new{font-size:16px;max-width:300px}
  #todo .td-sum{margin:16px 0 0;font-size:clamp(28px,2.9vw,40px)}
  #todo .td-save{margin:16px 0 0;padding:0;max-width:380px}
  #todo .td-save>p{font-size:16px;text-align:center}
  #todo .td-save li{font-size:15.5px}
  #todo .td-mods{row-gap:12px}
  #todo .td-mods li{width:min(300px,100%);min-height:56px;padding:8px 14px 8px 8px;font-size:16px}
  #todo .td-mods li>i{width:36px;height:36px;border-radius:10px}
  #todo .td-mods li>i svg{width:20px;height:20px}
  #todo .td-mods li>span{display:flex;flex-direction:column;gap:2px}
  #todo .td-mods s{display:block;font:500 14px/1.25 var(--f-ui);color:#a99dc8;text-decoration-color:rgba(255,138,101,.8);text-decoration-thickness:1.5px}
  #todo .td-res{grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);grid-template-areas:"shot big" "shot acts";align-items:center;column-gap:clamp(30px,4.5vw,64px);row-gap:26px;margin-top:56px}
  #todo .td-big{align-self:end;font-size:clamp(32px,3.4vw,46px)}
  #todo .td-acts{align-self:start}
  #todo .td-acts .btn-lg{width:auto}
  #todo .td-wp{display:inline}
}
@media (min-width:761px) and (max-width:1040px){
  #todo .td-stage{--lg:196px;--cy:272px;height:600px}
  #todo .td-stage.done{height:700px}
  #todo .td-old{font-size:15px}
}
@media (max-width:380px){
  #todo .td-stage{--lg:124px}
  #todo .td-count{margin-bottom:10px}
  #todo .td-pile{gap:9px 6px}
  #todo .td-all{margin-top:14px}
}
#todo .td-suena{margin:0 auto 34px;max-width:760px;text-align:center}
#todo .td-suena h3{margin:0 0 14px;font:700 13px/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.62)}
#todo .td-suena ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
#todo .td-suena li{padding:9px 14px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.9);font:500 15px/1.35 var(--f-ui);text-align:left}
@media (max-width:760px){#todo .td-suena{margin-bottom:26px}#todo .td-suena li{font-size:14.5px;padding:8px 12px}}
@media (prefers-reduced-motion:reduce){
  #todo .td-orb,#todo .td-drop{animation:none}
  #todo .td-rot,#todo .td-glow,#todo .td-cin,#todo .td-ring *{transition:none}
}

/* ===== #reserva ===== */
  #reserva{overflow:hidden;overflow:clip}
  #reserva::before{content:"";position:absolute;right:-10%;top:10%;width:min(900px,90vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(124,77,255,.26),rgba(240,98,146,.1) 55%,rgba(124,77,255,0));pointer-events:none}
  #reserva .rs-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);grid-template-areas:"copy card" "guide card" "more card";grid-template-rows:auto auto 1fr;column-gap:clamp(36px,6vw,96px);align-items:start}
  #reserva .rs-copy{grid-area:copy}
  #reserva .rs-guide{grid-area:guide;min-width:0}
  #reserva .rs-guide .gd-row{margin:26px 0 4px}
  #reserva .rs-card,#reserva .rs-card-ph{grid-area:card}
  #reserva .rs-more{grid-area:more;padding-top:8px}
  #reserva .clock svg{color:var(--lilac)}
  #reserva .rs-h{margin-top:22px;color:#fff}
  #reserva .rs-cn{color:#ffc2d1}
  #reserva .rs-lead{margin-top:18px;max-width:46ch}
  #reserva .rs-k{margin:22px 0 14px;font:700 15px/1.3 var(--f-ui);color:#fff;letter-spacing:-.005em}
  #reserva .rs-pts{margin:0;padding:0;list-style:none;display:grid;gap:16px}
  #reserva .rs-pts li{display:flex;gap:14px;align-items:flex-start}
  #reserva .rs-n{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:750 14px/1 var(--f-ui);color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.2)}
  #reserva .rs-pts b{display:block;font:700 17px/1.3 var(--f-ui);color:#fff}
  #reserva .rs-pts div>span{display:block;margin-top:3px;font:450 15.5px/1.5 var(--f-ui);color:var(--on-night-2)}
  #reserva .rs-who{display:flex;align-items:center;gap:16px;margin-top:30px;padding:14px 18px 14px 12px;border-radius:22px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
  #reserva .rs-who .rs-foto{width:64px;height:64px;flex:none;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px rgba(255,255,255,.22)}
  #reserva .rs-who b{display:block;font:700 16px/1.3 var(--f-ui);color:#fff}
  #reserva .rs-who span{display:block;margin-top:2px;font:450 15px/1.45 var(--f-ui);color:var(--on-night-2)}
  #reserva .rs-grid .rs-fs[data-k="time"] .rs-l small{display:none}   /* en la sección, la cabecera de la tarjeta ya dice «hora de Madrid» */

  /* ---------- la tarjeta de la reserva (estilos por su id: sirven aquí y dentro de la hoja) */
  #bookCard{position:relative;border-radius:var(--r-xl);background:#fff;color:var(--ink);text-align:left;padding:clamp(22px,2.6vw,34px);box-shadow:0 60px 120px -50px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.4)}
  #bookCard .rs-ch{display:flex;align-items:center;gap:14px;margin-bottom:6px}
  #bookCard .rs-ch .rs-foto{width:56px;height:56px;flex:none;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px rgba(124,77,255,.28)}
  #bookCard .rs-t{margin:0;font:800 clamp(26px,2.4vw,32px)/1.1 var(--f-display);letter-spacing:-.02em}
  #bookCard .rs-s{margin:6px 0 0;font-size:15px;color:var(--muted)}
  #bookCard .rs-fs{margin:22px 0 0;padding:0;border:0;min-width:0}
  #bookCard .rs-l{display:flex;align-items:center;gap:10px;padding:0;margin:0 0 12px;font:750 17px/1.2 var(--f-ui);letter-spacing:-.01em;color:var(--ink);transition:color .2s}
  #bookCard .rs-l small{font:550 15px/1.2 var(--f-ui);color:var(--muted);margin-left:-10px;letter-spacing:0}
  #bookCard .rs-l i{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:750 14px/1 var(--f-ui);font-style:normal;color:#fff;background:#b9afcc;transition:background-color .25s}
  /* el paso de ahora late; los hechos llevan ✓; el que falta al reservar, en rojo */
  #bookCard .rs-fs[data-st="now"] .rs-l i{background:linear-gradient(120deg,#ff7a45,#f06292 45%,#8b5cf6);animation:rsNow 1.6s ease-out infinite}
  @keyframes rsNow{0%{box-shadow:0 0 0 0 rgba(240,98,146,.55)}100%{box-shadow:0 0 0 10px rgba(240,98,146,0)}}
  #bookCard .rs-fs[data-st="ok"] .rs-l i{font-size:0;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.5 12.5l4.2 4.2L18.5 8' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/17px no-repeat}
  #bookCard .rs-fs[data-st="miss"] .rs-l{color:#b0153a}
  #bookCard .rs-fs[data-st="miss"] .rs-l i{background:#e11d48}
  #bookCard .rs-fs.shake{animation:rsShake .42s ease-out}
  @keyframes rsShake{20%{transform:translateX(-6px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}
  @media (prefers-reduced-motion:reduce){#bookCard .rs-fs[data-st="now"] .rs-l i,#bookCard .rs-fs.shake{animation:none}}
  #bookCard .rs-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
  #bookCard .rs-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:78px;padding:8px 4px;border:0;border-radius:18px;background:var(--paper-2);color:var(--ink);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .25s var(--ease-back),background-color .2s,color .2s,box-shadow .2s}
  #bookCard .rs-day small{font:650 13px/1 var(--f-ui);text-transform:capitalize;color:var(--muted)}
  #bookCard .rs-day b{font:700 24px/1 var(--f-ui);font-variant-numeric:tabular-nums}
  #bookCard .rs-day:hover{transform:translateY(-2px);box-shadow:0 0 0 1.5px rgba(124,77,255,.35)}
  #bookCard .rs-times{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
  #bookCard .rs-time{min-height:54px;border:0;border-radius:16px;background:var(--paper-2);color:var(--ink);font:700 16.5px/1 var(--f-ui);font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .25s var(--ease-back),background-color .2s,color .2s,box-shadow .2s}
  #bookCard .rs-time:hover{transform:translateY(-2px);box-shadow:0 0 0 1.5px rgba(124,77,255,.35)}
  #bookCard .rs-day[aria-pressed="true"],#bookCard .rs-time[aria-pressed="true"]{background:var(--ink);color:#fff;box-shadow:0 14px 26px -14px rgba(27,18,48,.8);transform:none}
  #bookCard .rs-day[aria-pressed="true"] small{color:#d8ccf2}
  #bookCard .rs-day:active,#bookCard .rs-time:active{transform:scale(.96)}
  #bookCard .rs-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  #bookCard .rs-f{display:block;margin-top:10px}
  #bookCard .rs-row .rs-f{margin-top:0}
  #bookCard .rs-f>span,#bookCard .rs-f>label{display:block;margin:0 0 6px;font:650 15px/1.2 var(--f-ui);color:var(--ink-2)}
  #bookCard .rs-f input,#bookCard .rs-f select{width:100%;height:54px;padding:0 15px;text-overflow:ellipsis;border:0;border-radius:15px;background:var(--paper-2);color:var(--ink);font:550 16.5px/1 var(--f-ui);box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .2s,background-color .2s;-webkit-appearance:none;appearance:none}
  #bookCard .rs-f input::placeholder{color:#8a7fa3;font-weight:450}
  #bookCard .rs-f input:focus,#bookCard .rs-f select:focus{outline:0;background:#fff;box-shadow:inset 0 0 0 2px var(--violet)}
  #bookCard .rs-f input[aria-invalid="true"]{box-shadow:inset 0 0 0 2px var(--red);background:#fff5f7}
  #bookCard .rs-tel{display:grid;grid-template-columns:118px minmax(0,1fr);gap:8px}
  #bookCard .rs-tel select{padding:0 12px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#6c6082 50%),linear-gradient(135deg,#6c6082 50%,transparent 50%);background-position:calc(100% - 18px) 25px,calc(100% - 13px) 25px;background-size:5px 5px;background-repeat:no-repeat}
  #bookCard .rs-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
  #bookCard .rs-ok{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:12px 12px 12px 10px;border-radius:16px;background:var(--paper-2);font-size:15px;line-height:1.45;color:var(--ink-2);cursor:pointer}
  #bookCard .rs-ok input{flex:none;width:26px;height:26px;margin:0;accent-color:var(--violet);cursor:pointer}
  #bookCard .rs-ok a{color:var(--violet);font-weight:650}
  #bookCard .rs-ok2{margin-top:10px}

  /* ---- las 4 preguntas de antes del calendario (sec-reserva-cualifica.js) ---- */
  #bookForm.rs-qp .rs-when,#bookForm.rs-qp .rs-you,#bookForm.rs-qp .rs-legal{display:none}
  #bookCard .rs-q{margin-top:18px}
  #bookCard .rs-q[hidden]{display:none}
  #bookCard .rs-q-t{margin:0 0 10px;font:750 17px/1.25 var(--f-ui);letter-spacing:-.01em;color:var(--ink)}
  #bookCard .rs-q-bar{display:flex;gap:6px;margin:0 0 14px}
  #bookCard .rs-q-seg{flex:1;height:5px;border-radius:99px;background:#e4dcf3;transition:background-color .25s}
  #bookCard .rs-q-seg.on{background:linear-gradient(120deg,#ff7a45,#f06292 45%,#8b5cf6)}
  #bookCard .rs-q-q{margin:0 0 10px;font:650 16px/1.3 var(--f-ui);color:var(--ink-2,var(--ink));min-height:42px}
  #bookCard .rs-q-q:focus{outline:none}
  #bookCard .rs-q-o{display:grid;gap:8px}
  #bookCard .rs-q-b{min-height:48px;padding:0 16px;border:0;border-radius:14px;background:var(--paper-2);color:var(--ink);font:600 16px/1.2 var(--f-ui);text-align:left;cursor:pointer;box-shadow:inset 0 0 0 1.5px rgba(40,22,70,.16);-webkit-tap-highlight-color:transparent;transition:background-color .15s,box-shadow .15s}
  #bookCard .rs-q-b:hover{background:var(--paper-3,#ebe2fa)}
  #bookCard .rs-q-b:active,#bookCard .rs-q-b[aria-pressed="true"]{background:#efe6ff;box-shadow:inset 0 0 0 2px var(--violet)}
  #bookCard .rs-q-b:focus-visible,#bookCard .rs-q-back:focus-visible{outline:3px solid var(--violet);outline-offset:2px}
  #bookCard .rs-q-back{margin:10px 14px 0 0;padding:6px 0;border:0;background:none;color:var(--violet);font:650 15px/1.2 var(--f-ui);cursor:pointer}
  #bookCard .rs-q-aviso{margin:14px 0 0;padding:10px 12px;border-radius:12px;background:#fff6e5;color:#6b4a00;font:600 15px/1.35 var(--f-ui)}
  #bookCard .rs-q-aviso[hidden]{display:none}
  #bookCard .rs-q-no{margin:0 0 14px;font:450 16px/1.45 var(--f-ui);color:var(--ink-2,var(--ink))}
  #bookCard .rs-q-fn{display:grid;gap:10px}
  #bookCard .rs-q-fn input[type="text"],#bookCard .rs-q-fn input[type="tel"]{width:100%;min-height:48px;padding:0 14px;border:1.5px solid rgba(40,22,70,.22);border-radius:14px;font:500 16px var(--f-ui);background:#fff;color:var(--ink);box-sizing:border-box}
  #bookCard .rs-q-fn .rs-ok{margin-top:0}
  #bookCard .rs-q-go{width:100%;justify-content:center}
  #bookCard .rs-q-hecho{margin:0;padding:12px 14px;border-radius:14px;background:#e8f8ef;color:#0b5b34;font:650 16px/1.4 var(--f-ui)}
  #bookCard .rs-q-otras{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:6px}
  @media (max-height:700px){#bookCard .rs-q-b{min-height:44px}#bookCard .rs-q-q{margin-bottom:8px;min-height:0}#bookCard .rs-q-bar{margin-bottom:10px}}
  @media (prefers-reduced-motion:reduce){#bookCard .rs-q-seg,#bookCard .rs-q-b{transition:none}}
  #bookCard .rs-opt{display:inline-block;margin-left:4px;padding:0 8px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);font:600 12.5px/1.6 var(--f-ui);font-style:normal;color:var(--muted);white-space:nowrap}
  #bookCard .rs-sec{position:relative;min-height:0}
  #bookCard .rs-sec.open{margin-top:12px}
  #bookCard .rs-retry{display:block;min-height:44px;margin:6px 0 -6px;padding:0;border:0;background:none;color:#b0153a;font:700 16px/1.2 var(--f-ui);text-decoration:underline;text-underline-offset:3px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  #bookCard .rs-err{position:relative;margin:12px 0 0;padding:12px 14px 12px 42px;border-radius:14px;background:#fff0f3;color:#b0153a;font:650 16px/1.4 var(--f-ui)}
  #bookCard .rs-err::before{content:"!";position:absolute;left:12px;top:11px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#e11d48;color:#fff;font:800 14px/1 var(--f-ui)}
  #bookCard .rs-go{width:100%;margin-top:18px}
  #bookCard .rs-sum{margin:10px 0 0;min-height:1.3em;text-align:center;font:600 15px/1.35 var(--f-ui);color:var(--ink-2)}
  #bookCard .rs-legal{margin:8px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted)}
  #bookCard .rs-prev{margin:10px 0 0;font-size:13px;line-height:1.45;color:var(--muted)}
  #bookCard .rs-what{display:none}
  #bookCard .rs-what p{margin:0 0 10px;font:700 15px/1.3 var(--f-ui);color:var(--ink)}
  #bookCard .rs-what ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}
  #bookCard .rs-what li{position:relative;padding-left:28px;font:450 15px/1.45 var(--f-ui);color:var(--ink-2)}
  #bookCard .rs-what li::before{content:"";position:absolute;left:2px;top:3px;width:18px;height:18px;border-radius:50%;background:var(--paper-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 12.5l3.6 3.6L17.5 8.6' fill='none' stroke='%237c4dff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}

  /* ---------- recibida: las tres Aura lo celebran */
  #bookCard .rs-done{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:72px 6px 8px;outline:none}
  #bookCard .rs-done[hidden]{display:none}
  #bookCard .rs-buds{position:absolute;left:0;right:0;top:-96px;height:150px;pointer-events:none}
  #bookCard .rs-check{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:#fff;box-shadow:0 20px 40px -18px rgba(34,197,139,.9)}
  #bookCard .rs-check svg{width:40px;height:40px}
  #bookCard .rs-check path{stroke-dasharray:24;stroke-dashoffset:24}
  #bookCard .rs-done.in .rs-check{animation:rsPop .6s var(--ease-back) both}
  #bookCard .rs-done.in .rs-check path{animation:rsDraw .5s cubic-bezier(.6,0,.2,1) .35s forwards}
  @keyframes rsPop{from{transform:scale(.3);opacity:0}}
  @keyframes rsDraw{to{stroke-dashoffset:0}}
  #bookCard .rs-dt{margin:20px 0 0;font:800 clamp(34px,3.4vw,46px)/1.05 var(--f-display);letter-spacing:-.025em}
  #bookCard .rs-ds{margin:12px 0 0;max-width:40ch;font-size:16.5px;line-height:1.55;color:var(--ink-2)}
  #bookCard .rs-ds b{color:var(--ink)}
  #bookCard .rs-db{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:24px}
  #bookCard .btn-ghost{color:var(--ink);background:#fff;box-shadow:0 10px 28px -16px rgba(24,8,64,.55),inset 0 0 0 1.5px var(--line)}
  #bookCard .ic{width:20px;height:20px}
  @media (prefers-reduced-motion:reduce){#bookCard .rs-check path{stroke-dashoffset:0}#bookCard .rs-done.in .rs-check{animation:none}}

  @media (max-width:960px){
    #reserva .rs-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "guide" "card" "more";grid-template-rows:none}
    #reserva .rs-guide .gd-row{margin:20px 0 14px}
    #reserva .rs-more{padding-top:34px}
  }
  @media (max-width:600px){
    #reserva .rs-who{display:none}   /* en el móvil, su cara ya sale en la cabecera de la tarjeta */
    #reserva .rs-k{margin-top:0}
    #reserva .rs-pts{gap:12px}
    #reserva .rs-pts div>span{font-size:15px}
    #reserva .rs-who{padding:12px 14px 12px 8px;gap:10px}
    #reserva .rs-card{margin-inline:-6px;border-radius:28px;padding:22px 16px 20px}
    #bookCard .rs-days{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}   /* los cinco días a la vista, sin cortar el viernes */
    #bookCard .rs-day{min-height:72px;padding:8px 2px;border-radius:16px}
    #bookCard .rs-day small{font-size:12.5px}
    #bookCard .rs-day b{font-size:22px}
    #bookCard .rs-times{grid-template-columns:repeat(3,minmax(0,1fr))}
    #bookCard .rs-row{grid-template-columns:1fr}
    #bookCard .rs-row .rs-f+.rs-f{margin-top:10px}
    #bookCard .rs-tel{grid-template-columns:104px minmax(0,1fr)}
    #bookCard .rs-buds{top:-84px;height:130px}
  }

  /* 5-nov-2026 · reserva más limpia: sin el pulpo con «Tu siguiente paso» y sin los aros de degradado que rodeaban cada paso (tapaban «Elige un día»). El comportamiento sigue en sec-reserva.js; solo se deja de ver. */
  #reserva .rs-guide{display:none}
  .gd-ring[data-step^="reserva-"],.gd-lab[data-step^="reserva-"]{display:none!important}

  /* =====================================================================
     LA HOJA DE LA RESERVA (#bkSheet). Sigue al área visible (--vvt/--vvh, también con el teclado abierto).
     Móvil: hoja desde abajo, casi a pantalla completa, con asa (deslizar hacia abajo cierra). Desde 720 px: panel
     centrado sobre el vídeo, con la tarjeta en dos columnas (cuándo · tus datos). Solo transform/opacity.
     ===================================================================== */
  html.bk-lock,html.bk-lock body{overflow:hidden;overscroll-behavior:none}
  html.bk-lock{scrollbar-gutter:stable;background-color:#0b0620}   /* sin salto al ocultar la barra; su hueco, a oscuras */
  html.bk-lock.bk-fs{scrollbar-gutter:auto}                        /* a pantalla completa no hay barra que guardar */
  #bkSheet{--gap:max(26px,calc(env(safe-area-inset-top,0px) + 12px));position:fixed;left:0;right:0;top:var(--vvt,0px);bottom:auto;z-index:90;width:100%;height:var(--vvh,100%);max-width:none;max-height:none;margin:0;padding:0;border:0;background:none;color:var(--ink);overflow:hidden;font-family:var(--f-ui)}
  #bkSheet:not([open]){display:none}
  #bkSheet::backdrop{background:transparent}
  #bkSheet .bk-scrim{position:absolute;inset:0;background:rgba(7,3,22,.66);opacity:0;transition:opacity .34s var(--ease);touch-action:none}
  #bkSheet.in .bk-scrim{opacity:1}
  #bkSheet .bk-sheet{position:absolute;left:0;right:0;bottom:0;top:var(--gap);display:flex;flex-direction:column;background:#fff;border-radius:28px 28px 0 0;box-shadow:0 -24px 70px -30px rgba(0,0,0,.7);transform:translate3d(0,104%,0);transition:transform .5s cubic-bezier(.22,1,.36,1)}
  #bkSheet.in .bk-sheet{transform:none}
  #bkSheet.kb{--gap:6px}

  /* barra de arriba: asa, «Volver a ver el vídeo» y cerrar (siempre a la vista) */
  #bkSheet .bk-top{position:relative;flex:none;display:flex;align-items:center;gap:10px;padding:18px 12px 8px 16px;touch-action:none;cursor:grab;border-bottom:1px solid transparent;transition:border-color .2s}
  #bkSheet.scrolled .bk-top{border-bottom-color:var(--line)}
  #bkSheet .bk-grab{position:absolute;left:50%;top:7px;width:42px;height:5px;margin-left:-21px;border-radius:3px;background:rgba(27,18,48,.2)}
  #bkSheet .bk-again{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 12px;border:0;border-radius:999px;background:var(--paper-2);color:var(--ink);font:650 15px/1 var(--f-ui);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .2s}
  #bkSheet .bk-again svg{width:19px;height:19px;flex:none}
  #bkSheet .bk-again:hover,#bkSheet .bk-x:hover{background:var(--paper-3)}
  #bkSheet .bk-x{margin-left:auto;flex:none;width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--paper-2);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .2s}
  #bkSheet .bk-x svg{width:21px;height:21px}

  /* contenido con su propio scroll (el de la página queda quieto) */
  #bkSheet .bk-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px 20px calc(26px + env(safe-area-inset-bottom,0px))}
  #bkSheet .bk-hd{padding:4px 0 18px;border-bottom:1px solid var(--line)}
  #bkSheet .bk-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-height:40px}
  #bkSheet .bk-lock{display:flex;align-items:center;gap:8px}
  #bkSheet .bk-mark{width:40px;height:40px;flex:none;overflow:visible}
  #bkSheet .bk-by{font:500 16px/1 var(--f-ui);font-style:normal;color:var(--muted)}
  #bkSheet .bk-logo{width:40px;height:40px;flex:none;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 8px 18px -10px rgba(24,8,64,.55)}
  #bkSheet .bk-logo svg{width:40px;height:40px;display:block}
  #bkSheet:not(.named) .bk-by,#bkSheet:not(.named) .bk-logo{display:none}
  #bkSheet .bk-chip{display:inline-flex;align-items:center;gap:7px;height:32px;margin:0;padding:0 13px 0 10px;border-radius:999px;background:var(--paper-2);font:650 14.5px/1 var(--f-ui);color:var(--ink-2);white-space:nowrap}
  #bkSheet .bk-chip svg{width:17px;height:17px;color:var(--violet)}
  #bkSheet .bk-t{margin:14px 0 0;font:800 28px/1.08 var(--f-display);letter-spacing:-.025em;color:var(--ink);text-wrap:balance;outline:none}
  #bkSheet .bk-t span{color:#c0306f}
  #bkSheet .bk-s{margin:10px 0 0;max-width:58ch;font:450 16px/1.5 var(--f-ui);color:var(--ink-2);text-wrap:pretty}

  /* los anillos de «tu siguiente paso» de la tarjeta, por encima de la hoja mientras está abierta (sec-reserva.js) */
  #bkSheet .bk-gd{position:fixed;inset:0;z-index:6;pointer-events:none;overflow:hidden}
  /* la tarjeta, sin su marco (la hoja ya es el marco) */
  #bkSheet #bookCard{margin:0;padding:0;border-radius:0;background:none;box-shadow:none}
  #bkSheet #bookCard .rs-ch{display:none}
  #bkSheet #bookCard .rs-done{padding-top:110px}
  #bkSheet #bookCard .rs-buds{top:-40px}
  #bkSheet #bookCard .rs-legal{margin-top:12px}

  /* ---------- desde 720 px (tableta, escritorio, pantalla completa): panel centrado sobre el vídeo */
  @media (min-width:720px){
    #bkSheet{display:grid;place-items:center;padding:20px}
    #bkSheet:not([open]){display:none}
    #bkSheet .bk-sheet{position:relative;inset:auto;width:min(1000px,100%);max-height:calc(var(--vvh,100vh) - 40px);border-radius:30px;box-shadow:0 60px 140px -40px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.08);opacity:0;transform:translate3d(0,26px,0);transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .3s var(--ease)}
    #bkSheet.in .bk-sheet{opacity:1;transform:none}
    #bkSheet .bk-top{position:absolute;top:20px;right:20px;z-index:2;padding:0;touch-action:auto;cursor:auto;border:0}
    #bkSheet .bk-grab{display:none}
    #bkSheet .bk-body{padding:30px clamp(26px,3.4vw,40px) 26px}
    #bkSheet .bk-hd{padding:0 0 22px}
    #bkSheet .bk-t{margin-top:16px;font-size:clamp(30px,3.2vw,40px);max-width:24ch}
    #bkSheet .bk-s{font-size:17px}
    /* la tarjeta en dos columnas: cuándo | tus datos */
    #bkSheet #bookForm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
    #bkSheet #bookForm[hidden]{display:none}
    #bkSheet #bookCard .rs-what{display:block;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
    #bkSheet #bookCard .rs-when{padding-right:clamp(20px,2.6vw,34px)}
    #bkSheet #bookCard .rs-you{padding-left:clamp(20px,2.6vw,34px);border-left:1px solid var(--line)}
    #bkSheet #bookCard .rs-legal,#bkSheet #bookCard .rs-prev{grid-column:1/-1}
    #bkSheet #bookCard .rs-days{gap:7px}
    #bkSheet #bookCard .rs-day{min-height:74px}
    #bkSheet #bookCard .rs-times{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
    #bkSheet #bookCard .rs-row{grid-template-columns:1fr 1fr}
    #bkSheet #bookCard .rs-row .rs-f+.rs-f{margin-top:0}
    #bkSheet #bookCard .rs-done{padding-top:124px}
  }
  @media (min-width:720px) and (max-width:899px){
    #bkSheet #bookCard .rs-times{grid-template-columns:repeat(3,minmax(0,1fr))}
    #bkSheet #bookCard .rs-row{grid-template-columns:1fr}
    #bkSheet #bookCard .rs-row .rs-f+.rs-f{margin-top:10px}
  }
  /* portátiles con poca altura (1366×768, 1280×720): sin la lista y con el título en una línea, todo a la vista */
  @media (min-width:720px) and (max-height:860px){
    #bkSheet .bk-body{padding-top:26px;padding-bottom:22px}
    #bkSheet .bk-t{max-width:none;font-size:clamp(28px,2.8vw,36px)}
    #bkSheet .bk-hd{padding-bottom:18px}
    #bkSheet #bookCard .rs-what{display:none}
  }
  /* pantallas bajas (móvil en horizontal, a pantalla completa): más compacto */
  @media (min-width:720px) and (max-height:600px){
    #bkSheet{padding:8px}
    #bkSheet .bk-sheet{max-height:calc(var(--vvh,100vh) - 16px);border-radius:22px}
    #bkSheet .bk-top{top:12px;right:12px}
    #bkSheet .bk-body{padding:14px 22px 16px}
    #bkSheet .bk-lock{display:none}
    #bkSheet .bk-t{margin-top:10px;font-size:24px}
    #bkSheet .bk-s{margin-top:6px;font-size:15.5px}
    #bkSheet .bk-hd{padding-bottom:12px}
  }
  /* menos movimiento: la hoja aparece y se va sin animación (estado final directo) */
  @media (prefers-reduced-motion:reduce){
    #bkSheet .bk-sheet,#bkSheet .bk-scrim,#bkSheet .bk-top{transition:none}
    #bkSheet .bk-sheet{transform:none;opacity:0}
    #bkSheet.in .bk-sheet{opacity:1}
  }
  

/* ===== #preguntas ===== */
  #preguntas{background:linear-gradient(180deg,#120a2e 0%,var(--night) 60%)}
  #preguntas .fq-grid{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);grid-template-areas:"side list" "end list";grid-template-rows:auto 1fr;column-gap:clamp(36px,6vw,96px);align-items:start}
  #preguntas .fq-side{grid-area:side}
  #preguntas .fq-list{grid-area:list}
  #preguntas .fq-end{grid-area:end;padding-top:8px}
  #preguntas .fq-h{color:#fff}
  #preguntas .fq-lead{margin:16px 0 0;font:450 18px/1.5 var(--f-ui);color:var(--on-night-2);max-width:34ch}
  #preguntas .fq-guide .gd-row{margin:26px 0 8px}
  #preguntas .gd-bub{max-width:330px}
  #preguntas .fq-list,#preguntas .fq-more{display:grid;gap:10px}
  #preguntas .fq-more[hidden]{display:none}
  #preguntas details{border-radius:22px;background:rgba(255,255,255,.045);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:background-color .25s,box-shadow .25s}
  #preguntas details:hover{background:rgba(255,255,255,.07)}
  #preguntas details[open]{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(201,182,255,.3)}
  #preguntas summary{position:relative;display:flex;align-items:center;gap:16px;min-height:64px;padding:16px 64px 16px 22px;list-style:none;cursor:pointer;font:650 clamp(16.5px,1.35vw,18.5px)/1.35 var(--f-ui);color:#fff;border-radius:22px;-webkit-tap-highlight-color:transparent}
  #preguntas summary::-webkit-details-marker{display:none}
  #preguntas summary i{position:absolute;right:16px;top:50%;width:34px;height:34px;margin-top:-17px;border-radius:50%;background:rgba(255,255,255,.08);transition:transform .35s var(--ease-back),background-color .2s}
  #preguntas summary i::before,#preguntas summary i::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:2.2px;margin:-1.1px 0 0 -6.5px;border-radius:2px;background:#fff}
  #preguntas summary i::after{transform:rotate(90deg);transition:transform .35s var(--ease)}
  #preguntas details[open] summary i{transform:rotate(180deg);background:var(--grad)}
  #preguntas details[open] summary i::after{transform:rotate(0)}
  #preguntas .fq-a{padding:0 22px 20px}
  #preguntas .fq-a p{margin:0;max-width:62ch;font:450 16.5px/1.6 var(--f-ui);color:var(--on-night-2)}
  #preguntas details[open] .fq-a{animation:fqIn .4s var(--ease) both}
  @keyframes fqIn{from{opacity:0;transform:translateY(-6px)}}
  #preguntas .fq-mbtn{--h:56px;justify-self:start;margin-top:4px}
  @media (prefers-reduced-motion:reduce){#preguntas details[open] .fq-a{animation:none}}
  @media (max-width:900px){
    #preguntas .fq-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"side" "list" "end";grid-template-rows:none}
    #preguntas .fq-guide .gd-row{margin:18px 0 14px}
    #preguntas .fq-end{padding-top:26px}
    #preguntas .fq-mbtn{justify-self:stretch}
    #preguntas .fq-cta{width:100%}
    #preguntas summary{padding-left:18px;min-height:62px}
    #preguntas .fq-a{padding:0 18px 18px}
    #preguntas .fq-a p{font-size:16px}
  }
  

/* ===== #final ===== */
  #final{overflow:hidden;overflow:clip;padding-block:clamp(90px,11vw,170px) clamp(80px,9vw,140px);background:radial-gradient(120% 80% at 50% 100%,#4a2c7a 0%,#2e1e4b 45%,var(--night) 80%)}
  #final .fn-sky,#final .fn-sky i{position:absolute;inset:0;pointer-events:none}
  #final .fn-st{background-repeat:no-repeat;background-image:radial-gradient(1.3px 1.3px at 9% 16%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 24% 34%,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 39% 10%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 61% 24%,#fff 50%,transparent 52%),radial-gradient(1.4px 1.4px at 79% 13%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 92% 36%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 5% 52%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 14% 78%,#fff 50%,transparent 52%),radial-gradient(1.4px 1.4px at 86% 70%,#e9ddff 50%,transparent 52%),radial-gradient(1px 1px at 70% 58%,#fff 50%,transparent 52%);animation:hTw 6s ease-in-out infinite alternate}
  #final .fn-aur{background:radial-gradient(55% 30% at 25% 78%,rgba(255,138,101,.22),rgba(255,138,101,0) 70%),radial-gradient(50% 32% at 75% 82%,rgba(244,114,182,.24),rgba(244,114,182,0) 70%),radial-gradient(70% 40% at 50% 100%,rgba(140,104,255,.4),rgba(140,104,255,0) 70%)}
  #final .fn-sky .fn-moon{left:auto;right:max(5vw,calc(50% - 600px));top:70px;bottom:auto;width:44px;height:44px;border-radius:50%;box-shadow:inset 11px -7px 0 0 #f4ecff;opacity:.8;transform:rotate(-18deg)}
  @media (prefers-reduced-motion:reduce){#final .fn-st{animation:none}}
  #final .fn-in{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
  #final .clock svg{color:var(--lilac)}
  #final .fn-emb{position:relative;width:120px;height:120px;margin-top:34px}
  #final .fn-halo{position:absolute;left:50%;top:50%;width:360px;height:360px;margin:-180px 0 0 -180px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,214,236,.34),rgba(240,98,146,.14) 45%,rgba(124,77,255,0));pointer-events:none}
  #final .fn-logo{position:relative;display:block;width:120px;height:120px;border-radius:50%;box-shadow:0 30px 70px -26px rgba(0,0,0,.9),0 0 0 6px rgba(255,255,255,.06)}
  #final .fn-logo svg{width:120px;height:120px;display:block}
  #final .fn-mark{position:absolute;inset:-6px;width:calc(100% + 12px);height:calc(100% + 12px);overflow:visible}
  #final:not(.named) .fn-logo,#final.named .fn-mark{display:none}
  #final .fn-guide{width:min(470px,100%);margin:34px auto 0;text-align:left}
  #final .fn-guide .gd-row{margin:0}
  #final .fn-h{margin:32px 0 0;max-width:16ch;font:800 clamp(44px,6.6vw,96px)/.98 var(--f-display);letter-spacing:-.04em;color:#fff;text-wrap:balance}
  #final .fn-cn{color:#ffc2d1}
  #final .fn-lead{margin:20px 0 0;max-width:40ch;font:450 clamp(18px,1.6vw,22px)/1.5 var(--f-ui);color:var(--on-night-2)}
  #final .fn-log{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(980px,100%);margin:40px 0 0;padding:0;list-style:none;text-align:left}
  #final .fn-log li{position:relative;display:flex;align-items:center;gap:12px;padding:14px 46px 14px 14px;border-radius:20px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);opacity:0;transform:translate3d(0,14px,0);transition:opacity .5s var(--ease),transform .6s var(--ease-back)}
  #final .fn-log.in li{opacity:1;transform:none}
  #final .fn-log.in li:nth-child(2){transition-delay:.25s}#final .fn-log.in li:nth-child(3){transition-delay:.5s}
  #final .fn-av{width:42px;height:42px;flex:none;border-radius:50%;background:#3a2a5a center 22%/cover no-repeat;box-shadow:0 0 0 2px rgba(255,255,255,.8)}
  #final .fn-log b{display:block;font:700 14.5px/1.25 var(--f-ui);color:#fff;font-variant-numeric:tabular-nums}
  #final .fn-log span{display:block;margin-top:2px;font:450 13.5px/1.4 var(--f-ui);color:var(--on-night-2)}
  #final .fn-ok{position:absolute;right:14px;top:50%;width:24px;height:24px;margin-top:-12px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:#fff;transform:scale(0);transition:transform .45s var(--ease-back)}
  #final .fn-ok svg{width:15px;height:15px}
  #final .fn-log.in li .fn-ok{transform:none;transition-delay:.45s}
  #final .fn-log.in li:nth-child(2) .fn-ok{transition-delay:.7s}#final .fn-log.in li:nth-child(3) .fn-ok{transition-delay:.95s}
  #final .fn-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px}
  #final .ic{width:18px;height:18px}
  #final .fn-note{margin:16px 0 0;max-width:60ch;font-size:15px;line-height:1.5;color:var(--on-night-2);text-wrap:balance}
  @media (prefers-reduced-motion:reduce){#final .fn-log li,#final .fn-ok{opacity:1;transform:none;transition:none}}
  @media (max-width:760px){
    #final .fn-emb{margin-top:26px;width:104px;height:104px}
    #final .fn-logo,#final .fn-logo svg{width:104px;height:104px}
    #final .fn-guide{margin-top:26px}
    #final .fn-log{grid-template-columns:minmax(0,1fr);margin-top:30px}
    #final .fn-log b{font-size:15px}
    #final .fn-log span{font-size:15px}
    #final .fn-cta{width:100%;flex-direction:column}
    #final .fn-cta .btn{width:100%}
  }
  

/* ===== #pie ===== */
  #pie{position:relative;background:#1b1033;color:var(--on-night-2);padding:48px 0 calc(110px + env(safe-area-inset-bottom,0px));font-size:15px}
  @media (min-width:761px){#pie{padding-bottom:48px}}
  #pie .pie-in{display:grid;grid-template-columns:1fr auto;gap:22px 40px;align-items:center}
  #pie .pie-brand{display:flex;align-items:center;gap:14px}
  #pie .pie-mark{width:44px;height:44px;overflow:visible}
  #pie .pie-brand b{display:block;color:#fbf8ff;line-height:0}#pie .pie-brand b svg{display:block;height:46px;width:auto;aspect-ratio:719/321}
  #pie .pie-brand p{margin:6px 0 0;font-size:14.5px}
  #pie .pie-nav{display:flex;flex-wrap:wrap;gap:4px 6px;justify-content:flex-end}
  #pie .pie-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;border-radius:10px;color:var(--on-night-2);text-decoration:none}
  #pie .pie-nav a:hover{color:#fff;background:rgba(255,255,255,.06)}
  #pie .pie-x{grid-column:1/-1;margin:0;font-size:13px;line-height:1.5;color:#a99cc9;max-width:70ch}
  #pie .pie-c{grid-column:1/-1;margin:0;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);font-size:13.5px;color:#a99cc9}
  #pie .pie-c a{color:inherit}
  @media (max-width:760px){#pie .pie-in{grid-template-columns:1fr}#pie .pie-nav{justify-content:flex-start;margin-left:-10px}}
  
/* 4-nov: el aviso de «aún no has visto el vídeo» (vsl-engancha.js) */
.vp-falta{position:fixed;z-index:46;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:4px;width:max-content;max-width:calc(100vw - 24px);padding:6px;border-radius:999px;background:#160a2e;box-shadow:0 0 0 2px #ff8a65,0 18px 40px -10px rgba(0,0,0,.75);transform:translate(-50%,16px);opacity:0;transition:transform .35s,opacity .3s}
.vp-falta.on{transform:translate(-50%,0);opacity:1}
.vp-falta-b{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 10px 0 0;border:0;background:none;color:#fff;font:750 15px/1.2 var(--f-ui);text-align:left;cursor:pointer}
.vp-falta-b small{display:block;font:550 12.5px/1.25 var(--f-ui);color:rgba(255,255,255,.82)}
.vp-falta-i{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--grad);color:#fff}
.vp-falta-i svg{width:22px;height:22px;margin-left:3px}
.vp-falta-x{width:40px;height:40px;flex:none;border:0;border-radius:50%;background:none;color:rgba(255,255,255,.8);font:400 24px/1 var(--f-ui);cursor:pointer}
@media (min-width:761px){.vp-falta{bottom:24px}}
@media (prefers-reduced-motion:reduce){.vp-falta{transition:none}}
