/* NME Tienda · portada C «Cuaderno de laboratorio» llevada a bloques.
   Los tokens (colores, fuentes, tamaños, espacios, sombras) están en theme.json; aquí solo va la composición
   que theme.json no puede expresar: retícula de filetes, cabeceras de sección numeradas, celdas y detalles.
   Las secciones se numeran solas (01, 02…) en el orden en que estén en la página: mover u ocultar una sección
   renumera las demás. */

:root {
	--nme-filete: var(--wp--preset--color--filete);
	--nme-pad: var(--wp--preset--spacing--margen);
	--nme-gcol: 32px;
	--nme-dur: .18s;
	--nme-alto-cab: 68px;
}

/* ===== Base ===== */
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--nme-alto-cab) + 16px); }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa-texto); outline-offset: 3px; border-radius: 3px; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.wp-block-heading { text-wrap: balance; overflow-wrap: break-word; }
a:where(:not(.wp-element-button)) { text-decoration-thickness: 1px; text-underline-offset: 4px; }

/* Rótulos y piezas comunes */
.nme-etq,
.nme-cab .nme-etq {
	font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter);
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--tinta-2);
	font-variant-numeric: tabular-nums;
}
.nme-etq a { color: inherit; text-decoration: none; }
.nme-enlace a,
a.nme-enlace {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--wp--preset--color--azul);
	font-weight: 500;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
	text-decoration-color: var(--wp--preset--color--filete-fuerte);
	transition: text-decoration-color var(--nme-dur);
}
.nme-enlace a:hover, a.nme-enlace:hover { text-decoration-color: var(--wp--preset--color--azul); }
.wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding-block: 0; transition: background-color var(--nme-dur), border-color var(--nme-dur), color var(--nme-dur); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--hueso); border-color: var(--wp--preset--color--azul); color: var(--wp--preset--color--azul); }
.nme-aviso {
	padding-left: 12px;
	border-left: 2px solid var(--wp--preset--color--turquesa);
	font-size: .8125rem;
	line-height: 1.6;
	color: var(--wp--preset--color--tinta-2);
}

/* ===== Cabecera ===== */
.nme-cabecera {
	position: sticky;
	top: 0;
	z-index: 40;
	background: rgba(255, 255, 255, .94);
	-webkit-backdrop-filter: saturate(1.4) blur(10px);
	backdrop-filter: saturate(1.4) blur(10px);
	border-bottom: 1px solid var(--nme-filete);
}
body.admin-bar .nme-cabecera { top: var(--wp-admin--admin-bar--height, 0px); }
.nme-cabecera::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 2px;
	background: var(--wp--preset--color--turquesa);
	transform: scaleX(0);
	transform-origin: 0 50%;
	pointer-events: none;
}
@supports (animation-timeline: scroll()) {
	.nme-cabecera::after { animation: nme-progreso linear both; animation-timeline: scroll(root block); }
}
@keyframes nme-progreso { to { transform: scaleX(1); } }
.nme-cabecera__fila { gap: 4px; min-height: var(--nme-alto-cab); }
.nme-cabecera__fila > * { flex: none; margin: 0; }
.nme-logo { margin: 0 auto 0 0 !important; }
.nme-logo img { display: block; height: 34px !important; width: auto !important; }
.nme-nav { order: 3; }
.nme-buscar { order: 1; }
.nme-cuenta { order: 1; }
.nme-carrito { order: 2; }

/* Iconos: buscar, cuenta y carrito a 44 px */
.nme-cabecera .wp-block-search__button,
.nme-cabecera .wc-block-customer-account a,
.nme-cabecera .wc-block-mini-cart__button {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 10px;
	margin: 0;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: var(--wp--preset--color--tinta);
	transition: background-color var(--nme-dur), color var(--nme-dur);
}
.nme-cabecera .wp-block-search__button:hover,
.nme-cabecera .wc-block-customer-account a:hover,
.nme-cabecera .wc-block-mini-cart__button:hover { background: var(--wp--preset--color--hueso); color: var(--wp--preset--color--azul); }
.nme-cabecera .wp-block-search__button svg,
.nme-cabecera .wc-block-customer-account svg,
.nme-cabecera .wc-block-mini-cart__icon { width: 22px; height: 22px; }
.nme-cabecera .wp-block-search__button svg { fill: currentColor; }
.nme-cabecera .wc-block-mini-cart__badge { background: var(--wp--preset--color--azul); color: #fff; border-color: #fff; }
.nme-buscar.wp-block-search__button-only .wp-block-search__inside-wrapper { border: 0; padding: 0; }
.nme-buscar .wp-block-search__input { border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; min-height: 44px; padding: 0 12px; font-size: 1rem; }
.nme-buscar:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper { position: absolute; right: var(--nme-pad); left: var(--nme-pad); top: calc(100% + 8px); background: #fff; padding: 8px; border: 1px solid var(--nme-filete); border-radius: 6px; box-shadow: var(--wp--preset--shadow--menu); }
.nme-cabecera__fila { position: relative; }

/* Menú principal */
.nme-nav .wp-block-navigation__responsive-container-open {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 44px;
	min-height: 44px;
	padding: 0 12px;
	border: 1px solid var(--wp--preset--color--filete-fuerte);
	border-radius: 4px;
	background: #fff;
	color: var(--wp--preset--color--azul);
	font: 500 .875rem/1 var(--wp--preset--font-family--inter);
}
.nme-nav .wp-block-navigation__responsive-container-open::after { content: "Menú"; }
@media (max-width: 419px) {
	.nme-nav .wp-block-navigation__responsive-container-open { padding: 0; justify-content: center; }
	.nme-nav .wp-block-navigation__responsive-container-open::after { content: none; }
}
.nme-nav .wp-block-navigation-item__content { color: var(--wp--preset--color--tinta); text-decoration: none; }
.nme-nav .wp-block-navigation-item__content:hover,
.nme-nav .wp-block-navigation-submenu__toggle[aria-expanded="true"] { color: var(--wp--preset--color--azul); }
.nme-nav .wp-block-navigation__submenu-icon { color: var(--wp--preset--color--turquesa-texto); }
.nme-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 16px var(--nme-pad) 32px;
	background: #fff;
	color: var(--wp--preset--color--tinta);
}
.nme-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 56px; align-items: stretch; gap: 0; }
.nme-nav .is-menu-open .wp-block-navigation__container { gap: 0; align-items: stretch; width: 100%; }
.nme-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { border-bottom: 1px solid var(--nme-filete); padding-block: 6px; }
.nme-nav .is-menu-open .wp-block-navigation-item__content { min-height: 44px; display: flex; align-items: center; font-size: 1rem; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container { padding: 0 0 8px 12px !important; gap: 0; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: .9375rem; font-weight: 400; }
.nme-nav .wp-block-navigation__responsive-container-close { width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; }
@media (min-width: 1000px) {
	/* En escritorio el menú se ve en línea; por debajo, botón «Menú» y panel */
	.nme-nav { order: 0; margin-left: auto; }
	.nme-nav .wp-block-navigation__responsive-container-open.always-shown { display: none; }
	.nme-nav .wp-block-navigation__responsive-container.hidden-by-default:not(.is-menu-open) { display: block; position: relative; width: 100%; z-index: auto; background-color: inherit; }
	.nme-nav .wp-block-navigation__responsive-container.hidden-by-default:not(.is-menu-open) .wp-block-navigation__responsive-container-close { display: none; }
	.nme-nav .wp-block-navigation__container { gap: 4px; }
	.nme-nav .wp-block-navigation-item__content,
	.nme-nav .wp-block-navigation-submenu__toggle { min-height: 44px; display: flex; align-items: center; }
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { padding: 0 12px; }
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle { padding: 0 4px 0 12px; }
	.nme-nav .wp-block-navigation__submenu-container {
		min-width: 250px !important;
		padding: 8px !important;
		border: 1px solid var(--nme-filete) !important;
		border-radius: 6px;
		box-shadow: var(--wp--preset--shadow--menu);
		background: #fff !important;
		top: calc(100% + 12px) !important;
	}
	.nme-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0 12px; border-radius: 4px; font-size: .9375rem; font-weight: 400; }
	.nme-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--hueso); }
	.nme-buscar, .nme-cuenta, .nme-carrito { order: 1; }
	.nme-cabecera__fila { gap: 24px; }
	.nme-logo img { height: 40px !important; }
	.nme-cabecera__fila > .nme-cuenta, .nme-cabecera__fila > .nme-carrito { margin-left: -24px; }
}

/* ===== Secciones numeradas ===== */
.nme-portada { counter-reset: nme-sec; }
.nme-portada > * { margin-block: 0; }
.nme-sec { padding-block: var(--wp--preset--spacing--seccion); counter-increment: nme-sec; }
.nme-sec > * { margin-block: 0; }
.nme-sec > * + * { margin-top: 0; }
.nme-cab {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: baseline;
	gap: 16px;
	margin-bottom: clamp(32px, 4vw, 56px) !important;
	padding-top: 24px;
	border-top: 1px solid var(--nme-filete);
}
.nme-cab::after { content: ""; position: absolute; top: -2px; left: 0; width: 40px; height: 3px; background: var(--wp--preset--color--turquesa); }
.nme-cab::before,
.nme-num {
	font: 600 .8125rem/1 var(--wp--preset--font-family--inter);
	letter-spacing: .06em;
	color: var(--wp--preset--color--turquesa-texto);
	font-variant-numeric: tabular-nums lining-nums;
}
.nme-cab::before { content: counter(nme-sec, decimal-leading-zero); grid-column: 1; grid-row: 1; }
.nme-cab > * { margin: 0 !important; min-width: 0; }
.nme-cab > .nme-etq { grid-column: 2; grid-row: 1; }
.nme-cab > :not(.nme-etq) { grid-column: 1 / -1; }
.nme-cab > .wp-block-heading { font-size: var(--wp--preset--font-size--titulo-2); line-height: 1.08; }
.nme-cab__texto { max-width: 52ch; font-size: 1.0625rem; line-height: 1.6; color: var(--wp--preset--color--tinta-2); }
.nme-cab__texto > * { margin: 0; }
.nme-cab__texto > * + * { margin-top: 16px; }
.nme-iva { display: block; margin-top: 12px !important; font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--turquesa-texto); }
@media (min-width: 1080px) {
	.nme-cab { grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto auto 1fr; column-gap: var(--nme-gcol); row-gap: 12px; align-items: start; }
	.nme-cab::before { grid-column: 1 / 4; grid-row: 1; padding-top: 6px; }
	.nme-cab > .nme-etq { grid-column: 1 / 4; grid-row: 2; }
	.nme-cab > .wp-block-heading { grid-column: 4 / 9; grid-row: 1 / 4; }
	.nme-cab > :not(.nme-etq):not(.wp-block-heading) { grid-column: 9 / 13; grid-row: 1 / 4; align-self: end; }
	.nme-desplazado { display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--nme-gcol); }
	.nme-desplazado > * { grid-column: 4 / -1; }
}

