/* JuanitaEscallon: estilos del theme.
   Generado desde el Design System (tokens y componentes jdp-) más la capa web de la maqueta aprobada.
   Edita los colores y fuentes en Elementor > Ajustes del sitio o en el Personalizador, no aquí. */
/* Paleta del Manual de Marca (lámina 6) + capa funcional, tintes y neutros [Propuesta] */
:root{
  /* Marca (manual) — un único valor por color */
  --brand-plomo:#272727;
  --brand-rojo:#E3455C;
  --brand-amarillo:#EEA343;
  --brand-naranja:#E6723B;
  --brand-blanco:#FFFFFF;

  /* Degradado de marca (manual, lámina 6): plomo → rojo → amarillo → naranja */
  --gradient-brand:linear-gradient(90deg,#272727 0%,#E3455C 36%,#EEA343 70%,#E6723B 100%);

  /* Capa funcional [Propuesta]: el rojo del manual + 15 % / 30 % de plomo. No son colores nuevos */
  --color-action:#C74054;        /* botón principal, texto rojo pequeño · blanco/acción 4,9:1 */
  --color-action-hover:#AB3C4C;  /* hover y presionado · 6,0:1 */

  /* Color por pilar [Propuesta]: solo marcadores pequeños */
  --pilar-escritura:var(--brand-rojo);
  --pilar-bienestar:var(--brand-naranja);
  --pilar-editorial:var(--brand-plomo);
  --pilar-comunidad:var(--brand-amarillo);

  /* Tintes [Propuesta]: mezcla sobre blanco ≈30 % y ≈14 %. Únicos "pasteles" permitidos */
  --tint-rojo:#F7C7CE;      --tint-rojo-soft:#FBE5E8;
  --tint-amarillo:#FAE3C7;  --tint-amarillo-soft:#FDF2E5;
  --tint-naranja:#F8D5C4;   --tint-naranja-soft:#FCEBE4;

  /* Neutros cálidos [Propuesta] */
  --color-paper:#FBF7F1;        /* lienzo por defecto */
  --color-paper-soft:#FDFBF8;
  --color-card:#FFFFFF;
  --color-surface:#F3ECE3;      /* bloques de apoyo */
  --color-hairline:#E6DED3;
  --color-hairline-strong:#D3C9BC;
  --color-ink:var(--brand-plomo); /* titulares y texto principal */
  --color-body:#4A4643;         /* texto corrido */
  --color-muted:#77706A;        /* metadatos (AA sobre papel) */
  --color-muted-soft:#ADA6A0;   /* solo decorativo o deshabilitado */
  --color-on-dark:#FFFFFF;
  --color-on-dark-soft:#CFC8C1;

  /* Estado (no son colores de marca) */
  --color-success:#3C7A55;
  --color-error:#B5302A;

  /* Foco accesible */
  --focus-ring:0 0 0 2px var(--color-paper),0 0 0 4px var(--brand-plomo);
}

/* Familias del manual; escala [Propuesta]. Sin negritas ni cursivas sintéticas. */
:root{
  --font-serif:"Minion Pro","Crimson Pro",Georgia,"Times New Roman",serif;
  --font-slab:"Nilland","Josefin Slab",Rockwell,serif;

  /* Display y títulos — Minion Pro, sentence case */
  --type-display-xl:400 88px/1.02 var(--font-serif);
  --type-display:400 64px/1.05 var(--font-serif);
  --type-h1:400 48px/1.1 var(--font-serif);
  --type-h2:400 36px/1.15 var(--font-serif);
  --type-h3:400 28px/1.22 var(--font-serif);
  --type-h4:400 22px/1.3 var(--font-serif);
  /* Caps espaciadas (eco del logotipo) — Minion Pro MAYÚSCULAS */
  --type-caps:400 28px/1.1 var(--font-serif);
  --tracking-caps:.32em;

  /* Texto — Minion Pro */
  --type-lead:400 22px/1.55 var(--font-serif);
  --type-body:400 18px/1.65 var(--font-serif);
  --type-small:400 16px/1.55 var(--font-serif);
  --type-caption:400 14px/1.45 var(--font-serif);
  --type-quote:400 30px/1.3 var(--font-serif);

  /* Nilland — subtítulos, etiquetas, botones y metadatos */
  --type-subtitle:400 20px/1.4 var(--font-slab);
  --type-label:400 14px/1.2 var(--font-slab);
  --type-label-lg:400 15px/1.2 var(--font-slab);
  --type-button:400 15px/1 var(--font-slab);
  --tracking-label:.2em;
  --tracking-button:.14em;
}
@media (max-width:720px){:root{
  --type-display-xl:400 52px/1.04 var(--font-serif);
  --type-display:400 42px/1.06 var(--font-serif);
  --type-h1:400 36px/1.12 var(--font-serif);
  --type-h2:400 30px/1.18 var(--font-serif);
  --type-h3:400 24px/1.25 var(--font-serif);
  --type-caps:400 22px/1.1 var(--font-serif);
  --type-quote:400 24px/1.35 var(--font-serif);
}}

/* Espaciado, radios, sombras y movimiento [Propuesta] */
:root{
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px;
  --space-6:32px; --space-7:48px; --space-8:64px; --space-9:96px; --space-10:128px;
  --section-y:96px; --section-y-mobile:64px;
  --container:1160px; --reading:680px; --gutter:24px; --gutter-mobile:16px;
  --touch-min:44px;

  /* Radios: recto para bloques y fotos; círculo para lo que se toca o identifica */
  --radius-0:0; --radius-xs:2px; --radius-sm:4px; --radius-pill:9999px; --radius-circle:50%;

  /* Sombras: suaves, tinta plomo. Sin sombras duras ni de color */
  --shadow-1:0 1px 2px rgba(39,39,39,.06);
  --shadow-2:0 1px 2px rgba(39,39,39,.05),0 10px 28px rgba(39,39,39,.08);
  --shadow-3:0 2px 4px rgba(39,39,39,.06),0 24px 56px rgba(39,39,39,.14);

  /* Bordes */
  --border-hair:1px solid var(--color-hairline);
  --border-ink:1px solid var(--brand-plomo);

  /* Movimiento: lento y sereno */
  --ease:cubic-bezier(.25,.1,.25,1);
  --dur-fast:160ms; --dur:280ms; --dur-slow:600ms;

  /* Motivo "dos puntos" */
  --dot-sm:6px; --dot-md:10px; --dot-lg:16px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--color-paper);color:var(--color-body);font:var(--type-body);
  font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{color:var(--color-ink);margin:0;font-weight:400}
h1{font:var(--type-h1)} h2{font:var(--type-h2)} h3{font:var(--type-h3)} h4{font:var(--type-h4)}
p{margin:0 0 1em}
a{color:var(--color-ink);text-decoration-line:underline;text-decoration-color:var(--brand-rojo);text-decoration-thickness:1px;text-underline-offset:.2em;transition:color var(--dur-fast) var(--ease)}
a:hover{color:var(--color-action)}
:focus-visible{outline:none;box-shadow:var(--focus-ring)}
img{max-width:100%;display:block}
::selection{background:var(--tint-amarillo);color:var(--brand-plomo)}
.jdp-display-xl{font:var(--type-display-xl);color:var(--color-ink)}
.jdp-display{font:var(--type-display);color:var(--color-ink)}
.jdp-caps{font:var(--type-caps);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-ink)}
.jdp-lead{font:var(--type-lead)}
.jdp-subtitle{font:var(--type-subtitle);color:var(--color-ink)}
.jdp-label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
.jdp-caption{font:var(--type-caption);color:var(--color-muted)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Design System de la marca (heredado de Juanitadospuntos) — componentes HTML/CSS (prefijo jdp-).
   Todo sale de los tokens de ../tokens. Pensado para llevarse a WordPress (bloques o CSS adicional). */

/* ── ACCIONES ─────────────────────────────────────────── */
.jdp-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 28px;
  border:1px solid transparent;border-radius:var(--radius-pill);font:var(--type-button);letter-spacing:var(--tracking-button);
  text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap;
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur) var(--ease)}
.jdp-btn:hover{transform:translateY(-1px)}
.jdp-btn:active{transform:none}
.jdp-btn svg{width:18px;height:18px;stroke-width:1.5}
.jdp-btn--primary{background:var(--color-action);color:#fff}
.jdp-btn--primary:hover{background:var(--color-action-hover);color:#fff;box-shadow:var(--shadow-2)}
.jdp-btn--outline{background:transparent;color:var(--brand-plomo);border-color:var(--brand-plomo)}
.jdp-btn--outline:hover{background:var(--brand-plomo);color:#fff}
.jdp-btn--inverse{background:#fff;color:var(--brand-plomo)}
.jdp-btn--inverse:hover{background:var(--color-paper)}
.jdp-btn--outline-inverse{background:transparent;color:#fff;border-color:#fff}
.jdp-btn--outline-inverse:hover{background:#fff;color:var(--brand-plomo)}
.jdp-btn--sm{min-height:40px;padding:0 20px;font-size:14px}
.jdp-btn--lg{min-height:56px;padding:0 36px;font-size:16px}
.jdp-btn[disabled],.jdp-btn.is-disabled{opacity:.4;pointer-events:none}
/* Firma opcional: dos puntos antes del texto */
.jdp-btn__dots{display:inline-grid;gap:3px}
.jdp-btn__dots::before,.jdp-btn__dots::after{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.jdp-btn--primary .jdp-btn__dots::before{background:#fff}
.jdp-btn--primary .jdp-btn__dots::after{background:var(--brand-amarillo)}
.jdp-btn--outline .jdp-btn__dots::before{background:var(--brand-rojo)}
.jdp-btn--outline .jdp-btn__dots::after{background:var(--brand-amarillo)}

.jdp-icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--color-hairline-strong);
  background:transparent;color:var(--brand-plomo);cursor:pointer;transition:all var(--dur) var(--ease)}
.jdp-icon-btn svg{width:20px;height:20px;stroke-width:1.5}
.jdp-icon-btn:hover{border-color:var(--brand-plomo);background:var(--brand-plomo);color:#fff}
.jdp-icon-btn--solid{background:var(--brand-plomo);border-color:var(--brand-plomo);color:#fff}
.jdp-icon-btn--solid:hover{background:#000}
.jdp-icon-btn--action{background:var(--color-action);border-color:var(--color-action);color:#fff}
.jdp-icon-btn--action:hover{background:var(--color-action-hover);border-color:var(--color-action-hover)}
.jdp-icon-btn--sm{width:36px;height:36px}.jdp-icon-btn--sm svg{width:16px;height:16px}

.jdp-link{color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--brand-rojo);text-decoration-thickness:1px;text-underline-offset:.22em}
.jdp-link:hover{color:var(--color-action)}
.jdp-link-arrow{display:inline-flex;align-items:center;gap:10px;font:var(--type-button);letter-spacing:var(--tracking-button);text-transform:uppercase;
  color:var(--color-ink);text-decoration:none;padding:6px 0;border-bottom:1px solid var(--brand-rojo)}
.jdp-link-arrow svg{width:16px;height:16px;stroke-width:1.5;transition:transform var(--dur) var(--ease)}
.jdp-link-arrow:hover{color:var(--color-ink)}
.jdp-link-arrow:hover svg{transform:translateX(4px)}

/* ── FORMULARIOS ──────────────────────────────────────── */
.jdp-field{display:grid;gap:8px;max-width:420px}
.jdp-field__label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.jdp-input{width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-xs);
  background:#fff;color:var(--color-ink);font:var(--type-body);font-size:17px;transition:border-color var(--dur-fast) var(--ease)}
.jdp-input::placeholder{color:var(--color-muted)}
.jdp-input:hover{border-color:var(--color-muted)}
.jdp-input:focus{outline:none;border-color:var(--brand-plomo);box-shadow:var(--focus-ring)}
textarea.jdp-input{min-height:120px;resize:vertical}
.jdp-field__help{font:var(--type-caption);color:var(--color-muted)}
.jdp-field--error .jdp-input{border-color:var(--color-error)}
.jdp-field--error .jdp-field__help{color:var(--color-error)}
.jdp-check{display:inline-flex;align-items:flex-start;gap:12px;font:var(--type-small);color:var(--color-body);cursor:pointer;max-width:420px}
.jdp-check input{appearance:none;flex:none;width:20px;height:20px;margin:2px 0 0;border:1px solid var(--brand-plomo);border-radius:var(--radius-xs);background:#fff;display:grid;place-items:center;cursor:pointer}
.jdp-check input:checked{background:var(--brand-plomo)}
.jdp-check input:checked::after{content:"";width:6px;height:10px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:translateY(-1px) rotate(45deg)}
.jdp-subscribe{display:flex;align-items:center;gap:6px;max-width:520px;padding:6px 6px 6px 22px;background:#fff;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-pill)}
.jdp-subscribe:focus-within{border-color:var(--brand-plomo);box-shadow:var(--focus-ring)}
.jdp-subscribe input{flex:1;min-width:0;border:0;background:transparent;font:var(--type-body);font-size:17px;color:var(--color-ink);outline:none}
.jdp-subscribe input::placeholder{color:var(--color-muted)}
@media (max-width:520px){.jdp-subscribe{flex-direction:column;align-items:stretch;border-radius:var(--radius-xs);padding:8px}.jdp-subscribe input{padding:10px 12px}}

/* ── VISUALIZACIÓN ────────────────────────────────────── */
.jdp-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--radius-pill);font:var(--type-label);
  letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--brand-plomo);background:var(--color-surface)}
.jdp-badge--rojo{background:var(--tint-rojo)}
.jdp-badge--amarillo{background:var(--tint-amarillo)}
.jdp-badge--naranja{background:var(--tint-naranja)}
.jdp-badge--plomo{background:var(--brand-plomo);color:#fff}
.jdp-badge--escritura{background:var(--tint-rojo)}
.jdp-badge--bienestar{background:var(--tint-naranja)}
.jdp-badge--editorial{background:var(--brand-plomo);color:#fff}
.jdp-badge--comunidad{background:var(--tint-amarillo)}
.jdp-badge--outline{background:transparent;border:1px solid var(--brand-plomo);padding:6px 13px}
.jdp-badge[data-dot]::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--dot,var(--brand-rojo))}

.jdp-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-pill);
  background:transparent;font:var(--type-small);color:var(--color-ink);cursor:pointer;transition:all var(--dur-fast) var(--ease)}
.jdp-chip:hover{border-color:var(--brand-plomo)}
.jdp-chip[aria-pressed="true"],.jdp-chip.is-on{background:var(--brand-plomo);border-color:var(--brand-plomo);color:#fff}

.jdp-avatar{--s:56px;width:var(--s);height:var(--s);flex:none;border-radius:50%;overflow:hidden;display:grid;place-items:center;
  background:var(--tint-amarillo);color:var(--brand-plomo);font:400 calc(var(--s)*.4)/1 var(--font-serif)}
.jdp-avatar img{width:100%;height:100%;object-fit:cover}
.jdp-avatar--sm{--s:40px}.jdp-avatar--lg{--s:88px}.jdp-avatar--xl{--s:128px}
.jdp-avatar--ring{box-shadow:0 0 0 3px var(--color-paper),0 0 0 4.5px var(--ring,var(--brand-rojo))}

.jdp-card{display:flex;flex-direction:column;background:var(--color-card);border:var(--border-hair);color:inherit;text-decoration:none;
  transition:box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease);overflow:hidden}
.jdp-card:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}
.jdp-card__media{aspect-ratio:4/5;overflow:hidden;background:var(--color-surface)}
.jdp-card__media--wide{aspect-ratio:3/2}
.jdp-card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}
.jdp-card:hover .jdp-card__media img{transform:scale(1.03)}
.jdp-card__body{display:grid;gap:10px;padding:24px 24px 28px}
.jdp-card__kicker{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
.jdp-card__title{font:var(--type-h4);color:var(--color-ink);margin:0}
.jdp-card__text{font:var(--type-small);color:var(--color-body);margin:0}
.jdp-card--tint{background:var(--tint-amarillo-soft);border-color:transparent}

.jdp-quote{position:relative;display:grid;gap:22px;padding:40px 40px 36px 72px;background:var(--color-card);border:var(--border-hair);max-width:640px}
.jdp-quote::before,.jdp-quote::after{content:"";position:absolute;left:36px;width:12px;height:12px;border-radius:50%}
.jdp-quote::before{top:48px;background:var(--brand-rojo)}
.jdp-quote::after{top:68px;background:var(--brand-amarillo)}
.jdp-quote__text{font:var(--type-quote);color:var(--color-ink);margin:0}
.jdp-quote__who{display:flex;align-items:center;gap:14px}
.jdp-quote__name{font:var(--type-small);color:var(--color-ink);display:block}
.jdp-quote__role{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
.jdp-quote--tint{background:var(--tint-rojo-soft);border-color:transparent}

.jdp-stat{display:grid;gap:6px;min-width:0;padding-left:18px;border-left:1px solid var(--brand-plomo)}
.jdp-stat__value{font:400 64px/1 var(--font-serif);color:var(--color-ink)}
.jdp-stat__label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
.jdp-stat__note{font:var(--type-caption);color:var(--color-muted)}

.jdp-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.jdp-list li{position:relative;padding-left:26px;font:var(--type-body);color:var(--color-body)}
.jdp-list li::before,.jdp-list li::after{content:"";position:absolute;left:6px;width:5px;height:5px;border-radius:50%;background:var(--dot,var(--brand-rojo))}
.jdp-list li::before{top:.55em}
.jdp-list li::after{top:calc(.55em + 8px)}
.jdp-list--plomo{--dot:var(--brand-plomo)}

.jdp-divider{display:flex;align-items:center;gap:18px;margin:32px 0;color:var(--color-hairline-strong)}
.jdp-divider::before,.jdp-divider::after{content:"";flex:1;height:1px;background:currentColor}
.jdp-divider span{display:grid;gap:4px}
.jdp-divider span::before,.jdp-divider span::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand-plomo)}

/* ── NAVEGACIÓN ───────────────────────────────────────── */
.jdp-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding:0 32px;background:var(--color-paper);border-bottom:var(--border-hair)}
.jdp-nav__logo img{height:26px;width:auto}
.jdp-nav__links{display:flex;gap:30px;list-style:none;margin:0;padding:0}
.jdp-nav__links a{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink);text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}
.jdp-nav__links a:hover,.jdp-nav__links a[aria-current]{border-bottom-color:var(--brand-rojo)}
.jdp-nav__menu{display:none}
@media (max-width:820px){.jdp-nav{padding:0 16px;min-height:64px}.jdp-nav__links,.jdp-nav__cta{display:none}.jdp-nav__menu{display:inline-grid}.jdp-nav__logo img{height:20px}}

.jdp-footer{background:var(--brand-plomo);color:var(--color-on-dark-soft);padding:64px 32px 28px}
.jdp-footer__top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:40px}
.jdp-footer__brand img{height:64px;width:auto;margin-bottom:18px}
.jdp-footer h4{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:#fff;margin:0 0 16px}
.jdp-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.jdp-footer a{color:var(--color-on-dark-soft);text-decoration:none;font:var(--type-small)}
.jdp-footer a:hover{color:#fff}
.jdp-footer__bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);font:var(--type-caption)}
.jdp-footer__bar::before{content:"";position:absolute}
@media (max-width:820px){.jdp-footer{padding:48px 16px 24px}.jdp-footer__top{grid-template-columns:1fr}}

/* ── ÍCONOS ───────────────────────────────────────────── */
.jdp-icon{display:inline-grid;place-items:center;width:24px;height:24px;color:var(--brand-plomo)}
.jdp-icon svg{width:100%;height:100%;stroke-width:1.5}
.jdp-social{--s:44px;display:inline-grid;place-items:center;width:var(--s);height:var(--s);border-radius:50%;color:var(--brand-plomo);text-decoration:none;transition:all var(--dur) var(--ease)}
.jdp-social svg{width:calc(var(--s)*.45);height:calc(var(--s)*.45);fill:currentColor}
.jdp-social svg[stroke]{fill:none;stroke-width:1.6}
.jdp-social--mono{width:auto;height:auto}
.jdp-social--mono svg{width:24px;height:24px}
.jdp-social--circle{background:var(--brand-plomo);color:#fff}
.jdp-social--outline{border:1px solid currentColor}
.jdp-social--rojo{background:var(--brand-rojo);color:#fff}
.jdp-social--naranja{background:var(--brand-naranja);color:#fff}
.jdp-social--amarillo{background:var(--brand-amarillo);color:var(--brand-plomo)}
.jdp-social--on-dark{color:#fff}
.jdp-social:hover{transform:translateY(-2px)}

/* Capa sticker: sello circular como el monograma */
.jdp-sticker{--s:96px;--c:var(--brand-rojo);--g:#fff;position:relative;display:inline-grid;place-items:center;width:var(--s);height:var(--s);border-radius:50%;background:var(--c);color:var(--g)}
.jdp-sticker svg{width:42%;height:42%;stroke-width:1.5}
.jdp-sticker--plomo{--c:var(--brand-plomo)}
.jdp-sticker--naranja{--c:var(--brand-naranja)}
.jdp-sticker--amarillo{--c:var(--brand-amarillo);--g:var(--brand-plomo)}
.jdp-sticker--papel{--c:var(--color-paper);--g:var(--brand-plomo);box-shadow:inset 0 0 0 1.5px var(--brand-plomo)}
.jdp-sticker--ring{background:transparent;color:var(--c);box-shadow:inset 0 0 0 1.5px var(--c)}
.jdp-sticker--ring.jdp-sticker--amarillo{color:var(--brand-plomo)}
/* acento de dos puntos a la derecha del sello */
.jdp-sticker[data-dots]::before,.jdp-sticker[data-dots]::after{content:"";position:absolute;right:-4px;width:calc(var(--s)*.11);height:calc(var(--s)*.11);border-radius:50%;background:var(--d1,var(--brand-amarillo))}
.jdp-sticker[data-dots]::before{top:30%}
.jdp-sticker[data-dots]::after{top:calc(30% + var(--s)*.16);background:var(--d2,var(--brand-naranja))}
.jdp-sticker--sm{--s:56px}.jdp-sticker--lg{--s:140px}

/* ── RECURSOS GRÁFICOS ────────────────────────────────── */
.jdp-dots{--d:var(--dot-md);--c1:var(--brand-plomo);--c2:var(--brand-plomo);display:inline-grid;gap:calc(var(--d)*.6)}
.jdp-dots::before,.jdp-dots::after{content:"";width:var(--d);height:var(--d);border-radius:50%;background:var(--c1)}
.jdp-dots::after{background:var(--c2)}
.jdp-dots--sm{--d:var(--dot-sm)}.jdp-dots--lg{--d:var(--dot-lg)}.jdp-dots--xl{--d:32px}
.jdp-dots--marca{--c1:var(--brand-rojo);--c2:var(--brand-amarillo)}
.jdp-dots--calida{--c1:var(--brand-amarillo);--c2:var(--brand-naranja)}
.jdp-dots--blanco{--c1:#fff;--c2:#fff}

.jdp-semis{--s:120px;display:grid;gap:calc(var(--s)*.5);width:calc(var(--s)/2);overflow:hidden}
.jdp-semis i{display:block;width:var(--s);height:var(--s);border-radius:50%}
.jdp-semis i:nth-child(1){background:var(--brand-plomo)}
.jdp-semis i:nth-child(2){background:var(--brand-rojo)}
.jdp-semis i:nth-child(3){background:var(--brand-amarillo)}
.jdp-semis i:nth-child(4){background:var(--brand-naranja)}
.jdp-semis--left i{transform:translateX(-50%)}

.jdp-gradient-bar{height:6px;background:var(--gradient-brand)}
.jdp-gradient-field{background:var(--gradient-brand);color:#fff}

.jdp-grid-paper{background-color:var(--color-paper);
  background-image:linear-gradient(var(--color-hairline) 1px,transparent 1px),linear-gradient(90deg,var(--color-hairline) 1px,transparent 1px);
  background-size:16px 16px}
.jdp-grid-paper--strong{background-image:linear-gradient(var(--color-hairline-strong) 1px,transparent 1px),linear-gradient(90deg,var(--color-hairline-strong) 1px,transparent 1px),linear-gradient(var(--color-hairline) 1px,transparent 1px),linear-gradient(90deg,var(--color-hairline) 1px,transparent 1px);
  background-size:80px 80px,80px 80px,16px 16px,16px 16px}

.jdp-frame{position:relative;display:block}
.jdp-frame img{width:100%;height:100%;object-fit:cover;display:block}
.jdp-frame--rect{aspect-ratio:4/5}
.jdp-frame--circle{aspect-ratio:1;border-radius:50%;overflow:hidden}
.jdp-frame--sun{aspect-ratio:4/5;isolation:isolate}
.jdp-frame--sun::before{content:"";position:absolute;z-index:-1;width:62%;aspect-ratio:1;border-radius:50%;right:-14%;top:-10%;background:var(--sun,var(--brand-amarillo))}
.jdp-frame--passe{aspect-ratio:4/5;padding:14px 14px 48px;background:#fff;box-shadow:var(--shadow-2)}
.jdp-frame--passe figcaption{position:absolute;left:14px;bottom:14px;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}

.jdp-highlight{background:linear-gradient(transparent 55%,rgba(238,163,67,.42) 55%,rgba(238,163,67,.42) 92%,transparent 92%);padding:0 .08em}
.jdp-underline{text-decoration:underline;text-decoration-color:var(--brand-rojo);text-decoration-thickness:2px;text-underline-offset:.18em}

/* ── Capa web del theme (maqueta v2 aprobada por Jean, 31/10/2026) ──
   Decisiones de Jean (31/10/2026): fondo blanco, tipografía más grande y legible,
   más movimiento. Tipografía web: Crimson Pro + Josefin Slab SemiBold (600) en menú,
   botones y etiquetas, porque el 300 no se leía. */
:root{
  --font-serif:"Crimson Pro",Georgia,"Times New Roman",serif;
  --font-slab:"Josefin Slab",Rockwell,serif;
  --color-paper:#FFFFFF;
  --type-body:400 20px/1.65 var(--font-serif);
  --type-small:400 18px/1.55 var(--font-serif);
  --type-caption:400 16px/1.5 var(--font-serif);
  --type-lead:400 24px/1.5 var(--font-serif);
  --type-h2:400 clamp(40px,4.6vw,64px)/1.06 var(--font-serif);
  --type-h3:400 clamp(26px,2.4vw,32px)/1.2 var(--font-serif);
  --type-h4:400 24px/1.25 var(--font-serif);
  --type-quote:400 22px/1.45 var(--font-serif);
  --type-label:600 15px/1.25 var(--font-slab);
  --tracking-label:.12em;
  --type-button:600 17px/1 var(--font-slab);
  --tracking-button:.02em;
  --type-nav:600 17px/1 var(--font-slab);
  --container:1240px;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --pilar-cuerpo:var(--brand-naranja);
  --pilar-mente:var(--brand-amarillo);
  --pilar-alma:var(--brand-rojo);
  --pilar-espiritu:var(--brand-plomo);
}
@media (max-width:720px){:root{
  --type-body:400 19px/1.6 var(--font-serif);
  --type-lead:400 21px/1.5 var(--font-serif);
}}
html{scroll-padding-top:96px}
body{background:#fff;overflow-x:clip}
p{margin:0 0 1em}
.wrap{max-width:var(--container);margin:0 auto;padding:0 32px}
.section{position:relative;padding:120px 0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--brand-plomo);color:#fff;padding:12px 18px;text-decoration:none}
.skip:focus{top:12px}
.eyebrow{display:inline-flex;align-items:center;gap:12px;margin:0 0 20px;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.eyebrow .jdp-dots{--d:7px}
.section-head{max-width:760px;margin-bottom:56px}
h2{font:var(--type-h2)}
.jdp-btn{text-transform:none;min-height:54px;padding:0 30px;position:relative;overflow:hidden;isolation:isolate}
.jdp-btn--lg{min-height:60px;padding:0 36px;font-size:18px}
.jdp-btn--sm{min-height:46px;padding:0 22px;font-size:16px}
.jdp-btn--primary::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--color-action-hover);transform:translateY(101%);transition:transform 420ms var(--ease-out)}
.jdp-btn--primary:hover::after{transform:none}
.jdp-btn--primary:hover{background:var(--color-action)}
.jdp-btn:active{transform:scale(.97)}
.jdp-btn .arr{width:20px;height:20px;transition:transform 320ms var(--ease-out)}
.jdp-btn:hover .arr{transform:translateX(4px)}
.jdp-link-arrow{text-transform:none;letter-spacing:.02em;font-size:17px;border-bottom:0;background:linear-gradient(var(--brand-rojo),var(--brand-rojo)) left bottom/100% 1.5px no-repeat;transition:background-size 420ms var(--ease-out)}
.jdp-link-arrow:hover{background-size:0 1.5px}
.jdp-link-arrow svg{width:18px;height:18px}

/* Barra de progreso de lectura con el degradado de marca */
.progress{position:fixed;left:0;top:0;z-index:70;height:4px;width:100%;background:var(--gradient-brand);transform-origin:0 50%;transform:scaleX(0)}

/* Cabecera */
.site-head{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.3) blur(12px);-webkit-backdrop-filter:saturate(1.3) blur(12px);
  transition:transform 420ms var(--ease-out),box-shadow 320ms var(--ease)}
.site-head.is-scrolled{box-shadow:0 1px 0 var(--color-hairline)}
.site-head.is-hidden{transform:translateY(-100%)}
.site-head .jdp-nav{background:transparent;border:0;max-width:var(--container);margin:0 auto;padding:0 32px;min-height:84px;transition:min-height 320ms var(--ease)}
.site-head.is-scrolled .jdp-nav{min-height:70px}
.logo{display:inline-flex;color:var(--brand-plomo)}
.logo svg{height:32px;width:auto}
.jdp-nav__links{gap:34px}
.jdp-nav__links a{font:var(--type-nav);letter-spacing:.01em;text-transform:none;color:var(--color-ink);padding:8px 0;border:0;position:relative}
.jdp-nav__links a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1.5px;background:var(--brand-rojo);transform:scaleX(0);transform-origin:right;transition:transform 380ms var(--ease-out)}
.jdp-nav__links a:hover::after{transform:scaleX(1);transform-origin:left}
.menu-panel{position:fixed;inset:0;z-index:80;background:#fff;display:flex;flex-direction:column;padding:16px 20px 32px;
  clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path 600ms var(--ease-out),visibility 600ms}
.menu-panel.is-open{clip-path:inset(0);visibility:visible}
.menu-panel__top{display:flex;justify-content:space-between;align-items:center;min-height:52px}
.menu-panel ul{list-style:none;margin:48px 0 auto;padding:0;display:grid;gap:10px}
.menu-panel ul a{font:400 42px/1.2 var(--font-serif);color:var(--color-ink);text-decoration:none;display:inline-block;opacity:0;transform:translateY(24px);transition:opacity 500ms var(--ease-out),transform 500ms var(--ease-out)}
.menu-panel.is-open ul a{opacity:1;transform:none}
.menu-panel.is-open li:nth-child(2) a{transition-delay:50ms}.menu-panel.is-open li:nth-child(3) a{transition-delay:100ms}
.menu-panel.is-open li:nth-child(4) a{transition-delay:150ms}.menu-panel.is-open li:nth-child(5) a{transition-delay:200ms}.menu-panel.is-open li:nth-child(6) a{transition-delay:250ms}
@media (min-width:1080px){.jdp-nav__menu{display:none}}
@media (max-width:1079px){.jdp-nav__links,.jdp-nav__cta{display:none}.jdp-nav__menu{display:inline-grid}}

/* Hero */
.hero{position:relative;min-height:calc(100svh - 84px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;overflow:clip}
.hero__text{display:flex;flex-direction:column;justify-content:center;padding:64px 48px 96px max(32px,calc((100vw - var(--container))/2 + 32px));position:relative;z-index:2}
.hero h1{font:400 clamp(56px,6.6vw,112px)/.94 var(--font-serif);color:var(--color-ink);letter-spacing:-.02em;margin:0 0 36px}
.hero h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.06em}
.hero h1 .w>span{display:inline-block;transform:translateY(105%);transition:transform 1100ms var(--ease-out)}
.hero h1 .w:nth-child(2)>span{transition-delay:120ms}.hero h1 .w:nth-child(3)>span{transition-delay:240ms}
.is-loaded .hero h1 .w>span{transform:none}
.colon{display:inline-grid;gap:.1em;vertical-align:.06em;margin-left:.06em}
.colon::before,.colon::after{content:"";width:.14em;height:.14em;border-radius:50%;background:var(--brand-rojo);transform:scale(0);transition:transform 700ms cubic-bezier(.34,1.56,.64,1) 900ms}
.colon::after{background:var(--brand-amarillo);transition-delay:1050ms}
.is-loaded .colon::before,.is-loaded .colon::after{transform:scale(1)}
.hero .jdp-lead{max-width:30ch;margin-bottom:40px}
.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px}
.fade-up{opacity:0;transform:translateY(20px);transition:opacity 900ms var(--ease-out),transform 900ms var(--ease-out)}
.is-loaded .fade-up{opacity:1;transform:none}
.is-loaded .d1{transition-delay:450ms}.is-loaded .d2{transition-delay:600ms}.is-loaded .d3{transition-delay:750ms}.is-loaded .d4{transition-delay:1100ms}
.creds{display:flex;flex-wrap:wrap;gap:12px 28px;margin:56px 0 0;padding:24px 0 0;border-top:var(--border-hair);list-style:none}
.creds li{display:flex;align-items:center;gap:10px;font:var(--type-label);letter-spacing:.06em;color:var(--color-body)}
.creds svg{width:22px;height:22px;color:var(--color-action)}
.hero__media{position:relative;clip-path:inset(100% 0 0 0);transition:clip-path 1400ms var(--ease-out) 150ms}
.is-loaded .hero__media{clip-path:inset(0)}
.hero__media img{position:absolute;inset:-6% 0 0;width:100%;height:106%;object-fit:cover;object-position:50% 30%;transform:scale(1.14);transition:transform 2200ms var(--ease-out) 150ms;will-change:transform}
.is-loaded .hero__media img{transform:scale(1)}
.hero__semis{position:absolute;left:0;bottom:56px;z-index:2}
.hero__semis.jdp-semis{--s:64px}
.hero__semis i{transform:translateX(-100%);transition:transform 900ms var(--ease-out)}
.is-loaded .hero__semis i{transform:translateX(-50%)}
.is-loaded .hero__semis i:nth-child(1){transition-delay:1200ms}.is-loaded .hero__semis i:nth-child(2){transition-delay:1300ms}
.is-loaded .hero__semis i:nth-child(3){transition-delay:1400ms}.is-loaded .hero__semis i:nth-child(4){transition-delay:1500ms}
.float-card{position:absolute;right:40px;bottom:48px;z-index:3;display:flex;align-items:center;gap:16px;max-width:360px;padding:18px 22px 18px 18px;background:rgba(255,255,255,.94);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow-3);text-decoration:none;color:inherit;
  opacity:0;transform:translateY(24px);transition:opacity 900ms var(--ease-out) 1400ms,transform 900ms var(--ease-out) 1400ms,box-shadow 320ms}
.is-loaded .float-card{opacity:1;transform:none;animation:floaty 6s ease-in-out 2.4s infinite}
.float-card:hover{box-shadow:0 2px 4px rgba(39,39,39,.08),0 30px 60px rgba(39,39,39,.2)}
.float-card .mono{flex:none;width:56px;height:56px;display:grid;place-items:center}
.float-card .mono svg{width:56px;height:56px}
.float-card strong{display:block;font:400 22px/1.2 var(--font-serif);color:var(--color-ink)}
.float-card span{font:var(--type-caption);color:var(--color-body)}
@keyframes floaty{50%{transform:translateY(-8px)}}
.scroll-cue{position:absolute;left:max(32px,calc((100vw - var(--container))/2 + 32px));bottom:28px;display:flex;align-items:center;gap:12px;margin:0;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-body);z-index:2}
.scroll-cue i{width:1.5px;height:36px;background:var(--color-hairline-strong);position:relative;overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;inset:0;background:var(--brand-rojo);animation:cue 2.2s var(--ease-out) infinite}
@keyframes cue{0%{transform:translateY(-100%)}60%,100%{transform:translateY(100%)}}

/* Revelado al hacer scroll */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity 900ms var(--ease-out),transform 900ms var(--ease-out);transition-delay:var(--rd,0ms)}
.js .reveal.is-in{opacity:1;transform:none}
.js .reveal-img{clip-path:inset(0 0 100% 0);transition:clip-path 1200ms var(--ease-out)}
.js .reveal-img img{transform:scale(1.12);transition:transform 1600ms var(--ease-out)}
.js .reveal-img.is-in{clip-path:inset(0)}
.js .reveal-img.is-in img{transform:none}

/* Club (producto principal) */
.club-card{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--brand-plomo);color:var(--color-on-dark-soft);overflow:hidden}
.club-card__media{position:relative;min-height:640px}
.club-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.club-card__body{position:relative;padding:72px 72px 64px}
.club-card .eyebrow{color:#fff}
.club-card h2{color:#fff;margin-bottom:20px}
.club-card .jdp-lead{color:var(--color-on-dark-soft);max-width:34ch}
.ritual{list-style:none;margin:40px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ritual li{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;padding:18px;border:1px solid rgba(255,255,255,.14);transition:background 320ms var(--ease),border-color 320ms var(--ease),opacity 900ms var(--ease-out),transform 900ms var(--ease-out)}
.ritual li:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.3)}
.ritual .ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff}
.ritual .ic svg{width:22px;height:22px}
.ritual b{display:block;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--brand-amarillo);margin-bottom:6px}
.ritual span span{font:400 19px/1.4 var(--font-serif);color:#fff}
.club-card__buy{display:flex;flex-wrap:wrap;align-items:center;gap:20px 36px;padding-top:32px;border-top:1px solid rgba(255,255,255,.14)}
.club-card__price{font:400 64px/1 var(--font-serif);color:#fff;margin:0}
.club-card__price small{display:block;margin-top:8px;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-on-dark-soft)}
.club-card .jdp-dots-deco{position:absolute;right:40px;top:40px}
.club-card .jdp-dots-deco.jdp-dots{--d:18px}

/* Apetito creativo */
.apetito__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:end;margin-bottom:64px}
.apetito__head h2{font:400 clamp(56px,7vw,104px)/.95 var(--font-serif);letter-spacing:-.015em}
.apetito__head p:not(.eyebrow){font:var(--type-lead);margin:0}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:96px}
.pillar{position:relative;padding:32px 28px 36px;background:#fff;border:1px solid var(--color-hairline);overflow:hidden;isolation:isolate;transition:opacity 900ms var(--ease-out),transform 500ms var(--ease-out),box-shadow 500ms var(--ease-out)}
.pillar::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--tint);transform:translateY(calc(100% - 6px));transition:transform 600ms var(--ease-out)}
.pillar:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}
.pillar:hover::before{transform:none}
.pillar .jdp-sticker{--s:64px;margin-bottom:28px;transition:transform 600ms cubic-bezier(.34,1.56,.64,1)}
.pillar:hover .jdp-sticker{transform:scale(1.1)}
.pillar h3{font:400 40px/1 var(--font-serif);margin-bottom:12px}
.pillar p{margin:0;font:var(--type-small)}
.pillar .q{display:block;margin-top:18px;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-body)}
.pillar--cuerpo{--tint:var(--tint-naranja-soft)}.pillar--mente{--tint:var(--tint-amarillo-soft)}.pillar--alma{--tint:var(--tint-rojo-soft)}.pillar--espiritu{--tint:var(--color-surface)}

