/* ==========================================================================
   Paola Beltrán Méndez · Psicóloga clínica
   Estilos del sitio. Sirven para la maqueta HTML y para el tema hijo de
   WordPress (bloques nativos + plantillas del blog).
   1. Tokens  2. Base  3. Tipografía  4. Utilidades  5. Botones  6. Header
   7. Inicio  8. Formularios  9. Blog  10. Artículo  11. Servicio
   12. Publicidad  13. Footer  14. WhatsApp  15. WordPress  16. Temas/movimiento
   ========================================================================== */

/* 1. Tokens ---------------------------------------------------------------- */
:root{
  /* Paleta "Crema y menta" (predeterminada; se ajusta en Personalizar › Colores del sitio) */
  --c-bg-a:#F4EFE6;        /* fondo: crema cálido (izquierda del degradado) */
  --c-bg-b:#E8F2EF;        /* fondo: menta pálido (derecha del degradado) */
  --c-bg:#F6F3EC;          /* fondo sólido de respaldo */
  --c-surface:#FDFCFA;     /* tarjetas */
  --c-tint:#ECE8F7;        /* lavanda pastel */
  --c-tint-2:#DCD7F0;      /* lavanda */
  --c-blush:#FBE9E1;       /* durazno pastel */
  --c-sky:#E3F0F8;         /* azul cielo pastel */
  --c-sand:#F5EEE2;        /* arena pastel */
  --c-mint:#DCEEE8;        /* menta pastel */
  --c-ink:#1E1A3D;         /* texto principal: índigo noche */
  --c-muted:#5B5770;       /* texto secundario */
  --c-line:#E6E1D8;        /* líneas */
  --c-field:#C9C3D6;       /* bordes de campos */
  --c-brand:#1E1A3D;       /* botones, enlaces, logo */
  --c-brand-hover:#3B3470;
  --c-brand-ink:#F6F3EC;   /* texto sobre el color principal */
  --c-brand-soft:#ECE8F7;
  --c-butter:#F6D88E;      /* botones secundarios */
  --c-butter-hover:#F1CC6E;
  --c-detail:#BFDDF2;      /* detalles: íconos de redes */
  --c-accent:#3B3470;      /* etiquetas de categoría */
  --c-wa:#25D366;
  --c-wa-ink:#0B2A17;
  --c-footer:#1E1A3D;
  --c-footer-ink:#F6F3EC;
  --c-footer-muted:#C9C4DD;

  --f-display:"Young Serif","Iowan Old Style",Georgia,serif;
  --f-body:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --fs-h1:clamp(2.2rem,1.55rem + 2.9vw,3.8rem);
  --fs-h2:clamp(1.8rem,1.4rem + 1.7vw,2.6rem);
  --fs-h3:clamp(1.15rem,1.08rem + .35vw,1.38rem);
  --fs-lead:clamp(1.06rem,1rem + .3vw,1.22rem);
  --fs-body:1.0625rem;

  --space-section:clamp(4rem,2.8rem + 5.5vw,7.5rem);
  --gutter:clamp(1.15rem,.8rem + 1.5vw,2rem);
  --container:1180px;
  --radius-lg:26px;
  --radius-xl:34px;
  --radius-md:16px;
  --radius-sm:10px;
  --header-h:72px;

  color-scheme:light;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}

/* Íconos (generados): se usan como máscara y toman el color del texto */
:root{
  --i-arrow:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12h14M13 6l6 6-6 6%22/%3E%3C/svg%3E");
  --i-plus:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 5v14M5 12h14%22/%3E%3C/svg%3E");
  --i-check:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 12.5l5 5L20 6.5%22/%3E%3C/svg%3E");
  --i-heart:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z%22/%3E%3Cpath d=%22M9.5 11.5c.7.9 1.5 1.3 2.5 1.3s1.8-.4 2.5-1.3%22/%3E%3C/svg%3E");
  --i-wave:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 9c2-2 4-2 6 0s4 2 6 0 4-2 6 0%22/%3E%3Cpath d=%22M3 15c2-2 4-2 6 0s4 2 6 0 4-2 6 0%22/%3E%3C/svg%3E");
  --i-kite:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l6 7-6 7-6-7z%22/%3E%3Cpath d=%22M12 17c0 2 1 3 3 4M6 10h12M12 3v14%22/%3E%3C/svg%3E");
  --i-sun:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%224%22/%3E%3Cpath d=%22M12 2.5v2M12 19.5v2M4.6 4.6 6 6M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4%22/%3E%3C/svg%3E");
  --i-people:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%228.5%22 cy=%228%22 r=%223%22/%3E%3Ccircle cx=%2216.5%22 cy=%229%22 r=%222.5%22/%3E%3Cpath d=%22M3 19c.6-3 2.8-5 5.5-5s4.9 2 5.5 5M14.5 14.3c.6-.2 1.3-.3 2-.3 2.3 0 4 1.7 4.5 4.5%22/%3E%3C/svg%3E");
  --i-group:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%222.6%22/%3E%3Ccircle cx=%225.5%22 cy=%2210%22 r=%222.1%22/%3E%3Ccircle cx=%2218.5%22 cy=%2210%22 r=%222.1%22/%3E%3Cpath d=%22M7.5 19.5c.4-3 2.2-5 4.5-5s4.1 2 4.5 5M2 18.5c.3-2 1.6-3.4 3.5-3.4M22 18.5c-.3-2-1.6-3.4-3.5-3.4%22/%3E%3C/svg%3E");
  --i-leaf:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 19c0-8 5-13 15-14-1 10-6 15-14 15%22/%3E%3Cpath d=%22M5 19c3-4 6-6.5 9.5-8.5%22/%3E%3C/svg%3E");
  --i-spark:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3v4M12 17v4M3 12h4M17 12h4M6 6l2.5 2.5M15.5 15.5 18 18M18 6l-2.5 2.5M8.5 15.5 6 18%22/%3E%3C/svg%3E");
  --i-video:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%226%22 width=%2213%22 height=%2212%22 rx=%222.5%22/%3E%3Cpath d=%22M16 10.5l5-3v9l-5-3%22/%3E%3C/svg%3E");
  --i-pin:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21s-6.5-6.2-6.5-11a6.5 6.5 0 0 1 13 0c0 4.8-6.5 11-6.5 11z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.3%22/%3E%3C/svg%3E");
  --i-mail:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%225.5%22 width=%2218%22 height=%2213%22 rx=%222.5%22/%3E%3Cpath d=%22M4 7l8 6 8-6%22/%3E%3C/svg%3E");
  --i-phone:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6.5 3.5h3l1.5 4-2 1.3a11 11 0 0 0 6.2 6.2l1.3-2 4 1.5v3a2 2 0 0 1-2.2 2A17 17 0 0 1 4.5 5.7a2 2 0 0 1 2-2.2z%22/%3E%3C/svg%3E");
  --i-calendar:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%225%22 width=%2217%22 height=%2215%22 rx=%222.5%22/%3E%3Cpath d=%22M3.5 10h17M8 3v4M16 3v4%22/%3E%3C/svg%3E");
  --i-shield:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l7.5 3v5.5c0 4.6-3.2 8.2-7.5 9.5-4.3-1.3-7.5-4.9-7.5-9.5V6z%22/%3E%3Cpath d=%22M9 12l2 2 4-4%22/%3E%3C/svg%3E");
  --i-clock:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M12 7.5V12l3 2%22/%3E%3C/svg%3E");
  --i-book:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 5.5A2.5 2.5 0 0 1 6.5 3H20v15H6.5A2.5 2.5 0 0 0 4 20.5z%22/%3E%3Cpath d=%22M4 20.5A2.5 2.5 0 0 1 6.5 18H20v3H6.5%22/%3E%3C/svg%3E");
  --i-x:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 6l12 12M18 6 6 18%22/%3E%3C/svg%3E");
  --i-colibri:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2 7.4l5.7 1.9%22/%3E%3Cpath d=%22M7.7 9.3c.3-1.8 2.3-2.6 3.7-1.6 1.2.8 1.4 2.4 2.5 3.6 1.5 1.7 4 3 5.9 5.9%22/%3E%3Cpath d=%22M7.7 9.3c.1 2.4 1.7 4.4 4.1 5.4 2.3.9 5 1.4 7.6 2.6%22/%3E%3Cpath d=%22M19.4 17.3l2.7-1.4M19.4 17.3l1.6 3.4%22/%3E%3Cpath d=%22M11.8 10.2c.6-3.8 3.2-7 8.1-8.2-.3 4.1-2.8 7.4-6.3 9.6%22/%3E%3Ccircle cx=%229.7%22 cy=%229.1%22 r=%22.35%22/%3E%3C/svg%3E");
  --i-mariposa:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cg transform=%22translate%2812 12.4%29 scale%281.17%29 translate%28-12 -12.6%29%22%3E%3Cpath d=%22M12 8.2v9.6%22/%3E%3Cpath d=%22M12 8.2c-.5-1.9-1.4-3-2.6-3.6M12 8.2c.5-1.9 1.4-3 2.6-3.6%22/%3E%3Cpath d=%22M12 10.4c-1.9-3.5-6.3-5-7.9-3.5-1.3 1.4.2 5 3.9 5.4 1.6.2 3-.4 4-1.1%22/%3E%3Cpath d=%22M12 10.4c1.9-3.5 6.3-5 7.9-3.5 1.3 1.4-.2 5-3.9 5.4-1.6.2-3-.4-4-1.1%22/%3E%3Cpath d=%22M12 12.6c-2 0-5.4 1-5.1 3.9.2 2.1 3.1 2.3 5.1-1%22/%3E%3Cpath d=%22M12 12.6c2 0 5.4 1 5.1 3.9-.2 2.1-3.1 2.3-5.1-1%22/%3E%3C/g%3E%3C/svg%3E");
  --i-brain:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M9.5 4.5A2.5 2.5 0 0 0 7 7a2.5 2.5 0 0 0-2 4 2.5 2.5 0 0 0 1 4.3A2.8 2.8 0 0 0 9.5 19H12V5.2A2.5 2.5 0 0 0 9.5 4.5z%22/%3E%3Cpath d=%22M14.5 4.5A2.5 2.5 0 0 1 17 7a2.5 2.5 0 0 1 2 4 2.5 2.5 0 0 1-1 4.3 2.8 2.8 0 0 1-3.5 3.7H12%22/%3E%3Cpath d=%22M8.5 10.5c1 0 2 .6 2 1.8M15.5 10.5c-1 0-2 .6-2 1.8%22/%3E%3C/svg%3E");
  --i-star:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3.5l2.6 5.3 5.9.9-4.2 4.1 1 5.8L12 16.8l-5.3 2.8 1-5.8-4.2-4.1 5.9-.9z%22/%3E%3C/svg%3E");
  --i-gift:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%228%22 width=%2217%22 height=%224%22 rx=%221%22/%3E%3Cpath d=%22M5 12v8h14v-8M12 8v12M12 8c-1.5-3-5-3.5-5-1.2C7 8 9.5 8 12 8zm0 0c1.5-3 5-3.5 5-1.2C17 8 14.5 8 12 8z%22/%3E%3C/svg%3E");
  --i-cart:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 4h2.2l2 11h10.3l2-7.5H6.3%22/%3E%3Ccircle cx=%229.5%22 cy=%2219%22 r=%221.4%22/%3E%3Ccircle cx=%2216.5%22 cy=%2219%22 r=%221.4%22/%3E%3C/svg%3E");
  --i-truck:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 6.5h11v9H3zM14 9.5h3.7l2.8 3V15.5H14%22/%3E%3Ccircle cx=%227%22 cy=%2217.5%22 r=%221.8%22/%3E%3Ccircle cx=%2217%22 cy=%2217.5%22 r=%221.8%22/%3E%3C/svg%3E");
  --i-cards:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%227.5%22 y=%223.5%22 width=%2212%22 height=%2215%22 rx=%222%22/%3E%3Cpath d=%22M4.5 7.5v11a2 2 0 0 0 2 2h9%22/%3E%3Cpath d=%22M11 9h5M11 12h5M11 15h3%22/%3E%3C/svg%3E");
  --i-puzzle:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 8h3a2 2 0 1 1 4 0h3v3a2 2 0 1 1 0 4v3h-3a2 2 0 1 0-4 0H5v-3a2 2 0 1 0 0-4z%22/%3E%3C/svg%3E");
  --i-home:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 11l8-6.5 8 6.5%22/%3E%3Cpath d=%22M6 9.5V19.5h12V9.5M10 19.5v-5h4v5%22/%3E%3C/svg%3E");
  --i-smile:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M8.5 14c.9 1.4 2.1 2 3.5 2s2.6-.6 3.5-2M9 9.5v.5M15 9.5v.5%22/%3E%3C/svg%3E");
  --i-hand-heart:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 9.5s-3.5-2.1-3.5-4.6A2 2 0 0 1 12 3.8a2 2 0 0 1 3.5 1.1c0 2.5-3.5 4.6-3.5 4.6z%22/%3E%3Cpath d=%22M3 14.5l3-1.5c1-.5 2.2-.4 3 .2l1.8 1.3H14a1.5 1.5 0 0 1 0 3H10M3 19.5l3.5-1.5 5.5 1.5 7.5-3.5a1.6 1.6 0 0 0-1.3-2.9L14 15%22/%3E%3C/svg%3E");
  --i-baby:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2211.5%22 r=%227.5%22/%3E%3Cpath d=%22M9.5 13.5c.7.8 1.5 1.2 2.5 1.2s1.8-.4 2.5-1.2M9.5 10v.4M14.5 10v.4M12 4c-1 1-1 2.2 0 3%22/%3E%3C/svg%3E");
  --i-moon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M19.5 14.5A8 8 0 0 1 9.5 4.5a8 8 0 1 0 10 10z%22/%3E%3C/svg%3E");
  --i-coffee:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 9h12v5a5 5 0 0 1-5 5H9a5 5 0 0 1-5-5z%22/%3E%3Cpath d=%22M16 10.5h1.5a2.5 2.5 0 0 1 0 5H16M8 3.5c-.8 1 .8 2-.1 3M12 3.5c-.8 1 .8 2-.1 3%22/%3E%3C/svg%3E");
  --i-pencil:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20l1-4.5L15.5 5a2.1 2.1 0 0 1 3 3L8 18.5z%22/%3E%3Cpath d=%22M13.5 7l3 3%22/%3E%3C/svg%3E");
  --i-bulb:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M9 17.5h6M10 20.5h4%22/%3E%3Cpath d=%22M12 3.5a6 6 0 0 0-3.6 10.8c.7.6 1.1 1.3 1.1 2.2h5c0-.9.4-1.6 1.1-2.2A6 6 0 0 0 12 3.5z%22/%3E%3C/svg%3E");
  --i-flower:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%229%22 r=%222.2%22/%3E%3Cpath d=%22M12 6.8c-1-2.6.4-4 0-4M12 6.8c-1.8-2-3.8-1.6-4-1.2-.4.9.6 3 2.1 3.4M14.1 8.4c1.5-.4 3.5-2.5 2.6-3.4-.6-.6-2.8-.2-4.7 1.8M9.9 9.6c-2.5.8-3 3-2.4 3.4.8.5 2.7-.1 3.9-1.7M14.1 9.6c2.5.8 3 3 2.4 3.4-.8.5-2.7-.1-3.9-1.7M12 11.2V21M12 17c-2-2-4.5-1.8-5-1.2M12 18.5c1.8-2.3 4.3-2.2 5-1.5%22/%3E%3C/svg%3E");
  --i-target:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%225%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%221.5%22/%3E%3C/svg%3E");
  --i-cap:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2.5 9.5L12 5l9.5 4.5L12 14z%22/%3E%3Cpath d=%22M6.5 11.5v4.2c1.5 1.3 3.4 2 5.5 2s4-.7 5.5-2v-4.2M21.5 9.5v5%22/%3E%3C/svg%3E");
  --i-eye:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%223%22/%3E%3C/svg%3E");
  --i-lock:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%225%22 y=%2210.5%22 width=%2214%22 height=%2210%22 rx=%222.5%22/%3E%3Cpath d=%22M8 10.5V8a4 4 0 0 1 8 0v2.5M12 14.5v2%22/%3E%3C/svg%3E");
  --i-chevron:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 9l6 6 6-6%22/%3E%3C/svg%3E");
  --i-doctoralia:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 20s-6.5-4-6.5-9a3.5 3.5 0 0 1 6.5-1.8A3.5 3.5 0 0 1 18.5 11c0 5-6.5 9-6.5 9z%22/%3E%3Cpath d=%22M12 9v4.5M9.75 11.25h4.5%22/%3E%3C/svg%3E");
  --i-xlogo:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 4l14 16M19 4L5 20%22/%3E%3C/svg%3E");
  --i-link:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7l-1 1%22/%3E%3Cpath d=%22M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7l1-1%22/%3E%3C/svg%3E");
  --i-plus-circle:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210.5%22/%3E%3Cpath d=%22M12 7.5v9M7.5 12h9%22/%3E%3C/svg%3E");
  --i-chat:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 5.5h16v10H9l-5 4z%22/%3E%3C/svg%3E");
  --i-instagram:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%223.5%22 width=%2217%22 height=%2217%22 rx=%225%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%224%22/%3E%3Ccircle cx=%2217.2%22 cy=%226.8%22 r=%22.6%22 fill=%22currentColor%22/%3E%3C/svg%3E");
  --i-facebook:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14.5 8H17V4.5h-2.5A4 4 0 0 0 10.5 8.5V11H8v3.5h2.5V21H14v-6.5h2.6l.6-3.5H14V8.8c0-.5.3-.8.5-.8z%22/%3E%3C/svg%3E");
  --i-tiktok:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 3.5v11.2a3.8 3.8 0 1 1-3.3-3.8%22/%3E%3Cpath d=%22M14 3.5c.4 2.6 2.2 4.4 5 4.6%22/%3E%3C/svg%3E");
  --i-linkedin:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223.5%22 y=%223.5%22 width=%2217%22 height=%2217%22 rx=%223%22/%3E%3Cpath d=%22M8 10.5V17M8 7.3v.1M11.5 17v-6.5M11.5 13.2c0-1.6 1-2.7 2.4-2.7s2.3 1 2.3 2.7V17%22/%3E%3C/svg%3E");
  --i-wa:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%23000%22 stroke=%22none%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 0 1-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 0 1-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 0 1 2.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0 0 12.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 0 0 5.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 0 0-3.48-8.413Z%22/%3E%3C/svg%3E");
  --i-chevron-field:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237A7590%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-width=%222%22%3E%3Cpath d=%22M6 9l6 6 6-6%22/%3E%3C/svg%3E");
  --logo:url("../img/logo-paola-beltran-horizontal.svg");
  --deco-curva:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 640 520%22%3E%3Cpath d=%22M590 40C520 120 400 90 250 70 110 50 30 110 40 230c10 130 120 200 230 250%22 fill=%22none%22 stroke=%22%23ffffff%22 stroke-opacity=%22.85%22 stroke-width=%2222%22 stroke-linecap=%22round%22/%3E%3C/svg%3E");
}

