/*
 * Kiwi — CSS que theme.json y los atributos de bloque no pueden expresar.
 * Solo tokens: var(--wp--preset--*) y var(--wp--custom--*). Sin px ni hex sueltos.
 * Mobile first: los valores base son los de 375.
 * Cortes (revisión 9, §6 «Anchos intermedios»): 600 · 900 · 1200. Móvil 0–599 (diseño 375),
 * tablet 600–899 (lienzo 768), ventana media 900–1199 (lienzo 1024), escritorio 1200+
 * (diseño 1440). Encima de 1440 el contenido se centra y solo crece el fondo.
 * Lo que la tabla no define: hasta 899, la versión de 375; desde 900, la de 1440.
 * Los únicos literales son los cortes: una variable CSS no puede usarse en @media.
 */

/* ── 0. Raíz ──────────────────────────────────────────────────────────────
 * El layout de flujo de la raíz suma el blockGap (24) entre header, contenido y
 * footer. En el diseño van pegados: cada pantalla trae su propio padding. */
.wp-site-blocks > * {
	margin-block: 0;
}

/* Padding de página por tramo (16 / 24 / 40 / 40) y margen lateral de las franjas a todo
 * el ancho: el padding de página hasta 1440; encima, lo que sobra se reparte a los lados
 * y el contenido queda centrado a 1440. El % del padding se resuelve contra el ancho de la
 * franja (que ocupa toda la ventana). Van en body: ahí declara WordPress el wide-size. */
body {
	--kiwi-pagina: var(--wp--preset--spacing--40);
	--kiwi-margen: max(var(--kiwi-pagina), calc((100% - var(--wp--style--global--wide-size)) / 2 + var(--kiwi-pagina)));
}

@media (width >= 600px) {
	body {
		--kiwi-pagina: var(--wp--preset--spacing--60);
	}
}

@media (width >= 900px) {
	body {
		--kiwi-pagina: var(--wp--preset--spacing--80);
	}
}

/* ── 1. Foco visible ──────────────────────────────────────────────────────
 * theme.json no puede cambiar el color del anillo según el fondo:
 * verde sobre claro, lima sobre la barra verde y el footer grafito. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
summary:focus-visible {
	outline: var(--wp--custom--foco--ancho) solid var(--wp--preset--color--verde-kiwi);
	outline-offset: var(--wp--custom--foco--separacion);
}

.kiwi-barra :focus-visible,
.kiwi-pie :focus-visible,
.kiwi-pie-movil :focus-visible {
	outline-color: var(--wp--preset--color--lima-kiwi);
}

/* ── 2. Transiciones ──────────────────────────────────────────────────────
 * theme.json no tiene propiedad de transición. Solo color, opacidad y sombra. */
.kiwi-header a,
.kiwi-header input,
.kiwi-pie a,
.kiwi-pie-movil a,
.kiwi-buscar-movil__dialogo a,
.wp-element-button,
.kiwi-ver-mas__boton,
.kiwi-menu-movil__wa,
.kiwi-consulta__boton,
.kiwi-consulta__wa-boton,
.kiwi-consulta__campo,
.kiwi-sinpe-correo__boton,
.kiwi-sinpe-correo__campo,
.kiwi-sinpe-comprobante__subir,
.kiwi-sinpe-comprobante__accion,
.kiwi-indice__enlace,
.kiwi-ayuda__otras-lista a {
	transition-property: color, background-color, border-color, opacity, box-shadow;
	transition-duration: var(--wp--custom--transicion--duracion);
	transition-timing-function: var(--wp--custom--transicion--curva);
}

/* ── 3. Objetivo táctil y 4. badge del carrito ────────────────────────────
 * El icono mide 24 y el área táctil tiene que medir 44. El badge va
 * superpuesto al icono, y eso no se puede hacer con bloques. */
.kiwi-carrito,
.kiwi-carrito:hover {
	color: var(--wp--preset--color--grafito);
}

.kiwi-carrito {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: var(--wp--preset--dimension--objetivo-tactil);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
}

.kiwi-carrito__icono {
	position: relative;
	display: block;
	width: var(--wp--preset--dimension--icono-24);
	height: var(--wp--preset--dimension--icono-24);
}

.kiwi-carrito__icono svg {
	display: block;
	width: 100%;
	height: 100%;
}

.kiwi-carrito__badge {
	position: absolute;
	top: calc(-1 * var(--wp--preset--spacing--10));
	right: calc(-1 * var(--wp--preset--spacing--10));
	display: grid;
	place-items: center;
	box-sizing: border-box;
	min-width: var(--wp--preset--dimension--badge);
	height: var(--wp--preset--dimension--badge);
	border-radius: var(--wp--preset--border-radius--badge);
	background: var(--wp--preset--color--guayaba);
	color: var(--wp--preset--color--blanco); /* crema sobre guayaba da 4,2:1; blanco, 4,7:1 */
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
}

.kiwi-carrito__badge[hidden] {
	display: none;
}

/* ── 5. Buscador ──────────────────────────────────────────────────────────
 * core/search no expone alto ni ancho fijos del campo ni el color del placeholder.
 * Borde, fondo y tipografía viven en theme.json (styles.blocks.core/search). */
.kiwi-buscador .wp-block-search__input {
	box-sizing: border-box;
	width: var(--wp--preset--dimension--buscador-ancho);
	height: var(--wp--preset--dimension--buscador-alto);
	padding: 0 var(--wp--preset--spacing--30) 0 calc(var(--wp--preset--spacing--30) + var(--wp--preset--dimension--icono-20) + var(--wp--preset--spacing--20));
}

/* Lupa dentro del campo (revisión 8, D): 20 en texto-muted, a 12 del borde y 8 antes del texto.
 * core/search sin botón no trae icono: va como máscara sobre el contenedor del campo. */
.kiwi-buscador .wp-block-search__inside-wrapper {
	position: relative;
}

.kiwi-buscador .wp-block-search__inside-wrapper::before {
	content: "";
	position: absolute;
	top: 50%;
	left: var(--wp--preset--spacing--30);
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	translate: 0 -50%;
	background-color: var(--wp--preset--color--texto-muted);
	-webkit-mask: url("../icons/lupa.svg") center / contain no-repeat;
	mask: url("../icons/lupa.svg") center / contain no-repeat;
	pointer-events: none;
}

.kiwi-buscador .wp-block-search__input::placeholder {
	color: var(--wp--preset--color--texto-muted);
	opacity: 1;
}

/* La «×» para borrar de los campos de búsqueda la pone el navegador (Chrome, Safari y Edge),
 * no el sistema: su color no es token y el glifo no está en el set. Se oculta en los dos
 * buscadores (header desde 1200 y diálogo móvil). En el diálogo quedaba al lado de
 * «Cerrar búsqueda», con el mismo icono y otra función; el texto se borra con el teclado
 * (decisión de la dueña, octubre 2026). Firefox no la dibuja. */
input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
}

/* ── 6. Hover de la navegación del header ─────────────────────────────────
 * El core de navigation declara
 *   .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content { color: inherit }
 * con especificidad (0,3,0), en todos los estados. El hover que genera theme.json
 * queda envuelto en :where() y nunca le gana. Repetimos la clase del ítem para
 * llegar a (0,4,0) sin !important. */
.kiwi-nav .wp-block-navigation-item__content.wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--verde-kiwi);
}

/* ── 7. Grid del footer (desde 600; debajo, el pattern kiwi/pie-movil) ───────
 * Tablet (lienzo 768): marca arriba, Comprar y Ayuda en 2 columnas, padding 40 / 24 / 24,
 * gap 24. Ventana media (lienzo 1024): marca arriba y 3 columnas (la tercera es la del
 * newsletter, omitido: queda vacía), padding 40, gap 32. Escritorio: 4 columnas, la de
 * marca a 1.2fr. El grid nativo solo genera columnas iguales y el layout de WordPress
 * declara columnas y gap en una clase .wp-container-* (0,1,0) cuyo orden de carga no está
 * garantizado: .wp-block-group.kiwi-pie (0,2,0) gana en cualquier orden. El padding vive
 * acá y no en el bloque: un atributo de bloque es un estilo en línea y no cambia por ancho. */
.wp-block-group.kiwi-pie {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--80) var(--kiwi-margen) var(--wp--preset--spacing--60);
}

.wp-block-group.kiwi-pie > :first-child {
	grid-column: 1 / -1;
}

@media (width >= 900px) {
	.wp-block-group.kiwi-pie {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--70);
		padding-bottom: var(--wp--preset--spacing--80);
	}
}

@media (width >= 1200px) {
	.wp-block-group.kiwi-pie {
		grid-template-columns: minmax(0, 1.2fr) repeat(3, minmax(0, 1fr));
	}

	.wp-block-group.kiwi-pie > :first-child {
		grid-column: auto;
	}
}

/* ── 8. Cortes ────────────────────────────────────────────────────────────
 * Los bloques no tienen visibilidad ni padding por ancho de pantalla. */

/* Piezas que solo existen en un tramo. kiwi-hasta-N se oculta por encima de N;
 * kiwi-desde-N, por debajo. Cada pieza lleva el corte de su fila en la tabla:
 * barra corta y footer móvil (600); menú, navegación, migas, chips, «Ver más piezas»,
 * paginación, acordeón de la descripción y garantías de la ficha (900); lupa y
 * buscador de 296 (1200).
 * !important porque el layout de WordPress declara el display con
 * «body .is-layout-flex / -grid» y el orden de carga de las hojas no está garantizado. */
@media (width < 600px) {
	.kiwi-desde-600 {
		display: none !important;
	}
}

@media (width >= 600px) {
	.kiwi-hasta-599 {
		display: none !important;
	}
}

@media (width < 900px) {
	.kiwi-desde-900 {
		display: none !important;
	}
}

@media (width >= 900px) {
	.kiwi-hasta-899 {
		display: none !important;
	}
}

@media (width < 1200px) {
	.kiwi-desde-1200 {
		display: none !important;
	}
}

@media (width >= 1200px) {
	.kiwi-hasta-1199 {
		display: none !important;
	}
}

/* Header móvil (revisión 7, A3), hasta 899: fila de 60 (padding 8 / 4; en tablet,
 * 8 / 20 como el lienzo 768) con menú · logo · lupa · carrito, cada uno en 44, sin gap
 * entre ellos. El header es fijo y la barra superior no: el <header> se pega con un top
 * negativo del alto de la barra (una línea de 12 con interlínea de 17, más 8 arriba y
 * abajo), así la barra se va con el scroll. Desde 600 la barra lleva el texto largo,
 * también en una línea. .wp-block-group.kiwi-header (0,2,0) le gana al gap de la clase
 * de layout (0,1,0). */
.kiwi-header {
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--10);
	background-color: var(--wp--preset--color--crema);
}

@media (600px <= width < 900px) {
	.kiwi-header {
		padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--50);
	}
}

@media (width < 900px) {
	/* Solo el header de la tienda (handoff §5: «Es fijo; la barra superior no»). El de
	 * checkout no va pegado (decisión de la dueña, 8 de octubre de 2026). */
	.wp-site-blocks > header:has(.kiwi-header) {
		position: sticky;
		top: calc(-1 * (2 * var(--wp--preset--spacing--20) + var(--wp--custom--interlinea--legal)));
		z-index: 100;
	}

	.kiwi-barra p {
		line-height: var(--wp--custom--interlinea--legal);
		white-space: nowrap;
	}

	.wp-block-group.kiwi-header,
	.wp-block-group.kiwi-header__utilidades {
		gap: 0;
	}

	.kiwi-header .kiwi-logo {
		flex: 1;
		padding-left: var(--wp--preset--spacing--10);
	}
}

/* Escritorio desde 900: padding 16 / 40 (centrado a 1440 encima). Ventana media
 * (lienzo 1024): logo · navegación · lupa · carrito, lupa y carrito sin gap. */
@media (width >= 900px) {
	.kiwi-header {
		padding: var(--wp--preset--spacing--40) var(--kiwi-margen);
	}
}

@media (900px <= width < 1200px) {
	.wp-block-group.kiwi-header__utilidades {
		gap: 0;
	}
}

/* ── 9. Iconos dentro de bloques ──────────────────────────────────────────
 * Botones, párrafos y enlaces de bloque no aceptan icono. Se dibujan con el SVG
 * del set como máscara, así toman el color del texto (currentColor) o el que fija
 * el lienzo. El logo de WhatsApp a color va como imagen: no se recolorea. */
.kiwi-boton-agregar .wp-block-button__link::before,
.kiwi-wa-mono .wp-block-button__link::before,
.kiwi-guia-tallas__enlace::before,
.kiwi-guia-tallas__boton::before,
.kiwi-aviso-reloj::before,
.kiwi-confianza__cambio::before,
.kiwi-confianza__pago::before,
.kiwi-garantia::before {
	content: "";
	display: inline-block;
	flex: none;
	width: var(--kiwi-icono-tam);
	height: var(--kiwi-icono-tam);
	background-color: var(--kiwi-icono-color, currentColor);
	-webkit-mask: var(--kiwi-icono) center / contain no-repeat;
	mask: var(--kiwi-icono) center / contain no-repeat;
}

.kiwi-boton-agregar .wp-block-button__link::before {
	--kiwi-icono: url("../icons/carrito.svg");
	--kiwi-icono-tam: var(--wp--preset--dimension--icono-20);
}

.kiwi-wa-mono .wp-block-button__link::before {
	--kiwi-icono: url("../icons/whatsapp-mono.svg");
	--kiwi-icono-tam: var(--wp--preset--dimension--icono-20);
}

.kiwi-wa-color .wp-block-button__link::before {
	content: "";
	display: inline-block;
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background: url("../icons/whatsapp-color.svg") center / contain no-repeat;
}

.kiwi-guia-tallas__enlace::before,
.kiwi-guia-tallas__boton::before {
	--kiwi-icono: url("../icons/guia-de-tallas.svg");
	--kiwi-icono-tam: var(--wp--preset--dimension--icono-20);
}

.kiwi-aviso-reloj::before {
	--kiwi-icono: url("../icons/reloj.svg");
	--kiwi-icono-tam: var(--kiwi-aviso-icono);
	--kiwi-icono-color: var(--wp--preset--color--indigo);
}

.kiwi-confianza__cambio::before,
.kiwi-confianza__pago::before {
	--kiwi-icono-tam: var(--wp--preset--dimension--icono-20);
	--kiwi-icono-color: var(--wp--preset--color--texto-muted);
}

.kiwi-confianza__cambio::before { --kiwi-icono: url("../icons/devolucion.svg"); }
.kiwi-confianza__pago::before { --kiwi-icono: url("../icons/pago-seguro.svg"); }

.kiwi-garantia::before {
	--kiwi-icono-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-garantia--envio::before { --kiwi-icono: url("../icons/envio.svg"); }
.kiwi-garantia--cambio::before { --kiwi-icono: url("../icons/devolucion.svg"); }
.kiwi-garantia--tallas::before { --kiwi-icono: url("../icons/guia-de-tallas.svg"); }
.kiwi-garantia--pago::before { --kiwi-icono: url("../icons/pago-seguro.svg"); }

/* ── 10. Ficha de producto ────────────────────────────────────────────────
 * La galería, las opciones de talla, el botón de agregar y la descripción no
 * exponen grilla, alto ni estados como atributos de bloque. Tamaños que cambian
 * entre anchos (título, precio, aviso) van acá y no como atributo: las clases
 * has-*-font-size de WordPress llevan !important y no se pueden pisar por ancho. */

/* Página: en móvil todo va en una columna; el cierre inferior (24) lo da la página,
 * no la columna de información, porque debajo siguen la descripción y los relacionados. */
.kiwi-ficha {
	padding-bottom: var(--wp--preset--spacing--60);
}

/* Los grupos con layout de flujo suman margin-block-start a cada hijo: acá los
 * espacios los dan la grilla y los gap. */
.kiwi-ficha > *,
.kiwi-ficha__principal > *,
.kiwi-relacionados > * {
	margin-block: 0;
}

.kiwi-ficha__titulo {
	font-size: var(--wp--preset--font-size--24);
}

.kiwi-ficha__info .kiwi-precio {
	font-size: var(--wp--preset--font-size--32);
}

/* Ficha: 12 entre el precio y el tachado en los dos anchos (lienzo de la revisión 8); la card sigue en 8. */
.kiwi-ficha__info .kiwi-precio .wc-block-components-product-price {
	gap: var(--wp--preset--spacing--30);
}

/* Galería (bloque Product Gallery de Woo): foto 1:1 sobre crema.
 * Móvil: las miniaturas se muestran como puntos bajo la foto (revisión 7, D4):
 * punto de 8, área de toque de 44 sin solaparse (paso 44), aro hueco de 2 en
 * texto-muted y el activo lleno. La miniatura sigue siendo la opción del listbox
 * de Woo (teclado y lector de pantalla); solo se vuelve transparente. */
.kiwi-ficha .kiwi-galeria {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0;
}

.kiwi-galeria .wc-block-product-gallery-large-image {
	order: 1;
}

.kiwi-galeria .wc-block-components-product-image img {
	background-color: var(--wp--preset--color--crema);
}

.kiwi-galeria .wc-block-product-gallery-thumbnails {
	order: 2;
	/* Woo fija aspect-ratio con !important (5/1 bajo 600 px; proporcional arriba). */
	aspect-ratio: auto !important;
	width: 100%;
	height: auto;
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-galeria .wc-block-product-gallery-thumbnails__scrollable {
	flex-direction: row;
	justify-content: center;
	gap: 0;
	overflow: visible;
}

.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail {
	display: grid;
	place-items: center;
	flex: none;
	width: var(--wp--preset--dimension--objetivo-tactil);
	height: var(--wp--preset--dimension--objetivo-tactil);
}

.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail::before {
	content: "";
	grid-area: 1 / 1;
	box-sizing: border-box;
	width: var(--wp--preset--dimension--punto-galeria);
	height: var(--wp--preset--dimension--punto-galeria);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--texto-muted);
	border-radius: 50%;
}

.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail:has(.wc-block-product-gallery-thumbnails__thumbnail__image--is-active)::before {
	border-color: var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail__image {
	grid-area: 1 / 1;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	opacity: 0;
	outline: none;
}

/* El foco cae en la miniatura transparente: el anillo se dibuja en su casilla de 44. */
.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail:has(:focus-visible) {
	outline: var(--wp--custom--foco--ancho) solid var(--wp--preset--color--verde-kiwi);
	outline-offset: calc(-1 * var(--wp--custom--foco--ancho));
}

/* Información: padding móvil 16 / 16 / 0. */
.kiwi-ficha__info {
	padding: var(--wp--preset--spacing--40) var(--kiwi-pagina) 0;
}

/* Formulario de compra: 16 entre talla y botón (el layout flow del form usa su propio gap). */
.kiwi-compra .wc-block-add-to-cart-with-options > * {
	margin-block: 0;
}

.kiwi-compra .wc-block-add-to-cart-with-options > * + * {
	margin-block-start: var(--wp--preset--spacing--40);
}

/* «Guía de tallas»: ver la sección 29 (P9 de la revisión 13). */

/* Tallas: dos estados (normal / seleccionada), grilla de 4 → dos filas con 7 tallas. */
.kiwi-talla .wc-block-product-filter-chips__items {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--20);
}

.kiwi-talla .wc-block-product-filter-chips__item {
	min-height: var(--wp--preset--dimension--talla);
	padding: 0;
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Seleccionada: borde de 2 (1,5 se dibuja como 1 en laptops) y relleno verde-kiwi. */
.kiwi-talla .wc-block-product-filter-chips__item[aria-checked="true"] {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
}

/* El nativo pinta un contorno de 1 px en :focus (también al hacer clic); vale el anillo del sistema. */
.kiwi-talla .wc-block-product-filter-chips__item:focus {
	outline: none;
}

.kiwi-talla .wc-block-product-filter-chips__item:focus-visible {
	outline: var(--wp--custom--foco--ancho) solid var(--wp--preset--color--verde-kiwi);
	outline-offset: var(--wp--custom--foco--separacion);
}

/* Botón primario «Agregar · ₡15.000»: 56 de alto, ancho completo, icono a la izquierda.
 * Woo imprime en línea «.wp-block-button.wc-block-components-product-button .wp-block-button__link
 * { width: auto }» (0,3,0), y puede ir después de esta hoja: se repite la cadena de clases
 * y se suma la nuestra para llegar a (0,4,0). */
.kiwi-boton-agregar,
.wp-block-button.wc-block-components-product-button.kiwi-boton-agregar .wp-block-button__link {
	width: 100%;
}

.kiwi-boton-agregar .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--preset--dimension--boton-primario);
	padding-block: 0;
	letter-spacing: 0.01em;
	font-variant-numeric: tabular-nums;
}

/* Woo oculta el botón con [hidden] hasta hidratar; el display:flex de arriba no debe pisarlo. */
.kiwi-boton-agregar .wp-block-button__link[hidden] {
	display: none;
}

/* Botón secundario «Preguntar por WhatsApp»: contorno de 2, 48 de alto, gap 8 con el logo. */
.kiwi-boton-secundario .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--60);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
}

/* Botón secundario (revisión 12, §2): hover fondo aviso, active fondo divisor; texto y
 * contorno no cambian (verde-kiwi sobre divisor, 5,5:1). Vale para todos los contornos:
 * la variación del bloque Botón (ficha, regalo, home, pedido recibido), «Ver más
 * vestidos», el WhatsApp del panel y el de «Consultar mi pedido». El color se repite porque el hover de enlaces
 * del tema (verde-hover) le ganaría a «Ver más» y al panel, que son enlaces sueltos. */
.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.kiwi-ver-mas__boton:hover,
.kiwi-menu-movil__wa:hover,
.kiwi-consulta__wa-boton:hover {
	border-color: var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--verde-kiwi);
}

.wp-block-button.is-style-outline > .wp-block-button__link:active,
.kiwi-ver-mas__boton:active,
.kiwi-menu-movil__wa:active,
.kiwi-consulta__wa-boton:active {
	border-color: var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--verde-kiwi);
}

/* Aviso y confianza. Móvil: padding superior 16, gap 12, texto 16. */
.wp-block-group.kiwi-sellos {
	gap: var(--wp--preset--spacing--30);
	padding-top: var(--wp--preset--spacing--40);
}

/* Aviso «Se confecciona por encargo»: reloj a la izquierda del párrafo (con <strong> adentro no sirve flex).
 * Lleva en línea «¿Necesitás fecha? Escribinos.»: enlace sin icono, la única salida con logo es el botón (revisión 7, D2). */
.kiwi-aviso-reloj {
	--kiwi-aviso-icono: var(--wp--preset--dimension--icono-20);
	--kiwi-aviso-gap: var(--wp--preset--spacing--30);
	position: relative;
	margin: 0;
	padding-inline-start: calc(var(--kiwi-aviso-icono) + var(--kiwi-aviso-gap));
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-aviso-reloj::before {
	position: absolute;
	top: 0;
	left: 0;
}

.kiwi-aviso-reloj a {
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: var(--wp--custom--subrayado--separacion);
}

/* Ficha sin JS (kiwi-producto): en el lugar de «Agregar», aviso con fondo aviso, padding 12,
 * texto 16 en grafito y el enlace al chat como los demás enlaces del aviso. */
.kiwi-sin-js {
	margin: 0;
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-sin-js a {
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: var(--wp--custom--subrayado--separacion);
}

/* «¿Necesitás fecha? Escribinos.» de la ficha: 48 de toque sin mover el texto (revisión 13,
 * pregunta 22, §6): inline-block con padding 12 arriba y abajo y el mismo margen negativo. */
.kiwi-aviso-encargo--ficha a {
	display: inline-block;
	padding-block: var(--wp--preset--spacing--30);
	margin-block: calc(-1 * var(--wp--preset--spacing--30));
}

.wp-block-group.kiwi-confianza {
	gap: var(--wp--preset--spacing--40);
}

.kiwi-confianza__cambio,
.kiwi-confianza__pago {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	margin: 0;
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Descripción larga (bloque kiwi/descripcion). Móvil: acordeón con filas de 56. */
.kiwi-detalles {
	margin: 0;
	padding: var(--wp--preset--spacing--40) var(--kiwi-pagina) 0;
}

.kiwi-acordeon {
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-acordeon:last-child {
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-acordeon__cabecera {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--40);
	min-height: var(--wp--preset--dimension--boton-primario);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.01em;
	list-style: none;
	cursor: pointer;
}

.kiwi-acordeon__cabecera::-webkit-details-marker {
	display: none;
}

/* Chevron del set en una casilla de 44, apuntando abajo; abierto, arriba (180°). */
.kiwi-acordeon__cabecera::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--objetivo-tactil);
	height: var(--wp--preset--dimension--objetivo-tactil);
	margin-right: calc(-1 * var(--wp--preset--spacing--20));
	background-color: var(--wp--preset--color--grafito);
	-webkit-mask: url("../icons/chevron.svg") center / var(--wp--preset--dimension--icono-24) no-repeat;
	mask: url("../icons/chevron.svg") center / var(--wp--preset--dimension--icono-24) no-repeat;
}

.kiwi-acordeon[open] > .kiwi-acordeon__cabecera::after {
	transform: rotate(180deg);
}

.kiwi-acordeon__cabecera:focus-visible {
	outline: var(--wp--custom--foco--ancho) solid var(--wp--preset--color--verde-kiwi);
	outline-offset: var(--wp--custom--foco--separacion);
}

.kiwi-acordeon__texto {
	padding-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--lectura);
}

.kiwi-acordeon__texto > *,
.kiwi-detalles__intro > *,
.kiwi-detalles__texto > * {
	margin-block: 0;
}

.kiwi-acordeon__texto > * + *,
.kiwi-detalles__intro > * + *,
.kiwi-detalles__texto > * + * {
	margin-block-start: var(--wp--preset--spacing--30);
}

/* El enlace a la guía de tallas que la dueña escribe en «Calce y medidas» es
 * información de confianza: índigo 700, como el «Guía de tallas» de la talla. */
.kiwi-detalles a[href*="guia-de-tallas"] {
	color: var(--wp--preset--color--indigo);
	font-weight: 700;
}

/* Escritorio: título a la izquierda (240), párrafo de 20 y tres columnas. */
.kiwi-detalles__escritorio {
	grid-template-columns: var(--wp--preset--dimension--detalles-titulo) minmax(0, 1fr);
	gap: var(--wp--preset--spacing--85);
}

.kiwi-detalles__titulo {
	margin: 0;
	font-weight: 600;
	font-size: var(--wp--preset--font-size--32);
	letter-spacing: -0.02em;
}

.kiwi-detalles__cuerpo {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--70);
}