.year__bar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:12px}
.year__bar h3{font:var(--type-h3)}
.year__ctrl{display:flex;gap:10px}
.year{position:relative}
.year__track{list-style:none;margin:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:40px 2px 24px;scrollbar-width:none;cursor:grab}
.year__track::-webkit-scrollbar{display:none}
.year__track.is-drag{cursor:grabbing;scroll-snap-type:none;user-select:none}
.year__line{position:absolute;left:0;right:0;top:15px;height:4px;background:var(--color-hairline)}
.year__line i{position:absolute;inset:0;background:var(--gradient-brand);transform-origin:0 50%;transform:scaleX(var(--p,.08));transition:transform 200ms linear}
.month{position:relative;scroll-snap-align:start;display:flex;flex-direction:column;gap:14px;min-height:300px;padding:28px 26px;border:1px solid var(--color-hairline);background:#fff;transition:transform 500ms var(--ease-out),box-shadow 500ms var(--ease-out),border-color 300ms}
.month::before{content:"";position:absolute;left:26px;top:-33px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--pc)}
.month:hover{transform:translateY(-6px);box-shadow:var(--shadow-2);border-color:transparent}
.month .m{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-body)}
.month h4{font:400 28px/1.15 var(--font-serif);color:var(--color-ink);margin:0}
.month .tbd{color:var(--color-muted)}
.month .meta{margin-top:auto;font:var(--type-caption);color:var(--color-body)}
.month[data-p=cuerpo]{--pc:var(--pilar-cuerpo)}.month[data-p=mente]{--pc:var(--pilar-mente)}.month[data-p=alma]{--pc:var(--pilar-alma)}.month[data-p=espiritu]{--pc:var(--pilar-espiritu)}
.badge-cuerpo{background:var(--tint-naranja)}.badge-mente{background:var(--tint-amarillo)}.badge-alma{background:var(--tint-rojo)}.badge-espiritu{background:var(--brand-plomo);color:#fff}
.apetito__foot{display:flex;flex-wrap:wrap;align-items:center;gap:20px 40px;margin-top:40px}
.apetito__foot p{margin:0;font:var(--type-small);color:var(--color-body)}

/* Experiencias y empresas */
.more__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.more-card{position:relative;display:block;min-height:560px;overflow:hidden;color:#fff;text-decoration:none;isolation:isolate}
.more-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1400ms var(--ease-out)}
.more-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(39,39,39,0) 15%,rgba(39,39,39,.7) 45%,rgba(39,39,39,.92) 100%)}
.more-card:hover img{transform:scale(1.06)}
.more-card__body{position:absolute;left:0;right:0;bottom:0;padding:40px}
.more-card .tag{display:inline-block;margin-bottom:16px;padding:8px 14px;border-radius:999px;background:#fff;color:var(--brand-plomo);font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase}
.more-card h3{color:#fff;font:400 clamp(34px,3.4vw,46px)/1.05 var(--font-serif);margin-bottom:12px}
.more-card p{color:#fff;max-width:40ch;margin-bottom:22px}
.more-card .go{display:inline-flex;align-items:center;gap:12px;font:var(--type-button);color:#fff}
.more-card .go i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--color-action);transition:transform 420ms var(--ease-out)}
.more-card .go svg{width:20px;height:20px}
.more-card:hover .go i{transform:translateX(6px)}

/* Sobre mí */
.about__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:96px;align-items:center}
.about__photo{position:relative}
.about__photo::before{content:"";position:absolute;width:56%;aspect-ratio:1;border-radius:50%;background:var(--brand-amarillo);right:-12%;top:-8%;z-index:0}
.about__photo .ph{position:relative;z-index:1;aspect-ratio:4/5;overflow:hidden}
.about__photo img{width:100%;height:100%;object-fit:cover}
.about .jdp-lead{color:var(--color-ink)}
.cred-list{list-style:none;margin:32px 0;padding:0;display:grid;gap:16px}
.cred-list li{display:flex;gap:16px;align-items:center;font:var(--type-small);color:var(--color-ink)}
.cred-list .ic{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--tint-rojo-soft);color:var(--color-action)}
.cred-list svg{width:22px;height:22px}
.books{margin-top:40px;padding-top:28px;border-top:var(--border-hair)}
.books ul{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.books li{padding:10px 16px;border:1px solid var(--color-hairline-strong);border-radius:999px;font:var(--type-caption);color:var(--color-ink);transition:background 300ms,border-color 300ms}
.books li:hover{background:var(--tint-amarillo-soft);border-color:var(--brand-amarillo)}

/* Testimonios: carrusel infinito */
.voices{background:var(--tint-amarillo-soft);overflow:hidden}
.voices .section-head{margin-bottom:48px}
.marquee{display:flex;overflow:hidden;padding:8px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee+.marquee{margin-top:16px}
.marquee__track{display:flex;gap:24px;padding-right:24px;width:max-content;animation:marq var(--dur-m,70s) linear infinite}
.marquee--rev .marquee__track{animation-direction:reverse}
.marquee:hover .marquee__track{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-50%)}}
.t-card{flex:none;width:420px;display:flex;flex-direction:column;gap:24px;margin:0;padding:32px;background:#fff;box-shadow:var(--shadow-1);transition:transform 420ms var(--ease-out),box-shadow 420ms}
.t-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.t-card blockquote{margin:0;font:var(--type-quote);color:var(--color-ink)}
.t-card blockquote::before{content:"";display:block;width:12px;height:28px;margin-bottom:16px;background:
  radial-gradient(circle at 50% 6px,var(--brand-rojo) 5px,transparent 5.5px),radial-gradient(circle at 50% 22px,var(--brand-amarillo) 5px,transparent 5.5px)}
.t-card figcaption{display:flex;align-items:center;gap:14px;margin-top:auto}
.t-card .jdp-avatar{--s:56px;font-size:21px}
.t-card .who{display:grid;gap:4px}
.t-card .name{font:400 24px/1.15 var(--font-serif);color:var(--color-ink)}
.t-card .role{font:var(--type-caption);color:var(--color-body)}

/* Blog */
.blog__head{display:flex;justify-content:space-between;align-items:end;gap:32px;flex-wrap:wrap;margin-bottom:40px}
.blog__head .section-head{margin-bottom:0}
.filters{position:relative;display:flex;flex-wrap:wrap;gap:4px;padding:6px;border:1px solid var(--color-hairline-strong);border-radius:999px}
.filters button{position:relative;z-index:1;min-height:44px;padding:0 18px;border:0;border-radius:999px;background:transparent;font:600 16px/1 var(--font-slab);color:var(--color-ink);cursor:pointer;transition:color 300ms}
.filters button[aria-pressed=true]{color:#fff}
.filters .pill{position:absolute;z-index:0;top:6px;left:6px;height:44px;border-radius:999px;background:var(--brand-plomo);transition:transform 500ms var(--ease-out),width 500ms var(--ease-out)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}
.post{display:flex;flex-direction:column;gap:16px;text-decoration:none;color:inherit}
.post.is-hidden{display:none}
.post .media{aspect-ratio:4/3;overflow:hidden;background:var(--color-surface)}
.post img{width:100%;height:100%;object-fit:cover;transition:transform 1200ms var(--ease-out)}
.post:hover img{transform:scale(1.06)}
.post h3{font:var(--type-h4);transition:color 300ms}
.post:hover h3{color:var(--color-action)}
.post .read{font:var(--type-label);letter-spacing:.06em;color:var(--color-body);display:inline-flex;gap:8px;align-items:center}
.post .read svg{width:16px;height:16px;transition:transform 320ms var(--ease-out)}
.post:hover .read svg{transform:translateX(4px)}
.post--feature{grid-column:span 2;grid-row:span 2}
.post--feature .media{aspect-ratio:auto;flex:1;min-height:420px}
.post--feature h3{font:var(--type-h3)}
.jdp-badge{font:var(--type-label);letter-spacing:var(--tracking-label);padding:8px 14px;align-self:start}
.blog__more{margin-top:48px}

/* Masterclass */
.master .jdp-gradient-bar{height:4px}
.master__row{display:grid;grid-template-columns:auto 1fr auto;gap:40px;align-items:center;padding-top:44px;padding-bottom:44px}
.master__row h2{font:var(--type-h4)}
.master__row p{margin:0;max-width:56ch}

/* Desde la cocina (newsletter) */
.cocina{background:var(--tint-naranja-soft)}
.cocina__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:96px;align-items:center}
.cocina__photo{aspect-ratio:4/5;overflow:hidden}
.cocina__photo img{width:100%;height:100%;object-fit:cover}
.cocina h2{font:400 clamp(52px,6vw,88px)/.98 var(--font-serif);margin-bottom:24px}
.cocina .jdp-lead{max-width:30ch}
.cocina form{margin-top:32px;display:grid;gap:16px;max-width:560px}
.jdp-subscribe{max-width:none;padding:8px 8px 8px 24px}
.jdp-subscribe input{font:var(--type-body)}
.cocina .jdp-check{max-width:none;font:var(--type-caption);color:var(--color-body)}
.form-msg{font:var(--type-small);min-height:1.5em;margin:0}
.form-msg.is-error{color:var(--color-error)}
.form-msg.is-ok{color:var(--color-success)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Pie */
.jdp-footer{position:relative;overflow:hidden;padding:0 32px 28px}
.jdp-footer>.jdp-gradient-bar{margin:0 -32px 72px}
.jdp-footer .wrap{padding:0}
.jdp-footer__top{grid-template-columns:1.4fr 1fr 1fr 1fr}
.foot-logo{color:#fff;display:inline-flex;margin-bottom:20px}
.foot-logo svg{height:76px;width:auto}
.jdp-footer p{font:var(--type-small);max-width:30ch}
.jdp-footer a{font:var(--type-small)}
.jdp-footer h4{font:var(--type-label);letter-spacing:var(--tracking-label)}
.socials{display:flex;gap:8px;margin-top:24px}
.socials .jdp-social{--s:44px}
.jdp-footer__bar,.jdp-footer__bar a{font:var(--type-caption)}
.jdp-footer__bar nav{display:flex;flex-wrap:wrap;gap:8px 22px}

/* Banner de cookies (demostración) */
.cookie{position:fixed;left:16px;bottom:16px;z-index:50;max-width:440px;background:#fff;border:var(--border-hair);box-shadow:var(--shadow-3);padding:24px;display:grid;gap:16px;
  transform:translateY(calc(100% + 32px));transition:transform 600ms var(--ease-out)}
.cookie.is-on{transform:none}
.cookie p{margin:0;font:var(--type-small)}
.cookie .cookie__title{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.cookie__actions{display:flex;flex-wrap:wrap;gap:10px}
.cookie .jdp-btn{flex:1}

@media (prefers-reduced-motion:reduce){
  .hero h1 .w>span,.fade-up,.hero__media,.hero__media img,.colon::before,.colon::after,.float-card,.hero__semis i,.js .reveal,.js .reveal-img,.js .reveal-img img,.menu-panel ul a{transition:none!important;transform:none!important;opacity:1!important;clip-path:none!important}
  .hero__semis i{transform:translateX(-50%)!important}
  .float-card{animation:none!important}
  .marquee__track{animation:none}.marquee{overflow-x:auto}
  .scroll-cue i::after{animation:none}
}

/* Responsive */
@media (max-width:1080px){
  .club-card{grid-template-columns:1fr}
  .club-card__media{min-height:420px}
  .club-card__body{padding:48px 40px}
  .pillars{grid-template-columns:1fr 1fr}
  .posts{grid-template-columns:1fr 1fr}
  .post--feature{grid-column:span 2;grid-row:auto}
}
@media (max-width:900px){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero__media{order:-1;height:64svh;min-height:420px}
  .hero__text{padding:40px 20px 72px}
  .scroll-cue{display:none}
  .hero__semis.jdp-semis{--s:36px;bottom:auto;top:24px}
  .float-card{right:16px;left:16px;bottom:16px;max-width:none}
  .apetito__head,.about__grid,.cocina__grid{grid-template-columns:1fr;gap:40px}
  .more__grid{grid-template-columns:1fr}
  .more-card{min-height:480px}
  .master__row{grid-template-columns:1fr;gap:16px}
  .jdp-footer__top{grid-template-columns:1fr 1fr}
  .jdp-footer__brand{grid-column:1/-1}
}
@media (max-width:720px){
  .wrap,.site-head .jdp-nav{padding:0 20px}
  .section{padding:80px 0}
  .ritual{grid-template-columns:1fr}
  .club-card__body{padding:40px 24px}
  .club-card__price{font-size:52px}
  .club-card .jdp-dots-deco{right:24px;top:24px}
  .pillars{grid-template-columns:1fr}
  .year__track{grid-auto-columns:82%}
  .posts{grid-template-columns:1fr}
  .post--feature{grid-column:auto}
  .post--feature .media{min-height:0;aspect-ratio:4/3;flex:none}
  .t-card{width:300px;padding:26px}
  .more-card__body{padding:28px}
  .about__photo::before{right:-6%}
  .jdp-footer{padding:0 20px 24px}
  .jdp-footer>.jdp-gradient-bar{margin:0 -20px 56px}
  .jdp-footer__top{grid-template-columns:1fr}
  .cookie{left:8px;right:8px;bottom:8px;max-width:none}
}


/* ── Plantillas de WordPress ─────────────────────────── */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.screen-reader-text:focus{position:fixed!important;left:16px;top:16px;width:auto;height:auto;clip:auto;z-index:100;background:#fff;padding:12px 18px}
.wrap--reading{max-width:calc(var(--reading) + 64px)}
.section--tight{padding:56px 0 120px}
.site-main{display:block}

/* Cabecera: menú de WordPress y acciones */
.jdp-nav__links{list-style:none;margin:0;padding:0}
.jdp-nav__links .current-menu-item>a::after,.jdp-nav__links .current_page_item>a::after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:12px}
.cart-link{position:relative}
.cart-link svg{width:20px;height:20px}
.cart-link__count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--color-action);color:#fff;font:600 12px/20px var(--font-slab);text-align:center}
.custom-logo-link img{height:32px;width:auto}
.admin-bar .site-head{top:32px}
.admin-bar .menu-panel{top:32px}
@media (max-width:782px){.admin-bar .site-head{top:46px}.admin-bar .menu-panel{top:46px}}

/* Encabezado de página */
.page-head{padding:96px 0 24px}
.page-head__title{font:400 clamp(48px,6vw,88px)/1 var(--font-serif);letter-spacing:-.015em;max-width:18ch}
.page-head__lead{margin-top:24px;max-width:46ch;color:var(--color-body)}
.page-head__lead p{margin:0}

/* Contenido editorial (artículos y páginas sin Elementor) */
.entry-content{font:var(--type-body);color:var(--color-body)}
.entry-content>*+*{margin-top:1.1em}
.entry-content h2{font:var(--type-h3);margin-top:2em}
.entry-content h3{font:var(--type-h4);margin-top:1.8em}
.entry-content a{color:var(--color-ink)}
.entry-content ul,.entry-content ol{padding-left:1.2em}
.entry-content li+li{margin-top:.4em}
.entry-content blockquote{margin:2em 0;padding:8px 0 8px 32px;border-left:3px solid var(--brand-rojo);font:var(--type-quote);color:var(--color-ink)}
.entry-content img,.entry-content figure{max-width:100%;height:auto}
.entry-content figure{margin:2em 0}
.entry-content figcaption,.wp-caption-text{font:var(--type-caption);color:var(--color-muted);margin-top:10px}
.entry-content table{width:100%;border-collapse:collapse;font:var(--type-small)}
.entry-content th,.entry-content td{border-bottom:var(--border-hair);padding:12px 8px;text-align:left}
.entry-content hr{border:0;height:1px;background:var(--color-hairline);margin:3em 0}
.alignwide{margin-left:-80px;margin-right:-80px;max-width:none}
.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw}
.aligncenter{margin-left:auto;margin-right:auto}
.legal h2{font:var(--type-h4)}

/* Artículo */
.article__head{padding:80px 0 40px}
.article__head .jdp-badge{text-decoration:none}
.article__title{font:400 clamp(40px,5vw,72px)/1.04 var(--font-serif);margin:24px 0 20px;letter-spacing:-.01em}
.article__lead{color:var(--color-body)}
.article__meta{display:flex;align-items:center;gap:14px;font:var(--type-label);letter-spacing:.06em;color:var(--color-body);margin:24px 0 0}
.article__meta .jdp-dots{--d:5px}
.article__media{margin:0 auto 56px}
.article__media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.article__foot{padding-bottom:64px}
.article__tags{display:flex;flex-wrap:wrap;gap:8px;margin:48px 0 0}
.article__tags a{padding:8px 14px;border:1px solid var(--color-hairline-strong);border-radius:999px;font:var(--type-caption);color:var(--color-ink);text-decoration:none}
.author-box{display:flex;gap:20px;align-items:center;margin-top:48px;padding:28px;background:var(--tint-amarillo-soft)}
.author-box .jdp-avatar{--s:88px}
.author-box__name{font:var(--type-h4);color:var(--color-ink);margin:0 0 6px}
.author-box__bio{margin:0;font:var(--type-small)}
.related{background:var(--color-paper-soft);border-top:var(--border-hair)}
.related h2{margin-bottom:40px}
.posts--three{grid-template-columns:repeat(3,1fr)}

/* Listados */
.filters--links{display:inline-flex;margin-bottom:48px}
.filters--links a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;font:600 16px/1 var(--font-slab);color:var(--color-ink);text-decoration:none;transition:background 300ms,color 300ms}
.filters--links a:hover{background:var(--color-surface)}
.filters--links a[aria-current]{background:var(--brand-plomo);color:#fff}
.media__empty{display:grid;place-items:center;width:100%;height:100%;background:var(--tint-amarillo-soft)}
.post__excerpt{margin:0;color:var(--color-body)}
.pagination{margin-top:64px}
.pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pagination .page-numbers{display:inline-grid;place-items:center;min-width:48px;height:48px;padding:0 14px;border:1px solid var(--color-hairline-strong);border-radius:999px;font:var(--type-button);color:var(--color-ink);text-decoration:none}
.pagination .page-numbers.current,.pagination .page-numbers:hover{background:var(--brand-plomo);border-color:var(--brand-plomo);color:#fff}
.pagination svg{width:18px;height:18px}
.empty-state{display:grid;justify-items:start;gap:16px;padding:48px 0}
.search-again{max-width:640px;margin-bottom:48px}
.search-form .jdp-btn{gap:8px}
.search-form input{min-height:44px}

/* 404 */
.error-404__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.error-404__code{display:flex;align-items:center;gap:.08em;font:400 clamp(120px,18vw,240px)/1 var(--font-serif);color:var(--color-ink);letter-spacing:-.04em}
.error-404__code .jdp-dots{--d:.12em}
.error-404 h1{font:var(--type-h2);margin-bottom:20px}
.error-404 .search-form{margin:32px 0}
.error-404__actions{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center}

/* Pie: menús de WordPress */
.jdp-footer .menu,.legal-menu{list-style:none;margin:0;padding:0}
.jdp-footer .menu{display:grid;gap:10px}

/* Elementor: los widgets de marca ocupan todo el ancho */
.elementor .jdp-w{width:100%}
.elementor-widget:not(:last-child){margin-block-end:0}
.jdp-elementor-page .site-main>.elementor{overflow-x:clip}

@media (max-width:1080px){
  .posts--three{grid-template-columns:1fr 1fr}
  .alignwide{margin-left:0;margin-right:0}
}
@media (max-width:900px){
  .error-404__grid{grid-template-columns:1fr;gap:24px}
}
@media (max-width:720px){
  .page-head{padding:64px 0 16px}
  .section--tight{padding:40px 0 80px}
  .posts--three{grid-template-columns:1fr}
  .filters--links{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;border-radius:12px}
  .filters--links a{flex:none}
  .author-box{flex-direction:column;align-items:flex-start}
}

/* ── Widgets de marca (plugin JuanitaEscallon Core) ──── */
[hidden]{display:none!important}
.jdp-w.bg-white{background:#fff}
.jdp-w.bg-soft{background:var(--color-paper-soft)}
.jdp-w.bg-surface{background:var(--color-surface)}
.jdp-w.bg-amarillo{background:var(--tint-amarillo-soft)}
.jdp-w.bg-naranja{background:var(--tint-naranja-soft)}
.jdp-w.bg-rojo{background:var(--tint-rojo-soft)}
.jdp-w.bg-plomo{background:var(--brand-plomo);color:var(--color-on-dark-soft)}
.jdp-w.bg-plomo :is(h1,h2,h3,h4,.eyebrow,.jdp-lead){color:#fff}
.jdp-w.bg-plomo .jdp-link-arrow{color:#fff}
.jdp-w.space-top0{padding-top:0}
.jdp-w.space-bottom0{padding-bottom:0}
.jdp-w.space-tight{padding:64px 0}
.jdp-w.space-none{padding:0}
.section-head .jdp-lead{margin-top:20px;color:var(--color-body)}
.jdp-heading .section-head{margin-bottom:0}
.jdp-heading.align-center .section-head{margin-left:auto;margin-right:auto;text-align:center}
.jdp-heading.align-center .eyebrow{justify-content:center}
.jdp-heading.size-xl .jdp-heading__title{font:400 clamp(52px,7vw,104px)/.98 var(--font-serif);letter-spacing:-.015em}
.jdp-heading.size-xl .section-head{max-width:900px}
.jdp-heading__cta{margin-top:32px}
.apetito__title{font:400 clamp(56px,7vw,104px)/.95 var(--font-serif);letter-spacing:-.015em;color:var(--color-ink)}
.club-card h1{color:#fff;margin-bottom:20px;font:var(--type-h2)}
.cocina__title{font:400 clamp(52px,6vw,88px)/.98 var(--font-serif);margin-bottom:24px;color:var(--color-ink)}
.no-photo .cocina__grid{grid-template-columns:minmax(0,760px)}
.more__grid.cols-3{grid-template-columns:repeat(3,1fr)}
.about__lead{margin-top:24px}
.about__content p{margin-bottom:1em}

/* Texto e imagen */
.split__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:96px;align-items:center}
.img-right .split__grid{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.img-right .split__photo{order:2}
.img-none .split__grid{grid-template-columns:minmax(0,1fr);max-width:calc(var(--reading) + 64px)}
.no-sun::before{display:none}
.split__content{margin:20px 0 8px}
.split__text>.jdp-btn,.split__text>.jdp-link-arrow{margin-top:8px}

/* Formularios */
.contact__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;align-items:start}
.contact__grid h2{margin-bottom:16px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.jdp-form .jdp-field{max-width:none}
.jdp-field--wide{grid-column:1/-1}
.jdp-form select.jdp-input{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23272727' stroke-width='1.5' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;padding-right:44px}
.jdp-form .jdp-check{margin:20px 0}
.jdp-form .jdp-check a{color:inherit}
.jdp-form--subscribe{display:grid;gap:16px;margin-top:32px;max-width:560px}
.jdp-form--subscribe .jdp-check{margin:0;max-width:none;font:var(--type-caption);color:var(--color-body)}
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.jdp-btn[aria-busy=true]{opacity:.75;cursor:progress}
.jdp-btn:disabled{pointer-events:none}
.jdp-w.bg-plomo .jdp-check a{color:#fff}
.jdp-w.bg-plomo .form-msg.is-ok{color:#A8DDBB}
.jdp-w.bg-plomo .form-msg.is-error{color:#FFB4AB}

/* Banner de cookies */
.cookie__prefs{display:grid;gap:10px}
.cookie__config{justify-self:start;background:none;border:0;padding:4px 0;cursor:pointer;font:var(--type-caption)}

@media (max-width:1080px){.more__grid.cols-3{grid-template-columns:1fr 1fr}}
@media (max-width:900px){
  .split__grid,.img-right .split__grid,.contact__grid{grid-template-columns:1fr;gap:40px}
  .img-right .split__photo{order:-1}
  .more__grid.cols-3{grid-template-columns:1fr}
}
@media (max-width:720px){
  .form-grid{grid-template-columns:1fr}
  .jdp-w.space-tight{padding:48px 0}
}

/* Fotos dentro de Elementor: su regla ".elementor img{height:auto}" pisaba el alto de las fotos del theme y dejaba una franja en blanco. Con ".elementor" delante estas reglas ganan sin !important. */
.elementor .hero__media img{height:106%;max-width:none}
.elementor :is(.club-card__media,.about__photo .ph,.cocina__photo,.more-card,.post,.jdp-card__media,.jdp-frame) img{height:100%;max-width:none}


/* ══ JuanitaEscallon 1.0.0: ajustes de la revisión de Jean (01/11/2026) ══════════════════ */

/* Barra de progreso: queda por encima de la barra de administración de WordPress (la tapaba con la sesión iniciada) */
.progress{z-index:100001;height:4px}

/* Titular de portada: los dos puntos ya no empujan la línea base de la última palabra ("ideas" quedaba más alta que "tus") */
.hero h1 .w{vertical-align:baseline}
.colon{display:inline-block;position:relative;width:.18em;height:.36em;margin-left:.07em;vertical-align:baseline}
.colon::before,.colon::after{position:absolute;left:0}
.colon::before{bottom:.21em}
.colon::after{bottom:0}

/* Cabecera: carrito */
.cart-link svg{width:21px;height:21px}

/* Pie: enlaces legales en una sola línea y crédito del desarrollo */
.jdp-footer__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px}
.jdp-footer__legal{flex:1 1 auto;display:flex;justify-content:center}
.jdp-footer .legal-menu{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 26px;list-style:none;margin:0;padding:0}
.jdp-footer .legal-menu a{white-space:nowrap}
.jdp-footer__credit a{color:#fff;text-decoration:underline;text-decoration-color:var(--brand-rojo);text-underline-offset:.22em}
.jdp-footer__credit a:hover{color:var(--brand-amarillo)}
@media (max-width:900px){
  .jdp-footer__bar{flex-direction:column;align-items:flex-start;gap:14px}
  .jdp-footer__legal{justify-content:flex-start}
  .jdp-footer .legal-menu{justify-content:flex-start;gap:6px 20px}
}

/* ── Formularios de suscripción: nombre + correo y casilla de privacidad rediseñada ── */
.jdp-subscribe--duo{padding:8px 8px 8px 0}
.jdp-subscribe--duo input{padding:0 22px;min-height:48px}
.jdp-subscribe__sep{flex:none;width:1px;align-self:stretch;margin:8px 0;background:var(--color-hairline-strong)}
.jdp-subscribe--duo input[name=name]{flex:0 1 38%}
@media (max-width:640px){
  .jdp-subscribe--duo{flex-direction:column;align-items:stretch;gap:8px;padding:8px;border-radius:var(--radius-sm)}
  .jdp-subscribe--duo input{padding:12px 14px;min-height:50px;border:1px solid var(--color-hairline);border-radius:var(--radius-xs)}
  .jdp-subscribe--duo input[name=name]{flex:none}
  .jdp-subscribe__sep{display:none}
}
.jdp-consent{position:relative;display:inline-flex;align-items:flex-start;gap:14px;max-width:none;cursor:pointer;font:var(--type-caption);color:var(--color-body);-webkit-tap-highlight-color:transparent}
.jdp-consent input{position:absolute;left:0;top:0;width:26px;height:26px;margin:0;opacity:0;cursor:pointer}
.jdp-consent__box{position:relative;flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--brand-plomo);background:#fff;display:grid;place-items:center;
  transition:background-color 260ms var(--ease-out),border-color 260ms var(--ease-out),transform 260ms var(--ease-out)}
.jdp-consent__box::after{content:"";width:7px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg) scale(0);transition:transform 320ms cubic-bezier(.34,1.56,.64,1)}
.jdp-consent:hover .jdp-consent__box{border-color:var(--color-action)}
.jdp-consent input:checked+.jdp-consent__box{background:var(--color-action);border-color:var(--color-action)}
.jdp-consent input:checked+.jdp-consent__box::after{transform:translateY(-1px) rotate(45deg) scale(1)}
.jdp-consent input:focus-visible+.jdp-consent__box{box-shadow:var(--focus-ring)}
.jdp-consent input[aria-invalid=true]+.jdp-consent__box{border-color:var(--color-error);box-shadow:0 0 0 3px var(--tint-rojo-soft)}
.jdp-consent__text{padding-top:2px}
.jdp-consent__text a{color:inherit;text-decoration:underline;text-decoration-color:var(--brand-rojo);text-underline-offset:.2em}
.jdp-w.bg-plomo .jdp-consent,.jdp-w.bg-plomo .jdp-consent__text a{color:var(--color-on-dark-soft)}
.jdp-w.bg-plomo .jdp-consent__box{background:transparent;border-color:#fff}
.jdp-form--subscribe .jdp-consent{margin:0}
.jdp-form__note{margin:0;font:var(--type-caption);color:var(--color-muted)}

/* ── Blog: suscripción al final del artículo (más ligera que el bloque oscuro anterior) ── */
.article__subscribe{padding-bottom:96px}
.single-cta{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start;margin-top:24px;padding:48px 44px 44px;background:var(--tint-naranja-soft);color:var(--color-body);overflow:hidden}
.single-cta::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--gradient-brand)}
.single-cta .eyebrow{margin-bottom:12px}
.single-cta h2{font:400 clamp(34px,3.4vw,44px)/1.02 var(--font-serif);margin:0 0 12px}
.single-cta p{margin:0;font:var(--type-small)}
.single-cta .jdp-form--subscribe{margin:0;max-width:none}
@media (max-width:720px){.single-cta{padding:40px 22px 28px}}

/* ── Comentarios ── */
.article__comments{padding-bottom:24px}
.comments{margin-top:24px;padding-top:56px;border-top:var(--border-hair)}
.comments__head{margin-bottom:32px}
.comments__head .eyebrow{margin-bottom:12px}
.comments__title{font:var(--type-h3)}
.comment-list,.comment-list .children{list-style:none;margin:0;padding:0}
.comment-list{display:grid;gap:16px;margin-bottom:56px}
.comment-list .children{display:grid;gap:16px;margin-top:16px;padding-left:40px;border-left:1px solid var(--color-hairline)}
.comment-card{padding:24px 26px 20px;background:#fff;border:var(--border-hair);transition:box-shadow var(--dur) var(--ease)}
.comment-card:hover{box-shadow:var(--shadow-1)}
.comment--author>.comment-card{background:var(--tint-rojo-soft);border-color:transparent}
.comment-card__head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.comment-card .jdp-avatar{--s:48px;font-size:18px}
.jdp-avatar--rojo{background:var(--tint-rojo)}.jdp-avatar--amarillo{background:var(--tint-amarillo)}.jdp-avatar--naranja{background:var(--tint-naranja)}
.comment-card__who{display:grid;gap:2px}
.comment-card__name{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font:400 22px/1.2 var(--font-serif);color:var(--color-ink)}
.comment-card__name .jdp-badge{padding:5px 10px;font-size:13px}
.comment-card__date{font:var(--type-caption);color:var(--color-muted);text-decoration:none}
.comment-card__text{font:var(--type-small);color:var(--color-body)}
.comment-card__text p:last-child{margin-bottom:0}
.comment-card__pending{font:var(--type-caption);color:var(--color-action)}
.comment-card__reply{margin-top:12px}
.comment-card__reply a{display:inline-flex;align-items:center;gap:8px;font:var(--type-label);letter-spacing:.04em;color:var(--color-ink);text-decoration:none;padding:6px 0;background:linear-gradient(var(--brand-rojo),var(--brand-rojo)) left bottom/100% 1.5px no-repeat;transition:background-size 420ms var(--ease-out)}
.comment-card__reply a:hover{background-size:0 1.5px}
.comments__closed{font:var(--type-small);color:var(--color-muted)}
.jdp-respond{position:relative;padding:40px 40px 36px;background:var(--color-paper-soft);border:var(--border-hair)}
.jdp-respond::before{content:"";position:absolute;left:40px;top:-1px;width:64px;height:3px;background:var(--color-action)}
.comment-reply-title{font:var(--type-h3);margin:0 0 8px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px}
.comment-reply-title small a{font:var(--type-label);color:var(--color-action)}
.comment-notes,.logged-in-as{font:var(--type-caption);color:var(--color-muted);margin:0 0 24px}
.logged-in-as a{color:var(--color-ink)}
.jdp-comment-form{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.jdp-comment-form>*{grid-column:1/-1;margin:0}
.jdp-comment-form .comment-form-author,.jdp-comment-form .comment-form-email{grid-column:auto}
.jdp-comment-form .jdp-field{max-width:none}
.jdp-comment-form .required{color:var(--color-action)}
.jdp-comment-form textarea.jdp-input{min-height:160px}
.jdp-comment-form .comment-form-cookies-consent .jdp-check{max-width:none;font:var(--type-caption)}
.jdp-comment-form .form-submit{margin-top:4px}
@media (max-width:720px){.jdp-respond{padding:32px 20px 24px}.jdp-respond::before{left:20px}.jdp-comment-form{grid-template-columns:1fr}.comment-list .children{padding-left:16px}}

/* ── Fotos con decoración: círculo, recuadro o cintillo, en cualquier color de la paleta ── */
.ph-deco{position:relative;isolation:isolate;--deco:var(--brand-amarillo);--off:24px}
.ph-deco::before{content:none}
.ph-deco .ph{position:relative;z-index:1}
.ph-deco.deco-circle::before{content:"";position:absolute;z-index:0;width:56%;aspect-ratio:1;border-radius:50%;background:var(--deco);right:-12%;top:-8%;left:auto;bottom:auto}
.ph-deco.deco-circle.deco-pos-tl::before{left:-12%;right:auto}
.ph-deco.deco-circle.deco-pos-br::before{top:auto;bottom:-8%}
.ph-deco.deco-circle.deco-pos-bl::before{top:auto;bottom:-8%;left:-12%;right:auto}
.ph-deco.deco-frame::before{content:"";position:absolute;z-index:0;inset:0;width:auto;height:auto;aspect-ratio:auto;border-radius:0;background:none;border:2px solid var(--deco);transform:translate(var(--off),calc(var(--off) * -1))}
.ph-deco.deco-frame.deco-pos-tl::before{transform:translate(calc(var(--off) * -1),calc(var(--off) * -1))}
.ph-deco.deco-frame.deco-pos-br::before{transform:translate(var(--off),var(--off))}
.ph-deco.deco-frame.deco-pos-bl::before{transform:translate(calc(var(--off) * -1),var(--off))}
.ph-deco.deco-frame.deco-c-degradado::before{border-image:var(--gradient-brand) 1}
.ph-deco.deco-band{padding:14px;background:var(--deco)}
.ph-deco.deco-band::before{content:none}
.ph-deco.deco-band.deco-c-degradado{background:var(--gradient-brand)}
.ph-deco.deco-c-amarillo{--deco:var(--brand-amarillo)}
.ph-deco.deco-c-naranja{--deco:var(--brand-naranja)}
.ph-deco.deco-c-rojo{--deco:var(--brand-rojo)}
.ph-deco.deco-c-plomo{--deco:var(--brand-plomo)}
.ph-deco.deco-c-arena{--deco:var(--color-surface)}
.ph-deco.deco-c-tinte-rojo{--deco:var(--tint-rojo)}
.ph-deco.deco-c-tinte-amarillo{--deco:var(--tint-amarillo)}
.ph-deco.deco-c-tinte-naranja{--deco:var(--tint-naranja)}
.ph-deco.deco-circle.deco-c-degradado::before{background:var(--gradient-brand)}
@media (max-width:720px){.ph-deco{--off:14px}.ph-deco.deco-band{padding:10px}.ph-deco.deco-circle::before{right:-6%}.ph-deco.deco-circle.deco-pos-tl::before,.ph-deco.deco-circle.deco-pos-bl::before{left:-6%}}

/* ── Widgets nativos de Elementor con la marca (los ajustes que hagas en cada widget siguen mandando) ── */
.elementor-widget-heading .elementor-heading-title{font-family:var(--font-serif);font-weight:400;line-height:1.1;color:var(--color-ink)}
.elementor-widget-heading h1.elementor-heading-title{font:400 clamp(48px,6vw,88px)/1 var(--font-serif);letter-spacing:-.015em}
.elementor-widget-text-editor{font:var(--type-body);color:var(--color-body)}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor a{color:var(--color-ink)}
.elementor-widget-text-editor ul,.elementor-widget-text-editor ol{padding-left:1.2em}
.elementor-widget-button .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 30px;border:0;border-radius:var(--radius-pill);background-color:var(--color-action);color:#fff;font:var(--type-button);letter-spacing:var(--tracking-button);fill:#fff;transition:background-color var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}
.elementor-widget-button .elementor-button:hover,.elementor-widget-button .elementor-button:focus{background-color:var(--color-action-hover);color:#fff}
.elementor-widget-button .elementor-button:active{transform:scale(.97)}
.elementor-widget-button .elementor-button.elementor-size-xs,.elementor-widget-button .elementor-button.elementor-size-sm{min-height:46px;padding:0 22px;font-size:16px}
.elementor-widget-button .elementor-button.elementor-size-lg,.elementor-widget-button .elementor-button.elementor-size-xl{min-height:60px;padding:0 36px;font-size:18px}
.elementor-widget-divider{--divider-color:var(--color-hairline-strong)}
.elementor-widget-icon-list .elementor-icon-list-text{font:var(--type-small);color:var(--color-ink)}
.elementor-widget-icon-list .elementor-icon-list-icon i,.elementor-widget-icon-box .elementor-icon,.elementor-widget-icon .elementor-icon{color:var(--color-action)}
.elementor-widget-icon-list .elementor-icon-list-icon svg,.elementor-widget-icon-box .elementor-icon svg,.elementor-widget-icon .elementor-icon svg{fill:var(--color-action)}
.elementor-widget-icon-box .elementor-icon-box-title,.elementor-widget-image-box .elementor-image-box-title{font:var(--type-h4);color:var(--color-ink)}
.elementor-widget-icon-box .elementor-icon-box-description,.elementor-widget-image-box .elementor-image-box-description{font:var(--type-small);color:var(--color-body)}
.elementor-widget-image .widget-image-caption{font:var(--type-caption);color:var(--color-muted)}
.elementor-widget-testimonial .elementor-testimonial-content{font:var(--type-quote);color:var(--color-ink)}
.elementor-widget-testimonial .elementor-testimonial-name{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.elementor-widget-counter .elementor-counter-number-wrapper{font:400 64px/1 var(--font-serif);color:var(--color-ink)}
.elementor-widget-counter .elementor-counter-title{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
/* Acordeón y pestañas (versión clásica y la nueva "anidada" de Elementor) */
.elementor-accordion .elementor-accordion-item,.elementor-toggle .elementor-toggle-item{border-color:var(--color-hairline)!important}
.elementor-accordion .elementor-tab-title,.elementor-toggle .elementor-tab-title,.e-n-accordion-item-title{font:400 24px/1.3 var(--font-serif);color:var(--color-ink)}
.elementor-accordion .elementor-tab-title a,.elementor-toggle .elementor-tab-title a{color:inherit;text-decoration:none}
.elementor-accordion .elementor-tab-content,.elementor-toggle .elementor-tab-content{font:var(--type-small);color:var(--color-body)}
.elementor-tabs .elementor-tab-title{font:var(--type-label);letter-spacing:.04em;color:var(--color-ink)}
.elementor-tabs .elementor-tab-title.elementor-active{color:var(--color-action)}
.e-n-tabs-heading .e-n-tab-title{font:var(--type-label);border-radius:var(--radius-pill)}


/* ══ Tienda (WooCommerce) con el diseño de la web ════════════════════════════════════════
   Los estilos por defecto de WooCommerce están desactivados (inc/woocommerce.php): todo lo de la
   tienda sale de aquí. Carrito, Finalizar compra y Mi cuenta usan el formato clásico. */
.woocommerce .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.woocommerce .clear{clear:both}
.shop{padding:56px 0 120px}
.woocommerce-breadcrumb{font:var(--type-caption);color:var(--color-body);margin:0 0 32px}
.woocommerce-breadcrumb a{color:var(--color-ink);text-decoration:none}
.woocommerce-breadcrumb a:hover{color:var(--color-action)}
.crumb-sep{margin:0 10px;color:var(--color-muted)}

/* Botones */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.added_to_cart,.woocommerce .wc-forward{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;margin:0;
  border:1px solid transparent;border-radius:var(--radius-pill);background:var(--color-action);color:#fff;font:var(--type-button);letter-spacing:var(--tracking-button);
  line-height:1;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}
.woocommerce .button:hover,.woocommerce a.added_to_cart:hover,.woocommerce .wc-forward:hover{background:var(--color-action-hover);color:#fff}
.woocommerce .button:active{transform:scale(.97)}
.woocommerce .button:disabled,.woocommerce .button.disabled,.woocommerce .button[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}
.woocommerce .button.loading{opacity:.7;pointer-events:none}
.woocommerce .button.loading::after{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:jdp-spin .8s linear infinite}
@keyframes jdp-spin{to{transform:rotate(360deg)}}
.woocommerce .button.added::after{content:"";width:6px;height:11px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg)}
/* Botones secundarios: contorno plomo */
.woocommerce .woocommerce-cart-form .actions .button[name=update_cart],.woocommerce .coupon .button,.woocommerce-MyAccount-content .button.view,
.woocommerce .woocommerce-Address .edit,.woocommerce .return-to-shop .button,.woocommerce a.added_to_cart{background:transparent;color:var(--color-ink);border-color:var(--brand-plomo)}
.woocommerce .woocommerce-cart-form .actions .button[name=update_cart]:hover,.woocommerce .coupon .button:hover,.woocommerce-MyAccount-content .button.view:hover,
.woocommerce .return-to-shop .button:hover,.woocommerce a.added_to_cart:hover{background:var(--brand-plomo);color:#fff}

/* Avisos */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice,.wc-block-components-notice-banner{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;
  margin:0 0 32px;padding:18px 22px 18px 56px;list-style:none;background:var(--tint-amarillo-soft);border-left:3px solid var(--brand-amarillo);color:var(--color-ink);font:var(--type-small)}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{content:"";position:absolute;left:22px;top:22px;width:18px;height:18px;border-radius:50%;background:var(--brand-amarillo)}
.woocommerce-message{background:#EEF6F1;border-color:var(--color-success)}
.woocommerce-message::before{background:var(--color-success)}
.woocommerce-error{background:var(--tint-rojo-soft);border-color:var(--color-error);display:block}
.woocommerce-error::before{background:var(--color-error)}
.woocommerce-error li+li{margin-top:6px}
.woocommerce-message .button,.woocommerce-info .button{order:2;min-height:44px;padding:0 20px;background:transparent;color:var(--color-ink);border-color:var(--brand-plomo)}
.woocommerce-message .button:hover,.woocommerce-info .button:hover{background:var(--brand-plomo);color:#fff}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button),.woocommerce-error a:not(.button){color:var(--color-ink)}

/* Formularios */
.woocommerce form .form-row{display:grid;gap:8px;margin:0 0 20px;padding:0}
.woocommerce form .form-row label,.woocommerce-form-row label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.woocommerce form .form-row label.checkbox,.woocommerce form .form-row .woocommerce-form__label-for-checkbox,.woocommerce-form__label-for-checkbox{display:inline-flex;align-items:flex-start;gap:12px;font:var(--type-small);letter-spacing:0;text-transform:none;color:var(--color-body);cursor:pointer}
.woocommerce form .form-row .required,.woocommerce .required{color:var(--color-action);text-decoration:none;border:0}
.woocommerce form .form-row .optional{font:var(--type-caption);text-transform:none;letter-spacing:0;color:var(--color-muted)}
.woocommerce form .form-row .input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea,.woocommerce .input-text,.woocommerce :where(select),
.woocommerce-MyAccount-content input[type=text],.woocommerce-MyAccount-content input[type=email],.woocommerce-MyAccount-content input[type=password],.woocommerce-MyAccount-content input[type=tel]{
  width:100%;min-height:50px;padding:12px 16px;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-xs);background:#fff;color:var(--color-ink);font:var(--type-body);font-size:18px;
  transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}
.woocommerce textarea.input-text{min-height:120px;resize:vertical}
.woocommerce .input-text:hover,.woocommerce :where(select):hover{border-color:var(--color-muted)}
.woocommerce .input-text:focus,.woocommerce :where(select):focus{outline:none;border-color:var(--brand-plomo);box-shadow:var(--focus-ring)}
.woocommerce form .form-row.woocommerce-invalid .input-text,.woocommerce form .form-row.woocommerce-invalid select{border-color:var(--color-error)}
.woocommerce form .form-row.woocommerce-validated .input-text{border-color:var(--color-hairline-strong)}
.woocommerce :where(select){appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23272727' stroke-width='1.5' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;padding-right:44px}
.woocommerce :where(input[type=checkbox],input[type=radio]){appearance:none;flex:none;width:22px;height:22px;margin:2px 0 0;border:1.5px solid var(--brand-plomo);background:#fff;display:inline-grid;place-items:center;cursor:pointer;transition:background-color var(--dur-fast),border-color var(--dur-fast)}
.woocommerce :where(input[type=checkbox]){border-radius:var(--radius-xs)}
.woocommerce :where(input[type=radio]){border-radius:50%}
.woocommerce :where(input[type=checkbox]:checked){background:var(--color-action);border-color:var(--color-action)}
.woocommerce :where(input[type=checkbox]:checked)::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.woocommerce :where(input[type=radio]:checked){border-color:var(--color-action);box-shadow:inset 0 0 0 5px #fff;background:var(--color-action)}
.woocommerce :where(input[type=checkbox],input[type=radio]):focus-visible{box-shadow:var(--focus-ring)}
.woocommerce .form-row-first,.woocommerce .form-row-last{width:auto}
.woocommerce fieldset{border:var(--border-hair);padding:24px;margin:0 0 24px}
.woocommerce fieldset legend{padding:0 8px;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.woocommerce .password-input{position:relative;display:block}
.woocommerce .show-password-input{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;background:none;cursor:pointer}
.woocommerce .show-password-input::after{content:"";display:block;width:20px;height:20px;margin:auto;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;color:var(--color-muted)}
/* select2 (país y departamento en Finalizar compra) */
.woocommerce .select2-container .select2-selection--single{height:50px;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-xs)}
.woocommerce .select2-container .select2-selection--single .select2-selection__rendered{line-height:48px;padding-left:16px;font:var(--type-body);font-size:18px;color:var(--color-ink)}
.woocommerce .select2-container .select2-selection--single .select2-selection__arrow{height:48px;right:10px}
.select2-dropdown{border-color:var(--color-hairline-strong)!important;border-radius:0!important;font:var(--type-small)}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--brand-plomo)!important}

/* Precio y estrellas */
.woocommerce .price,.woocommerce .amount{color:var(--color-ink)}
.woocommerce .price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font:400 26px/1.15 var(--font-serif)}
.woocommerce .price del{font-size:.75em;color:var(--color-muted);opacity:1}
.woocommerce .price ins{text-decoration:none}
.woocommerce .price .woocommerce-price-suffix{font:var(--type-caption);color:var(--color-muted)}
.star-rating{position:relative;display:inline-block;width:5.4em;height:1em;font-size:17px;line-height:1;overflow:hidden;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23D3C9BC' stroke-width='1.5' d='m12 2 3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E") left/1.08em 1em repeat-x}
.star-rating::before{content:none}
.star-rating span{position:absolute;inset:0 auto 0 0;overflow:hidden;font-size:0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23EEA343' stroke='%23EEA343' stroke-width='1.5' d='m12 2 3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E") left/18.36px 17px repeat-x}
.star-rating span::before{content:none}
.woocommerce p.stars{margin:0}
.woocommerce p.stars span{display:inline-flex;gap:4px}
.woocommerce p.stars a{position:relative;display:inline-block;width:32px;height:32px;font-size:0;text-decoration:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23272727' stroke-width='1.3' d='m12 2 3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E") center/26px no-repeat;transition:transform var(--dur-fast)}
.woocommerce p.stars a:hover{transform:scale(1.1)}
.woocommerce p.stars:hover a,.woocommerce p.stars.selected a.active,.woocommerce p.stars.selected a:not(.active),.woocommerce p.stars a:hover~a{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23EEA343' stroke='%23EEA343' stroke-width='1.3' d='m12 2 3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E")}
.woocommerce p.stars:hover a:hover~a,.woocommerce p.stars.selected a.active~a{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23272727' stroke-width='1.3' d='m12 2 3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E")}
.woocommerce span.onsale{position:absolute;z-index:2;top:16px;left:16px;display:inline-flex;align-items:center;min-height:0;padding:9px 14px;border-radius:var(--radius-pill);background:var(--brand-amarillo);color:var(--brand-plomo);font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:1}

/* Listado de productos */
.woocommerce-products-header{margin:0 0 40px;max-width:820px}
.woocommerce-products-header__title{font:400 clamp(48px,6vw,88px)/1 var(--font-serif);letter-spacing:-.015em;margin:0}
.woocommerce-products-header .term-description,.woocommerce-products-header .page-description{margin-top:20px;font:var(--type-lead);color:var(--color-body)}
.shop-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin:0 0 40px;padding:16px 0;border-top:var(--border-hair);border-bottom:var(--border-hair)}
.woocommerce-result-count{margin:0;font:var(--type-small);color:var(--color-body)}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{min-height:46px;width:auto;min-width:240px;border-radius:var(--radius-pill);padding:0 44px 0 20px;font:var(--type-label);letter-spacing:.02em}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px;list-style:none;margin:0;padding:0}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none}
.woocommerce ul.products li.product{position:relative;display:flex;flex-direction:column;gap:20px;width:auto;margin:0;float:none;padding:0}
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;gap:18px;flex:1;color:inherit;text-decoration:none}
.product-card__media{position:relative;aspect-ratio:1;overflow:hidden;background:var(--color-surface)}
.product-card__media img{width:100%;height:100%;object-fit:cover;margin:0;transition:transform 1200ms var(--ease-out)}
.woocommerce ul.products li.product:hover .product-card__media img{transform:scale(1.05)}
.product-card__body{display:grid;gap:10px}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product h2,.woocommerce ul.products li.product h3{margin:0;padding:0;font:var(--type-h4);color:var(--color-ink);transition:color var(--dur)}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title{color:var(--color-action)}
.woocommerce ul.products li.product .price{font-size:22px}
.woocommerce ul.products li.product .star-rating{font-size:15px}
.woocommerce ul.products li.product .button{align-self:flex-start;margin-top:auto}
.woocommerce ul.products li.product .added_to_cart{align-self:flex-start;min-height:0;padding:6px 0;border:0;border-radius:0;background:linear-gradient(var(--brand-rojo),var(--brand-rojo)) left bottom/100% 1.5px no-repeat;color:var(--color-ink)}
.woocommerce ul.products li.product .added_to_cart:hover{background-color:transparent;color:var(--color-action)}
.woocommerce ul.products li.product-category a{display:grid;gap:16px;text-decoration:none;color:inherit}
.woocommerce ul.products li.product-category img{aspect-ratio:1;object-fit:cover;width:100%}
.woocommerce ul.products li.product-category h2{font:var(--type-h4)}
.woocommerce ul.products li.product-category mark{background:none;color:var(--color-muted)}
.woocommerce nav.woocommerce-pagination{margin-top:64px}
.woocommerce nav.woocommerce-pagination ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;border:0}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0}
.woocommerce nav.woocommerce-pagination .page-numbers{display:inline-grid;place-items:center;min-width:48px;height:48px;padding:0 14px;border:1px solid var(--color-hairline-strong);border-radius:999px;font:var(--type-button);color:var(--color-ink);text-decoration:none}
.woocommerce nav.woocommerce-pagination .page-numbers.current,.woocommerce nav.woocommerce-pagination a.page-numbers:hover{background:var(--brand-plomo);border-color:var(--brand-plomo);color:#fff}

/* Ficha de producto */
.woocommerce div.product{position:relative}
.woocommerce div.product>*{min-width:0}
/* Galería y resumen van en su propio contenedor (.product-main, ver inc/woocommerce.php): así el resumen fijo (sticky) queda acotado a su fila y no se monta sobre pestañas ni relacionados */
.woocommerce div.product>.product-main{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:40px 80px;align-items:start;position:relative;margin-bottom:40px}
.woocommerce div.product>.product-main>.woocommerce-product-gallery,.woocommerce div.product>.product-main>div.images{grid-column:1;position:relative;margin:0;width:auto;float:none}
.woocommerce div.product>.product-main>.summary{grid-column:2;position:sticky;top:110px;width:auto;float:none;margin:0}
.woocommerce div.product>.product-main>span.onsale{grid-column:1;grid-row:1;align-self:start;justify-self:start}
.woocommerce-product-gallery{position:relative}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__image{background:var(--color-surface)}
.woocommerce-product-gallery__image img,.woocommerce div.product div.images img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.woocommerce-product-gallery .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;list-style:none;margin:12px 0 0;padding:0}
.woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1;object-fit:cover;opacity:.55;cursor:pointer;transition:opacity var(--dur)}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,.woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1}
.woocommerce-product-gallery__trigger{position:absolute;z-index:3;top:16px;right:16px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;box-shadow:var(--shadow-2);font-size:0;text-decoration:none}
.woocommerce-product-gallery__trigger::before{content:"";width:18px;height:18px;background:var(--brand-plomo);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5M11 8v6M8 11h6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5M11 8v6M8 11h6'/%3E%3C/svg%3E") center/contain no-repeat}
.woocommerce-product-gallery__trigger img{display:none!important}
.woocommerce div.product .product_title{font:400 clamp(40px,4.4vw,64px)/1.04 var(--font-serif);letter-spacing:-.01em;margin:0 0 20px}
.woocommerce div.product .summary>.price{font-size:34px;margin:0 0 24px}
.woocommerce div.product .woocommerce-product-rating{display:flex;align-items:center;gap:12px;margin:-8px 0 20px;font:var(--type-caption)}
.woocommerce div.product .woocommerce-product-rating a{color:var(--color-body)}
.woocommerce div.product .woocommerce-product-details__short-description{font:var(--type-body);color:var(--color-body);margin:0 0 28px}
.woocommerce div.product .woocommerce-product-details__short-description p:last-child{margin:0}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:14px;margin:0 0 28px;padding:24px 0;border-top:var(--border-hair);border-bottom:var(--border-hair)}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1 1 220px;min-height:56px;font-size:18px}
.woocommerce div.product .stock{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-success)}
.woocommerce div.product .stock.out-of-stock{color:var(--color-error)}
.woocommerce div.product form.variations_form{display:block}
.woocommerce div.product table.variations{width:100%;border-collapse:collapse;margin:0 0 16px}
.woocommerce div.product table.variations th,.woocommerce div.product table.variations td{display:block;padding:0;text-align:left}
.woocommerce div.product table.variations th label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.woocommerce div.product table.variations td{margin:8px 0 16px}
.woocommerce div.product .reset_variations{display:inline-block;margin-top:10px;font:var(--type-caption);color:var(--color-muted)}
.woocommerce div.product .single_variation_wrap{display:grid;gap:16px}
.woocommerce div.product .woocommerce-variation-price .price{font-size:30px}
.woocommerce div.product .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:14px}
.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:1 1 220px;min-height:56px}
.woocommerce div.product .product_meta{display:grid;gap:6px;font:var(--type-caption);color:var(--color-body)}
.woocommerce div.product .product_meta a{color:var(--color-ink)}
/* Cantidad con botones */
.woocommerce .quantity{display:inline-flex;align-items:stretch;min-height:56px;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-pill);background:#fff;overflow:hidden}
.woocommerce .quantity .qty{width:56px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;text-align:center;font:400 22px/1 var(--font-serif);color:var(--color-ink);-moz-appearance:textfield;appearance:textfield}
.woocommerce .quantity .qty::-webkit-outer-spin-button,.woocommerce .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce .quantity .qty:focus{outline:none;box-shadow:none}
.woocommerce .quantity:focus-within{border-color:var(--brand-plomo);box-shadow:var(--focus-ring)}
.qty-btn{display:grid;place-items:center;width:48px;border:0;background:transparent;color:var(--brand-plomo);cursor:pointer;transition:background-color var(--dur-fast),color var(--dur-fast)}
.qty-btn svg{width:18px;height:18px}
.qty-btn:hover{background:var(--tint-rojo-soft);color:var(--color-action)}
.qty-btn:disabled{opacity:.3;cursor:default;background:none}
.woocommerce .quantity:has(input[type=hidden]){display:none}
.woocommerce .quantity:has(.qty[readonly]) .qty-btn{display:none}
/* Pestañas: descripción y valoraciones */
.woocommerce div.product .woocommerce-tabs{margin-top:64px}
.woocommerce-tabs ul.tabs{display:inline-flex;flex-wrap:wrap;gap:4px;margin:0 0 40px;padding:6px;list-style:none;border:1px solid var(--color-hairline-strong);border-radius:999px}
.woocommerce-tabs ul.tabs::before,.woocommerce-tabs ul.tabs::after{content:none}
.woocommerce-tabs ul.tabs li{margin:0;padding:0;border:0;background:none;border-radius:999px}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{content:none}
.woocommerce-tabs ul.tabs li a{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border-radius:999px;font:600 16px/1 var(--font-slab);color:var(--color-ink);text-decoration:none;transition:background-color var(--dur),color var(--dur)}
.woocommerce-tabs ul.tabs li a:hover{background:var(--color-surface)}
.woocommerce-tabs ul.tabs li.active a{background:var(--brand-plomo);color:#fff}
.woocommerce-tabs .panel{max-width:var(--reading);margin:0;padding:0;border:0}
.woocommerce-tabs .panel>h2:first-child{font:var(--type-h3);margin-bottom:20px}
.woocommerce table.shop_attributes{width:100%;border-collapse:collapse;font:var(--type-small)}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:14px 8px;border-bottom:var(--border-hair);text-align:left;font-weight:400}
.woocommerce table.shop_attributes th{width:36%;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.woocommerce table.shop_attributes td p{margin:0}
/* Valoraciones */
.woocommerce #reviews #comments{margin:0;padding:0;border:0}
.woocommerce-Reviews-title{font:var(--type-h3);margin-bottom:24px}
.woocommerce #reviews .commentlist{list-style:none;margin:0 0 40px;padding:0;display:grid;gap:16px}
.woocommerce #reviews .commentlist li .comment_container{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:22px 24px;background:#fff;border:var(--border-hair)}
.woocommerce #reviews .commentlist li img.avatar{width:48px;height:48px;border-radius:50%;float:none;position:static;padding:0;border:0;background:var(--tint-amarillo)}
.woocommerce #reviews .commentlist li .comment-text{margin:0;padding:0;border:0}
.woocommerce #reviews .commentlist .star-rating{float:none;margin-bottom:8px}
.woocommerce #reviews .commentlist .meta{margin:0 0 8px;font:var(--type-caption);color:var(--color-muted)}
.woocommerce #reviews .commentlist .meta strong{font:400 20px/1.2 var(--font-serif);color:var(--color-ink)}
.woocommerce #reviews .commentlist .description p{margin:0;font:var(--type-small)}
.woocommerce-noreviews{font:var(--type-small);color:var(--color-body)}
.woocommerce #review_form #respond{position:relative;padding:36px;background:var(--color-paper-soft);border:var(--border-hair)}
.woocommerce #review_form #respond::before{content:"";position:absolute;left:36px;top:-1px;width:64px;height:3px;background:var(--color-action)}
.woocommerce #review_form .comment-reply-title{display:block;font:var(--type-h4);margin:0 0 16px}
.woocommerce #review_form .comment-form p{display:grid;gap:8px;margin:0 0 18px}
.woocommerce #review_form .comment-form label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.woocommerce #review_form .comment-form textarea,.woocommerce #review_form .comment-form input[type=text],.woocommerce #review_form .comment-form input[type=email]{width:100%;min-height:50px;padding:12px 16px;border:1px solid var(--color-hairline-strong);border-radius:var(--radius-xs);font:var(--type-body);font-size:18px;background:#fff}
.woocommerce #review_form .comment-form textarea{min-height:140px}
.woocommerce #review_form .comment-form-cookies-consent{display:flex!important;align-items:flex-start;gap:12px}
.woocommerce #review_form .comment-form-cookies-consent label{font:var(--type-caption);text-transform:none;letter-spacing:0;color:var(--color-body)}
.woocommerce #review_form .form-submit input#submit{min-height:52px}
/* Relacionados y complementarios */
.woocommerce .related.products,.woocommerce .upsells.products,.woocommerce .cross-sells{grid-column:1/-1;margin-top:96px;padding-top:56px;border-top:var(--border-hair)}
.woocommerce .related.products>h2,.woocommerce .upsells.products>h2,.woocommerce .cross-sells>h2{font:var(--type-h2);margin:0 0 40px}

/* Páginas de compra: encabezado y pasos */
.page-head--store{padding:72px 0 8px}
.page-head--store .page-head__title{font:400 clamp(44px,5.4vw,80px)/1 var(--font-serif)}
.store-steps{display:flex;flex-wrap:wrap;gap:10px 28px;list-style:none;margin:28px 0 0;padding:0;counter-reset:none}
.store-steps li{display:inline-flex;align-items:center;gap:10px;font:var(--type-label);letter-spacing:.04em;color:var(--color-muted)}
.store-steps__n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--color-hairline-strong);font:600 14px/1 var(--font-slab);color:var(--color-muted)}
.store-steps li.is-current{color:var(--color-ink)}
.store-steps li.is-current .store-steps__n{background:var(--color-action);border-color:var(--color-action);color:#fff}
.store-steps li.is-done{color:var(--color-ink)}
.store-steps li.is-done .store-steps__n{background:var(--tint-rojo-soft);border-color:transparent;color:var(--color-action)}
.store-steps li+li::before{content:"";width:28px;height:1px;background:var(--color-hairline-strong);margin-right:2px}
.store-page__body{padding-top:40px}

/* Tablas de la tienda */
.woocommerce table.shop_table{width:100%;border-collapse:collapse;margin:0 0 32px;font:var(--type-small);color:var(--color-body);background:#fff}
.woocommerce table.shop_table th{padding:14px 12px;border-bottom:1px solid var(--brand-plomo);text-align:left;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.woocommerce table.shop_table td{padding:20px 12px;border-bottom:var(--border-hair);vertical-align:middle}
.woocommerce table.shop_table tfoot th,.woocommerce table.shop_table tfoot td{border-bottom:var(--border-hair)}
.woocommerce table.shop_table .order-total th,.woocommerce table.shop_table .order-total td{border-bottom:0;font:400 26px/1.2 var(--font-serif);color:var(--color-ink);text-transform:none;letter-spacing:0}
.woocommerce table.shop_table .product-name a{font:400 22px/1.25 var(--font-serif);color:var(--color-ink);text-decoration:none}
.woocommerce table.shop_table .product-name a:hover{color:var(--color-action)}
.woocommerce table.shop_table .product-name .variation,.woocommerce table.shop_table .wc-item-meta{margin:6px 0 0;font:var(--type-caption);color:var(--color-muted);list-style:none;padding:0}
.woocommerce table.shop_table .variation dt,.woocommerce table.shop_table .variation dd{display:inline;margin:0}
.woocommerce table.shop_table .variation dd p{display:inline;margin:0}
.woocommerce table.shop_table .product-thumbnail{width:112px}
.woocommerce table.shop_table .product-thumbnail img{width:88px;max-width:none;height:88px;object-fit:cover;background:var(--color-surface)}
.woocommerce table.shop_table .product-remove{width:56px}
.woocommerce table.shop_table .product-remove a.remove{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--color-hairline-strong);font-size:0;text-decoration:none;transition:all var(--dur-fast)}
.woocommerce table.shop_table .product-remove a.remove::before{content:"";width:14px;height:14px;background:var(--brand-plomo);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/contain no-repeat}
.woocommerce table.shop_table .product-remove a.remove:hover{background:var(--color-action);border-color:var(--color-action)}
.woocommerce table.shop_table .product-remove a.remove:hover::before{background:#fff}
.woocommerce table.shop_table .product-quantity .quantity{min-height:48px}
.woocommerce table.shop_table .product-quantity .qty-btn{width:40px}
.woocommerce table.shop_table .product-quantity .qty{width:44px;font-size:19px}

/* Carrito */
.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:32px 56px;align-items:start}
.woocommerce-cart .woocommerce>*{grid-column:1/-1}
.woocommerce-cart .woocommerce>.woocommerce-cart-form{grid-column:1}
.woocommerce-cart .woocommerce>.cart-collaterals{grid-column:2;position:sticky;top:110px}
.woocommerce-cart table.cart td.actions{padding:24px 0 0;border:0;text-align:right}
.woocommerce-cart table.cart td.actions .coupon{float:left}
.woocommerce-cart table.cart td.actions::after{content:"";display:block;clear:both}
.woocommerce .coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.woocommerce .coupon .input-text{width:220px;min-height:52px;border-radius:var(--radius-pill);padding:0 20px}
.cart-collaterals .cart_totals{position:relative;padding:36px 32px 32px;background:var(--color-paper-soft);border:var(--border-hair)}
.cart-collaterals .cart_totals::before,.woocommerce-checkout-review-order::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--gradient-brand)}
.cart-collaterals .cart_totals h2{font:var(--type-h3);margin:0 0 20px}
.cart-collaterals .cart_totals table.shop_table{background:transparent;margin-bottom:24px}
.cart-collaterals .cart_totals table th{width:42%;border-bottom:var(--border-hair)}
.cart-collaterals .cart_totals table td{text-align:right}
.wc-proceed-to-checkout .checkout-button{width:100%;min-height:60px;font-size:18px}
.woocommerce-shipping-calculator .shipping-calculator-button{color:var(--color-ink)}
.woocommerce ul#shipping_method{list-style:none;margin:0;padding:0}
.woocommerce ul#shipping_method li{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.cart-empty.woocommerce-info{margin-bottom:24px}
.woocommerce .return-to-shop{margin:0}
.woocommerce-cart .cross-sells{grid-column:1/-1}

/* Finalizar compra */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0 56px;align-items:start}
.woocommerce-checkout form.checkout>*{grid-column:1/-1}
.woocommerce-checkout form.checkout>#customer_details{grid-column:1;grid-row:span 3}
.woocommerce-checkout form.checkout>#order_review_heading{grid-column:2;margin:0 0 -1px;padding:32px 32px 0;background:var(--color-paper-soft);border:var(--border-hair);border-bottom:0;font:var(--type-h3)}
.woocommerce-checkout form.checkout>#order_review{grid-column:2;position:relative;padding:20px 32px 32px;background:var(--color-paper-soft);border:var(--border-hair);border-top:0}
.woocommerce-checkout form.checkout>#order_review::before{content:none}
.woocommerce-checkout form.checkout>#order_review_heading{position:relative}
.woocommerce-checkout form.checkout>#order_review_heading::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:var(--gradient-brand)}
.woocommerce .col2-set{display:grid;grid-template-columns:1fr;gap:32px}
.woocommerce .col2-set::before,.woocommerce .col2-set::after{content:none}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:auto;float:none}
.woocommerce-billing-fields>h3,.woocommerce-shipping-fields>h3,.woocommerce-additional-fields>h3,.woocommerce-account-fields>h3{font:var(--type-h3);margin:0 0 24px}
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.woocommerce-billing-fields__field-wrapper>.form-row,.woocommerce-shipping-fields__field-wrapper>.form-row,.woocommerce-address-fields__field-wrapper>.form-row{grid-column:1/-1}
.woocommerce-billing-fields__field-wrapper>.form-row-first,.woocommerce-billing-fields__field-wrapper>.form-row-last,
.woocommerce-shipping-fields__field-wrapper>.form-row-first,.woocommerce-shipping-fields__field-wrapper>.form-row-last,
.woocommerce-address-fields__field-wrapper>.form-row-first,.woocommerce-address-fields__field-wrapper>.form-row-last{grid-column:auto}
#ship-to-different-address{font:var(--type-h4);margin:0 0 16px}
#ship-to-different-address label{display:inline-flex;align-items:center;gap:12px;cursor:pointer}
.woocommerce-checkout-review-order-table th.product-total,.woocommerce-checkout-review-order-table td.product-total{text-align:right}
.woocommerce-checkout-review-order-table tfoot td{text-align:right}
.woocommerce-checkout-review-order-table .product-name{font:var(--type-small);color:var(--color-ink)}
.woocommerce-checkout-review-order-table .product-quantity{color:var(--color-muted)}
.woocommerce-checkout-review-order-table{background:transparent!important}
#payment{margin-top:8px}
#payment ul.payment_methods{display:grid;gap:10px;list-style:none;margin:0 0 20px;padding:0;border:0}
#payment ul.payment_methods li{position:relative;padding:16px 18px;background:#fff;border:1px solid var(--color-hairline-strong);transition:border-color var(--dur)}
#payment ul.payment_methods li:has(input:checked){border-color:var(--color-action)}
#payment ul.payment_methods li>label{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;font:400 20px/1.3 var(--font-serif);color:var(--color-ink);cursor:pointer;vertical-align:middle;margin-left:8px}
#payment ul.payment_methods li img{max-height:26px;width:auto;display:inline-block}
#payment ul.payment_methods li input{vertical-align:middle}
#payment .payment_box{position:relative;margin:14px 0 0;padding:16px 18px;background:var(--color-paper-soft);font:var(--type-caption);color:var(--color-body)}
#payment .payment_box p:last-child{margin:0}
#payment .woocommerce-privacy-policy-text{font:var(--type-caption);color:var(--color-muted)}
#payment .woocommerce-privacy-policy-text a{color:var(--color-ink)}
#payment .woocommerce-terms-and-conditions-wrapper{margin:16px 0}
#payment .form-row.place-order{margin:0;padding:0}
#payment #place_order{width:100%;min-height:62px;font-size:19px}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{margin-bottom:16px}
.woocommerce form.checkout_coupon,.woocommerce form.woocommerce-form-login{padding:24px;margin:0 0 32px;border:var(--border-hair);background:var(--color-paper-soft)}
.woocommerce form.checkout_coupon{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.woocommerce form.checkout_coupon p{margin:0}
.woocommerce form.checkout_coupon .form-row-first{flex:1 1 240px}
.woocommerce-checkout .blockUI.blockOverlay{background:rgba(255,255,255,.7)!important}
/* Pedido recibido */
.woocommerce-order{max-width:880px}
.woocommerce-order .woocommerce-thankyou-order-received{font:var(--type-lead);color:var(--color-ink);padding-left:56px}
ul.woocommerce-order-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;list-style:none;margin:0 0 48px;padding:0;border:var(--border-hair)}
ul.woocommerce-order-overview li{padding:20px;border-right:var(--border-hair);font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
ul.woocommerce-order-overview li:last-child{border-right:0}
ul.woocommerce-order-overview li strong{display:block;margin-top:8px;font:400 22px/1.25 var(--font-serif);letter-spacing:0;text-transform:none;color:var(--color-ink);word-break:break-word}
.woocommerce-order-details__title,.woocommerce-column__title,.woocommerce-customer-details h2{font:var(--type-h3);margin:0 0 20px}
.woocommerce-customer-details address{padding:24px;border:var(--border-hair);font-style:normal;font:var(--type-small)}

/* Mi cuenta */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:minmax(220px,3fr) minmax(0,9fr);gap:32px 64px;align-items:start}
.woocommerce-account .woocommerce>*{grid-column:1/-1}
.woocommerce-account .woocommerce>.woocommerce-MyAccount-navigation{grid-column:1;position:sticky;top:110px}
.woocommerce-account .woocommerce>.woocommerce-MyAccount-content{grid-column:2}
.woocommerce-MyAccount-navigation ul{display:grid;gap:4px;list-style:none;margin:0;padding:10px;border:var(--border-hair);background:var(--color-paper-soft)}
.woocommerce-MyAccount-navigation li a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 16px;border-radius:999px;font:600 16px/1 var(--font-slab);color:var(--color-ink);text-decoration:none;transition:background-color var(--dur),color var(--dur)}
.woocommerce-MyAccount-navigation li a:hover{background:var(--color-surface)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--brand-plomo);color:#fff}
.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--color-action)}
.woocommerce-MyAccount-content{font:var(--type-body);color:var(--color-body)}
.woocommerce-MyAccount-content>p:first-of-type{font:var(--type-lead);color:var(--color-ink)}
.woocommerce-MyAccount-content a:not(.button){color:var(--color-ink)}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font:var(--type-h3);margin:0 0 20px}
.woocommerce-Addresses{grid-template-columns:1fr 1fr!important;gap:24px!important}
.woocommerce-Address{padding:28px;border:var(--border-hair);background:#fff}
.woocommerce-Address-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.woocommerce-Address-title h2,.woocommerce-Address-title h3{margin:0;font:var(--type-h4)}
.woocommerce-Address address{font-style:normal;font:var(--type-small)}
.woocommerce .woocommerce-Address .edit{min-height:40px;padding:0 16px;font-size:15px}
.woocommerce-orders-table .button{min-height:40px;padding:0 16px;font-size:15px}
.woocommerce-orders-table__cell-order-status{font:var(--type-label);letter-spacing:.04em;color:var(--color-ink)}
.woocommerce-EditAccountForm{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.woocommerce-EditAccountForm>*{grid-column:1/-1}
.woocommerce-EditAccountForm>.form-row-first,.woocommerce-EditAccountForm>.form-row-last{grid-column:auto}
.woocommerce-EditAccountForm em{display:block;margin-top:6px;font:var(--type-caption);font-style:normal;color:var(--color-muted)}
/* Acceso y registro */
.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.woocommerce-account .u-columns.col2-set{grid-template-columns:1fr 1fr;gap:28px}
.woocommerce-account .u-columns.col2-set>div,.woocommerce-account:not(.logged-in) .woocommerce>.woocommerce-form-login,.woocommerce-ResetPassword{position:relative;padding:40px 36px 32px;background:#fff;border:var(--border-hair)}
.woocommerce-account .u-columns.col2-set>div:first-child::before,.woocommerce-account:not(.logged-in) .woocommerce>.woocommerce-form-login::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:var(--gradient-brand)}
.woocommerce-account .u-columns.col2-set>div:last-child{background:var(--color-paper-soft)}
.woocommerce-account .u-columns h2{font:var(--type-h3);margin:0 0 24px}
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register{margin:0;padding:0;border:0;background:none}
.woocommerce-form-login .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;font:var(--type-small);text-transform:none;letter-spacing:0;color:var(--color-body)}
.woocommerce-form-login__submit,.woocommerce-form-register__submit{width:100%}
.woocommerce-LostPassword{margin:16px 0 0;font:var(--type-caption)}
.woocommerce-LostPassword a{color:var(--color-ink)}
.woocommerce-privacy-policy-text{font:var(--type-caption);color:var(--color-muted)}
.woocommerce-account:not(.logged-in) .woocommerce>.woocommerce-form-login,.woocommerce-ResetPassword{max-width:560px}

/* Tienda en pantallas medianas y móviles */
@media (max-width:1080px){
  .woocommerce ul.products,.woocommerce ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce div.product{grid-template-columns:1fr 1fr;gap:32px 40px}
  .woocommerce-cart .woocommerce{grid-template-columns:1fr}
  .woocommerce-cart .woocommerce>.woocommerce-cart-form,.woocommerce-cart .woocommerce>.cart-collaterals{grid-column:1;position:static}
  .woocommerce-checkout form.checkout{grid-template-columns:1fr}
  .woocommerce-checkout form.checkout>#customer_details,.woocommerce-checkout form.checkout>#order_review_heading,.woocommerce-checkout form.checkout>#order_review{grid-column:1;grid-row:auto}
  .woocommerce-checkout form.checkout>#order_review_heading{margin-top:24px}
  .woocommerce-account .woocommerce{grid-template-columns:1fr}
  .woocommerce-account .woocommerce>.woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce>.woocommerce-MyAccount-content{grid-column:1;position:static}
  .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;border-radius:999px;scrollbar-width:none}
  .woocommerce-MyAccount-navigation li{flex:none}
}
@media (max-width:820px){
  .woocommerce div.product>.product-main{grid-template-columns:1fr}
  .woocommerce div.product>.product-main>.woocommerce-product-gallery,.woocommerce div.product>.product-main>div.images,.woocommerce div.product>.product-main>.summary{grid-column:1;position:static}
  .woocommerce-account .u-columns.col2-set,.woocommerce-Addresses{grid-template-columns:1fr!important}
  /* Tabla del carrito en tarjetas */
  .woocommerce table.shop_table_responsive thead{display:none}
  .woocommerce table.shop_table_responsive tr{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;padding:20px 0;border-bottom:var(--border-hair)}
  .woocommerce table.shop_table_responsive tr td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;border:0;text-align:right;grid-column:2}
  .woocommerce table.shop_table_responsive tr td::before{content:attr(data-title);font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted);text-align:left}
  .woocommerce table.shop_table_responsive tr td.product-thumbnail{grid-column:1;grid-row:1/span 4;align-items:flex-start}
  .woocommerce table.shop_table_responsive tr td.product-thumbnail::before,.woocommerce table.shop_table_responsive tr td.product-remove::before,.woocommerce table.shop_table_responsive tr td.actions::before{content:none}
  .woocommerce table.shop_table_responsive tr td.product-name{display:block;text-align:left}
  .woocommerce table.shop_table_responsive tr td.product-name::before{content:none}
  .woocommerce table.shop_table_responsive tr td.product-remove{justify-content:flex-end}
  .woocommerce-cart table.cart tr:has(td.actions){display:block;border:0}
  .woocommerce-cart table.cart td.actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;text-align:left}
  .woocommerce-cart table.cart td.actions .coupon{float:none}
  .woocommerce .coupon .input-text{width:100%}
  .woocommerce .coupon{flex-direction:column;align-items:stretch}
  .woocommerce-cart .cart-collaterals .cart_totals table tr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0}
  .woocommerce-cart .cart-collaterals .cart_totals table th{width:auto;border:0;padding:0}
  .woocommerce-cart .cart-collaterals .cart_totals table td{padding:0;grid-column:auto}
  .woocommerce-cart .cart-collaterals .cart_totals table td::before{content:none}
  .woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper,.woocommerce-EditAccountForm{grid-template-columns:1fr}
  .woocommerce-billing-fields__field-wrapper>.form-row-first,.woocommerce-billing-fields__field-wrapper>.form-row-last,.woocommerce-shipping-fields__field-wrapper>.form-row-first,.woocommerce-shipping-fields__field-wrapper>.form-row-last,.woocommerce-address-fields__field-wrapper>.form-row-first,.woocommerce-address-fields__field-wrapper>.form-row-last,.woocommerce-EditAccountForm>.form-row-first,.woocommerce-EditAccountForm>.form-row-last{grid-column:1}
  .woocommerce-checkout form.checkout>#order_review_heading,.woocommerce-checkout form.checkout>#order_review{padding-left:20px;padding-right:20px}
  .cart-collaterals .cart_totals{padding:32px 20px 24px}
  .woocommerce-account .u-columns.col2-set>div,.woocommerce-account:not(.logged-in) .woocommerce>.woocommerce-form-login{padding:32px 20px 24px}
}
@media (max-width:560px){
  .woocommerce ul.products,.woocommerce ul.products.columns-4,.woocommerce ul.products.columns-2{grid-template-columns:1fr}
  .shop-bar{flex-direction:column;align-items:stretch}
  .woocommerce-ordering select{width:100%}
  .woocommerce div.product form.cart{flex-direction:column}
  .woocommerce div.product form.cart .quantity{align-self:flex-start}
  .woocommerce div.product form.cart .single_add_to_cart_button,.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:none;width:100%}
  .woocommerce-tabs ul.tabs{display:flex;border-radius:24px}
  .store-steps li+li::before{width:14px}
}