/* 2. Base ------------------------------------------------------------------ */
*,*::before,*::after{box-sizing:inherit}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + env(safe-area-inset-top,0px) + 12px);-webkit-text-size-adjust:100%}
html{background:var(--c-bg)}
body{margin:0;background:transparent;color:var(--c-ink);font-family:var(--f-body);font-size:var(--fs-body);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img,svg,video,iframe{max-width:100%}
/* Degradado de fondo fijo detrás de todo el sitio */
body::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(110deg,var(--c-bg-a),var(--c-bg-b));pointer-events:none}
img,svg{display:block;height:auto}
a{color:var(--c-brand);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px;color:var(--c-brand)}
:focus-visible{outline:2px solid var(--c-brand);outline-offset:3px;border-radius:4px}
button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}
::selection{background:var(--c-tint-2)}
figure{margin:0}

/* 3. Tipografía -------------------------------------------------------------- */
h1,h2,h3,h4{font-family:var(--f-display);font-weight:400;line-height:1.14;letter-spacing:-.01em;margin:0 0 .5em;color:var(--c-ink);text-wrap:balance;overflow-wrap:break-word}
h1{font-size:var(--fs-h1)}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3);line-height:1.28}
p{margin:0 0 1em;max-width:70ch;overflow-wrap:break-word}
.lead{font-size:var(--fs-lead);color:var(--c-muted);line-height:1.6}
.section-intro{max-width:60ch;color:var(--c-muted);font-size:var(--fs-lead);margin:0}

/* 4. Utilidades -------------------------------------------------------------- */
.container{width:min(100% - 2 * var(--gutter),var(--container));margin-inline:auto}
.section{padding-block:var(--space-section)}
.section--tint,.section--blush,.section--sand,.is-style-pbm-fondo-lavanda,.is-style-pbm-fondo-durazno,.is-style-pbm-fondo-arena{background:transparent}
/* Las secciones destacadas se muestran como una tarjeta grande redondeada */
.section--tint > .container,.section--blush > .container,.section--sand > .container,
.is-style-pbm-fondo-lavanda > .container,.is-style-pbm-fondo-durazno > .container,.is-style-pbm-fondo-arena > .container{background:var(--card-bg,var(--c-surface));border-radius:var(--radius-xl);padding:clamp(2rem,1.2rem + 3.5vw,4.5rem) clamp(1.25rem,.6rem + 3.5vw,4.5rem)}
.section--blush,.is-style-pbm-fondo-durazno{--card-bg:color-mix(in srgb,var(--c-blush) 70%,var(--c-surface))}
.section--sand,.is-style-pbm-fondo-arena{--card-bg:color-mix(in srgb,var(--c-sand) 70%,var(--c-surface))}
@media (max-width:620px){.section--tint > .container,.section--blush > .container,.section--sand > .container,.is-style-pbm-fondo-lavanda > .container,.is-style-pbm-fondo-durazno > .container,.is-style-pbm-fondo-arena > .container{width:calc(100% - 1.25rem);border-radius:24px}}
.section-head{display:grid;gap:.85rem;margin-bottom:clamp(2rem,1.4rem + 2vw,3.25rem)}
.section-head > *{margin:0}
.section-head--split{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:end;gap:1rem 2.5rem}
@media (max-width:820px){.section-head--split{grid-template-columns:1fr}}
.visually-hidden,.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:1rem;top:-100px;z-index:200;background:var(--c-brand);color:var(--c-brand-ink);padding:.6rem 1rem;border-radius:var(--radius-sm)}
.skip-link:focus{top:calc(1rem + env(safe-area-inset-top,0px));color:var(--c-brand-ink)}
.placeholder{background:#FFF3BF;color:#574500;padding:0 .25em;border-radius:4px;font-weight:600}
.tone-lav{background:var(--c-tint)}.tone-blush{background:var(--c-blush)}.tone-sky{background:var(--c-sky)}.tone-sand{background:var(--c-sand)}.tone-mint{background:var(--c-mint)}

/* Íconos por clase: un elemento con .ico-* muestra su ícono en ::before */
[class*="ico-"]{--ico:none}
.ico-heart{--ico:var(--i-heart)}.ico-wave{--ico:var(--i-wave)}.ico-kite{--ico:var(--i-kite)}.ico-sun{--ico:var(--i-sun)}
.ico-people{--ico:var(--i-people)}.ico-group{--ico:var(--i-group)}.ico-clock{--ico:var(--i-clock)}.ico-calendar{--ico:var(--i-calendar)}
.ico-shield{--ico:var(--i-shield)}.ico-video{--ico:var(--i-video)}.ico-pin{--ico:var(--i-pin)}.ico-mail{--ico:var(--i-mail)}
.ico-phone{--ico:var(--i-phone)}.ico-check{--ico:var(--i-check)}.ico-chat{--ico:var(--i-chat)}.ico-leaf{--ico:var(--i-leaf)}
.mask-ico{background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}

/* 5. Botones (maqueta: .btn · WordPress: bloque Botón) ------------------------- */
.btn,.wp-block-buttons .wp-block-button a.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:48px;padding:.75rem 1.4rem;border-radius:999px;font-family:var(--f-body);font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none;border:1.5px solid var(--c-brand);background:var(--c-brand);color:var(--c-brand-ink);cursor:pointer;transition:background-color .15s,color .15s,border-color .15s;text-align:center}
.btn:hover,.wp-block-buttons .wp-block-button a.wp-block-button__link:hover,.wp-block-buttons .wp-block-button a.wp-block-button__link:focus{background:var(--c-brand-hover);border-color:var(--c-brand-hover);color:var(--c-brand-ink);text-decoration:none}
.btn--ghost,.wp-block-buttons .wp-block-button.is-style-outline a.wp-block-button__link{background:transparent;color:var(--c-brand);border-color:var(--c-brand)}
.btn--ghost:hover,.wp-block-buttons .wp-block-button.is-style-outline a.wp-block-button__link:hover,.wp-block-buttons .wp-block-button.is-style-outline a.wp-block-button__link:focus{background:var(--c-tint);color:var(--c-brand)}
.btn--soft,.wp-block-buttons .wp-block-button.is-style-suave a.wp-block-button__link{background:var(--c-butter);border-color:var(--c-butter);color:var(--c-ink)}
.btn--soft:hover,.wp-block-buttons .wp-block-button.is-style-suave a.wp-block-button__link:hover{background:var(--c-butter-hover);border-color:var(--c-butter-hover);color:var(--c-ink)}
.btn--small{min-height:42px;padding:.5rem 1.1rem;font-size:.95rem}
.btn--wa::before,.btn-wa .wp-block-button__link::before{content:"";width:20px;height:20px;flex:none;background:currentColor;-webkit-mask:var(--i-wa) center/contain no-repeat;mask:var(--i-wa) center/contain no-repeat}
.btn-row,.wp-block-buttons.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:0}
@media (max-width:480px){.btn-row>*,.btn-row .wp-block-button{flex:1 1 100%}.btn-row .btn,.btn-row .wp-block-button__link{width:100%}}
.more,.more a{font-weight:600;color:var(--c-brand);text-decoration:none}
.more{display:inline-block;margin:0}
.more::after{content:"";display:inline-block;vertical-align:-4px;margin-left:.45rem;width:18px;height:18px;background:currentColor;-webkit-mask:var(--i-arrow) center/contain no-repeat;mask:var(--i-arrow) center/contain no-repeat;transition:transform .15s}
.more:hover::after{transform:translateX(3px)}