.kiwi-detalles__intro {
	max-width: var(--wp--preset--dimension--detalles-texto);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--20);
	line-height: var(--wp--custom--interlinea--lectura);
}

.kiwi-detalles__columnas {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--70);
}

.kiwi-detalles__columna {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-detalles__subtitulo {
	margin: 0;
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.01em;
}

.kiwi-detalles__texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--lectura);
}

/* Relacionados «Más vestidos» (revisión 10): más nuevos, sin el actual; misma card del listado.
 * Móvil: 2 vestidos (la colección trae 4 para escritorio), gap 8, título de 20.
 * Tablet y ventana media: 3 piezas; escritorio: 4. */
.kiwi-relacionados.wp-block-woocommerce-product-collection {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	margin: 0;
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) 0;
}

.kiwi-relacionados__fila {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--40);
}

.kiwi-relacionados__titulo {
	margin: 0;
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.02em;
}

.kiwi-relacionados__ver-todos {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-relacionados.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
	gap: var(--wp--preset--spacing--20);
}

/* La card del listado declara display:flex con (0,4,1): se repite su cadena para ganarle. */
@media (width < 600px) {
	.kiwi-relacionados.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards > li:nth-child(n + 3) {
		display: none;
	}
}

@media (600px <= width < 1200px) {
	.kiwi-relacionados.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards > li:nth-child(n + 4) {
		display: none;
	}
}

/* «← Todos los vestidos» (desde 900; reemplaza a las migas, revisión 10): padding 16 / 40 / 8,
 * Karla 700 16 en verde-kiwi, chevron del set de 20 rotado 90° y gap 8. El área de toque de
 * 44 es un pseudoelemento, así no cambia el padding del lienzo. */
.kiwi-volver {
	margin: 0;
	padding: var(--wp--preset--spacing--40) var(--kiwi-margen) var(--wp--preset--spacing--20);
}

.kiwi-volver__enlace {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-volver__enlace::before {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: currentColor;
	-webkit-mask: url("../icons/chevron.svg") center / contain no-repeat;
	mask: url("../icons/chevron.svg") center / contain no-repeat;
	transform: rotate(90deg);
}

.kiwi-volver__enlace::after {
	content: "";
	position: absolute;
	inset: 50% 0 auto;
	height: var(--wp--preset--dimension--objetivo-tactil);
	translate: 0 -50%;
}

/* «Volver al carrito» del checkout (hasta 899, pattern kiwi/volver-carrito). Entre 600 y 899,
 * dentro de la columna de 699 del checkout, alineado con sus campos. */
.kiwi-volver--carrito p {
	margin: 0;
}

@media (600px <= width < 900px) {
	.kiwi-volver--carrito {
		box-sizing: border-box;
		max-width: var(--wp--preset--dimension--checkout-medio);
		margin-inline: auto;
		padding-inline: var(--kiwi-pagina);
	}
}

/* Precios: siempre tabulares. Precio anterior después del actual, tachado, Archivo 500 en texto-muted
 * (texto-debil nunca va como texto sobre crema, revisión 7, D3).
 * Woo envuelve <del> e <ins> en .wc-block-components-product-price (display:block): el flex, el gap
 * y el orden van en ese contenedor, no en el del bloque, que tiene un solo hijo. Los textos para
 * lector de pantalla son absolutos y no ocupan lugar en la fila. */
.kiwi-precio {
	font-variant-numeric: tabular-nums;
}

.kiwi-precio .wc-block-components-product-price {
	display: flex;
	align-items: baseline;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-precio del {
	order: 2;
	color: var(--wp--preset--color--texto-muted);
	font-weight: 500;
}

.kiwi-precio ins {
	text-decoration: none;
}

.kiwi-ficha__info .kiwi-precio del {
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Tablet (lienzo 768): dos columnas iguales (galería · compra), gap 24, padding 24 / 24 / 32;
 * debajo, la descripción en acordeón y «Más» con 3 piezas (título de 24, gap 16).
 * Galería, sellos y migas siguen como en 375. */
@media (600px <= width < 900px) {
	.kiwi-ficha {
		padding-bottom: var(--wp--preset--spacing--70);
	}

	.kiwi-ficha__principal {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--60);
		align-items: start;
		padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) 0;
	}

	.kiwi-ficha__info {
		padding: 0;
	}

	.kiwi-detalles {
		padding-top: var(--wp--preset--spacing--60);
	}

	.kiwi-relacionados__titulo {
		font-size: var(--wp--preset--font-size--24);
	}

	.kiwi-relacionados.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
		gap: var(--wp--preset--spacing--40);
	}
}

/* Desde 900, la ficha de escritorio. Ventana media (lienzo 1024): dos columnas iguales
 * con gap 40; la descripción en 3 columnas sobre un divisor (padding 24 / 32) y «Más»
 * con 3 piezas a 32 de ella, gap 16, sin divisor. Las migas, la galería con miniaturas
 * y la columna fija son las de 1440 (regla de los tramos: no están en el lienzo). */
@media (width >= 900px) {
	.kiwi-ficha {
		padding-bottom: 0;
	}

	.kiwi-ficha__principal {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--80);
		align-items: start;
		padding: var(--wp--preset--spacing--20) var(--kiwi-margen) var(--wp--preset--spacing--70);
	}

	/* Galería: miniaturas verticales de 88 (gap 8) a la izquierda de la foto, gap 16. */
	.kiwi-ficha .kiwi-galeria {
		display: grid;
		grid-template-columns: var(--wp--preset--dimension--miniatura) minmax(0, 1fr);
		gap: var(--wp--preset--spacing--40);
		align-items: start;
	}

	.kiwi-galeria .wc-block-product-gallery-large-image {
		order: 0;
		grid-column: 2;
		grid-row: 1;
	}

	.kiwi-galeria .wc-block-product-gallery-thumbnails {
		grid-column: 1;
		grid-row: 1;
		border-bottom: 0;
	}

	.kiwi-galeria .wc-block-product-gallery-thumbnails__scrollable {
		flex-direction: column;
		gap: var(--wp--preset--spacing--20);
	}

	.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail {
		display: block;
		width: var(--wp--preset--dimension--miniatura);
		height: var(--wp--preset--dimension--miniatura);
	}

	.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail::before {
		content: none;
	}

	/* Miniatura: borde 1 en texto-muted (borde de control; interpretación sin confirmar por
	 * diseño, ver CLAUDE.md); la activa, 2 en verde-kiwi: el borde es su única señal, y
	 * 1,5 se dibuja como 1 en laptops (ver CLAUDE.md). */
	/* display:block: inline, la línea base sobresale de la casilla y Woo la toma
	 * como desborde (pinta una máscara degradada sobre la última miniatura). */
	.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail__image {
		display: block;
		box-sizing: border-box;
		object-fit: cover;
		opacity: 1;
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
		border-radius: var(--wp--preset--border-radius--base);
		filter: none;
	}

	.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail__image--is-active {
		border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	}

	.kiwi-galeria .wc-block-product-gallery-thumbnails__thumbnail:has(:focus-visible) {
		outline-offset: var(--wp--custom--foco--separacion);
	}

	/* Información: columna fija a 24 del borde superior al desplazar, gap 24. */
	.kiwi-ficha__info {
		position: sticky;
		top: var(--wp--preset--spacing--60);
		padding: 0;
	}

	.kiwi-ficha__titulo {
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-ficha__info .kiwi-precio {
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-ficha__info .kiwi-precio del {
		font-size: var(--wp--preset--font-size--20);
	}

	.wp-block-group.kiwi-sellos {
		gap: var(--wp--preset--spacing--40);
		padding-top: var(--wp--preset--spacing--60);
	}

	.kiwi-aviso-reloj {
		--kiwi-aviso-icono: var(--wp--preset--dimension--icono-20);
		--kiwi-aviso-gap: var(--wp--preset--spacing--30);
		font-size: var(--wp--preset--font-size--cuerpo);
	}

	.wp-block-group.kiwi-confianza {
		gap: var(--wp--preset--spacing--60);
	}

	.kiwi-confianza__cambio,
	.kiwi-confianza__pago {
		font-size: var(--wp--preset--font-size--cuerpo);
	}

	.kiwi-detalles {
		padding: var(--wp--preset--spacing--60) var(--kiwi-margen) var(--wp--preset--spacing--70);
		border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	}

	.kiwi-detalles__escritorio {
		display: grid;
	}

	/* Divisor sobre «Más vestidos» desde 900 (revisión 13, pregunta 21: en 900–1199 faltaba).
	 * Arriba, los 24 de Detalles en este tramo. */
	.kiwi-relacionados.wp-block-woocommerce-product-collection {
		gap: var(--wp--preset--spacing--70);
		padding: var(--wp--preset--spacing--60) var(--kiwi-margen) var(--wp--preset--spacing--80);
		border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	}

	.kiwi-relacionados__titulo {
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-relacionados.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
		gap: var(--wp--preset--spacing--40);
	}
}

/* Escritorio (ficha 1440, revisión 7, A1): galería + columna de 480, gap 48, padding
 * 8 / 40 / 52; columna de información con gap 24. Detalles y relacionados a ancho
 * completo, con divisor y padding 52 / 40 (el lienzo pide 56: fuera de escala, se usa
 * el tope, ver CLAUDE.md); relacionados con 4 piezas y gap 24. */
@media (width >= 1200px) {
	.kiwi-ficha__principal {
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--ficha-info);
		gap: var(--wp--preset--spacing--85);
		padding-bottom: var(--wp--preset--spacing--90);
	}

	.wp-block-group.kiwi-ficha__info {
		gap: var(--wp--preset--spacing--60);
	}

	.kiwi-detalles {
		padding-block: var(--wp--preset--spacing--90);
	}

	.kiwi-relacionados.wp-block-woocommerce-product-collection {
		gap: var(--wp--preset--spacing--60);
		padding-block: var(--wp--preset--spacing--90);
		border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	}

	.kiwi-relacionados.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
		gap: var(--wp--preset--spacing--60);
	}
}

/* ── 11. Listado ──────────────────────────────────────────────────────────
 * Sin filtros (revisión 10): título + conteo, Ordenar, grilla, «Ver más vestidos»
 * (hasta 899) y garantías. La grilla de cards y el selector de orden no se pueden
 * expresar con los atributos de los bloques.
 *
 * Móvil (lienzo 375): título + conteo (padding 16 / 16 / 8, gap 12), Ordenar a ancho
 * completo (48, padding 8 / 16), grilla de 2 (gap 24 / 8, padding 8 / 16 / 24). */

/* El layout de flujo de WordPress suma 24 arriba de cada hijo (también arriba de las
 * garantías); en el diseño los espacios son solo los paddings. */
.kiwi-listado > *,
.kiwi-resultados > *,
.kiwi-resultados__barra > *,
.kiwi-coleccion > * {
	margin-block: 0;
}

/* Paginación numérica (desde 900; sin diseño propio): conserva los 24 que le daba el flujo. */
.kiwi-coleccion > .wp-block-query-pagination {
	margin-block-start: var(--wp--preset--spacing--60);
}

.kiwi-resultados__barra {
	display: flex;
	flex-direction: column;
}

.kiwi-resultados__titulo {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40) var(--kiwi-pagina) var(--wp--preset--spacing--20);
}

.kiwi-resultados__titulo > * {
	margin: 0;
}

.kiwi-resultados__barra .wc-block-product-results-count p {
	margin: 0;
}

.kiwi-resultados__acciones {
	padding: var(--wp--preset--spacing--20) var(--kiwi-pagina);
}

.kiwi-resultados__acciones > * {
	margin: 0;
}

/* Selector de orden: nativo (no se rediseña), con el chevron del set.
 * Móvil: 48 de alto, Karla 16, chevron de 20. */
.kiwi-orden {
	position: relative;
	--kiwi-chevron: var(--wp--preset--dimension--icono-20);
}

/* El formulario de Woo flota y deja al contenedor con alto 0: el chevron se centraría en el vacío. */
.kiwi-orden .woocommerce-ordering {
	float: none;
	margin: 0;
}

.kiwi-orden select.orderby {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	width: 100%;
	height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 calc(var(--wp--preset--spacing--30) + var(--kiwi-chevron) + var(--wp--preset--spacing--20)) 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-orden::after {
	content: "";
	position: absolute;
	top: 50%;
	right: var(--wp--preset--spacing--30);
	width: var(--kiwi-chevron);
	height: var(--kiwi-chevron);
	transform: translateY(-50%);
	background-color: var(--wp--preset--color--grafito);
	-webkit-mask: url("../icons/chevron.svg") center / contain no-repeat;
	mask: url("../icons/chevron.svg") center / contain no-repeat;
	pointer-events: none;
}

/* Cards: grilla propia. Móvil: 2 columnas, gap 8 entre columnas y 24 entre filas,
 * padding 8 / 16 / 24. Columnas fijas por tramo (2 · 3 · 3 · 4), no el modo responsive
 * de la colección, que ignora nuestros cortes (revisión 10, §6). El nativo usa flex con
 * anchos calc() de especificidad (0,4,1): se replica la cadena de clases para ganarle. */
.kiwi-coleccion {
	padding: var(--wp--preset--spacing--20) var(--kiwi-pagina) var(--wp--preset--spacing--60);
}

.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--20);
}

.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards > li {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	width: auto;
	margin: 0;
}

.kiwi-cards > li > * {
	margin: 0;
}

.kiwi-cards .wc-block-components-product-image,
.kiwi-cards .wc-block-components-product-image img {
	border-radius: var(--wp--preset--border-radius--base);
}

.kiwi-cards .wp-block-post-title a {
	text-decoration: none;
}


.kiwi-cards .kiwi-precio del {
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* «Mostrando X de N» + «Ver más vestidos» (hasta 899): centrados, gap 8; botón de contorno de 48. */
.kiwi-ver-mas {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--60);
}

.kiwi-ver-mas__conteo {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
	font-variant-numeric: tabular-nums;
}

.kiwi-ver-mas__boton {
	display: grid;
	place-items: center;
	box-sizing: border-box;
	width: 100%;
	height: var(--wp--preset--dimension--boton-secundario);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

/* Mientras carga (revisión 13, P13): cambia el texto, no el color. */
.kiwi-ver-mas__boton[aria-busy="true"] {
	cursor: progress;
}

/* «No pudimos cargar más vestidos. Probá de nuevo.»: 16 en grafito, sin guayaba. Vacío
 * mientras no falla (la región se anuncia al llenarse). */
.kiwi-ver-mas__error {
	margin: 0;
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	text-align: center;
}

.kiwi-ver-mas__error:empty {
	display: none;
}

/* Cards de esqueleto mientras carga «Ver más vestidos»: la estructura de la card (foto 1:1,
 * nombre y precio) en divisor (#E3DFD2), sin animación. */
.kiwi-card-esqueleto {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	list-style: none;
}

.kiwi-card-esqueleto__foto,
.kiwi-card-esqueleto__linea {
	display: block;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--divisor);
}

.kiwi-card-esqueleto__foto {
	aspect-ratio: 1;
}

.kiwi-card-esqueleto__linea {
	width: 80%;
	height: var(--wp--preset--spacing--40);
}

.kiwi-card-esqueleto__linea--corta {
	width: 40%;
	height: var(--wp--preset--spacing--50);
}

/* Búsqueda sin resultados (revisión 10, estados del listado). No es un error: borde bruma,
 * sin guayaba. Sin conteo ni Ordenar, que el lienzo no dibuja.
 * Móvil (lienzo 375): tarjeta crema-alta, padding 24 / 16, en columna con gap 16: lupa de
 * 32 en texto-muted, mensaje Archivo 700 / 24 y botón primario de 56 a ancho completo;
 * debajo, 32 hasta las garantías. Tracking e interlínea, los de los titulares del tema
 * (el lienzo pide −0.025em, 1,15 y 1,12, que no son tokens; decisión de la dueña). */
.kiwi-resultados:has(.kiwi-sin-resultados) .wp-block-woocommerce-product-results-count,
.kiwi-resultados:has(.kiwi-sin-resultados) .kiwi-resultados__acciones {
	display: none;
}

@media (width < 900px) {
	.kiwi-coleccion:has(.kiwi-sin-resultados) {
		padding-bottom: var(--wp--preset--spacing--70);
	}
}

.kiwi-sin-resultados {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-sin-resultados > * {
	margin: 0;
}

/* Titular de estado (§2): Archivo 700 / −0.03em, aunque sea un H2 (que el tema pone a 600). */
.kiwi-sin-resultados__mensaje {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--24);
	letter-spacing: -0.03em;
	line-height: var(--wp--custom--interlinea--titular);
	text-wrap: pretty;
	/* El término lo escribe la persona: sin espacios y largo, desbordaba la tarjeta y la
	 * página a 375 (33 caracteres daban 449 de ancho). Se parte solo si no entra. */
	overflow-wrap: anywhere;
}

.kiwi-sin-resultados__mensaje::before {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-32);
	height: var(--wp--preset--dimension--icono-32);
	background-color: var(--wp--preset--color--texto-muted);
	-webkit-mask: url("../icons/lupa.svg") center / contain no-repeat;
	mask: url("../icons/lupa.svg") center / contain no-repeat;
}

.kiwi-sin-resultados__boton {
	width: 100%;
}

.kiwi-sin-resultados__boton .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding-block: 0;
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Desde 900 (lienzo 1440): grilla mensaje | botón con gap 32, padding 32 / 40; lupa al
 * lado del mensaje (gap 16, medida 660), mensaje a 32 y botón de 52, mínimo 236. */
@media (width >= 900px) {
	.kiwi-sin-resultados {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: var(--wp--preset--spacing--70);
		padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--80);
	}

	.kiwi-sin-resultados__mensaje {
		flex-direction: row;
		align-items: flex-start;
		max-width: var(--wp--preset--dimension--sin-resultados-texto);
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-sin-resultados__boton {
		width: auto;
		min-width: var(--wp--preset--dimension--sin-resultados-boton);
	}

	.kiwi-sin-resultados__boton .wp-block-button__link {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}
}

/* Franja de garantías. Móvil: 2 × 2, celdas de padding 16 e icono de 20; bordes por posición.
 * Escritorio: 4 columnas, padding 24 e icono de 20. */
.wp-block-group.kiwi-garantias {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kiwi-garantia {
	--kiwi-icono-tam: var(--wp--preset--dimension--icono-20);
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: var(--wp--preset--spacing--40);
	border-color: var(--wp--preset--color--divisor);
	border-style: solid;
	border-width: 0;
}

.kiwi-garantia:nth-child(odd) {
	border-right-width: var(--wp--custom--borde--fino);
}

.kiwi-garantia:nth-child(-n + 2) {
	border-bottom-width: var(--wp--custom--borde--fino);
}

/* Tablet (lienzo 768): padding 16 / 24 / 32 con gap 16; Ordenar a ancho natural (48,
 * padding 0 / 16); grilla de 3 con gap 32 / 16. */
@media (600px <= width < 900px) {
	/* El contenedor se ajusta al select: si no, ocupa todo el ancho y el chevron quedaba
	 * contra su borde derecho, lejos del campo (visto a 768 el 9 de octubre de 2026). */
	.kiwi-orden {
		width: fit-content;
	}

	.kiwi-orden select.orderby {
		width: auto;
		padding-left: var(--wp--preset--spacing--40);
	}

	.kiwi-coleccion {
		padding-bottom: var(--wp--preset--spacing--70);
	}

	.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--70) var(--wp--preset--spacing--40);
	}
}

/* Desde 900, el listado de escritorio, a todo el ancho (sin sidebar). Padding 24 / 40 / 40
 * y gap 20; barra con título + conteo a la izquierda y Ordenar (38) a la derecha, centrados.
 * Ventana media (lienzo 1024): grilla de 3 con gap 24 / 16; escritorio: grilla de 4 con
 * gap 16. Encima de 1440, el listado y la franja de garantías se centran a 1440. */
@media (width >= 900px) {
	.kiwi-resultados {
		display: flex;
		flex-direction: column;
		gap: var(--wp--preset--spacing--50);
		padding: var(--wp--preset--spacing--60) var(--kiwi-margen) var(--wp--preset--spacing--80);
	}

	.kiwi-resultados__barra {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: var(--wp--preset--spacing--50);
	}

	.kiwi-resultados__titulo,
	.kiwi-resultados__acciones {
		padding: 0;
	}

	.kiwi-orden {
		--kiwi-chevron: var(--wp--preset--dimension--icono-16);
	}

	.kiwi-orden select.orderby {
		width: auto;
		height: var(--wp--preset--dimension--orden-alto);
		font-size: var(--wp--preset--font-size--cuerpo);
	}

	.kiwi-coleccion {
		padding: 0;
	}

	.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40);
	}

	.wp-block-group.kiwi-garantias {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		padding-inline: calc(var(--kiwi-margen) - var(--kiwi-pagina));
	}

	.kiwi-garantia {
		padding: var(--wp--preset--spacing--60);
		border-width: 0 var(--wp--custom--borde--fino) 0 0;
	}

	/* Sin el borde inferior de las dos primeras celdas del 2 × 2 (esa regla pesa (0,2,0)). */
	.kiwi-garantia:nth-child(-n + 2) {
		border-bottom-width: 0;
	}

	.kiwi-garantia:last-child {
		border-right-width: 0;
	}
}

@media (width >= 1200px) {
	.kiwi-coleccion .wc-block-product-template.is-flex-container.kiwi-cards {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--40);
	}
}

/* ── 12. Header y footer móviles (revisión 7, A3 y A4) ────────────────────
 * Los bloques kiwi/menu-movil y kiwi/buscar-movil (plugin kiwi-header) y el
 * pattern kiwi/pie-movil. El menú y los enlaces son core/navigation: su CSS fija
 * color inherit con (0,3,0) y posiciona los submenús como desplegables; acá van
 * con (0,4,0) o más para ganarle sin depender del orden de las hojas. */

/* Página quieta debajo del panel de menú y de la búsqueda abiertos (view.js de cada bloque). */
.kiwi-sin-scroll {
	overflow: hidden;
}

/* Botones de 44 del header: menú (icono 24, pasa a cerrar al abrir) y lupa (24). */
.kiwi-menu-movil__boton,
.kiwi-buscar-movil__boton,
.kiwi-buscar-movil__cerrar {
	display: grid;
	place-items: center;
	width: var(--wp--preset--dimension--objetivo-tactil);
	height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--grafito);
	cursor: pointer;
}

.kiwi-menu-movil__boton svg,
.kiwi-buscar-movil__cerrar svg {
	display: block;
	width: var(--wp--preset--dimension--icono-24);
	height: var(--wp--preset--dimension--icono-24);
}

.kiwi-buscar-movil__boton svg {
	display: block;
	width: var(--wp--preset--dimension--icono-24);
	height: var(--wp--preset--dimension--icono-24);
}

.kiwi-menu-movil__cerrar,
.kiwi-menu-movil__boton[aria-expanded="true"] .kiwi-menu-movil__abrir {
	display: none;
}

.kiwi-menu-movil__boton[aria-expanded="true"] .kiwi-menu-movil__cerrar {
	display: block;
}