/* ══ Widgets nuevos (plugin JuanitaEscallon Core 1.0.0) ══════════════════════════════════ */
.jdp-w .section-head .jdp-lead{margin-top:20px}
.jdp-w.bg-plomo .section-head .jdp-lead,.jdp-w.bg-plomo p{color:var(--color-on-dark-soft)}

/* Texto e imagen: título grande para portadas de página y botones en fila */
.split--xl .split__title{font:400 clamp(52px,6.4vw,96px)/.98 var(--font-serif);letter-spacing:-.015em}
.split__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;margin-top:16px}
.split__content p:last-child{margin-bottom:0}

/* Texto libre */
.text-block__grid{display:grid;gap:8px}
.text-block--reading .text-block__grid{max-width:calc(var(--reading) + 40px)}
.text-block--center .text-block__grid{max-width:820px;margin:0 auto;text-align:center}
.text-block--center .eyebrow{justify-content:center}
.text-block--split .text-block__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px 80px;align-items:start}
.text-block--split .section-head{margin-bottom:0;position:sticky;top:120px}
.text-block .section-head{margin-bottom:24px}
.text-block__content{font:var(--type-body)}
.text-block--center .text-block__content{font:var(--type-lead)}
.text-block__cta{margin-top:32px}
.jdp-w.bg-plomo .text-block__content,.jdp-w.bg-plomo .entry-content{color:var(--color-on-dark-soft)}
@media (max-width:900px){.text-block--split .text-block__grid{grid-template-columns:1fr}.text-block--split .section-head{position:static}}