/* 6. Header ------------------------------------------------------------------ */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:61;background:var(--c-bg-a)}
.pbm-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:transparent;border-bottom:1px solid transparent;transition:background-color .25s,border-color .25s,box-shadow .25s}
.pbm-header.is-scrolled{background:color-mix(in srgb,var(--c-bg) 88%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom-color:var(--c-line)}
.pbm-header__inner{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:1.25rem}
.brand{display:inline-flex;align-items:center;flex:none;color:var(--c-brand);text-decoration:none}
.brand__logo{display:block;width:clamp(170px,12vw + 100px,236px);aspect-ratio:3394.42/731.93;background:currentColor;-webkit-mask:var(--logo) center/contain no-repeat;mask:var(--logo) center/contain no-repeat}
.brand img{max-height:52px;width:auto}
.main-nav{display:flex;align-items:center;gap:1.5rem}
.main-nav ul{display:flex;gap:1.35rem;list-style:none;margin:0;padding:0}
.main-nav ul a{color:var(--c-ink);text-decoration:none;font-weight:500;font-size:.98rem;padding:.4rem 0;border-bottom:2px solid transparent;white-space:nowrap}
.main-nav ul a:hover,.main-nav ul a[aria-current]{border-bottom-color:var(--c-brand);color:var(--c-ink)}
.nav-toggle{display:none;width:46px;height:46px;padding:0;border-radius:12px;border:1px solid var(--c-line);background:var(--c-surface);align-items:center;justify-content:center;cursor:pointer}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{display:block;width:18px;height:2px;background:var(--c-ink);border-radius:2px;position:relative;transition:transform .2s}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0}
.nav-toggle span::before{top:-6px}.nav-toggle span::after{top:6px}
.nav-toggle[aria-expanded="true"] span{background:transparent}
.nav-toggle[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:1040px){
  .nav-toggle{display:inline-flex}
  .main-nav{position:fixed;inset:calc(var(--header-h) + env(safe-area-inset-top,0px)) 0 auto 0;background:var(--c-bg);flex-direction:column;align-items:stretch;gap:1rem;padding:.5rem var(--gutter) calc(1.5rem + env(safe-area-inset-bottom,0px));border-bottom:1px solid var(--c-line);box-shadow:0 18px 40px -20px rgba(40,30,80,.3);display:none;max-height:calc(100dvh - var(--header-h) - env(safe-area-inset-top,0px));overflow:auto}
  .main-nav.is-open{display:flex}
  .main-nav ul{flex-direction:column;gap:0}
  .main-nav ul a{display:block;padding:.9rem 0;border-bottom:1px solid var(--c-line);font-size:1.1rem}
  .main-nav ul a[aria-current]{border-bottom-color:var(--c-line);color:var(--c-brand);font-weight:700}
}

/* 7. Inicio ----------------------------------------------------------------- */
/* Hero: tarjeta blanca con la foto en un rectángulo alto que sobresale */
.hero{padding-block:clamp(1.5rem,1rem + 3vw,3.5rem) clamp(2.5rem,2rem + 3vw,4.5rem)}
.hero__card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(1.5rem,1rem + 3vw,4rem);align-items:center;background:var(--c-surface);border-radius:var(--radius-xl);padding:0 clamp(1.25rem,.5rem + 3vw,3rem) 0 clamp(1.5rem,1rem + 4vw,5rem);margin-block:clamp(1.5rem,1rem + 2vw,3rem)}
.hero__card > *{margin:0}
.hero__text{padding-block:clamp(2.25rem,1.8rem + 2vw,3.75rem)}
.hero__text h1{font-size:clamp(2.2rem,1.6rem + 2.4vw,3.5rem)}
.hero__text > *{margin-block:0}
.hero__text h1{margin-bottom:1.25rem}
.hero__text .lead{margin-bottom:2rem}
.facts{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;list-style:none;padding:0;margin:2rem 0 0;color:var(--c-muted);font-size:.97rem}
.facts li{position:relative;padding-left:1.75rem;margin:0}
.facts li::before{content:"";position:absolute;left:0;top:.2em;width:20px;height:20px;background:var(--c-brand);-webkit-mask:var(--i-check) center/contain no-repeat;mask:var(--i-check) center/contain no-repeat}
.hero__note{margin-top:1.5rem!important;font-size:.95rem;color:var(--c-muted);padding:.8rem 1rem;border-radius:var(--radius-md);background:var(--c-bg);max-width:46ch}
.hero__note strong{color:var(--c-ink)}
.hero__media{position:relative;align-self:stretch;margin-block:calc(clamp(1.5rem,1rem + 2vw,3rem) * -1)!important;border-radius:var(--radius-lg);overflow:hidden;min-height:clamp(380px,18vw + 230px,490px);box-shadow:0 30px 60px -40px rgba(30,26,61,.45)}
.hero__media img,.hero__media .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.hero__media.wp-block-cover{padding:0;min-height:clamp(380px,18vw + 230px,490px)!important}
.hero__media .wp-block-cover__inner-container{display:none}
@media (min-width:641px) and (max-width:860px){
  .hero__card{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:1.5rem;padding:1.5rem}
  .hero__text{padding-block:.75rem}
  .hero__text h1{font-size:clamp(2rem,1.4rem + 2.2vw,2.5rem)}
  .hero__media{margin-block:0!important;min-height:360px;align-self:stretch}
  .hero__media.wp-block-cover{min-height:360px!important}
  .hero .btn-row .btn{flex:1 1 100%}
}
@media (max-width:640px){
  .hero__card{grid-template-columns:1fr;padding:0 clamp(1.25rem,1rem + 2vw,2rem);margin-block:.5rem 0}
  .hero__text{padding-block:2.25rem 2rem}
  .hero__media{display:none}
  .pbm-hero-foto-movil .hero__media,.hero--foto-movil .hero__media{display:block;margin:0 0 1.5rem!important;min-height:0;aspect-ratio:4/5}
  .pbm-hero-foto-movil .hero__media.wp-block-cover,.hero--foto-movil .hero__media.wp-block-cover{min-height:0!important}
}

/* Sobre mí */
.about__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:center}
.about__media img{width:100%;border-radius:var(--radius-lg);aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.credentials{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:1rem 1.5rem;list-style:none;padding:0;margin:2rem 0 0}
.credentials li{border-top:1px solid color-mix(in srgb,var(--c-brand) 25%,transparent);padding-top:.9rem;color:var(--c-muted);font-size:.95rem;margin:0}
.credentials strong{display:block;color:var(--c-ink);font-size:1rem}
.signature{font-family:var(--f-display);font-size:1.35rem;color:var(--c-brand);margin:1.75rem 0 0}
@media (min-width:641px) and (max-width:860px){.about__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2rem;align-items:start}}
@media (max-width:640px){.about__grid{grid-template-columns:1fr}.about__media{max-width:440px;margin-inline:auto}}

/* Servicios: ícono por clase .ico-* y tono por .tone-* en la tarjeta */
.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;list-style:none;padding:0;margin:0}
.services > *{margin:0}
.service{position:relative;display:flex;flex-direction:column;gap:.85rem;padding:calc(clamp(1.5rem,1.2rem + 1vw,2rem) + 70px) clamp(1.5rem,1.2rem + 1vw,2rem) clamp(1.5rem,1.2rem + 1vw,2rem);border-radius:var(--radius-lg);background:var(--c-surface)!important;border:1px solid var(--c-line);transition:border-color .15s}
.service > *{margin:0}
.service::before{content:"";position:absolute;top:clamp(1.5rem,1.2rem + 1vw,2rem);left:clamp(1.5rem,1.2rem + 1vw,2rem);width:56px;height:56px;border-radius:18px;background:var(--tile,var(--c-tint))}
.service::after{content:"";position:absolute;top:calc(clamp(1.5rem,1.2rem + 1vw,2rem) + 14px);left:calc(clamp(1.5rem,1.2rem + 1vw,2rem) + 14px);width:28px;height:28px;background:var(--c-brand);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.service.tone-mint{--tile:var(--c-mint)}.service.tone-lav{--tile:var(--c-tint)}.service.tone-blush{--tile:var(--c-blush)}.service.tone-sky{--tile:var(--c-sky)}.service.tone-sand{--tile:var(--c-sand)}
.service h3{margin:0}
.service p{color:var(--c-muted)}
.service p:not(.more){flex:1}
.service .more a::after{content:"";position:absolute;inset:0;border-radius:var(--radius-lg)}
.service:hover{border-color:var(--c-brand)}
.service:focus-within{outline:2px solid var(--c-brand);outline-offset:3px}
.service .more a:focus-visible{outline:none}
@media (max-width:980px){.services{gap:1rem}.services .service{padding-inline:1.15rem;padding-bottom:1.25rem}.services .service h3{font-size:1.12rem}.services .service p{font-size:.93rem}}
@media (max-width:700px){.services{grid-template-columns:1fr}}

/* Proceso */
.process{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.58fr);gap:clamp(2rem,1rem + 3vw,4rem);align-items:start}
.process > *{margin:0}
.steps{list-style:none;margin:0;padding:0;counter-reset:step;display:grid}
.steps > *{margin:0}
.step{display:grid;grid-template-columns:64px minmax(0,1fr);gap:1.25rem;padding:1.6rem 0;border-top:1px solid color-mix(in srgb,var(--c-brand) 22%,transparent)}
.step:last-child{border-bottom:1px solid color-mix(in srgb,var(--c-brand) 22%,transparent)}
.step::before{counter-increment:step;content:counter(step);font-family:var(--f-display);font-size:2.8rem;line-height:1;color:var(--c-brand)}
.step > div > *{margin:0}
.step h3{margin-bottom:.35rem}
.step p{color:var(--c-muted)}
.process__aside{display:grid;gap:1.25rem;position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}
.process > .mode-card{position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}
@media (max-width:900px){.process > .mode-card{position:static}}
.process__aside > *{margin:0}
.process__photo{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16/10!important;position:relative;margin:0}
.process__photo img,.process__photo .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.process__photo.wp-block-cover{min-height:0!important;padding:0}
.process__photo .wp-block-cover__inner-container{display:none}
.mode-card{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:0 24px 50px -36px rgba(30,26,61,.35);padding:clamp(1.5rem,1.2rem + 1vw,2rem)}
.mode-card > *{margin:0 0 1rem}
.mode-card > :last-child{margin-bottom:0}
.mode-list{list-style:none;padding:0;display:grid;gap:.85rem;margin:1.25rem 0 1.5rem!important}
.mode-list li{position:relative;padding-left:2rem;margin:0}
.mode-list li::before{content:"";position:absolute;left:0;top:.15em;width:22px;height:22px;background:var(--c-brand);-webkit-mask:var(--ico,var(--i-check)) center/contain no-repeat;mask:var(--ico,var(--i-check)) center/contain no-repeat}
@media (max-width:900px){.process{grid-template-columns:1fr}.process__aside{position:static}}
@media (max-width:520px){.step{grid-template-columns:44px minmax(0,1fr);gap:.9rem}.step::before{font-size:2.2rem}}

/* Condiciones de atención: información de apoyo, jerarquía baja */
.notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,1.5rem + 2vw,3rem)}
.notes > *{margin:0}
.note{display:grid;grid-template-columns:24px minmax(0,1fr);gap:.1rem .75rem;padding:1rem 1.15rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--c-surface) 70%,transparent);font-size:.93rem;line-height:1.5}
.note::before{content:"";grid-row:span 2;width:20px;height:20px;margin-top:2px;background:var(--c-brand);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.note > *{margin:0}
.note h3{font-family:var(--f-body);font-weight:700;font-size:.95rem;line-height:1.4}
.note p{color:var(--c-muted)}
@media (max-width:860px){.notes{grid-template-columns:1fr}}

/* Cuándo buscar acompañamiento */
.signals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;list-style:none;padding:0;margin:0}
.signals > *{margin:0}
.signal{background:var(--c-surface);border-radius:var(--radius-lg);padding:clamp(1.4rem,1.1rem + 1vw,2rem);display:flex;flex-direction:column;gap:.75rem;box-shadow:0 24px 50px -40px rgba(30,26,61,.35)}
.signal > *{margin:0}
.signal h3{font-size:1.28rem}
.signal p{color:var(--c-muted)}
.callout-row{margin-top:2rem;display:flex;flex-wrap:wrap;gap:1.25rem 2rem;align-items:center;justify-content:space-between;padding:clamp(1.5rem,1rem + 2vw,2.25rem);border-radius:var(--radius-lg);background:var(--c-ink);color:var(--c-brand-ink)}
.callout-row p{color:var(--c-brand-ink)}
.callout-row .btn,.callout-row .wp-block-buttons .wp-block-button a.wp-block-button__link{background:var(--c-butter);border-color:var(--c-butter);color:var(--c-ink)}
.callout-row > *{margin:0}
.callout-row p{font-family:var(--f-display);font-size:clamp(1.25rem,1.1rem + .7vw,1.65rem);line-height:1.3;max-width:34ch}
@media (max-width:900px){.signals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.signals{grid-template-columns:1fr}}