/* Panel de menú: bajo el header (view.js fija dónde termina), hasta el fondo, con scroll propio. */
.kiwi-menu-movil__panel {
	position: fixed;
	top: var(--kiwi-menu-arriba, 0);
	right: 0;
	bottom: 0;
	left: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	background-color: var(--wp--preset--color--crema);
}

.kiwi-menu-movil__panel[hidden] {
	display: none;
}

/* «Todos los vestidos» (revisión 10): fila de 56, Archivo 600 / 20 en grafito, padding 0 / 16,
 * divisor abajo. Sin el subrayado guayaba del lienzo: era el estilo de «Rebajas», y la
 * guayaba quedó solo para el badge y los errores (§2). */
.kiwi-menu-movil__todos,
.kiwi-menu-movil__todos:hover {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0 var(--wp--preset--spacing--40);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.01em;
	text-decoration: none;
}

.kiwi-menu-movil__todos:hover {
	color: var(--wp--preset--color--verde-kiwi);
}

/* Tarjeta lima «Es un regalo y no sé la talla» (el único lima sólido del panel): borde verde-kiwi,
 * padding 16, gap 16; título Archivo 600 / 20 y «Guiame» Archivo 700 / 16, en grafito. Toda la
 * tarjeta es el enlace. «Guiame» con la flecha de 20, gap 8 (revisión 12, como el lienzo del menú abierto). */
.kiwi-menu-movil__regalo,
.kiwi-menu-movil__regalo:hover {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--lima-kiwi);
	color: var(--wp--preset--color--grafito);
	text-decoration: none;
}

.kiwi-menu-movil__regalo-titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.01em;
	text-wrap: balance; /* «Es un regalo / y no sé la talla», como en la home */
}

.kiwi-menu-movil__regalo-accion {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	white-space: nowrap;
}

.kiwi-menu-movil__regalo-accion::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: currentColor;
	-webkit-mask: url("../icons/flecha.svg") center / contain no-repeat;
	mask: url("../icons/flecha.svg") center / contain no-repeat;
}

/* Pie del panel: padding 24 / 16, gap 16 (tarjeta lima, WhatsApp y ayuda). */
.kiwi-menu-movil__pie {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40);
}

/* «Preguntar por WhatsApp»: secundario de 48, logo a color de 20 con gap 8 (único de la vista). */
.kiwi-menu-movil__wa,
.kiwi-menu-movil__wa:hover {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	height: var(--wp--preset--dimension--boton-secundario);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-menu-movil__wa svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

/* Enlaces de ayuda: filas de 44, Karla 16, texto medio. */
.kiwi-menu-movil .kiwi-menu-movil__ayuda .wp-block-navigation__container {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}

.kiwi-menu-movil .kiwi-menu-movil__ayuda .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Búsqueda a pantalla completa. */
.kiwi-buscar-movil__dialogo {
	position: fixed;
	inset: 0;
	z-index: 100000;
	overflow-y: auto;
	overscroll-behavior: contain;
	background-color: var(--wp--preset--color--crema);
}

.kiwi-buscar-movil__dialogo[hidden] {
	display: none;
}

/* Cabecera: padding 8 / 8 / 8 / 16; campo de 48 con borde verde de 2 (el seleccionado:
 * 1,5 se dibuja como 1 en laptops) y «Cerrar búsqueda» (44). */
.kiwi-buscar-movil__cabecera {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--20) var(--wp--preset--spacing--20) var(--wp--preset--spacing--40);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-buscar-movil__form {
	flex: 1;
	min-width: 0;
	margin: 0;
}

.kiwi-buscar-movil__campo {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--texto-muted);
}

.kiwi-buscar-movil__campo svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	color: var(--wp--preset--color--texto-muted);
}

.kiwi-buscar-movil__campo input {
	flex: 1;
	min-width: 0;
	height: 100%;
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-buscar-movil__campo input::placeholder {
	color: var(--wp--preset--color--texto-muted);
	opacity: 1;
}

/* El anillo de foco va en la caja del campo, no en el input sin borde que tiene adentro. */
.kiwi-buscar-movil__campo input:focus-visible {
	outline: none;
}

.kiwi-buscar-movil__campo:has(input:focus-visible) {
	outline: var(--wp--custom--foco--ancho) solid var(--wp--preset--color--verde-kiwi);
	outline-offset: var(--wp--custom--foco--separacion);
}

/* Footer móvil: acordeones Comprar y Ayuda de 56 entre divisores texto-medio;
 * etiqueta Karla 700 / 12 en texto-débil (4,96:1 sobre grafito), chevron bruma de 24
 * en una casilla de 44; abiertos, enlaces de 44 en Karla 16 crema y 16 al pie. */
/* El layout flex vertical de WordPress alinea a la izquierda: los acordeones van a todo el ancho. */
.kiwi-pie-movil__acordeones {
	align-self: stretch;
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-medio);
}

.kiwi-pie-movil .kiwi-pie-movil__acordeon {
	margin: 0;
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-medio);
}

.kiwi-pie-movil .kiwi-pie-movil__acordeon > * {
	margin-block: 0;
}

.kiwi-pie-movil__acordeon > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: var(--wp--preset--dimension--boton-primario);
	color: var(--wp--preset--color--texto-debil);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	list-style: none;
	cursor: pointer;
}

.kiwi-pie-movil__acordeon > summary::-webkit-details-marker {
	display: none;
}

.kiwi-pie-movil__acordeon > summary::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--objetivo-tactil);
	height: var(--wp--preset--dimension--objetivo-tactil);
	margin-right: calc(-1 * var(--wp--preset--spacing--20));
	background-color: var(--wp--preset--color--bruma);
	-webkit-mask: url("../icons/chevron.svg") center / var(--wp--preset--dimension--icono-24) no-repeat;
	mask: url("../icons/chevron.svg") center / var(--wp--preset--dimension--icono-24) no-repeat;
}

.kiwi-pie-movil__acordeon[open] > summary::after {
	transform: rotate(180deg);
}

.kiwi-pie-movil .kiwi-nav-pie--movil {
	padding-bottom: var(--wp--preset--spacing--40);
}

.kiwi-pie-movil .kiwi-nav-pie--movil .wp-block-navigation__container {
	align-items: stretch;
	gap: 0;
	padding-bottom: 0;
}

.kiwi-pie-movil .kiwi-nav-pie--movil .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
}

/* WhatsApp en el footer (los dos anchos): logo en monocromo, del color del enlace
 * (crema sobre grafito), 20 con gap 8. El plugin kiwi-whatsapp ya reescribió
 * /whatsapp/ a wa.me cuando llega acá. */
