/* ===== Pilar Bautista Estética Avanzada · tema 2.0 (estilo editorial) ===== */
:root {
	--pb-linea: #E6DAD5;
	--pb-gris: #8F7F7B;
	--pb-seccion: clamp(64px, 9vw, 140px);
	--pb-ease: cubic-bezier(.2, .7, .2, 1);
}
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-tap-highlight-color: rgba(150, 84, 63, 0.12); }
img { max-width: 100%; height: auto; display: block; }
a { text-underline-offset: 4px; text-decoration-thickness: 1px; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 1px solid var(--wp--preset--color--texto); outline-offset: 4px; }
em { font-style: italic; }
h1 em, h2 em, h3 em, .pb-titular em { color: var(--wp--preset--color--rosa); font-weight: 300; }

/* Estructura general */
.wp-site-blocks > * { margin-block-start: 0; }
.pb-main { margin-block-start: 0; }
.wp-block-post-content > .alignfull { margin-block-start: 0; margin-block-end: 0; }
.pb-seccion { padding-top: var(--pb-seccion); padding-bottom: var(--pb-seccion); }
.pb-blanco { background: var(--wp--preset--color--blanco); }
.pb-panel { background: var(--wp--preset--color--panel); }
.pb-con-lineas { border-top: 1px solid var(--pb-linea); border-bottom: 1px solid var(--pb-linea); }
.pb-caja { padding: clamp(28px, 5vw, 64px); }

/* Pequeños rótulos en mayúsculas */
.pb-eyebrow, .pb-nota-mayus { font-size: 12px !important; letter-spacing: 0.3em; text-transform: uppercase; color: var(--wp--preset--color--suave); font-weight: 400; }
.pb-entradilla { font-size: clamp(17px, 1.6vw, 20px); color: var(--wp--preset--color--suave); max-width: 540px; }
.pb-nota { font-size: 14px; color: var(--wp--preset--color--suave); }
.pb-nota a { color: var(--wp--preset--color--suave); }
.pb-valoracion { font-size: 15px; color: var(--wp--preset--color--suave); }
.pb-valoracion strong { color: var(--wp--preset--color--texto); font-weight: 500; }

/* Botones: píldora con círculo y flecha */
.wp-block-button__link {
	display: inline-flex; align-items: center; justify-content: center; gap: 18px;
	min-height: 52px; box-sizing: border-box; text-align: center;
	transition: background-color .3s var(--pb-ease), color .3s var(--pb-ease);
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link::after {
	content: "↗"; display: inline-flex; align-items: center; justify-content: center;
	width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%;
	background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo);
	font-size: 13px; letter-spacing: 0; transition: transform .3s var(--pb-ease), background-color .3s;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo); }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover::after { background: var(--wp--preset--color--rosa-oscuro); color: #fff; transform: rotate(45deg); }
.wp-block-button.is-style-outline .wp-block-button__link { min-height: 44px; border-bottom: 1px solid currentColor !important; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { color: var(--wp--preset--color--rosa-oscuro); }
.pb-boton-cuadrado .wp-block-button__link { border-radius: 0 !important; padding: 12px 24px !important; min-height: 46px; }
.pb-boton-cuadrado .wp-block-button__link::after { display: none !important; }

/* ---- Cabecera ---- */
.pb-cabecera { border-bottom: 1px solid var(--pb-linea); padding-top: 18px; padding-bottom: 18px; }
.pb-cabecera > .wp-block-group { gap: 16px 32px; }
.pb-logo { margin: 0; }
.pb-logo a { display: inline-flex; flex-direction: column; gap: 2px; text-decoration: none; color: var(--wp--preset--color--texto); min-height: 44px; justify-content: center; }
.pb-logo__nombre { font-family: var(--wp--preset--font-family--cormorant); font-weight: 500; font-size: 19px; letter-spacing: 0.34em; line-height: 1.1; }
.pb-logo__lema { font-size: 11px; letter-spacing: 0.42em; color: var(--wp--preset--color--suave); text-transform: uppercase; }
.pb-menu .wp-block-navigation-item__content { font-size: 12px; letter-spacing: 0.26em; text-transform: uppercase; text-decoration: none; padding: 12px 6px; color: var(--wp--preset--color--texto); font-weight: 400; }
.pb-menu .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--rosa-oscuro); }
.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close { min-width: 48px; min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
.wp-block-navigation__responsive-container-open svg { width: 28px; height: 28px; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--fondo) !important; padding: 28px clamp(20px, 6vw, 48px) !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0 !important; width: 100%; align-items: stretch !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { border-bottom: 1px solid var(--pb-linea); width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--cormorant); font-size: 34px; letter-spacing: 0; text-transform: none; font-weight: 300; padding: 14px 0; min-height: 56px; display: flex; align-items: center;
}
@media (max-width: 781px) { .pb-cabecera .pb-boton-cuadrado { display: none !important; } }

/* ---- Portada: presentación ---- */
.pb-hero { padding-top: clamp(40px, 7vw, 110px); padding-bottom: clamp(48px, 7vw, 110px); }
.pb-hero .wp-block-columns { align-items: center; gap: clamp(32px, 6vw, 96px); }
.pb-titular { font-size: var(--wp--preset--font-size--xx-large) !important; line-height: 0.98 !important; margin: 18px 0 28px !important; }
.pb-datos { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border-top: 1px solid var(--pb-linea); border-bottom: 1px solid var(--pb-linea); margin: 36px 0 32px !important; }
.pb-datos > p { margin: 0 !important; padding: 16px 12px 16px 0; font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--wp--preset--color--suave); line-height: 1.5; }
.pb-datos > p strong { display: block; font-family: var(--wp--preset--font-family--cormorant); font-size: 22px; letter-spacing: 0; text-transform: none; color: var(--wp--preset--color--texto); font-weight: 300; margin-top: 4px; }
.pb-foto-arco img, .pb-foto-alta img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.pb-foto-arco img { border-radius: 999px 999px 0 0; }
.pb-foto img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.pb-foto-ancha img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.pb-foto-panoramica img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; }
.pb-foto, .pb-foto-arco, .pb-foto-alta, .pb-foto-ancha, .pb-foto-panoramica { margin: 0; }

/* ---- Franja en movimiento ---- */
.pb-marquesina { overflow: hidden; border-top: 1px solid var(--pb-linea); border-bottom: 1px solid var(--pb-linea); padding-top: 26px; padding-bottom: 26px; }
.pb-marquesina p { margin: 0; white-space: nowrap; font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(26px, 3vw, 40px); font-weight: 300; line-height: 1.2; color: var(--wp--preset--color--texto); }
.pb-marquesina p em { color: var(--pb-gris); }
.pb-marquesina__pista { display: flex; width: max-content; animation: pb-desliza 48s linear infinite; }
.pb-marquesina__pista p { padding-right: 0.6em; }
.pb-marquesina:hover .pb-marquesina__pista { animation-play-state: paused; }
@keyframes pb-desliza { to { transform: translateX(-50%); } }

/* ---- Índice de tratamientos ---- */
.pb-indice .wp-block-columns { gap: clamp(32px, 6vw, 96px); align-items: flex-start; }
.pb-indice__lista { border-top: 1px solid var(--pb-linea); margin-top: 40px !important; }
.pb-indice__fila { position: relative; display: grid !important; grid-template-columns: 48px 1fr 40px; align-items: center; border-bottom: 1px solid var(--pb-linea); padding: 18px 0 !important; margin: 0 !important; transition: padding .4s var(--pb-ease); }
.pb-indice__fila > * { margin: 0 !important; }
.pb-indice__num { font-size: 11px; letter-spacing: 0.2em; color: var(--wp--preset--color--suave); grid-column: 1; grid-row: 1; }
.pb-indice__fila h3 { grid-column: 2; grid-row: 1; font-size: clamp(26px, 3.2vw, 46px) !important; line-height: 1.15; }
.pb-indice__fila h3 a { text-decoration: none; color: var(--pb-gris); transition: color .3s; }
.pb-indice__fila h3 a::after { content: ""; position: absolute; inset: 0; }
.pb-indice__flecha { grid-column: 3; grid-row: 1; text-align: right; font-size: 16px; color: var(--pb-gris); transition: transform .3s var(--pb-ease), color .3s; }
.pb-indice__fila .pb-indice__foto { display: none; }
.pb-indice__fila.is-activa h3 a, .pb-indice__fila:hover h3 a, .pb-indice__fila:focus-within h3 a { color: var(--wp--preset--color--texto); font-style: italic; }
.pb-indice__fila.is-activa .pb-indice__flecha, .pb-indice__fila:hover .pb-indice__flecha { color: var(--wp--preset--color--texto); transform: translate(3px, -3px); }
.pb-indice__fila.is-activa { padding-left: 14px !important; }
.pb-indice__vista { position: sticky; top: 32px; margin: 0; }
.pb-indice__vista img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; transition: opacity .35s var(--pb-ease); }
.pb-indice__vista figcaption { position: absolute; left: 24px; bottom: 20px; margin: 0; color: #fff; font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-size: 26px; text-shadow: 0 1px 12px rgba(0,0,0,.35); }
.pb-indice__vista { position: sticky; }

/* ---- Bloque destacado ---- */
.pb-destacado { background: var(--wp--preset--color--panel); padding: clamp(32px, 6vw, 88px) !important; position: relative; }
.pb-destacado h2 { margin: 12px 0 20px; }
.pb-destacado .pb-enlace-flecha a { text-decoration: none; border-bottom: 1px solid currentColor; font-size: 12px; letter-spacing: 0.24em; text-transform: uppercase; padding-bottom: 4px; }

/* ---- Carruseles ---- */
.pb-carrusel__cabecera { display: flex !important; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: 36px !important; }
.pb-carrusel__cabecera > * { margin: 0 !important; }
.pb-carrusel__pista {
	display: flex !important; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 0;
	-webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; scrollbar-width: none; padding-bottom: 4px;
}
.pb-carrusel__pista::-webkit-scrollbar { display: none; }
.pb-carrusel__pista > * { flex: 0 0 clamp(250px, 30vw, 420px); scroll-snap-align: start; margin: 0 !important; }
.pb-carrusel__pista img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.pb-carrusel__pista figcaption { display: block; margin: 12px 0 0; font-size: 11px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--wp--preset--color--suave); text-align: left; }
.pb-carrusel--reels .pb-carrusel__pista > * { flex-basis: clamp(200px, 19vw, 260px); }
.pb-carrusel--reels .pb-carrusel__pista img { aspect-ratio: 9 / 16; border-radius: 14px; }
.pb-flechas { display: flex; gap: 10px; }
.pb-flechas button {
	width: 48px; height: 48px; border-radius: 50%; border: 1px solid var(--pb-linea); background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--texto); font-size: 18px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
	transition: background-color .25s, color .25s;
}
.pb-flechas button:hover { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo); }
.pb-flechas button:disabled { opacity: .35; cursor: default; background: transparent; color: var(--wp--preset--color--texto); }
.pb-instagram-titulo { overflow-wrap: anywhere; }

/* ---- Cita grande ---- */
.pb-frase { text-align: center; font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(38px, 6vw, 84px) !important; line-height: 1.05; font-weight: 300; margin: 0 auto 48px !important; max-width: 14ch; }
.pb-frase em { color: var(--wp--preset--color--rosa); }

/* ---- Píldora de Google ---- */
.pb-google { display: flex !important; align-items: center; justify-content: space-between; gap: 12px 28px; flex-wrap: wrap; max-width: 560px; margin: 0 auto !important; background: var(--wp--preset--color--blanco); border: 1px solid var(--pb-linea); border-radius: 999px; padding: 14px 28px !important; }
.pb-google p { margin: 0 !important; }
.pb-google__nota { font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--suave); }
.pb-google__nota strong { font-family: var(--wp--preset--font-family--cormorant); font-size: 26px; letter-spacing: 0; color: var(--wp--preset--color--texto); font-weight: 300; margin-right: 8px; }
.pb-estrellas { color: var(--wp--preset--color--dorado); letter-spacing: 0.08em; margin-right: 8px; }
.pb-google__enlace a { font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid currentColor; padding: 10px 0 2px; display: inline-block; }