/* Frase destacada */
.statement__fig{position:relative;margin:0;display:grid;gap:20px;max-width:1000px}
.statement--center .statement__fig{margin:0 auto;text-align:center;justify-items:center}
.statement__dots{--d:12px}
.statement__fig .eyebrow{margin:0}
.statement__quote{margin:0}
.statement__text{margin:0;font:400 clamp(34px,4vw,56px)/1.12 var(--font-serif);letter-spacing:-.01em;color:var(--color-ink)}
.statement--md .statement__text{font-size:clamp(28px,3vw,40px)}
.statement--xl .statement__text{font-size:clamp(44px,6vw,88px);line-height:1.02}
.statement__support{margin:0;max-width:56ch;font:var(--type-lead);color:var(--color-body)}
.statement__author{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-body)}
.jdp-w.bg-plomo .statement__text{color:#fff}
.jdp-w.bg-plomo .jdp-highlight{background:linear-gradient(transparent 60%,rgba(227,69,92,.6) 60%,rgba(227,69,92,.6) 92%,transparent 92%)}

/* Lista con íconos */
.features__grid{display:grid;gap:20px;list-style:none;margin:0;padding:0}
.features__grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.features__grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.features__grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.feature{position:relative;display:flex;flex-direction:column;gap:12px}
.features--cards .feature{padding:32px 28px 30px;background:#fff;border:var(--border-hair);transition:transform 500ms var(--ease-out),box-shadow 500ms var(--ease-out),border-color 300ms,opacity 900ms var(--ease-out)}
.features--cards .feature:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:transparent}
.jdp-w:not(.bg-white) .features--cards .feature,.features--cards .feature{background:#fff}
.features--plain .feature{padding:8px 0 0;border-top:1px solid var(--brand-plomo)}
.features--plain .features__grid{gap:40px 32px}
.feature__ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--tint-rojo-soft);color:var(--color-action);margin-bottom:6px;transition:transform 600ms cubic-bezier(.34,1.56,.64,1)}
.feature:hover .feature__ic{transform:scale(1.08)}
.feature__ic svg{width:24px;height:24px}
.features__grid>li:nth-child(4n+2) .feature__ic{background:var(--tint-amarillo-soft);color:var(--brand-plomo)}
.features__grid>li:nth-child(4n+3) .feature__ic{background:var(--tint-naranja-soft);color:var(--brand-plomo)}
.features__grid>li:nth-child(4n+4) .feature__ic{background:var(--color-surface);color:var(--brand-plomo)}
.feature__n{font:400 56px/1 var(--font-serif);color:var(--color-action);letter-spacing:-.02em}
.feature__kicker{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-action)}
.feature__title{margin:0;font:var(--type-h4);color:var(--color-ink)}
.feature__text{margin:0;font:var(--type-small);color:var(--color-body)}
.features__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px;margin-top:40px;padding-top:28px;border-top:var(--border-hair)}
.features__note{margin:0;max-width:60ch;font:var(--type-lead);color:var(--color-ink)}
.jdp-w.bg-plomo .feature__title,.jdp-w.bg-plomo .features__note{color:#fff}
.jdp-w.bg-plomo .features--plain .feature{border-top-color:rgba(255,255,255,.3)}
.jdp-w.bg-plomo .features--plain .feature__text{color:var(--color-on-dark-soft)}
@media (max-width:1080px){.features__grid.cols-4,.features__grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.features__grid.cols-2,.features__grid.cols-3,.features__grid.cols-4{grid-template-columns:1fr}}

/* Pasos */
.steps__list{position:relative;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:24px;list-style:none;margin:0;padding:0;counter-reset:none}
.steps__list::before{content:"";position:absolute;left:28px;right:28px;top:28px;height:2px;background:var(--gradient-brand);opacity:.9}
.step{position:relative;display:grid;gap:12px;align-content:start;padding-right:8px}
.step__n{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#fff;border:2px solid var(--brand-plomo);font:400 26px/1 var(--font-serif);color:var(--color-ink);margin-bottom:8px;transition:background-color 400ms,color 400ms}
.step:hover .step__n{background:var(--color-action);border-color:var(--color-action);color:#fff}
.step__title{margin:0;font:var(--type-h4)}
.step__text{margin:0;font:var(--type-small);color:var(--color-body)}
.steps__cta{margin-top:48px}
.jdp-w.bg-plomo .step__n{background:var(--brand-plomo);border-color:#fff;color:#fff}
.jdp-w.bg-plomo .step__title{color:#fff}
@media (max-width:900px){
  .steps__list{grid-template-columns:1fr;gap:28px}
  .steps__list::before{left:27px;right:auto;top:28px;bottom:28px;width:2px;height:auto;background:linear-gradient(180deg,#272727,#E3455C 36%,#EEA343 70%,#E6723B)}
  .step{grid-template-columns:56px 1fr;column-gap:20px}
  .step__n{grid-row:span 2;margin:0}
}

/* Para quién es */
.fit__grid{display:grid;gap:24px}
.fit--two .fit__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.fit__col{padding:36px 36px 32px;background:#fff;border:var(--border-hair)}
.fit__col--no{background:var(--color-paper-soft)}
.fit__title{margin:0 0 20px;font:var(--type-h4)}
.fit__list{display:grid;gap:14px;list-style:none;margin:0;padding:0}
.fit--one .fit__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px}
.fit__list li{display:grid;grid-template-columns:32px 1fr;gap:14px;align-items:start;font:var(--type-small);color:var(--color-ink)}
.fit__ic{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--color-action);color:#fff}
.fit__ic svg{width:16px;height:16px;stroke-width:2.2}
.fit__col--no .fit__ic{background:transparent;border:1.5px solid var(--color-muted);color:var(--color-muted)}
.fit__col--no .fit__list li{color:var(--color-body)}
.fit__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px;margin-top:32px}
.fit__note{margin:0;font:var(--type-lead);color:var(--color-ink);max-width:60ch}
@media (max-width:900px){.fit--two .fit__grid,.fit--one .fit__list{grid-template-columns:1fr}.fit__col{padding:28px 22px 24px}}

/* Preguntas frecuentes */
.faq--side .faq__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:40px 80px;align-items:start}
.faq--side .faq__head{position:sticky;top:120px;margin:0}
.faq__list{border-top:1px solid var(--brand-plomo)}
.faq__item{border-bottom:var(--border-hair)}
.faq__q{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;cursor:pointer;list-style:none;font:400 24px/1.3 var(--font-serif);color:var(--color-ink);transition:color var(--dur)}
.faq__q::-webkit-details-marker{display:none}
.faq__q:hover{color:var(--color-action)}
.faq__q i{position:relative;flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--color-hairline-strong);transition:background-color var(--dur),border-color var(--dur),transform 500ms var(--ease-out)}
.faq__q i::before,.faq__q i::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:var(--brand-plomo);transform:translate(-50%,-50%);transition:transform 400ms var(--ease-out),background-color var(--dur)}
.faq__q i::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq__item[open] .faq__q i{background:var(--color-action);border-color:var(--color-action);transform:rotate(180deg)}
.faq__item[open] .faq__q i::before,.faq__item[open] .faq__q i::after{background:#fff}
.faq__item[open] .faq__q i::after{transform:translate(-50%,-50%) rotate(0)}
.faq__a{padding:0 64px 28px 0;font:var(--type-small);color:var(--color-body);animation:faq-in 500ms var(--ease-out)}
.faq__a p:last-child{margin:0}
@keyframes faq-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.jdp-w.bg-plomo .faq__list{border-top-color:#fff}
.jdp-w.bg-plomo .faq__item{border-bottom-color:rgba(255,255,255,.18)}
.jdp-w.bg-plomo .faq__q{color:#fff}
.jdp-w.bg-plomo .faq__q i{border-color:rgba(255,255,255,.4)}
.jdp-w.bg-plomo .faq__q i::before,.jdp-w.bg-plomo .faq__q i::after{background:#fff}
@media (max-width:900px){.faq--side .faq__grid{grid-template-columns:1fr}.faq--side .faq__head{position:static}.faq__q{font-size:21px}.faq__a{padding-right:0}}

/* Planes y precios */
.pricing__head{margin-left:auto;margin-right:auto;text-align:center}
.pricing__head .eyebrow{justify-content:center}
.pricing__grid{display:grid;gap:24px;max-width:980px;margin:0 auto}
.pricing__grid.cols-1{max-width:520px}
.pricing__grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pricing__grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.plan{position:relative;display:flex;flex-direction:column;gap:20px;padding:40px 36px 36px;background:#fff;border:1px solid var(--color-hairline-strong);transition:transform 500ms var(--ease-out),box-shadow 500ms var(--ease-out),opacity 900ms var(--ease-out)}
.plan:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}
.plan--featured{background:var(--brand-plomo);border-color:var(--brand-plomo);color:var(--color-on-dark-soft)}
.plan--featured::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--gradient-brand)}
.plan__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.plan__name{margin:0;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}
.plan--featured .plan__name{color:#fff}
.plan__badge{display:inline-flex;padding:8px 14px;border-radius:999px;background:var(--brand-amarillo);color:var(--brand-plomo);font:var(--type-label);letter-spacing:.04em}
.plan__price{margin:0;font:400 clamp(52px,5vw,72px)/1 var(--font-serif);letter-spacing:-.02em;color:var(--color-ink)}
.plan--featured .plan__price{color:#fff}
.plan__price small{display:block;margin-top:10px;font:var(--type-caption);letter-spacing:0;color:var(--color-body)}
.plan--featured .plan__price small{color:var(--color-on-dark-soft)}
.plan__list{display:grid;gap:12px;list-style:none;margin:0;padding:20px 0 0;border-top:var(--border-hair)}
.plan--featured .plan__list{border-top-color:rgba(255,255,255,.18)}
.plan__list li{display:grid;grid-template-columns:24px 1fr;gap:12px;font:var(--type-small)}
.plan__ic{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--tint-rojo-soft);color:var(--color-action)}
.plan--featured .plan__ic{background:rgba(255,255,255,.12);color:var(--brand-amarillo)}
.plan__ic svg{width:14px;height:14px;stroke-width:2.2}
.plan__cta{margin-top:auto;padding-top:8px}
.plan__cta .jdp-btn{width:100%}
.plan--featured .jdp-btn--outline{border-color:#fff;color:#fff}
.pricing__note{margin:32px auto 0;max-width:62ch;text-align:center;font:var(--type-small);color:var(--color-body)}
@media (max-width:900px){.pricing__grid.cols-2,.pricing__grid.cols-3{grid-template-columns:1fr}.plan{padding:32px 24px 28px}}

/* Quién te acompaña */
.bio__card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:40px 56px;align-items:center;max-width:1000px;margin:0 auto}
.bio--nophoto .bio__card{grid-template-columns:1fr;max-width:760px}
.bio__photo{position:relative;width:220px}
.bio--circle .bio__photo img{width:220px;height:220px;border-radius:50%;object-fit:cover}
.bio--portrait .bio__photo{width:300px}
.bio--portrait .bio__photo img{width:100%;aspect-ratio:4/5;object-fit:cover}
.bio__dots{position:absolute;right:-6px;top:24%;--d:18px}
.bio__name{margin:0 0 14px;font:var(--type-h2)}
.bio__desc{margin:0 0 20px;font:var(--type-lead);color:var(--color-body)}
.jdp-w.bg-plomo .bio__name{color:#fff}
.jdp-w.bg-plomo .bio__desc{color:var(--color-on-dark-soft)}
@media (max-width:720px){.bio__card{grid-template-columns:1fr;gap:28px}.bio__photo,.bio--circle .bio__photo img{width:160px;height:auto}.bio--circle .bio__photo img{height:160px}.bio--portrait .bio__photo{width:100%;max-width:320px}}

/* Lista de espera */
.waitlist__box{position:relative;max-width:820px;margin:0 auto;padding:64px 56px 52px;background:var(--color-paper-soft);border:var(--border-hair)}
.waitlist--center .waitlist__box{text-align:center}
.waitlist--center .eyebrow{justify-content:center}
.waitlist--center .jdp-form--subscribe{margin-left:auto;margin-right:auto;justify-items:center}
.waitlist--center .jdp-subscribe{width:100%}
.waitlist__bar{position:absolute;left:0;right:0;top:0;height:4px}
.waitlist .section-head{margin-bottom:28px;max-width:none}
.waitlist .jdp-form--subscribe{max-width:640px;margin-top:0}
.waitlist .jdp-consent{text-align:left}
.jdp-w.bg-plomo .waitlist__box{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.14)}
.jdp-w.bg-plomo .jdp-form__note{color:var(--color-on-dark-soft)}
@media (max-width:720px){.waitlist__box{padding:48px 20px 32px}}

/* Llamado a la acción */
.cta-block{overflow:hidden}
.cta-block__inner{position:relative;z-index:1;text-align:center}
.cta-block .section-head{margin:0 auto 32px;max-width:900px}
.cta-block .eyebrow{justify-content:center}
.cta-block .section-head h2,.cta-block .section-head h3{font:400 clamp(44px,6vw,88px)/1 var(--font-serif);letter-spacing:-.015em}
.cta-block__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 32px}
.cta-block__semis{position:absolute;right:0;top:50%;transform:translateY(-50%);--s:120px;opacity:.95}
.jdp-w.bg-plomo .cta-block__actions .jdp-link-arrow{color:#fff}
@media (max-width:720px){.cta-block__semis{--s:64px;top:auto;bottom:0;transform:none}}

/* Foto con decoración */
.photo-block__fig{margin:0;display:grid;gap:14px}
.photo-block--sm .photo-block__fig{max-width:380px}
.photo-block--md .photo-block__fig{max-width:560px}
.photo-block--lg .photo-block__fig{max-width:none}
.photo-block--center .photo-block__fig{margin:0 auto}
.photo-block--right .photo-block__fig{margin-left:auto}
.about__photo.ratio-4-5 .ph{aspect-ratio:4/5}
.about__photo.ratio-1-1 .ph{aspect-ratio:1}
.about__photo.ratio-3-2 .ph{aspect-ratio:3/2}
.about__photo.ratio-auto .ph{aspect-ratio:auto}
.about__photo.ratio-auto img{height:auto}
.photo-block__caption{font:var(--type-caption);color:var(--color-muted)}

/* Cifras */
.stats__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;list-style:none;margin:0;padding:0}
.jdp-w.bg-plomo .jdp-stat{border-left-color:rgba(255,255,255,.4)}
.jdp-w.bg-plomo .jdp-stat__value{color:#fff}

/* Apetito Creativo: pie con botón bajo los pilares */
.pillars:has(+.apetito__foot){margin-bottom:0}
.jdp-pillars .apetito__foot{margin-top:48px}

/* Formularios de suscripción: nunca más anchos que su columna */
.jdp-form--subscribe{grid-template-columns:minmax(0,1fr)}
.jdp-subscribe{width:100%;min-width:0}
.jdp-subscribe input{width:100%;min-width:0}
.cocina form.jdp-form--subscribe{max-width:620px}
.jdp-w.space-bottom0 .apetito__foot{margin-bottom:72px}
.woocommerce .related.products,.woocommerce .upsells.products{background:none}
.woocommerce-account:not(.logged-in) .woocommerce>h2{font:var(--type-h3);margin:0 0 24px}