.kiwi-nav-pie a[href^="https://wa.me/"] {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-nav-pie a[href^="https://wa.me/"]::before {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: currentColor;
	-webkit-mask: url("../icons/whatsapp-mono.svg") center / contain no-repeat;
	mask: url("../icons/whatsapp-mono.svg") center / contain no-repeat;
}

/* ── 13. Pedido recibido: datos para copiar (§6, gracias A) ───────────────
 * Marcado del plugin kiwi-sinpe. Valor a 32 en los dos anchos (decisión de la dueña,
 * octubre 2026: el 24 del handoff y el 40 del lienzo de 375 son restos de versiones
 * anteriores). Móvil: tarjetas apiladas (gap 12, padding 16), botón de 48 con icono 20.
 * Escritorio: tres columnas (gap 16, padding 20), botón de 44 sin icono. La referencia
 * es el bloque lima de la vista.
 * Las etiquetas van en texto-muted, no en el #8A9189 del lienzo (2,9:1 sobre crema). */
.kiwi-sinpe-datos {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-sinpe-dato {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-dato p {
	margin: 0;
}

.kiwi-sinpe-dato__etiqueta {
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-sinpe-dato__valor {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: normal;
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.01em;
}

.kiwi-sinpe-dato--monto .kiwi-sinpe-dato__valor {
	letter-spacing: -0.02em;
}

.kiwi-sinpe-dato--referencia .kiwi-sinpe-dato__valor {
	letter-spacing: 0.02em;
}

.kiwi-sinpe-dato__nota {
	color: var(--wp--preset--color--texto-medio);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: normal;
}

.kiwi-sinpe-dato__nota--larga {
	line-height: var(--wp--custom--interlinea--dato);
}

.kiwi-sinpe-copiar:not([hidden]) {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0;
	border: 0;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-sinpe-copiar__icono:not([hidden]) {
	display: flex;
}

.kiwi-sinpe-copiar__icono svg {
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

/* Referencia (y la tarjeta lima de la pantalla 16): lima con borde verde, todo en grafito;
 * el botón es grafito con texto crema. */
.kiwi-sinpe-dato--referencia,
.kiwi-sinpe-dato--lima {
	border-color: var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--lima-kiwi);
}

.kiwi-sinpe-dato--referencia .kiwi-sinpe-dato__etiqueta,
.kiwi-sinpe-dato--referencia .kiwi-sinpe-dato__nota,
.kiwi-sinpe-dato--lima .kiwi-sinpe-dato__etiqueta,
.kiwi-sinpe-dato--lima .kiwi-sinpe-dato__nota {
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-dato--referencia .kiwi-sinpe-copiar,
.kiwi-sinpe-dato--lima .kiwi-sinpe-copiar {
	background-color: var(--wp--preset--color--grafito);
}

@media (width >= 900px) {
	.kiwi-sinpe-datos {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-dato {
		padding: var(--wp--preset--spacing--50);
	}

	/* El botón de escritorio va sin icono, también en el estado copiado. */
	.kiwi-sinpe-copiar:not([hidden]) {
		min-height: var(--wp--preset--dimension--objetivo-tactil);
	}

	.kiwi-sinpe-copiar__icono:not([hidden]) {
		display: none;
	}
}

/* ── 14. Pedido recibido: comprobante (§6, gracias A y B; pantalla 13) ────
 * Marcado del plugin kiwi-sinpe. «Ya lo pagué»: borde superior divisor, padding 16
 * arriba, gap 8; título Archivo 600 a 20; botón primario de 56. Comprobante recibido:
 * fila crema-alta con borde, padding 12, gap 12, nombre 700 a 16, estado a 12 en
 * texto-muted y «Cambiar» en verde-kiwi.
 * Los estados de error reusan estas piezas: la pantalla 13 completa (filas de estado con
 * el anillo guayaba) es maquetación pendiente. */
.kiwi-sinpe-comprobante {
	margin-top: var(--wp--preset--spacing--40);
	padding-top: var(--wp--preset--spacing--40);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-comprobante__form,
.kiwi-sinpe-comprobante__inicial:not([hidden]),
.kiwi-sinpe-comprobante__error:not([hidden]),
.kiwi-sinpe-comprobante__campo:not([hidden]) {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-sinpe-comprobante p {
	margin: 0;
}

.kiwi-sinpe-comprobante__titulo {
	margin: 0;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	line-height: normal;
	letter-spacing: -0.02em;
}

.kiwi-sinpe-comprobante__texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-comprobante__subir:not([hidden]),
.kiwi-sinpe-comprobante__accion:not([hidden]) {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0;
	border: 0;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

/* Hover y active del botón primario (§2, revisión 11). Los core/button los toman de
 * theme.json; estos son <button> propios y su fondo pisaría al de theme.json. */
.kiwi-sinpe-comprobante__subir:hover,
.kiwi-sinpe-comprobante__accion:hover {
	background-color: var(--wp--preset--color--verde-hover);
}

.kiwi-sinpe-comprobante__subir:active,
.kiwi-sinpe-comprobante__accion:active {
	background-color: var(--wp--preset--color--verde-activo);
}

.kiwi-sinpe-comprobante__archivo:not([hidden]),
.kiwi-sinpe-comprobante__nota {
	display: flex;
	flex-direction: column;
	padding: var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-comprobante__nombre,
.kiwi-sinpe-comprobante__nota-titulo {
	font-weight: 700;
	overflow-wrap: anywhere;
}

.kiwi-sinpe-comprobante__meta {
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
}

.kiwi-sinpe-comprobante__nota p:not(.kiwi-sinpe-comprobante__nota-titulo) {
	color: var(--wp--preset--color--texto-medio);
	line-height: var(--wp--custom--interlinea--dato);
}

/* Con script, «Cambiar» va en la misma fila que el archivo recibido. Sin script queda
 * el campo nativo debajo de la fila. */
.kiwi-sinpe-comprobante:has(.kiwi-sinpe-comprobante__cambiar:not([hidden])) .kiwi-sinpe-comprobante__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: stretch;
	gap: 0;
}

.kiwi-sinpe-comprobante:has(.kiwi-sinpe-comprobante__cambiar:not([hidden])) .kiwi-sinpe-comprobante__archivo {
	border-right: 0;
}

.kiwi-sinpe-comprobante__cambiar:not([hidden]) {
	min-width: var(--wp--preset--dimension--objetivo-tactil);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-left: 0;
	border-radius: 0 var(--wp--preset--border-radius--base) var(--wp--preset--border-radius--base) 0;
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

/* ── 15. Aviso «Se confecciona por encargo» en carrito y checkout ─────────
 * Lo inserta el plugin kiwi-encargo (copy fijo, no contenido). Caja aviso con el reloj
 * índigo de 20, gap 8, texto de 12 en grafito. Carrito: padding 8 / 12, interlínea 1,45,
 * sobre el bloque de Woo. Checkout: padding 12, interlínea 1,4, dentro de la tarjeta de
 * pago. En la ficha usa el estilo de .kiwi-aviso-reloj de la sección 10. */
.kiwi-aviso-encargo--carrito,
.kiwi-aviso-encargo--checkout {
	--kiwi-aviso-icono: var(--wp--preset--dimension--icono-20);
	--kiwi-aviso-gap: var(--wp--preset--spacing--20);
	display: flex;
	align-items: flex-start;
	gap: var(--kiwi-aviso-gap);
	margin: 0;
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
}

.kiwi-aviso-encargo--checkout {
	padding: var(--wp--preset--spacing--30);
	line-height: var(--wp--custom--interlinea--compacta);
}

/* Fuera del flujo de .kiwi-aviso-reloj (que lo posiciona en absoluto para la ficha). */
.kiwi-aviso-encargo--carrito::before,
.kiwi-aviso-encargo--checkout::before {
	position: static;
}

/* Carrito vaciado sin recargar: Woo cambia el bloque lleno por el vacío y el aviso se va
 * con las piezas. Antes de que React pinte están los dos, y el aviso se queda. */
.kiwi-aviso-encargo--carrito:has(+ .wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block):not(:has(+ .wp-block-woocommerce-cart .wp-block-woocommerce-filled-cart-block)) {
	display: none;
}

/* ── 16. Regalar sin saber la talla (§6, lienzo 12 de Flujo) ─────────────
 * Pattern kiwi/regalo. Móvil (hasta 899): banda lima con padding 24 / 16 y gap 8 (H1 32,
 * interlínea 1,08), pasos en secciones de padding 24 / 16 separadas por divisor, gap 16,
 * y los botones al pie (padding 24 / 16 / 32, gap 8: primario 56, secundario 48).
 * Desde 900: banda de padding 52 / 40 con el titular a la izquierda (gap 12, H1 52,
 * interlínea 1, bajada 20) y los botones en una columna de 400 (primario 52); pasos en
 * tres tarjetas crema-alta con borde bruma (padding 24, gap 16), en una grilla con gap
 * 20 y padding 40; la nota va en su propia tarjeta (padding 16) debajo del paso 3. */
.kiwi-regalo > *,
.kiwi-regalo__banda > *,
.kiwi-regalo__titular > *,
.kiwi-regalo__pasos > *,
.kiwi-regalo__paso > *,
.kiwi-regalo__columna > *,
.kiwi-regalo__nota > * {
	margin-block: 0;
}

.kiwi-regalo__banda {
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--verde-kiwi);
}

.kiwi-regalo__titular {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-regalo__eyebrow {
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-regalo__titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.03em;
	text-wrap: pretty;
}

.kiwi-regalo__bajada {
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-regalo__paso,
.kiwi-regalo__columna {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

/* En móvil el paso 3 y la nota son una sola sección: la columna pone el padding y el divisor. */
.kiwi-regalo__columna > .kiwi-regalo__paso--cambio {
	display: contents;
}

/* Número de 16 en verde-kiwi y título Archivo 600 / 20, en la misma línea de base (gap 8). */
.kiwi-regalo__paso-titulo,
.kiwi-regalo__nota-titulo {
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.01em;
}

.kiwi-regalo__numero {
	margin-inline-end: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	letter-spacing: 0;
}

.kiwi-regalo__texto,
.kiwi-regalo__consejos li,
.kiwi-regalo__aviso {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

/* Consejos: check del set de 20 en verde-kiwi, gap 12; título en Karla 700 grafito y el texto debajo (gap 4). */
.kiwi-regalo__consejos {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-regalo__consejos li {
	position: relative;
	padding-inline-start: calc(var(--wp--preset--dimension--icono-20) + var(--wp--preset--spacing--30));
}

.kiwi-regalo__consejos li::before,
.kiwi-regalo__aviso::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: var(--kiwi-icono-color);
	-webkit-mask: var(--kiwi-icono) center / contain no-repeat;
	mask: var(--kiwi-icono) center / contain no-repeat;
}

.kiwi-regalo__consejos li::before {
	--kiwi-icono: url("../icons/check.svg");
	--kiwi-icono-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-regalo__consejos strong,
.kiwi-regalo__aviso strong {
	display: block;
	margin-bottom: var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--grafito);
	font-weight: 700;
}

/* «Abrir la guía de tallas»: en esta página va en verde-kiwi, Karla 700 subrayado (el lienzo); 44 de toque. */
.kiwi-regalo__guia a {
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: var(--wp--custom--subrayado--separacion);
}

.kiwi-regalo__guia a::before {
	--kiwi-icono-color: var(--wp--preset--color--verde-kiwi);
}

/* Aviso del cambio: fondo aviso, padding 16, devolución índigo de 20 con gap 12. */
.kiwi-regalo__aviso {
	position: relative;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) calc(var(--wp--preset--spacing--40) + var(--wp--preset--dimension--icono-20) + var(--wp--preset--spacing--30));
	border-radius: var(--wp--preset--border-radius--base);
}

.kiwi-regalo__aviso::before {
	--kiwi-icono: url("../icons/devolucion.svg");
	--kiwi-icono-color: var(--wp--preset--color--indigo);
	top: var(--wp--preset--spacing--40);
	left: var(--wp--preset--spacing--40);
}

.kiwi-regalo__nota {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
}

/* Botones: Archivo 16; primario 56 en móvil, secundario 48 con el logo de WhatsApp a color. */
.kiwi-regalo__pie {
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) var(--wp--preset--spacing--70);
}

.wp-block-buttons.kiwi-regalo__botones {
	gap: var(--wp--preset--spacing--20);
}

.kiwi-regalo__botones .wp-block-button__link {
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-regalo__primario .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding-block: 0;
}

@media (width >= 900px) {
	.kiwi-regalo__banda {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--regalo-acciones);
		align-items: end;
		gap: var(--wp--preset--spacing--80);
		padding: var(--wp--preset--spacing--90) var(--kiwi-margen);
	}

	.kiwi-regalo__titular {
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-regalo__titulo {
		font-size: var(--wp--preset--font-size--52);
		line-height: var(--wp--custom--interlinea--display);
		letter-spacing: -0.035em;
	}

	.kiwi-regalo__bajada {
		max-width: var(--wp--preset--dimension--regalo-bajada);
		font-size: var(--wp--preset--font-size--20);
		line-height: var(--wp--custom--interlinea--cuerpo);
	}

	.kiwi-regalo__primario .wp-block-button__link {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}

	.kiwi-regalo__pasos {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: start;
		gap: var(--wp--preset--spacing--50);
		padding: var(--wp--preset--spacing--80) var(--kiwi-margen);
	}

	.kiwi-regalo__paso {
		padding: var(--wp--preset--spacing--60);
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
		border-radius: var(--wp--preset--border-radius--base);
		background-color: var(--wp--preset--color--crema-alta);
	}

	.kiwi-regalo__columna {
		gap: var(--wp--preset--spacing--50);
		padding: 0;
		border: 0;
	}

	.kiwi-regalo__columna > .kiwi-regalo__paso--cambio {
		display: flex;
	}
}

/* ── 17. Línea legal del footer (pattern kiwi/pie-legal) ─────────────────
 * «© año Kiwi»: divisor texto-medio arriba, padding superior 16. En el footer desde 600 ocupa
 * toda la fila de la grilla. */
.kiwi-pie-legal {
	margin: 0;
	padding-top: var(--wp--preset--spacing--40);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-medio);
}

.wp-block-group.kiwi-pie > .kiwi-pie-legal {
	grid-column: 1 / -1;
}

/* El acordeón ya cierra con su divisor: la línea legal va pegada a él, sin repetirlo. */
.kiwi-pie-movil .kiwi-pie-legal {
	align-self: stretch;
	padding-top: 0;
	border-top: 0;
}

/* ── 18. Marca del footer (pattern kiwi/pie-marca) ───────────────────────
 * Descripción en Karla 16, interlínea 1,55, texto-débil (bruma nunca es texto; el lienzo
 * la pinta así desde la revisión 10). */
.kiwi-pie-marca__descripcion {
	margin: 0;
	line-height: var(--wp--custom--interlinea--cuerpo);
}

/* ── 19. Pedido recibido según el estado (lienzo de la revisión 12, 375 y 1440) ──
 * Marcado del plugin kiwi-sinpe: pagado, completado, cancelado sin pago, cancelado con
 * pago y aviso neutro. La sección va a todo el ancho y alinea con el header por
 * --kiwi-margen. Verde con texto crema si el pedido sigue su curso; divisor con texto
 * grafito en cancelado y aviso neutro (sin guayaba: no es un error).
 * Hasta 899 (lienzo 375): banda con padding 24, antetítulo Karla 700 / 12, gap 8 y
 * titular de estado Archivo 700 / 24, −0.03em, 1,08; cuerpo con padding 24, gap 24: la
 * línea (16 / 1,5, texto-medio), los pasos en filas, la tarjeta del resumen y WhatsApp
 * de 48 a todo el ancho.
 * Desde 900 (lienzo 1440): banda con padding 40, gap 12, titular 32 y la línea adentro
 * (20 / 1,55, medida 620); cuerpo con padding 32 / 52 y, con el detalle, dos columnas
 * (gap 32): pasos (en una tarjeta de tres columnas desde 1200) y WhatsApp de 52 a la izquierda, el
 * resumen en una de 420 a la derecha. Con la clave sola, una columna y el formulario
 * del correo debajo, a 420. */
.kiwi-sinpe-estado {
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-estado p,
.kiwi-sinpe-estado h1,
.kiwi-sinpe-estado h2 {
	margin: 0;
}

.kiwi-sinpe-estado__banda {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--60) var(--kiwi-margen);
}

.kiwi-sinpe-estado__banda--verde {
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
}

.kiwi-sinpe-estado__banda--divisor {
	background-color: var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-estado__antetitulo {
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: normal;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.kiwi-sinpe-estado__titulo {
	color: inherit;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--24);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.kiwi-sinpe-estado__cuerpo {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--60) var(--kiwi-margen);
}

.kiwi-sinpe-estado__texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
	text-wrap: pretty;
}

.kiwi-sinpe-estado .wp-block-buttons {
	margin: 0;
}

/* Pasos del pedido pagado: filas de 44 con divisor arriba y sin gap entre filas (revisión
 * 12); disco de 20 con borde 2 verde-kiwi, lleno en verde (hecho) o en lima (actual, con
 * el texto a 700), a 12 del texto. */
.kiwi-sinpe-pasos {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-sinpe-pasos__paso {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	font-size: var(--wp--preset--font-size--cuerpo);
	font-weight: 500;
}

.kiwi-sinpe-pasos__paso::before {
	content: "";
	flex: none;
	box-sizing: border-box;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: 50%;
	background-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-pasos__paso--actual {
	font-weight: 700;
}

.kiwi-sinpe-pasos__paso--actual::before {
	background-color: var(--wp--preset--color--lima-kiwi);
}

/* Resumen (con el correo de compra; revisión 12): tarjeta crema-alta con borde bruma,
 * padding 16, gap 12; título «Resumen» como etiqueta de 12 (desde 900, «Pedido #N» a 24);
 * líneas a 16; «Envío» en texto-medio con divisor arriba y padding 12; total Archivo 700
 * / 20. Debajo, en la misma tarjeta, las secciones «Entrega» y «Es un regalo · va sin
 * precios»: divisor arriba, padding 12, etiqueta de 12 a 4 del texto (16 / 1,5,
 * texto-medio). */
.kiwi-sinpe-resumen {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-sinpe-resumen__titulo,
.kiwi-sinpe-resumen__seccion-titulo {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: normal;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.kiwi-sinpe-resumen__texto {
	margin: 0;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
	overflow-wrap: anywhere;
}

.kiwi-sinpe-resumen__lineas {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
}

.kiwi-sinpe-resumen__linea {
	display: flex;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-resumen__linea dt,
.kiwi-sinpe-resumen__linea dd {
	margin: 0;
}

.kiwi-sinpe-resumen__linea dd {
	flex: none;
	font-variant-numeric: tabular-nums;
}

.kiwi-sinpe-resumen__linea--envio {
	padding-top: var(--wp--preset--spacing--30);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--texto-medio);
}

.kiwi-sinpe-resumen__linea--total {
	align-items: baseline;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--20);
}

.kiwi-sinpe-resumen__seccion {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	padding-top: var(--wp--preset--spacing--30);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

/* Formulario del correo de compra (en lugar del de Woo), debajo del contenido de Kiwi en
 * todos los estados: tarjeta crema-alta con borde bruma, padding 24 / 16, gap 16; título
 * de tarjeta (Archivo 600, 20 y 24 desde 900, −0.01em); etiqueta Karla 700 / 16 a 4 del
 * campo; campo de 48 con el borde de control; botón primario de 56. */
.kiwi-sinpe-correo {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-estado > .kiwi-sinpe-correo {
	margin: 0 var(--kiwi-margen) var(--wp--preset--spacing--60);
}

.kiwi-sinpe-correo p,
.kiwi-sinpe-correo h2 {
	margin: 0;
}

.kiwi-sinpe-correo__titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	line-height: normal;
	letter-spacing: -0.01em;
}

.kiwi-sinpe-correo__texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-sinpe-correo__form {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
}

.kiwi-sinpe-correo__fila {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
}

.kiwi-sinpe-correo__etiqueta {
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-correo__campo {
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-correo__campo::placeholder {
	color: var(--wp--preset--color--texto-muted);
	opacity: 1;
}

.kiwi-sinpe-correo__boton {
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0;
	border: 0;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-sinpe-correo__boton:hover {
	background-color: var(--wp--preset--color--verde-hover);
}

.kiwi-sinpe-correo__boton:active {
	background-color: var(--wp--preset--color--verde-activo);
}

/* Correo que no coincide con el del pedido (revisión 12; texto de la dueña, octubre 2026):
 * aviso a nivel de formulario sobre el campo, fondo aviso con borde guayaba de 2 y texto
 * grafito 16 / 1,5 (nunca guayaba como texto); el campo, también con borde guayaba de 2
 * (contra el borde normal la guayaba da solo 1,28:1: el grosor marca el error; sobre
 * crema-alta, 4,58:1). No dice cuál dato falló. */
.kiwi-sinpe-correo__campo[aria-invalid="true"] {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
}

.kiwi-sinpe-correo__error {
	margin: 0;
	padding: var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

/* «¿No te acordás? Escribinos por WhatsApp»: 16 en texto-medio, enlace en línea, sin
 * logo (el botón de WhatsApp de la pantalla ya lo lleva). */
.kiwi-sinpe-correo__ayuda {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

@media (width >= 900px) {
	.kiwi-sinpe-estado__banda {
		gap: var(--wp--preset--spacing--30);
		padding: var(--wp--preset--spacing--80) var(--kiwi-margen);
	}

	.kiwi-sinpe-estado__titulo {
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-sinpe-estado__texto--banda {
		max-width: var(--wp--preset--dimension--estado-bajada);
		color: inherit;
		font-size: var(--wp--preset--font-size--20);
		line-height: var(--wp--custom--interlinea--cuerpo);
	}

	.kiwi-sinpe-estado__cuerpo {
		padding: var(--wp--preset--spacing--70) var(--kiwi-margen) var(--wp--preset--spacing--90);
	}

	/* Con el detalle: pasos y WhatsApp a la izquierda; el resumen a la derecha, en una
	 * columna de 420 que ocupa las dos filas. */
	.kiwi-sinpe-estado__cuerpo--con-resumen {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--estado-resumen);
		grid-template-rows: auto 1fr;
		column-gap: var(--wp--preset--spacing--70);
		row-gap: var(--wp--preset--spacing--60);
		align-items: start;
	}

	.kiwi-sinpe-estado__cuerpo--con-resumen > * {
		grid-column: 1;
	}

	.kiwi-sinpe-estado__cuerpo--con-resumen > .kiwi-sinpe-resumen {
		grid-column: 2;
		grid-row: 1 / -1;
	}

	.kiwi-sinpe-resumen {
		padding: var(--wp--preset--spacing--60);
	}

	.kiwi-sinpe-resumen__titulo {
		color: var(--wp--preset--color--grafito);
		font-family: var(--wp--preset--font-family--archivo);
		font-weight: 600;
		font-size: var(--wp--preset--font-size--24);
		letter-spacing: -0.02em;
		text-transform: none;
	}

	/* WhatsApp: secundario de 52, del ancho de su texto, alineado a la izquierda. */
	.kiwi-sinpe-estado .wp-block-buttons > .wp-block-button.wp-block-button__width-100 {
		flex-basis: auto;
		width: auto;
	}

	.kiwi-sinpe-estado .kiwi-boton-secundario .wp-block-button__link {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}

	/* Formulario del correo, con la clave sola: debajo, a la medida de la columna. */
	.kiwi-sinpe-estado > .kiwi-sinpe-correo {
		box-sizing: border-box;
		max-width: var(--wp--preset--dimension--estado-resumen);
	}

	.kiwi-sinpe-correo__titulo {
		font-size: var(--wp--preset--font-size--24);
	}
}

/* Pasos desde 1200: una tarjeta de tres columnas, cada paso con padding 16 (lienzo de
 * 1440). Entre 900 y 1199 siguen en filas, como en móvil: con el resumen al lado, la
 * columna de la izquierda queda en unos 370 a 900 y «En confección» no entra en un tercio
 * (las tres columnas entran desde unos 1010). No hay lienzo intermedio; llevado a diseño. */
@media (width >= 1200px) {
	.kiwi-sinpe-pasos {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
		border-radius: var(--wp--preset--border-radius--base);
		background-color: var(--wp--preset--color--crema-alta);
	}

	.kiwi-sinpe-pasos__paso {
		min-height: 0;
		padding: var(--wp--preset--spacing--40);
		border-top: 0;
	}
}

/* ── 20. Home (§6; lienzos de la home a 375 y 1440) ──────────────────────
 * Pattern kiwi/portada. Móvil (lienzo 375): foto de 280 arriba; texto con padding
 * 24 / 16 / 32 y gap 16 (H1 40, bajada 16, un solo botón de 56 a todo el ancho); entradas
 * apiladas (padding 24 / 16, gap 8; tarjetas de padding 16 con título de 20); los vestidos
 * con el dibujo del listado (sección 11), sin Ordenar.
 * Tablet (600–899): lo mismo, con la foto de alto = ½ ancho (§6).
 * Desde 900 (lienzo 1440): texto | foto, H1 48, bajada 20, dos botones de 52 con gap 12;
 * entradas en dos columnas (gap 20, padding 24 / 40; tarjetas de padding 24, título 24).
 * Ventana media: texto y foto en columnas iguales (con la foto de 620, el H1 de 48 quedaba
 * en unos 200 de ancho; decisión de la dueña, octubre 2026). Escritorio: foto de 620 con
 * alto mínimo de 420 y H1 60. Encima de 1440, hero y entradas se centran a 1440. */
.kiwi-portada > *,
.kiwi-hero > *,
.kiwi-hero__texto > *,
.kiwi-entradas > *,
.kiwi-entrada > *,
.kiwi-entrada__texto > * {
	margin-block: 0;
}

.kiwi-hero {
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

/* La foto llena su casilla, sea cual sea su proporción. Sin foto cargada, la casilla
 * queda con el fondo aviso (y sin el icono de imagen rota del navegador). */
.kiwi-hero__foto {
	position: relative;
	height: var(--wp--preset--dimension--hero-foto-movil);
	overflow: hidden;
}

.kiwi-hero__foto .kiwi-hero__imagen {
	position: absolute;
	inset: 0;
	margin: 0;
}

/* Con foto, kiwi-portada pinta un <picture> (WebP con respaldo JPG): ocupa el hueco para que la
 * imagen lo cubra. Recorte al centro en todos los anchos (brief Y de la revisión 13). */
.kiwi-hero__imagen picture {
	display: block;
	width: 100%;
	height: 100%;
}

.kiwi-hero__imagen img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.kiwi-hero__imagen img:not([src]) {
	display: none;
}

.kiwi-hero__texto {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) var(--wp--preset--spacing--70);
}

/* Antetítulo fijo «Hecho por encargo» (revisión 12): Karla 700, 12, 0,14em, mayúsculas,
 * verde-kiwi, sobre el titular, con el gap del grupo (16; 24 desde 900). */
.kiwi-hero__antetitulo {
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--legal);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.kiwi-hero__titulo {
	font-size: var(--wp--preset--font-size--40);
	line-height: var(--wp--custom--interlinea--display);
	letter-spacing: -0.035em;
	text-wrap: pretty;
}

.kiwi-hero__bajada {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
}

.wp-block-buttons.kiwi-hero__botones {
	gap: var(--wp--preset--spacing--30);
}

.kiwi-hero__primario {
	width: 100%;
}

.kiwi-hero__botones .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0 var(--wp--preset--spacing--60);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Entradas. Toda la tarjeta es el enlace del título (se estira con ::after); el anillo
 * de foco va en la tarjeta. */
.kiwi-entradas {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-entrada {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
}

.kiwi-entrada--regalo {
	border-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-entrada__texto {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
}

.kiwi-entrada__titulo {
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.01em;
	text-wrap: balance; /* «Es un regalo / y no sé la talla»: sin «talla» sola a 375 */
}

.kiwi-entrada__titulo a,
.kiwi-entrada__titulo a:hover {
	color: var(--wp--preset--color--grafito);
	text-decoration: none;
}

.kiwi-entrada__titulo a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.kiwi-entrada__titulo a:focus-visible {
	outline: none;
}

.kiwi-entrada:has(.kiwi-entrada__titulo a:focus-visible) {
	outline: var(--wp--custom--foco--ancho) solid var(--wp--preset--color--verde-kiwi);
	outline-offset: var(--wp--custom--foco--separacion);
}

.kiwi-entrada__bajada {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	text-wrap: pretty; /* sin una palabra sola en la última línea */
}

/* «Explorar» y «Guiame» con flecha de 20 a la derecha, gap 8 (revisión 12, flecha.svg).
 * La flecha es decorativa: una máscara en el color del texto, sin nada que leer. */
.kiwi-entrada__accion {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	white-space: nowrap;
}

.kiwi-entrada__accion::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: currentColor;
	-webkit-mask: url("../icons/flecha.svg") center / contain no-repeat;
	mask: url("../icons/flecha.svg") center / contain no-repeat;
}

.kiwi-entrada--regalo .kiwi-entrada__bajada,
.kiwi-entrada--regalo .kiwi-entrada__accion {
	color: var(--wp--preset--color--grafito);
}

/* Vestidos: título y conteo con el dibujo del encabezado del listado (24 en los dos
 * anchos, como los lienzos). */
.kiwi-portada__titulo {
	margin: 0;
	font-weight: 600;
	font-size: var(--wp--preset--font-size--24);
	letter-spacing: -0.02em;
}

.kiwi-portada__conteo {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* 4 vestidos; entre 600 y 1199 (grilla de 3), 3, para no dejar uno solo en la segunda
 * fila. kiwi/portada-ver-mas cuenta igual. La card declara display:flex con (0,4,1). */
@media (600px <= width < 1200px) {
	.kiwi-coleccion--portada .wc-block-product-template.is-flex-container.kiwi-cards > li:nth-child(n + 4) {
		display: none;
	}
}

@media (600px <= width < 900px) {
	.kiwi-hero__foto {
		height: auto;
		aspect-ratio: 2 / 1;
	}
}

@media (width >= 900px) {
	.kiwi-hero {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding-inline: calc(var(--kiwi-margen) - var(--kiwi-pagina));
	}

	.kiwi-hero__foto {
		grid-area: 1 / 2;
		height: auto;
		min-height: var(--wp--preset--dimension--hero-foto-alto);
	}

	.kiwi-hero__texto {
		grid-area: 1 / 1;
		justify-content: center;
		gap: var(--wp--preset--spacing--60);
		padding: var(--wp--preset--spacing--90) var(--kiwi-pagina);
	}

	.kiwi-hero__titulo {
		max-width: var(--wp--preset--dimension--hero-titulo);
		font-size: var(--wp--preset--font-size--48);
	}

	.kiwi-hero__bajada {
		max-width: var(--wp--preset--dimension--hero-bajada);
		font-size: var(--wp--preset--font-size--20);
	}

	.wp-block-buttons.kiwi-hero__botones {
		padding-top: var(--wp--preset--spacing--10);
	}

	.kiwi-hero__primario {
		width: auto;
	}

	.kiwi-hero__botones .wp-block-button__link {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}

	.kiwi-entradas {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--50);
		padding: var(--wp--preset--spacing--60) var(--kiwi-margen);
	}

	.kiwi-entrada {
		padding: var(--wp--preset--spacing--60);
	}

	.kiwi-entrada__titulo {
		font-size: var(--wp--preset--font-size--24);
	}
}

@media (width >= 1200px) {
	.kiwi-hero {
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--hero-foto);
	}

	.kiwi-hero__titulo {
		font-size: var(--wp--preset--font-size--60);
	}
}

/* ── 21. Consultar mi pedido (revisión 12, pantalla 10b) ─────────────────
 * Bloque kiwi/consultar-pedido (kiwi-consulta). La pantalla no abre el pedido: manda el
 * enlace al correo y responde siempre lo mismo (decisión de la dueña, 7 de octubre de 2026;
 * llevado a diseño). Hasta 899, el lienzo de 375: padding 24 / 16 / 32, gap 20; titular de
 * página 32 y línea 16; número de pedido con ayuda de 12; botón primario de 56 a todo el
 * ancho; abajo, divisor, «¿No encontrás el número?» y WhatsApp de 48. Desde 900, el de 1440:
 * columna de 560 centrada, padding 52 / 40, gap 32; titular 48 y línea 20; los dos campos
 * en dos columnas (gap 16); primario de 52 (padding 32) y WhatsApp de 52 en fila (gap 12),
 * sin la pregunta ni el divisor. El aviso no es un error: fondo aviso, sin guayaba. */
.kiwi-consulta {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) var(--wp--preset--spacing--70);
}

.kiwi-consulta p,
.kiwi-consulta h1 {
	margin: 0;
}

.kiwi-consulta__encabezado {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-consulta__titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.03em;
}

.kiwi-consulta__texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-consulta__cuerpo,
.kiwi-consulta__form,
.kiwi-consulta__campos,
.kiwi-consulta__acciones {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--50);
}

.kiwi-consulta__aviso {
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-consulta__fila {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
}

.kiwi-consulta__etiqueta {
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-consulta__campo {
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-consulta__campo::placeholder {
	color: var(--wp--preset--color--texto-muted);
	opacity: 1;
}

.kiwi-consulta__ayuda {
	padding-top: var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--legal);
}

.kiwi-consulta__boton {
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0 var(--wp--preset--spacing--70);
	border: 0;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-consulta__boton:hover {
	background-color: var(--wp--preset--color--verde-hover);
}

.kiwi-consulta__boton:active {
	background-color: var(--wp--preset--color--verde-activo);
}

.kiwi-consulta__wa {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding-top: var(--wp--preset--spacing--40);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-consulta__wa-texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* WhatsApp: secundario con el logo a color de 20 y gap 8 (único logo a color de la vista;
 * el del footer va en monocromo). Hover y active: la regla común del botón secundario. */
.kiwi-consulta__wa-boton {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--60);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-consulta__wa-boton svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

@media (width >= 900px) {
	.kiwi-consulta {
		align-items: center;
		gap: var(--wp--preset--spacing--70);
		padding: var(--wp--preset--spacing--90) var(--kiwi-pagina);
	}

	.kiwi-consulta__encabezado,
	.kiwi-consulta__cuerpo {
		box-sizing: border-box;
		width: 100%;
		max-width: var(--wp--preset--dimension--consulta-ancho);
	}

	.kiwi-consulta__titulo {
		font-size: var(--wp--preset--font-size--48);
	}

	.kiwi-consulta__texto {
		font-size: var(--wp--preset--font-size--20);
		line-height: var(--wp--custom--interlinea--cuerpo);
	}

	.kiwi-consulta__aviso {
		padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	}

	.kiwi-consulta__campos {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--40);
		align-items: start;
	}

	.kiwi-consulta__acciones {
		flex-direction: row;
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-consulta__boton {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}

	.kiwi-consulta__wa {
		display: contents;
	}

	.kiwi-consulta__wa-texto {
		display: none;
	}

	.kiwi-consulta__wa-boton {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}
}

/* ── 22. Carrito y checkout de Woo ────────────────────────────────────────
 * Lo que se ajusta antes de maquetarlos con sus lienzos.
 * Insignia de rebaja («Ahorrás ₡2.100»): oculta en el carrito y en el resumen del checkout,
 * que los lienzos no la dibujan (decisión de la dueña, 7 de octubre de 2026). El precio
 * tachado sigue diciendo lo suyo al lector de pantalla: «Precio anterior:» antes del
 * tachado y «Precio con descuento:» antes del actual (kiwi-textos), dentro del precio, no
 * de la insignia. */
.wp-block-woocommerce-cart .wc-block-components-sale-badge,
.wp-block-woocommerce-checkout .wc-block-components-sale-badge {
	display: none;
}

/* Carrito (lienzo 08). Página propia (templates/page-cart.html, sin el título de Woo); el
 * encabezado, la nota de la tarifa, WhatsApp y las garantías los pone kiwi-carrito dentro
 * de los contenedores del bloque de Woo, y el aviso «por encargo», kiwi-encargo.
 * Hasta 899 (lienzo 375): encabezado con padding 16 / 16 / 8 y gap 4 (título 24, conteo 16);
 * vestidos con padding 8 / 16, gap 16 y divisor bajo cada uno (padding 16): foto de 84,
 * nombre Karla 700 / 16, total Archivo 700 / 16 a la derecha, talla 12, cantidad de 44 y
 * «Quitar»; resumen con padding 16 y gap 12, total a 32, botón de 56, WhatsApp de 48 y
 * garantías a 12. Desde 900 (lienzo 1440): padding 32 / 40 / 52, vestidos y resumen de 396
 * con gap 32; encabezado en fila con el aviso (título 32); tabla con columnas de 130 para
 * cantidad y total (fotos de 96, total a 20, «Quitar» debajo); resumen en tarjeta
 * crema-alta de padding 24 y gap 16, con su título «Resumen» a 24. */
.kiwi-carrito-pagina {
	padding: 0 0 var(--wp--preset--spacing--70);
}

.kiwi-carrito-pagina .wp-block-post-content,
.kiwi-carrito-pagina .wp-block-woocommerce-cart {
	margin: 0;
	max-width: none;
}

.kiwi-carrito-pagina .wc-block-cart {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0;
}

.kiwi-carrito-pagina .wc-block-cart .wc-block-cart__main,
.kiwi-carrito-pagina .wc-block-cart .wc-block-cart__sidebar {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
}

.kiwi-carrito-pagina .wc-block-cart .wc-block-cart__main {
	padding: 0;
}

/* Encabezado y aviso (lienzo 08 de la revisión 13): «Tu carrito» Archivo 700 a 32 (48 desde
 * 900) y el conteo al lado, en la misma línea de base, a 12; el aviso a 16 / 1,5 debajo. */
.kiwi-carrito-cabecera {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40) var(--kiwi-pagina) var(--wp--preset--spacing--20);
}

.kiwi-carrito-cabecera__titulo {
	margin: 0;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.03em;
}

.kiwi-carrito-cabecera__conteo {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-carrito-pagina .kiwi-aviso-encargo--carrito {
	margin: var(--wp--preset--spacing--10) var(--kiwi-pagina) var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

/* Vestidos: la tabla de Woo se dibuja como lista; cada fila es una grilla
 * (foto | nombre y total | talla | cantidad y «Quitar»). */
.kiwi-carrito-pagina table.wc-block-cart-items {
	display: block;
	margin: 0;
	padding: var(--wp--preset--spacing--20) var(--kiwi-pagina);
	border: 0;
}

.kiwi-carrito-pagina table.wc-block-cart-items thead {
	display: none;
}

.kiwi-carrito-pagina table.wc-block-cart-items tbody {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row {
	display: grid;
	grid-template-columns: var(--wp--preset--dimension--carrito-foto-movil) minmax(0, 1fr) auto;
	grid-template-areas:
		"foto nombre total"
		"foto talla talla"
		"foto cantidad cantidad";
	column-gap: var(--wp--preset--spacing--30);
	row-gap: var(--wp--preset--spacing--20);
	align-items: start;
	padding: 0 0 var(--wp--preset--spacing--40);
	border: 0;
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row td,
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap,
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
	padding: 0;
	border: 0;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap,
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
	display: contents;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row td.wc-block-cart-item__image {
	grid-area: foto;
	width: var(--wp--preset--dimension--carrito-foto-movil);
	max-width: var(--wp--preset--dimension--carrito-foto-movil);
	min-width: 0;
}

.kiwi-carrito-pagina .wc-block-cart-item__image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	border-radius: var(--wp--preset--border-radius--base);
	object-fit: cover;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
	grid-area: nombre;
	margin: 0;
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: 1.3;
	text-decoration: none;
}

/* Precio por unidad: en móvil no va (el lienzo muestra el total de la línea). */
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices {
	display: none;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-metadata {
	grid-area: talla;
	margin: 0;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-metadata * {
	margin: 0;
}

/* Woo achica la lista de detalles («Talla: M»): va al tamaño y color de la línea. */
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-details {
	color: inherit;
	font-size: inherit;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
	grid-area: total;
	display: block;
	text-align: right;
}

.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-item__total .wc-block-components-product-price,
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-item__total .wc-block-components-product-price__value {
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

/* Cantidad: 44 de alto, borde de control, fondo crema-alta; − y + verdes de 20. */
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-quantity-selector {
	grid-area: cantidad;
	justify-self: start;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	width: auto;
	height: var(--wp--preset--dimension--objetivo-tactil);
	margin: 0;
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-carrito-pagina .wc-block-components-quantity-selector::after {
	display: none;
}

.kiwi-carrito-pagina .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	width: var(--wp--preset--dimension--objetivo-tactil);
	min-width: 0;
	height: 100%;
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	opacity: 1;
}

.kiwi-carrito-pagina .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled {
	color: var(--wp--preset--color--texto-muted);
}

.kiwi-carrito-pagina .wc-block-components-quantity-selector .wc-block-components-quantity-selector__input {
	width: var(--wp--preset--spacing--80);
	min-width: 0;
	height: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	font-variant-numeric: tabular-nums;
	text-align: center;
}

/* «Quitar»: texto, nunca basurero (CLAUDE.md). El botón de Woo trae solo el icono y el
 * nombre accesible («Quitar … del carrito», kiwi-textos); el texto visible va por CSS
 * porque el componente no tiene opción de texto. El lector usa el nombre accesible. */
.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link {
	grid-area: cantidad;
	justify-self: end;
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	min-width: var(--wp--preset--dimension--objetivo-tactil);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: underline;
	text-underline-offset: var(--wp--custom--subrayado--separacion);
	cursor: pointer;
}

.kiwi-carrito-pagina .wc-block-cart-item__remove-link svg {
	display: none;
}

.kiwi-carrito-pagina .wc-block-cart-item__remove-link::after {
	content: "Quitar";
}

.kiwi-carrito-pagina .wc-block-cart-item__remove-link:hover {
	color: var(--wp--preset--color--verde-hover);
}

/* Resumen. */
.kiwi-carrito-pagina .wc-block-cart .wc-block-cart__sidebar {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40) var(--kiwi-pagina);
}

.kiwi-carrito-pagina .wc-block-cart__totals-title {
	display: none;
}

/* Sin el «Continuar al pago» fijo al pie que Woo pone hasta 782 (con sombra, y tapaba los
 * vestidos): el botón queda bajo el total, como el lienzo 08 (revisión 13). */
.kiwi-carrito-pagina .wc-block-cart__submit-container--sticky {
	display: none;
}

.kiwi-carrito-pagina .wp-block-woocommerce-cart-order-summary-block,
.kiwi-carrito-pagina .wp-block-woocommerce-cart-order-summary-totals-block {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: 0;
	border: 0;
}

.kiwi-carrito-pagina .wp-block-woocommerce-cart-order-summary-totals-block {
	gap: var(--wp--preset--spacing--20);
	padding-top: var(--wp--preset--spacing--30);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-carrito-pagina .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
	margin: 0;
	padding: 0;
	border: 0;
}

.kiwi-carrito-pagina .wc-block-cart__sidebar .wc-block-components-totals-item {
	display: flex;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: 0;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-carrito-pagina .wc-block-cart__sidebar .wc-block-components-totals-item__value {
	font-weight: 400;
	font-variant-numeric: tabular-nums;
}

.kiwi-carrito-pagina .wc-block-cart__sidebar .wc-block-components-totals-item__description:empty {
	display: none;
}

.kiwi-carrito-tarifa {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
}

/* «Pagás hoy»: divisor arriba, etiqueta 700 / 16 y total Archivo 700 / 32. */
.kiwi-carrito-pagina .wc-block-cart__sidebar .wc-block-components-totals-footer-item {
	align-items: baseline;
	padding-top: var(--wp--preset--spacing--30);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--grafito);
}

.kiwi-carrito-pagina .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-carrito-pagina .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	letter-spacing: -0.02em;
}

.kiwi-carrito-pagina .wc-block-cart__payment-options:empty {
	display: none;
}

/* «Continuar al pago»: primario de 56 a todo el ancho, Archivo 700 / 20. */
.kiwi-carrito-pagina .wc-block-cart__submit {
	margin: 0;
}

.kiwi-carrito-pagina .wc-block-cart__submit-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0 var(--wp--preset--spacing--60);
	border-radius: var(--wp--preset--border-radius--base);
	font-size: var(--wp--preset--font-size--20);
}

/* Hasta 899, el botón lleva el icono del carrito de 20, en crema (lienzo 375). */
@media (width < 900px) {
	.kiwi-carrito-pagina .wc-block-cart__submit-button::before {
		content: "";
		flex: none;
		width: var(--wp--preset--dimension--icono-20);
		height: var(--wp--preset--dimension--icono-20);
		background-color: currentColor;
		-webkit-mask: url("../icons/carrito.svg") center / contain no-repeat;
		mask: url("../icons/carrito.svg") center / contain no-repeat;
	}
}

/* WhatsApp: secundario de 48, logo a color de 20 con gap 8. */
.kiwi-carrito-pie {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-carrito-wa {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--60);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-carrito-wa svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

/* Garantías (lienzo 08 de la revisión 13): una línea de texto a 16 en texto-medio, sin
 * iconos ni divisor. */
.kiwi-carrito-garantias {
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-carrito-garantias__item {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

@media (width >= 900px) {
	.kiwi-carrito-pagina {
		padding: var(--wp--preset--spacing--70) var(--kiwi-margen) var(--wp--preset--spacing--90);
	}

	.kiwi-carrito-pagina .wc-block-cart {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--carrito-resumen);
		column-gap: var(--wp--preset--spacing--70);
		align-items: start;
	}

	.kiwi-carrito-cabecera {
		padding: 0;
	}

	.kiwi-carrito-cabecera__titulo {
		font-size: var(--wp--preset--font-size--48);
		white-space: nowrap;
	}

	.kiwi-carrito-cabecera__conteo {
		font-size: var(--wp--preset--font-size--20);
		white-space: nowrap;
	}

	/* Columna de vestidos: encabezado, aviso y lista apilados, con gap 20. */
	.kiwi-carrito-pagina .wc-block-cart .wc-block-cart__main {
		display: flex;
		flex-direction: column;
		gap: var(--wp--preset--spacing--50);
	}

	.kiwi-carrito-pagina .kiwi-aviso-encargo--carrito {
		margin: 0;
	}

	/* La página ya tiene su padding lateral: la lista no suma el de móvil. */
	.kiwi-carrito-pagina table.wc-block-cart-items {
		padding: 0;
	}

	/* Resumen: tarjeta crema-alta con borde bruma, padding 24, gap 16, título a 24. */
	.kiwi-carrito-pagina .wc-block-cart .wc-block-cart__sidebar {
		gap: var(--wp--preset--spacing--40);
		padding: var(--wp--preset--spacing--60);
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
		border-radius: var(--wp--preset--border-radius--base);
		background-color: var(--wp--preset--color--crema-alta);
	}

	.kiwi-carrito-pagina .wc-block-cart__totals-title {
		display: block;
		margin: 0;
		padding: 0;
		color: var(--wp--preset--color--grafito);
		font-family: var(--wp--preset--font-family--archivo);
		font-weight: 600;
		font-size: var(--wp--preset--font-size--24);
		letter-spacing: -0.02em;
		text-transform: none;
	}

	.kiwi-carrito-pagina .wp-block-woocommerce-cart-order-summary-block {
		gap: var(--wp--preset--spacing--40);
	}

	.kiwi-carrito-pagina .wp-block-woocommerce-cart-order-summary-totals-block {
		padding-top: 0;
		border-top: 0;
	}

	.kiwi-carrito-pie {
		gap: var(--wp--preset--spacing--40);
	}
}

/* Tabla del carrito desde 1200 (lienzo 1440): foto | pieza | cantidad | total, con
 * encabezado. Entre 900 y 1199, con el resumen de 396 al lado, la columna de vestidos
 * queda en unos 390 a 900 y el nombre no entraba (12 de ancho): ahí cada vestido va como
 * en móvil. Mismo criterio que el hero y los pasos de pedido recibido. El aviso va debajo
 * del título en todos los anchos (revisión 13; antes, al lado desde 1200). */
@media (width >= 1200px) {
	/* Tabla: encabezado en mayúsculas a 12 (texto-muted: el lienzo usa texto-débil, que
	 * no se usa como texto sobre crema) y filas de foto | pieza | cantidad | total. */
	.kiwi-carrito-pagina table.wc-block-cart-items {
		display: flex;
		flex-direction: column;
		gap: var(--wp--preset--spacing--50);
		padding: 0;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items thead {
		display: block;
	}

	.kiwi-carrito-pagina .wc-block-cart-items thead tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--carrito-columna) var(--wp--preset--dimension--carrito-columna);
		column-gap: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--20);
		border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	}

	.kiwi-carrito-pagina .wc-block-cart-items thead th {
		padding: 0;
		border: 0;
		color: var(--wp--preset--color--texto-muted);
		font-family: var(--wp--preset--font-family--karla);
		font-weight: 700;
		font-size: var(--wp--preset--font-size--legal);
		letter-spacing: 0.12em;
		text-align: left;
		text-transform: uppercase;
	}

	.kiwi-carrito-pagina .wc-block-cart-items thead th.wc-block-cart-items__header-total {
		text-align: right;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items tbody {
		gap: var(--wp--preset--spacing--50);
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row {
		grid-template-columns: var(--wp--preset--dimension--carrito-foto) minmax(0, 1fr) var(--wp--preset--dimension--carrito-columna) var(--wp--preset--dimension--carrito-columna);
		grid-template-areas:
			"foto nombre cantidad total"
			"foto talla cantidad quitar";
		grid-template-rows: auto auto;
		column-gap: var(--wp--preset--spacing--30);
		row-gap: var(--wp--preset--spacing--10);
		align-items: center;
		padding-bottom: var(--wp--preset--spacing--50);
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row td.wc-block-cart-item__image {
		width: var(--wp--preset--dimension--carrito-foto);
		max-width: var(--wp--preset--dimension--carrito-foto);
		margin-right: var(--wp--preset--spacing--10);
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
		align-self: end;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-metadata {
		align-self: start;
		font-size: var(--wp--preset--font-size--cuerpo);
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
		align-self: end;
	}

	.kiwi-carrito-pagina .wc-block-cart-item__total .wc-block-components-product-price,
	.kiwi-carrito-pagina .wc-block-cart-item__total .wc-block-components-product-price__value {
		font-size: var(--wp--preset--font-size--20);
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link {
		grid-area: quitar;
		align-self: start;
		justify-self: start;
		justify-content: flex-start;
		min-height: 0;
	}

	/* «Cantidad»: Woo lo deja solo para lector de pantalla; el lienzo lo muestra. */
	.kiwi-carrito-pagina .wc-block-cart-items thead .wc-block-cart-items__header-product .screen-reader-text {
		position: static;
		width: auto;
		height: auto;
		margin: 0;
		overflow: visible;
		clip: auto;
		clip-path: none;
	}

	/* Pieza en tres líneas (lienzo 08 de la revisión 13): el nombre, «Talla: M · ₡20.000»
	 * (precio por unidad, texto-medio, 16) y «Quitar»; la cantidad y el total, centrados en
	 * la fila. Sin talla, el precio solo, alineado con el nombre. */
	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row {
		grid-template-columns: var(--wp--preset--dimension--carrito-foto) max-content minmax(0, 1fr) var(--wp--preset--dimension--carrito-columna) var(--wp--preset--dimension--carrito-columna);
		grid-template-areas:
			"foto nombre nombre cantidad total"
			"foto talla precio cantidad total"
			"foto quitar quitar cantidad total";
		grid-template-rows: auto auto auto;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
		align-self: center;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices {
		grid-area: precio;
		display: flex;
		align-self: start;
		align-items: baseline;
		gap: var(--wp--preset--spacing--10);
		margin: 0;
		color: var(--wp--preset--color--texto-medio);
		font-size: var(--wp--preset--font-size--cuerpo);
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row:not(:has(.wc-block-components-product-details__talla)) .wc-block-cart-item__prices {
		grid-column: 2 / 4;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row:has(.wc-block-components-product-details__talla) .wc-block-cart-item__prices::before {
		content: "·";
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-product-price,
	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-product-price__value {
		color: var(--wp--preset--color--texto-medio);
		font-size: var(--wp--preset--font-size--cuerpo);
		font-weight: 400;
	}

	/* El precio anterior tachado sigue en texto-muted (regla de accesibilidad). */
	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-product-price__regular {
		color: var(--wp--preset--color--texto-muted);
	}

	/* «Quitar» bajo la talla: se ve del alto de su texto, pero el área para tocarlo mide 44. */
	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link {
		position: relative;
	}

	.kiwi-carrito-pagina table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		left: 0;
		height: var(--wp--preset--dimension--objetivo-tactil);
		transform: translateY(-50%);
	}

}

/* Carrito vacío (lienzo 08 de la revisión 13; pattern kiwi/carrito-vacio, con la tarjeta lima
 * de la home). Hasta 899 (lienzo 375): texto a la izquierda con padding 32 / 16, gap 16
 * (emblema a color de 48, título Archivo 700 a 32, línea 16 / 1,5); debajo, los dos botones
 * a todo el ancho (primario de 56, WhatsApp de 48) y la tarjeta lima, gap 8, padding
 * inferior 20. Desde 900 (lienzo 1440): la tarjeta en una columna de 460, gap 40, centradas;
 * título 48 de 560, línea 20 de 520, botones de 52 en fila con gap 12. */
.kiwi-carrito-vacio {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--70) var(--kiwi-pagina) var(--wp--preset--spacing--50);
}

.kiwi-carrito-vacio > *,
.kiwi-carrito-vacio__texto > * {
	margin-block: 0;
}

.kiwi-carrito-vacio__texto {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--40);
	text-align: left;
}

/* El emblema de la marca, a color (la revisión 13 sacó el «apagado» en bruma). */
.kiwi-carrito-vacio__emblema {
	display: block;
	width: var(--wp--preset--dimension--vacio-emblema);
	height: var(--wp--preset--dimension--vacio-emblema);
	background: url("../logo/kiwi-emblema.svg") center / contain no-repeat;
}

.kiwi-carrito-vacio__titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.kiwi-carrito-vacio__linea {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
	text-wrap: pretty;
}

.wp-block-buttons.kiwi-carrito-vacio__botones {
	align-self: stretch;
	flex-direction: column;
	align-items: stretch;
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--60);
}

.kiwi-carrito-vacio__botones .wp-block-button {
	width: 100%;
}

.kiwi-carrito-vacio__primario .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0 var(--wp--preset--spacing--60);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-carrito-vacio__wa .wp-block-button__link {
	box-sizing: border-box;
	width: 100%;
}

.kiwi-carrito-vacio .kiwi-entrada {
	text-align: left;
}

@media (width >= 900px) {
	/* Entre 900 y 1199, apilado (con la tarjeta de 460 al lado, el título de 48 quedaba en
	 * 320 y se partía en cuatro líneas); en dos columnas desde 1200. Mismo criterio que el
	 * hero, los pasos y la tabla del carrito. */
	.kiwi-carrito-vacio {
		gap: var(--wp--preset--spacing--80);
		padding: var(--wp--preset--spacing--50) 0 0;
	}

	.kiwi-carrito-vacio .kiwi-entrada {
		max-width: var(--wp--preset--dimension--vacio-regalo);
	}

	.kiwi-carrito-vacio__texto {
		gap: var(--wp--preset--spacing--50);
	}

	.kiwi-carrito-vacio__titulo {
		max-width: var(--wp--preset--dimension--vacio-titulo);
		font-size: var(--wp--preset--font-size--48);
	}

	.kiwi-carrito-vacio__linea {
		max-width: var(--wp--preset--dimension--vacio-linea);
		font-size: var(--wp--preset--font-size--20);
		line-height: var(--wp--custom--interlinea--cuerpo);
	}

	.wp-block-buttons.kiwi-carrito-vacio__botones {
		align-self: auto;
		flex-direction: row;
		gap: var(--wp--preset--spacing--30);
		margin-top: 0;
	}

	.kiwi-carrito-vacio__botones .wp-block-button {
		width: auto;
	}

	.kiwi-carrito-vacio__primario .wp-block-button__link,
	.kiwi-carrito-vacio__wa .wp-block-button__link {
		min-height: var(--wp--preset--dimension--boton-escritorio);
	}
}

@media (width >= 1200px) {
	.kiwi-carrito-vacio {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--vacio-regalo);
		align-items: center;
	}
}

/* ── 23. Checkout (lienzo 09 y errores de la revisión 12) ────────────────
 * Plantilla propia (templates/page-checkout.html) con el header del checkout
 * (parts/header-checkout.html: barra «Pago por SINPE Móvil · verificación a mano · cambio en
 * 15 días» solo desde 900, logo y pasos; sin navegación ni footer). Las piezas que Woo no tiene las ponen
 * kiwi-checkout («Tus datos», la nota del envío, el pie y el aviso de errores), kiwi-encargo
 * (aviso) y kiwi-sinpe (pasos y línea de las 48 h), dentro del formulario de Woo.
 * Hasta 899 (lienzo 375): padding 16, gap 20; títulos de sección como etiquetas de 12;
 * campos de 48 con el borde de control; envío y pago en tarjetas crema-alta con borde 2
 * verde-kiwi; botón de 56. Desde 900 (lienzo 1440): ancho de 1060 centrado, formulario y
 * resumen de 380 con gap 32, «Tus datos» a 32, secciones a 24, tarifa del envío y aviso a 16
 * y las 48 h con su título (debajo de los pasos; desde 1200, en columna de 300 al lado).
 * Errores: borde 2 guayaba en el campo y el mensaje de Woo debajo, en grafito y sin su
 * icono; arriba, «Revisá N campos antes de confirmar» (fondo aviso, borde 2 guayaba). */

/* Header del checkout. */
.kiwi-barra--checkout {
	padding: var(--wp--preset--spacing--20) var(--kiwi-pagina);
}

.kiwi-barra--checkout__texto {
	margin: 0;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-header-checkout {
	align-items: center;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--30) var(--kiwi-margen);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-pasos-checkout p,
.kiwi-pasos-checkout ol {
	margin: 0;
}

.kiwi-pasos-checkout__movil {
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-pasos-checkout__lista {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	padding: 0;
	list-style: none;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Los «·» entre pasos: decorativos, en texto-débil (revisión 10), sin texto para el lector. */
.kiwi-pasos-checkout__lista li + li::before {
	content: "·" / "";
	margin-right: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--texto-debil);
}

.kiwi-pasos-checkout__lista [aria-current="step"] {
	color: var(--wp--preset--color--grafito);
}

.kiwi-pasos-checkout__lista a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--texto-muted);
	text-decoration: none;
}

/* Página y columnas. */
.kiwi-checkout-pagina {
	padding: 0 0 var(--wp--preset--spacing--70);
}

.kiwi-checkout-pagina .wp-block-post-content,
.kiwi-checkout-pagina .wp-block-woocommerce-checkout {
	max-width: none;
	margin: 0;
}

/* Woo pone la clase wc-block-checkout en el bloque y también en su sidebar-layout, que va
   adentro: las columnas van solo en el de adentro, o la grilla se anida y el formulario
   queda en unos 236 (visto el 8 de octubre de 2026 a 1536). */
.kiwi-checkout-pagina .wc-block-components-sidebar-layout.wc-block-checkout {
	display: flex;
	flex-direction: column;
	margin: 0;
}

.kiwi-checkout-pagina .wc-block-checkout .wc-block-checkout__main,
.kiwi-checkout-pagina .wc-block-checkout .wc-block-checkout__sidebar {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
}

/* El padding del resumen lo fija su propia regla (móvil y escritorio): acá, con más
   especificidad, le ganaba y lo dejaba en 0 (visto el 8 de octubre de 2026). */
.kiwi-checkout-pagina .wc-block-checkout .wc-block-checkout__main {
	padding: 0;
}

.kiwi-checkout-pagina .wc-block-checkout__form {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--50);
	margin: 0;
	padding: var(--wp--preset--spacing--40) var(--kiwi-pagina) 0;
}

.kiwi-checkout-pagina .wc-block-checkout__form > * {
	margin: 0;
}

/* Hasta 899, la disposición de 375: plegable del resumen arriba y el resumen completo
   encima de «Confirmar pedido». Woo la elige por el ancho del bloque, no por los cortes del
   tema (JS: desde 701, is-large; container queries: desde 700), así que entre 600 y 899 el
   bloque va a 699 como máximo, centrado. Medido el 8 de octubre de 2026 a 899: con 700 el
   resumen va debajo del botón; con 699, como a 375. Verificalo después de cada
   actualización de Woo. */
@media (600px <= width < 900px) {
	.kiwi-checkout-pagina .wp-block-woocommerce-checkout {
		max-width: var(--wp--preset--dimension--checkout-medio);
		margin: 0 auto;
	}
}

/* «Tus datos». */
.kiwi-checkout-cabecera {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
}

.kiwi-checkout-cabecera__titulo {
	margin: 0;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--24);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.02em;
}

.kiwi-checkout-cabecera__linea {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Secciones: el título como etiqueta de 12 (texto-muted: el lienzo usa texto-débil, que no
 * va como texto sobre crema), sin número de paso, gap 12. */
.kiwi-checkout-pagina .wc-block-components-checkout-step {
	margin: 0;
	padding: 0;
	border: 0;
}

.kiwi-checkout-pagina .wc-block-components-checkout-step::before,
.kiwi-checkout-pagina .wc-block-components-checkout-step::after {
	display: none;
}

.kiwi-checkout-pagina .wc-block-components-checkout-step__heading-container,
.kiwi-checkout-pagina .wc-block-components-checkout-step__heading {
	margin: 0 0 var(--wp--preset--spacing--30);
	padding: 0;
}

.kiwi-checkout-pagina .wc-block-components-checkout-step__title {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: normal;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-checkout-pagina .wc-block-components-checkout-step__container,
.kiwi-checkout-pagina .wc-block-components-checkout-step__content {
	margin: 0;
	padding: 0;
}

/* Ayuda del teléfono (descripción del paso «Entrega»): 12 en texto-muted. */
.kiwi-checkout-pagina .wc-block-components-checkout-step__description {
	margin: 0 0 var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
}

/* Campos: 48, borde de control (1 texto-muted), fondo crema-alta, texto 16. Woo mantiene
 * su etiqueta flotante. */
.kiwi-checkout-pagina .wc-block-components-text-input input,
.kiwi-checkout-pagina .wc-blocks-components-select__select {
	box-sizing: border-box;
	height: var(--wp--preset--dimension--boton-secundario);
	min-height: var(--wp--preset--dimension--boton-secundario);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Woo fija los campos de texto en 50, fondo blanco, borde 1,5 y texto #2B2D2F con
   `.wc-block-components-form .wc-block-components-text-input input[type=…]`, que le gana a la
   regla de arriba (alto visto el 8 de octubre de 2026; fondo, borde y color, el mismo día sin
   sesión: con sesión, Woo mostraba la dirección guardada y no los campos). */
.kiwi-checkout-pagina .wc-block-components-form .wc-block-components-text-input input[type] {
	height: var(--wp--preset--dimension--boton-secundario);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
}

.kiwi-checkout-pagina .wc-block-components-text-input label,
.kiwi-checkout-pagina .wc-blocks-components-select__label {
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
}

/* Desplegables: el chevron del set (texto-muted) en lugar del de Woo. */
.kiwi-checkout-pagina .wc-blocks-components-select__expand {
	display: none;
}

.kiwi-checkout-pagina .wc-blocks-components-select__container {
	position: relative;
}

.kiwi-checkout-pagina .wc-blocks-components-select__container::after {
	content: "";
	position: absolute;
	top: 50%;
	right: var(--wp--preset--spacing--30);
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: var(--wp--preset--color--texto-muted);
	-webkit-mask: url("../icons/chevron.svg") center / contain no-repeat;
	mask: url("../icons/chevron.svg") center / contain no-repeat;
	transform: translateY(-50%);
	pointer-events: none;
}

/* Casillas: borde 2 texto-muted (grosor de énfasis único, revisión 12); marcada, verde-kiwi
 * con el check del set en crema. */
.kiwi-checkout-pagina .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"] {
	width: var(--wp--preset--dimension--casilla-movil);
	height: var(--wp--preset--dimension--casilla-movil);
	min-width: var(--wp--preset--dimension--casilla-movil);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-checkout-pagina .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked {
	border-color: var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-checkout-pagina .wc-block-components-checkbox .wc-block-components-checkbox__mark {
	fill: none;
	background-color: var(--wp--preset--color--crema);
	-webkit-mask: url("../icons/check-control.svg") center / contain no-repeat;
	mask: url("../icons/check-control.svg") center / contain no-repeat;
}

.kiwi-checkout-pagina .wc-block-components-checkbox__label {
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* Sin el campo País (se vende solo a Costa Rica: Woo lo manda igual) y sin «Usar la misma
 * dirección para el cobro», que queda marcada: la dirección de cobro es la de entrega
 * (decisión de la dueña, 9 de octubre de 2026). display: none también los saca del lector de
 * pantalla, que es lo pedido. */
.kiwi-checkout-pagina .wc-block-components-address-form__country,
.kiwi-checkout-pagina .wc-block-checkout__use-address-for-billing {
	display: none;
}

/* El texto de privacidad, sin casilla, también va en un checkbox__label: sin esto quedaba a
 * 16 en grafito en lugar del 12 en texto-muted de su contenedor (revisión 13). */
.kiwi-checkout-pagina .wc-block-checkout__terms .wc-block-components-checkbox__label {
	color: inherit;
	font-size: inherit;
}

/* Radios (envío y pago): aro de 2 verde-kiwi con el punto lleno al elegir. */
.kiwi-checkout-pagina .wc-block-components-radio-control__input {
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	min-width: var(--wp--preset--dimension--icono-20);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-checkout-pagina .wc-block-components-radio-control__input:checked::before {
	background: var(--wp--preset--color--verde-kiwi);
}

/* Envío (lienzo 09 de la revisión 13): tarjeta crema-alta con borde 1 bruma y padding 16,
 * sin radio (hay un solo método) y sin la etiqueta de sección «Envío»; «Envío» 700 / 16 y el
 * precio a 20. La nota de la tarifa y el enlace de fecha (kiwi-checkout) cierran la misma
 * tarjeta. El radio y la etiqueta quedan para el lector de pantalla. */
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__option {
	margin: 0;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-bottom: 0;
	border-radius: var(--wp--preset--border-radius--base) var(--wp--preset--border-radius--base) 0 0;
	background-color: var(--wp--preset--color--crema-alta);
	box-shadow: none;
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__input,
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-checkout-step__heading {
	position: absolute;
	width: 1px;
	min-width: 0;
	height: 1px;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__option-layout {
	padding-left: 0;
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__label,
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__secondary-label {
	color: var(--wp--preset--color--grafito);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__secondary-label {
	font-family: var(--wp--preset--font-family--archivo);
	font-size: var(--wp--preset--font-size--20);
	font-variant-numeric: tabular-nums;
}

/* El margen negativo cancela el gap del formulario para que la nota cierre la tarjeta. El
   selector es largo a propósito: con `.kiwi-checkout-envio` solo, le ganaba el
   `margin: 0` de `.wc-block-checkout__form > *` y quedaba un hueco de 20 (8 de octubre de 2026). */
.kiwi-checkout-pagina .wc-block-checkout__form > .kiwi-checkout-envio {
	display: flex;
	flex-direction: column;
	margin-top: calc(-1 * var(--wp--preset--spacing--50));
	padding: 0 var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-top: 0;
	border-radius: 0 0 var(--wp--preset--border-radius--base) var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-checkout-envio__tarifa {
	margin: 0;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

/* Enlace en línea, subrayado (revisión 13), con 44 de alto para tocarlo. */
.kiwi-checkout-envio__fecha {
	display: flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: underline;
	text-underline-offset: var(--wp--custom--subrayado--separacion);
}

/* Pago: la tarjeta es el contenido del paso (método, descripción, aviso, pasos y 48 h). */
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-checkout-step__content {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control-accordion-option,
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control__option {
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	border: 0;
	box-shadow: none;
}

/* Woo enmarca la lista de métodos con un ::after de 1: dentro de la tarjeta de pago se veía
   como dos líneas sueltas a los lados de «SINPE Móvil» (8 de octubre de 2026). */
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control::after {
	content: none;
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control__label {
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--20);
}

.kiwi-checkout-pagina .wc-block-components-radio-control-accordion-content {
	padding: var(--wp--preset--spacing--30) 0 0;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-checkout-pagina .kiwi-aviso-encargo--checkout {
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--compacta);
}

/* Los tres pasos: divisor arriba, gap 8; número en disco verde-kiwi de 20 (Archivo 700 / 12,
 * crema; lienzo 09 de la revisión 13, antes lima) y texto 16 / 1,45 en texto-medio. */
.kiwi-checkout-pasos {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	margin: 0;
	padding: var(--wp--preset--spacing--30) 0 0;
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	list-style: none;
	counter-reset: kiwi-paso;
}

.kiwi-checkout-pasos li {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--dato);
	counter-increment: kiwi-paso;
}

.kiwi-checkout-pasos li::before {
	content: counter(kiwi-paso);
	display: grid;
	flex: none;
	place-items: center;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	border-radius: 50%;
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
}

/* «Único medio» junto a «SINPE Móvil»: Karla 400 a 12 en texto-muted, sin mayúsculas
 * (lienzo 09 de la revisión 13). El texto lo pone
 * kiwi-sinpe en --kiwi-sinpe-unico (traducible); hasta 899, a la derecha de la fila (lienzo
 * de 375); desde 900, pegado al nombre (lienzo de 1440). */
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control__label {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	width: 100%;
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control__label::after {
	content: var(--kiwi-sinpe-unico, none);
	margin-left: auto;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--legal);
}

/* Sin texto alternativo, Chrome suma el ::after al nombre del radio («SINPE Móvil ÚNICO
 * MEDIO») y el lector lo dice dos veces, porque kiwi-sinpe pone «Es el único medio de pago.»
 * para lectores (medido en el árbol de Chrome el 8 de octubre de 2026). Con alternativo
 * vacío queda solo a la vista. En @supports: donde no se entiende, la etiqueta sigue. */
@supports (content: "x" / "") {
	.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control__label::after {
		content: var(--kiwi-sinpe-unico, none) / "";
	}
}

/* Las 48 h (lienzo 09 de la revisión 13): debajo de la tarjeta de pago, el mismo bloque en
 * todos los anchos. Fondo aviso, padding 16, reloj índigo de 20 a la izquierda (a 12 del
 * texto), título Karla 700 / 16 y la línea 16 / 1,5, en grafito. Lo inserta kiwi-sinpe al
 * principio de «Información adicional del pedido». */
.kiwi-checkout-48h {
	display: grid;
	grid-template-columns: var(--wp--preset--dimension--icono-20) minmax(0, 1fr);
	column-gap: var(--wp--preset--spacing--30);
	row-gap: var(--wp--preset--spacing--10);
	margin: 0 0 var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--40);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-checkout-48h::before {
	position: static;
	grid-row: 1 / 3;
}

/* Woo pinta la casilla de regalo antes de lo insertado: las 48 h van primero, pegadas a la
 * tarjeta de pago. */
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-checkout-step__content {
	display: flex;
	flex-direction: column;
}

.kiwi-checkout-pagina .wp-block-woocommerce-checkout-additional-information-block .kiwi-checkout-48h {
	order: -1;
}

.kiwi-checkout-48h p {
	margin: 0;
}

.kiwi-checkout-48h__titulo {
	font-weight: 700;
}

/* «Información adicional del pedido» (la leyenda del grupo de la casilla de regalo): el
 * lienzo no la dibuja; queda para el lector de pantalla. */
.kiwi-checkout-pagina .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-checkout-step__heading {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

/* Texto de privacidad: legal, 12, texto-muted, sin casilla, sobre el botón. */
.kiwi-checkout-pagina .wc-block-checkout__terms {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
}

.kiwi-checkout-pagina .wc-block-checkout__terms::before {
	display: none;
}

/* «Confirmar pedido»: primario de 56 a todo el ancho, Archivo 700 / 20. Sin «Volver al
 * carrito» de Woo: las migas ya llevan al carrito. */
.kiwi-checkout-pagina .wc-block-checkout__actions_row {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-checkout-pagina .wc-block-components-checkout-return-to-cart-button {
	display: none;
}

.kiwi-checkout-pagina .wc-block-components-checkout-place-order-button {
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--preset--dimension--boton-primario);
	/* Woo le pone 18 arriba y abajo: con el texto de 20 llegaba a 60. */
	padding-top: 0;
	padding-bottom: 0;
	border-radius: var(--wp--preset--border-radius--base);
	font-size: var(--wp--preset--font-size--20);
}

/* Pie: qué pasa al confirmar (12, texto-muted, centrado) y WhatsApp de 48 con el logo. */
.kiwi-checkout-pie {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin-top: calc(-1 * var(--wp--preset--spacing--20));
}

.kiwi-checkout-pie__nota {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
	text-align: center;
}

.kiwi-checkout-pie__wa {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--boton-secundario);
	padding: 0 var(--wp--preset--spacing--60);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-checkout-pie__wa svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

/* Resumen («Tu pedido»): en móvil, el plegable de Woo arriba, con el total a la vista. */
.kiwi-checkout-pagina .wc-block-checkout__sidebar {
	padding: 0 var(--kiwi-pagina);
}

.kiwi-checkout-pagina .wc-block-components-checkout-order-summary__title-text {
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--20);
	letter-spacing: -0.02em;
}

/* Hasta 899, el plegable en tarjeta (lienzo 09 de la revisión 13): crema-alta con borde 1
 * bruma, fila de 56 con padding 0 / 16, título Karla 700 / 16. El lienzo dice «Resumen · 3
 * vestidos»; queda «Tu pedido»: es la misma cadena de Woo que el título del resumen de
 * escritorio (llevado a diseño). */
@media (width < 900px) {
	.kiwi-checkout-pagina .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
		border-radius: var(--wp--preset--border-radius--base);
		background-color: var(--wp--preset--color--crema-alta);
	}

	.kiwi-checkout-pagina .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		box-sizing: border-box;
		min-height: var(--wp--preset--dimension--boton-primario);
		margin: 0;
		padding: 0 var(--wp--preset--spacing--40);
		border: 0;
	}

	.kiwi-checkout-pagina .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title-text {
		font-family: var(--wp--preset--font-family--karla);
		font-weight: 700;
		font-size: var(--wp--preset--font-size--cuerpo);
		letter-spacing: 0;
	}
}

.kiwi-checkout-pagina .wc-block-components-totals-item {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-checkout-pagina .wc-block-components-totals-footer-item {
	align-items: baseline;
	color: var(--wp--preset--color--grafito);
}

.kiwi-checkout-pagina .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-checkout-pagina .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	letter-spacing: -0.02em;
	font-variant-numeric: tabular-nums;
}

.kiwi-checkout-pagina .wc-block-components-order-summary-item__image img {
	border-radius: var(--wp--preset--border-radius--base);
}

/* Errores de los campos: borde 2 guayaba (el grosor es lo que distingue: contra el borde
 * normal la guayaba da 1,28:1) y el mensaje de Woo en grafito, 16, sin su icono (no está en
 * el set). */
.kiwi-checkout-pagina .wc-block-components-text-input.has-error input,
.kiwi-checkout-pagina .wc-blocks-components-select.has-error .wc-blocks-components-select__select,
.kiwi-checkout-pagina .has-error .wc-blocks-components-select__select {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
}

.kiwi-checkout-pagina .wc-block-components-text-input.has-error label,
.kiwi-checkout-pagina .has-error .wc-blocks-components-select__label {
	color: var(--wp--preset--color--texto-muted);
}

/* Woo repinta el campo con foco (fondo blanco, borde 1,5 y texto #2B2D2F; en el select, borde
 * 1,5 en el color del texto) y el campo con error con foco, hover o active (#CC1818 y una
 * sombra de 0,5), con selectores más fuertes que los de arriba (visto el 8 de octubre de 2026,
 * sin sesión). Con foco el campo no cambia: la señal es el anillo verde. Con error, guayaba de
 * 2 en todos los estados, y el valor del select en grafito. */
.kiwi-checkout-pagina .wc-block-components-form .wc-block-components-text-input input[type]:focus,
.kiwi-checkout-pagina .wc-blocks-components-select .wc-blocks-components-select__select:focus {
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
}

.kiwi-checkout-pagina .wc-block-components-form .wc-block-components-text-input.has-error input[type],
.kiwi-checkout-pagina .wc-block-components-form .wc-block-components-text-input.has-error input[type]:hover,
.kiwi-checkout-pagina .wc-block-components-form .wc-block-components-text-input.has-error input[type]:focus,
.kiwi-checkout-pagina .wc-block-components-form .wc-block-components-text-input.has-error input[type]:active,
.kiwi-checkout-pagina .has-error .wc-blocks-components-select .wc-blocks-components-select__select,
.kiwi-checkout-pagina .has-error .wc-blocks-components-select .wc-blocks-components-select__select:focus {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
	box-shadow: none;
	color: var(--wp--preset--color--grafito);
}

.kiwi-checkout-pagina .wc-block-components-validation-error {
	margin-top: var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-checkout-pagina .wc-block-components-validation-error > p {
	display: block;
	margin: 0;
	color: inherit;
	font-size: inherit;
}

.kiwi-checkout-pagina .wc-block-components-validation-error svg {
	display: none;
}

/* «Revisá N campos antes de confirmar»: fondo aviso, borde 2 guayaba; un enlace de 44 por
 * campo. */
.kiwi-checkout-errores:not([hidden]) {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
}

.kiwi-checkout-errores__titulo {
	margin: 0;
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-checkout-errores__lista {
	display: flex;
	flex-wrap: wrap;
	column-gap: var(--wp--preset--spacing--40);
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-checkout-errores__lista a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
}

/* Avisos de Woo (carrito y checkout): el dibujo de los avisos del sitio, sin el icono de
 * Woo. El de error (fallo al confirmar), con borde 2 guayaba; los demás, sin borde de
 * color. Texto grafito. */
.kiwi-checkout-pagina .wc-block-components-notice-banner,
.kiwi-carrito-pagina .wc-block-components-notice-banner {
	display: flex;
	gap: var(--wp--preset--spacing--20);
	margin: var(--wp--preset--spacing--40) var(--kiwi-pagina) 0;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--aviso);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.kiwi-checkout-pagina .wc-block-components-notice-banner.is-error,
.kiwi-carrito-pagina .wc-block-components-notice-banner.is-error {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
}

.kiwi-checkout-pagina .wc-block-components-notice-banner > svg,
.kiwi-carrito-pagina .wc-block-components-notice-banner > svg {
	display: none;
}

.kiwi-checkout-pagina .wc-block-components-notice-banner a,
.kiwi-carrito-pagina .wc-block-components-notice-banner a {
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
}

@media (width >= 900px) {
	.kiwi-checkout-pagina {
		padding: var(--wp--preset--spacing--70) var(--kiwi-pagina) var(--wp--preset--spacing--90);
	}

	.kiwi-checkout-pagina .wc-block-components-sidebar-layout.wc-block-checkout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--checkout-resumen);
		column-gap: var(--wp--preset--spacing--70);
		align-items: start;
		max-width: var(--wp--preset--dimension--checkout-ancho);
		margin: 0 auto;
	}

	/* Secciones a 24 (lienzo de 1440); la nota del envío sigue pegada a su tarjeta. */
	.kiwi-checkout-pagina .wc-block-checkout__form {
		gap: var(--wp--preset--spacing--60);
		padding: 0;
	}

	.kiwi-checkout-cabecera__titulo {
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-checkout-pagina .wc-block-checkout__form > .kiwi-checkout-envio {
		margin-top: calc(-1 * var(--wp--preset--spacing--60));
		padding: 0 var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
	}

	.kiwi-checkout-envio__tarifa {
		margin-bottom: var(--wp--preset--spacing--40);
		font-size: var(--wp--preset--font-size--cuerpo);
		line-height: var(--wp--custom--interlinea--aviso);
	}

	/* Casilla «Es un regalo»: 16 en escritorio (handoff §2; 20 en móvil). */
	.kiwi-checkout-pagina .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"] {
		width: var(--wp--preset--dimension--check);
		height: var(--wp--preset--dimension--check);
		min-width: var(--wp--preset--dimension--check);
	}

	/* Pago: padding 20 y el aviso «por encargo» a 16. */
	.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-checkout-step__content {
		padding: var(--wp--preset--spacing--50);
	}

	.kiwi-checkout-pagina .kiwi-aviso-encargo--checkout {
		font-size: var(--wp--preset--font-size--cuerpo);
	}

	.kiwi-checkout-pagina .wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control__label::after {
		margin-left: 0;
	}

	/* Resumen: tarjeta crema-alta con borde bruma, padding 24, título «Tu pedido» a 24. */
	.kiwi-checkout-pagina .wc-block-checkout__sidebar {
		padding: var(--wp--preset--spacing--60);
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
		border-radius: var(--wp--preset--border-radius--base);
		background-color: var(--wp--preset--color--crema-alta);
	}

	.kiwi-checkout-pagina .wc-block-components-checkout-order-summary__title-text {
		font-size: var(--wp--preset--font-size--24);
	}

	/* Woo le pone su propio borde al resumen: dentro de la tarjeta quedaba un segundo borde
	 * (revisión 13). La tarjeta es una sola. */
	.kiwi-checkout-pagina .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
		border: 0;
		border-radius: 0;
	}

	.kiwi-checkout-pagina .wc-block-components-notice-banner {
		margin-right: 0;
		margin-left: 0;
	}
}

/* ── 24. Gracias A y B (pantalla 10 del flujo, 375 y 1440) ─────────────────
 * Marcado de kiwi-sinpe (kiwi_sinpe_pantalla_de_espera). Copy y decisiones de la dueña
 * del 8 de octubre de 2026 en CLAUDE.md («Gracias A y B»).
 * Hasta 899 (lienzo 375): banda verde con padding 20, gap 8, antetítulo lima a 12,
 * titular de página a 32 (−0.03em, 1,08) y bajada 16 / 1,5; cuerpo con padding 16 y gap
 * 12 (16 en B). Tarjetas crema-alta con borde bruma y padding 16; etiquetas de 12 en
 * texto-muted (el lienzo usa #8A9189, que no va como texto sobre claro). Pasos con disco
 * de 20 a 12 del texto: título 700 / 16 y línea de 12 en texto-muted.
 * Desde 900 (lienzo 1440): banda con padding 40 y gap 12, titular 52 (1, −0.03em: el
 * −0.035em del lienzo no es token), bajada 20 / 1,55 a 620; cuerpo en dos columnas
 * (420 a la derecha, gap 32), padding 32 / 52, columna de la izquierda con gap 20.
 * Sin el disco de 26 delante del antetítulo (decisión de la dueña). */
.kiwi-sinpe-espera__banda {
	padding: var(--wp--preset--spacing--50) var(--kiwi-margen);
}

.kiwi-sinpe-espera__antetitulo {
	color: var(--wp--preset--color--lima-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: normal;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-sinpe-espera__titulo {
	color: inherit;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: var(--wp--custom--interlinea--titular);
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.kiwi-sinpe-espera__bajada {
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
	text-wrap: pretty;
}

.kiwi-sinpe-espera__cuerpo,
.kiwi-sinpe-espera__principal,
.kiwi-sinpe-espera__lateral {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-sinpe-espera__cuerpo {
	padding: var(--wp--preset--spacing--40) var(--kiwi-margen);
}

.kiwi-sinpe-espera--b .kiwi-sinpe-espera__cuerpo,
.kiwi-sinpe-espera--b .kiwi-sinpe-espera__principal {
	gap: var(--wp--preset--spacing--40);
}

.kiwi-sinpe-espera__lateral:not(:has(*)) {
	display: none;
}

.kiwi-sinpe-espera .kiwi-sinpe-correo {
	margin: 0;
}

/* Tarjetas «Qué pasa después» y «Estado del pedido N». */
.kiwi-sinpe-despues,
.kiwi-sinpe-verificando {
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-sinpe-despues:not(.kiwi-desde-900),
.kiwi-sinpe-verificando {
	display: flex;
}

.kiwi-sinpe-tarjeta__etiqueta {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: normal;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-sinpe-despues__pasos,
.kiwi-sinpe-verificando__pasos {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: kiwi-paso;
}

.kiwi-sinpe-paso {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
	counter-increment: kiwi-paso;
}

.kiwi-sinpe-paso__disco {
	display: grid;
	place-items: center;
	flex: none;
	box-sizing: border-box;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	border-radius: 50%;
}

/* Gracias A: disco lima con el número (Archivo 700 / 12, grafito). */
.kiwi-sinpe-paso__disco--numero {
	background-color: var(--wp--preset--color--lima-kiwi);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: 1;
}

.kiwi-sinpe-paso__disco--numero::before {
	content: counter(kiwi-paso);
}

/* Gracias B: hecho, disco verde con el check en crema; actual, aro de 2 en verde-kiwi;
 * pendiente, aro de 2 en texto-muted (el lienzo lo dibuja en bruma, que no da 3:1). */
.kiwi-sinpe-paso__disco--hecho {
	background-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-paso__disco--hecho::before {
	content: "";
	width: var(--wp--preset--dimension--icono-16);
	height: var(--wp--preset--dimension--icono-16);
	background-color: var(--wp--preset--color--crema);
	-webkit-mask: url("../icons/check.svg") center / contain no-repeat;
	mask: url("../icons/check.svg") center / contain no-repeat;
}

.kiwi-sinpe-paso__disco--actual {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-paso__disco--pendiente {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--texto-muted);
}

.kiwi-sinpe-paso__textos {
	display: flex;
	flex-direction: column;
}

.kiwi-sinpe-paso__titulo {
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-paso--pendiente .kiwi-sinpe-paso__titulo {
	color: var(--wp--preset--color--texto-muted);
}

.kiwi-sinpe-paso__texto {
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--compacta);
}

/* Las 48 h: hasta 899, fila crema-alta con borde bruma, padding 12, reloj índigo de 20
 * a 8 del texto (16 / 1,45, texto-medio). Desde 900, fondo aviso sin borde, padding 16,
 * gap 12, texto grafito 16 / 1,5. */
.kiwi-sinpe-vence:not(.kiwi-desde-900) {
	display: flex;
}

.kiwi-sinpe-vence {
	align-items: flex-start;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-sinpe-vence svg,
.kiwi-sinpe-espera__candado svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	color: var(--wp--preset--color--indigo);
}

.kiwi-sinpe-vence p,
.kiwi-sinpe-espera__candado p {
	margin: 0;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--dato);
}

/* «Ya lo pagué» (A): «Subir captura» (primario) y «Por WhatsApp» (secundario, logo a
 * color de 20) con el mismo peso. Hasta 899, mitad y mitad, de 56, icono sobre el texto;
 * debajo, la nota de 12 en texto-muted. Desde 900, tarjeta crema-alta con borde bruma,
 * padding 24, gap 12, título 24; botones de 52 del ancho de su texto (padding 0 20),
 * icono a 8 del texto, gap 12. */
.kiwi-sinpe-comprobante__acciones {
	display: flex;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-sinpe-comprobante__acciones:not(:has(> :not([hidden]))) {
	display: none;
}

.kiwi-sinpe-comprobante__acciones > * {
	flex: 1 1 0;
}

.kiwi-sinpe-comprobante__acciones .kiwi-sinpe-comprobante__subir:not([hidden]),
.kiwi-sinpe-comprobante__whatsapp {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--boton-primario);
	border-radius: var(--wp--preset--border-radius--base);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-comprobante__whatsapp {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--verde-kiwi);
	text-decoration: none;
}

.kiwi-sinpe-comprobante__acciones svg,
.kiwi-sinpe-espera__escribinos svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

.kiwi-sinpe-comprobante__nota-wa {
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
}

/* B: el archivo recibido y el aviso del candado (fondo aviso, padding 12, candado índigo
 * de 20 a 16 del texto, que va en grafito). */
.kiwi-sinpe-espera__archivo {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
}

.kiwi-sinpe-espera--b .kiwi-sinpe-comprobante {
	margin: 0;
	padding: 0;
	border: 0;
}

.kiwi-sinpe-espera__candado {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
}

.kiwi-sinpe-espera__candado p {
	color: var(--wp--preset--color--grafito);
}

/* B: «Escribinos» (secundario de 52, logo a color, Archivo 600) y «Seguir viendo la
 * tienda» (lima de 48 con texto grafito, Archivo 700; el único lima de B). Apilados a todo
 * el ancho con gap 8; desde 900, en fila, de 52, del ancho de su texto (padding 0 24). */
.kiwi-sinpe-espera__botones {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-sinpe-espera__escribinos,
.kiwi-sinpe-espera__tienda {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	border-radius: var(--wp--preset--border-radius--base);
	font-family: var(--wp--preset--font-family--archivo);
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-sinpe-espera__escribinos {
	min-height: var(--wp--preset--dimension--boton-escritorio);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 600;
}

.kiwi-sinpe-espera__tienda,
.kiwi-sinpe-espera__tienda:hover,
.kiwi-sinpe-espera__tienda:active {
	min-height: var(--wp--preset--dimension--boton-secundario);
	background-color: var(--wp--preset--color--lima-kiwi);
	color: var(--wp--preset--color--grafito);
	font-weight: 700;
}

/* Secundarios: hover fondo aviso, active divisor (revisión 12), con el color repetido
 * porque el hover de enlaces del tema les ganaría. */
.kiwi-sinpe-comprobante__whatsapp:hover,
.kiwi-sinpe-espera__escribinos:hover {
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-comprobante__whatsapp:active,
.kiwi-sinpe-espera__escribinos:active {
	background-color: var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--verde-kiwi);
}

/* Resumen de gracias: foto de 56 (resumen-foto), nombre 700 / 16, «Talla M · 1» a 12 en
 * texto-muted y precio Archivo 700 / 16; subtotal con divisor, envío en texto-medio y
 * «Pagás hoy» / «Pagaste por SINPE» (700 / 16) con el total Archivo 700 / 32. */
.kiwi-sinpe-resumen__vestidos {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-sinpe-resumen__vestido {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-sinpe-resumen__foto {
	display: block;
	flex: none;
	width: var(--wp--preset--dimension--resumen-foto);
	height: var(--wp--preset--dimension--resumen-foto);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--divisor);
	object-fit: cover;
}

.kiwi-sinpe-resumen__nombre {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.kiwi-sinpe-resumen__vestido-nombre {
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	overflow-wrap: anywhere;
}

.kiwi-sinpe-resumen__vestido-talla {
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
}

.kiwi-sinpe-resumen__precio {
	flex: none;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	font-variant-numeric: tabular-nums;
}

.kiwi-sinpe-resumen__linea--medio {
	color: var(--wp--preset--color--texto-medio);
}

.kiwi-sinpe-resumen__linea--pagas {
	align-items: baseline;
	padding-top: var(--wp--preset--spacing--30);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-sinpe-resumen__linea--pagas dt {
	font-weight: 700;
}

.kiwi-sinpe-resumen__linea--pagas dd {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	letter-spacing: -0.02em;
}

/* Barra fija «Copiar todo» (A, hasta 899): grafito, padding 12 y el de la página, gap 12;
 * etiqueta de 12 en texto-débil (4,96:1 sobre grafito), línea Archivo 700 / 16 en crema;
 * botón de 44 con contorno crema de 2 (decisión de la dueña: no lima). La página deja
 * abajo el alto de la barra para que no tape el final. */
.kiwi-sinpe-barra:not(.kiwi-desde-900) {
	display: flex;
}

.kiwi-sinpe-barra {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--30) var(--kiwi-pagina);
	background-color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-barra__texto {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.kiwi-sinpe-barra__etiqueta {
	color: var(--wp--preset--color--texto-debil);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: normal;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.kiwi-sinpe-barra__linea {
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	font-variant-numeric: tabular-nums;
	overflow-wrap: anywhere;
}

.kiwi-sinpe-barra__copiar:not([hidden]) {
	flex: none;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--crema);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: transparent;
	color: var(--wp--preset--color--crema);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-sinpe-barra__copiar:focus-visible {
	outline-color: var(--wp--preset--color--lima-kiwi);
}

@media (width < 900px) {
	.kiwi-sinpe-espera--a {
		padding-bottom: calc(var(--wp--preset--dimension--objetivo-tactil) + 2 * var(--wp--preset--spacing--30));
	}
}

@media (width >= 900px) {
	.kiwi-sinpe-espera__banda {
		gap: var(--wp--preset--spacing--30);
		padding: var(--wp--preset--spacing--80) var(--kiwi-margen);
	}

	.kiwi-sinpe-espera__antetitulo {
		letter-spacing: 0.14em;
	}

	.kiwi-sinpe-espera__titulo {
		font-size: var(--wp--preset--font-size--52);
		line-height: var(--wp--custom--interlinea--display);
	}

	.kiwi-sinpe-espera__bajada {
		max-width: var(--wp--preset--dimension--estado-bajada);
		font-size: var(--wp--preset--font-size--20);
		line-height: var(--wp--custom--interlinea--cuerpo);
	}

	.kiwi-sinpe-espera__cuerpo {
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--wp--preset--dimension--estado-resumen);
		align-items: start;
		gap: var(--wp--preset--spacing--70);
		padding: var(--wp--preset--spacing--70) var(--kiwi-margen) var(--wp--preset--spacing--90);
	}

	.kiwi-sinpe-espera__cuerpo:not(:has(.kiwi-sinpe-espera__lateral > *)) {
		grid-template-columns: minmax(0, 1fr);
	}

	.kiwi-sinpe-espera__principal,
	.kiwi-sinpe-espera--b .kiwi-sinpe-espera__principal,
	.kiwi-sinpe-espera__lateral {
		gap: var(--wp--preset--spacing--50);
	}

	.kiwi-sinpe-despues.kiwi-desde-900 {
		display: flex;
	}

	.kiwi-sinpe-despues {
		padding: var(--wp--preset--spacing--50);
	}

	.kiwi-sinpe-vence.kiwi-desde-900 {
		display: flex;
	}

	.kiwi-sinpe-vence {
		gap: var(--wp--preset--spacing--30);
		padding: var(--wp--preset--spacing--40);
		border-color: transparent;
		background-color: var(--wp--preset--color--aviso);
	}

	.kiwi-sinpe-vence p {
		color: var(--wp--preset--color--grafito);
		line-height: var(--wp--custom--interlinea--aviso);
	}

	/* «Ya lo pagué» en tarjeta. */
	.kiwi-sinpe-espera--a .kiwi-sinpe-comprobante {
		margin: 0;
		padding: var(--wp--preset--spacing--60);
		border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
		border-radius: var(--wp--preset--border-radius--base);
		background-color: var(--wp--preset--color--crema-alta);
	}

	.kiwi-sinpe-espera--a .kiwi-sinpe-comprobante__form,
	.kiwi-sinpe-espera--a .kiwi-sinpe-comprobante__inicial:not([hidden]) {
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-sinpe-espera--a .kiwi-sinpe-comprobante__titulo {
		font-size: var(--wp--preset--font-size--24);
	}

	.kiwi-sinpe-comprobante__acciones {
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-sinpe-comprobante__acciones > * {
		flex: none;
	}

	.kiwi-sinpe-comprobante__acciones .kiwi-sinpe-comprobante__subir:not([hidden]),
	.kiwi-sinpe-comprobante__whatsapp {
		flex-direction: row;
		gap: var(--wp--preset--spacing--20);
		min-height: var(--wp--preset--dimension--boton-escritorio);
		padding: 0 var(--wp--preset--spacing--50);
	}

	.kiwi-sinpe-comprobante__whatsapp {
		font-weight: 600;
	}

	/* «Estado del pedido N» en cuatro columnas: etiqueta con padding 16 / 16 / 8; cada paso
	 * con padding 16, divisor arriba (de 2 en verde-kiwi el actual: el 3 del lienzo no es
	 * grosor del sistema), disco arriba a 12 del texto, línea de 12 a 4 del título. */
	.kiwi-sinpe-verificando {
		gap: 0;
		padding: 0;
	}

	.kiwi-sinpe-verificando .kiwi-sinpe-tarjeta__etiqueta {
		padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
	}

	.kiwi-sinpe-verificando__pasos {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0;
	}

	.kiwi-sinpe-verificando .kiwi-sinpe-paso {
		flex-direction: column;
		padding: var(--wp--preset--spacing--40);
		border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	}

	.kiwi-sinpe-verificando .kiwi-sinpe-paso--actual {
		border-top: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	}

	.kiwi-sinpe-verificando .kiwi-sinpe-paso__textos {
		gap: var(--wp--preset--spacing--10);
	}

	.kiwi-sinpe-verificando .kiwi-sinpe-paso__texto {
		line-height: var(--wp--custom--interlinea--dato);
	}

	.kiwi-sinpe-espera__archivo {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: start;
	}

	.kiwi-sinpe-espera__candado {
		gap: var(--wp--preset--spacing--30);
		padding: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-espera__candado p {
		line-height: var(--wp--custom--interlinea--aviso);
	}

	.kiwi-sinpe-espera__botones {
		flex-direction: row;
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-sinpe-espera__escribinos,
	.kiwi-sinpe-espera__tienda {
		min-height: var(--wp--preset--dimension--boton-escritorio);
		padding: 0 var(--wp--preset--spacing--60);
	}

	.kiwi-sinpe-resumen--gracias,
	.kiwi-sinpe-resumen__vestidos {
		gap: var(--wp--preset--spacing--40);
	}
}

/* ── 25. Error al subir el comprobante (pantalla 13 de Kiwi-estados-excepcion, 375 y 1440) ──
 * Marcado de kiwi-sinpe (kiwi_sinpe_error_banda y kiwi_sinpe_error_cuerpo): gracias A lo
 * trae oculto y comprobante/view.js lo muestra poniendo data-error con la causa (pesado,
 * formato o conexion) en .kiwi-sinpe-espera. Banda y tarjetas con las piezas de gracias
 * (sección 24); el resumen queda a la derecha desde 900.
 * Hasta 899: tarjeta del archivo (crema-alta, borde bruma, padding 12, gap 12; «Cambiar»
 * 700 / 16 en verde-kiwi, de 44; barra de progreso de 4 en bruma con el avance en
 * verde-kiwi, solo con la conexión cortada), «Dónde estamos», el aviso (fondo aviso,
 * padding 12, reloj índigo de 20 a 12; título 700 / 16 y texto 16 / 1,45 en grafito),
 * primario de 56, «Mandar por WhatsApp» de 48 (contorno de 2, logo en monocromo: estado de
 * excepción) y la nota de 12 en texto-muted, apilados con gap 8.
 * Desde 900: sin la tarjeta del archivo (el lienzo no la dibuja); bajada a 680; «Dónde
 * estamos» con padding 24, gap 16 y la línea de cada paso a 16; aviso con padding 16;
 * botones de 52 en fila (padding 0 24 y 0 20, gap 12) con la nota a 16 al lado, a 380.
 * El disco de 22 del lienzo de escritorio va a 20 (escala de iconos). La guayaba, una sola
 * vez: el anillo de «Comprobante». */
.kiwi-sinpe-espera:not([data-error]) [data-kiwi-solo-error],
.kiwi-sinpe-espera[data-error] > .kiwi-sinpe-espera__banda:not([data-kiwi-solo-error]),
.kiwi-sinpe-espera[data-error] .kiwi-sinpe-espera__principal:not([data-kiwi-solo-error]),
.kiwi-sinpe-espera[data-error] .kiwi-sinpe-barra,
.kiwi-sinpe-espera[data-error] [data-kiwi-solo-normal] {
	display: none;
}

.kiwi-sinpe-espera [data-causa] {
	display: none;
}

.kiwi-sinpe-espera[data-error="pesado"] .kiwi-sinpe-error__bajada[data-causa="pesado"],
.kiwi-sinpe-espera[data-error="formato"] .kiwi-sinpe-error__bajada[data-causa="formato"],
.kiwi-sinpe-espera[data-error="conexion"] .kiwi-sinpe-error__bajada[data-causa="conexion"],
.kiwi-sinpe-espera[data-error="conexion"] .kiwi-sinpe-error__progreso[data-causa="conexion"],
.kiwi-sinpe-espera[data-error="pesado"] .kiwi-sinpe-error__pie[data-causa="pesado"],
.kiwi-sinpe-espera[data-error="formato"] .kiwi-sinpe-error__pie[data-causa="formato"],
.kiwi-sinpe-espera[data-error="conexion"] .kiwi-sinpe-error__pie[data-causa="conexion"] {
	display: block;
}

.kiwi-sinpe-espera[data-error="pesado"] .kiwi-sinpe-error__nota[data-causa="pesado"],
.kiwi-sinpe-espera[data-error="formato"] .kiwi-sinpe-error__nota[data-causa="formato"],
.kiwi-sinpe-espera[data-error="conexion"] .kiwi-sinpe-error__nota[data-causa="conexion"],
.kiwi-sinpe-espera[data-error="pesado"] .kiwi-sinpe-error__primario[data-causa="pesado"],
.kiwi-sinpe-espera[data-error="formato"] .kiwi-sinpe-error__primario[data-causa="formato"],
.kiwi-sinpe-espera[data-error="conexion"] .kiwi-sinpe-error__primario[data-causa="conexion"] {
	display: flex;
}

.kiwi-sinpe-espera__titulo:focus {
	outline: none;
}

.kiwi-sinpe-error__archivo {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-sinpe-error__fila {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-sinpe-error__textos {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	margin: 0;
}

.kiwi-sinpe-error__cambiar {
	flex: none;
	min-width: var(--wp--preset--dimension--objetivo-tactil);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-sinpe-error__progreso {
	height: var(--wp--preset--spacing--10);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--bruma);
}

.kiwi-sinpe-error__progreso span {
	display: block;
	height: 100%;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-paso__disco--falla {
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--guayaba);
}

.kiwi-sinpe-error__nota {
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
}

.kiwi-sinpe-error__nota svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	color: var(--wp--preset--color--indigo);
}

.kiwi-sinpe-error__nota p {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	margin: 0;
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--dato);
}

.kiwi-sinpe-error__nota-titulo {
	font-weight: 700;
}

.kiwi-sinpe-error__acciones {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-sinpe-error__primario,
.kiwi-sinpe-error__whatsapp {
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border-radius: var(--wp--preset--border-radius--base);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-error__primario {
	min-height: var(--wp--preset--dimension--boton-primario);
	padding: 0;
	border: 0;
	background-color: var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--crema);
	cursor: pointer;
}

.kiwi-sinpe-error__primario:hover {
	background-color: var(--wp--preset--color--verde-hover);
}

.kiwi-sinpe-error__primario:active {
	background-color: var(--wp--preset--color--verde-activo);
}

.kiwi-sinpe-error__whatsapp {
	display: flex;
	gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--preset--dimension--boton-secundario);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--verde-kiwi);
	text-decoration: none;
}

.kiwi-sinpe-error__whatsapp svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

.kiwi-sinpe-error__whatsapp:hover {
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-error__whatsapp:active {
	background-color: var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-error__pie {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
}

@media (width < 900px) {
	.kiwi-sinpe-espera--a[data-error] {
		padding-bottom: 0;
	}
}

@media (width >= 900px) {
	.kiwi-sinpe-error__bajada {
		max-width: var(--wp--preset--dimension--error-bajada);
	}

	.kiwi-sinpe-error__donde {
		gap: var(--wp--preset--spacing--40);
		padding: var(--wp--preset--spacing--60);
	}

	.kiwi-sinpe-error__donde .kiwi-sinpe-despues__pasos {
		gap: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-error__donde .kiwi-sinpe-paso__texto {
		font-size: var(--wp--preset--font-size--cuerpo);
		line-height: normal;
	}

	.kiwi-sinpe-error__nota {
		padding: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-error__nota p {
		line-height: var(--wp--custom--interlinea--aviso);
	}

	.kiwi-sinpe-error__acciones {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-sinpe-error__primario {
		min-height: var(--wp--preset--dimension--boton-escritorio);
		padding: 0 var(--wp--preset--spacing--60);
	}

	.kiwi-sinpe-error__whatsapp {
		min-height: var(--wp--preset--dimension--boton-escritorio);
		padding: 0 var(--wp--preset--spacing--50);
		font-weight: 600;
	}

	.kiwi-sinpe-error__pie {
		max-width: var(--wp--preset--dimension--error-pie);
		font-size: var(--wp--preset--font-size--cuerpo);
		line-height: normal;
	}
}

/* ── 26. Páginas de ayuda (plantilla B0 de Kiwi-paginas-de-ayuda: B1 a B3, 375 y 1440) ──
 * Patterns kiwi/ayuda-tallas, kiwi/ayuda-envios y kiwi/ayuda-cambios (pie común en
 * kiwi/ayuda-pie) e índice kiwi/indice (plugin kiwi-ayuda).
 * Móvil (hasta 899): «Volver a la tienda» en una barra de 48; contenido con padding 24 / 32,
 * gap 24; título 32, entradilla 16, secciones 24 (gap 12); índice en fichas de 44 con
 * desplazamiento horizontal, entre el encabezado y la primera sección.
 * Desde 900: barra de 52; índice de 220 a la izquierda, fijo al desplazar, y columna de
 * lectura de 680 con 52 entre ambos, centrados (padding 52); título 48, entradilla 20,
 * secciones 32 (gap 16), gap 40 entre bloques.
 * Desvíos del lienzo (llevados a diseño): etiquetas de 12 en texto-muted, no texto-debil (no
 * va como texto sobre crema); ficha activa del índice con borde de 2 (único grosor de énfasis,
 * revisión 12); sin migas «/ Ayuda / …» en escritorio, solo «Volver a la tienda» («Ayuda» no
 * es una página); WhatsApp de 48 en los dos anchos (alto del secundario); en móvil las
 * secciones de Envíos a 24, como las de Cambios (el lienzo de Envíos dibuja dos a 32); el pie
 * del lienzo es el footer del tema. */
.kiwi-ayuda > *,
.kiwi-ayuda__cuerpo > *,
.kiwi-ayuda__encabezado > *,
.kiwi-ayuda__columna > *,
.kiwi-ayuda__seccion > *,
.kiwi-ayuda__aviso > *,
.kiwi-ayuda__whatsapp > *,
.kiwi-ayuda__otras > * {
	margin-block: 0;
}

.kiwi-ayuda__volver {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--ayuda-barra-movil);
	padding-inline: var(--kiwi-pagina);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-ayuda__cuerpo {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) var(--wp--preset--spacing--70);
}

.kiwi-ayuda__encabezado {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.kiwi-ayuda__eyebrow {
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.kiwi-ayuda__titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--32);
	line-height: var(--wp--custom--interlinea--pagina);
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.kiwi-ayuda__entradilla {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
	text-wrap: pretty;
}

.kiwi-ayuda__columna {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--60);
}

/* Al saltar desde el índice, la sección no queda bajo el header fijo de móvil (60 = 8 + 44 + 8). */
.kiwi-ayuda__seccion {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	scroll-margin-top: calc(2 * var(--wp--preset--spacing--20) + var(--wp--preset--dimension--objetivo-tactil) + var(--wp--preset--spacing--40));
}

.kiwi-ayuda__seccion-titulo,
.kiwi-ayuda__whatsapp-titulo {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--24);
	line-height: var(--wp--custom--interlinea--seccion);
	letter-spacing: -0.02em;
}

.kiwi-ayuda__texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--ayuda);
	text-wrap: pretty;
}

/* Índice. Móvil: fichas de 44 (padding 0 / 12, borde de control 1 en texto-muted, Karla 700
 * 16 en texto-medio, gap 8) que se desplazan de lado hasta el borde de la ventana; la de la
 * sección que se lee, borde 2 en verde-kiwi. El título queda solo para lectores de pantalla. */
.kiwi-indice__titulo {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.kiwi-indice__lista {
	display: flex;
	gap: var(--wp--preset--spacing--20);
	margin: 0 calc(-1 * var(--kiwi-pagina));
	padding: 0 var(--kiwi-pagina);
	overflow-x: auto;
	scrollbar-width: none;
	list-style: none;
}

.kiwi-indice__lista li {
	flex: none;
}

.kiwi-indice__enlace {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--texto-muted);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--texto-medio);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
	white-space: nowrap;
}

.kiwi-indice__enlace[aria-current] {
	padding-inline: calc(var(--wp--preset--spacing--30) - var(--wp--custom--borde--fino));
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	color: var(--wp--preset--color--verde-kiwi);
}

/* Tablas: sin cebra ni marco. Encabezado Karla 700 12 versal (0,12em) en texto-muted con
 * filete bruma y 8 debajo; filas con filete divisor y 12 arriba y abajo, Karla 16 / 1,4 en
 * texto-medio, cifras tabulares; primera columna en 700 grafito; 12 entre columnas. Lo que
 * pone el bloque Tabla de WordPress (bordes y padding de cada celda) se anula. */
.kiwi-ayuda__tabla {
	margin: 0;
}

.kiwi-ayuda__tabla table {
	width: 100%;
	border-collapse: collapse;
}

.kiwi-ayuda__tabla thead,
.kiwi-ayuda__tabla th,
.kiwi-ayuda__tabla td {
	border: 0;
}

.kiwi-ayuda__tabla th {
	padding: 0 var(--wp--preset--spacing--30) var(--wp--preset--spacing--20) 0;
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	color: var(--wp--preset--color--texto-muted);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-align: start;
	text-transform: uppercase;
}

.kiwi-ayuda__tabla td {
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--30) var(--wp--preset--spacing--30) 0;
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--compacta);
	font-variant-numeric: tabular-nums;
	vertical-align: baseline;
}

.kiwi-ayuda__tabla th:last-child,
.kiwi-ayuda__tabla td:last-child {
	padding-inline-end: 0;
}

.kiwi-ayuda__tabla td:first-child {
	color: var(--wp--preset--color--grafito);
	font-weight: 700;
}

.kiwi-ayuda__tabla--tallas th:first-child {
	width: var(--wp--preset--dimension--tallas-columna);
}

/* Rangos en una línea: a 375 el más largo («100–105», 65) ocupa 1 de los 12 de separación de
 * la celda de 76; partido en dos, las filas de XL a 3XL quedaban del doble de alto. */
.kiwi-ayuda__tabla--tallas td {
	white-space: nowrap;
}

/* Listas sin orden: punto verde de 6 a 8 de arriba, gap 12 con el texto; ítems a 8. */
.kiwi-ayuda__puntos,
.kiwi-ayuda__pasos {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-ayuda__puntos {
	gap: var(--wp--preset--spacing--20);
}

.kiwi-ayuda__puntos li,
.kiwi-ayuda__pasos li {
	position: relative;
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
}

.kiwi-ayuda__puntos li {
	padding-inline-start: calc(var(--wp--preset--dimension--punto) + var(--wp--preset--spacing--30));
}

.kiwi-ayuda__puntos li::before {
	content: "";
	position: absolute;
	top: var(--wp--preset--spacing--20);
	left: 0;
	width: var(--wp--preset--dimension--punto);
	height: var(--wp--preset--dimension--punto);
	border-radius: 50%;
	background-color: var(--wp--preset--color--verde-kiwi);
}

/* Pasos: disco lima de 24 con el número (Archivo 700 / 12 en grafito), gap 12; pasos a 12. */
.kiwi-ayuda__pasos {
	gap: var(--wp--preset--spacing--30);
	counter-reset: kiwi-ayuda-paso;
}

.kiwi-ayuda__pasos li {
	min-height: var(--wp--preset--dimension--icono-24);
	padding-inline-start: calc(var(--wp--preset--dimension--icono-24) + var(--wp--preset--spacing--30));
	counter-increment: kiwi-ayuda-paso;
}

.kiwi-ayuda__pasos li::before {
	content: counter(kiwi-ayuda-paso);
	position: absolute;
	top: 0;
	left: 0;
	display: grid;
	place-items: center;
	width: var(--wp--preset--dimension--icono-24);
	height: var(--wp--preset--dimension--icono-24);
	border-radius: 50%;
	background-color: var(--wp--preset--color--lima-kiwi);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	line-height: 1;
}

.kiwi-ayuda__puntos strong,
.kiwi-ayuda__pasos strong {
	color: var(--wp--preset--color--grafito);
}

/* Aviso: fondo aviso, sin filete, padding 12 / 16 (16 / 20 desde 900), gap 4; etiqueta
 * versal verde de 12 y texto 16 en grafito. */
.kiwi-ayuda__aviso {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
}

.kiwi-ayuda__aviso-etiqueta {
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-ayuda__aviso-texto {
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
	text-wrap: pretty;
}

/* Cierre por WhatsApp: tarjeta crema-alta con borde bruma, padding 20 (24 desde 900), gap 12;
 * título 20 (24); el mensaje que se va a mandar en una caja aviso de padding 12; botón
 * secundario con el logo a color, a todo el ancho hasta 899 y del ancho del texto desde 900. */
.kiwi-ayuda__whatsapp {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--50);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
}

.kiwi-ayuda__whatsapp-titulo {
	font-size: var(--wp--preset--font-size--20);
}

.kiwi-ayuda__whatsapp-texto {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
}

.kiwi-ayuda__mensaje {
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--aviso);
}

.wp-block-buttons.kiwi-ayuda__whatsapp-botones,
.wp-block-buttons.kiwi-ayuda__seguir {
	align-items: stretch;
}

.kiwi-ayuda__whatsapp-botones .wp-block-button,
.kiwi-ayuda__seguir .wp-block-button {
	width: 100%;
}

.kiwi-ayuda__whatsapp-botones .wp-block-button__link {
	box-sizing: border-box;
	width: 100%;
	padding-inline: var(--wp--preset--spacing--50);
}

/* «Seguir viendo vestidos»: primario Archivo 700 16, 56 a todo el ancho hasta 899 y 52 del
 * ancho del texto desde 900 (padding 0 / 24). */
.kiwi-ayuda__seguir .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--preset--dimension--boton-primario);
	padding-block: 0;
	font-size: var(--wp--preset--font-size--cuerpo);
}

/* «Otras ayudas»: filete bruma arriba, etiqueta versal de 12 en texto-muted (padding 12 / 4)
 * y filas de 44 con filete divisor, Karla 700 16 en verde-kiwi y la flecha del set de 20. */
.kiwi-ayuda__otras {
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
}

.kiwi-ayuda__otras-titulo {
	padding: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--texto-muted);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-ayuda__otras-lista {
	margin: 0;
	padding: 0;
	list-style: none;
}

.kiwi-ayuda__otras-lista li {
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-ayuda__otras-lista a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-ayuda__otras-lista a::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: currentColor;
	-webkit-mask: url("../icons/flecha.svg") center / contain no-repeat;
	mask: url("../icons/flecha.svg") center / contain no-repeat;
}

@media (width >= 900px) {
	.kiwi-ayuda__volver {
		min-height: var(--wp--preset--dimension--ayuda-barra);
		padding-inline: var(--kiwi-margen);
	}

	/* Índice de 220 y columna de 680 con 52 entre ambos, centrados. El índice ocupa las dos
	 * filas (encabezado y columna) y queda fijo a 52 del borde, donde empieza en reposo. */
	.kiwi-ayuda__cuerpo {
		display: grid;
		grid-template-columns: var(--wp--preset--dimension--ayuda-indice) minmax(0, var(--wp--preset--dimension--ayuda-texto));
		justify-content: center;
		align-items: start;
		column-gap: var(--wp--preset--spacing--90);
		row-gap: var(--wp--preset--spacing--80);
		padding: var(--wp--preset--spacing--90) var(--kiwi-margen);
	}

	.kiwi-ayuda__encabezado {
		grid-column: 2;
		grid-row: 1;
		gap: var(--wp--preset--spacing--40);
	}

	.kiwi-ayuda__cuerpo > .kiwi-indice {
		position: sticky;
		top: var(--wp--preset--spacing--90);
		grid-column: 1;
		grid-row: 1 / span 2;
		padding-top: var(--wp--preset--spacing--10);
	}

	.kiwi-ayuda__columna {
		grid-column: 2;
		grid-row: 2;
		gap: var(--wp--preset--spacing--80);
	}

	.kiwi-ayuda__titulo {
		font-size: var(--wp--preset--font-size--48);
	}

	.kiwi-ayuda__entradilla {
		font-size: var(--wp--preset--font-size--20);
	}

	.kiwi-ayuda__seccion {
		gap: var(--wp--preset--spacing--40);
		scroll-margin-top: var(--wp--preset--spacing--90);
	}

	.kiwi-ayuda__seccion-titulo {
		font-size: var(--wp--preset--font-size--32);
	}

	/* Índice de escritorio: «En esta página» versal de 12 en texto-muted (8 debajo); cada
	 * enlace con filete de 2 a la izquierda en divisor, padding 8 / 12, Karla 700 16 en
	 * texto-muted; el de la sección que se lee, filete y texto en verde-kiwi. */
	.kiwi-indice__titulo {
		position: static;
		width: auto;
		height: auto;
		overflow: visible;
		clip-path: none;
		padding-bottom: var(--wp--preset--spacing--20);
		color: var(--wp--preset--color--texto-muted);
		font-weight: 700;
		font-size: var(--wp--preset--font-size--legal);
		letter-spacing: 0.12em;
		text-transform: uppercase;
		white-space: normal;
	}

	.kiwi-indice__lista {
		flex-direction: column;
		gap: 0;
		margin: 0;
		padding: 0;
		overflow: visible;
	}

	.kiwi-indice__enlace,
	.kiwi-indice__enlace[aria-current] {
		padding: var(--wp--preset--spacing--20) 0 var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
		border: 0;
		border-left: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--divisor);
		border-radius: 0;
		color: var(--wp--preset--color--texto-muted);
		white-space: normal;
	}

	.kiwi-indice__enlace[aria-current] {
		border-left-color: var(--wp--preset--color--verde-kiwi);
		color: var(--wp--preset--color--verde-kiwi);
	}

	.kiwi-ayuda__aviso {
		padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	}

	.kiwi-ayuda__whatsapp {
		padding: var(--wp--preset--spacing--60);
	}

	.kiwi-ayuda__whatsapp-titulo {
		font-size: var(--wp--preset--font-size--24);
	}

	.wp-block-buttons.kiwi-ayuda__whatsapp-botones,
	.wp-block-buttons.kiwi-ayuda__seguir {
		align-items: flex-start;
	}

	.kiwi-ayuda__whatsapp-botones .wp-block-button,
	.kiwi-ayuda__seguir .wp-block-button,
	.kiwi-ayuda__whatsapp-botones .wp-block-button__link,
	.kiwi-ayuda__seguir .wp-block-button__link {
		width: auto;
	}

	.kiwi-ayuda__seguir .wp-block-button__link {
		min-height: var(--wp--preset--dimension--boton-escritorio);
		padding-inline: var(--wp--preset--spacing--60);
	}
}

/* ── 27. Reintento y monto distinto (pantallas 15 y 16 de Kiwi-estados-excepcion, 375 y 1440) ──
 * Marcado de kiwi-sinpe: la 15 es gracias A abierta desde un correo (?desde=correo,
 * kiwi_sinpe_pantalla_de_espera); la 16, kiwi_sinpe_pantalla_monto_distinto. Banda y
 * cuerpo de gracias (sección 24); la pantalla 13 funciona igual en la 15.
 * Bandas: crema (15; divisor abajo desde 900, como el lienzo) y aviso (16, monto menor),
 * con texto grafito y antetítulo en texto-muted; verde (16, monto mayor), como gracias.
 * 15: tarjetas compactas en fila (gap 8), valor a 24 (32 desde 900) y copiar de 44 solo con
 * el icono. 16: tarjetas apiladas con el valor a 24 y el de la lima a 40 (32 desde 900).
 * Desde 1200, las tarjetas en columnas iguales; entre 900 y 1199 siguen apiladas: en la
 * columna de la izquierda, a un tercio, el número no entra (mismo criterio que los pasos
 * de pedido recibido por estado).
 * Aviso con reloj («¿Ya pagaste?», «Sin plazo límite»): fondo aviso, padding 12 (16 desde
 * 900), reloj índigo de 20 a 12, título 700 y texto 16 en grafito.
 * Botones: hasta 899, primario de 56 y secundario de 48 a todo el ancho, gap 8, y el pie
 * de 12 en texto-muted; desde 900, en fila, de 52, gap 12, y el pie a 16 al lado (380).
 * «¿Algo del pedido no está bien?»: divisor arriba, padding 12 (16 y medida 560 desde 900),
 * gap 4, título 700, texto en texto-medio y el enlace de 44, 700 en verde-kiwi.
 * Pasos en tarjeta: los de «Dónde estamos» de la pantalla 13. */
.kiwi-sinpe-estado__banda--crema {
	background-color: var(--wp--preset--color--crema);
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-estado__banda--aviso {
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--grafito);
}

.kiwi-sinpe-estado__banda--crema .kiwi-sinpe-espera__antetitulo,
.kiwi-sinpe-estado__banda--aviso .kiwi-sinpe-espera__antetitulo {
	color: var(--wp--preset--color--texto-muted);
}

/* 15: tarjetas compactas. */
.kiwi-sinpe-datos--compactas .kiwi-sinpe-dato {
	flex-direction: row;
	align-items: center;
}

.kiwi-sinpe-dato__textos {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	min-width: 0;
}

.kiwi-sinpe-datos--compactas .kiwi-sinpe-dato__valor,
.kiwi-sinpe-datos--montos .kiwi-sinpe-dato__valor {
	font-size: var(--wp--preset--font-size--24);
}

.kiwi-sinpe-datos--montos .kiwi-sinpe-dato--lima .kiwi-sinpe-dato__valor {
	font-size: var(--wp--preset--font-size--40);
}

.kiwi-sinpe-copiar--icono:not([hidden]) {
	flex: none;
	width: var(--wp--preset--dimension--objetivo-tactil);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
}

/* Aviso con reloj. */
.kiwi-sinpe-nota {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--aviso);
}

.kiwi-sinpe-nota svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	color: var(--wp--preset--color--indigo);
}

.kiwi-sinpe-nota p {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	margin: 0;
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--dato);
}

.kiwi-sinpe-nota__titulo {
	font-weight: 700;
}

/* 15: «Ya pagué: subir captura», «Por WhatsApp» y el pie, sin el marco de «Ya lo pagué». */
.kiwi-sinpe-comprobante--reintento {
	margin: 0;
	padding: 0;
	border: 0;
}

.kiwi-sinpe-comprobante__pie {
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
}

/* 16: botones. */
.kiwi-sinpe-acciones {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
}

.kiwi-sinpe-acciones__whatsapp,
.kiwi-sinpe-acciones__contorno {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	box-sizing: border-box;
	min-height: var(--wp--preset--dimension--boton-secundario);
	border: var(--wp--custom--borde--grueso) solid var(--wp--preset--color--verde-kiwi);
	border-radius: var(--wp--preset--border-radius--base);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-sinpe-acciones__whatsapp svg {
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
}

.kiwi-sinpe-acciones__whatsapp:hover,
.kiwi-sinpe-acciones__contorno:hover {
	background-color: var(--wp--preset--color--aviso);
	color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-acciones__whatsapp:active,
.kiwi-sinpe-acciones__contorno:active {
	background-color: var(--wp--preset--color--divisor);
	color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-sinpe-acciones__pie {
	margin: 0;
	color: var(--wp--preset--color--texto-muted);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
}

/* 15: «¿Algo del pedido no está bien?». */
.kiwi-sinpe-ayuda {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	padding-top: var(--wp--preset--spacing--30);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-sinpe-ayuda p {
	margin: 0;
	font-size: var(--wp--preset--font-size--cuerpo);
}

.kiwi-sinpe-ayuda__titulo {
	font-weight: 700;
}

.kiwi-sinpe-ayuda__texto {
	color: var(--wp--preset--color--texto-medio);
	line-height: var(--wp--custom--interlinea--dato);
}

.kiwi-sinpe-ayuda__enlace {
	display: flex;
	align-items: center;
	align-self: flex-start;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

@media (width < 900px) {
	.kiwi-sinpe-comprobante--reintento .kiwi-sinpe-comprobante__acciones {
		flex-direction: column;
	}

	.kiwi-sinpe-comprobante--reintento .kiwi-sinpe-comprobante__acciones > * {
		flex: none;
	}

	.kiwi-sinpe-comprobante--reintento .kiwi-sinpe-comprobante__whatsapp {
		flex-direction: row;
		gap: var(--wp--preset--spacing--20);
		min-height: var(--wp--preset--dimension--boton-secundario);
		font-weight: 600;
	}
}

@media (width >= 900px) {
	.kiwi-sinpe-estado__banda--crema {
		border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
	}

	/* Apiladas hasta 1199 (ver arriba). */
	.kiwi-sinpe-datos--compactas,
	.kiwi-sinpe-datos--montos {
		display: flex;
		flex-direction: column;
	}

	.kiwi-sinpe-datos--compactas .kiwi-sinpe-dato__valor,
	.kiwi-sinpe-datos--montos .kiwi-sinpe-dato__valor,
	.kiwi-sinpe-datos--montos .kiwi-sinpe-dato--lima .kiwi-sinpe-dato__valor {
		font-size: var(--wp--preset--font-size--32);
	}

	.kiwi-sinpe-datos--compactas .kiwi-sinpe-dato__textos {
		gap: var(--wp--preset--spacing--20);
	}

	/* El botón de escritorio de gracias A va sin icono; el de estas pantallas, con él. */
	.kiwi-sinpe-copiar--icono .kiwi-sinpe-copiar__icono:not([hidden]),
	.kiwi-sinpe-datos--montos .kiwi-sinpe-copiar__icono:not([hidden]) {
		display: flex;
	}

	.kiwi-sinpe-nota {
		padding: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-nota p {
		line-height: var(--wp--custom--interlinea--aviso);
	}

	.kiwi-sinpe-comprobante--reintento .kiwi-sinpe-comprobante__acciones {
		flex-wrap: wrap;
		align-items: center;
	}

	.kiwi-sinpe-comprobante--reintento .kiwi-sinpe-comprobante__subir:not([hidden]) {
		padding: 0 var(--wp--preset--spacing--60);
	}

	.kiwi-sinpe-comprobante__pie,
	.kiwi-sinpe-acciones__pie {
		max-width: var(--wp--preset--dimension--error-pie);
		font-size: var(--wp--preset--font-size--cuerpo);
		line-height: normal;
	}

	.kiwi-sinpe-acciones {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		gap: var(--wp--preset--spacing--30);
	}

	.kiwi-sinpe-acciones__whatsapp,
	.kiwi-sinpe-acciones__contorno {
		min-height: var(--wp--preset--dimension--boton-escritorio);
		padding: 0 var(--wp--preset--spacing--50);
	}

	.kiwi-sinpe-ayuda {
		max-width: var(--wp--preset--dimension--reintento-ayuda);
		padding-top: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-ayuda__texto {
		line-height: var(--wp--custom--interlinea--aviso);
	}

	.kiwi-sinpe-pasos-tarjeta {
		gap: var(--wp--preset--spacing--40);
		padding: var(--wp--preset--spacing--60);
	}

	.kiwi-sinpe-pasos-tarjeta .kiwi-sinpe-despues__pasos {
		gap: var(--wp--preset--spacing--40);
	}

	.kiwi-sinpe-pasos-tarjeta .kiwi-sinpe-paso__texto {
		font-size: var(--wp--preset--font-size--cuerpo);
		line-height: normal;
	}
}

@media (width >= 1200px) {
	.kiwi-sinpe-datos--compactas,
	.kiwi-sinpe-datos--montos {
		display: grid;
		grid-auto-columns: minmax(0, 1fr);
		grid-auto-flow: column;
		grid-template-columns: none;
	}
}

/* ── 28. Página no encontrada y página genérica (sin lienzo; decisión de la dueña) ───────
 * 404 (pattern kiwi/no-encontrada): la tarjeta de la búsqueda sin resultados (sección 11),
 * con el padding del contenido de las páginas de ayuda: 24 / 32 hasta 899, 52 desde 900.
 * Página genérica (templates/page.html; hoy, la política de privacidad): el encabezado y la
 * columna de lectura de las páginas de ayuda (sección 26), sin índice: título 32 (48 desde
 * 900) y el contenido a 680, centrado, con 40 entre los dos. */
.kiwi-no-encontrada {
	padding: var(--wp--preset--spacing--60) var(--kiwi-pagina) var(--wp--preset--spacing--70);
}

.kiwi-no-encontrada > * {
	margin-block: 0;
}

/* 404 de la revisión 13 (P12): bajada 16 / 1,55 en texto-medio, a 12 del titular; debajo del
 * primario, «Consultar mi pedido» como enlace de 44, centrado, a 8. Desde 900, la bajada
 * alineada con el titular (después de la lupa) y las dos salidas apiladas a la derecha. */
.kiwi-no-encontrada__texto,
.kiwi-no-encontrada__salidas {
	display: flex;
	flex-direction: column;
}

.kiwi-no-encontrada__texto {
	gap: var(--wp--preset--spacing--30);
}

.kiwi-no-encontrada__salidas {
	gap: var(--wp--preset--spacing--20);
}

.kiwi-no-encontrada__texto > *,
.kiwi-no-encontrada__salidas > * {
	margin: 0;
}

.kiwi-no-encontrada__bajada {
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
	text-wrap: pretty;
}

.kiwi-no-encontrada__consulta {
	text-align: center;
}

.kiwi-no-encontrada__consulta a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: underline;
	text-underline-offset: var(--wp--custom--subrayado--separacion);
}

@media (width >= 900px) {
	.kiwi-no-encontrada__texto {
		max-width: var(--wp--preset--dimension--sin-resultados-texto);
	}

	.kiwi-no-encontrada__bajada {
		padding-inline-start: calc(var(--wp--preset--dimension--icono-32) + var(--wp--preset--spacing--40));
	}

	.kiwi-no-encontrada__salidas {
		align-items: center;
		gap: 0;
	}
}

/* Títulos del contenido de la página genérica: los de sección de las páginas de ayuda
 * (H2 del §2: Archivo 600, −0.02em; 24 y 32 desde 900), en grafito. */
.kiwi-pagina .kiwi-ayuda__texto h2 {
	color: var(--wp--preset--color--grafito);
	font-size: var(--wp--preset--font-size--24);
	line-height: var(--wp--custom--interlinea--seccion);
}

@media (width >= 900px) {
	.kiwi-no-encontrada {
		padding: var(--wp--preset--spacing--90) var(--kiwi-margen);
	}

	.kiwi-pagina .kiwi-ayuda__cuerpo {
		grid-template-columns: minmax(0, var(--wp--preset--dimension--ayuda-texto));
	}

	.kiwi-pagina .kiwi-ayuda__texto h2 {
		font-size: var(--wp--preset--font-size--32);
	}
}

/* ── 29. Guía de tallas de la ficha (P9 de Kiwi-revision-13; handoff §6) ─────────
 * «Guía de tallas» junto a «Talla»: sin JS, enlace a la página; con JS, botón con
 * aria-expanded y chevron de 16 que gira 180° al abrir. Índigo, icono de 20, 44 de toque.
 *
 * Panel (bloque kiwi/guia-tallas de kiwi-ayuda): desde 900, en la columna de compra entre
 * el selector y «Agregar», al ancho de la columna; crema-alta, borde bruma. Cabecera con el
 * título (Archivo 600 / 24, −0.01em) y cerrar (24 en 44), pestañas Medirte · Tallas (44,
 * gap 24; la activa en grafito con subrayado de 2 verde), cuerpo 16 / 20 / 8, tabla con
 * filas de 44 y la talla elegida en fondo aviso con «En tu ficha», y «Ver la guía completa»
 * con la flecha de 20. Lados 20; columna «Talla» de 88 desde 1200 y de 72 hasta 1199,
 * columnas a 12.
 *
 * Hasta 899, el mismo panel como hoja inferior (popover): pegada abajo, radio 2 arriba,
 * asa de 40 × 4 en bruma, velo grafito al 40 %, título a 20, lados 16, columnas a 8 y 24
 * debajo de «Ver la guía completa». */
.kiwi-guia-tallas {
	margin: 0;
}

.kiwi-guia-tallas__enlace,
.kiwi-guia-tallas__boton {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--indigo);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: inherit;
	text-decoration: none;
	cursor: pointer;
}

.kiwi-guia-tallas__enlace[hidden],
.kiwi-guia-tallas__boton[hidden] {
	display: none;
}

.kiwi-guia-tallas__boton::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-16);
	height: var(--wp--preset--dimension--icono-16);
	background-color: currentColor;
	-webkit-mask: url("../icons/chevron.svg") center / contain no-repeat;
	mask: url("../icons/chevron.svg") center / contain no-repeat;
}

.kiwi-guia-tallas__boton[aria-expanded="true"]::after {
	transform: rotate(180deg);
}

.kiwi-guia-panel {
	--kiwi-guia-lado: var(--wp--preset--spacing--50);
	--kiwi-guia-columna: var(--wp--preset--dimension--guia-talla-media);
	--kiwi-guia-separacion: var(--wp--preset--spacing--30);
	box-sizing: border-box;
	padding: 0;
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--bruma);
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--crema-alta);
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--karla);
}

.kiwi-guia-panel[hidden] {
	display: none;
}

/* Recibe el foco al abrir la hoja (tabindex -1): el anillo va en los controles. */
.kiwi-guia-panel:focus {
	outline: none;
}

.kiwi-guia-panel__asa {
	display: none;
}

.kiwi-guia-panel__cabecera {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--20) 0 var(--kiwi-guia-lado);
}

.kiwi-guia-panel__titulo {
	margin: 0;
	color: var(--wp--preset--color--grafito);
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--24);
	line-height: var(--wp--custom--interlinea--seccion);
	letter-spacing: -0.01em;
}

.kiwi-guia-panel__cerrar {
	display: grid;
	flex: none;
	place-items: center;
	width: var(--wp--preset--dimension--objetivo-tactil);
	height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--grafito);
	cursor: pointer;
}

.kiwi-guia-panel__cerrar::before {
	content: "";
	width: var(--wp--preset--dimension--icono-24);
	height: var(--wp--preset--dimension--icono-24);
	background-color: currentColor;
	-webkit-mask: url("../icons/cerrar.svg") center / contain no-repeat;
	mask: url("../icons/cerrar.svg") center / contain no-repeat;
}

.kiwi-guia-panel__pestanas {
	display: flex;
	gap: var(--wp--preset--spacing--60);
	padding: 0 var(--kiwi-guia-lado);
	border-bottom: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-guia-panel__pestana {
	position: relative;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--texto-medio);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	cursor: pointer;
}

.kiwi-guia-panel__pestana[aria-selected="true"] {
	color: var(--wp--preset--color--grafito);
}

.kiwi-guia-panel__pestana[aria-selected="true"]::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: var(--wp--custom--borde--grueso);
	background-color: var(--wp--preset--color--verde-kiwi);
}

.kiwi-guia-panel__contenido {
	padding: var(--wp--preset--spacing--40) var(--kiwi-guia-lado) var(--wp--preset--spacing--20);
}

.kiwi-guia-panel__contenido[hidden] {
	display: none;
}

.kiwi-guia-panel__texto {
	margin: 0 0 var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--cuerpo);
}

/* «Medidas de referencia. Si dudás entre dos tallas, escribinos.» bajo la tabla, en el panel
 * y en la página (kiwi_ayuda_nota_tallas()). El enlace, 48 de toque sin mover el texto, como
 * «¿Necesitás fecha? Escribinos.» de la ficha. */
.kiwi-guia-panel__texto.kiwi-tallas-nota {
	margin: var(--wp--preset--spacing--30) 0 0;
}

.kiwi-tallas-nota__enlace {
	display: inline-block;
	padding-block: var(--wp--preset--spacing--30);
	margin-block: calc(-1 * var(--wp--preset--spacing--30));
}

/* Tabla a todo el ancho del panel, para que la fila elegida llegue a los bordes; los
 * filetes quedan adentro, a la medida de los lados (un degradado de 1 en la base de cada
 * celda, recortado en la primera y la última). */
.kiwi-guia-panel__tabla {
	width: calc(100% + 2 * var(--kiwi-guia-lado));
	margin: 0 calc(-1 * var(--kiwi-guia-lado));
	border-collapse: collapse;
	table-layout: fixed;
	font-variant-numeric: tabular-nums;
}

.kiwi-guia-panel__tabla th,
.kiwi-guia-panel__tabla td {
	box-sizing: border-box;
	padding: 0 var(--kiwi-guia-separacion) 0 0;
	border: 0;
	background-image: linear-gradient(var(--wp--preset--color--divisor), var(--wp--preset--color--divisor));
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 100% var(--wp--custom--borde--fino);
	text-align: start;
	white-space: nowrap;
}

.kiwi-guia-panel__tabla :is(th, td):first-child {
	width: calc(var(--kiwi-guia-lado) + var(--kiwi-guia-columna) + var(--kiwi-guia-separacion));
	padding-inline-start: var(--kiwi-guia-lado);
	background-position: right bottom;
	background-size: calc(100% - var(--kiwi-guia-lado)) var(--wp--custom--borde--fino);
}

.kiwi-guia-panel__tabla :is(th, td):last-child {
	padding-inline-end: var(--kiwi-guia-lado);
	background-size: calc(100% - var(--kiwi-guia-lado)) var(--wp--custom--borde--fino);
}

.kiwi-guia-panel__tabla thead th {
	padding-block-end: var(--wp--preset--spacing--20);
	background-image: linear-gradient(var(--wp--preset--color--bruma), var(--wp--preset--color--bruma));
	color: var(--wp--preset--color--texto-muted);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--legal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-guia-panel__tabla tbody :is(th, td) {
	height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--texto-medio);
	font-size: var(--wp--preset--font-size--cuerpo);
	line-height: var(--wp--custom--interlinea--compacta);
	vertical-align: middle;
}

.kiwi-guia-panel__tabla tbody th {
	color: var(--wp--preset--color--grafito);
	font-weight: 700;
}

.kiwi-guia-panel__tabla tbody tr:last-child > * {
	background-image: none;
}

.kiwi-guia-panel__tabla tr.es-elegible {
	cursor: pointer;
}

.kiwi-guia-panel__tabla tr.es-tuya > * {
	background-color: var(--wp--preset--color--aviso);
	background-position: left bottom;
	background-size: 100% var(--wp--custom--borde--fino);
	color: var(--wp--preset--color--grafito);
}

.kiwi-guia-panel__elegir {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	width: 100%;
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-align: start;
	cursor: pointer;
}

/* «En tu ficha» mide 86: en la columna de 72 (hasta 1199) se mete bajo el busto, también en
 * el lienzo. Ahí se parte en dos líneas; desde 1200, con 88, entra en una. */
.kiwi-guia-panel__tuya {
	display: none;
	white-space: normal;
	color: var(--wp--preset--color--verde-kiwi);
	font-size: var(--wp--preset--font-size--legal);
	line-height: var(--wp--custom--interlinea--dato);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kiwi-guia-panel__tabla tr.es-tuya .kiwi-guia-panel__tuya {
	display: block;
}

.kiwi-guia-panel__pie {
	padding: 0 var(--kiwi-guia-lado) var(--wp--preset--spacing--20);
	border-top: var(--wp--custom--borde--fino) solid var(--wp--preset--color--divisor);
}

.kiwi-guia-panel__completa,
.kiwi-guia-panel__completa:hover {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--preset--dimension--objetivo-tactil);
	color: var(--wp--preset--color--verde-kiwi);
	font-family: var(--wp--preset--font-family--karla);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--cuerpo);
	text-decoration: none;
}

.kiwi-guia-panel__completa::after {
	content: "";
	flex: none;
	width: var(--wp--preset--dimension--icono-20);
	height: var(--wp--preset--dimension--icono-20);
	background-color: currentColor;
	-webkit-mask: url("../icons/flecha.svg") center / contain no-repeat;
	mask: url("../icons/flecha.svg") center / contain no-repeat;
}

@media (width >= 1200px) {
	.kiwi-guia-panel {
		--kiwi-guia-columna: var(--wp--preset--dimension--guia-talla);
	}
}

/* Hoja inferior (hasta 899): view.js le pone popover y la abre en la capa superior. Se
 * pisan las medidas del popover del navegador (posición, tamaño, margen, borde). */
.kiwi-guia-panel:popover-open {
	--kiwi-guia-lado: var(--wp--preset--spacing--40);
	--kiwi-guia-separacion: var(--wp--preset--spacing--20);
	position: fixed;
	inset: auto 0 0;
	width: auto;
	height: auto;
	max-height: 100%;
	margin: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	border: 0;
	border-radius: var(--wp--preset--border-radius--base) var(--wp--preset--border-radius--base) 0 0;
}

.kiwi-guia-panel:popover-open::backdrop {
	background-color: color-mix(in srgb, var(--wp--preset--color--grafito) var(--wp--custom--velo), transparent);
}

.kiwi-guia-panel:popover-open .kiwi-guia-panel__asa {
	display: block;
	width: var(--wp--preset--dimension--asa-ancho);
	height: var(--wp--preset--dimension--asa-alto);
	margin: var(--wp--preset--spacing--20) auto 0;
	border-radius: var(--wp--preset--border-radius--base);
	background-color: var(--wp--preset--color--bruma);
}

.kiwi-guia-panel:popover-open .kiwi-guia-panel__cabecera {
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--10) 0 var(--kiwi-guia-lado);
}

.kiwi-guia-panel:popover-open .kiwi-guia-panel__titulo {
	font-size: var(--wp--preset--font-size--20);
}

.kiwi-guia-panel:popover-open .kiwi-guia-panel__pie {
	padding-block-end: var(--wp--preset--spacing--60);
}