/* ---- Llamada final ---- */
.pb-cta { text-align: center; }
.pb-cta h2 { font-size: clamp(48px, 8vw, 116px) !important; margin-bottom: 36px; }
.pb-cta .wp-block-buttons { justify-content: center; }
.pb-cta__enlaces { justify-content: center; gap: 8px 32px !important; margin-top: 28px !important; }
.pb-cta__enlaces .wp-block-button__link { font-size: 11px !important; }

/* ---- Tablas, preguntas, tarjetas (páginas interiores) ---- */
.pb-h2-texto { font-size: clamp(30px, 3.4vw, 44px) !important; }
.pb-precios table { border-collapse: collapse; width: 100%; background: transparent; }
.pb-precios td { padding: 16px 4px; border: 0; border-bottom: 1px solid var(--pb-linea); }
.pb-precios tr:first-child td { border-top: 1px solid var(--pb-linea); }
.pb-precios td:last-child { text-align: right; white-space: nowrap; font-family: var(--wp--preset--font-family--cormorant); font-size: 21px; }
.pb-precios { overflow-x: auto; margin: 0; }
.wp-block-details { border-bottom: 1px solid var(--pb-linea); padding: 0; margin: 0; }
.wp-block-details:first-of-type { border-top: 1px solid var(--pb-linea); }
.wp-block-details summary { cursor: pointer; min-height: 56px; display: flex; align-items: center; gap: 12px; font-family: var(--wp--preset--font-family--cormorant); font-size: 24px; padding: 10px 0; list-style: none; }
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after { content: "+"; margin-left: auto; font-family: var(--wp--preset--font-family--jost); font-size: 20px; transition: transform .3s var(--pb-ease); }
.wp-block-details[open] summary::after { transform: rotate(45deg); }
.wp-block-details > p:last-child { margin: 0 0 22px; color: var(--wp--preset--color--suave); }
.pb-tarjeta-contacto { background: var(--wp--preset--color--blanco); padding: 28px; height: 100%; box-sizing: border-box; }
.pb-tarjeta-contacto h3 { margin-top: 0; font-size: 11px !important; font-family: var(--wp--preset--font-family--jost); letter-spacing: 0.26em; text-transform: uppercase; color: var(--wp--preset--color--suave); font-weight: 400; }
.pb-tarjeta-contacto p { font-family: var(--wp--preset--font-family--cormorant); font-size: 24px; line-height: 1.3; }
.pb-precio-grande { font-family: var(--wp--preset--font-family--cormorant); font-size: 46px; line-height: 1; margin: 0; }
.pb-mapa iframe { width: 100%; min-height: 380px; border: 0; display: block; filter: grayscale(.35); }
.pb-tarjeta { position: relative; }
.pb-tarjeta h3 a { text-decoration: none; }
.pb-tarjeta h3 a::after { content: ""; position: absolute; inset: 0; }
.pb-tarjeta .pb-precio { border-top: 1px solid var(--pb-linea); padding-top: 10px; margin: 0; }
.pb-resena { background: var(--wp--preset--color--fondo); padding: 32px; height: 100%; box-sizing: border-box; }

/* ---- Pie ---- */
.pb-pie { border-top: 1px solid var(--pb-linea); padding-top: clamp(56px, 7vw, 96px); padding-bottom: 48px; font-size: 14px; }
.pb-pie .wp-block-columns { gap: 32px; }
.pb-pie h2 { font-family: var(--wp--preset--font-family--jost); font-size: 10px !important; letter-spacing: 0.34em; text-transform: uppercase; color: var(--wp--preset--color--suave); margin: 0 0 16px; font-weight: 400; }
.pb-pie p { margin: 0 0 6px; line-height: 2; }
.pb-pie a { text-decoration: none; color: var(--wp--preset--color--suave); }
.pb-pie a:hover { color: var(--wp--preset--color--texto); }
.pb-pie__lema { font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-size: 26px; line-height: 1.2 !important; color: var(--wp--preset--color--suave); margin: 14px 0 20px !important; }
.pb-pie__legal { border-top: 1px solid var(--pb-linea); padding-top: 24px; margin-top: 48px; font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--suave); }

/* ---- Contacto fijo ---- */
.pb-flotante { position: fixed; right: 20px; bottom: 20px; z-index: 50; display: flex; gap: 8px; }
.pb-flotante a { display: inline-flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 22px; border-radius: 999px; text-decoration: none; font-family: var(--wp--preset--font-family--jost); font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; box-shadow: 0 10px 30px rgba(43, 34, 32, 0.14); }
.pb-flotante__whatsapp { background: var(--wp--preset--color--rosa-oscuro); color: #fff; }
.pb-flotante__llamar { background: #fff; color: var(--wp--preset--color--texto); border: 1px solid var(--pb-linea); }
@media (min-width: 782px) { .pb-flotante__llamar { display: none !important; } }

/* ---- Móvil ---- */
@media (max-width: 781px) {
	.pb-datos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pb-datos > p:nth-child(-n+2) { border-bottom: 1px solid var(--pb-linea); }
	.pb-indice__vista-col { display: none !important; }
	.pb-indice__fila { grid-template-columns: 36px 1fr 72px; padding: 14px 0 !important; }
	.pb-indice__fila .pb-indice__foto { display: block; grid-column: 3; grid-row: 1; }
	.pb-indice__fila .pb-indice__foto img { width: 72px; height: 90px; object-fit: cover; }
	.pb-indice__flecha { display: none; }
	.pb-indice__fila h3 a { color: var(--wp--preset--color--texto); }
	.pb-indice__fila.is-activa { padding-left: 0 !important; }
	.pb-carrusel__pista { margin-right: calc(-1 * clamp(20px, 5vw, 64px)); padding-right: clamp(20px, 5vw, 64px); }
	.pb-carrusel__pista > * { flex-basis: 74vw; }
	.pb-carrusel--reels .pb-carrusel__pista > * { flex-basis: 52vw; }
	.pb-flechas { display: none; }
	.pb-google { border-radius: 24px; padding: 18px 22px !important; }
	.pb-flotante { left: 0; right: 0; bottom: 0; gap: 0; padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px)); background: rgba(248, 244, 242, 0.96); border-top: 1px solid var(--pb-linea); }
	.pb-flotante a { flex: 1 1 50%; justify-content: center; box-shadow: none; margin: 0 4px; }
	body { padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion: reduce) {
	.pb-marquesina__pista { animation: none; }
	* { transition: none !important; scroll-behavior: auto !important; }
}

/* Ajustes tras la revisión visual */
.pb-carrusel__texto > * { margin: 0 !important; }
.pb-carrusel__texto .pb-eyebrow { margin-bottom: 14px !important; }
.pb-carrusel__cabecera .wp-block-buttons { margin-left: auto !important; }
.pb-google { max-width: 700px; }
@media (min-width: 782px) { .pb-google__nota { white-space: nowrap; } }

/* Logo en imagen */
.pb-logo img { height: 64px; width: auto; display: block; }
.pb-pie .pb-logo img { height: 56px; }
@media (max-width: 781px) { .pb-cabecera .pb-logo img { height: 48px; } }

/* Páginas legales: títulos más contenidos para textos largos */
.pb-legal h1 { margin-bottom: 40px; }
.pb-legal h2 { font-size: clamp(26px, 2.8vw, 34px) !important; margin-top: 48px; margin-bottom: 12px; }
.pb-legal p, .pb-legal li { color: #4A3D3A; }
.pb-legal ul { padding-left: 1.2em; }

/* Tabla de cookies: se desplaza en horizontal en pantallas pequeñas */
.pb-tabla-cookies { overflow-x: auto; margin: 24px 0; -webkit-overflow-scrolling: touch; }
.pb-tabla-cookies table { border-collapse: collapse; min-width: 640px; width: 100%; font-size: 14px; }
.pb-tabla-cookies th { text-align: left; font-weight: 500; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--suave); border-bottom: 1px solid var(--wp--preset--color--texto); padding: 10px 12px 10px 0; }
.pb-tabla-cookies td { border: 0; border-bottom: 1px solid var(--pb-linea); padding: 12px 12px 12px 0; vertical-align: top; }
.pb-legal h3 { font-size: 22px !important; margin-top: 28px; }

/* ---- Reseñas en carrusel ---- */
.pb-carrusel--resenas .pb-carrusel__pista > * { flex-basis: clamp(260px, 23vw, 300px); }
.pb-resena-tarjeta {
	position: relative; display: flex !important; flex-direction: column; align-items: center; text-align: center;
	background: var(--wp--preset--color--fondo); border: 1px solid var(--pb-linea); border-radius: 18px;
	padding: 28px 22px 20px !important; box-sizing: border-box; gap: 0;
}
.pb-resena-tarjeta > p { margin: 0 !important; }
.pb-resena__inicial {
	width: 52px; height: 52px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
	background: var(--wp--preset--color--panel); color: var(--wp--preset--color--rosa-oscuro);
	font-family: var(--wp--preset--font-family--cormorant); font-size: 24px; margin-bottom: 12px !important;
}
.pb-resena__nombre { font-weight: 500; font-size: 15px; margin-bottom: 6px !important; }
.pb-resena__fecha { font-size: 12px; color: var(--wp--preset--color--suave); margin-bottom: 8px !important; }
.pb-resena__estrellas { color: #B8862E; letter-spacing: 0.12em; font-size: 15px; margin-bottom: 12px !important; }
.pb-resena__texto {
	font-size: 15px; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden;
}
.pb-resena-tarjeta.is-abierta .pb-resena__texto { -webkit-line-clamp: unset; display: block; }
.pb-resena__mas { margin-top: 10px; background: none; border: 0; cursor: pointer; font: inherit; font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--suave); text-decoration: underline; text-underline-offset: 4px; min-height: 44px; padding: 0 8px; }
.pb-resena__origen { margin-top: auto !important; padding-top: 14px; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--wp--preset--color--suave); }
.pb-google--compacta { margin: 0 !important; max-width: none; padding: 10px 22px !important; }
@media (max-width: 781px) { .pb-carrusel--resenas .pb-carrusel__pista > * { flex-basis: 82vw; } }