/* Tarjetas de artículos (maqueta y bloque Consulta/Query Loop) */
.chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0 0 2.25rem}
.chips li{margin:0}
.chip{display:inline-flex;align-items:center;min-height:40px;padding:.4rem .95rem;border-radius:999px;border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-ink);text-decoration:none;font-weight:500;font-size:.93rem;white-space:nowrap}
.chip:hover{border-color:var(--c-brand);color:var(--c-ink)}
.chip[aria-current]{background:var(--c-brand);border-color:var(--c-brand);color:var(--c-brand-ink)}
.posts,.posts-query .wp-block-post-template{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem;list-style:none;padding:0;margin:0}
.posts-query .wp-block-post-template > li{margin:0}
@media (max-width:900px){.posts,.posts-query .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.posts,.posts-query .wp-block-post-template{grid-template-columns:1fr}}
.post-card,.posts-query li{display:flex;flex-direction:column;gap:.65rem;position:relative}
.post-card > *,.posts-query li > *{margin:0}
.post-card__thumb,.posts-query .wp-block-post-featured-image{aspect-ratio:3/2;border-radius:var(--radius-md);overflow:hidden;display:grid;place-items:center;color:var(--c-brand)}
.post-card__thumb img,.posts-query .wp-block-post-featured-image img{width:100%;height:100%;object-fit:cover}
.post-card__thumb .mask-ico{width:20%;aspect-ratio:1;opacity:.75}
.post-card__cat,.posts-query .wp-block-post-terms a{font-size:.86rem;font-weight:700;color:var(--c-accent);text-decoration:none;position:relative;z-index:1;align-self:flex-start;letter-spacing:.01em}
.post-card h3,.post-card h2,.posts-query .wp-block-post-title{font-size:1.25rem;line-height:1.28;margin:0;font-family:var(--f-display)}
.post-card h3 a,.post-card h2 a,.posts-query .wp-block-post-title a{color:var(--c-ink);text-decoration:none}
.post-card h3 a::after,.post-card h2 a::after,.posts-query .wp-block-post-title a::after{content:"";position:absolute;inset:0}
.post-card:hover h3 a,.post-card:hover h2 a,.posts-query li:hover .wp-block-post-title a{text-decoration:underline}
.post-card p,.posts-query .wp-block-post-excerpt__excerpt{color:var(--c-muted);font-size:.97rem;margin:0}
.post-card__meta,.posts-query .wp-block-post-date{font-size:.86rem;color:var(--c-muted)}

/* Preguntas frecuentes (maqueta y bloque Detalles) */
.faq{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:start}
.faq > *{margin:0}
.faq__intro > *{margin:0 0 1rem}
.faq__list{border-top:1px solid var(--c-line)}
.faq__list > *{margin:0}
.faq details{border-bottom:1px solid var(--c-line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem 0;font-weight:600;font-size:1.06rem;line-height:1.4}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:32px;height:32px;flex:none;border-radius:50%;border:1px solid var(--c-field);background:var(--c-ink);-webkit-mask:var(--i-plus-circle) center/contain no-repeat;mask:var(--i-plus-circle) center/contain no-repeat;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details > :not(summary){margin:0 0 1.3rem;padding-right:3rem;color:var(--c-muted)}
@media (max-width:860px){.faq{grid-template-columns:1fr}.faq details > :not(summary){padding-right:0}}

/* Contacto */
.contact{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(1.5rem,1rem + 3vw,3.5rem);align-items:start}
.contact > *{margin:0}
.contact-card{border-radius:var(--radius-lg);padding:clamp(1.4rem,1.1rem + 1vw,1.75rem);background:var(--c-surface);border:1px solid var(--c-line)}
.contact-card > *{margin:0 0 1rem}
.contact-card > :last-child{margin-bottom:0}
.contact-card h3{font-size:1.25rem}
.contact-list{list-style:none;padding:0;display:grid;gap:.85rem}
.contact-list li{position:relative;padding-left:2.1rem;margin:0;overflow-wrap:anywhere}
.contact-list li::before{content:"";position:absolute;left:0;top:.15em;width:22px;height:22px;background:var(--c-brand);-webkit-mask:var(--ico,var(--i-check)) center/contain no-repeat;mask:var(--ico,var(--i-check)) center/contain no-repeat}
.contact-list a{color:var(--c-ink)}
.map-ph,.contact-card iframe{width:100%;aspect-ratio:16/10;border:0;border-radius:var(--radius-md);background:var(--c-tint-2);display:grid;place-items:center;text-align:center;padding:1rem;color:var(--c-brand);font-weight:600;font-size:.95rem}
.contact-card iframe{padding:0;display:block}
@media (max-width:900px){.contact{grid-template-columns:1fr}}

/* Banda de llamado a la acción */
.cta-band{border-radius:var(--radius-lg);background:var(--c-brand);color:var(--c-brand-ink);padding:clamp(1.75rem,1.2rem + 3vw,3.25rem);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem 2rem;align-items:center}
.cta-band > *{margin:0}
.cta-band h2{color:var(--c-brand-ink);margin-bottom:.35rem}
.cta-band p{margin:0;color:color-mix(in srgb,var(--c-brand-ink) 86%,transparent)}
.cta-band .btn,.cta-band .wp-block-buttons .wp-block-button a.wp-block-button__link{background:var(--c-brand-ink);border-color:var(--c-brand-ink);color:var(--c-brand)}
.cta-band .btn:hover,.cta-band .wp-block-buttons .wp-block-button a.wp-block-button__link:hover{background:var(--c-tint);border-color:var(--c-tint);color:var(--c-brand)}
@media (max-width:760px){.cta-band{grid-template-columns:1fr}}

/* 8. Formularios (maqueta, Contact Form 7, WPForms, Fluent Forms) ----------------- */
.pbm-form,.pbm-form form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem 1.25rem}
.pbm-form{background:var(--c-surface);border-radius:var(--radius-lg);padding:clamp(1.25rem,.9rem + 2vw,2.5rem);border:1px solid var(--c-line)}
.pbm-form form{grid-column:1/-1}
.pbm-form .full,.pbm-form p:has(textarea),.pbm-form p:has([type=submit]),.pbm-form p:has([type=checkbox]),.pbm-form .wpcf7-response-output{grid-column:1/-1}
.pbm-form p{margin:0;max-width:none}
.pbm-form label{display:block;font-weight:600;font-size:.95rem;margin-bottom:.35rem}
.pbm-form label .opt{font-weight:400;color:var(--c-muted)}
.pbm-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),.pbm-form select,.pbm-form textarea{display:block;width:100%;min-height:50px;padding:.75rem 1rem;border:1px solid var(--c-field);border-radius:var(--radius-sm);background:var(--c-bg);color:var(--c-ink);font-size:1rem;line-height:1.4;box-shadow:none}
.pbm-form textarea{min-height:130px;resize:vertical}
.pbm-form input:focus,.pbm-form select:focus,.pbm-form textarea:focus{outline:2px solid var(--c-brand);outline-offset:1px;border-color:var(--c-brand)}
/* Lista desplegable: flecha propia con aire a la derecha */
.pbm-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:3rem;cursor:pointer;background-image:var(--i-chevron-field);background-repeat:no-repeat;background-position:right 1rem center;background-size:18px 18px;text-overflow:ellipsis}
.pbm-form select option{background:var(--c-surface);color:var(--c-ink);padding:.5rem}
/* Navegadores que permiten diseñar el desplegable (Chrome, Edge): menú con estilo propio */
@supports (appearance:base-select){
  .pbm-form select,.pbm-form select::picker(select){appearance:base-select}
  .pbm-form select{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-right:1rem;background-image:none}
  .pbm-form select::picker-icon{content:"";width:18px;height:18px;background:var(--c-muted);-webkit-mask:var(--i-chevron) center/contain no-repeat;mask:var(--i-chevron) center/contain no-repeat;transition:rotate .2s}
  .pbm-form select:open::picker-icon{rotate:180deg}
  .pbm-form select::picker(select){min-width:anchor-size(width);max-width:min(92vw,40rem);border:1px solid var(--c-line);border-radius:14px;padding:.4rem;margin-top:.35rem;background:var(--c-surface);box-shadow:0 20px 44px -18px rgba(40,30,80,.35)}
  .pbm-form select option{display:flex;align-items:center;gap:.6rem;padding:.65rem .8rem;border-radius:9px;font-size:.98rem;line-height:1.35;cursor:pointer;background:transparent}
  .pbm-form select option:hover,.pbm-form select option:focus-visible{background:var(--c-tint);outline:none}
  .pbm-form select option:checked{background:var(--c-tint);font-weight:600;color:var(--c-brand)}
  .pbm-form select option::checkmark{content:"";width:16px;height:16px;order:1;margin-left:auto;background:var(--c-brand);-webkit-mask:var(--i-check) center/contain no-repeat;mask:var(--i-check) center/contain no-repeat}
  .pbm-form select option[value=""]{color:var(--c-muted)}
}
.pbm-form .check,.pbm-form .wpcf7-acceptance label{display:flex;gap:.65rem;align-items:flex-start;font-size:.93rem;color:var(--c-muted);font-weight:400}
.pbm-form input[type=checkbox]{width:20px;height:20px;margin:2px 0 0;accent-color:var(--c-brand);flex:none}
.pbm-form [type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.75rem 1.6rem;border-radius:999px;border:0;background:var(--c-brand);color:var(--c-brand-ink);font-weight:600;font-size:1rem;cursor:pointer}
.pbm-form [type=submit]:hover{background:var(--c-brand-hover)}
.form__status{grid-column:1/-1;margin:0;font-weight:600;color:var(--c-brand);min-height:1.2em}
.pbm-form .wpcf7-not-valid-tip{color:#B3261E;font-size:.88rem;margin-top:.3rem}
@media (max-width:620px){.pbm-form,.pbm-form form{grid-template-columns:1fr}.pbm-form [type=submit]{width:100%}}

/* 9. Blog ---------------------------------------------------------------------- */
.blog-top{padding-block:clamp(1.25rem,1rem + 1.2vw,2rem) 0}
.blog-top__inner{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 2rem}
.blog-top h1{font-size:clamp(1.8rem,1.5rem + 1.3vw,2.5rem);margin:0}
.blog-top p{margin:0;color:var(--c-muted);max-width:52ch;font-size:.98rem}
.cat-nav{position:sticky;top:calc(var(--header-h) + env(safe-area-inset-top,0px));z-index:40;background:var(--c-bg);border-bottom:1px solid var(--c-line);margin-top:.9rem}
.cat-nav ul{display:flex;gap:.45rem;list-style:none;margin:0;padding:.7rem 0;overflow-x:auto;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,#000 92%,transparent);mask:linear-gradient(90deg,#000 92%,transparent)}
.cat-nav ul::-webkit-scrollbar{display:none}
.cat-nav li{flex:none;margin:0}
.cat-nav li:last-child{padding-right:2rem}
/* Portada: un destacado grande + dos recientes */
.lead-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(1.5rem,1rem + 2vw,2.5rem);padding-block:1.75rem 2rem}
.lead-grid[hidden]{display:none}
.feature{display:grid;gap:.9rem;position:relative;align-content:start}
.feature > *{margin:0}
.feature__thumb{aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;display:grid;place-items:center;color:var(--c-brand)}
.feature__thumb img{width:100%;height:100%;object-fit:cover}
.feature__thumb .mask-ico{width:14%;aspect-ratio:1;opacity:.75}
.feature h2{font-size:clamp(1.55rem,1.3rem + 1.1vw,2.15rem);margin:0}
.feature h2 a{color:var(--c-ink);text-decoration:none}
.feature h2 a::after{content:"";position:absolute;inset:0}
.feature:hover h2 a{text-decoration:underline}
.feature p{margin:0;color:var(--c-muted)}
.side-list{display:grid;gap:1.25rem;align-content:start}
.side-list > h2{font-family:var(--f-body);font-size:.95rem;font-weight:700;margin:0;padding-bottom:.6rem;border-bottom:1px solid var(--c-line)}
.mini{display:grid;grid-template-columns:120px minmax(0,1fr);gap:1rem;position:relative;align-items:start}
.mini > div > *{margin:0 0 .3rem}
.mini .post-card__thumb{aspect-ratio:4/3;border-radius:12px}
.mini .post-card__thumb .mask-ico{width:34%}
.mini h3{font-size:1.08rem;line-height:1.3}
.mini h3 a{color:var(--c-ink);text-decoration:none}
.mini h3 a::after{content:"";position:absolute;inset:0}
.mini:hover h3 a{text-decoration:underline}
.mini .post-card__meta{margin:0}
@media (max-width:900px){.lead-grid{grid-template-columns:1fr}}
@media (max-width:420px){.mini{grid-template-columns:96px minmax(0,1fr)}}
.cat-block{padding-block:2.75rem;border-top:1px solid var(--c-line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);gap:1.5rem 2rem}
.cat-block[hidden]{display:none}
.cat-block__head{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}
.cat-block__head > *{margin:0}
.cat-block__head h2{font-size:clamp(1.45rem,1.3rem + .7vw,1.9rem)}
.cat-block__head p{color:var(--c-muted);font-size:.97rem}
.cat-block .posts{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){.cat-block{grid-template-columns:1fr}}
@media (max-width:600px){.cat-block .posts{grid-template-columns:1fr}}
.archive-grid{padding-block:2rem var(--space-section)}
.pagination{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:3rem}
.pagination .page-numbers{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 .9rem;border-radius:999px;border:1px solid var(--c-line);color:var(--c-ink);text-decoration:none}
.pagination .current{background:var(--c-brand);border-color:var(--c-brand);color:var(--c-brand-ink)}
.newsletter{margin-block:2.5rem var(--space-section);border-radius:var(--radius-lg);background:var(--c-blush);padding:clamp(1.5rem,1rem + 3vw,2.75rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem 2rem;align-items:center}
.newsletter > *{margin:0}
.newsletter h2{font-size:clamp(1.45rem,1.3rem + .9vw,2rem);margin-bottom:.35rem}
.newsletter p{margin:0;color:var(--c-muted)}
.newsletter form{display:flex;gap:.6rem;flex-wrap:wrap}
.newsletter input{flex:1 1 220px;min-height:48px;border-radius:999px;border:1px solid var(--c-field);padding:.7rem 1.1rem;background:var(--c-surface)}
@media (max-width:820px){.newsletter{grid-template-columns:1fr}}

/* 10. Artículo ---------------------------------------------------------------- */
.breadcrumbs,.rank-math-breadcrumb,#breadcrumbs{font-size:.88rem;color:var(--c-muted);padding-top:1.25rem;margin:0}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:0}
.breadcrumbs li{margin:0}
.breadcrumbs li+li::before{content:"/";margin-right:.35rem;color:var(--c-field)}
.breadcrumbs a,.rank-math-breadcrumb a,#breadcrumbs a{color:var(--c-muted)}
.article-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(1.25rem,1rem + 2.5vw,3rem);align-items:center;padding-block:1.25rem 2rem}
.article-hero__text > *{margin:0}
.article-hero h1{font-size:clamp(1.9rem,1.5rem + 1.9vw,3rem);margin:.5rem 0 .85rem}
.article-hero .lead{margin-bottom:1.1rem}
.article-hero__media{aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden;display:grid;place-items:center;color:var(--c-brand);margin:0}
.article-hero__media img{width:100%;height:100%;object-fit:cover}
.article-hero__media .mask-ico{width:18%;aspect-ratio:1;opacity:.75}
@media (max-width:860px){
  .article-hero{grid-template-columns:1fr;padding-bottom:1.5rem}
  .article-hero__media{aspect-ratio:16/9}
}
.byline{display:flex;align-items:center;gap:.75rem;color:var(--c-muted);font-size:.92rem;line-height:1.4}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.byline strong{color:var(--c-ink);display:block}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(2rem,1rem + 3vw,4rem);align-items:start;padding-bottom:clamp(3rem,2rem + 3vw,5rem);border-top:1px solid var(--c-line);padding-top:2.25rem}
@media (max-width:1000px){.article-layout{grid-template-columns:1fr;gap:1.75rem}}
.prose{font-size:1.125rem;line-height:1.75;max-width:70ch;min-width:0}
.prose h2{font-size:clamp(1.5rem,1.3rem + .8vw,1.95rem);margin:2.2em 0 .6em}
.prose h3{margin:1.8em 0 .5em}
.prose ul,.prose ol{padding-left:1.25rem;margin:0 0 1.2em}
.prose li{margin-bottom:.4em}
.prose img{border-radius:var(--radius-md)}
.prose blockquote,.prose .wp-block-quote{margin:2em 0;padding:1.25rem 1.5rem;border:0;border-radius:var(--radius-md);background:var(--c-tint);font-family:var(--f-display);font-size:1.28rem;line-height:1.45}
.prose blockquote p{margin:0}
.callout{margin:2.5rem 0;padding:1.5rem 1.75rem;border-radius:var(--radius-md);background:var(--c-blush)}
.callout > *{margin:0 0 1rem}
.callout > :last-child{margin:0}
.article-aside{position:sticky;top:calc(var(--header-h) + 1.5rem);display:grid;gap:1.25rem}
.toc{border-left:2px solid var(--c-line);padding-left:1.1rem}
.toc h2{font-family:var(--f-body);font-size:.93rem;font-weight:700;margin:0 0 .6rem}
.toc ol{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;font-size:.94rem}
.toc li{margin:0}
.toc a{color:var(--c-muted);text-decoration:none}
.toc a:hover{color:var(--c-brand);text-decoration:underline}
.side-cta{background:var(--c-tint);border-radius:var(--radius-md);padding:1.35rem}
.side-cta p{font-size:.96rem;margin:0 0 1rem}
@media (max-width:1000px){
  .article-aside{position:static;order:-1}
  .article-aside .side-cta,.article-aside .ad-slot{display:none}
  .toc{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-md);padding:1rem 1.15rem}
}
.author-box{display:grid;grid-template-columns:88px minmax(0,1fr);gap:1.25rem;align-items:start;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);padding:1.75rem 0;margin-top:3rem}
.author-box img{width:88px;height:88px;border-radius:50%;object-fit:cover}
.author-box > div > *{margin:0 0 .35rem}
.author-box h2{font-size:1.25rem;margin:0 0 .35rem}
.author-box p{font-size:1rem;color:var(--c-muted)}
@media (max-width:480px){.author-box{grid-template-columns:64px minmax(0,1fr)}.author-box img{width:64px;height:64px}}
.related{padding-block:clamp(3rem,2rem + 4vw,5.5rem);background:var(--c-sand)}
.related h2{margin-bottom:2rem}