/* ===== Rejilla de filetes y celdas ===== */
.nme-rejilla { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 0 !important; border-top: 1px solid var(--nme-filete); border-left: 1px solid var(--nme-filete); padding: 0; margin: 0; list-style: none; }
.nme-rejilla > * { margin: 0 !important; min-width: 0; max-width: none !important; width: auto !important; border-right: 1px solid var(--nme-filete); border-bottom: 1px solid var(--nme-filete); }
@media (min-width: 600px) { .nme-rejilla { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1080px) {
	.nme-rejilla--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.nme-rejilla--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.nme-celda { padding: 32px 24px; }
.nme-celda > * { margin: 0; }
.nme-celda > .wp-block-heading { font: 600 var(--wp--preset--font-size--titulo-3)/1.3 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; color: var(--wp--preset--color--azul); }
.nme-celda > p { margin-top: 12px; font-size: .9375rem; line-height: 1.65; color: var(--wp--preset--color--tinta-2); }
.nme-celda--marca::before {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	margin-bottom: 32px;
	background: linear-gradient(var(--wp--preset--color--turquesa), var(--wp--preset--color--turquesa)) 6px 0 / 2px 14px no-repeat, linear-gradient(var(--wp--preset--color--turquesa), var(--wp--preset--color--turquesa)) 0 6px / 14px 2px no-repeat;
}

/* ===== Franja de confianza (patrón sincronizado) ===== */
.nme-confianza { background: var(--wp--preset--color--hueso); border-block: 1px solid var(--nme-filete); margin-block: 0 !important; }
.nme-confianza__lista { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 !important; }
.nme-confianza__lista > .nme-confianza__item {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 !important;
	padding: 16px 12px;
	font-size: .875rem;
	font-weight: 500;
	line-height: 1.35;
	color: var(--wp--preset--color--tinta);
}
.nme-confianza__item > * { margin: 0 !important; }
.nme-confianza__item:nth-child(even) { border-left: 1px solid var(--nme-filete); }
.nme-confianza__item:nth-child(n+3) { border-top: 1px solid var(--nme-filete); }
.nme-confianza__item:nth-child(odd) { padding-left: 0; }
.nme-confianza__item .wp-block-icon { flex: none; width: 24px; color: var(--wp--preset--color--turquesa-texto); }
.nme-confianza__item .wp-block-icon svg { display: block; width: 24px; height: 24px; fill: currentColor; }
@media (min-width: 1080px) {
	.nme-confianza__lista { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	/* Nota del dueño: en escritorio, icono y texto centrados en cada casilla */
	.nme-confianza__lista > .nme-confianza__item { justify-content: center; padding: 24px; text-align: left; }
	.nme-confianza__item:nth-child(n) { border-top: 0; }
	.nme-confianza__item + .nme-confianza__item { border-left: 1px solid var(--nme-filete); }
}

/* ===== Firma del médico (patrón sincronizado; va dentro del hero) ===== */
.nme-firma { display: flex; align-items: center; gap: 16px; padding-top: 24px; border-top: 1px solid var(--nme-filete); margin: 0 !important; }
.nme-firma > * { margin: 0 !important; }
.nme-firma__sello { flex: none; }
.nme-firma__sello img { display: block; width: 52px !important; height: 52px !important; }
.nme-firma__txt { display: grid !important; gap: 2px; }
.nme-firma__txt > * { margin: 0 !important; }
.nme-firma__nombre { font: 600 1.0625rem/1.3 var(--wp--preset--font-family--poppins); color: var(--wp--preset--color--azul); letter-spacing: -.005em; }
.nme-firma__cargo { font-size: .875rem; line-height: 1.45; color: var(--wp--preset--color--tinta-2); }
.nme-firma__col { margin-top: 2px !important; font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--turquesa-texto); font-variant-numeric: tabular-nums; }
.nme-redes { gap: 4px 14px !important; margin-top: 4px !important; }
.nme-redes .wp-social-link { color: var(--wp--preset--color--azul); }
.nme-redes .wp-block-social-link-anchor { min-height: 32px; padding: 0 !important; font-size: inherit; font-weight: 500; gap: 6px; }
.nme-redes .wp-block-social-link-label { text-decoration: underline; text-decoration-color: var(--wp--preset--color--filete-fuerte); text-underline-offset: 4px; }
.nme-redes svg { width: 1.25em; height: 1.25em; fill: var(--wp--preset--color--turquesa-texto); }
@media (min-width: 1080px) { .wp-block-nme-hero .nme-firma { max-width: 460px; } }

/* ===== Test (bloque nme/test del plugin): el número sale del orden de la página ===== */
.nme-portada .wp-block-nme-test { counter-increment: nme-sec; }
.nme-portada .wp-block-nme-test .nme-test__rail::before { content: counter(nme-sec, decimal-leading-zero); font: 600 .8125rem/1 var(--wp--preset--font-family--inter); letter-spacing: .06em; color: var(--wp--preset--color--turquesa-texto); font-variant-numeric: tabular-nums lining-nums; }
.nme-portada .wp-block-nme-test .nme-test__num { display: none; }

/* ===== Productos ===== */
.nme-productos { margin-block: 0 !important; }
.nme-productos .wc-block-product-template.nme-rejilla { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 1080px) { .nme-productos .wc-block-product-template.nme-rejilla { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.nme-productos .wc-block-product {
	position: relative;
	display: flex !important;
	flex-direction: column;
	padding: 0 0 16px !important;
	background: #fff;
	text-align: left;
}
.nme-productos .wc-block-product > * { margin: 0 clamp(12px, 1.6vw, 20px); }
.nme-productos .wc-block-product > .wc-block-components-product-image { margin: 0 !important; overflow: hidden; background: var(--wp--preset--color--hueso); border-bottom: 1px solid var(--nme-filete); }
.nme-productos .wc-block-components-product-image a { display: block; }
.nme-productos .wc-block-components-product-image img { width: 100%; aspect-ratio: 1; object-fit: cover; mix-blend-mode: multiply; transition: transform .2s; }
.nme-productos--packs .wc-block-components-product-image img { mix-blend-mode: normal; }
@media (hover: hover) { .nme-productos .wc-block-product:hover .wc-block-components-product-image img { transform: scale(1.025); } }
.nme-productos .wc-block-components-product-sale-badge,
.nme-productos .wc-block-components-product-image .wc-block-components-product-sale-badge {
	position: absolute;
	top: 12px;
	left: 12px;
	right: auto;
	z-index: 2;
	margin: 0;
	padding: 5px 8px;
	border: 0;
	border-radius: 3px;
	background: var(--wp--preset--color--turquesa);
	color: var(--wp--preset--color--noche);
	font: 600 .75rem/1 var(--wp--preset--font-family--inter);
	letter-spacing: .04em;
	text-transform: uppercase;
}
.nme-productos .wc-block-product .wp-block-post-title,
.nme-productos .nme-prod__nombre {
	margin-top: 16px !important;
	font: 600 clamp(.9375rem, .9rem + .2vw, 1.0625rem)/1.3 var(--wp--preset--font-family--poppins);
	letter-spacing: -.01em;
	text-align: left;
	color: var(--wp--preset--color--azul);
}
.nme-productos .wp-block-post-title a { color: inherit; text-decoration: none; }
.nme-productos .wp-block-post-title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.nme-prod__linea { margin-top: 8px !important; font-size: .8125rem; line-height: 1.5; color: var(--wp--preset--color--tinta-2); }
.nme-prod__linea:empty { display: none; }
.nme-productos .wc-block-components-product-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 12px;
	margin-top: auto !important;
	padding-top: 16px;
	text-align: left;
	font: 600 1.25rem/1.2 var(--wp--preset--font-family--inter);
	letter-spacing: -.01em;
	color: var(--wp--preset--color--tinta);
	font-variant-numeric: tabular-nums lining-nums;
}
.nme-productos .wc-block-components-product-price del { order: -1; font-size: .875rem; font-weight: 400; color: var(--wp--preset--color--tinta-2); }
.nme-productos .wc-block-components-product-price ins { text-decoration: none; background: none; }
.nme-productos .wc-block-components-product-button { margin-top: 12px !important; align-items: flex-start; }
.nme-productos .wc-block-components-product-button .wp-block-button__link,
.nme-productos .wc-block-components-product-button .wc-block-components-product-button__button {
	min-height: 48px;
	width: auto;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid var(--wp--preset--color--azul);
	border-radius: 4px;
	background: var(--wp--preset--color--azul);
	color: #fff;
	font: 500 .875rem/1.2 var(--wp--preset--font-family--inter);
	text-decoration: none;
}
.nme-productos .wc-block-components-product-button .wp-block-button__link:hover { background: var(--wp--preset--color--azul-hover); }
.nme-productos .wc-block-components-product-button .added_to_cart { margin-top: 8px; font-size: .875rem; }
.nme-subrotulo { display: flex !important; align-items: center; gap: 16px; margin-top: 48px !important; margin-bottom: 16px !important; }
.nme-subrotulo > * { margin: 0 !important; }
.nme-subrotulo .nme-etq { color: var(--wp--preset--color--turquesa-texto); }
.nme-subrotulo::after { content: ""; flex: 1; height: 1px; background: var(--nme-filete); }

/* ===== Por problema de salud: índice analítico ===== */
.nme-indice { margin-block: 0 !important; }
.nme-indice .wp-block-term-template { columns: 1; column-gap: var(--nme-gcol); margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--nme-filete); counter-reset: nme-ind; display: block !important; }
.nme-indice .wp-block-term-template > li { break-inside: avoid; margin: 0 !important; counter-increment: nme-ind; }
.nme-indice .wp-block-term-name { margin: 0; }
.nme-indice .wp-block-term-name a {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) auto;
	align-items: center;
	min-height: 60px;
	padding-block: 8px;
	border-bottom: 1px solid var(--nme-filete);
	color: var(--wp--preset--color--tinta);
	font-size: 1.0625rem;
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
	transition: color var(--nme-dur);
}
.nme-indice .wp-block-term-name a::before { content: counter(nme-ind, decimal-leading-zero); font: 600 .8125rem/1 var(--wp--preset--font-family--inter); letter-spacing: .06em; color: var(--wp--preset--color--turquesa-texto); font-variant-numeric: tabular-nums lining-nums; }
.nme-indice .wp-block-term-name a::after { content: "→"; padding-inline: 12px 4px; color: var(--wp--preset--color--turquesa-texto); transition: transform var(--nme-dur); }
.nme-indice .wp-block-term-name a:hover { color: var(--wp--preset--color--azul); }
.nme-indice .wp-block-term-name a:hover::after { transform: translateX(4px); }
@media (min-width: 600px) { .nme-indice .wp-block-term-template { columns: 2; } }
@media (min-width: 1080px) { .nme-indice .wp-block-term-template { columns: 3; } }

/* ===== Principios activos: franja azul noche ===== */
.nme-sec--noche { background: var(--wp--preset--color--noche); color: var(--wp--preset--color--claro); }
.nme-sec--noche :focus-visible { outline-color: var(--wp--preset--color--turquesa); }
.nme-sec--noche .nme-cab { border-top-color: var(--wp--preset--color--noche-filete); }
.nme-sec--noche .nme-cab::before { color: var(--wp--preset--color--turquesa); }
.nme-sec--noche .nme-cab > .wp-block-heading { color: #fff; }
.nme-sec--noche .nme-etq, .nme-sec--noche .nme-cab .nme-etq { color: var(--wp--preset--color--claro-2); }
.nme-sec--noche .nme-cab__texto { color: var(--wp--preset--color--claro-2); }
.nme-sec--noche .nme-rejilla, .nme-sec--noche .nme-rejilla > * { border-color: var(--wp--preset--color--noche-filete); }
.nme-sec--noche .nme-celda > .wp-block-heading { color: #fff; font-size: 1.3125rem; }
.nme-sec--noche .nme-celda > p { color: var(--wp--preset--color--claro); }
.nme-icono-pastilla { display: flex !important; align-items: center; justify-content: center; width: 64px; height: 64px; margin: 0 0 32px !important; background: #fff; border-radius: 6px; }
.nme-icono-pastilla img { display: block; width: 52px !important; height: 52px !important; }
@media (min-width: 600px) and (max-width: 1079px) { .nme-principios__lista > :last-child { grid-column: 1 / -1; } }

/* ===== Criterio: tabla y cita ===== */
.nme-tabla { border-top: 1px solid var(--nme-filete); margin: 0 !important; }
.nme-tabla > * { margin: 0 !important; }
.nme-tabla__fila { display: grid !important; gap: 8px var(--nme-gcol); padding-block: 24px; border-bottom: 1px solid var(--nme-filete); }
.nme-tabla__fila > * { margin: 0 !important; }
.nme-tabla__fila > .wp-block-heading { font: 600 1.125rem/1.35 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; color: var(--wp--preset--color--azul); }
.nme-tabla__fila > p { max-width: 62ch; line-height: 1.65; color: var(--wp--preset--color--tinta-2); }
@media (min-width: 768px) { .nme-tabla__fila { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); } }
.nme-cita { margin-top: 48px !important; padding: clamp(24px, 4vw, 48px); background: var(--wp--preset--color--hueso); border: 1px solid var(--nme-filete); border-radius: 6px; }
.nme-cita > * { margin: 0 !important; }
.nme-cita .wp-block-quote { margin: 0; padding: 0; border: 0; }
.nme-cita .wp-block-quote p { font: 500 var(--wp--preset--font-size--cita)/1.32 var(--wp--preset--font-family--poppins); letter-spacing: -.018em; color: var(--wp--preset--color--azul); text-wrap: pretty; }
.nme-cita .wp-block-quote p::before { content: "“"; display: block; height: .55em; margin-bottom: 8px; font-size: 2.6em; line-height: 1; color: var(--wp--preset--color--turquesa); }
.nme-cita__pie { display: flex !important; flex-wrap: wrap; align-items: center; gap: 4px 16px; margin-top: 24px !important; padding-top: 16px; border-top: 1px solid var(--nme-filete); font-size: .9375rem; color: var(--wp--preset--color--tinta-2); }
.nme-cita__pie > * { margin: 0 !important; }
.nme-cita__pie strong { font: 600 1rem/1.3 var(--wp--preset--font-family--poppins); color: var(--wp--preset--color--azul); }
.nme-cita__pie > .nme-enlace { margin-left: auto !important; }

/* ===== Instagram ===== */
.nme-acciones { display: flex !important; flex-wrap: wrap; align-items: center; gap: 8px 24px; }
.nme-acciones > * { margin: 0 !important; }
.nme-ig { margin-block: 0 !important; }
.nme-ig #sb_instagram { padding: 0 !important; }
.nme-ig #sb_instagram .sb_instagram_header,
.nme-ig #sb_instagram .sbi_header_outside,
.nme-ig #sb_instagram #sbi_load { display: none !important; }
.nme-ig #sb_instagram #sbi_images { display: grid !important; grid-auto-flow: column; grid-auto-columns: 44%; gap: 8px !important; overflow-x: auto; scroll-snap-type: x mandatory; padding: 0 0 8px !important; scrollbar-width: thin; }
.nme-ig #sb_instagram #sbi_images > .sbi_item { width: auto !important; padding: 0 !important; margin: 0 !important; scroll-snap-align: start; }
.nme-ig #sb_instagram #sbi_images > .sbi_item:nth-child(n+9) { display: none !important; }
.nme-ig #sb_instagram .sbi_photo_wrap, .nme-ig #sb_instagram .sbi_photo { border-radius: 4px; overflow: hidden; background-color: var(--wp--preset--color--hueso); }
.nme-ig #sb_instagram .sbi_photo { height: auto !important; aspect-ratio: 4 / 5; background-size: cover; }
.nme-ig #sb_instagram .sbi_photo img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 600px) { .nme-ig #sb_instagram #sbi_images { grid-auto-flow: row; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: visible; padding-bottom: 0 !important; } }
@media (min-width: 1080px) { .nme-ig #sb_instagram #sbi_images { grid-template-columns: repeat(8, minmax(0, 1fr)); } }

/* ===== Evidencia: referencias ===== */
.nme-refs { margin-block: 0 !important; }
.nme-refs .wp-block-post-template { counter-reset: nme-ref; }
.nme-refs .wp-block-post { counter-increment: nme-ref; }
.nme-ref { position: relative; display: flex !important; flex-direction: column; gap: 12px; height: 100%; padding: 24px 24px 32px; transition: background-color var(--nme-dur); }
.nme-ref > * { margin: 0 !important; }
.nme-ref:hover { background: var(--wp--preset--color--hueso); }
.nme-ref::before { content: "[" counter(nme-ref) "]"; font: 600 .8125rem/1 var(--wp--preset--font-family--inter); color: var(--wp--preset--color--turquesa-texto); font-variant-numeric: tabular-nums; }
.nme-ref__cat { font: 500 .6875rem/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-ref__cat:empty { display: none; }
.nme-refs .nme-ref .wp-block-post-title { font: 500 1rem/1.45 var(--wp--preset--font-family--inter); letter-spacing: 0; color: var(--wp--preset--color--tinta); text-wrap: pretty; }
.nme-ref .wp-block-post-title a { color: inherit; text-decoration: none; }
.nme-ref .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }
.nme-ref:hover .wp-block-post-title a { color: var(--wp--preset--color--azul); text-decoration: underline; text-decoration-color: var(--wp--preset--color--filete-fuerte); text-underline-offset: 3px; }
.nme-ref__fuente { display: block !important; margin-top: auto !important; padding-top: 12px; border-top: 1px dashed var(--nme-filete); font-size: .8125rem; font-style: italic; color: var(--wp--preset--color--tinta-2); font-variant-numeric: tabular-nums; }
.nme-ref__fuente > * { display: inline; margin: 0 !important; font-size: inherit; }
.nme-ref__fuente > .wp-block-post-date::before { content: "·\00a0"; }
.nme-ref__fuente > p:empty + .wp-block-post-date::before { content: none; }

/* ===== Preguntas frecuentes: acordeón nativo ===== */
.nme-acordeon { border-top: 1px solid var(--nme-filete); counter-reset: nme-faq; margin: 0 !important; }
.nme-acordeon > .wp-block-accordion-item { border-bottom: 1px solid var(--nme-filete); counter-increment: nme-faq; margin: 0 !important; }
.nme-acordeon .wp-block-accordion-heading { margin: 0; font: 500 clamp(1rem, .95rem + .3vw, 1.1875rem)/1.4 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; }
.nme-acordeon .wp-block-accordion-heading__toggle {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr) 20px;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 64px;
	padding: 16px 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--azul);
	font: inherit;
	text-align: left;
	cursor: pointer;
}
.nme-acordeon .wp-block-accordion-heading__toggle::before { content: counter(nme-faq, decimal-leading-zero); font: 600 .8125rem/1 var(--wp--preset--font-family--inter); letter-spacing: .06em; color: var(--wp--preset--color--turquesa-texto); font-variant-numeric: tabular-nums lining-nums; }
.nme-acordeon .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title { text-decoration: underline; text-decoration-color: var(--wp--preset--color--filete-fuerte); text-underline-offset: 4px; }
.nme-acordeon .wp-block-accordion-heading__toggle-icon { position: relative; justify-self: end; width: 14px; height: 14px; font-size: 0; color: transparent; transform: none !important; }
.nme-acordeon .wp-block-accordion-heading__toggle-icon::before,
.nme-acordeon .wp-block-accordion-heading__toggle-icon::after { content: ""; position: absolute; background: var(--wp--preset--color--turquesa-texto); transition: transform var(--nme-dur); }
.nme-acordeon .wp-block-accordion-heading__toggle-icon::before { left: 0; right: 0; top: 6px; height: 2px; }
.nme-acordeon .wp-block-accordion-heading__toggle-icon::after { top: 0; bottom: 0; left: 6px; width: 2px; }
.nme-acordeon .is-open .wp-block-accordion-heading__toggle-icon::after,
.nme-acordeon [aria-expanded="true"] .wp-block-accordion-heading__toggle-icon::after { transform: scaleY(0); }
.nme-acordeon .wp-block-accordion-panel { padding: 0 0 24px; }
.nme-acordeon .wp-block-accordion-panel > * { margin: 0; max-width: 70ch; color: var(--wp--preset--color--tinta-2); line-height: 1.7; }
.nme-acordeon .wp-block-accordion-panel > * + * { margin-top: 12px; }
.nme-acordeon .wp-block-accordion-panel > .nme-aviso { margin-top: 16px; font-size: .8125rem; line-height: 1.6; }
@media (min-width: 768px) { .nme-acordeon .wp-block-accordion-panel { padding-left: 48px; } }
.nme-faq__pie { display: flex !important; flex-direction: column; align-items: flex-start; gap: 24px; margin-top: 32px !important; }
.nme-faq__pie > * { margin: 0 !important; }
.nme-faq__pie .nme-aviso { max-width: 70ch; }

/* ===== Pie ===== */
.nme-pie { background: var(--wp--preset--color--hueso); border-top: 1px solid var(--nme-filete); padding-block: 64px 150px; font-size: .9375rem; margin-block: 0 !important; }
.nme-pie > * { margin-block: 0 !important; }
.nme-pie__rejilla { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 32px; }
.nme-pie__rejilla > * { margin: 0 !important; }
.nme-pie__marca > * { margin: 0 !important; }
.nme-pie__logo { margin-bottom: 16px !important; }
.nme-pie__logo img { display: block; height: 46px !important; width: auto !important; }
.nme-pie__marca p { max-width: 38ch; color: var(--wp--preset--color--tinta-2); line-height: 1.6; }
.nme-pie__col > * { margin: 0 !important; }
.nme-pie__t { margin-bottom: 8px !important; padding-bottom: 8px; border-bottom: 1px solid var(--nme-filete); font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--turquesa-texto) !important; }
.nme-pie__lista { margin: 0; padding: 0; list-style: none; }
.nme-pie__lista li { display: flex; align-items: center; min-height: 40px; margin: 0; color: var(--wp--preset--color--tinta-2); overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.nme-pie__lista a { display: flex; align-items: center; min-height: 40px; color: var(--wp--preset--color--tinta); text-decoration: none; }
.nme-pie__lista a:hover { color: var(--wp--preset--color--azul); text-decoration: underline; text-underline-offset: 3px; }
.nme-pie__lista a[href^="mailto:"] { font-size: .875rem; }
.nme-pie__base { margin-top: 48px !important; padding-top: 24px; border-top: 1px solid var(--nme-filete); }
.nme-pie__base > * { margin: 0 !important; }
.nme-pie__pagos { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.nme-pie__pagos li { margin: 0; padding: 5px 10px; border: 1px solid var(--nme-filete); border-radius: 3px; background: #fff; font-size: .75rem; font-weight: 500; color: var(--wp--preset--color--tinta-2); }
.nme-pie__copy { margin-top: 24px !important; font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
@media (min-width: 600px) { .nme-pie__rejilla { grid-template-columns: repeat(3, minmax(0, 1fr)); } .nme-pie__marca { grid-column: 1 / -1; } }
@media (min-width: 1080px) { .nme-pie__rejilla { grid-template-columns: 1.3fr 1fr 1.2fr 1fr; } .nme-pie__marca { grid-column: auto; } }
@media (max-width: 767px) { .nme-pie__lista li, .nme-pie__lista a { min-height: 44px; } }

/* ===== Resto de páginas ===== */
.nme-main:not(.nme-main--portada) { padding-block: clamp(32px, 4vw, 64px) var(--wp--preset--spacing--seccion); }
.nme-pagina__cab { padding-bottom: 24px; border-bottom: 1px solid var(--nme-filete); margin-bottom: 32px !important; }
.nme-pagina__cab > * { margin-block: 0; }
.nme-pagina__cab > * + * { margin-top: 16px; }
.nme-main .nme-pagina__titulo { font-size: var(--wp--preset--font-size--titulo-2); line-height: 1.08; }
.nme-entradilla { max-width: 60ch; font-size: var(--wp--preset--font-size--entradilla); font-weight: 300; line-height: 1.55; color: var(--wp--preset--color--tinta-2); }
.nme-entrada__meta { gap: 4px 16px; font-size: .875rem; color: var(--wp--preset--color--tinta-2); }
.nme-pagina__imagen img { border-radius: 6px; }
.nme-prosa { line-height: 1.7; }
.nme-prosa h2 { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); margin-top: 48px; }
.nme-prosa h3 { margin-top: 32px; }
.nme-buscador .wp-block-search__input { min-height: 48px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; padding: 0 12px; }
.nme-buscador .wp-block-search__button { min-height: 48px; margin-left: 8px; border-radius: 4px; background: var(--wp--preset--color--azul); color: #fff; border: 0; }
.nme-tarjeta { display: flex !important; flex-direction: column; gap: 12px; height: 100%; padding: 0 0 24px; }
.nme-tarjeta > * { margin: 0 24px !important; }
.nme-tarjeta > .nme-tarjeta__img { margin: 0 !important; }
.nme-main .nme-tarjeta__titulo { font: 600 var(--wp--preset--font-size--titulo-3)/1.3 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; }
.nme-tarjeta__titulo a { color: var(--wp--preset--color--azul); text-decoration: none; }
.nme-tarjeta__titulo a:hover { text-decoration: underline; }
.nme-tarjeta__texto { font-size: .9375rem; color: var(--wp--preset--color--tinta-2); }
.nme-tarjeta__fecha { margin-top: auto !important; font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-paginacion { margin-top: 32px; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; scroll-behavior: auto !important; }
	.nme-cabecera::after { display: none; }
}

/* ===== Ajustes sobre los bloques del plugin (el tema manda en la composición) ===== */
.wp-block-nme-hero .nme-hero__ficha > * { margin: 0; }
.nme-productos .wc-block-product-template { margin: 0 !important; max-width: none !important; width: auto !important; }
.nme-productos:not(.nme-productos--listado) .woocommerce-price-suffix { display: none; }
.nme-desplazado > * { margin-block: 0; }
.nme-firma { align-items: flex-start !important; }
.nme-firma__sello { margin-top: 2px !important; }
/* Redes del médico: 13 px por defecto. Si el dueño elige otro «Tamaño del icono» (Normal, Grande, Enorme) en el bloque, esa clase manda. */
.wp-block-social-links.nme-redes.has-small-icon-size, .wp-block-social-links.nme-redes:not([class*="-icon-size"]) { font-size: .8125rem; }
.nme-redes .wp-block-social-link-label { line-height: 1.3; }
.nme-redes .wp-block-social-link-anchor { min-height: 36px; align-items: center; }

/* ===== Biblioteca de reserva ===== */
.nme-campana, .nme-guia { padding-block: var(--wp--preset--spacing--seccion); background: var(--wp--preset--color--hueso); border-block: 1px solid var(--nme-filete); margin-block: 0 !important; }
.nme-campana__in > *, .nme-guia__in > * { margin-block: 0; max-width: 60ch; }
.nme-campana__in > * + *, .nme-guia__in > * + * { margin-top: 16px; }
.nme-campana__in .wp-block-buttons, .nme-guia__in .wp-block-buttons { margin-top: 32px; }
.nme-calculadora { padding-block: 32px; background: var(--wp--preset--color--azul); color: #fff; margin-block: 0 !important; }
.nme-calculadora__in { gap: 16px 32px; }
.nme-calculadora__in > * { margin: 0 !important; }
.nme-calculadora .nme-etq { color: var(--wp--preset--color--claro); flex-basis: 100%; }
.nme-calculadora__texto { font: 500 var(--wp--preset--font-size--titulo-3)/1.35 var(--wp--preset--font-family--poppins); max-width: 40ch; }
.nme-calculadora .wp-block-button__link { background: #fff; color: var(--wp--preset--color--azul); border-color: #fff; }
.nme-calculadora .wp-block-button__link:hover { background: var(--wp--preset--color--hueso-2); color: var(--wp--preset--color--azul); }
.nme-comparativa table { border-collapse: collapse; width: 100%; font-size: .9375rem; }
.nme-comparativa th, .nme-comparativa td { padding: 12px 16px; border: 1px solid var(--nme-filete); text-align: left; vertical-align: top; }
.nme-comparativa th { background: var(--wp--preset--color--hueso); font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-comparativa { overflow-x: auto; margin: 0; }
.nme-pestanas .wp-block-tab-list { gap: 0; border-bottom: 1px solid var(--nme-filete); }
.nme-pestanas .wp-block-tab-list button { min-height: 48px; padding: 0 20px; border: 0; border-bottom: 2px solid transparent; background: none; color: var(--wp--preset--color--tinta-2); font: 500 .9375rem/1 var(--wp--preset--font-family--inter); cursor: pointer; }
.nme-pestanas .wp-block-tab-list button[aria-selected="true"] { color: var(--wp--preset--color--azul); border-bottom-color: var(--wp--preset--color--turquesa); }
.nme-pestanas .wp-block-tab-panel { padding-top: 24px; }
.nme-video video { width: 100%; border-radius: 6px; background: var(--wp--preset--color--hueso); }
.nme-pack-destacado { padding: clamp(16px, 3vw, 32px); border: 1px solid var(--nme-filete); border-radius: 6px; }
.nme-pack-destacado .wp-block-post-title a { color: var(--wp--preset--color--azul); text-decoration: none; }
.nme-sello .wp-block-icon { width: 32px; margin-bottom: 24px !important; color: var(--wp--preset--color--turquesa-texto); }
.nme-sello .wp-block-icon svg { width: 32px; height: 32px; fill: currentColor; }
.nme-resenas { margin-block: 0 !important; }
.nme-pack-destacado .wp-block-post-title { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height: 1.15; }
/* Páginas y entradas: el contenido ocupa todo el ancho para que los bloques «ancho completo» y «amplio» salgan
   bien; el texto normal sigue a 760 px. Las secciones de la portada (nme-sec) también funcionan aquí. */
.nme-prosa.alignfull { margin-block: 0; }
.nme-prosa > .alignfull:first-child { margin-top: 0; }
.nme-prosa { counter-reset: nme-sec; }
.nme-productos .wc-block-product > .wp-block-woocommerce-product-price { margin-top: auto !important; }
.nme-productos .wc-block-product > .wp-block-woocommerce-product-price .wc-block-components-product-price { margin-top: 0 !important; }

/* ===== Revisión del dueño (2026-10-19) ===== */
/* Flecha de los submenús: separada del texto, más grande y visible */
.nme-nav .wp-block-navigation__submenu-icon { display: inline-flex; align-items: center; justify-content: center; width: 14px; height: 14px; margin-left: 6px !important; padding: 0 !important; }
.nme-nav .wp-block-navigation__submenu-icon svg { width: 12px; height: 12px; stroke: currentColor; stroke-width: 2px; }
@media (min-width: 1080px) {
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle { padding: 0 10px 0 12px; }
	.nme-nav .wp-block-navigation__container { gap: 8px; }
}
/* Franja de confianza: líneas equilibradas, nunca una palabra o un símbolo sueltos */
.nme-confianza__item p { text-wrap: balance; }

/* =====================================================================================================
   FASE 4 · RESTO DE PLANTILLAS (tienda, ficha, carrito, pago, cuenta, blog, entradas, páginas, archivos).
   Los tamaños de texto no llevan !important: el tamaño elegido en el editor (clase has-…-font-size o
   estilo en línea del bloque) siempre gana.
   ===================================================================================================== */

/* ----- Migas de pan (bloque nativo) ----- */
.nme-migas { margin: 0 0 20px; font-size: .8125rem; line-height: 1.4; color: var(--wp--preset--color--tinta-2); }
.nme-migas ol { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 0; margin: 0; padding: 0; list-style: none; }
.nme-migas li { display: inline-flex; align-items: center; margin: 0; min-height: 24px; }
.nme-migas a { display: inline-flex; align-items: center; min-height: 24px; color: inherit; text-decoration: underline; text-decoration-color: var(--wp--preset--color--filete-fuerte); }
.nme-migas a:hover { color: var(--wp--preset--color--azul); text-decoration-color: var(--wp--preset--color--azul); }
.nme-migas [aria-current] { color: var(--wp--preset--color--tinta); font-weight: 500; }
.nme-migas li:not(:last-child)::after { color: var(--wp--preset--color--turquesa-texto); opacity: 1; }

/* ----- Cabecera de página: etiqueta superior, título, entradilla ----- */
.nme-pagina__cab .nme-etq { margin-bottom: 0; }
.nme-main--ancha .nme-pagina__cab { margin-bottom: 24px !important; }
.nme-pagina__acciones { margin-top: 24px; }

/* ----- Barra de la tienda: recuento y orden ----- */
.nme-barra-tienda { margin-block: 0 24px !important; gap: 12px 24px; }
.nme-barra-tienda > * { margin: 0 !important; }
.nme-barra-tienda .woocommerce-result-count { font-size: .875rem; color: var(--wp--preset--color--tinta-2); }
.nme-barra-tienda .woocommerce-ordering select,
.nme-barra-tienda select.orderby { min-height: 44px; padding: 0 36px 0 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background-color: #fff; color: var(--wp--preset--color--tinta); font: 500 .875rem/1.2 var(--wp--preset--font-family--inter); }

/* ----- Listado de productos (tienda, categorías, búsqueda, relacionados) ----- */
.nme-productos--listado .woocommerce-price-suffix { display: inline; margin-left: 4px; font-size: .75rem; font-weight: 400; letter-spacing: 0; color: var(--wp--preset--color--tinta-2); }
.nme-productos--listado .wc-block-product-template.nme-rejilla { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 1080px) { .nme-productos--listado .wc-block-product-template.nme-rejilla--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } .nme-productos--listado .wc-block-product-template.nme-rejilla--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 479px) { .nme-productos--listado .wc-block-product-template.nme-rejilla { grid-template-columns: minmax(0, 1fr); } }
.nme-prod__valoracion { margin-top: 8px; font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-prod__valoracion .wc-block-components-product-rating__stars,
.nme-ficha__valoracion .wc-block-components-product-rating__stars { color: var(--wp--preset--color--turquesa-texto); }
.nme-prod__valoracion .wc-block-components-product-rating__container { justify-content: flex-start; }
.nme-productos--listado .wc-block-product > .wp-block-woocommerce-product-price { margin-top: auto; }
.nme-relacionados__titulo { margin: 48px 0 24px; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }

/* Paginación */
.nme-paginacion { gap: 8px; }
.nme-paginacion a, .nme-paginacion .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 12px; border: 1px solid var(--nme-filete); border-radius: 4px; color: var(--wp--preset--color--tinta); text-decoration: none; font-size: .9375rem; font-variant-numeric: tabular-nums; }
.nme-paginacion a:hover { background: var(--wp--preset--color--hueso); border-color: var(--wp--preset--color--filete-fuerte); }
.nme-paginacion .page-numbers.current { background: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--azul); color: #fff; }
.nme-paginacion .wp-block-query-pagination-numbers { display: inline-flex; gap: 8px; flex-wrap: wrap; }

/* ----- Ficha de producto ----- */
.nme-ficha { gap: clamp(24px, 4vw, 64px); margin-block: 0 56px !important; align-items: flex-start; }
.nme-ficha > .wp-block-column { min-width: 0; margin: 0; }
@media (min-width: 782px) {
	.nme-ficha__galeria { flex: 0 0 calc(50% - 32px) !important; }
	.nme-ficha__datos { flex: 1 1 0 !important; }
}
.nme-ficha__galeria .wp-block-woocommerce-product-image-gallery { max-width: none; }
.nme-ficha__galeria .woocommerce-product-gallery { position: relative; margin: 0; width: 100% !important; float: none !important; opacity: 1 !important; border: 1px solid var(--nme-filete); background: var(--wp--preset--color--hueso); overflow: hidden; }
.nme-ficha__galeria .woocommerce-product-gallery__wrapper { margin: 0; }
.nme-ficha__galeria .woocommerce-product-gallery__image img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; }
.nme-ficha__galeria .woocommerce-product-gallery__trigger { position: absolute; top: 12px; right: 12px; z-index: 3; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--nme-filete); border-radius: 4px; background: #fff; text-decoration: none; font-size: 0; }
.nme-ficha__galeria .woocommerce-product-gallery__trigger::before { content: ""; width: 18px; height: 18px; border: 2px solid var(--wp--preset--color--azul); border-radius: 50%; box-sizing: border-box; background: none; }
.nme-ficha__galeria .woocommerce-product-gallery__trigger::after { content: ""; position: absolute; width: 8px; height: 2px; background: var(--wp--preset--color--azul); transform: translate(11px, 11px) rotate(45deg); }
.nme-ficha__galeria .flex-control-thumbs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 8px; list-style: none; border-top: 1px solid var(--nme-filete); background: #fff; }
.nme-ficha__galeria .flex-control-thumbs li { margin: 0; width: auto !important; float: none !important; }
.nme-ficha__galeria .flex-control-thumbs img { display: block; width: 100%; height: auto; cursor: pointer; border: 1px solid var(--nme-filete); border-radius: 3px; opacity: .6; transition: opacity var(--nme-dur); }
.nme-ficha__galeria .flex-control-thumbs img.flex-active, .nme-ficha__galeria .flex-control-thumbs img:hover { opacity: 1; border-color: var(--wp--preset--color--turquesa); }
.nme-ficha__datos { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.nme-ficha__datos > * { margin: 0; max-width: 100%; }
.nme-ficha__datos > .nme-ficha__titulo { order: 1; }
.nme-ficha__datos > .nme-ficha__linea { order: 2; }
.nme-ficha__datos > .nme-ficha__valoracion { order: 3; }
.nme-ficha__datos > .nme-ficha__precio { order: 4; }
.nme-ficha__datos > .wp-block-woocommerce-product-summary { order: 5; }
.nme-ficha__datos > .nme-prod-ind { order: 6; }
.nme-ficha__datos > .nme-ficha__comprar { order: 7; }
.nme-ficha__datos > .nme-trust-strip { order: 8; }
.nme-ficha__datos > .nme-ficha__meta { order: 9; }
.nme-main .nme-ficha__titulo { font-size: var(--wp--preset--font-size--titulo-2); line-height: 1.08; overflow-wrap: break-word; }
.nme-ficha__linea { margin-top: 16px; font-size: var(--wp--preset--font-size--entradilla); font-weight: 300; line-height: 1.5; color: var(--wp--preset--color--tinta-2); }
.nme-ficha__linea:empty { display: none; }
.nme-ficha__valoracion { margin-top: 16px; font-size: .875rem; }
.nme-ficha__valoracion .wc-block-components-product-rating__container { justify-content: flex-start; gap: 8px; }
.nme-ficha__valoracion a { color: var(--wp--preset--color--tinta-2); }
.nme-ficha__precio { margin-top: 20px; }
.nme-ficha__precio .wc-block-components-product-price { font: 600 2rem/1.1 var(--wp--preset--font-family--inter); letter-spacing: -.015em; color: var(--wp--preset--color--tinta); font-variant-numeric: tabular-nums lining-nums; }
.nme-ficha__precio .wc-block-components-product-price del { font-size: 1.125rem; font-weight: 400; color: var(--wp--preset--color--tinta-2); }
.nme-ficha__precio .wc-block-components-product-price ins { text-decoration: none; background: none; }
.nme-ficha__precio .woocommerce-price-suffix { margin-left: 8px; font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--turquesa-texto); }
.nme-ficha__resumen { margin-top: 20px; font-size: 1rem; line-height: 1.65; color: var(--wp--preset--color--tinta-2); }
.nme-ficha__resumen p { margin: 0; }
.nme-ficha__resumen p + p { margin-top: 8px; }
.nme-ficha__comprar { margin-top: 24px; width: 100%; }
.nme-ficha__comprar form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px; margin: 0; }
.nme-ficha__comprar .quantity { display: flex; margin: 0; }
.nme-ficha__comprar .quantity input.qty { width: 80px; min-height: 48px; padding: 0 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; color: var(--wp--preset--color--tinta); font: 500 1rem/1 var(--wp--preset--font-family--inter); text-align: center; }
.nme-ficha__comprar .single_add_to_cart_button { flex: 1 1 200px; min-height: 48px; padding: 0 24px; border-radius: 4px; }
.nme-ficha__meta { width: 100%; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--nme-filete); font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-ficha__meta > .wp-block-group { gap: 4px 24px; }
.nme-ficha__meta a { color: inherit; }

/* Pastilla «Indicado para» y franja de confianza (las pinta nme-nucleo; aquí solo el aspecto) */
.nme-main .nme-prod-ind { order: 6; margin: 20px 0 0; gap: 8px; align-items: center; }
.nme-main .nme-prod-ind__label { margin: 0 4px 0 0; font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-prod-ind__pill { min-height: 36px; padding: 0 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; color: var(--wp--preset--color--tinta); font-size: .875rem; font-weight: 500; }
.nme-main .nme-prod-ind__pill:hover { background: var(--wp--preset--color--hueso); color: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--azul); }
.nme-main .nme-prod-ind__pill:hover svg { stroke: var(--ind-c) !important; }
.nme-main .nme-trust-strip { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0; margin: 24px 0 0; padding: 0; width: 100%; border-block: 1px solid var(--nme-filete); background: var(--wp--preset--color--hueso); }
.nme-main .nme-trust-strip > div { display: block; padding: 14px 16px; font-size: .8125rem; line-height: 1.45; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-trust-strip > div + div { border-left: 1px solid var(--nme-filete); }
.nme-main .nme-trust-strip strong { margin-bottom: 2px; color: var(--wp--preset--color--tinta); font-size: .875rem; font-weight: 600; }
@media (max-width: 859px) { .nme-main .nme-trust-strip { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); } .nme-main .nme-trust-strip > div + div { border-left: 0; border-top: 1px solid var(--nme-filete); } }
@media (min-width: 600px) and (max-width: 859px) { .nme-main .nme-trust-strip > div + div { border-top: 0; border-left: 1px solid var(--nme-filete); } }

/* Pestañas de la ficha (bloque Detalles del producto de WooCommerce) */
.nme-detalles { margin-bottom: 56px !important; }
.nme-detalles .wc-tabs, .nme-detalles ul.tabs { display: flex; flex-wrap: nowrap; gap: 0; margin: 0 0 32px; padding: 0; list-style: none; border-bottom: 1px solid var(--nme-filete); overflow-x: auto; scrollbar-width: thin; }
.nme-detalles .wc-tabs::before, .nme-detalles .wc-tabs::after { display: none !important; }
.nme-detalles .wc-tabs li { margin: 0; border: 0 !important; background: none !important; border-radius: 0 !important; flex: none; }
.nme-detalles .wc-tabs li a { display: flex; align-items: center; min-height: 48px; padding: 0 20px; border-bottom: 2px solid transparent; color: var(--wp--preset--color--tinta-2); font: 500 .9375rem/1 var(--wp--preset--font-family--inter); text-decoration: none; white-space: nowrap; }
.nme-detalles .wc-tabs li a:hover { color: var(--wp--preset--color--azul); }
.nme-detalles .wc-tabs li.active a { color: var(--wp--preset--color--azul); border-bottom-color: var(--wp--preset--color--turquesa); }
.nme-detalles .woocommerce-Tabs-panel { max-width: 860px; line-height: 1.7; }
.nme-detalles .woocommerce-Tabs-panel > h2:first-child { margin: 0 0 16px; font-size: var(--wp--preset--font-size--titulo-3); font-family: var(--wp--preset--font-family--poppins); }
.nme-detalles .woocommerce-Tabs-panel h2, .nme-detalles .woocommerce-Tabs-panel h3, .nme-detalles .woocommerce-Tabs-panel h4 { color: var(--wp--preset--color--azul); font-family: var(--wp--preset--font-family--poppins); font-weight: 600; line-height: 1.3; letter-spacing: -.01em; }
.nme-detalles .woocommerce-Tabs-panel h2 { margin-top: 32px; font-size: clamp(1.25rem, 1.1rem + .6vw, 1.5rem); }
.nme-detalles .woocommerce-Tabs-panel h3 { margin-top: 24px; font-size: 1.125rem; }
.nme-detalles .woocommerce-Tabs-panel p, .nme-detalles .woocommerce-Tabs-panel ul, .nme-detalles .woocommerce-Tabs-panel ol { margin-block: 12px; }
.nme-detalles .woocommerce-Tabs-panel table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.nme-detalles .woocommerce-Tabs-panel th, .nme-detalles .woocommerce-Tabs-panel td { padding: 10px 14px; border: 1px solid var(--nme-filete); text-align: left; vertical-align: top; }
.nme-detalles .woocommerce-Tabs-panel th { background: var(--wp--preset--color--hueso); font-weight: 600; }
.nme-detalles .woocommerce-Tabs-panel .nme-aviso, .nme-detalles .woocommerce-Tabs-panel .nme-disclaimer { margin-top: 24px; }
.nme-detalles .woocommerce-Tabs-panel .nme-comp-tabla { overflow-x: auto; }
.nme-detalles #reviews #comments ol.commentlist { margin: 0; padding: 0; list-style: none; }
.nme-detalles #reviews .comment_container { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 16px; }
.nme-detalles #reviews img.avatar { width: 48px; height: 48px; border-radius: 50%; }
.nme-detalles #review_form input[type=text], .nme-detalles #review_form input[type=email], .nme-detalles #review_form textarea, .nme-detalles #review_form select { width: 100%; min-height: 48px; padding: 8px 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; font: 400 1rem/1.5 var(--wp--preset--font-family--inter); }
.nme-detalles #review_form .comment-form-rating label { display: block; margin-bottom: 4px; }
.nme-detalles #review_form input[type=submit] { min-height: 48px; padding: 0 24px; border: 0; border-radius: 4px; background: var(--wp--preset--color--azul); color: #fff; font: 500 .9375rem/1 var(--wp--preset--font-family--inter); cursor: pointer; }
.nme-detalles #review_form input[type=submit]:hover { background: var(--wp--preset--color--azul-hover); }
.nme-detalles .stars a { color: var(--wp--preset--color--turquesa-texto); }

/* «Relacionado con este producto» (lo pinta nme-nucleo; aquí solo el aspecto) */
.nme-main .nme-prod-related { width: 100%; max-width: var(--wp--style--global--wide-size, 1320px); margin: 0 auto 56px; padding: 0; border-top: 0; }
.nme-main .nme-prod-related .container { max-width: none; padding: 0; margin: 0; }
.nme-main .nme-prod-related__title { position: relative; margin: 0 0 32px; padding-top: 24px; border-top: 1px solid var(--nme-filete); font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height: 1.15; color: var(--wp--preset--color--azul); }
.nme-main .nme-prod-related__title::before { content: ""; position: absolute; top: -2px; left: 0; width: 40px; height: 3px; background: var(--wp--preset--color--turquesa); }
.nme-main .nme-prod-related__block { margin: 0 0 32px; }
.nme-main .nme-prod-related__block h3 { margin: 0 0 12px; font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-prod-related__grid { gap: 0; border-top: 1px solid var(--nme-filete); border-left: 1px solid var(--nme-filete); grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
.nme-main .nme-rel-card { gap: 6px; padding: 20px; border: 0; border-right: 1px solid var(--nme-filete); border-bottom: 1px solid var(--nme-filete); border-radius: 0; background: #fff; box-shadow: none; transform: none; }
.nme-main .nme-rel-card:hover { background: var(--wp--preset--color--hueso); box-shadow: none; transform: none; border-color: var(--nme-filete); }
.nme-main .nme-rel-card--ev { border-left: 0; }
.nme-main .nme-rel-card__title { color: var(--wp--preset--color--tinta); font-size: .9375rem; font-weight: 600; }
.nme-main .nme-rel-card:hover .nme-rel-card__title { color: var(--wp--preset--color--azul); }
.nme-main .nme-rel-card__meta { font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-rel-card__date, .nme-main .nme-rel-card__journal { font-size: .75rem; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-rel-card__dot { width: 8px; height: 8px; border-radius: 0; }
.nme-main .nme-prod-related__pills { gap: 8px; }
.nme-main .nme-rel-pill { min-height: 40px; padding: 0 14px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; color: var(--wp--preset--color--tinta); font-size: .875rem; font-weight: 500; }
.nme-main .nme-rel-pill:hover { background: var(--wp--preset--color--hueso); color: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--azul); }
.nme-main .nme-rel-pill svg { flex: none; }
.nme-main .nme-prod-related__count { font-size: .875rem; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-prod-related__count strong, .nme-main .nme-prod-related__count a { color: var(--wp--preset--color--azul); }

/* ----- Carrito, pago y cuenta (bloques de WooCommerce y shortcode de la cuenta) ----- */
.nme-contenido-wc { margin-block: 0; }
.nme-contenido-wc .wc-block-components-button:not(.is-link),
.nme-contenido-wc .wc-block-cart__submit-button,
.nme-contenido-wc .wc-block-components-checkout-place-order-button { min-height: 48px; border-radius: 4px; background: var(--wp--preset--color--azul); border: 1px solid var(--wp--preset--color--azul); color: #fff; font: 500 .9375rem/1.2 var(--wp--preset--font-family--inter); text-decoration: none; }
.nme-contenido-wc .wc-block-components-button:not(.is-link):hover { background: var(--wp--preset--color--azul-hover); border-color: var(--wp--preset--color--azul-hover); color: #fff; }
.nme-contenido-wc .wc-block-components-button.outlined { background: transparent; color: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--filete-fuerte); }
.nme-contenido-wc .wc-block-components-text-input input,
.nme-contenido-wc .wc-block-components-textarea,
.nme-contenido-wc .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.nme-contenido-wc .wc-blocks-components-select .wc-blocks-components-select__select,
.nme-contenido-wc .wc-block-components-address-form input { min-height: 48px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; color: var(--wp--preset--color--tinta); font-family: var(--wp--preset--font-family--inter); }
.nme-contenido-wc .wc-block-components-sidebar-layout { gap: 0; }
.nme-contenido-wc .wc-block-cart-items th, .nme-contenido-wc .wc-block-components-totals-wrapper { border-color: var(--nme-filete); }
.nme-contenido-wc .wc-block-cart-items th, .nme-contenido-wc .wc-block-cart__totals-title { font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-contenido-wc .wc-block-components-product-name { color: var(--wp--preset--color--azul); font: 600 1rem/1.35 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; text-decoration: none; }
.nme-contenido-wc .wc-block-components-product-name:hover { text-decoration: underline; }
.nme-contenido-wc .wc-block-components-totals-item__value, .nme-contenido-wc .wc-block-components-product-price { font-variant-numeric: tabular-nums lining-nums; }
.nme-contenido-wc .wc-block-components-order-summary, .nme-contenido-wc .wc-block-components-totals-wrapper { border-radius: 0; }
.nme-contenido-wc .wc-block-checkout__sidebar, .nme-contenido-wc .wc-block-cart__sidebar { align-self: start; }
.nme-contenido-wc .wp-block-woocommerce-cart-order-summary-block, .nme-contenido-wc .wp-block-woocommerce-checkout-order-summary-block { padding: 24px; border: 1px solid var(--nme-filete); background: var(--wp--preset--color--hueso); border-radius: 6px; }
.nme-contenido-wc .wc-block-components-checkout-step__title, .nme-contenido-wc .wc-block-components-title { font-family: var(--wp--preset--font-family--poppins); font-weight: 600; letter-spacing: -.01em; color: var(--wp--preset--color--azul); }
.nme-contenido-wc .wc-block-components-notice-banner { border-radius: 4px; }
.nme-contenido-wc .wc-block-components-radio-control__option, .nme-contenido-wc .wc-block-components-radio-control-accordion-option { border-radius: 4px; }
.nme-contenido-wc a:not(.wc-block-components-button):not(.wc-block-components-product-name) { color: var(--wp--preset--color--azul); }
.woocommerce-account .nme-contenido-wc .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
@media (min-width: 782px) { .woocommerce-account.logged-in .nme-contenido-wc .woocommerce { grid-template-columns: 240px minmax(0, 1fr); gap: 48px; } }
.nme-contenido-wc .woocommerce-MyAccount-navigation { margin: 0; float: none; width: auto; }
.nme-contenido-wc .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--nme-filete); }
.nme-contenido-wc .woocommerce-MyAccount-navigation li { margin: 0; border-bottom: 1px solid var(--nme-filete); }
.nme-contenido-wc .woocommerce-MyAccount-navigation a { display: flex; align-items: center; min-height: 48px; padding: 0 4px; color: var(--wp--preset--color--tinta); text-decoration: none; font-weight: 500; }
.nme-contenido-wc .woocommerce-MyAccount-navigation li.is-active a { color: var(--wp--preset--color--azul); box-shadow: inset 2px 0 0 var(--wp--preset--color--turquesa); padding-left: 12px; }
.nme-contenido-wc .woocommerce-MyAccount-navigation a:hover { color: var(--wp--preset--color--azul); background: var(--wp--preset--color--hueso); }
.nme-contenido-wc .woocommerce-MyAccount-content { float: none; width: auto; min-width: 0; }
.nme-contenido-wc .u-columns { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
@media (min-width: 782px) { .nme-contenido-wc .u-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.nme-contenido-wc .u-column1, .nme-contenido-wc .u-column2 { float: none; width: auto; }
.nme-contenido-wc form.woocommerce-form, .nme-contenido-wc form.edit-account, .nme-contenido-wc .woocommerce-address-fields { padding: 24px; border: 1px solid var(--nme-filete); border-radius: 6px; margin: 0; }
.nme-contenido-wc .woocommerce-form h2, .nme-contenido-wc .u-column1 > h2, .nme-contenido-wc .u-column2 > h2, .nme-contenido-wc .woocommerce-MyAccount-content h2, .nme-contenido-wc .woocommerce-MyAccount-content h3 { font-size: clamp(1.25rem, 1.1rem + .6vw, 1.5rem); }
.nme-contenido-wc .woocommerce form .form-row { margin: 0 0 16px; padding: 0; }
.nme-contenido-wc .woocommerce form .form-row label { display: block; margin-bottom: 6px; font-size: .875rem; font-weight: 500; }
.nme-contenido-wc .woocommerce input.input-text, .nme-contenido-wc .woocommerce select, .nme-contenido-wc .woocommerce textarea { width: 100%; min-height: 48px; padding: 8px 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; color: var(--wp--preset--color--tinta); font: 400 1rem/1.5 var(--wp--preset--font-family--inter); box-sizing: border-box; }
.nme-contenido-wc .woocommerce button.button, .nme-contenido-wc .woocommerce a.button, .nme-contenido-wc .woocommerce input.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 24px; border: 1px solid var(--wp--preset--color--azul); border-radius: 4px; background: var(--wp--preset--color--azul); color: #fff; font: 500 .9375rem/1.2 var(--wp--preset--font-family--inter); text-decoration: none; cursor: pointer; }
.nme-contenido-wc .woocommerce button.button:hover, .nme-contenido-wc .woocommerce a.button:hover, .nme-contenido-wc .woocommerce input.button:hover { background: var(--wp--preset--color--azul-hover); border-color: var(--wp--preset--color--azul-hover); color: #fff; }
.nme-contenido-wc .woocommerce table.shop_table { width: 100%; border-collapse: collapse; border: 1px solid var(--nme-filete); border-radius: 0; font-size: .9375rem; }
.nme-contenido-wc .woocommerce table.shop_table th, .nme-contenido-wc .woocommerce table.shop_table td { padding: 12px 16px; border: 0; border-bottom: 1px solid var(--nme-filete); text-align: left; }
.nme-contenido-wc .woocommerce table.shop_table th { background: var(--wp--preset--color--hueso); font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-contenido-wc .woocommerce-message, .nme-contenido-wc .woocommerce-info, .nme-contenido-wc .woocommerce-error { margin: 0 0 24px; padding: 14px 16px 14px 20px; border: 0; border-left: 3px solid var(--wp--preset--color--turquesa); border-radius: 0; background: var(--wp--preset--color--hueso); color: var(--wp--preset--color--tinta); list-style: none; }
.nme-contenido-wc .woocommerce-error { border-left-color: #B42318; }
.nme-contenido-wc .woocommerce-message::before, .nme-contenido-wc .woocommerce-info::before, .nme-contenido-wc .woocommerce-error::before { display: none; }

/* ----- Blog, archivos y búsqueda ----- */
.nme-buscador { margin-top: 24px; max-width: 640px; }
.nme-buscador .wp-block-search__inside-wrapper { display: flex; gap: 8px; }
.nme-buscador .wp-block-search__input { flex: 1 1 auto; min-width: 0; background: #fff; color: var(--wp--preset--color--tinta); font: 400 1rem/1.4 var(--wp--preset--font-family--inter); }
.nme-buscador .wp-block-search__button { margin-left: 0; padding: 0 24px; cursor: pointer; font: 500 .9375rem/1 var(--wp--preset--font-family--inter); }
.nme-buscador .wp-block-search__button:hover { background: var(--wp--preset--color--azul-hover); }
.nme-pildoras { gap: 8px; margin-top: 24px; }
.nme-pildoras > * { margin: 0; }
.nme-pildoras__lista, .nme-pildoras__lista .wp-block-term-template { display: contents; }
.nme-pildoras__lista .wp-block-term-template > li { list-style: none; }
.nme-pildoras__lista .wp-block-term-template > li { margin: 0; }
.nme-pildora { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 14px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; font-size: .875rem; font-weight: 500; line-height: 1; transition: background-color var(--nme-dur), border-color var(--nme-dur); }
.nme-pildora a { display: inline-flex; align-items: center; min-height: 40px; color: var(--wp--preset--color--tinta); text-decoration: none; }
.nme-pildora:hover { background: var(--wp--preset--color--hueso); border-color: var(--wp--preset--color--azul); }
.nme-pildora:hover a { color: var(--wp--preset--color--azul); }
.nme-pildora .wp-block-term-count { margin: 0; color: var(--wp--preset--color--tinta-2); font-size: .8125rem; font-weight: 400; font-variant-numeric: tabular-nums; }
.nme-pildora p, p.nme-pildora { margin: 0; }
.nme-listado { margin-top: 0; }
.nme-listado .wp-block-post-template.nme-rejilla { margin-bottom: 32px; }
.nme-tarjeta { gap: 0; padding: 0 0 24px; background: #fff; transition: background-color var(--nme-dur); }
.nme-tarjeta:hover { background: var(--wp--preset--color--hueso); }
.nme-tarjeta > * { margin-block: 0 !important; }
.nme-tarjeta > .nme-tarjeta__img { margin-bottom: 20px !important; border-bottom: 1px solid var(--nme-filete); background: var(--wp--preset--color--hueso); }
.nme-tarjeta > .nme-tarjeta__img img { width: 100%; height: auto; }
.nme-tarjeta__meta { gap: 4px 12px; align-items: center; font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-tarjeta__meta > * { margin: 0 !important; }
.nme-tarjeta__meta .wp-block-post-date { font-variant-numeric: tabular-nums; }
.nme-tarjeta > .nme-etq { margin-bottom: 0 !important; }
.nme-tarjeta__titulo { margin-top: 12px !important; }
.nme-tarjeta__texto { margin-top: 12px !important; }
.nme-tarjeta__texto p { margin: 0; }
.nme-tarjeta__mas { margin-top: auto !important; padding-top: 12px; }
.nme-tarjeta__mas a { min-height: 44px; }
.nme-tarjeta__titulo a:focus-visible, .nme-tarjeta__mas a:focus-visible { outline-offset: 2px; }

/* ----- Entrada ----- */
.nme-entrada__meta { margin-top: 16px; }
.nme-entrada__meta > * { margin: 0; }
.nme-entrada__meta > * + *::before { content: "·"; margin-right: 16px; color: var(--wp--preset--color--turquesa-texto); }
.nme-entrada__meta > * + * { display: inline-flex; }
.nme-pagina__imagen { margin-block: 0 40px !important; }
.nme-prosa a { text-underline-offset: 3px; }
.nme-prosa blockquote { margin-block: 32px; padding: 0 0 0 24px; border-left: 2px solid var(--wp--preset--color--turquesa); }
.nme-prosa table { display: block; width: 100%; max-width: 100%; overflow-x: auto; border-collapse: collapse; font-size: .9375rem; }
.nme-prosa figure.wp-block-table, .nme-prosa .wp-block-table { overflow-x: auto; margin-inline: 0; }
.nme-prosa th, .nme-prosa td { padding: 10px 14px; border: 1px solid var(--nme-filete); text-align: left; vertical-align: top; }
.nme-prosa th { background: var(--wp--preset--color--hueso); font-weight: 600; }
.nme-prosa img { height: auto; }
.nme-prosa ul, .nme-prosa ol { padding-left: 1.4em; }
.nme-prosa li + li { margin-top: 6px; }
.nme-prosa hr { border: 0; border-top: 1px solid var(--nme-filete); margin-block: 40px; }
.nme-entrada__pie { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--nme-filete); gap: 16px 32px; }
.nme-entrada__pie > * { margin: 0; }
.nme-entrada__etiquetas { font-size: .875rem; color: var(--wp--preset--color--tinta-2); }
.nme-entrada__etiquetas a { color: inherit; }
.nme-compartir { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.nme-compartir__rotulo { margin-right: 4px; font: 500 var(--wp--preset--font-size--etiqueta)/1.4 var(--wp--preset--font-family--inter); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--tinta-2); }
.nme-compartir__boton { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--nme-filete); border-radius: 4px; background: #fff; color: var(--wp--preset--color--azul); cursor: pointer; transition: background-color var(--nme-dur), border-color var(--nme-dur); }
.nme-compartir__boton:hover { background: var(--wp--preset--color--hueso); border-color: var(--wp--preset--color--azul); }
.nme-compartir__boton.is-copiado { border-color: var(--wp--preset--color--turquesa); background: var(--wp--preset--color--hueso); }
.nme-entrada__relacionados { margin-top: 48px; }
.nme-entrada__relacionados > * { margin: 0; }
.nme-entrada__nav { margin-top: 48px; gap: 16px 32px; }
.nme-entrada__nav > * { margin: 0; max-width: 46%; font-size: .9375rem; }
.nme-entrada__nav a { display: inline-flex; align-items: center; min-height: 44px; }
.nme-comentarios { margin-top: 64px; padding-top: 32px; border-top: 1px solid var(--nme-filete); }
.nme-comentarios .wp-block-comments-title { font-size: clamp(1.25rem, 1.1rem + .6vw, 1.5rem); }
.nme-comentario { padding-block: 20px; border-bottom: 1px solid var(--nme-filete); font-size: .9375rem; }
.nme-comentario > * { margin-block: 0; }
.nme-comentario > * + * { margin-top: 8px; }
.nme-comentarios input[type=text], .nme-comentarios input[type=email], .nme-comentarios input[type=url], .nme-comentarios textarea { width: 100%; min-height: 48px; padding: 8px 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; font: 400 1rem/1.5 var(--wp--preset--font-family--inter); box-sizing: border-box; }
.nme-comentarios input[type=submit], .nme-comentarios .wp-block-button__link { min-height: 48px; padding: 0 24px; border: 0; border-radius: 4px; background: var(--wp--preset--color--azul); color: #fff; font: 500 .9375rem/1 var(--wp--preset--font-family--inter); cursor: pointer; }
.nme-comentarios label { display: block; margin-bottom: 4px; font-size: .875rem; font-weight: 500; }
.nme-comentarios .comment-form-cookies-consent label { display: inline; }

/* Principios activos y productos de una entrada (los pinta nme-nucleo) */
.nme-main .nme-post-related { max-width: none; margin: 0; padding: 0; }
.nme-main .nme-post-related__section + .nme-post-related__section { margin-top: 40px; }
.nme-main .nme-post-related__title { position: relative; margin: 0 0 24px; padding: 24px 0 0; border: 0; border-top: 1px solid var(--nme-filete); font-family: var(--wp--preset--font-family--poppins); font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); font-weight: 500; line-height: 1.15; letter-spacing: -.028em; color: var(--wp--preset--color--azul); }
.nme-main .nme-post-related__title::before { content: ""; position: absolute; top: -2px; left: 0; width: 40px; height: 3px; background: var(--wp--preset--color--turquesa); }
.nme-main .nme-post-related__grid { display: grid; gap: 0; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); border-top: 1px solid var(--nme-filete); border-left: 1px solid var(--nme-filete); }
.nme-main .nme-post-related__card { padding: 20px; border: 0; border-right: 1px solid var(--nme-filete); border-bottom: 1px solid var(--nme-filete); border-radius: 0; box-shadow: none; transform: none; background: #fff; }
.nme-main .nme-post-related__card:hover { background: var(--wp--preset--color--hueso); border-color: var(--nme-filete); box-shadow: none; transform: none; }
.nme-main .nme-post-related__card-thumb { margin-bottom: 12px; background: var(--wp--preset--color--hueso); mix-blend-mode: multiply; }
.nme-main .nme-post-related__card-title { color: var(--wp--preset--color--tinta); font-size: .9375rem; font-weight: 600; }
.nme-main .nme-post-related__card-meta { font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-post-related__card-price { color: var(--wp--preset--color--tinta); font-size: 1rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.nme-main .nme-post-related__card-price small { font-size: .75rem; font-weight: 400; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-post-related__card-price del { font-weight: 400; color: var(--wp--preset--color--tinta-2); }
.nme-main .nme-post-related__card-price ins { text-decoration: none; background: none; }
.nme-main .nme-post-related__card-price .screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* ----- 404 ----- */
.nme-404 .wp-block-buttons { margin-top: 24px; }
.nme-404 .nme-buscador { margin-top: 32px; }

/* =====================================================================================================
   REVISIÓN QA DE LA PORTADA (2026-10-19) · hallazgos de capture/fase4/qa-portada.md
   ===================================================================================================== */

/* QA 1 · el desenfoque de la cabecera va a un pseudoelemento: con backdrop-filter en el propio elemento, el
   panel del menú móvil (position:fixed) quedaba encerrado en los 68 px de la cabecera. */
.nme-cabecera { background: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.nme-cabecera::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(255, 255, 255, .94); -webkit-backdrop-filter: saturate(1.4) blur(10px); backdrop-filter: saturate(1.4) blur(10px); pointer-events: none; }

/* QA 9 y 10 · submenús: la flecha pertenece a su opción (4-6 px del texto, 20 px hasta la siguiente) y el panel
   nace alineado a la izquierda de su opción. Se abren al pasar el ratón, al enfocar y con clic. */
.nme-nav .wp-block-navigation__submenu-icon { margin-left: 4px !important; }
.nme-nav .wp-block-navigation-item.has-child > .wp-block-navigation-item__content { padding-right: 0; }
.nme-nav .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-icon { margin-left: 2px !important; width: 28px; height: 44px; min-width: 28px; }
@media (min-width: 1000px) {
	.nme-nav .wp-block-navigation__container { gap: 20px; }
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle { padding: 0 2px 0 12px; }
	.nme-nav .wp-block-navigation__submenu-container { left: 0 !important; right: auto !important; }
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item:last-child > .wp-block-navigation__submenu-container { left: auto !important; right: 0 !important; }
}

/* QA 16 · el menú en línea pasa a escritorio desde 1000 px (arriba, en la cabecera); el hero a dos columnas desde 960 px y
   los productos a cuatro desde 900 px. */
@container nme-hero (min-width: 960px) and (max-width: 1079px) {
	.wp-block-nme-hero .nme-hero__in { grid-template-columns: minmax(0, 1fr) minmax(0, 1.02fr); grid-template-rows: 1fr auto; grid-template-areas: "texto ficha" "otros ficha"; column-gap: clamp(32px, 4vw, 56px); row-gap: 32px; }
	.wp-block-nme-hero .nme-hero__in > :not(.nme-hero__texto):not(.nme-hero__ficha) { grid-column: 1; align-self: end; }
	.wp-block-nme-hero .nme-hero__texto { align-self: center; padding-block: 32px; }
	.wp-block-nme-hero .nme-hero__ficha { grid-template-columns: minmax(0, 1fr); }
	.wp-block-nme-hero .nme-hero__foto { aspect-ratio: 16 / 9; }
	.wp-block-nme-hero .wp-block-nme-hero-entrada { padding-top: 16px; }
}
@media (min-width: 900px) {
	.nme-productos:not(.nme-productos--listado) .wc-block-product-template.nme-rejilla { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* QA 2 · Instagram: la primera publicación medía 0 px (el plugin deja una columna explícita) */
@media (max-width: 599px) {
	.nme-ig #sb_instagram #sbi_images { grid-template-columns: none !important; grid-auto-columns: clamp(150px, 44vw, 220px) !important; max-width: 100%; }
}
/* QA 18 · Instagram: imágenes 1:1 sin recorte, con borde y foco como el resto del tema */
.nme-ig #sb_instagram .sbi_photo { aspect-ratio: 1 / 1; outline: 1px solid var(--nme-filete); outline-offset: -1px; }
.nme-ig a:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa-texto); outline-offset: 3px; }

/* QA 4 y 5 · barra flotante: el contenido deja sitio debajo (el alto lo mide tienda.js) y los elementos con foco
   no quedan tapados por ella */
html { scroll-padding-bottom: calc(var(--nme-barra-alto, 0px) + 24px); }
/* el pie añade el alto de la barra al final para que nada quede tapado */
.nme-pie { padding-block-end: calc(64px + var(--nme-barra-alto, 0px)); }
@media (max-width: 767px) {
	body .nme-barra { flex-direction: row; justify-content: space-between; gap: 8px; padding: 8px 48px 8px 12px; text-align: left; font-size: 13px; line-height: 1.3; }
	body .nme-barra__texto { margin: 0; flex: 1 1 auto; min-width: 0; text-wrap: balance; }
	body .nme-barra__boton { flex: none; white-space: nowrap; padding-inline: 12px; }
}
body .nme-barra__cerrar { width: 44px; height: 44px; }
@media (min-width: 768px) {
	body .nme-barra { left: 50%; right: auto; width: min(100% - 32px, 760px); transform: translateX(-50%); bottom: 12px; border-radius: 6px; }
}
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) { body .nme-barra { animation: none; } }

/* QA 6 y 7 · enlaces con flecha y precios: nunca una flecha, un símbolo o un precio solos en la línea siguiente */
.wp-block-nme-hero .wp-block-nme-hero-entrada a, .nme-enlace a, a.nme-enlace { white-space: nowrap; }
.wp-block-button__link { text-wrap: balance; }
.wp-block-nme-hero .nme-hero-entrada__cuerpo p { text-wrap: pretty; }
.wp-block-nme-hero .wp-block-nme-hero-entrada .nme-hero-entrada__cuerpo > p.nme-hero-entrada__enlace { text-wrap: nowrap; }

/* QA 26 · palabras sueltas al final de los párrafos cortos */
:where(p, li, figcaption, blockquote, .wp-block-paragraph) { text-wrap: pretty; }
:where(h1, h2, h3, h4, .wp-block-heading) { text-wrap: balance; }

/* QA 8 · pie: «18:00 h» no se parte */
.nme-pie__lista li { text-wrap: pretty; }
.nme-pie__lista a[href^="mailto:"] { font-size: inherit; }

/* QA 11 · los elementos con foco quedan a la vista bajo la cabecera y la barra */
html { scroll-padding-top: 84px; }

/* QA 12 · estados «pegajosos» en pantallas táctiles: el :hover del test y de la FAQ solo con ratón */
@media (hover: none) {
	.nme-portada .wp-block-nme-test .nme-quiz-option:hover { border-color: var(--wp--preset--color--filete); color: var(--wp--preset--color--tinta); }
	.nme-portada .wp-block-nme-test .nme-quiz-option:hover::before { background: #fff; border-color: var(--wp--preset--color--azul); }
	.nme-portada .wp-block-nme-test .nme-quiz-option:hover::after { transform: none; }
	.nme-acordeon .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title { text-decoration: none; }
}

/* QA 13 · títulos y líneas de producto equilibrados */
.nme-prod__nombre, .nme-prod__nombre a { text-wrap: balance; }
.nme-prod__linea { text-wrap: pretty; font-size: .875rem; }

/* QA 14 y 15 · 320 px: productos y confianza en una columna, botón sin partir, caja del test más alta */
@media (max-width: 359px) {
	.nme-productos .wc-block-product-template.nme-rejilla { grid-template-columns: minmax(0, 1fr); }
	.nme-confianza__lista { grid-template-columns: minmax(0, 1fr); }
	.nme-confianza__item:nth-child(even) { border-left: 0; }
	.nme-confianza__item:nth-child(n+2) { border-top: 1px solid var(--nme-filete); }
	.nme-confianza__item:nth-child(odd) { padding-left: 0; }
}
.wp-block-nme-test .nme-quiz-textarea { min-height: 7.5em; }

/* QA 17 · evidencia: categoría legible y pies alineados */
.nme-ref__cat { font-size: .75rem; text-wrap: balance; }
.nme-refs .wp-block-post-template > .wp-block-post { display: flex; }
.nme-refs .wp-block-post-template > .wp-block-post > .nme-ref { flex: 1 1 auto; }

/* QA 22 · principios: dos columnas solo cuando caben las tres en fila */
@media (min-width: 600px) and (max-width: 899px) { .nme-principios__lista { grid-template-columns: minmax(0, 1fr); } .nme-principios__lista > :last-child { grid-column: auto; } }

/* QA 24 · incentivo del test: el texto se alinea con la viñeta */
.wp-block-nme-test .nme-test__incentivo { display: flex; align-items: baseline; gap: 12px; }
.wp-block-nme-test .nme-test__incentivo::before { flex: none; margin-right: 0; }

/* QA 25 · opciones del test: columnas con ancho mínimo para que las etiquetas no se partan */
@container nme-test (min-width: 600px) { .wp-block-nme-test .nme-quiz-options { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); } }

/* QA 27 · títulos de producto del resultado del test */
.wp-block-nme-test .nme-quiz-product-title { text-wrap: balance; }

/* QA 28 y 31 · iconos de la cabecera a 20 px y zonas táctiles de 44 px */
.nme-cabecera .wp-block-search__button svg, .nme-cabecera .wc-block-customer-account svg, .nme-cabecera .wc-block-mini-cart__icon { width: 22px; height: 22px; }
.nme-logo a { display: block; min-height: 44px; }
.nme-logo img { margin-block: 5px; }
.nme-cabecera .wc-block-customer-account a { min-width: 44px; min-height: 44px; }
.nme-pie__lista a { display: flex; min-width: 44px; min-height: 44px; }
@media (min-width: 768px) { .nme-pie__lista a { min-height: 40px; } }
.nme-redes .wp-block-social-link-anchor { min-height: 44px; gap: 6px; }
.nme-redes { row-gap: 0 !important; }

/* QA 1 (cont.) · menú abierto: encima de la barra flotante y del asistente, y las opciones alineadas a la izquierda */
.nme-cabecera { z-index: 9995; }
.nme-cabecera:has(.is-menu-open) { z-index: 2147483000; }
.nme-nav .is-menu-open .wp-block-navigation__responsive-container-content,
.nme-nav .is-menu-open .wp-block-navigation__container { align-items: stretch; justify-content: flex-start; }
.nme-nav .is-menu-open .wp-block-navigation-item { width: 100%; justify-content: flex-start; text-align: left; align-items: flex-start; }
.nme-nav .is-menu-open .wp-block-navigation-item__content { justify-content: flex-start; width: 100%; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container { align-items: stretch; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container { display: flex; flex-direction: column; align-items: flex-start !important; justify-content: flex-start; width: 100%; margin: 0 !important; padding: 0 0 8px 12px !important; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { width: 100%; align-items: flex-start; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { width: auto; }
.nme-nav .is-menu-open .wp-block-navigation-item.has-child { align-items: stretch !important; }
.nme-nav .is-menu-open .wp-block-navigation__submenu-container { width: 100% !important; min-width: 0 !important; max-width: none !important; position: static !important; box-shadow: none !important; border: 0 !important; background: transparent !important; }

/* Enlaces a redes del médico: legibles pero discretos (13 px; WordPress los dejaba al 65 %, 8,45 px). Nota del dueño 2026-10-19 */
.wp-block-social-links.nme-redes .wp-social-link .wp-block-social-link-label { font-size: 1em; }
@media (min-width: 1000px) and (max-width: 1199px) {
	.nme-cabecera__fila { gap: 8px; }
	.nme-nav .wp-block-navigation__container { gap: 4px; }
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { padding: 0 8px; }
	.nme-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle { padding: 0 2px 0 8px; }
	.nme-cabecera__fila > .nme-cuenta, .nme-cabecera__fila > .nme-carrito { margin-left: 0; }
}

/* ----- Fichas: principio activo, tratamiento, evidencia, indicación, familia ----- */
.nme-main--ficha { counter-reset: nme-sec; }
.nme-main--ficha .nme-sec--ficha { padding-block: clamp(32px, 4vw, 56px) 0; }
.nme-main--ficha .nme-sec--ficha:last-of-type { padding-bottom: clamp(16px, 2vw, 32px); }
.nme-main--ficha .nme-sec--ficha .nme-cab { margin-bottom: clamp(24px, 3vw, 40px) !important; }
.nme-ficha-hero { gap: clamp(24px, 4vw, 64px); align-items: center; margin-bottom: 0 !important; }
.nme-ficha-hero > .wp-block-column { min-width: 0; }
.nme-ficha-hero .nme-pagina__cab { margin-bottom: 0 !important; border-bottom: 0; padding-bottom: 0; }
.nme-ficha-hero .nme-pagina__imagen { margin: 0 !important; }
.nme-ficha-hero .nme-pagina__imagen img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid var(--nme-filete); }
@media (min-width: 782px) { .nme-ficha-hero > .wp-block-column:first-child { flex: 1 1 0 !important; } .nme-ficha-hero > .wp-block-column:last-child { flex: 0 0 min(42%, 520px) !important; } }
.nme-ficha-cab__cientifico { margin-top: 12px !important; font-size: var(--wp--preset--font-size--entradilla); color: var(--wp--preset--color--tinta); }
.nme-ficha-cab__sino { margin-top: 16px !important; font-size: .9375rem; color: var(--wp--preset--color--tinta-2); }
.nme-ficha-cab__sino strong { color: var(--wp--preset--color--tinta); font-weight: 600; }
.nme-ficha-cab__meta { margin-top: 12px !important; font-size: .9375rem; color: var(--wp--preset--color--tinta-2); }
.nme-ficha-cab__cuentas { margin-top: 16px !important; font-size: .9375rem; color: var(--wp--preset--color--tinta-2); }
.nme-ficha-cab__cuentas strong { color: var(--wp--preset--color--azul); font-variant-numeric: tabular-nums; }
.nme-ficha-cab__familia { display: inline-flex; margin-top: 16px !important; align-items: center; gap: 6px; min-height: 36px; padding: 0 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; font-size: .8125rem; color: var(--wp--preset--color--tinta-2); }
.nme-ficha-cab__familia a { color: var(--wp--preset--color--tinta); font-weight: 600; text-decoration: none; }
.nme-ficha-cab__familia a:hover { color: var(--wp--preset--color--azul); text-decoration: underline; }
.nme-ficha-cab__familia .wp-block-post-terms__prefix { color: inherit; }
.nme-pagina__cab .nme-acciones { margin-top: 24px; }
.nme-ficha-cuerpo { margin-top: clamp(24px, 3vw, 40px) !important; }
.nme-ficha-cuerpo .wp-block-tabs { gap: 0; }
.nme-ficha-cuerpo .nme-pestanas .wp-block-tab-list { overflow-x: auto; flex-wrap: nowrap; scrollbar-width: thin; }
.nme-ficha-cuerpo .nme-pestanas .wp-block-tab-list button { flex: none; white-space: nowrap; }
.nme-ficha-cuerpo .wp-block-tab-panel { padding-top: 32px; max-width: 900px; line-height: 1.7; }
.nme-ficha-cuerpo .wp-block-tab-panel > * { margin-block: 0; }
.nme-ficha-cuerpo .wp-block-tab-panel h2 { margin: 0 0 20px; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height: 1.15; }
.nme-ficha-cuerpo .wp-block-tab-panel h3 { margin: 28px 0 12px; font-size: 1.125rem; }
.nme-ficha-cuerpo .wp-block-tab-panel p, .nme-ficha-cuerpo .wp-block-tab-panel ul, .nme-ficha-cuerpo .wp-block-tab-panel ol { margin-block: 0 14px; }
.nme-ficha-cuerpo .wp-block-tab-panel ul, .nme-ficha-cuerpo .wp-block-tab-panel ol { padding-left: 1.4em; }
.nme-ficha-cuerpo .wp-block-tab-panel li + li { margin-top: 6px; }
.nme-ficha-cuerpo .wp-block-tab-panel table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.nme-ficha-cuerpo .wp-block-tab-panel th, .nme-ficha-cuerpo .wp-block-tab-panel td { padding: 8px 12px; border: 1px solid var(--nme-filete); text-align: left; vertical-align: top; }
.nme-ficha-cuerpo ul.nme-beneficios { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 0; padding: 0; list-style: none; border-top: 1px solid var(--nme-filete); border-left: 1px solid var(--nme-filete); }
.nme-ficha-cuerpo ul.nme-beneficios li { margin: 0; padding: 16px 16px 16px 40px; position: relative; border-right: 1px solid var(--nme-filete); border-bottom: 1px solid var(--nme-filete); font-size: .9375rem; line-height: 1.5; }
.nme-ficha-cuerpo ul.nme-beneficios li::before { content: ""; position: absolute; left: 16px; top: 22px; width: 10px; height: 6px; border-left: 2px solid var(--wp--preset--color--turquesa-texto); border-bottom: 2px solid var(--wp--preset--color--turquesa-texto); transform: rotate(-45deg); }

/* Tarjetas de datos (principios activos, indicaciones, estudios, tratamientos relacionados) */
.nme-datos { list-style: none; }
.nme-datos > li { background: #fff; }
.nme-datos > li:hover { background: var(--wp--preset--color--hueso); }
.nme-dato { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 24px; color: inherit; text-decoration: none; }
.nme-dato__titulo { font: 600 1.0625rem/1.3 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; color: var(--wp--preset--color--azul); overflow-wrap: break-word; }
.nme-dato:hover .nme-dato__titulo { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--wp--preset--color--filete-fuerte); }
.nme-dato__texto { font-size: .9375rem; line-height: 1.55; color: var(--wp--preset--color--tinta-2); }
.nme-dato__pie { margin-top: auto; padding-top: 12px; border-top: 1px dashed var(--nme-filete); font-size: .8125rem; font-style: italic; color: var(--wp--preset--color--tinta-2); }
.nme-dato__texto:last-child { margin-bottom: 0; }
.nme-dato .nme-etq { font-size: .6875rem; }

/* Preguntas frecuentes de las fichas (details nativo) */
.nme-faq { border-top: 1px solid var(--nme-filete); }
.nme-faq__item { border-bottom: 1px solid var(--nme-filete); }
.nme-faq__item > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 12px 0; list-style: none; cursor: pointer; font: 500 1.0625rem/1.4 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; color: var(--wp--preset--color--azul); }
.nme-faq__item > summary::-webkit-details-marker { display: none; }
.nme-faq__item > summary::after { content: "+"; flex: none; font: 400 1.5rem/1 var(--wp--preset--font-family--inter); color: var(--wp--preset--color--turquesa-texto); }
.nme-faq__item[open] > summary::after { content: "−"; }
.nme-faq__resp { padding: 0 0 20px; max-width: 70ch; color: var(--wp--preset--color--tinta-2); }

/* Barra de búsqueda y orden de los archivos */
.nme-barra-archivo { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 0 32px; }
.nme-barra-archivo input[type=search] { flex: 1 1 260px; min-width: 0; max-width: 520px; min-height: 48px; padding: 0 12px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; color: var(--wp--preset--color--tinta); font: 400 1rem/1.4 var(--wp--preset--font-family--inter); }
.nme-barra-archivo button { min-height: 48px; padding: 0 24px; border: 0; border-radius: 4px; background: var(--wp--preset--color--azul); color: #fff; font: 500 .9375rem/1 var(--wp--preset--font-family--inter); cursor: pointer; }
.nme-barra-archivo button:hover { background: var(--wp--preset--color--azul-hover); }
.nme-barra-archivo__orden { display: inline-flex; gap: 0; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; overflow: hidden; }
.nme-barra-archivo__orden a { display: inline-flex; align-items: center; min-height: 46px; padding: 0 16px; color: var(--wp--preset--color--tinta); font-size: .875rem; font-weight: 500; text-decoration: none; background: #fff; }
.nme-barra-archivo__orden a + a { border-left: 1px solid var(--wp--preset--color--filete-fuerte); }
.nme-barra-archivo__orden a[aria-current="true"] { background: var(--wp--preset--color--azul); color: #fff; }
.nme-barra-archivo__orden a:not([aria-current]):hover { background: var(--wp--preset--color--hueso); }
.nme-pildoras--temas { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.nme-pildoras--temas .nme-pildora { text-decoration: none; color: var(--wp--preset--color--tinta); }
.nme-pildora[aria-current="true"] { background: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--azul); color: #fff; }
.nme-pildora[aria-current="true"] a, .nme-pildora[aria-current="true"] .wp-block-term-count { color: #fff; }
.nme-tarjeta__fuente { font-size: .8125rem; font-style: italic; color: var(--wp--preset--color--tinta-2); }
.nme-tarjeta__fuente:empty { display: none; }
.nme-tarjeta > .nme-tarjeta__fuente { margin-top: 8px !important; }

/* Evidencia: resumen, traducción, cita */
.nme-resumen { max-width: 860px; }
.nme-resumen small { font-weight: 400; font-size: .5em; color: var(--wp--preset--color--tinta-2); letter-spacing: 0; }
.nme-resumen__es { margin-top: 32px; padding-left: 20px; border-left: 2px solid var(--wp--preset--color--turquesa); }
.nme-resumen a, .nme-ev-cta { color: var(--wp--preset--color--azul); font-weight: 500; }
.nme-cita-estudio { max-width: 860px; margin-top: 40px; padding: 20px 24px; background: var(--wp--preset--color--hueso); border: 1px solid var(--nme-filete); border-radius: 6px; }
.nme-cita-estudio h3 { margin: 0 0 8px; font-size: 1rem; }
.nme-cita-estudio p { margin: 0; font-size: .9375rem; color: var(--wp--preset--color--tinta-2); overflow-wrap: anywhere; }
.nme-prosa--ficha { max-width: 860px; margin-block: 40px; }

.nme-ficha-ancho > * { max-width: none; }
.nme-ficha-ancho { margin-block: 0 24px; }
.nme-ficha-ancho > .nme-resumen, .nme-ficha-ancho > .nme-cita-estudio, .nme-ficha-ancho > .nme-prosa { margin-inline: 0; }
.nme-ficha-ancho > .nme-datos { margin-bottom: 0; }

/* QA 20 · móvil y tableta: la foto del hero se queda fija bajo la cabecera mientras se recorren las entradas, para que se vea el cambio al tocar */
@container nme-hero (max-width: 1079px) {
	.wp-block-nme-hero .nme-hero__ficha { overflow: clip; }
	.wp-block-nme-hero .nme-hero__ficha .wp-block-image { position: sticky; top: calc(var(--nme-alto-cab) + 4px); z-index: 3; }
	.wp-block-nme-hero .nme-hero__foto { box-shadow: 0 8px 20px -12px rgba(14, 34, 48, .35); }
}

/* Cuenta: títulos de bloque (Acceder, Registrarse, pedidos…) al tamaño de los títulos de ficha */
.nme-contenido-wc .woocommerce h2:not(.wc-block-components-title) { margin: 0 0 16px; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height: 1.15; }
.nme-contenido-wc .woocommerce h3 { font-size: 1.125rem; }
@media (min-width: 600px) and (max-width: 1079px) { .nme-pie__rejilla { grid-template-columns: 1fr 1.4fr 1fr; } }
/* Enlaces a redes del médico en una sola línea en escritorio, discretos (nota del dueño 2026-10-19) */
@media (min-width: 1024px) {
	.wp-block-social-links.nme-redes { flex-wrap: nowrap; width: max-content; max-width: none; column-gap: 12px !important; }
	.wp-block-social-links.nme-redes .wp-social-link .wp-block-social-link-label { font-size: 12px; }
	.wp-block-social-links.nme-redes svg { width: 14px; height: 14px; }
}

/* ===== Accesibilidad (axe, 2026-10-19): contraste en las tarjetas clásicas de WooCommerce (productos de venta cruzada de la ficha) ===== */
.nme-main span.onsale { background: var(--wp--preset--color--azul); color: var(--wp--preset--color--blanco); }
.nme-main ul.products li.product .price del { opacity: 1; color: var(--wp--preset--color--tinta-2); }

/* ===== Lote 8 (2026-10-19, nota del dueño): calculadora y analizador del plugin NME IA con el estilo nuevo ===== */
/* El plugin usa variables del tema antiguo: se les dan los valores del tema nuevo */
:root {
	--nme-primary: var(--wp--preset--color--azul);
	--nme-accent: var(--wp--preset--color--turquesa-texto);
	--nme-text: var(--wp--preset--color--tinta);
	--nme-muted: color-mix(in srgb, var(--wp--preset--color--tinta) 72%, #fff);
	--nme-border: var(--wp--preset--color--filete);
	--nme-bg: #fff;
	--nme-bg-soft: var(--wp--preset--color--hueso);
	--nme-font-h: var(--wp--preset--font-family--poppins);
	--nme-font-b: var(--wp--preset--font-family--inter);
	--nme-font-ui: var(--wp--preset--font-family--inter);
	--nme-an-c: var(--wp--preset--color--azul);
	--c-primary: var(--wp--preset--color--azul);
}
/* Letras: Inter en todo, Poppins en títulos (el plugin fija Georgia y la letra del sistema en sus hojas) */
:is([class*="nme-calc"], [class*="nme-analiz"]),
:is([class*="nme-calc"], [class*="nme-analiz"]) :is(p, span, label, li, a, button, input, select, textarea, small, strong, em, td, th, div) {
	font-family: var(--wp--preset--font-family--inter) !important;
}
:is([class*="nme-calc"], [class*="nme-analiz"]) :is(h1, h2, h3, h4, h5, legend, .nme-analiz__title, .nme-analiz__step-title, [class*="title"]) {
	font-family: var(--wp--preset--font-family--poppins) !important;
	letter-spacing: -0.01em;
}
:is([class*="nme-calc"], [class*="nme-analiz"]) :is(code, pre, kbd, samp) { font-family: ui-monospace, Consolas, monospace !important; }

/* ===== Lote 8: submenús del menú superior que aguantan al pasar el cursor ===== */
@media (min-width: 1080px) {
	/* Puente invisible sobre el hueco entre la opción y su submenú */
	.nme-nav .has-child > .wp-block-navigation__submenu-container::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
	/* Al salir, el submenú espera casi un segundo antes de cerrarse; al entrar, se abre al momento */
	.nme-nav .has-child > .wp-block-navigation__submenu-container { transition: opacity .2s ease .8s, visibility 0s linear 1s !important; }
	.nme-nav .has-child:is(:hover, :focus-within) > .wp-block-navigation__submenu-container { transition-delay: 0s, 0s !important; }
	/* Que el tamaño no se recoja de golpe mientras se espera */
	.nme-nav .has-child > .wp-block-navigation__submenu-container { width: auto !important; height: auto !important; overflow: visible !important; }
	/* Con otro submenú abierto, el anterior se cierra sin esperar */
	.nme-nav .wp-block-navigation__container:has(> .has-child:hover) > .has-child:not(:hover) > .wp-block-navigation__submenu-container { transition-delay: 0s, 0s !important; }
}

/* ===== Lote 9 (2026-10-19, nota del dueño): banner de cookies (Complianz) con el estilo del tema y usable en móvil ===== */
body .cmplz-cookiebanner {
	--cmplz_button_accept_background_color: var(--wp--preset--color--azul) !important;
	--cmplz_button_accept_border_color: var(--wp--preset--color--azul) !important;
	--cmplz_button_accept_text_color: #fff !important;
	--cmplz_button_deny_background_color: #fff !important;
	--cmplz_button_deny_border_color: var(--wp--preset--color--filete-fuerte) !important;
	--cmplz_button_deny_text_color: var(--wp--preset--color--azul) !important;
	--cmplz_button_settings_background_color: #fff !important;
	--cmplz_button_settings_border_color: var(--wp--preset--color--filete-fuerte) !important;
	--cmplz_button_settings_text_color: var(--wp--preset--color--azul) !important;
	--cmplz_text_color: var(--wp--preset--color--tinta) !important;
	--cmplz_hyperlink_color: var(--wp--preset--color--azul) !important;
	--cmplz_banner_border_color: var(--wp--preset--color--filete) !important;
	font-family: var(--wp--preset--font-family--inter) !important;
	border: 1px solid var(--wp--preset--color--filete) !important;
	box-shadow: 0 12px 40px rgba(34, 78, 102, .18) !important;
}
body .cmplz-cookiebanner .cmplz-btn { font-family: var(--wp--preset--font-family--inter) !important; font-weight: 600 !important; border-radius: 6px !important; }
body .cmplz-cookiebanner .cmplz-btn:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa-texto) !important; outline-offset: 2px; }
@media (max-width: 767px) {
	/* Que quepa siempre en la parte visible (Safari en iPhone tapa el borde inferior con su barra) */
	body .cmplz-cookiebanner {
		left: 8px !important; right: 8px !important; width: auto !important; max-width: none !important;
		bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important; top: auto !important;
		max-height: calc(100dvh - 24px - env(safe-area-inset-bottom, 0px)) !important;
		overflow-y: auto !important; -webkit-overflow-scrolling: touch;
		padding: 14px 16px !important; row-gap: 10px !important; border-radius: 10px !important;
	}
	body .cmplz-cookiebanner .cmplz-header { min-height: 0 !important; margin: 0 !important; }
	body .cmplz-cookiebanner .cmplz-message { font-size: 14px !important; line-height: 1.5 !important; margin: 0 !important; }
	body .cmplz-cookiebanner .cmplz-buttons { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; }
	body .cmplz-cookiebanner .cmplz-buttons .cmplz-btn { width: 100% !important; min-height: 44px !important; margin: 0 !important; }
	body .cmplz-cookiebanner .cmplz-buttons .cmplz-view-preferences,
	body .cmplz-cookiebanner .cmplz-buttons .cmplz-save-preferences { grid-column: 1 / -1; }
}

/* ===== Lote 10 (2026-10-19, petición del dueño): icono de cookies abajo a la izquierda para volver a ver el banner ===== */
body:has(.cmplz-cookiebanner.cmplz-dismissed) #cmplz-manage-consent .cmplz-manage-consent {
	display: flex !important; align-items: center; justify-content: center;
	position: fixed !important; left: 16px !important; right: auto !important; top: auto !important;
	bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
	width: 44px !important; height: 44px !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important;
	border-radius: 50% !important; border: 1px solid var(--wp--preset--color--filete-fuerte) !important;
	background: #fff !important; box-shadow: 0 6px 18px rgba(34, 78, 102, .18) !important;
	font-size: 0 !important; color: transparent !important; line-height: 0 !important;
	transform: none !important; animation: none !important; z-index: 9995 !important; cursor: pointer;
}
body:has(.cmplz-cookiebanner.cmplz-dismissed) #cmplz-manage-consent .cmplz-manage-consent::before {
	content: ""; width: 22px; height: 22px; background: var(--wp--preset--color--azul);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5Zm-3.5 7a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Zm6 5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Zm-7 2.5a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5Zm-3.5 7a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Zm6 5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Zm-7 2.5a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
body:has(.cmplz-cookiebanner.cmplz-dismissed) #cmplz-manage-consent .cmplz-manage-consent:hover { border-color: var(--wp--preset--color--azul) !important; }
body:has(.cmplz-cookiebanner.cmplz-dismissed) #cmplz-manage-consent .cmplz-manage-consent:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa-texto) !important; outline-offset: 2px; }
/* Con el banner abierto, el icono no se ve */
body:has(.cmplz-cookiebanner.cmplz-show) #cmplz-manage-consent .cmplz-manage-consent { display: none !important; }
/* En móvil y tableta, por encima de la barra flotante (si está visible) */
@media (max-width: 1079px) {
	body:has(.nme-barra:not([hidden])) #cmplz-manage-consent .cmplz-manage-consent { bottom: calc(var(--nme-barra-alto, 67px) + 12px + env(safe-area-inset-bottom, 0px)) !important; }
}

/* ===== Lote 24 · auditoría visual (2026-10-23) ===== */

/* Menú: los grupos sin página propia son botones (antes, enlaces a «#») */
.nme-nav .nme-grupo { background: none; border: 0; padding: 0; margin: 0; font: inherit; color: inherit; cursor: pointer; text-align: left; }
.nme-nav .nme-grupo:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa); outline-offset: 2px; }
/* En el panel móvil los grupos se pliegan; «Tienda» empieza abierto (lo marca tienda.js) */
.nme-nav .is-menu-open .has-child > .wp-block-navigation__submenu-container { display: none !important; }
.nme-nav .is-menu-open .has-child.nme-abierto > .wp-block-navigation__submenu-container { display: flex !important; }
.nme-nav .is-menu-open .has-child > .nme-grupo { width: 100%; min-height: 44px; display: flex; align-items: center; justify-content: space-between; font-size: 1rem; }
.nme-nav .is-menu-open .has-child > .nme-grupo::after { content: "+"; font: 400 1.5rem/1 var(--wp--preset--font-family--inter); color: var(--wp--preset--color--turquesa-texto); padding-left: 16px; }
.nme-nav .is-menu-open .has-child.nme-abierto > .nme-grupo::after { content: "−"; }

/* FAQ completa (página del plugin NME IA): mismo lenguaje que la FAQ de la portada */
.nme-faq-page { max-width: 880px; margin: 0 auto; padding: 8px 0 64px; }
.nme-faq-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 32px; }
.nme-faq-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 16px; border: 1px solid var(--wp--preset--color--filete-fuerte); border-radius: 4px; background: #fff; color: var(--wp--preset--color--tinta); font: 500 .9375rem/1.2 var(--wp--preset--font-family--inter); cursor: pointer; transition: background-color var(--nme-dur), color var(--nme-dur), border-color var(--nme-dur); }
.nme-faq-chip:hover { background: var(--wp--preset--color--hueso); color: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--azul); }
.nme-faq-chip:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa); outline-offset: 2px; }
.nme-faq-chip.is-active { background: var(--wp--preset--color--azul); border-color: var(--wp--preset--color--azul); color: #fff; }
.nme-faq-chip span { opacity: .75; font-weight: 400; }
.nme-faq-page .nme-faq-list, .nme-faq-page .nme-faq-grid { border-top: 1px solid var(--nme-filete); }
.nme-faq-page .nme-faq-item { border-bottom: 1px solid var(--nme-filete); }
.nme-faq-page .nme-faq-item > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 12px 0; list-style: none; cursor: pointer; font: 500 1.0625rem/1.4 var(--wp--preset--font-family--poppins); letter-spacing: -.01em; color: var(--wp--preset--color--azul); }
.nme-faq-page .nme-faq-item > summary::-webkit-details-marker { display: none; }
.nme-faq-page .nme-faq-item > summary:focus-visible { outline: 2px solid var(--wp--preset--color--turquesa); outline-offset: 2px; }
.nme-faq-page .nme-faq-icon { flex: none; font-size: 0; width: 24px; height: 24px; position: relative; }
.nme-faq-page .nme-faq-icon::before { content: "+"; position: absolute; inset: 0; display: grid; place-items: center; font: 400 1.5rem/1 var(--wp--preset--font-family--inter); color: var(--wp--preset--color--turquesa-texto); }
.nme-faq-page .nme-faq-item[open] .nme-faq-icon::before { content: "−"; }
.nme-faq-page .nme-faq-body { padding: 0 0 20px; max-width: 70ch; color: var(--wp--preset--color--tinta-2); line-height: 1.65; }
.nme-faq-page .nme-faq-body p:first-child { margin-top: 0; }
.nme-faq-disclaimer { margin-top: 40px; padding: 16px 20px; border-left: 3px solid var(--wp--preset--color--turquesa); background: var(--wp--preset--color--hueso); font-size: .875rem; line-height: 1.6; color: var(--wp--preset--color--tinta-2); }

@media (max-width: 781px) {
	/* Lectura en móvil: sin justificar (el contenido trae text-align:justify en línea) */
	.nme-main p[style*="justify"], .nme-main li[style*="justify"], .wp-block-post-content p[style*="justify"], .woocommerce-Tabs-panel p[style*="justify"] { text-align: left !important; }
	.nme-main p, .wp-block-post-content p { hyphens: manual; }
	/* Pestañas de la ficha: las cinco a la vista, en dos filas */
	.woocommerce-tabs ul.wc-tabs { display: flex !important; flex-wrap: wrap !important; overflow: visible !important; gap: 6px 8px; }
	.woocommerce-tabs ul.wc-tabs::before, .woocommerce-tabs ul.wc-tabs::after { display: none !important; }
	.woocommerce-tabs ul.wc-tabs { padding: 0 !important; margin: 0 0 24px !important; border: 0 !important; }
	.woocommerce-tabs ul.wc-tabs > li { flex: 0 0 auto; margin: 0 !important; padding: 0 !important; border: 1px solid var(--wp--preset--color--filete-fuerte) !important; border-radius: 4px !important; background: #fff !important; box-shadow: none !important; }
	.woocommerce-tabs ul.wc-tabs > li::before, .woocommerce-tabs ul.wc-tabs > li::after { display: none !important; }
	.woocommerce-tabs ul.wc-tabs > li > a { min-height: 44px; display: inline-flex !important; align-items: center; padding: 0 14px !important; font-size: .9375rem; color: var(--wp--preset--color--tinta) !important; border: 0 !important; box-shadow: none !important; text-decoration: none; }
	.woocommerce-tabs ul.wc-tabs > li.active { background: var(--wp--preset--color--azul) !important; border-color: var(--wp--preset--color--azul) !important; }
	.woocommerce-tabs ul.wc-tabs > li.active > a { color: #fff !important; }
	.nme-faq-nav { gap: 6px; }
	.nme-faq-chip { padding: 0 12px; font-size: .875rem; }
}

/* ===== Lote 26 · auditoría visual (Codex, 2026-10-23): fichas y bibliotecas en móvil =====
   Ficha: nombre, precio y compra primero; el resumen y «Indicado para» después. Miniaturas en una fila deslizable.
   «Relacionado con este producto»: principios en dos columnas; estudios y tratamientos en filas deslizables.
   Bibliotecas: los filtros en una sola fila deslizable. Contacto: foto más baja. Escritorio sin cambios. */
@media (max-width: 781px) {
	.nme-main .nme-ficha__datos > .nme-ficha__comprar { order: 5; margin-top: 16px; }
	.nme-main .nme-ficha__datos > .wp-block-woocommerce-product-summary { order: 6; }
	.nme-main .nme-ficha__datos > .nme-prod-ind { order: 7; }
	.nme-main .nme-ficha__datos > .nme-trust-strip { order: 8; }
	.nme-main .nme-ficha__datos > .nme-ficha__meta { order: 9; }
	.nme-ficha__precio { margin-top: 16px; }
	.nme-ficha__galeria .flex-control-thumbs { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 32px) / 4.5); overflow-x: auto; scroll-snap-type: x proximity; overscroll-behavior-x: contain; scrollbar-width: none; }
	.nme-ficha__galeria .flex-control-thumbs::-webkit-scrollbar { display: none; }
	.nme-ficha__galeria .flex-control-thumbs li { scroll-snap-align: start; }

	.nme-main .nme-prod-related__block:has(.nme-rel-card--pa) > .nme-prod-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nme-main .nme-rel-card--pa { padding: 14px 16px; }
	.nme-main .nme-prod-related__grid--ev,
	.nme-main .nme-prod-related__block:has(.nme-rel-card--trat) > .nme-prod-related__grid { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 80%; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: thin; }
	.nme-main .nme-prod-related__block:has(.nme-rel-card--trat) > .nme-prod-related__grid { grid-auto-columns: 70%; }
	.nme-main .nme-rel-card--ev, .nme-main .nme-rel-card--trat { scroll-snap-align: start; }

	.nme-pildoras { flex-wrap: nowrap !important; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; padding-bottom: 2px; }
	.nme-pildoras::-webkit-scrollbar { display: none; }
	.nme-pildoras .nme-pildora, .nme-pildoras__lista .wp-block-term-template > li { flex: none; white-space: nowrap; }

	.page-id-1008 .nme-prosa > p:first-child > img:first-child { max-height: 240px !important; object-position: center 22% !important; margin-bottom: 24px !important; }
}

/* ===== Lote 28 · Botón redondo de cookies (Complianz) oculto en móvil: tapaba contenido abajo a la izquierda.
   El consentimiento se cambia desde el enlace «Configurar cookies» del pie, presente en todas las páginas
   (tienda.js pulsa este mismo botón oculto). Decisión del dueño del 2026-10-23. ===== */
@media (max-width: 781px) {
	/* id doble: gana a la regla «body:has(.cmplz-cookiebanner.cmplz-dismissed) …» que lo muestra al cerrar el aviso */
	#cmplz-manage-consent#cmplz-manage-consent .cmplz-manage-consent { display: none !important; }
}