/* ---- Frases manuscritas y banda de color ---- */
.pb-lema { text-align: center; }
.pb-lema__antes { font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-size: clamp(18px, 1.8vw, 22px); color: var(--wp--preset--color--rosa-oscuro); margin-top: 0 !important; margin-bottom: 8px !important; }
.pb-manuscrita {
	font-family: var(--wp--preset--font-family--manuscrita) !important; font-weight: 400 !important; font-style: normal;
	font-size: clamp(46px, 7vw, 104px) !important; line-height: 1.08 !important; letter-spacing: 0 !important;
	color: var(--wp--preset--color--rosa) !important; text-transform: none !important; margin: 0 auto !important; max-width: 16ch;
}
.pb-lema__despues { font-size: clamp(16px, 1.5vw, 19px); color: var(--wp--preset--color--suave); max-width: 520px; margin: 22px auto 0 !important; }
.pb-manuscrita-pequena { font-family: var(--wp--preset--font-family--manuscrita); font-size: clamp(32px, 3.6vw, 48px); line-height: 1.1; color: var(--wp--preset--color--rosa); margin-top: 0 !important; margin-bottom: 6px !important; }
.pb-banda { background: var(--wp--preset--color--rosa-oscuro); padding-top: clamp(36px, 5vw, 64px); padding-bottom: clamp(36px, 5vw, 64px); }
.pb-banda__texto { margin: 0 auto !important; max-width: 900px; text-align: center; color: #FFFFFF; font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-weight: 300; font-size: clamp(22px, 2.6vw, 32px); line-height: 1.4; }
.pb-lema > *, .pb-cta > * { margin-left: auto !important; margin-right: auto !important; }

/* ---- Banda de marcas ---- */
.pb-marcas-seccion { padding-top: clamp(56px, 7vw, 96px); padding-bottom: clamp(56px, 7vw, 96px); }
.pb-carrusel--marcas .pb-carrusel__cabecera { justify-content: center; position: relative; text-align: center; }
.pb-carrusel--marcas .pb-carrusel__texto { width: 100%; }
.pb-carrusel--marcas .pb-manuscrita { font-size: clamp(54px, 6vw, 84px) !important; }
.pb-marcas__texto { color: var(--wp--preset--color--suave); font-size: 15px; margin-top: 6px !important; }
.pb-carrusel--marcas .pb-flechas { position: absolute; right: 0; bottom: 0; }
.pb-marcas__pista { gap: clamp(20px, 2.6vw, 40px) !important; align-items: center; }
.pb-carrusel--marcas .pb-carrusel__pista > * { flex-basis: clamp(130px, 12.5vw, 180px); }
.pb-marca img { width: 100%; height: 88px !important; aspect-ratio: auto !important; object-fit: contain; }
@media (max-width: 781px) {
	.pb-carrusel--marcas .pb-carrusel__pista > * { flex-basis: 42vw; }
	.pb-marca img { height: 84px !important; }
}
.pb-flechas[hidden] { display: none !important; }
.pb-marcas__pista > :first-child { margin-left: auto !important; }
.pb-marcas__pista > :last-child { margin-right: auto !important; }

/* ---- Iconos de los datos de la portada (dibujados con el color de la paleta) ---- */
.pb-datos > p::before {
	content: ""; display: block; width: 24px; height: 24px; margin-bottom: 12px;
	background-color: var(--wp--preset--color--rosa);
	-webkit-mask: var(--pb-icono) no-repeat center / contain; mask: var(--pb-icono) no-repeat center / contain;
}
.pb-datos > p:nth-child(1) { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='9' r='6'/><path d='M8.6 13.8 7 22l5-2.8L17 22l-1.6-8.2'/><path d='m12 6.2.9 1.8 2 .3-1.4 1.4.3 2-1.8-1-1.8 1 .3-2-1.4-1.4 2-.3z'/></svg>"); }
.pb-datos > p:nth-child(2) { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3.2l2.6 5.5 6 .8-4.4 4.2 1.1 6L12 16.8l-5.3 2.9 1.1-6-4.4-4.2 6-.8z'/></svg>"); }
.pb-datos > p:nth-child(3) { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21.5s-7-6.1-7-11.4a7 7 0 0 1 14 0c0 5.3-7 11.4-7 11.4z'/><circle cx='12' cy='10' r='2.6'/></svg>"); }
.pb-datos > p:nth-child(4) { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3.5' y='5' width='17' height='15.5' rx='2.5'/><path d='M3.5 10h17M8 3v4M16 3v4'/><path d='m9.2 15.2 1.9 1.9 3.8-3.8'/></svg>"); }
@media (max-width: 781px) { .pb-datos > p::before { width: 22px; height: 22px; margin-bottom: 10px; } }
/* Iconos y textos de los datos, centrados en cada columna */
.pb-datos > p { text-align: center; padding: 18px 8px !important; }
.pb-datos > p::before { margin-left: auto; margin-right: auto; }

/* ---- Cabecera con el logo centrado y el menú a ambos lados ---- */
.pb-cabecera__fila { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.pb-cabecera__fila > * { margin: 0 !important; }
.pb-cab-izq { justify-self: start; }
.pb-cab-der { justify-self: end; display: flex !important; align-items: center; gap: 20px; }
.pb-cabecera .pb-logo { justify-self: center; }
.pb-cabecera .pb-logo a { align-items: center; }
.pb-menu-movil { display: none !important; }
@media (max-width: 1100px) {
	.pb-cabecera__fila { display: flex !important; justify-content: space-between; }
	.pb-cab-izq, .pb-cab-der { display: none !important; }
	.pb-menu-movil { display: flex !important; }
}
.pb-cab-izq .wp-block-navigation__container, .pb-cab-der .wp-block-navigation__container { flex-wrap: nowrap !important; gap: 4px 18px !important; }
.pb-cab-izq .wp-block-navigation, .pb-cab-der .wp-block-navigation { flex-wrap: nowrap !important; }
.pb-cab-izq .wp-block-navigation-item__content, .pb-cab-der .wp-block-navigation-item__content { white-space: nowrap; padding-left: 2px !important; padding-right: 2px !important; }
.pb-cabecera .pb-boton-cuadrado .wp-block-button__link { white-space: nowrap; }
.pb-cabecera__fila { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
.pb-cab-izq .wp-block-navigation-item__content, .pb-cab-der .wp-block-navigation-item__content { letter-spacing: 0.2em; }
@media (max-width: 1400px) { .pb-cab-der .pb-boton-cuadrado { display: none !important; } }
.pb-cab-der > *, .pb-cab-der .wp-block-buttons, .pb-cab-der .wp-block-button { margin: 0 !important; }
.pb-cabecera .pb-logo { align-self: center; line-height: 0; } .pb-cabecera .pb-logo a { min-height: 0; }

/* ---- Cabecera en dos filas: logo centrado arriba y menú centrado debajo ---- */
.pb-cabecera { padding-bottom: 0 !important; }
.pb-cabecera__logo-fila { position: relative; display: flex !important; justify-content: center; align-items: center; padding-bottom: 16px; margin-top: 0 !important; margin-bottom: 0 !important; }
.pb-cabecera__logo-fila .pb-logo { margin: 0 !important; }
.pb-cabecera__logo-fila .pb-menu-movil { position: absolute !important; right: 0; top: 50%; transform: translateY(calc(-50% - 8px)); }
.pb-menu-principal { border-top: 1px solid var(--pb-linea); margin-top: 0 !important; margin-bottom: 0 !important; padding: 6px 0 !important; }
.pb-menu-principal .wp-block-navigation__container { gap: 4px clamp(18px, 3vw, 44px) !important; }
.pb-menu-principal .wp-block-navigation-item__content { white-space: nowrap; }
.pb-menu-movil { display: none !important; }
@media (max-width: 900px) {
	.pb-menu-principal { display: none !important; }
	.pb-menu-movil { display: flex !important; }
	.pb-cabecera { padding-bottom: 14px !important; }
	.pb-cabecera__logo-fila { padding-bottom: 0; }
	.pb-cabecera__logo-fila .pb-menu-movil { transform: translateY(-50%); }
}
@media (max-width: 900px) {
	.pb-cabecera__logo-fila .pb-menu-movil { top: 0 !important; bottom: 0 !important; transform: none !important; align-items: center !important; margin: 0 !important; }
}
/* Índice sin numeración: el título ocupa la primera columna */
.pb-indice__fila { grid-template-columns: 1fr 40px !important; }
.pb-indice__fila h3 { grid-column: 1 !important; }
.pb-indice__flecha { grid-column: 2 !important; }
@media (max-width: 781px) {
	.pb-indice__fila { grid-template-columns: 1fr 72px !important; gap: 16px; }
	.pb-indice__fila .pb-indice__foto { grid-column: 2 !important; }
}

/* ---- Páginas de categoría en tarjetas ---- */
.pb-cabecera-pagina { text-align: center; }
.pb-cabecera-pagina > * { margin-left: auto !important; margin-right: auto !important; }
.pb-migas { font-size: 13px; color: var(--wp--preset--color--suave); }
.pb-migas a { color: var(--wp--preset--color--suave); }
.pb-titulo-pagina { max-width: 18ch !important; margin-top: 10px !important; margin-bottom: 18px !important; }
.pb-centrado { text-align: center; max-width: 620px !important; }
.pb-centrado-botones { justify-content: center; }
.pb-grupo-trat + .pb-grupo-trat { margin-top: clamp(56px, 7vw, 96px) !important; }
.pb-grupo-trat__cabecera { text-align: center; margin-bottom: 32px !important; }
.pb-grupo-trat__titulo { font-size: clamp(30px, 3.4vw, 44px) !important; margin: 0 0 8px !important; }
.pb-grupo-trat__texto { color: var(--wp--preset--color--suave); margin: 0 !important; }
.pb-rejilla-trat { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 28px; }
.pb-rejilla-trat > * { margin: 0 !important; }
.pb-tarjeta-trat { position: relative; display: flex !important; flex-direction: column; align-items: center; text-align: center; }
.pb-tarjeta-trat > * { margin: 0 !important; }
.pb-foto-cuadrada img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: transform .6s var(--pb-ease); }
.pb-foto-cuadrada { overflow: hidden; width: 100%; }
.pb-tarjeta-trat:hover .pb-foto-cuadrada img { transform: scale(1.04); }
.pb-tarjeta-trat h3 { font-style: italic; font-size: clamp(21px, 1.9vw, 26px) !important; line-height: 1.2; margin-top: 18px !important; min-height: 2.4em; display: flex; align-items: center; justify-content: center; }
.pb-tarjeta-trat h3 a { text-decoration: none; color: var(--wp--preset--color--texto); }
.pb-tarjeta-trat h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.pb-tarjeta-trat__precio { font-family: var(--wp--preset--font-family--cormorant); font-size: 22px; color: var(--wp--preset--color--rosa-oscuro); margin-top: 6px !important; }
.pb-tarjeta-trat__ver {
	margin-top: 14px !important; width: 100%; box-sizing: border-box; border: 1px solid #DCC3B8; padding: 12px 8px; min-height: 46px;
	display: flex; align-items: center; justify-content: center; font-size: 11px; letter-spacing: 0.24em; text-transform: uppercase;
	color: var(--wp--preset--color--texto); transition: background-color .3s, color .3s, border-color .3s;
}
.pb-tarjeta-trat:hover .pb-tarjeta-trat__ver { background: var(--wp--preset--color--texto); border-color: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo); }
.pb-notas-trat { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.pb-notas-trat > * { margin: 0 !important; }
.pb-nota-caja { background: var(--wp--preset--color--blanco); padding: 32px !important; }
.pb-nota-caja h3 { margin-top: 0 !important; }
@media (max-width: 1100px) { .pb-rejilla-trat { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 781px) {
	.pb-rejilla-trat { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 14px; }
	.pb-tarjeta-trat h3 { font-size: 18px !important; margin-top: 12px !important; }
	.pb-tarjeta-trat__precio { font-size: 19px; }
	.pb-tarjeta-trat__ver { font-size: 10px; letter-spacing: 0.18em; padding: 10px 4px; }
	.pb-notas-trat { grid-template-columns: 1fr; }
}
/* Rejilla flexible: las tarjetas de la última fila quedan centradas */
.pb-rejilla-trat { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 40px 28px; }
.pb-rejilla-trat > .pb-tarjeta-trat { flex: 0 0 calc((100% - 3 * 28px) / 4); }
@media (max-width: 1100px) { .pb-rejilla-trat > .pb-tarjeta-trat { flex-basis: calc((100% - 2 * 28px) / 3); } }
@media (max-width: 781px) { .pb-rejilla-trat { gap: 32px 14px; } .pb-rejilla-trat > .pb-tarjeta-trat { flex-basis: calc((100% - 14px) / 2); } }

/* ---- Ficha de tratamiento ---- */
.pb-ficha { padding-top: 0 !important; padding-bottom: 0 !important; }
.pb-ficha__columnas { gap: 0 !important; align-items: stretch !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pb-ficha__col-foto { display: flex; }
.pb-ficha__foto { width: 100%; margin: 0 !important; }
.pb-ficha__foto img { width: 100%; height: 100%; min-height: 560px; object-fit: cover; }
.pb-ficha__col-texto { display: flex !important; flex-direction: column; }
.pb-ficha__col-texto > * { margin: 0 !important; }
.pb-ficha__cabecera { flex: 1 1 auto; display: flex !important; flex-direction: column; justify-content: center; gap: 14px; background: var(--wp--preset--color--blanco); padding: clamp(32px, 5vw, 72px) !important; }
.pb-ficha__cabecera > * { margin: 0 !important; }
.pb-ficha__cabecera h1 { font-size: clamp(36px, 4.2vw, 60px) !important; line-height: 1.05; }
.pb-ficha__datos { background: var(--wp--preset--color--rosa-oscuro); color: #FFFFFF; padding: clamp(18px, 2.5vw, 32px) clamp(32px, 5vw, 72px) !important; }
.pb-ficha__fila { position: relative; margin: 0 !important; padding: 18px 0 18px 52px !important; border-bottom: 1px solid rgba(255,255,255,.28); font-size: 15px; line-height: 1.55; color: #FFFFFF; }
.pb-ficha__fila:last-child { border-bottom: 0; }
.pb-ficha__fila strong { display: inline-block; font-weight: 500; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; margin-bottom: 2px; }
.pb-ficha__fila--desc { font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-size: clamp(18px, 1.6vw, 21px); line-height: 1.45; }
.pb-ficha__fila--tiempo, .pb-ficha__fila--precio { font-family: var(--wp--preset--font-family--cormorant); font-size: 24px; line-height: 1.25; }
.pb-ficha__fila--tiempo strong, .pb-ficha__fila--precio strong { font-family: var(--wp--preset--font-family--jost); }
.pb-ficha__fila::before { content: ""; position: absolute; left: 0; top: 18px; width: 30px; height: 30px; background: #FFFFFF; -webkit-mask: var(--pb-icono) no-repeat center / contain; mask: var(--pb-icono) no-repeat center / contain; }
.pb-ficha__fila--desc { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 20c-4-2.2-6-5.6-6-9.2C6 7 8.6 4.3 12 3c3.4 1.3 6 4 6 7.8 0 3.6-2 7-6 9.2z'/><path d='M12 20V8'/><path d='M12 13l-3-2.5M12 11l3-2.5'/></svg>"); }
.pb-ficha__fila--tiempo { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='8.5'/><path d='M12 7.5V12l3 2'/></svg>"); }
.pb-ficha__fila--precio { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M3.5 12.6V5a1.5 1.5 0 0 1 1.5-1.5h7.6l8 8a1.5 1.5 0 0 1 0 2.1l-7.5 7.5a1.5 1.5 0 0 1-2.1 0z'/><circle cx='8' cy='8' r='1.3'/></svg>"); }

/* Pestañas */
.pb-ficha-info { background: var(--wp--preset--color--panel); }
.pb-pestanas { max-width: 880px; margin-left: auto !important; margin-right: auto !important; background: var(--wp--preset--color--blanco); padding: clamp(28px, 5vw, 56px) !important; }
.pb-pestanas__lista { display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 32px; margin-bottom: 28px; border-bottom: 1px solid var(--pb-linea); }
.pb-pestanas__boton { background: none; border: 0; border-bottom: 1px solid transparent; margin-bottom: -1px; padding: 8px 2px 12px; min-height: 48px; cursor: pointer;
	font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-size: clamp(22px, 2.2vw, 28px); color: var(--pb-gris); transition: color .25s, border-color .25s; }
.pb-pestanas__boton[aria-selected="true"] { color: var(--wp--preset--color--texto); border-bottom-color: var(--wp--preset--color--rosa-oscuro); }
.pb-pestanas__boton:hover { color: var(--wp--preset--color--texto); }
.pb-pestanas.is-pestanas .pb-pestana__titulo { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.pb-pestana[hidden] { display: none !important; }
.pb-pestana h3 { font-size: 24px !important; margin-top: 22px; }
.pb-pestana > .pb-pestana__titulo + h3 { margin-top: 0; }
.pb-pestanas:not(.is-pestanas) .pb-pestana + .pb-pestana { margin-top: 48px !important; }

/* Pide cita */
.pb-cita { text-align: center; }
.pb-cita > * { margin-left: auto !important; margin-right: auto !important; }
.pb-cita .pb-manuscrita { font-size: clamp(56px, 6vw, 88px) !important; }
.pb-cita__texto { margin-top: 10px !important; margin-bottom: 26px !important; color: var(--wp--preset--color--suave); }

@media (max-width: 781px) {
	.pb-ficha__foto img { min-height: 0; aspect-ratio: 4 / 3; height: auto; }
	.pb-ficha__cabecera { padding: 28px 22px !important; }
	.pb-ficha__datos { padding: 8px 22px !important; }
	.pb-ficha { padding-left: 0 !important; padding-right: 0 !important; }
	.pb-pestanas { padding: 24px 18px !important; }
	.pb-pestanas__lista { gap: 0 18px; }
}
.pb-pestanas__boton { color: var(--wp--preset--color--suave); } .pb-pestanas__boton[aria-selected="true"] { color: var(--wp--preset--color--texto); }

/* ---- Tarjetas de precio (pestaña «Precios y bonos») ---- */
.pb-tarifas { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.pb-tarifas > * { margin: 0 !important; }
.pb-tarifa {
	position: relative; display: grid !important; grid-template-columns: 1fr auto; grid-template-areas: "tipo tipo" "nombre precio" "detalle detalle";
	align-items: end; gap: 4px 20px; padding: 22px 24px !important; border: 1px solid var(--pb-linea); background: var(--wp--preset--color--fondo);
	transition: border-color .3s, transform .3s var(--pb-ease);
}
.pb-tarifa:hover { border-color: #D2B3A6; transform: translateY(-2px); }
.pb-tarifa > * { margin: 0 !important; }
.pb-tarifa__tipo { grid-area: tipo; font-size: 11px; letter-spacing: .24em; text-transform: uppercase; color: var(--wp--preset--color--suave); }
.pb-tarifa__nombre { grid-area: nombre; font-family: var(--wp--preset--font-family--cormorant); font-size: 21px; line-height: 1.25; color: var(--wp--preset--color--texto); }
.pb-tarifa__precio { grid-area: precio; font-family: var(--wp--preset--font-family--cormorant); font-size: 34px; line-height: 1; color: var(--wp--preset--color--rosa-oscuro); white-space: nowrap; text-align: right; }
.pb-tarifa__detalle { grid-area: detalle; margin-top: 8px !important; padding-top: 10px; border-top: 1px dashed #DCC3B8; font-size: 13px; color: var(--wp--preset--color--rosa-oscuro); }
.pb-tarifa--bono { background: var(--wp--preset--color--panel); border-color: #E2CBC1; }
.pb-tarifa--bono .pb-tarifa__tipo::before { content: "★ "; color: var(--wp--preset--color--dorado); letter-spacing: 0; }
.pb-tarifas > .pb-tarifa:only-child { grid-column: 1 / -1; max-width: 420px; justify-self: center; width: 100%; }
@media (max-width: 781px) {
	.pb-tarifas { grid-template-columns: 1fr; gap: 12px; }
	.pb-tarifa { padding: 18px 18px !important; }
	.pb-tarifa__nombre { font-size: 19px; }
	.pb-tarifa__precio { font-size: 30px; }
}
.pb-tarifa { grid-template-rows: auto 1fr auto; align-items: stretch; }
.pb-tarifa__tipo { align-self: start; }
.pb-tarifa__nombre, .pb-tarifa__precio { align-self: end; }
.pb-tarifas { display: flex !important; flex-wrap: wrap; justify-content: center; }
.pb-tarifas > .pb-tarifa { flex: 0 0 calc(50% - 8px); box-sizing: border-box; }
@media (max-width: 781px) { .pb-tarifas > .pb-tarifa { flex-basis: 100%; } }

/* ---- Precios de depilación por zonas ---- */
.pb-zonas { column-count: 3; column-gap: 24px; }
.pb-zonas > * { margin: 0 0 24px !important; }
.pb-zona-grupo { break-inside: avoid; -webkit-column-break-inside: avoid; display: inline-block !important; width: 100%; box-sizing: border-box;
	background: var(--wp--preset--color--fondo); border: 1px solid var(--pb-linea); padding: 26px 28px 14px !important; }
.pb-zona-grupo > * { margin: 0 !important; }
.pb-zona-grupo__titulo { font-style: italic; font-size: 27px !important; color: var(--wp--preset--color--texto); padding-bottom: 12px !important; margin-bottom: 4px !important; border-bottom: 1px solid #DCC3B8; }
.pb-zona { display: flex !important; align-items: baseline; justify-content: space-between; gap: 16px; padding: 11px 0 !important; border-bottom: 1px dotted #DCC3B8; }
.pb-zona:last-child { border-bottom: 0; }
.pb-zona > * { margin: 0 !important; }
.pb-zona__nombre { font-size: 15px; color: var(--wp--preset--color--texto); }
.pb-zona__precio { font-family: var(--wp--preset--font-family--cormorant); font-size: 22px; line-height: 1; color: var(--wp--preset--color--rosa-oscuro); white-space: nowrap; }
.pb-nota-centrada { max-width: 640px; margin-left: auto !important; margin-right: auto !important; text-align: center; }
.pb-nota-centrada .wp-block-buttons { justify-content: center; }
.pb-centrado-titulo { text-align: center; }
@media (max-width: 1100px) { .pb-zonas { column-count: 2; } }
@media (max-width: 781px) { .pb-zonas { column-count: 1; } .pb-zona-grupo { padding: 22px 20px 10px !important; } }
.pb-zonas > .pb-zona-grupo { display: block !important; break-inside: avoid; page-break-inside: avoid; }
@media (min-width: 1101px) { .pb-zonas--cera > .pb-zona-grupo:first-child { break-after: column; -webkit-column-break-after: always; } }

/* ---- Sobre nosotras ---- */
.pb-sobre__columnas { gap: clamp(32px, 6vw, 96px) !important; align-items: center !important; }
.pb-sobre__lema { font-size: clamp(36px, 4vw, 54px) !important; margin-top: 28px !important; margin-left: 0 !important; text-align: left; }
.pb-seccion-corta { padding-top: clamp(28px, 4vw, 48px); padding-bottom: clamp(28px, 4vw, 48px); }
.pb-datos--sobre { margin: 0 !important; }
.pb-datos--sobre > p:nth-child(4) { --pb-icono: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 20c-4-2.2-6-5.6-6-9.2C6 7 8.6 4.3 12 3c3.4 1.3 6 4 6 7.8 0 3.6-2 7-6 9.2z'/><path d='M12 20V8'/><path d='M12 13l-3-2.5M12 11l3-2.5'/></svg>"); }
.pb-valores__cabecera { text-align: center; margin-bottom: 40px !important; }
.pb-valores__cabecera > * { margin-left: auto !important; margin-right: auto !important; }
.pb-valores { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.pb-valores > * { margin: 0 !important; }
.pb-valor { background: var(--wp--preset--color--blanco); padding: 32px 28px !important; border-top: 2px solid var(--wp--preset--color--rosa); }
.pb-valor h3 { margin-top: 0 !important; font-style: italic; font-size: 26px !important; }
.pb-valor p { color: var(--wp--preset--color--suave); margin-bottom: 0 !important; }
.pb-foto-alta img { border-radius: 0; }
@media (max-width: 781px) {
	.pb-valores { grid-template-columns: 1fr; }
	.pb-sobre__lema { text-align: center; margin-left: auto !important; }
}
/* Botón de preferencias de cookies */
.pb-boton-preferencias { margin: 28px 0 !important; }

/* Menú desplegable vertical en móviles y tablets (pantallas estrechas o táctiles) */
@media (max-width: 900px), (hover: none) and (pointer: coarse) {
	.pb-menu-principal { display: none !important; }
	.pb-menu-movil { display: flex !important; }
	.pb-cabecera { padding-bottom: 14px !important; }
	.pb-cabecera__logo-fila { padding-bottom: 0; }
	.pb-cabecera__logo-fila .pb-menu-movil { top: 0 !important; bottom: 0 !important; transform: none !important; align-items: center !important; margin: 0 !important; }
}
/* Menú abierto: opciones siempre apiladas en vertical, sin desplazamiento horizontal */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	display: flex !important; flex-direction: column !important; flex-wrap: nowrap !important; align-items: stretch !important; width: 100%; height: auto !important; overflow: visible !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100% !important; flex: 0 0 auto !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { white-space: normal !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 56px !important; }
/* La lista interna del menú no debe heredar la posición del botón (WordPress repite la clase en ella) */
.pb-cabecera__logo-fila .pb-menu-movil .wp-block-navigation__container,
.pb-cabecera__logo-fila ul.pb-menu-movil { position: static !important; top: auto !important; bottom: auto !important; transform: none !important; }
@media (max-height: 520px) {
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 24px !important; min-height: 44px !important; padding: 6px 0 !important; }
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 44px !important; }
}
@media (max-height: 520px) {
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { line-height: 1.2 !important; }
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 52px !important; }
}
@media (max-height: 520px) {
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { box-sizing: border-box !important; min-height: 44px !important; }
}

/* =====================================================================
   Detalles dorados (paleta: dorado #A07D48 para iconos, estrellas y textos
   grandes; dorado claro #C9A66B solo para líneas y adornos decorativos)
   ===================================================================== */
:root { --pb-oro: var(--wp--preset--color--dorado); --pb-oro-claro: var(--wp--preset--color--dorado-claro); }
::selection { background: rgba(201, 166, 107, .35); color: var(--wp--preset--color--texto); }

/* Cabecera y pie: filetes dorados */
.pb-cabecera { border-bottom-color: var(--pb-oro-claro) !important; }
.pb-menu-principal { border-top-color: var(--pb-oro-claro) !important; }
.pb-menu-principal .current-menu-item > .wp-block-navigation-item__content,
.pb-menu-principal .wp-block-navigation-item__content:hover { text-decoration-color: var(--pb-oro) !important; text-decoration-thickness: 1px; }
.pb-pie { border-top: 1px solid var(--pb-oro-claro) !important; }
.pb-pie__legal { border-top-color: var(--pb-oro-claro) !important; }

/* Rótulos pequeños con un trazo dorado delante */
.pb-eyebrow::before { content: ""; display: inline-block; width: 26px; height: 1px; background: var(--pb-oro); vertical-align: middle; margin-right: 12px; }
.pb-cabecera-pagina .pb-migas::before, .pb-lema__antes::before { content: none; }

/* Títulos de sección: filete dorado bajo el título */
main h2.wp-block-heading:not(.pb-manuscrita):not(.pb-titular):not(.pb-pestana__titulo):not(.pb-frase)::after {
	content: ""; display: block; width: 48px; height: 1px; background: var(--pb-oro); margin-top: 18px;
}
.pb-grupo-trat__cabecera h2::after, .pb-valores__cabecera h2::after, .pb-centrado-titulo::after, .pb-cta h2::after,
.pb-precios-zonas .pb-grupo-trat__titulo::after { margin-left: auto !important; margin-right: auto !important; }
.pb-legal h2::after { width: 32px !important; margin-top: 12px !important; }
/* Títulos de página y lemas manuscritos: adorno dorado centrado */
.pb-titulo-pagina::after, .pb-lema .pb-manuscrita::after, .pb-cita .pb-manuscrita::after, .pb-carrusel--marcas .pb-manuscrita::after {
	content: "◆"; display: block; font-family: var(--wp--preset--font-family--jost); font-size: 9px; line-height: 1; letter-spacing: 0;
	color: var(--pb-oro); margin-top: 18px; text-align: center;
	background: linear-gradient(var(--pb-oro-claro), var(--pb-oro-claro)) left center / calc(50% - 14px) 1px no-repeat,
	            linear-gradient(var(--pb-oro-claro), var(--pb-oro-claro)) right center / calc(50% - 14px) 1px no-repeat;
	width: 120px; margin-left: auto; margin-right: auto;
}
.pb-sobre__lema::after { content: none !important; }

/* Botón principal: círculo de la flecha en dorado */
.wp-block-button:not(.is-style-outline) .wp-block-button__link::after { background: var(--pb-oro) !important; color: #FFFFFF !important; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover::after { background: var(--wp--preset--color--rosa-oscuro) !important; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { color: var(--pb-oro) !important; }

/* Iconos y estrellas en dorado */
.pb-datos > p::before { background-color: var(--pb-oro) !important; }
.pb-estrellas, .pb-resena__estrellas { color: var(--pb-oro) !important; }
.pb-datos { border-top-color: var(--pb-oro-claro) !important; border-bottom-color: var(--pb-oro-claro) !important; }

/* Franja en movimiento: palabras en cursiva doradas (texto grande) */
.pb-marquesina { border-color: var(--pb-oro-claro) !important; }
.pb-marquesina p em { color: var(--pb-oro) !important; }

/* Índice de tratamientos */
.pb-indice__lista { border-top-color: var(--pb-oro-claro) !important; }
.pb-indice__fila.is-activa .pb-indice__flecha, .pb-indice__fila:hover .pb-indice__flecha { color: var(--pb-oro) !important; }

/* Tarjetas de tratamiento */
.pb-tarjeta-trat:hover .pb-foto-cuadrada { box-shadow: 0 0 0 1px var(--pb-oro-claro); }
.pb-tarjeta-trat__ver { border-color: var(--pb-oro-claro) !important; }
.pb-tarjeta-trat:hover .pb-tarjeta-trat__ver { border-color: var(--wp--preset--color--texto) !important; }
.pb-tarjeta-trat__precio::before { content: ""; display: block; width: 22px; height: 1px; background: var(--pb-oro); margin: 0 auto 8px; }

/* Ficha de tratamiento */
.pb-ficha__datos { border-top: 3px solid var(--pb-oro-claro); }
.pb-ficha__fila { border-bottom-color: rgba(201, 166, 107, .45) !important; }
.pb-pestanas__boton[aria-selected="true"] { border-bottom-color: var(--pb-oro) !important; }
.pb-pestanas__lista { border-bottom-color: var(--pb-oro-claro) !important; }
.pb-pestanas { border-top: 2px solid var(--pb-oro-claro); }
.wp-block-details summary::after { color: var(--pb-oro); }

/* Precios: bonos y zonas */
.pb-tarifa--bono { border-color: var(--pb-oro-claro) !important; }
.pb-tarifa--bono .pb-tarifa__detalle { border-top-color: var(--pb-oro-claro) !important; }
.pb-tarifa--bono .pb-tarifa__tipo::before { color: var(--pb-oro) !important; }
.pb-zona-grupo { border-top: 2px solid var(--pb-oro-claro) !important; }
.pb-zona-grupo__titulo { border-bottom-color: var(--pb-oro-claro) !important; }

/* Bloques y tarjetas varias */
.pb-valor { border-top-color: var(--pb-oro) !important; }
.pb-nota-caja { border-top: 2px solid var(--pb-oro-claro); }
.pb-resena-tarjeta { border-top: 2px solid var(--pb-oro-claro) !important; }
.pb-resena__inicial { box-shadow: inset 0 0 0 1px var(--pb-oro-claro); }
.pb-google { border-color: var(--pb-oro-claro) !important; }
.pb-destacado { border-left: 3px solid var(--pb-oro-claro); }
.pb-banda { border-top: 1px solid var(--pb-oro-claro); border-bottom: 1px solid var(--pb-oro-claro); }
.pb-flechas button { border-color: var(--pb-oro-claro) !important; }
.pb-foto-arco img { box-shadow: 0 0 0 1px var(--pb-oro-claro), 0 0 0 9px var(--wp--preset--color--fondo), 0 0 0 10px var(--pb-oro-claro); }
.pb-blanco .pb-foto-arco img { box-shadow: 0 0 0 1px var(--pb-oro-claro), 0 0 0 9px #FFFFFF, 0 0 0 10px var(--pb-oro-claro); }
.pb-flotante__whatsapp { box-shadow: 0 10px 30px rgba(43, 34, 32, 0.14), inset 0 0 0 1px rgba(201, 166, 107, .6) !important; }
ul.pb-menu, .pb-menu .wp-block-navigation__container { border: 0 !important; padding: 0 !important; }

/* ---- Fondo de mármol con vetas doradas (opacidad baja) ----
   Cabeceras de página, lema de la portada y bloque «Pide cita». */
.pb-cabecera-pagina, .pb-lema, .pb-cita { position: relative; isolation: isolate; }
.pb-cabecera-pagina::before, .pb-lema::before, .pb-cita::before {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: url("../img/marmol.webp") center / cover no-repeat;
	opacity: .55;
}
.pb-lema::before, .pb-cita::before { opacity: .45; }

/* ---- Movimiento en espiral de los títulos al pasar el cursor (solo ordenador) ---- */
@keyframes pb-espiral {
	0% { transform: none; }
	4.17% { transform: translate(0.36px, 0.21px) rotate(0.16deg); }
	8.33% { transform: translate(0.41px, 0.72px) rotate(0.30deg); }
	12.5% { transform: translate(0.00px, 1.22px) rotate(0.42deg); }
	16.67% { transform: translate(-0.80px, 1.39px) rotate(0.52deg); }
	20.83% { transform: translate(-1.69px, 0.97px) rotate(0.58deg); }
	25.0% { transform: translate(-2.26px, 0.00px) rotate(0.60deg); }
	29.17% { transform: translate(-2.20px, -1.27px) rotate(0.58deg); }
	33.33% { transform: translate(-1.39px, -2.40px) rotate(0.52deg); }
	37.5% { transform: translate(-0.00px, -2.96px) rotate(0.42deg); }
	41.67% { transform: translate(1.55px, -2.68px) rotate(0.30deg); }
	45.83% { transform: translate(2.75px, -1.59px) rotate(0.16deg); }
	50.0% { transform: translate(3.20px, -0.00px) rotate(0.00deg); }
	54.17% { transform: translate(2.75px, 1.59px) rotate(-0.16deg); }
	58.33% { transform: translate(1.55px, 2.68px) rotate(-0.30deg); }
	62.5% { transform: translate(0.00px, 2.96px) rotate(-0.42deg); }
	66.67% { transform: translate(-1.39px, 2.40px) rotate(-0.52deg); }
	70.83% { transform: translate(-2.20px, 1.27px) rotate(-0.58deg); }
	75.0% { transform: translate(-2.26px, 0.00px) rotate(-0.60deg); }
	79.17% { transform: translate(-1.69px, -0.97px) rotate(-0.58deg); }
	83.33% { transform: translate(-0.80px, -1.39px) rotate(-0.52deg); }
	87.5% { transform: translate(-0.00px, -1.22px) rotate(-0.42deg); }
	91.67% { transform: translate(0.41px, -0.72px) rotate(-0.30deg); }
	95.83% { transform: translate(0.36px, -0.21px) rotate(-0.16deg); }
	100% { transform: none; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	main :is(h1, h2, h3).wp-block-heading:not(.pb-pestana__titulo):not(.pb-grupo-trat__titulo + *),
	.pb-pie__lema { transform-origin: center; will-change: auto; }
	main :is(h1, h2, h3).wp-block-heading:hover:not(.pb-tarjeta-trat h3):not(.pb-tarjeta h3):not(.pb-indice__fila h3):not(.pb-categoria h3):not(.pb-pestana__titulo) {
		animation: pb-espiral .9s cubic-bezier(.45, .05, .35, 1) both;
	}
}

/* ---- Marcas en movimiento continuo (móviles y tablets) ---- */
.pb-marcas--auto .pb-flechas { display: none !important; }
.pb-marcas--auto .pb-marcas__pista {
	overflow: hidden !important; scroll-snap-type: none !important; margin-right: 0 !important; padding-right: 0 !important; gap: 0 !important;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}
.pb-marcas--auto .pb-marcas__cinta { display: flex; width: max-content; margin: 0 !important; animation: pb-desliza 24s linear infinite; }
.pb-marcas--auto .pb-marcas__cinta > * { flex: 0 0 150px !important; margin: 0 36px 0 0 !important; }
.pb-marcas--auto .pb-marcas__pista:active .pb-marcas__cinta,
.pb-marcas--auto .pb-marcas__pista:hover .pb-marcas__cinta { animation-play-state: paused; }
@media (min-width: 600px) { .pb-marcas--auto .pb-marcas__cinta > * { flex-basis: 170px !important; margin-right: 52px !important; } }
.pb-cta__texto { color: var(--wp--preset--color--suave); max-width: 520px; margin: -12px auto 28px !important; text-align: center; }
/* Barra de contacto: «Reservar cita» (agenda online) como principal, WhatsApp como alternativa */
.pb-flotante__tel { display: none !important; }
@media (min-width: 782px) { .pb-flotante__wa { display: inline-flex !important; } }
.pb-cta__antes { text-align: center; margin-bottom: 14px !important; }
.pb-cita__alternativas { margin-top: 18px !important; gap: 8px 28px !important; }
.pb-cita__alternativas .wp-block-button__link { font-size: 11px !important; }
.pb-flotante a { white-space: nowrap; }
@media (max-width: 781px) { .pb-flotante a { letter-spacing: .12em; padding: 0 12px; font-size: 11.5px; gap: 6px; } }
/* Mensajes de introducción */
.pb-indice__texto { color: var(--wp--preset--color--suave); max-width: 460px; margin-top: 18px !important; }
.pb-mensaje { text-align: center; max-width: 720px; margin: 0 auto clamp(56px, 7vw, 96px) !important; }
.pb-mensaje > * { margin-left: auto !important; margin-right: auto !important; }
.pb-mensaje .pb-eyebrow { margin-bottom: 14px !important; }
.pb-mensaje h2 { font-size: clamp(38px, 5vw, 64px) !important; }
.pb-mensaje h2::after { margin-left: auto !important; margin-right: auto !important; }
.pb-mensaje__texto { color: var(--wp--preset--color--suave); max-width: 560px; margin-top: 20px !important; }

/* ---- Valoración de Google destacada ---- */
.pb-valoracion-google {
	display: flex !important; align-items: center; gap: 22px; margin: 0 !important;
	background: var(--wp--preset--color--blanco); border: 1px solid var(--pb-oro-claro); border-radius: 22px;
	padding: 20px 30px !important; box-shadow: 0 14px 40px rgba(160, 125, 72, .14);
}
.pb-valoracion-google > *, .pb-vg__detalle > * { margin: 0 !important; }
.pb-vg__nota { font-family: var(--wp--preset--font-family--cormorant); font-weight: 500; font-size: clamp(56px, 6vw, 76px); line-height: .9; color: var(--wp--preset--color--texto); padding-right: 22px; border-right: 1px solid var(--pb-oro-claro); }
.pb-vg__detalle { display: flex !important; flex-direction: column; gap: 4px; }
.pb-vg__estrellas { color: var(--pb-oro); font-size: 24px; letter-spacing: .12em; line-height: 1; }
.pb-vg__texto { font-size: 17px; color: var(--wp--preset--color--texto); }
.pb-vg__texto strong { font-weight: 500; }
.pb-vg__enlace a { font-size: 11px; letter-spacing: .22em; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid currentColor; padding: 8px 0 2px; display: inline-block; color: var(--wp--preset--color--rosa-oscuro); }
@media (max-width: 781px) {
	.pb-carrusel--resenas .pb-carrusel__cabecera { flex-direction: column; align-items: stretch !important; }
	.pb-valoracion-google { justify-content: center; padding: 18px 20px !important; }
}

/* ---- Reseñas en movimiento continuo de izquierda a derecha ---- */
@keyframes pb-desliza-derecha { from { transform: translateX(-50%); } to { transform: translateX(0); } }
.pb-resenas--auto .pb-flechas { display: none !important; }
.pb-resenas--auto .pb-resenas__pista {
	overflow: hidden !important; scroll-snap-type: none !important; gap: 0 !important; margin-right: 0 !important; padding-right: 0 !important;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.pb-resenas--auto .pb-resenas__cinta { display: flex; align-items: stretch; width: max-content; animation: pb-desliza-derecha 60s linear infinite; }
.pb-resenas--auto .pb-resenas__cinta > * { flex: 0 0 300px !important; margin: 0 22px 0 0 !important; }
.pb-resenas--auto .pb-resenas__pista:hover .pb-resenas__cinta,
.pb-resenas--auto .pb-resenas__pista:active .pb-resenas__cinta,
.pb-resenas--auto .pb-resenas__pista:focus-within .pb-resenas__cinta,
.pb-resenas--pausa .pb-resenas__cinta { animation-play-state: paused !important; }
@media (max-width: 781px) { .pb-resenas--auto .pb-resenas__cinta > * { flex-basis: 78vw !important; margin-right: 14px !important; } }
/* Tarjetas de reseña: el rótulo «Reseña de Google» siempre al pie de la tarjeta */
.pb-resena-tarjeta { display: flex !important; flex-direction: column; }
.pb-resena-tarjeta > :last-child { margin-top: auto !important; padding-top: 16px; }
@media (min-width: 1100px) { .pb-marcas--auto .pb-marcas__cinta > * { flex-basis: 200px !important; margin-right: 80px !important; } }

/* ---- Botones de WhatsApp con el mismo contorno que «Reservar cita online» ---- */
.wp-block-button.is-style-outline .wp-block-button__link[href*="wa.me"] {
	border: 1px solid var(--wp--preset--color--texto) !important; border-radius: 999px !important;
	padding: 10px 28px !important; min-height: 56px; box-sizing: border-box; align-items: center; gap: 12px;
	text-decoration: none !important; background: transparent;
	transition: background-color .3s, color .3s, border-color .3s;
}
.wp-block-button.is-style-outline .wp-block-button__link[href*="wa.me"]::before {
	content: ""; width: 18px; height: 18px; flex: 0 0 18px; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12a8.5 8.5 0 0 1-12.6 7.4L3 21l1.6-5.2A8.5 8.5 0 1 1 21 12z'/></svg>") no-repeat center / contain; mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12a8.5 8.5 0 0 1-12.6 7.4L3 21l1.6-5.2A8.5 8.5 0 1 1 21 12z'/></svg>") no-repeat center / contain;
}
.wp-block-button.is-style-outline .wp-block-button__link[href*="wa.me"]::after { content: none !important; }
.wp-block-button.is-style-outline .wp-block-button__link[href*="wa.me"]:hover {
	background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo) !important; border-color: var(--wp--preset--color--texto) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link[href*="wa.me"]:focus-visible { outline: 2px solid var(--pb-oro); outline-offset: 3px; }


/* ---- Botones de contacto con el mismo contorno (Llamar y Cómo llegar, como WhatsApp) ---- */
.wp-block-button.is-style-outline .wp-block-button__link:is([href^="tel:"], [href*="google.com/maps"]) {
	border: 1px solid var(--wp--preset--color--texto) !important; border-radius: 999px !important;
	padding: 10px 28px !important; min-height: 56px; box-sizing: border-box; align-items: center; justify-content: center; gap: 12px;
	text-decoration: none !important; background: transparent; transition: background-color .3s, color .3s, border-color .3s;
}
.wp-block-button.is-style-outline .wp-block-button__link:is([href^="tel:"], [href*="google.com/maps"])::before {
	content: ""; width: 18px; height: 18px; flex: 0 0 18px; background: currentColor;
	-webkit-mask: var(--pb-icono-boton) no-repeat center / contain; mask: var(--pb-icono-boton) no-repeat center / contain;
}
.wp-block-button.is-style-outline .wp-block-button__link[href^="tel:"] { --pb-icono-boton: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M5 3.5h3.2l1.6 4-2 1.3a11 11 0 0 0 5.4 5.4l1.3-2 4 1.6V17a2 2 0 0 1-2 2A15.5 15.5 0 0 1 3 5.5a2 2 0 0 1 2-2z'/></svg>"); }
.wp-block-button.is-style-outline .wp-block-button__link[href*="google.com/maps"] { --pb-icono-boton: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21.5s-7-6.1-7-11.4a7 7 0 0 1 14 0c0 5.3-7 11.4-7 11.4z'/><circle cx='12' cy='10' r='2.6'/></svg>"); }
.wp-block-button.is-style-outline .wp-block-button__link:is([href^="tel:"], [href*="google.com/maps"])::after { content: none !important; }
.wp-block-button.is-style-outline .wp-block-button__link:is([href^="tel:"], [href*="google.com/maps"]):hover {
	background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo) !important; border-color: var(--wp--preset--color--texto) !important;
}

/* ---- Bloques de reserva: botones centrados, uno debajo de otro, de mayor a menor ---- */
:is(.pb-cta, .pb-cita) .wp-block-buttons {
	display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important;
	gap: 14px !important; margin-left: auto !important; margin-right: auto !important; width: 100%;
}
:is(.pb-cta, .pb-cita) .wp-block-buttons + .wp-block-buttons { margin-top: 14px !important; }
:is(.pb-cta, .pb-cita) .wp-block-buttons .wp-block-button { margin: 0 !important; }
:is(.pb-cta, .pb-cita) .wp-block-button__link { width: 100%; justify-content: center !important; box-sizing: border-box; white-space: nowrap; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="kliniqa"]) { width: min(400px, 100%); }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="wa.me"]) { width: min(350px, 90%); order: 1; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="google.com/maps"]) { width: min(290px, 78%); order: 2; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href^="tel:"]) { width: min(230px, 64%); order: 3; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="kliniqa"]) .wp-block-button__link { justify-content: space-between !important; }
@media (max-width: 420px) {
	:is(.pb-cta, .pb-cita) .wp-block-button__link { letter-spacing: .16em !important; padding-left: 20px !important; padding-right: 20px !important; }
}
/* Protección: un precio o nombre largo nunca debe ensanchar la página */
.pb-tarifa { min-width: 0; }
.pb-tarifa > * { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 781px) { .pb-tarifa__precio { white-space: normal; } }
/* Título de la portada («Centro de estética avanzada en Elda»): siempre en tres líneas */
.pb-titular { font-size: clamp(44px, 6.8vw, 100px) !important; }
@media (max-width: 781px) { .pb-titular { font-size: clamp(36px, 11.8vw, 52px) !important; } }


/* ---- Página «Carta de precios» (bloque HTML con clases propias pbc-) ---- */
.pb-carta-pagina { margin-top: 0 !important; margin-bottom: 0 !important; padding: 0 !important; }
.pb-carta-pagina .pbc-precios { scroll-margin-top: 20px; }
.pbc-precios [id] { scroll-margin-top: 24px; }

/* ---- Contacto: parkings de pago cercanos ---- */
.pb-parking__titulo { font-size: clamp(24px, 2.4vw, 30px) !important; margin-top: 34px !important; }
.pb-parkings { display: grid !important; gap: 14px; margin-top: 16px !important; }
.pb-parkings > * { margin: 0 !important; }
.pb-parking { background: var(--wp--preset--color--blanco); border-top: 2px solid var(--pb-oro-claro); padding: 18px 20px !important; }
.pb-parking > * { margin: 0 !important; }
.pb-parking__nombre { font-family: var(--wp--preset--font-family--cormorant); font-size: 22px; line-height: 1.2; }
.pb-parking__nombre strong { font-weight: 500; }
.pb-parking__datos { margin-top: 4px !important; font-size: 13px; letter-spacing: .04em; color: var(--wp--preset--color--rosa-oscuro); }
.pb-parking__texto { margin-top: 8px !important; font-size: 15px; color: var(--wp--preset--color--suave); }
.pb-parking__ruta { margin-top: 10px !important; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }
.pb-parking__ruta a { color: var(--wp--preset--color--texto); text-decoration: none; border-bottom: 1px solid var(--pb-oro); padding: 10px 0 3px; display: inline-block; }

/* Títulos de las tarjetas de contacto: nivel 2 por accesibilidad, con el aspecto de antes */
main h2.pb-contacto__titulo { font-size: 11px !important; line-height: 11.55px !important; font-weight: 400 !important; font-style: normal; margin-top: 0px !important; margin-bottom: 0px !important; }
main h2.pb-contacto__titulo::after { content: none !important; }
.pb-tarjeta-contacto h2.pb-contacto__titulo { margin-top: 0 !important; font-size: 11px !important; font-family: var(--wp--preset--font-family--jost); letter-spacing: 0.26em; text-transform: uppercase; color: var(--wp--preset--color--suave); font-weight: 400 !important; }

/* ---- Portada en móvil: la foto aparece tras el título y la presentación, antes de los datos y los botones ---- */
@media (max-width: 781px) {
	.pb-hero .wp-block-columns { display: flex !important; flex-direction: column !important; gap: 0 !important; }
	.pb-hero .wp-block-columns > .wp-block-column:first-child { display: contents; }
	.pb-hero .pb-eyebrow { order: 1; }
	.pb-hero .pb-titular { order: 2; }
	.pb-hero .pb-entradilla { order: 3; }
	.pb-hero .wp-block-columns > .wp-block-column:last-child { order: 4; margin: 26px 0 34px !important; }
	.pb-hero .pb-datos { order: 5; margin-top: 0 !important; }
	.pb-hero .wp-block-columns > .wp-block-column:first-child > .wp-block-buttons { order: 6; margin-top: 28px !important; }
}

/* ---- Mapa de contacto: se carga solo cuando la visitante lo pide (cookies de Google) ---- */
.pb-mapa--diferido { position: relative; isolation: isolate; min-height: 380px; display: flex; align-items: center; justify-content: center; text-align: center; overflow: hidden; background: var(--wp--preset--color--panel); }
.pb-mapa--diferido::before { content: ""; position: absolute; inset: 0; z-index: -1; background: url("../img/marmol.webp") center / cover no-repeat; opacity: .6; }
.pb-mapa__aviso { padding: 32px 24px; max-width: 420px; }
.pb-mapa__aviso p { margin: 0; }
.pb-mapa__pin { display: block; width: 44px; height: 44px; margin: 0 auto 14px; background: var(--pb-oro); -webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21.5s-7-6.1-7-11.4a7 7 0 0 1 14 0c0 5.3-7 11.4-7 11.4z'/><circle cx='12' cy='10' r='2.6'/></svg>") no-repeat center / contain; mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21.5s-7-6.1-7-11.4a7 7 0 0 1 14 0c0 5.3-7 11.4-7 11.4z'/><circle cx='12' cy='10' r='2.6'/></svg>") no-repeat center / contain; }
.pb-mapa__direccion { font-family: var(--wp--preset--font-family--cormorant); font-size: 24px; line-height: 1.3; color: var(--wp--preset--color--texto); }
.pb-mapa__botones { display: flex; flex-wrap: wrap; gap: 12px 22px; justify-content: center; align-items: center; margin-top: 20px !important; }
.pb-mapa__cargar { font: inherit; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--wp--preset--color--texto); background: transparent;
	border: 1px solid var(--wp--preset--color--texto); border-radius: 999px; padding: 0 26px; min-height: 52px; cursor: pointer; transition: background-color .3s, color .3s; }
.pb-mapa__cargar:hover { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo); }
.pb-mapa__cargar:focus-visible, .pb-mapa__abrir:focus-visible { outline: 2px solid var(--pb-oro); outline-offset: 3px; }
.pb-mapa__abrir { font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--wp--preset--color--texto); text-decoration: none; border-bottom: 1px solid var(--pb-oro); padding: 12px 0 3px; }
.pb-mapa__nota { margin-top: 18px !important; font-size: 12px; line-height: 1.5; color: var(--wp--preset--color--suave); }
.pb-mapa__nota a { color: inherit; }
.pb-mapa--diferido iframe { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 380px; border: 0; filter: grayscale(.35); }

/* ---- Galerías de fotos en movimiento continuo ---- */
.pb-auto .pb-flechas { display: none !important; }
.pb-auto .pb-carrusel__pista {
	overflow: hidden !important; scroll-snap-type: none !important; gap: 0 !important; margin-right: 0 !important; padding-right: 0 !important;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.pb-auto__cinta { display: flex; align-items: stretch; width: max-content; animation: pb-desliza 60s linear infinite; }
.pb-auto--derecha .pb-auto__cinta { animation-name: pb-desliza-derecha; }
.pb-auto__cinta > * { flex: 0 0 clamp(240px, 30vw, 420px) !important; margin: 0 18px 0 0 !important; }
.pb-carrusel--reels.pb-auto .pb-auto__cinta > * { flex-basis: clamp(170px, 19vw, 260px) !important; }
.pb-auto .pb-carrusel__pista:hover .pb-auto__cinta,
.pb-auto .pb-carrusel__pista:active .pb-auto__cinta,
.pb-auto .pb-carrusel__pista:focus-within .pb-auto__cinta { animation-play-state: paused; }
@media (max-width: 781px) {
	.pb-auto__cinta > * { flex-basis: 74vw !important; margin-right: 12px !important; }
	.pb-carrusel--reels.pb-auto .pb-auto__cinta > * { flex-basis: 46vw !important; }
}

/* Bloques de reserva: nuevo orden de mayor a menor (Llamar con número, WhatsApp, Cómo llegar) */
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href^="tel:"]) { width: min(350px, 90%); order: 1; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="wa.me"]) { width: min(290px, 78%); order: 2; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="google.com/maps"]) { width: min(240px, 66%); order: 3; }

/* Parkings: icono «P» de aparcamiento */
.pb-parking__titulo { display: flex; align-items: center; gap: 12px; }
.pb-parking__titulo::before, .pb-parking__nombre::before {
	content: "P"; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--wp--preset--font-family--jost); font-weight: 500; font-style: normal; line-height: 1; color: #FFFFFF;
	background: var(--wp--preset--color--rosa-oscuro); border-radius: 7px; box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .85), 0 0 0 1px var(--wp--preset--color--rosa-oscuro);
}
.pb-parking__titulo::before { width: 38px; height: 38px; font-size: 24px; }
.pb-parking__nombre { display: flex; align-items: center; gap: 10px; }
.pb-parking__nombre::before { width: 28px; height: 28px; font-size: 17px; border-radius: 6px; }

/* Mapa: «Abrir en Google Maps» con contorno, como «Ver el mapa» */
.pb-mapa__abrir {
	display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 26px !important; box-sizing: border-box;
	border: 1px solid var(--wp--preset--color--texto) !important; border-radius: 999px; transition: background-color .3s, color .3s;
	font-size: 12px; letter-spacing: .2em;
}
.pb-mapa__abrir:hover { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo) !important; }

/* Instagram: frase para animar a seguir la cuenta */
.pb-instagram__frase { max-width: 560px; margin-top: 16px !important; font-size: 16px; line-height: 1.65; color: var(--wp--preset--color--suave); }
.pb-instagram__frase em { display: block; margin-bottom: 4px; font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(22px, 2.2vw, 27px); line-height: 1.3; color: var(--wp--preset--color--rosa); }
.pb-instagram__frase em { color: var(--wp--preset--color--rosa-oscuro); }

/* ==========================================================================
   Asistente de tratamientos y precios (portada)
   ========================================================================== */
.pb-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.pb-asistente-seccion > * { max-width: 760px !important; }
.pb-asistente-intro { color: var(--wp--preset--color--suave); font-size: 16px; }
.pb-asistente {
	margin-top: 28px !important; background: var(--wp--preset--color--blanco); border-top: 2px solid var(--pb-oro-claro);
	box-shadow: 0 18px 50px rgba(43, 34, 32, .08); padding: 18px clamp(14px, 3vw, 28px) 20px;
}
.pb-asistente__log { max-height: min(460px, 62vh); overflow-y: auto; display: flex; flex-direction: column; gap: 12px; padding: 6px 2px 10px; scroll-behavior: smooth; overscroll-behavior: contain; }
.pb-asistente__msg { max-width: 92%; padding: 14px 16px; border-radius: 16px; font-size: 15px; line-height: 1.6; }
.pb-asistente__msg p { margin: 0; }
.pb-asistente__msg p + p { margin-top: 8px; }
.pb-asistente__msg--bot { align-self: flex-start; background: var(--wp--preset--color--fondo); color: var(--wp--preset--color--texto); border-top-left-radius: 4px; }
.pb-asistente__msg--yo { align-self: flex-end; background: var(--wp--preset--color--rosa-oscuro); color: #FFFFFF; border-top-right-radius: 4px; }
.pb-asistente__msg--escribiendo { padding: 16px 20px; }
.pb-asistente__puntos { display: inline-block; width: 34px; height: 8px; background: radial-gradient(circle, var(--pb-oro) 3px, transparent 3.5px) 0 0 / 11px 8px repeat-x; animation: pb-puntos 1s steps(3) infinite; }
@keyframes pb-puntos { from { width: 11px; } to { width: 34px; } }
.pb-asistente__trat { margin-top: 10px; background: var(--wp--preset--color--blanco); border-left: 2px solid var(--pb-oro-claro); padding: 10px 14px; border-radius: 0 10px 10px 0; }
.pb-asistente__trat-nombre { font-family: var(--wp--preset--font-family--cormorant); font-size: 20px; line-height: 1.25; }
.pb-asistente__trat-nombre a { color: var(--wp--preset--color--texto); text-decoration: underline; text-decoration-color: var(--pb-oro-claro); text-underline-offset: 3px; }
.pb-asistente__trat-datos { margin-top: 2px !important; font-size: 13px; letter-spacing: .04em; color: var(--wp--preset--color--rosa-oscuro); }
.pb-asistente__trat-desc { margin-top: 6px !important; font-size: 14px; color: var(--wp--preset--color--suave); }
.pb-asistente__bonos, .pb-asistente__zonas { list-style: none; margin: 8px 0 0; padding: 0; font-size: 14px; }
.pb-asistente__bonos li { padding: 3px 0; color: var(--wp--preset--color--suave); }
.pb-asistente__zonas li { display: flex; justify-content: space-between; gap: 14px; padding: 6px 0; border-bottom: 1px dotted var(--pb-oro-claro); }
.pb-asistente__zona-p { white-space: nowrap; color: var(--wp--preset--color--rosa-oscuro); font-weight: 500; }
.pb-asistente__acciones { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.pb-asistente__accion {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; box-sizing: border-box;
	border: 1px solid var(--wp--preset--color--texto); color: var(--wp--preset--color--texto) !important; background: var(--wp--preset--color--blanco);
	font-size: 11px; letter-spacing: .16em; text-transform: uppercase; text-decoration: none !important; transition: background-color .25s, color .25s;
}
.pb-asistente__accion:hover { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo) !important; }
.pb-asistente__accion--principal { background: var(--wp--preset--color--rosa-oscuro); border-color: var(--wp--preset--color--rosa-oscuro); color: #FFFFFF !important; }
.pb-asistente__sugerencias { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 12px; }
.pb-asistente__sugerencias:empty { display: none; }
.pb-asistente__chip {
	font: inherit; font-size: 13px; line-height: 1.3; padding: 9px 14px; min-height: 40px; border-radius: 999px; cursor: pointer;
	background: var(--wp--preset--color--fondo); color: var(--wp--preset--color--texto); border: 1px solid var(--pb-oro-claro); transition: background-color .25s;
}
.pb-asistente__chip:hover { background: var(--wp--preset--color--panel); }
.pb-asistente__form { display: flex; gap: 8px; align-items: stretch; }
.pb-asistente__campo {
	flex: 1 1 auto; min-width: 0; min-height: 52px; padding: 0 20px; border-radius: 999px; border: 1px solid var(--wp--preset--color--suave);
	font: inherit; font-size: 16px; color: var(--wp--preset--color--texto); background: var(--wp--preset--color--blanco);
}
.pb-asistente__campo::placeholder { color: var(--wp--preset--color--suave); opacity: 1; }
.pb-asistente__enviar {
	flex: 0 0 auto; min-height: 52px; padding: 0 24px; border-radius: 999px; border: 0; cursor: pointer;
	background: var(--wp--preset--color--rosa-oscuro); color: #FFFFFF; font: inherit; font-size: 12px; letter-spacing: .18em; text-transform: uppercase;
}
.pb-asistente__enviar:hover { background: var(--wp--preset--color--texto); }
.pb-asistente__campo:focus-visible, .pb-asistente__enviar:focus-visible, .pb-asistente__chip:focus-visible, .pb-asistente__accion:focus-visible, .pb-asistente a:focus-visible { outline: 2px solid var(--pb-oro); outline-offset: 2px; }
.pb-asistente__nota { margin: 12px 0 0 !important; font-size: 12px; line-height: 1.5; color: var(--wp--preset--color--suave); }
.pb-asistente__nota a { color: inherit; }
.pb-asistente:not(.pb-asistente--activo) .pb-asistente__form,
.pb-asistente:not(.pb-asistente--activo) .pb-asistente__sugerencias { display: none; }
@media (max-width: 520px) {
	.pb-asistente__msg { max-width: 100%; }
	.pb-asistente__enviar { padding: 0 16px; }
}
@media (prefers-reduced-motion: reduce) { .pb-asistente__puntos { animation: none; } .pb-asistente__log { scroll-behavior: auto; } }

/* ---- Sobre nosotras: «Mi historia» y línea del tiempo ---- */
.pb-historia__columnas { gap: clamp(32px, 6vw, 90px) !important; align-items: flex-start !important; }
.pb-historia p:not(.pb-eyebrow):not(.pb-historia__cita):not([class*="pb-hito"]):not(.pb-hitos__titulo) { font-size: 17px; line-height: 1.8; color: var(--wp--preset--color--texto); }
.pb-historia__cita {
	margin-top: 30px !important; padding: 6px 0 6px 22px; border-left: 2px solid var(--pb-oro-claro);
	font-family: var(--wp--preset--font-family--cormorant); font-style: italic; font-size: clamp(22px, 2.3vw, 27px); line-height: 1.4; color: var(--wp--preset--color--rosa-oscuro);
}
.pb-hitos { background: var(--wp--preset--color--blanco); border-top: 2px solid var(--pb-oro-claro); padding: 26px 26px 10px !important; box-shadow: 0 18px 50px rgba(43, 34, 32, .06); }
.pb-hitos > * { margin: 0 !important; }
.pb-hitos__titulo { font-size: 11px; letter-spacing: .26em; text-transform: uppercase; color: var(--wp--preset--color--suave); margin-bottom: 18px !important; }
.pb-hito { position: relative; padding: 0 0 22px 28px !important; }
.pb-hito > * { margin: 0 !important; }
.pb-hito::before { content: ""; position: absolute; left: 4px; top: 7px; width: 9px; height: 9px; border-radius: 50%; background: var(--pb-oro); box-shadow: 0 0 0 4px var(--wp--preset--color--blanco), 0 0 0 5px var(--pb-oro-claro); }
.pb-hito:not(:last-child)::after { content: ""; position: absolute; left: 8px; top: 20px; bottom: 0; width: 1px; background: var(--pb-oro-claro); }
.pb-hito__etiqueta { font-family: var(--wp--preset--font-family--cormorant); font-size: 21px; line-height: 1.25; color: var(--wp--preset--color--texto); }
.pb-hito__texto { margin-top: 3px !important; font-size: 14px; line-height: 1.55; color: var(--wp--preset--color--suave); }
.pb-hito:last-child .pb-hito__etiqueta { color: var(--wp--preset--color--rosa-oscuro); }
@media (min-width: 782px) { .pb-historia__columnas > .wp-block-column:last-child { position: sticky; top: 30px; } }
/* Encuadre de la foto de microblading: centrada en la ceja, no en el recipiente del pigmento */
.pb-ficha__foto img[src*="microblading-1"], .pb-indice img[src*="microblading-1"] { object-position: 74% 55% !important; }
@media (max-width: 781px) { .pb-ficha__foto img[src*="microblading-1"] { object-position: 62% 74% !important; } }
/* Portada · Sobre nosotras: encuadre de la foto del mostrador centrado en Pilar */
.pb-foto-alta img[src*="pilarbautista-113"] { object-position: 24% 50% !important; }
/* Rótulo de la portada en una sola línea en el móvil */
@media (max-width: 781px) { .pb-hero .pb-eyebrow { letter-spacing: .14em !important; font-size: 10.5px !important; } }
@media (max-width: 359px) { .pb-hero .pb-eyebrow { letter-spacing: .1em !important; font-size: 10px !important; } }
/* Láser azul: foto de antes y después dentro de la pestaña, a un tamaño moderado */
.pb-pestana .wp-block-image img[src*="laser-azul-2"] { max-width: min(420px, 100%); height: auto; border-radius: 4px; }
.pb-nota-pie { font-size: 13px; color: var(--wp--preset--color--suave); font-style: italic; }

/* ---- Contacto: foto en arco a la derecha del título ---- */
.pb-panel .pb-foto-arco img { box-shadow: 0 0 0 1px var(--pb-oro-claro), 0 0 0 9px var(--wp--preset--color--panel), 0 0 0 10px var(--pb-oro-claro); }
.pb-contacto-cabecera .pb-foto-arco { max-width: 460px; margin: 0 auto !important; }
@media (max-width: 781px) { .pb-contacto-cabecera { gap: 40px !important; } .pb-contacto-cabecera .pb-foto-arco { max-width: 340px; } }

/* ---- «Reservar cita online»: texto centrado y flecha fija a la derecha ---- */
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="kliniqa"]) .wp-block-button__link { position: relative; justify-content: center !important; padding-left: 58px !important; padding-right: 58px !important; }
:is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="kliniqa"]) .wp-block-button__link::after { position: absolute; right: 9px; top: 50%; margin-top: -17px; }
@media (max-width: 420px) { :is(.pb-cta, .pb-cita) .wp-block-button:has(> a[href*="kliniqa"]) .wp-block-button__link { padding-left: 48px !important; padding-right: 48px !important; } }

/* ---- Contacto: tarjetas con icono, nota y acción ---- */
.pb-contacto-tarjetas { margin-top: clamp(48px, 6vw, 80px) !important; gap: 24px !important; }
.pb-contacto-tarjetas > .wp-block-column { display: flex; }
.pb-contacto-tarjetas .pb-tarjeta-contacto {
	position: relative; display: flex; flex-direction: column; width: 100%; height: auto;
	padding: 36px 30px 30px !important; border-radius: 4px; border-top: 2px solid var(--pb-oro-claro);
	box-shadow: 0 1px 2px rgba(43,34,32,.04), 0 12px 32px -18px rgba(43,34,32,.22);
	transition: transform .35s var(--pb-ease), box-shadow .35s var(--pb-ease);
}
.pb-contacto-tarjetas .pb-tarjeta-contacto:hover { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(43,34,32,.05), 0 22px 40px -20px rgba(43,34,32,.30); }
.pb-contacto-tarjetas .pb-tarjeta-contacto > * { margin: 0 !important; }
.pb-contacto-tarjetas .pb-tarjeta-contacto::before {
	content: ""; display: block; width: 52px; height: 52px; margin-bottom: 22px; border-radius: 50%;
	background: var(--wp--preset--color--panel) var(--pb-icono-img, none) no-repeat center / 24px 24px;
}
.pb-tarjeta-contacto--whatsapp { --pb-icono-img: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A07D48' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20.5 11.6a8.5 8.5 0 0 1-12.4 7.6L3.5 20.5l1.4-4.4A8.5 8.5 0 1 1 20.5 11.6z'/><path d='M9 8.6c.2 2.9 2.6 5.6 6 6.4l1.1-1.3-1.9-1-1 .8a5 5 0 0 1-2.6-2.6l.8-1-1-1.9z'/></svg>"); }
.pb-tarjeta-contacto--telefono { --pb-icono-img: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A07D48' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20.5 16.6v2.6a1.8 1.8 0 0 1-2 1.8A17.6 17.6 0 0 1 3 5.5a1.8 1.8 0 0 1 1.8-2h2.6a1.8 1.8 0 0 1 1.8 1.5c.1.9.3 1.7.6 2.5a1.8 1.8 0 0 1-.4 1.9L8.3 10.5a14.4 14.4 0 0 0 5.2 5.2l1.1-1.1a1.8 1.8 0 0 1 1.9-.4c.8.3 1.6.5 2.5.6a1.8 1.8 0 0 1 1.5 1.8z'/></svg>"); }
.pb-tarjeta-contacto--direccion { --pb-icono-img: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A07D48' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21.5s-7-6.1-7-11.4a7 7 0 0 1 14 0c0 5.3-7 11.4-7 11.4z'/><circle cx='12' cy='10' r='2.6'/></svg>"); }
.pb-tarjeta-contacto--horario { --pb-icono-img: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A07D48' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='8.5'/><path d='M12 7.5V12l3 2'/></svg>"); }
.pb-contacto-tarjetas .pb-contacto__titulo { margin-bottom: 12px !important; color: var(--wp--preset--color--rosa-oscuro) !important; }
.pb-contacto-tarjetas .pb-tarjeta-contacto__dato { font-family: var(--wp--preset--font-family--cormorant) !important; font-size: clamp(22px, 1.9vw, 26px) !important; line-height: 1.3 !important; color: var(--wp--preset--color--texto); }
.pb-contacto-tarjetas .pb-tarjeta-contacto__dato a { color: inherit; text-decoration: none; }
.pb-contacto-tarjetas .pb-tarjeta-contacto__nota { font-family: var(--wp--preset--font-family--jost) !important; font-size: 14px !important; line-height: 1.6 !important; color: var(--wp--preset--color--suave); margin-top: 10px !important; }
.pb-contacto-tarjetas .pb-tarjeta-contacto__accion { margin-top: auto !important; padding-top: 24px; font-family: var(--wp--preset--font-family--jost) !important; font-size: 12px !important; line-height: 1.4 !important; letter-spacing: .22em; text-transform: uppercase; }
.pb-contacto-tarjetas .pb-tarjeta-contacto__accion a { color: var(--wp--preset--color--texto); text-decoration: none; display: inline-flex; align-items: center; gap: 10px; padding-bottom: 6px; border-bottom: 1px solid var(--pb-oro-claro); transition: color .3s, border-color .3s; }
.pb-contacto-tarjetas .pb-tarjeta-contacto__accion a::after { content: "↗"; letter-spacing: 0; color: var(--pb-oro); transition: transform .3s var(--pb-ease); }
.pb-contacto-tarjetas .pb-tarjeta-contacto__accion a:hover { color: var(--wp--preset--color--rosa-oscuro); border-color: var(--wp--preset--color--rosa-oscuro); }
.pb-contacto-tarjetas .pb-tarjeta-contacto__accion a:hover::after { transform: translate(2px, -2px); }
.pb-sin-corte { white-space: nowrap; }
@media (min-width: 782px) and (max-width: 1180px) {
	.pb-contacto-tarjetas { flex-wrap: wrap !important; }
	.pb-contacto-tarjetas > .wp-block-column { flex-basis: calc(50% - 12px) !important; flex-grow: 0 !important; }
}
@media (max-width: 781px) { .pb-contacto-tarjetas .pb-tarjeta-contacto { padding: 30px 24px 26px !important; } }
@media (prefers-reduced-motion: reduce) { .pb-contacto-tarjetas .pb-tarjeta-contacto, .pb-contacto-tarjetas .pb-tarjeta-contacto:hover { transition: none; transform: none; } }

/* ---- Cabecera de página con foto a la derecha (Depilación láser) ---- */
.pb-cabecera-pagina > .pb-cabecera-con-foto { max-width: var(--wp--style--global--wide-size, 1320px) !important; gap: clamp(32px, 5vw, 80px) !important; }
@media (min-width: 782px) {
	.pb-cabecera-con-foto .wp-block-column:first-child { text-align: left; }
	.pb-cabecera-con-foto .wp-block-column:first-child > * { margin-left: 0 !important; margin-right: 0 !important; }
	.pb-cabecera-con-foto .pb-titulo-pagina::after { margin-left: 0 !important; }
	.pb-cabecera-con-foto .pb-centrado-botones { justify-content: flex-start; }
	.pb-cabecera-con-foto .pb-centrado { text-align: left; }
	.pb-cabecera-con-foto .pb-titulo-pagina { max-width: none !important; }
}
.pb-cabecera-con-foto .pb-foto-arco { max-width: 440px; margin: 0 auto !important; }
@media (max-width: 781px) { .pb-cabecera-con-foto { gap: 36px !important; } .pb-cabecera-con-foto .pb-foto-arco { max-width: 320px; } }