/* 11. Página de servicio ---------------------------------------------------------- */
.service-hero{padding-block:1rem clamp(3rem,2rem + 3vw,5rem)}
.service-hero__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.5rem,1rem + 4vw,4.5rem);align-items:center}
.service-hero__grid > *{margin:0}
.service-hero__grid h1{font-size:clamp(2rem,1.5rem + 2.4vw,3.4rem);margin-bottom:1rem}
.service-hero__grid .lead{margin-bottom:2rem}
.service-hero__img img{border-radius:var(--radius-lg);aspect-ratio:4/3;object-fit:cover;object-position:60% 30%;width:100%}
.service-hero__img.wp-block-cover{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/3!important;min-height:0!important;padding:0}
.service-hero__img .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto}
.service-hero__img .wp-block-cover__inner-container{display:none}
@media (max-width:860px){.service-hero__grid{grid-template-columns:1fr}}
.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:0}
.two-col > *{margin:0;background:var(--c-surface);border-radius:var(--radius-md);padding:1.35rem 1.5rem}
.two-col > * > *{margin:0}
.two-col h3{font-family:var(--f-body);font-weight:700;font-size:1.06rem;margin-bottom:.35rem}
.two-col p{color:var(--c-muted)}
@media (max-width:700px){.two-col{grid-template-columns:1fr}}

/* 12. Publicidad (solo blog) ------------------------------------------------------- */
/* Cada espacio reserva su alto para que la página no "salte" cuando carga el anuncio */
.ad-slot{position:relative;display:grid;place-items:center;width:100%;margin-inline:auto;padding:1.4rem .5rem .5rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--c-tint) 45%,var(--c-bg));overflow:hidden;text-align:center}
.ad-slot::before{content:"Publicidad";position:absolute;top:.3rem;left:0;right:0;font-size:.72rem;letter-spacing:.04em;color:var(--c-muted)}
.ad-slot__demo{display:grid;place-items:center;width:100%;height:100%;border:1px dashed var(--c-field);border-radius:8px;color:var(--c-muted);font-size:.85rem;padding:.5rem}
.ad-slot--leaderboard{min-height:124px;max-width:970px;margin-block:.5rem 1rem}
.ad-slot--infeed{min-height:304px;margin-block:0}
.ad-slot--content{min-height:304px;margin-block:2.25rem}
.ad-slot--sidebar{min-height:274px}
@media (max-width:600px){.ad-slot--leaderboard{min-height:124px}.ad-slot--content{min-height:304px;margin-inline:calc(var(--gutter) * -1);width:calc(100% + 2 * var(--gutter));border-radius:0}}

/* 13. Footer -------------------------------------------------------------------- */
.pbm-footer{background:var(--c-footer);color:var(--c-footer-ink);padding-top:clamp(3.25rem,2.5rem + 4vw,5rem);font-size:.97rem;border-radius:var(--radius-xl) var(--radius-xl) 0 0;margin-top:clamp(2rem,1rem + 3vw,4rem)}
.pbm-footer a{color:var(--c-footer-ink);text-decoration:none}
.pbm-footer a:hover{text-decoration:underline;color:var(--c-footer-ink)}
.footer__grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:2.25rem}
.footer__brand .brand{color:var(--c-footer-ink)}
.footer__brand .brand__logo{width:240px}
.footer__brand p{color:var(--c-footer-muted);margin-top:1.25rem;max-width:36ch}
.pbm-footer h2{font-family:var(--f-body);font-size:.95rem;font-weight:700;margin:0 0 1rem;color:var(--c-footer-ink)}
.pbm-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.pbm-footer li{margin:0}
.pbm-footer address{font-style:normal;color:var(--c-footer-muted);display:grid;gap:.6rem;overflow-wrap:anywhere}
.social{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}
.social a{width:44px;height:44px;border-radius:50%;background:var(--c-detail);color:var(--c-ink);display:grid;place-items:center}
.social a:hover{background:var(--c-footer-ink);color:var(--c-ink);text-decoration:none}
.social a::before{content:"";width:20px;height:20px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.social .s-doctoralia{--ico:var(--i-doctoralia)}.social .s-instagram{--ico:var(--i-instagram)}.social .s-facebook{--ico:var(--i-facebook)}.social .s-tiktok{--ico:var(--i-tiktok)}.social .s-linkedin{--ico:var(--i-linkedin)}
.footer__bottom{margin-top:3rem;padding-block:1.5rem calc(1.5rem + 72px);border-top:1px solid color-mix(in srgb,var(--c-footer-ink) 18%,transparent);display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:space-between;color:var(--c-footer-muted);font-size:.9rem}
.footer__bottom p{margin:0}
.footer__bottom ul{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.footer__bottom a{color:var(--c-footer-muted)}
@media (max-width:980px){.footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer__brand{grid-column:1/-1}}
@media (max-width:560px){.footer__grid{grid-template-columns:1fr}}

/* 14. WhatsApp flotante ----------------------------------------------------------- */
.wa-float{position:fixed;right:clamp(.9rem,.5rem + 1.5vw,1.75rem);bottom:calc(clamp(.9rem,.5rem + 1.5vw,1.75rem) + env(safe-area-inset-bottom,0px));z-index:80;display:flex;align-items:flex-end;gap:.75rem;flex-direction:column;pointer-events:none}
.wa-float > *{pointer-events:auto}
.wa-float__btn{position:relative;display:inline-flex;align-items:center;gap:.6rem;height:60px;padding:0 1.35rem 0 1.1rem;border-radius:999px;background:var(--c-wa);color:var(--c-wa-ink);font-weight:700;text-decoration:none;box-shadow:0 12px 30px -10px rgba(10,60,30,.55)}
.wa-float__btn:hover{color:var(--c-wa-ink);text-decoration:none}
.wa-float__btn::after{content:"";width:28px;height:28px;order:-1;background:currentColor;-webkit-mask:var(--i-wa) center/contain no-repeat;mask:var(--i-wa) center/contain no-repeat}
.wa-float__btn::before{content:"";position:absolute;inset:0;border-radius:999px;animation:wa-ring 2.4s ease-out 3}
@keyframes wa-ring{0%{box-shadow:0 0 0 0 rgba(37,211,102,.5)}80%,100%{box-shadow:0 0 0 18px rgba(37,211,102,0)}}
.wa-bubble{position:relative;max-width:min(260px,calc(100vw - 2rem));background:var(--c-surface);color:var(--c-ink);border-radius:18px 18px 4px 18px;padding:.9rem 2.6rem .9rem 1rem;box-shadow:0 14px 36px -14px rgba(40,30,80,.45);font-size:.95rem;line-height:1.4;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s;visibility:hidden}
.wa-bubble.is-visible{opacity:1;transform:none;visibility:visible}
.wa-bubble p{margin:0}
.wa-bubble strong{display:block}
.wa-bubble button{position:absolute;top:.35rem;right:.35rem;width:34px;height:34px;padding:0;border:none;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--c-muted);cursor:pointer}
.wa-bubble button::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:var(--i-x) center/contain no-repeat;mask:var(--i-x) center/contain no-repeat}
.wa-bubble button:hover{background:var(--c-tint)}
@media (max-width:560px){.wa-float__btn{padding:0;width:58px;height:58px;justify-content:center}.wa-float__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}}

/* 15. Ajustes para WordPress + GeneratePress ---------------------------------------- */
body.pbm .site.grid-container,body.pbm #page{max-width:none;width:100%;padding:0;margin:0;background:transparent}
body.pbm .site-content{display:block;padding:0}
.pbm-main{display:block}

.pbm-main > .wp-block-group,.pbm-main > section{margin-block:0}
.wp-block-image img{height:auto}
.about__media img,.service-hero__img img{height:auto}
.wp-block-buttons.btn-row > .wp-block-button{margin:0}
.pbm-main .alignwide{width:min(100% - 2 * var(--gutter),var(--container));margin-inline:auto}

/* Estilos de bloque registrados por el tema (panel "Estilos" del editor) */
.is-style-whatsapp .wp-block-button__link::before{content:"";width:20px;height:20px;flex:none;background:currentColor;-webkit-mask:var(--i-wa) center/contain no-repeat;mask:var(--i-wa) center/contain no-repeat}
/* Íconos automáticos de listas armadas en el editor */
.contact-list--auto li:nth-child(1),.mode-list--home li:nth-child(1),.mode-list--svc li:nth-child(1){--ico:var(--i-pin)}
.contact-list--auto li:nth-child(2),.mode-list--home li:nth-child(2){--ico:var(--i-video)}
.contact-list--auto li:nth-child(3){--ico:var(--i-phone)}
.contact-list--auto li:nth-child(4){--ico:var(--i-mail)}
.mode-list--svc li:nth-child(2){--ico:var(--i-clock)}
.blog-more{margin-top:2.5rem!important}
.pbm-form .wpcf7{grid-column:1/-1}
.posts-query .wp-block-post-terms{font-size:.86rem}
.posts-query .wp-block-post-featured-image a{display:block;height:100%}
.hero__media .wp-block-image{margin:0}
.service-hero__img{margin:0}

/* Modalidades y condiciones de atención */
.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.modes > *{margin:0}
.mode{background:var(--c-bg);border-radius:var(--radius-lg);padding:clamp(1.5rem,1.2rem + 1vw,2rem);display:flex;flex-direction:column;gap:.6rem}
.mode > *{margin:0}
.mode__tag{font-size:.85rem;font-weight:700;color:var(--c-accent)}
.mode h3{font-size:1.35rem}
.mode p{color:var(--c-muted)}
.mode--featured{background:var(--c-ink);color:var(--c-brand-ink)}
.mode--featured h3,.mode--featured .mode__tag{color:var(--c-brand-ink)}
.mode--featured p{color:color-mix(in srgb,var(--c-brand-ink) 82%,transparent)}
.modes-cta{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between;margin-top:clamp(1.5rem,1rem + 2vw,2.5rem)!important}
.modes-cta > *{margin:0}
.modes-cta p{font-family:var(--f-display);font-size:clamp(1.2rem,1.05rem + .6vw,1.5rem);max-width:36ch}
.note{background:var(--c-bg)!important}
@media (max-width:900px){.modes{grid-template-columns:1fr}}

/* ¿Cuándo buscar acompañamiento? con fotos escalonadas */
.signals-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:clamp(2rem,1rem + 3vw,4rem);align-items:start}
.signals-layout > *{margin:0}
.signals-layout .signals{grid-template-columns:repeat(2,minmax(0,1fr))}
.photo-stack{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start;width:100%}
.photo-stack > *{margin:0!important}
.photo-stack figure,.photo-stack .wp-block-cover{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/5!important;position:relative;min-height:0!important;padding:0;margin:0}
.photo-stack img,.photo-stack .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo-stack .wp-block-cover__inner-container{display:none}
.photo-stack > :nth-child(1){margin-top:0!important}
.photo-stack > :nth-child(2){margin-top:clamp(3rem,2rem + 5vw,7rem)!important}
@media (max-width:999px){.signals-layout{grid-template-columns:1fr}.photo-stack{max-width:520px}.photo-stack > :nth-child(2){margin-top:2.5rem!important}}
@media (max-width:600px){.signals-layout .signals{grid-template-columns:1fr}}

/* Ilustración de preguntas frecuentes */
.faq__ill{margin:2rem 0 0!important;max-width:320px}
.faq__ill img{width:100%;height:auto}
@media (max-width:860px){.faq__ill{max-width:220px;margin:1.5rem auto 0!important}}

/* Tarjeta de contacto con mapa */
.contact-hours{font-size:.95rem;color:var(--c-muted)}
.contact-card .btn-row{margin-top:.25rem}
.map-embed{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/11;background:var(--c-tint);margin-top:1rem}
.map-embed iframe{width:100%;height:100%;border:0;display:block}

/* Compartir artículo */
.share{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1.25rem 0 0}
.share__label{font-size:.88rem;font-weight:600;color:var(--c-muted);margin-right:.25rem}
.share a,.share button{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--c-surface);border:1px solid var(--c-line);color:var(--c-ink);cursor:pointer;padding:0}
.share a:hover,.share button:hover{background:var(--c-ink);color:var(--c-brand-ink);border-color:var(--c-ink)}
.share a::before,.share button::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.share .sh-whatsapp{--ico:var(--i-wa)}.share .sh-facebook{--ico:var(--i-facebook)}.share .sh-linkedin{--ico:var(--i-linkedin)}.share .sh-x{--ico:var(--i-xlogo)}.share .sh-copy{--ico:var(--i-link)}
.share__ok{font-size:.85rem;color:var(--c-muted)}
.share--end{margin:2.5rem 0 0;padding-top:1.5rem;border-top:1px solid var(--c-line)}

/* Índice: sección en lectura */
.toc a[aria-current]{color:var(--c-ink);font-weight:700}
.toc li{position:relative}
.toc a[aria-current]::before{content:"";position:absolute;left:calc(-1.1rem - 2px);top:.1em;bottom:.1em;width:2px;background:var(--c-ink)}

/* Newsletter (blog, artículo y footer) */
.newsletter{background:var(--c-surface)!important}
.newsletter--footer{margin:1.5rem 0 0;padding:0;background:transparent!important;display:block}
.newsletter--footer h2{font-size:.95rem;color:var(--c-footer-ink)}
.newsletter--footer p{color:var(--c-footer-muted);font-size:.92rem;margin-bottom:.75rem}
.newsletter form{display:flex;gap:.5rem;flex-wrap:wrap}
.newsletter input[type=email]{flex:1 1 200px;min-height:48px;border-radius:999px;border:1px solid var(--c-field);padding:.7rem 1.1rem;background:var(--c-surface);color:var(--c-ink)}
.newsletter button,.newsletter input[type=submit]{min-height:48px;border-radius:999px;border:0;padding:.7rem 1.3rem;font-weight:600;background:var(--c-butter);color:var(--c-ink);cursor:pointer}
.newsletter--article{margin:2.5rem 0 0;grid-template-columns:1fr;border:1px solid var(--c-line)}
.pbm-footer .newsletter input[type=email]{border-color:transparent}
.footer__hours{color:var(--c-footer-muted)}


/* Bloque Ícono */
.pbm-icono{display:inline-grid;place-items:center;color:var(--c-brand);line-height:0;flex:none;vertical-align:middle}
.pbm-icono svg{width:var(--icono-svg,28px);height:var(--icono-svg,28px)}
.pbm-icono--s{--icono-svg:20px;--icono-caja:40px}
.pbm-icono--m{--icono-svg:28px;--icono-caja:56px}
.pbm-icono--l{--icono-svg:40px;--icono-caja:76px}
.pbm-icono--xl{--icono-svg:56px;--icono-caja:104px}
.pbm-icono--cuadrado,.pbm-icono--circulo{width:var(--icono-caja);height:var(--icono-caja);border-radius:30%}
.pbm-icono--circulo{border-radius:50%}
.pbm-icono--acento{color:var(--c-accent)}
.pbm-icono--mantequilla{color:var(--c-butter)}
.pbm-icono--claro{color:var(--c-brand-ink)}
.tone-butter{background:var(--c-butter)}
/* Tarjetas de servicio que usan el bloque Ícono */
.service--bloque{padding-top:clamp(1.5rem,1.2rem + 1vw,2rem)}
.service--bloque::before,.service--bloque::after{content:none}

/* Acciones del header y carrito */
.main-nav__actions{display:flex;align-items:center;gap:.75rem}
.header-cart{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--c-ink);border:1px solid var(--c-line);background:var(--c-surface)}
.header-cart svg{width:22px;height:22px}
.header-cart__count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--c-butter);color:var(--c-ink);font-size:.72rem;font-weight:700;display:grid;place-items:center}
.header-cart__count[hidden]{display:none}
@media (max-width:1040px){.main-nav__actions{justify-content:space-between}.main-nav__actions .btn{flex:1}}

/* Landing de producto */
.product-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,1rem + 4vw,4.5rem);align-items:center}
.product-hero__grid > *{margin:0}
.product-hero__tag{display:inline-block;padding:.35rem .85rem;border-radius:999px;background:var(--c-butter);color:var(--c-ink);font-weight:700;font-size:.85rem;margin-bottom:1rem!important}
.product-hero__media{border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:1/1!important;position:relative;background:var(--c-tint);margin:0}
.product-hero__media img,.product-hero__media .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.product-hero__media.wp-block-cover{min-height:0!important;padding:0}
.product-hero__media .wp-block-cover__inner-container{display:none}
@media (max-width:860px){.product-hero__grid{grid-template-columns:1fr}}
.benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.benefits > *{margin:0;display:flex;flex-direction:column;gap:.75rem;background:var(--c-bg);border-radius:var(--radius-lg);padding:clamp(1.25rem,1rem + 1vw,1.75rem)}
.benefits > * > *{margin:0}
.benefits h3{font-size:1.2rem}
.benefits p{color:var(--c-muted)}
@media (max-width:900px){.benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.benefits{grid-template-columns:1fr}}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.gallery-grid > *{margin:0!important;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:1/1;background:var(--c-tint)}
.gallery-grid img{width:100%;height:100%;object-fit:cover}
@media (max-width:600px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ages{display:flex;flex-wrap:wrap;gap:.75rem;list-style:none;padding:0;margin:0}
.ages li{margin:0;padding:.75rem 1.1rem;border-radius:var(--radius-md);background:var(--c-surface);border:1px solid var(--c-line);font-weight:600}
.ages li span{display:block;font-weight:400;color:var(--c-muted);font-size:.92rem}
.waitlist{margin-top:1.25rem}
.waitlist form{display:flex;flex-wrap:wrap;gap:.5rem}
.waitlist input[type=email]{flex:1 1 220px;min-height:48px;border-radius:999px;border:1px solid var(--c-field);padding:.7rem 1.1rem;background:var(--c-surface)}
.waitlist button,.waitlist input[type=submit]{min-height:48px;border-radius:999px;border:0;padding:.7rem 1.3rem;font-weight:600;background:var(--c-ink);color:var(--c-brand-ink);cursor:pointer}
.price-tag{font-family:var(--f-display);font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);margin:0}
.legal__body h2{font-size:clamp(1.3rem,1.15rem + .6vw,1.65rem)}


/* Línea decorativa de fondo, para secciones sin tarjeta */
.deco-curva{position:relative;isolation:isolate;overflow-x:clip}
.deco-curva::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:max(-120px,calc(50% - 760px));top:-40px;width:min(52vw,640px);aspect-ratio:640/520;background:no-repeat center/contain var(--deco-curva);opacity:.95}
.deco-curva--der::before{left:auto;right:max(-140px,calc(50% - 780px));top:auto;bottom:-60px;transform:scaleX(-1) rotate(180deg)}
@media (max-width:760px){.deco-curva::before{width:80vw;opacity:.7}}

/* 16. Modo oscuro y movimiento reducido ---------------------------------------------- */
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --c-bg-a:#16132A;--c-bg-b:#121D1B;--c-bg:#16132A;--c-surface:#1F1B36;--c-tint:#2A2546;--c-tint-2:#38325A;--c-blush:#2E2226;--c-sky:#1D2533;--c-sand:#26231E;--c-mint:#1C2B27;
    --c-ink:#F1EEF8;--c-muted:#B5B0C8;--c-line:#332E4E;--c-field:#4A4360;--c-brand:#CFC8F2;--c-brand-hover:#E2DDFA;--c-brand-ink:#1B1530;--c-brand-soft:#2A2546;--c-butter:#F6D88E;--c-butter-hover:#F9E3AA;--c-detail:#3A4B63;--c-accent:#CFC8F2;
    --c-footer:#0F0D1C;--c-footer-ink:#F1EEF8;--c-footer-muted:#A69FBD;color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --c-bg-a:#16132A;--c-bg-b:#121D1B;--c-bg:#16132A;--c-surface:#1F1B36;--c-tint:#2A2546;--c-tint-2:#38325A;--c-blush:#2E2226;--c-sky:#1D2533;--c-sand:#26231E;--c-mint:#1C2B27;
  --c-ink:#F1EEF8;--c-muted:#B5B0C8;--c-line:#332E4E;--c-field:#4A4360;--c-brand:#CFC8F2;--c-brand-hover:#E2DDFA;--c-brand-ink:#1B1530;--c-brand-soft:#2A2546;--c-butter:#F6D88E;--c-butter-hover:#F9E3AA;--c-detail:#3A4B63;--c-accent:#CFC8F2;
  --c-footer:#0F0D1C;--c-footer-ink:#F1EEF8;--c-footer-muted:#A69FBD;color-scheme:dark;
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
@media (max-width:900px){.side-list .ad-slot{display:none}}
.posts-query .wp-block-post-featured-image .post-card__thumb{width:100%;height:100%;border-radius:0}
.map-embed--preview{display:grid;place-items:center;text-align:center;padding:1rem;color:var(--c-muted);font-size:.92rem}
.map-embed--preview p{margin:0}

/* Tienda de demostración (maqueta). En WordPress, el diseño de la tienda está en tienda.css */
.ico-truck{--ico:var(--i-truck)}.ico-lock{--ico:var(--i-lock)}.ico-gift{--ico:var(--i-gift)}.ico-cart{--ico:var(--i-cart)}
.demo-note{margin:.75rem 0 0;font-size:.88rem;color:var(--c-muted);background:color-mix(in srgb,var(--c-butter) 35%,var(--c-surface));border-radius:var(--radius-sm);padding:.6rem .9rem;display:inline-block}
.shop-top{padding-top:1.25rem}
.shop-top__inner{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem}
.shop-top h1{margin:0 0 .4rem}
.shop-top .lead{margin:0}
.shop-sort select{min-height:44px;border-radius:999px;border:1px solid var(--c-field);padding:.4rem 2.6rem .4rem 1rem;background:var(--c-surface) var(--i-chevron-field) no-repeat right .9rem center/16px;-webkit-appearance:none;appearance:none;color:var(--c-ink)}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;list-style:none;padding:0;margin:2rem 0 0}
.shop-grid--small{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.shop-grid,.shop-grid--small{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.shop-grid{grid-template-columns:1fr}}
.shop-card{background:var(--c-surface);border-radius:var(--radius-lg);padding:1rem 1rem 1.4rem;display:flex;flex-direction:column;gap:.55rem;margin:0}
.shop-card > *{margin:0}
.shop-card__img{position:relative;display:block;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:1/1;background:var(--c-tint)}
.shop-card__img img{width:100%;height:100%;object-fit:cover}
.shop-card h2{font-size:1.2rem;margin-top:.4rem}
.shop-card h2 a{color:var(--c-ink);text-decoration:none}
.shop-card p{color:var(--c-muted);font-size:.95rem}
.shop-card .btn{align-self:flex-start;margin-top:.4rem}
.shop-badge{position:absolute;top:.75rem;left:.75rem;z-index:1;background:var(--c-butter);color:var(--c-ink);font-size:.78rem;font-weight:700;padding:.25rem .7rem;border-radius:999px}
.shop-price{font-weight:700;color:var(--c-ink)!important;font-size:1.05rem}
.shop-price small{font-weight:500;color:var(--c-muted)}
.shop-price--lg{font-family:var(--f-display);font-weight:400;font-size:clamp(1.6rem,1.3rem + 1vw,2.1rem);margin:.25rem 0 1rem}
.shop-perks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:2.5rem 0 var(--space-section)}
.shop-perks li{position:relative;padding:1.1rem 1.25rem 1.1rem 3.4rem;background:var(--c-surface);border-radius:var(--radius-md);margin:0;font-size:.95rem}
.shop-perks li::before,.shop-info li::before{content:"";position:absolute;left:1.15rem;top:1.15rem;width:24px;height:24px;background:var(--c-brand);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.shop-perks strong{display:block}
.shop-perks span{color:var(--c-muted)}
@media (max-width:760px){.shop-perks{grid-template-columns:1fr}}
.shop-product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(1.5rem,1rem + 3vw,4rem);background:var(--c-surface);border-radius:var(--radius-xl);padding:clamp(1.25rem,1rem + 2vw,2.5rem);margin-top:1.25rem}
@media (max-width:860px){.shop-product{grid-template-columns:1fr}}
.shop-gallery__main{position:relative;margin:0;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:1/1;background:var(--c-tint)}
.shop-gallery__main img{width:100%;height:100%;object-fit:cover}
.shop-gallery__thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-top:.75rem}
.shop-thumb{padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;aspect-ratio:1/1;cursor:pointer;background:var(--c-tint)}
.shop-thumb.is-active{border-color:var(--c-ink)}
.shop-thumb img{width:100%;height:100%;object-fit:cover}
.shop-summary > *{margin:0}
.shop-summary h1{font-size:clamp(2rem,1.5rem + 2vw,3rem);margin:.4rem 0 .25rem}
.shop-summary .facts{margin:1.25rem 0 1.5rem}
.shop-buy{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:0 0 1.5rem!important}
.shop-qty{display:inline-flex;align-items:center;border:1px solid var(--c-field);border-radius:999px;overflow:hidden;background:var(--c-surface);height:48px}
.shop-qty button{width:42px;height:100%;border:0;background:transparent;font-size:1.2rem;cursor:pointer;color:var(--c-ink);padding:0}
.shop-qty input{width:44px;border:0;text-align:center;font-weight:600;background:transparent;-moz-appearance:textfield;appearance:textfield}
.shop-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.shop-qty--sm{height:40px}
.shop-info{list-style:none;padding:1.25rem 0 0;margin:0;border-top:1px solid var(--c-line);display:grid;gap:.9rem}
.shop-info li{position:relative;padding-left:2.25rem;margin:0;font-size:.95rem;color:var(--c-muted)}
.shop-info li::before{left:0;top:.05em;width:22px;height:22px}
.shop-info strong{color:var(--c-ink)}
.shop-tabs{margin-top:2.5rem}
.shop-tabs__nav{display:flex;gap:.5rem;border-bottom:1px solid var(--c-line);margin-bottom:1.5rem}
.shop-tabs__nav span{padding:.7rem 1.1rem;border-radius:12px 12px 0 0;font-weight:600;color:var(--c-muted)}
.shop-tabs__nav .is-active{background:var(--c-surface);color:var(--c-ink)}
.shop-related{margin:3rem 0 var(--space-section)}
.shop-title{margin:1.25rem 0 1.5rem}
.shop-cart{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.25rem,1rem + 2vw,2.5rem);align-items:start;margin-bottom:var(--space-section)}
@media (max-width:900px){.shop-cart{grid-template-columns:1fr}}
.shop-cart__items{background:var(--c-surface);border-radius:var(--radius-lg);padding:clamp(1rem,.8rem + 1vw,1.5rem)}
.cart-line{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto auto;gap:1rem;align-items:center;padding-bottom:1.25rem;margin-bottom:1rem;border-bottom:1px solid var(--c-line)}
.cart-line img{width:72px;height:72px;border-radius:12px;object-fit:cover;background:var(--c-tint)}
.cart-line__info{display:grid;gap:.15rem}
.cart-line__info a{color:var(--c-ink);font-weight:600;text-decoration:none}
.cart-line__info span{color:var(--c-muted);font-size:.92rem}
.cart-line__remove{width:36px;height:36px;border-radius:50%;border:1px solid var(--c-line);background:transparent;cursor:pointer;font-size:1.2rem;color:var(--c-muted);padding:0}
@media (max-width:560px){.cart-line{grid-template-columns:60px minmax(0,1fr) auto}.cart-line img{width:60px;height:60px}.cart-line .shop-qty{grid-column:2}.cart-line__total{grid-column:3;grid-row:2}.cart-line__remove{grid-column:3;grid-row:1}}
.cart-line--mini{grid-template-columns:56px minmax(0,1fr) auto;border-bottom:1px solid var(--c-line)}
.cart-line--mini img{width:56px;height:56px}
.shop-totals{background:var(--c-surface);border-radius:var(--radius-lg);padding:clamp(1.25rem,1rem + 1vw,1.75rem);position:sticky;top:calc(var(--header-h) + 1.5rem)}
.shop-totals h2{font-size:1.35rem;margin:0 0 1rem}
.shop-totals dl{margin:0 0 1.25rem;display:grid;gap:.6rem}
.shop-totals dl div{display:flex;justify-content:space-between;gap:1rem}
.shop-totals dt{color:var(--c-muted)}
.shop-totals dd{margin:0;text-align:right}
.shop-totals__total{border-top:1px solid var(--c-line);padding-top:.75rem;font-weight:700;font-size:1.1rem}
.shop-totals__total dt{color:var(--c-ink)}
.shop-totals .btn{width:100%}
.shop-totals__note{font-size:.86rem;color:var(--c-muted);text-align:center;margin:.75rem 0 0}
@media (max-width:900px){.shop-totals{position:static}}
.shop-checkout h2{font-size:1.35rem;margin:.5rem 0 0}
.shop-pay{border:1px solid var(--c-line);border-radius:var(--radius-md);padding:1rem 1.15rem;display:grid;gap:.6rem;margin:0}
.shop-pay label{display:flex;gap:.6rem;align-items:center;font-weight:500;margin:0}
.shop-pay input{accent-color:var(--c-brand);width:18px;height:18px}
.shop-pay p{margin:.25rem 0 0;font-size:.9rem;color:var(--c-muted)}

/* Listas desplegables con el diseño del sitio fuera de formularios (ordenar productos, etc.) */
select.pbm-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:46px;white-space:nowrap;max-width:100%;padding:.55rem 2.8rem .55rem 1.1rem;border:1px solid var(--c-field);border-radius:999px;background:var(--c-surface) var(--i-chevron-field) no-repeat right 1rem center/16px;color:var(--c-ink);font-weight:500;cursor:pointer}
select.pbm-select:focus{outline:2px solid var(--c-brand);outline-offset:2px}
.pbm-form select.pbm-select{border-radius:var(--radius-sm)}
@supports (appearance:base-select){
  select.pbm-select,select.pbm-select::picker(select){appearance:base-select}
  select.pbm-select{display:flex;align-items:center;gap:.75rem;padding-right:1rem;background-image:none}
  select.pbm-select::picker-icon{content:"";width:16px;height:16px;background:var(--c-muted);-webkit-mask:var(--i-chevron) center/contain no-repeat;mask:var(--i-chevron) center/contain no-repeat;transition:rotate .2s}
  select.pbm-select:open::picker-icon{rotate:180deg}
  select.pbm-select::picker(select){min-width:anchor-size(width);max-width:min(92vw,26rem);max-height:18rem;overflow-y:auto;position-area:bottom span-left;position-try-fallbacks:none;border:1px solid var(--c-line);border-radius:14px;padding:.4rem;margin-top:.35rem;background:var(--c-surface);box-shadow:0 20px 44px -18px rgba(30,26,61,.35)}
  select.pbm-select option{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;border-radius:9px;font-size:.96rem;cursor:pointer;background:transparent}
  select.pbm-select option:hover,select.pbm-select option:focus-visible{background:var(--c-tint);outline:none}
  select.pbm-select option:checked{background:var(--c-tint);font-weight:600}
  select.pbm-select option::checkmark{content:"";width:16px;height:16px;order:1;margin-left:auto;background:var(--c-brand);-webkit-mask:var(--i-check) center/contain no-repeat;mask:var(--i-check) center/contain no-repeat}
}

/* Barra del catálogo, categorías y stock */
.shop-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.75rem}
.shop-bar .chips{margin:0}
.shop-bar__right{display:flex;align-items:center;gap:1rem}
.shop-count{font-size:.92rem;color:var(--c-muted)}
.shop-card__cat{font-size:.82rem;font-weight:700;color:var(--c-accent)!important;margin-top:.4rem!important}
.shop-card h2{margin-top:0}
.shop-card.is-out .shop-card__img img{opacity:.55;filter:grayscale(.4)}
.shop-badge--out{background:var(--c-ink);color:var(--c-brand-ink)}
.stock{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;margin:0}
.stock::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.stock--in{color:#2E7D5B}
.stock--low{color:#A15C07}
.stock--out{color:#9A2E3A}

/* Aviso al agregar al carrito */
.cart-toast{position:fixed;left:50%;top:calc(var(--header-h) + env(safe-area-inset-top,0px) + .75rem);transform:translate(-50%,-10px);z-index:90;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center;background:var(--c-surface);color:var(--c-ink);border-radius:var(--radius-md);padding:.75rem .9rem .75rem 1.2rem;box-shadow:0 24px 50px -24px rgba(30,26,61,.45);border:1px solid var(--c-line);font-size:.95rem;opacity:0;visibility:hidden;transition:opacity .25s,transform .25s;max-width:calc(100vw - 2rem)}
.cart-toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}

/* Pedido recibido */
.order-ok{text-align:center;background:var(--c-surface);border-radius:var(--radius-xl);padding:clamp(2rem,1.5rem + 3vw,3.5rem) clamp(1.25rem,1rem + 2vw,2.5rem);margin:1.25rem 0 clamp(1.25rem,1rem + 2vw,2.5rem)}
.order-ok .pbm-icono{margin:0 auto 1rem}
.order-ok h1{font-size:clamp(1.9rem,1.5rem + 1.8vw,2.8rem);margin:0 0 .5rem}
.order-ok .lead{margin:0 auto}
.order-ok__meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:2rem auto 0;max-width:760px}
.order-ok__meta div{background:var(--c-bg);border-radius:var(--radius-md);padding:.9rem}
.order-ok__meta dt{font-size:.85rem;color:var(--c-muted)}
.order-ok__meta dd{margin:.2rem 0 0;font-weight:700}
@media (max-width:620px){.order-ok__meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
.order-ok__h2{font-size:1.4rem;margin:0 0 .5rem}

/* Credenciales de la autora */
.tp-line{font-size:.9rem;color:var(--c-muted);margin:1rem 0 0!important}
.author-box__label{font-size:.8rem;font-weight:700;letter-spacing:.02em;color:var(--c-accent)!important;margin:0 0 .2rem!important}
.author-creds{list-style:none;padding:0;margin:.75rem 0 0;display:grid;gap:.35rem}
.author-creds li{position:relative;padding-left:1.5rem;font-size:.95rem;color:var(--c-muted);margin:0}
.author-creds li::before{content:"";position:absolute;left:0;top:.25em;width:16px;height:16px;background:var(--c-brand);-webkit-mask:var(--i-check) center/contain no-repeat;mask:var(--i-check) center/contain no-repeat}
.author-box .tp-line{margin-top:.6rem!important}
.author-box .more{margin-top:.75rem!important}
.byline > div{display:grid;gap:.1rem}
.byline__by strong{display:inline!important;color:var(--c-ink)}

/* Buscador, 404 y resultados */
.pbm-search{display:flex;gap:.5rem;flex-wrap:wrap;max-width:520px;width:100%}
.pbm-search input[type=search]{flex:1 1 220px;min-height:48px;border-radius:999px;border:1px solid var(--c-field);padding:.7rem 1.2rem;background:var(--c-surface);color:var(--c-ink)}
.pbm-search input[type=search]:focus{outline:2px solid var(--c-brand);outline-offset:2px}
.pbm-search button{min-height:48px;border-radius:999px;border:0;padding:.7rem 1.4rem;font-weight:600;background:var(--c-brand);color:var(--c-brand-ink);cursor:pointer}
.not-found{text-align:center;background:var(--c-surface);border-radius:var(--radius-xl);padding:clamp(2rem,1.5rem + 3vw,4rem) clamp(1.25rem,1rem + 2vw,3rem);margin:clamp(1.5rem,1rem + 2vw,3rem) 0 var(--space-section);display:flex;flex-direction:column;align-items:center}
.not-found > *{margin:0 0 1rem}
.not-found img{width:min(240px,60%);height:auto}
.not-found__code{font-family:var(--f-display);font-size:clamp(3rem,2rem + 4vw,5rem);line-height:1;color:var(--c-tint-2);margin:0!important}
.not-found h1,.not-found h2{margin-bottom:.5rem}
.not-found .lead{max-width:52ch}
.not-found .pbm-search{margin:.5rem auto 1.25rem}
.not-found__links{justify-content:center;margin:0 0 1.25rem}
.not-found--search{margin-top:0}
.search-count{color:var(--c-muted);margin-bottom:1.5rem}
.blog-top .pbm-search{max-width:420px}

/* Aviso de cookies de la maqueta (en WordPress lo muestra el plugin) */
.cookie-demo{position:fixed;left:clamp(.75rem,.5rem + 1vw,1.5rem);bottom:calc(clamp(.75rem,.5rem + 1vw,1.5rem) + env(safe-area-inset-bottom,0px));z-index:95;max-width:min(420px,calc(100vw - 1.5rem));background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-lg);padding:1.25rem 1.35rem;box-shadow:0 30px 60px -30px rgba(30,26,61,.45)}
.cookie-demo h2{font-size:1.15rem;margin:0 0 .4rem}
.cookie-demo p{font-size:.92rem;color:var(--c-muted);margin:0 0 1rem}
.cookie-demo .btn-row{gap:.5rem}
.cookie-demo .btn{min-height:42px;padding:.5rem 1rem;font-size:.92rem}
.cookie-demo[hidden]{display:none}
@media (min-width:700px){body:has(.cookie-demo:not([hidden])) .wa-float{bottom:calc(clamp(.9rem,.5rem + 1.5vw,1.75rem) + env(safe-area-inset-bottom,0px))}}

.search-page{background:var(--c-surface);border-radius:var(--radius-md);padding:1.25rem}

@media (max-width:620px){
  .shop-bar{flex-direction:column;align-items:stretch}
  .shop-bar .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}
  .shop-bar .chips::-webkit-scrollbar{display:none}
  .shop-bar .chips li{flex:none}
  .shop-bar__right{justify-content:space-between;width:100%}
  .shop-sort{flex:1;max-width:none;margin-left:1rem}
  .shop-sort select{width:100%;font-size:.92rem;padding-left:.9rem}
}

/* Aviso de cookies compacto en celular: una franja baja, sin título y con botones pequeños */
@media (max-width:700px){
  .cookie-demo{left:.5rem;right:.5rem;bottom:calc(.5rem + env(safe-area-inset-bottom,0px));max-width:none;padding:.75rem .85rem;border-radius:var(--radius-md)}
  .cookie-demo h2{display:none}
  .cookie-demo p{font-size:.8rem;line-height:1.4;margin:0 0 .6rem}
  .cookie-demo .btn-row{flex-wrap:nowrap;gap:.4rem}
  .cookie-demo .btn-row > *{flex:1 1 0}
  .cookie-demo .btn{min-height:36px;padding:.35rem .5rem;font-size:.82rem;width:100%}
  body:has(.cookie-demo:not([hidden])) .wa-float{bottom:calc(7.5rem + env(safe-area-inset-bottom,0px))}
}
.cookie-demo{animation:cookie-in .35s ease-out both}
@keyframes cookie-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* Reseñas de Google */
.reviews-summary{display:flex;align-items:center;gap:.75rem;justify-self:end}
.reviews-summary > *{margin:0}
.reviews-summary p{color:var(--c-muted)}
.reviews-summary strong{color:var(--c-ink)}
@media (max-width:820px){.reviews-summary{justify-self:start}}
.stars{color:#E3A83B;letter-spacing:.12em;font-size:1.05rem;margin:0}
.reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:start}
.reviews > *{margin:0}
.review{background:var(--c-surface);border-radius:var(--radius-lg);padding:clamp(1.4rem,1.1rem + 1vw,2rem);display:flex;flex-direction:column;gap:.9rem;margin:0;box-shadow:0 24px 50px -40px rgba(30,26,61,.35)}
.review > *{margin:0}
.review blockquote,.review .wp-block-quote{margin:0;padding:0;border:0;background:none;font-family:var(--f-display);font-size:1.12rem;line-height:1.5;color:var(--c-ink)}
.review blockquote p{margin:0}
.review figcaption,.review .review__author{font-weight:700;font-size:.95rem;color:var(--c-ink);display:grid;gap:.1rem}
.review figcaption span,.review .review__author span{font-weight:400;font-size:.85rem;color:var(--c-muted)}
.reviews > :nth-child(2){margin-top:clamp(0rem,-.5rem + 3vw,2rem)}
.reviews-actions{margin-top:2rem!important}
@media (max-width:900px){.reviews{grid-template-columns:1fr}.reviews > :nth-child(2){margin-top:0}}
.reviews-summary .reviews-score,.reviews-score{font-family:var(--f-display);font-size:clamp(1.8rem,1.5rem + 1vw,2.4rem);line-height:1;color:var(--c-ink)}

/* Servicio destacado (tarjeta ancha en la cuadrícula de servicios) */
.services .service--destacado{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:clamp(1.25rem,1rem + 1.5vw,2.25rem);row-gap:.4rem;align-items:center;background:linear-gradient(110deg,var(--c-blush) 0%,color-mix(in srgb,var(--c-blush) 35%,var(--c-surface)) 100%)!important;border-color:transparent;padding:clamp(1.5rem,1.2rem + 1.5vw,2.5rem)}
.services .service--destacado .pbm-icono{background:var(--c-surface)}
.services .service--destacado > .pbm-icono{grid-row:1 / span 2}
.services .service--destacado h3{font-size:clamp(1.4rem,1.2rem + .8vw,1.9rem);grid-column:2;margin:0}
.services .service--destacado > p:not(.more){grid-column:2;margin:0;max-width:68ch}
.services .service--destacado .more{grid-column:3;grid-row:1 / span 2;margin:0}
@media (max-width:820px){.services .service--destacado{grid-template-columns:1fr}.services .service--destacado > *{grid-column:1!important;grid-row:auto!important}.services .service--destacado > .pbm-icono{margin-bottom:.4rem}}

/* Páginas de servicio: ubicación y recuadro destacado */
.service-loc{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--c-ink);margin:-.25rem 0 1.5rem}
.service-loc::before{content:"";width:20px;height:20px;flex:none;background:var(--c-accent);-webkit-mask:var(--i-pin) center/contain no-repeat;mask:var(--i-pin) center/contain no-repeat}
.service-highlight{padding-block:0 clamp(2rem,1.5rem + 2vw,3rem)}
.service-highlight__card{display:flex;gap:clamp(1rem,.8rem + 1.5vw,2rem);align-items:flex-start;background:var(--c-surface);border-radius:var(--radius-lg);padding:clamp(1.4rem,1.1rem + 1.5vw,2.25rem);box-shadow:0 24px 50px -40px rgba(30,26,61,.35);border-left:6px solid var(--c-butter)}
.service-highlight__card h2{font-size:clamp(1.3rem,1.15rem + .7vw,1.7rem);margin:0 0 .5rem}
.service-highlight__card p{margin:0;color:var(--c-muted);max-width:75ch}
@media (max-width:620px){.service-highlight__card{flex-direction:column}}

/* Tienda: filtros como botones, pestañas, información adicional y carrito vacío */
button.chip{font:inherit;cursor:pointer;border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-ink)}
button.chip[aria-pressed="true"]{background:var(--c-ink);color:var(--c-brand-ink);border-color:var(--c-ink)}
.shop-empty{color:var(--c-muted);margin:1.5rem 0 0}
.shop-tabs__nav button{font:inherit;font-weight:600;border:0;background:transparent;color:var(--c-muted);padding:.7rem 1.1rem;border-radius:12px 12px 0 0;cursor:pointer}
.shop-tabs__nav button[aria-selected="true"]{background:var(--c-surface);color:var(--c-ink)}
.shop-attrs{width:100%;max-width:640px;border-collapse:collapse;background:var(--c-surface);border-radius:var(--radius-md);overflow:hidden}
.shop-attrs th,.shop-attrs td{text-align:left;padding:.8rem 1rem;border-bottom:1px solid var(--c-line);font-size:.95rem}
.shop-attrs th{width:38%;font-weight:600;color:var(--c-ink)}
.shop-attrs td{color:var(--c-muted)}
.shop-attrs tr:last-child th,.shop-attrs tr:last-child td{border-bottom:0}
.cart-empty{text-align:center;padding:2rem 1rem}
.cart-empty p{color:var(--c-muted);margin:0 0 1rem}
.cart-empty__mini{color:var(--c-muted);font-size:.92rem}
.btn.is-disabled{opacity:.45;pointer-events:auto;cursor:not-allowed}

/* Ficha de primera consulta */
.ficha{max-width:760px;margin:clamp(1.5rem,1rem + 2vw,3rem) auto var(--space-section);background:var(--c-surface);border-radius:var(--radius-xl);padding:clamp(2rem,1.5rem + 3vw,3.5rem) clamp(1.25rem,1rem + 2.5vw,3.5rem);text-align:center}
.ficha .pbm-icono{margin:0 auto 1rem}
.ficha__kicker{font-weight:700;font-size:.85rem;color:var(--c-accent);margin:0 0 .4rem}
.ficha h1{font-size:clamp(2rem,1.6rem + 1.8vw,2.9rem);margin:0 0 1rem}
.ficha .lead{margin:0 auto 2rem;max-width:56ch}
.ficha__pasos{list-style:none;counter-reset:paso;padding:0;margin:0 0 2rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;text-align:left}
.ficha__pasos li{counter-increment:paso;background:var(--c-bg);border-radius:var(--radius-md);padding:1.1rem 1.1rem 1.2rem;margin:0;display:grid;gap:.3rem}
.ficha__pasos li::before{content:counter(paso);font-family:var(--f-display);font-size:1.6rem;line-height:1;color:var(--c-ink)}
.ficha__pasos strong{color:var(--c-ink)}
.ficha__pasos span{font-size:.92rem;color:var(--c-muted)}
@media (max-width:640px){.ficha__pasos{grid-template-columns:1fr}}
.btn--lg{min-height:56px;padding:.9rem 2rem;font-size:1.05rem}
.ficha__nota{display:flex;gap:.6rem;align-items:flex-start;text-align:left;font-size:.88rem;color:var(--c-muted);background:var(--c-bg);border-radius:var(--radius-md);padding:.9rem 1rem;margin:2rem 0 1rem}
.ficha__nota svg{width:20px;height:20px;flex:none;color:var(--c-brand)}
.ficha__ayuda{font-size:.95rem;color:var(--c-muted);margin:0}
.product-hero__grid h1{font-size:clamp(2rem,1.5rem + 2vw,3.1rem)}
.services .service--destacado:hover{border-color:var(--c-brand)}

/* Notas de modalidades y datos de contacto con el bloque Ícono */
.note--bloque{grid-template-columns:auto minmax(0,1fr);align-items:start}
.note--bloque::before{content:none}
.note--bloque > .pbm-icono{margin-top:1px;color:var(--c-brand)}
.note--bloque > div > *{margin:0}
.contact-items{display:grid;gap:.85rem;margin:0 0 1.25rem}
.contact-items > *{margin:0}
.contact-item{display:flex;gap:.75rem;align-items:flex-start}
.contact-item > *{margin:0}
.contact-item p{color:var(--c-ink);line-height:1.5}
.contact-item .pbm-icono{color:var(--c-accent);margin-top:2px}
.contact-card .btn-row{margin:0 0 1rem}

/* Preguntas frecuentes y fuentes dentro de los artículos */
.prose .faq-articulo,.prose .wp-block-details{margin:0}
.prose details{border-bottom:1px solid var(--c-line);padding:.2rem 0}
.prose details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 0;font-weight:600;color:var(--c-ink)}
.prose details summary::-webkit-details-marker{display:none}
.prose details summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--c-brand);flex:none;transition:transform .2s}
.prose details[open] summary::after{transform:rotate(45deg)}
.prose details > p,.prose details > :not(summary){margin:0 0 1rem;color:var(--c-muted)}
.prose .fuentes__titulo,.prose h3:has(+ .fuentes){font-family:var(--f-body);font-size:.95rem;font-weight:700;margin-top:2rem}
.prose .fuentes{font-size:.9rem;padding-left:1.1rem}
.prose .fuentes li{margin:.3rem 0}

/* El mensaje del botón de WhatsApp no aparece mientras está abierto el aviso de cookies */
body:has(.cookie-demo:not([hidden])) .wa-bubble,
body:has(.cmplz-cookiebanner.cmplz-show) .wa-bubble,
body:has(.cky-consent-container:not(.cky-hide)) .wa-bubble{display:none}
