/*
 * AIGON — estilos del tema.
 * Tokens (colores, fuentes, tamaños) en theme.json. Acá: encabezado, botones y las secciones del Inicio.
 * Negro carbón en la "tapa" (encabezado, portada, cierre, pie) y fondo claro en el interior.
 */

:root {
	--aigon-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--aigon-stitch: repeating-linear-gradient(90deg, currentColor 0 9px, transparent 9px 15px);
	--aigon-stitch-v: repeating-linear-gradient(180deg, currentColor 0 9px, transparent 9px 15px);
	--aigon-header-h: 76px;
	--aigon-radius-img: clamp(12px, 1.6vw, 22px);
}

/* ---------- Superficies del navegador ---------- */

html {
	scroll-behavior: smooth;
	scrollbar-color: var(--wp--preset--color--accent-deep) var(--wp--preset--color--base);
	-webkit-text-size-adjust: 100%;
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

body {
	font-variant-numeric: lining-nums;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

::selection {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
}

:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 3px;
}

a {
	text-underline-offset: 0.2em;
	text-decoration-thickness: 1px;
}

input, textarea, select {
	caret-color: var(--wp--preset--color--accent);
	accent-color: var(--wp--preset--color--accent);
}

h1, h2, h3 {
	text-wrap: balance;
}

p {
	text-wrap: pretty;
}

.aigon-num,
.woocommerce-Price-amount,
.wc-block-components-product-price {
	font-variant-numeric: tabular-nums;
}

/* ---------- Encabezado ---------- */

.aigon-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: var(--wp--preset--color--base);
	border-bottom: 1px solid #ffffff14;
}

.admin-bar .aigon-header { top: var(--wp-admin--admin-bar--height, 0); }

.aigon-header__inner {
	min-height: var(--aigon-header-h);
	gap: clamp(1rem, 3vw, 2.5rem);
}

.aigon-header .wp-block-site-logo img {
	width: clamp(104px, 11vw, 136px);
	height: auto;
}

.aigon-header .wp-block-navigation a {
	text-decoration: none;
	padding-block: 0.4rem;
	background: linear-gradient(currentColor, currentColor) 0 100% / 0 1.5px no-repeat;
	transition: background-size 0.35s var(--aigon-ease-out), color 0.2s;
}

.aigon-header .wp-block-navigation a:hover,
.aigon-header .wp-block-navigation .current-menu-item > a {
	color: var(--wp--preset--color--accent);
	background-size: 100% 1.5px;
}

/* Menú hamburguesa por debajo de 1024px (WordPress lo hace recién en 600px) */
@media (max-width: 1023px) {
	.aigon-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.aigon-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}

.aigon-header .wp-block-navigation__responsive-container-open,
.aigon-header .wp-block-navigation__responsive-container-close {
	width: 44px;
	height: 44px;
	align-items: center;
	justify-content: center;
}

.aigon-header .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	padding: 1.5rem clamp(1rem, 4vw, 3.5rem);
}

/* Menú del celular: alineado a la izquierda, con separadores */
.aigon-header .wp-block-navigation__responsive-container.is-menu-open {
	--navigation-layout-justification-setting: flex-start;
	--navigation-layout-justify: flex-start;
	--navigation-layout-align: flex-start;
	text-align: left;
}

.aigon-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: stretch !important;
	padding-top: 3.5rem;
}

.aigon-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: stretch !important;
	gap: 0 !important;
	width: 100%;
}

.aigon-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	border-bottom: 1px solid #ffffff1f;
	padding: 0.9rem 0;
	justify-content: flex-start;
	align-items: flex-start !important;
}

.aigon-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a { background: none; }

.has-modal-open .aigon-wa-float { display: none; }

/* Enlace de WhatsApp del menú: solo dentro del menú del celular, como botón verde */
.aigon-header .aigon-nav-wa { display: none !important; }
.aigon-header .is-menu-open .aigon-nav-wa { display: flex !important; border-bottom: 0 !important; padding-top: 1.75rem !important; }
.aigon-header .is-menu-open .aigon-nav-wa a {
	display: inline-flex;
	padding: 0.85rem 1.4rem !important;
	border-radius: 999px;
	background: #157a42 !important;
	color: #fff !important;
	font-family: var(--wp--preset--font-family--body);
	font-size: 1.0625rem;
	font-weight: 600;
	letter-spacing: 0;
}

.aigon-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	font-family: var(--wp--preset--font-family--display);
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: -0.03em;
}

/* ---------- Botones ---------- */

.wp-element-button,
.wp-block-button__link {
	min-height: 3.25rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.6em;
	text-decoration: none;
	transition: background-color 0.25s var(--aigon-ease-out), color 0.25s var(--aigon-ease-out), transform 0.25s var(--aigon-ease-out);
}

.wp-block-button__link:active { transform: translateY(1px) scale(0.99); }

.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--contrast);
	border-color: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
}

/* Ícono de WhatsApp antes del texto del botón */
.aigon-btn-wa .wp-block-button__link::before {
	content: "";
	width: 1.25em;
	height: 1.25em;
	flex: none;
	background: currentColor;
	-webkit-mask: var(--aigon-wa-icon) center / contain no-repeat;
	mask: var(--aigon-wa-icon) center / contain no-repeat;
}

:root {
	--aigon-wa-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.47 14.38c-.3-.15-1.76-.87-2.03-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.17-.17.2-.35.22-.64.07-.3-.15-1.26-.46-2.39-1.47-.88-.79-1.48-1.76-1.65-2.06-.17-.3-.02-.46.13-.6.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.08-.15-.67-1.61-.92-2.2-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48s1.07 2.88 1.21 3.07c.15.2 2.1 3.2 5.08 4.49.71.31 1.26.49 1.69.62.71.23 1.36.2 1.87.12.57-.08 1.76-.72 2.01-1.41.25-.7.25-1.29.17-1.41-.07-.13-.27-.2-.57-.35Z'/%3E%3Cpath d='M12.04 2C6.58 2 2.13 6.45 2.13 11.91c0 1.75.46 3.45 1.32 4.95L2.05 22l5.25-1.38a9.9 9.9 0 0 0 4.74 1.21h.01c5.46 0 9.9-4.45 9.9-9.91A9.9 9.9 0 0 0 12.04 2Zm0 18.15h-.01a8.23 8.23 0 0 1-4.19-1.15l-.3-.18-3.12.82.83-3.04-.2-.31a8.2 8.2 0 0 1-1.26-4.38c0-4.54 3.7-8.23 8.25-8.23a8.23 8.23 0 0 1 8.23 8.24c0 4.54-3.7 8.23-8.23 8.23Z'/%3E%3C/svg%3E");
}


/* Línea punteada (pespunte) para separadores */
.aigon-stitch {
	height: 1.5px;
	background: var(--aigon-stitch);
	color: var(--wp--preset--color--accent);
	border: 0;
	opacity: 0.9;
}

/* ---------- Fondo claro (interior) ---------- */

.has-claro-background-color {
	color: var(--wp--preset--color--base);
	--aigon-muted: #5E584F;
}

.has-claro-background-color .wp-element-button:not(.is-style-outline *) {
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
}

.has-claro-background-color .wp-element-button:not(.is-style-outline *):hover {
	background: var(--wp--preset--color--accent-deep);
	color: #fff;
}

/* ---------- Secciones ---------- */

.aigon-section {
	padding-top: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--60);
	margin-block: 0 !important;
}

/* Dos secciones seguidas con el mismo fondo: sin doble espacio */
.aigon-section.has-claro-background-color + .aigon-section.has-claro-background-color {
	padding-top: 0;
}

.aigon-section h2 { margin: 0; max-width: 16ch; }

.aigon-section__head {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1.5rem clamp(2rem, 6vw, 6rem) !important;
	align-items: end;
	margin-bottom: clamp(2rem, 5vw, 3.5rem) !important;
}

.aigon-section__lead { margin: 0 !important; color: var(--aigon-muted, var(--wp--preset--color--muted)); max-width: 40ch; }

.aigon-pendiente {
	color: var(--aigon-muted, var(--wp--preset--color--muted));
	margin-top: 2.5rem !important;
}

/* Formas de pago */
.aigon-pagos {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1.5rem;
	align-items: baseline;
	margin-top: clamp(2rem, 4vw, 3rem) !important;
	padding: 1rem 1.25rem;
	background: #ffffffa6;
	border-radius: 14px;
	max-width: max-content;
}

.aigon-pagos strong { width: 100%; font-size: 0.8125rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--wp--preset--color--accent-deep); }

.aigon-pagos span { position: relative; padding-left: 1.1rem; }

.aigon-pagos span::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.6em;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: var(--wp--preset--color--accent-deep);
}

.aigon-comprar .wp-block-buttons { margin-top: 1.25rem; }

.aigon-cierre .wp-block-buttons { justify-content: center; margin-top: 2rem; }

main > .wp-block-post-content > * { margin-block: 0; }

/* ---------- Portada: foto grande protagonista ---------- */

.aigon-hero {
	position: relative;
	padding-top: clamp(2rem, 4vw, 3.5rem);
	padding-bottom: clamp(2.5rem, 4.5vw, 4rem);
}

.aigon-hero__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	align-items: center;
	gap: clamp(2rem, 5vw, 5rem) !important;
}

.aigon-hero__copy h1 {
	margin: 0;
	max-width: 11ch;
}

.aigon-hero__sub {
	color: var(--wp--preset--color--muted);
	max-width: 34ch;
	margin-top: 1.5rem;
}

.aigon-hero__copy .wp-block-buttons {
	margin-top: 2.25rem;
}

.aigon-hero__photo {
	margin: 0 !important;
	position: relative;
	border-radius: var(--aigon-radius-img);
	overflow: hidden;
	box-shadow: 0 40px 80px -30px #000000cc;
}

.aigon-hero__photo img {
	width: 100%;
	aspect-ratio: 5 / 4.4;
	max-height: calc(100vh - var(--aigon-header-h) - 9rem);
	min-height: 360px;
	object-fit: cover;
	display: block;
	animation: aigon-photo-in 1.2s var(--aigon-ease-out) both;
}

@keyframes aigon-photo-in {
	from { transform: scale(1.06); filter: brightness(0.7); }
}

/* Franja de confianza */
.aigon-confianza {
	border-top: 1px solid #ffffff14;
}

.aigon-confianza__items {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0 !important;
}

.aigon-confianza__items > p {
	margin: 0 !important;
	padding: 1.4rem clamp(1rem, 2.5vw, 2rem);
	font-weight: 600;
	position: relative;
}

.aigon-confianza__items > p + p::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1.2rem;
	bottom: 1.2rem;
	width: 1.5px;
	background: var(--aigon-stitch-v);
	color: var(--wp--preset--color--accent-deep);
}

.aigon-confianza__items > p:first-child { padding-left: 0; }

/* ---------- Bienvenida ---------- */

.aigon-bienvenida__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: clamp(2rem, 6vw, 6rem) !important;
	align-items: center;
}

.aigon-bienvenida__lead {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.6rem, 3.2vw, 2.6rem);
	line-height: 1.18;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0;
}

.aigon-bienvenida__lead strong { color: var(--wp--preset--color--accent-deep); font-weight: 700; }

.aigon-taller {
	position: relative;
	margin: 0 !important;
	border-radius: var(--aigon-radius-img);
	overflow: hidden;
}

.aigon-taller img { width: 100%; aspect-ratio: 4 / 4.4; object-fit: cover; display: block; }

.aigon-taller figcaption {
	border-radius: 999px !important;
	position: absolute;
	left: 1rem;
	bottom: 1rem;
	margin: 0;
	max-width: calc(100% - 2rem);
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
		font-size: 0.875rem;
	font-weight: 600;
	padding: 0.6em 0.9em;
	text-align: left;
}

/* ---------- Lo que fabricamos: tarjetas limpias ---------- */

.aigon-cards {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(2rem, 3.5vw, 3rem) clamp(1rem, 2.2vw, 2rem) !important;
}

.aigon-card {
	position: relative;
	margin: 0 !important;
}

.aigon-card > .wp-block-image {
	margin: 0 0 1.1rem !important;
	border-radius: var(--aigon-radius-img);
	overflow: hidden;
	background: #d9d3c8;
}

.aigon-card > .wp-block-image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
	transition: transform 0.8s var(--aigon-ease-out);
}

.aigon-card:hover > .wp-block-image img { transform: scale(1.045); }

.aigon-card > h3 {
	margin: 0 !important;
	font-size: var(--wp--preset--font-size--large);
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.aigon-card > h3 a { color: inherit; text-decoration: none; }

/* Toda la tarjeta es clickeable */
.aigon-card > h3 a::before {
	content: "";
	position: absolute;
	inset: 0;
}

.aigon-card > h3::after {
	content: "→";
	font-family: var(--wp--preset--font-family--body);
	font-weight: 500;
	transition: transform 0.4s var(--aigon-ease-out);
}

.aigon-card:hover > h3::after { transform: translateX(6px); }

.aigon-card:focus-within { outline: 2px solid var(--wp--preset--color--accent-deep); outline-offset: 6px; border-radius: var(--aigon-radius-img); }
.aigon-card a:focus-visible { outline: none; }

.aigon-card > p {
	margin: 0.4rem 0 0 !important;
	color: var(--aigon-muted, var(--wp--preset--color--muted));
	max-width: 38ch;
}

/* ---------- Directo de fábrica ---------- */

.aigon-terciado {
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--terciado);
}

.aigon-motivos {
	margin-top: clamp(2rem, 4vw, 3.5rem) !important;
}

.aigon-motivo {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
	gap: 1rem clamp(1.5rem, 5vw, 5rem) !important;
	padding-block: clamp(1.25rem, 2.5vw, 2rem);
	position: relative;
	margin: 0 !important;
	align-items: baseline;
}

.aigon-motivo::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 1.5px;
	background: var(--aigon-stitch);
	color: #17161466;
}

.aigon-motivo > h2,
.aigon-motivo > h3 {
	max-width: none;
	margin: 0 !important;
	font-size: var(--wp--preset--font-size--x-large);
}

.aigon-motivo > p { margin: 0 !important; font-size: var(--wp--preset--font-size--large); line-height: 1.45; }

/* ---------- Cómo comprar ---------- */

.aigon-pasos {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1.5rem, 3vw, 2.5rem) !important;
	margin-top: clamp(2rem, 4vw, 3.5rem) !important;
	position: relative;
	counter-reset: paso;
}

/* el hilo que une los pasos */
.aigon-pasos::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 2.1rem;
	height: 1.5px;
	background: var(--aigon-stitch);
	color: var(--wp--preset--color--accent-deep);
}

.aigon-paso {
	position: relative;
	margin: 0 !important;
	counter-increment: paso;
}

.aigon-paso::before {
	content: counter(paso);
	display: grid;
	place-items: center;
	width: 4.2rem;
	height: 4.2rem;
	border-radius: 50%;
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--accent);
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.75rem;
	font-weight: 700;
	position: relative;
	margin-bottom: 1.5rem;
}

.aigon-paso > h3 { font-size: var(--wp--preset--font-size--large); margin: 0 0 0.5rem !important; }
.aigon-paso > p { margin: 0 !important; color: var(--aigon-muted, var(--wp--preset--color--muted)); }

/* ---------- Mayoristas ---------- */

.aigon-mayoristas__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: clamp(2rem, 6vw, 6rem) !important;
	align-items: start;
}

.aigon-mayoristas ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.aigon-mayoristas li {
	padding: 1.1rem 0;
	position: relative;
}

.aigon-mayoristas li + li::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 1.5px;
	background: var(--aigon-stitch);
	color: #f1ece24d;
}

.aigon-mayoristas li strong { display: block; font-size: var(--wp--preset--font-size--large); font-family: var(--wp--preset--font-family--display); }

/* ---------- Cierre ---------- */

.aigon-cierre__frase {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xx-large);
	line-height: 1.05;
	font-weight: 600;
	letter-spacing: -0.035em;
	max-width: 18ch;
	margin-inline: auto !important;
}

.aigon-cierre__lema { color: var(--wp--preset--color--accent); font-size: var(--wp--preset--font-size--large); }

/* ---------- Pie ---------- */

.aigon-footer {
	border-top: 1px solid #ffffff14;
	color: var(--wp--preset--color--muted);
}

.aigon-footer a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.aigon-footer a:hover { color: var(--wp--preset--color--accent); }
.aigon-footer h2 { color: var(--wp--preset--color--contrast); font-family: var(--wp--preset--font-family--body); font-size: 0.875rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }

.aigon-footer__grid {
	display: grid !important;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 2rem !important;
}

.aigon-footer ul { list-style: none; padding: 0; margin: 0; }
.aigon-footer li { margin: 0.5rem 0; }

/* ---------- Páginas internas ---------- */

/* Encabezado oscuro de página */
.aigon-page-hero {
	padding-top: clamp(3rem, 7vw, 6rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
	margin-block: 0 !important;
}

.aigon-page-hero h1 {
	margin: 0;
	max-width: 15ch;
	font-size: clamp(2.5rem, 5.5vw, 4.75rem);
}

.aigon-page-hero__lead {
	color: var(--wp--preset--color--muted);
	max-width: 46ch;
	margin-top: 1.5rem !important;
}

.aigon-page-hero .wp-block-buttons { margin-top: 2rem; }

.aigon-404 { min-height: 62vh; display: flex; flex-direction: column; justify-content: center; }
.aigon-404 > .alignwide { width: 100%; }

/* WooCommerce agrega el ícono de cuenta en algunas plantillas: no va en el encabezado ("Mi cuenta" está en el pie). */
.aigon-header .wp-block-woocommerce-customer-account { display: none; }

/* Plantilla de página común (legales, carrito, cuenta) */
.aigon-page-title { padding-top: clamp(2.5rem, 6vw, 5rem); padding-bottom: clamp(2rem, 4vw, 3rem); }
.aigon-page-title h1 { margin-block: 0; font-size: clamp(2.25rem, 4.5vw, 3.75rem); }
.aigon-page-body { padding-top: clamp(2.5rem, 5vw, 4rem); padding-bottom: clamp(3rem, 7vw, 6rem); }
.aigon-page-body h2 { font-size: var(--wp--preset--font-size--x-large); margin-top: 2.5rem; }
.aigon-page-body li { margin: 0.4rem 0; }

/* Texto + foto */
.aigon-split {
	display: grid !important;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: clamp(2rem, 6vw, 6rem) !important;
	align-items: center;
}

.aigon-split__text > p { font-size: var(--wp--preset--font-size--large); line-height: 1.55; }

.aigon-split__media {
	margin: 0 !important;
	position: relative;
	border-radius: var(--aigon-radius-img);
	overflow: hidden;
}

.aigon-split__media img { width: 100%; aspect-ratio: 4 / 3.6; object-fit: cover; display: block; }

.aigon-split__media figcaption {
	position: absolute;
	left: 1rem;
	bottom: 1rem;
	margin: 0;
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	border-radius: 999px;
	font-size: 0.875rem;
	font-weight: 600;
	padding: 0.5em 1em;
}

.aigon-historia .aigon-split { align-items: start; }
.aigon-historia .aigon-split__media { position: sticky; top: calc(var(--aigon-header-h) + 2rem); }

/* Línea de tiempo */
.aigon-timeline {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 1.5rem !important;
	margin-top: clamp(2rem, 4vw, 3rem) !important;
	position: relative;
}

.aigon-timeline::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0.55rem;
	height: 1.5px;
	background: var(--aigon-stitch);
	color: var(--wp--preset--color--accent-deep);
}

.aigon-hito { position: relative; margin: 0 !important; padding-top: 2.25rem; }

.aigon-hito::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 1.1rem;
	height: 1.1rem;
	border-radius: 50%;
	background: var(--wp--preset--color--base);
	box-shadow: 0 0 0 4px var(--wp--preset--color--claro);
}

.aigon-hito > p { margin: 0 !important; }
.aigon-hito__fecha { font-weight: 700; font-size: var(--wp--preset--font-size--large); margin-bottom: 0.4rem !important; color: var(--wp--preset--color--accent-deep); }

/* Fundadores */
.aigon-equipo {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2.5vw, 2rem) !important;
	margin-top: clamp(2rem, 4vw, 3rem) !important;
}

.aigon-socio {
	margin: 0 !important;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	background: #ffffffb3;
	border-radius: var(--aigon-radius-img);
}

.aigon-socio__foto {
	margin: 0 0 1.25rem !important;
}

.aigon-socio__foto img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: calc(var(--aigon-radius-img) * 0.7);
}

.aigon-socio > h3 { margin: 0 !important; font-size: var(--wp--preset--font-size--large); }
.aigon-socio__rol { margin: 0.3rem 0 0 !important; color: var(--aigon-muted, var(--wp--preset--color--muted)); }

/* Misión, visión y propósito */
.aigon-mvp {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(2rem, 4vw, 4rem) !important;
}

.aigon-mvp__item { margin: 0 !important; position: relative; padding-top: 1.75rem; }
.aigon-mvp__item::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1.5px; background: var(--aigon-stitch); color: #17161466; }
.aigon-mvp__item > h3 { margin: 0 0 0.75rem !important; font-size: var(--wp--preset--font-size--x-large); }
.aigon-mvp__item > p { margin: 0 !important; font-size: var(--wp--preset--font-size--large); line-height: 1.5; }

/* Lo que nos mueve */
.aigon-quote__label { max-width: none !important; font-size: 0.875rem !important; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--accent); font-weight: 600; }
.aigon-quote {
	font-size: clamp(1.6rem, 3.4vw, 2.75rem);
	line-height: 1.2;
	letter-spacing: -0.02em;
	font-weight: 500;
	max-width: 30ch;
	margin-top: 1.5rem !important;
}
.aigon-quote strong { color: var(--wp--preset--color--accent); font-weight: 600; }

/* Listas tipo motivos sobre fondo claro */
.has-claro-background-color .aigon-motivo::before { color: #17161440; }
.aigon-motivos--compacto { margin-top: 0 !important; margin-bottom: 2rem !important; }
.aigon-motivos--compacto .aigon-motivo { grid-template-columns: minmax(0, 1fr); gap: 0.4rem !important; }
.aigon-motivos--compacto .aigon-motivo > h2,
.aigon-motivos--compacto .aigon-motivo > h3 { font-size: var(--wp--preset--font-size--large); }
.aigon-motivos--compacto .aigon-motivo > p { font-size: var(--wp--preset--font-size--medium); color: var(--aigon-muted); }

/* Garantía */
.aigon-garantia {
	padding: clamp(1.75rem, 4vw, 3rem);
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	border-radius: var(--aigon-radius-img);
	display: grid !important;
	grid-template-columns: minmax(0, 0.6fr) minmax(0, 1.4fr);
	gap: 1.5rem clamp(2rem, 5vw, 5rem) !important;
	align-items: start;
}
.aigon-garantia > * { margin: 0 !important; }
.aigon-garantia h2 { color: var(--wp--preset--color--accent); }
.aigon-garantia-section + .aigon-faq-section { padding-top: 0 !important; }

/* Preguntas frecuentes */
.aigon-faq { margin-top: clamp(1.5rem, 3vw, 2.5rem) !important; margin-bottom: 2rem !important; max-width: 52rem; }

.aigon-faq .wp-block-details {
	border-top: 1.5px solid #17161420;
	padding: 0;
	margin: 0 !important;
}
.aigon-faq .wp-block-details:last-child { border-bottom: 1.5px solid #17161420; }

.aigon-faq summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	padding: 1.25rem 0;
	font-size: var(--wp--preset--font-size--large);
	font-weight: 600;
	letter-spacing: -0.01em;
}
.aigon-faq summary::-webkit-details-marker { display: none; }
.aigon-faq summary::after {
	content: "+";
	flex: none;
	display: grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	font-weight: 400;
	transition: transform 0.35s var(--aigon-ease-out);
}
.aigon-faq details[open] summary::after { transform: rotate(45deg); }
.aigon-faq details > p { margin: 0 0 1.4rem !important; max-width: 60ch; color: var(--aigon-muted); }

/* Contacto */
.aigon-datos { display: grid !important; gap: 0 !important; }
.aigon-dato { margin: 0 !important; padding: 1.4rem 0; position: relative; }
.aigon-dato + .aigon-dato::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1.5px; background: var(--aigon-stitch); color: #17161440; }
.aigon-dato > h2 { margin: 0 0 0.35rem !important; font-size: 0.875rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--accent-deep); }
.aigon-dato > p { margin: 0 !important; font-size: var(--wp--preset--font-size--large); }
.aigon-dato .wp-block-buttons { margin-top: 1rem; }
.aigon-split--mapa { align-items: stretch; }
.aigon-mapa { height: 100%; min-height: 420px; border-radius: var(--aigon-radius-img); overflow: hidden; background: #d9d3c8; }
.aigon-mapa iframe { width: 100%; height: 100%; min-height: 420px; border: 0; display: block; }

/* ---------- Tienda (WooCommerce) ---------- */

.aigon-tienda,
.aigon-producto { padding-top: clamp(1.5rem, 3vw, 2.5rem); padding-bottom: var(--wp--preset--spacing--60); }

.woocommerce-breadcrumb { font-size: 0.875rem; color: var(--aigon-muted); margin-bottom: 1.5rem !important; }
.woocommerce-breadcrumb a { color: inherit; }

.woocommerce-products-header { margin-bottom: 1.5rem; }
.woocommerce-products-header__title { margin: 0; font-size: clamp(2.5rem, 5vw, 4.25rem); }
.term-description { color: var(--aigon-muted); max-width: 52ch; }

/* Filtros por categoría */
.aigon-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0 0 1.75rem;
}

.aigon-filtros a {
	padding: 0.55rem 1.05rem;
	border-radius: 999px;
	border: 1.5px solid #17161426;
	text-decoration: none;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--wp--preset--color--base);
	white-space: nowrap;
	transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.aigon-filtros a:hover { border-color: var(--wp--preset--color--base); color: var(--wp--preset--color--base); }
.aigon-filtros a.is-active { background: var(--wp--preset--color--base); border-color: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); }

.woocommerce .woocommerce-result-count { font-size: 0.875rem; color: var(--aigon-muted); margin: 0.6rem 0 1.5rem; }
.woocommerce .woocommerce-ordering select {
	font: inherit;
	font-size: 0.875rem;
	padding: 0.55rem 2.2rem 0.55rem 1rem;
	border-radius: 999px;
	border: 1.5px solid #17161426;
	background-color: #fff;
	color: var(--wp--preset--color--base);
}

/* Grilla de productos */
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.75rem, 3vw, 2.75rem) clamp(1rem, 2vw, 1.75rem);
	margin: 0 !important;
	padding: 0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none !important; }

.woocommerce ul.products li.product {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	position: relative;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { color: inherit; text-decoration: none; }

.woocommerce ul.products li.product a img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	background: #fff;
	border-radius: var(--aigon-radius-img);
	margin: 0 0 1rem !important;
	transition: transform 0.6s var(--aigon-ease-out);
}

.woocommerce ul.products li.product:hover a img { transform: translateY(-4px); }

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.1875rem !important;
	font-weight: 600;
	letter-spacing: -0.015em;
	padding: 0 !important;
	margin: 0 0 0.25rem !important;
}

.woocommerce ul.products li.product .price {
	color: var(--aigon-muted) !important;
	font-size: 0.9375rem !important;
	margin: 0 0 0.9rem !important;
}

.woocommerce ul.products li.product .button {
	align-self: flex-start;
	margin-top: auto !important;
	padding: 0.55rem 1.1rem !important;
	min-height: 0;
	border-radius: 999px !important;
	background: transparent !important;
	border: 1.5px solid var(--wp--preset--color--base) !important;
	color: var(--wp--preset--color--base) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
}

.woocommerce ul.products li.product .button:hover { background: var(--wp--preset--color--base) !important; color: var(--wp--preset--color--contrast) !important; }

.aigon-precio-consultar { font-style: normal; }

.woocommerce nav.woocommerce-pagination ul { border: 0 !important; display: flex; gap: 0.4rem; justify-content: center; margin-top: 3rem !important; }
.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { border-radius: 999px; min-width: 2.5rem; padding: 0.6rem !important; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--wp--preset--color--base) !important; color: var(--wp--preset--color--contrast) !important; }

/* Ficha de producto */
.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	gap: 2rem clamp(2rem, 5vw, 5rem);
	align-items: start;
}

.woocommerce div.product > * { grid-column: 1 / -1; }

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
}

.woocommerce div.product div.images { grid-column: 1; }
/* Ficha: fotos y descripción a la izquierda, compra a la derecha; los relacionados van abajo, a lo ancho. */
.woocommerce div.product div.summary { grid-column: 2; grid-row: 1 / span 2; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1; grid-row: 2; }

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { border-radius: var(--aigon-radius-img); overflow: hidden; background: #fff; }
.woocommerce div.product div.images img { aspect-ratio: 4 / 3; object-fit: contain; background: #fff; }
/* Cambio de foto por color: instantáneo, sin fundidos (WooCommerce trae transiciones en la galería). */
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce div.product .woocommerce-product-gallery__wrapper,
.woocommerce div.product .woocommerce-product-gallery__image,
.woocommerce div.product .woocommerce-product-gallery__image img { transition: none !important; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger { top: 1rem; right: 1rem; background: #fff; border-radius: 50%; }

.woocommerce div.product .product_title {
	font-size: clamp(2.25rem, 4vw, 3.5rem);
	margin: 0 0 0.75rem !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--wp--preset--color--base) !important;
	font-size: 1.5rem !important;
	font-weight: 600;
	margin: 0 0 1.25rem !important;
}

.woocommerce div.product p.price .aigon-precio-consultar { font-size: 1.125rem; color: var(--aigon-muted); font-weight: 500; }

.woocommerce-product-details__short-description { font-size: var(--wp--preset--font-size--medium); }
.woocommerce-product-details__short-description p:first-child { font-weight: 600; font-size: 1.0625rem; }
.woocommerce-product-details__short-description p { color: var(--aigon-muted); }
.woocommerce-product-details__short-description p:first-child { color: var(--wp--preset--color--base); }

/* Botón de WhatsApp en la ficha */
.aigon-consultar { margin: 1.75rem 0 1.5rem; }

.aigon-consultar__btn {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	width: 100%;
	min-height: 3.5rem;
	padding: 0.9rem 1.5rem;
	border-radius: 999px;
	background: #157a42;
	color: #fff !important;
	font-weight: 600;
	font-size: 1.0625rem;
	text-decoration: none;
	transition: background-color 0.2s, transform 0.25s var(--aigon-ease-out);
}

.aigon-consultar__btn:hover { background: #10633a; transform: translateY(-1px); }
.aigon-consultar__btn svg { width: 1.4rem; height: 1.4rem; flex: none; }

.aigon-consultar--secundario .aigon-consultar__btn {
	background: transparent;
	color: var(--wp--preset--color--base) !important;
	border: 1.5px solid var(--wp--preset--color--base);
}

.aigon-consultar__nota { font-size: 0.875rem; color: var(--aigon-muted); margin: 0.75rem 0 0 !important; text-align: center; }

/* Categoría sin productos todavía */
.aigon-sin-productos { max-width: 32rem; margin: 0.5rem 0 3rem; }
.aigon-sin-productos > p:first-child { font-size: 1.0625rem; margin: 0 0 1.5rem; }

.woocommerce div.product form.cart { margin: 1.5rem 0 0 !important; display: flex; gap: 0.75rem; }
.woocommerce div.product form.cart .button { flex: 1; border-radius: 999px !important; min-height: 3.5rem; background: var(--wp--preset--color--base) !important; }
.woocommerce .quantity .qty { box-sizing: border-box; padding: 0 0.5rem; text-align: center; height: 3.5rem; min-height: 3.5rem; border-radius: 999px; border: 1.5px solid #17161426; width: 5rem; }

/* Opciones del mueble (lugares, tapizado, color) */
.woocommerce div.product form.variations_form { display: block; }
.woocommerce div.product form.cart table.variations { width: 100%; margin: 0 0 1rem; border: 0; border-collapse: collapse; }
.woocommerce div.product form.cart table.variations tbody { display: block; }
.woocommerce div.product form.cart table.variations tr { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.4rem; margin-bottom: 0.9rem; }
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td { display: block; padding: 0; text-align: left; border: 0; background: none; line-height: 1.3; }
.woocommerce div.product form.cart table.variations label { font-weight: 600; font-size: 0.95rem; }
.woocommerce div.product form.cart table.variations select {
	width: 100%;
	min-height: 3.25rem;
	padding: 0 2.75rem 0 1.1rem;
	border: 1.5px solid #17161426;
	border-radius: 999px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23171614' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 1.1rem center;
	appearance: none;
	font: inherit;
	color: inherit;
	cursor: pointer;
}
.woocommerce div.product form.cart table.variations select:focus-visible { outline: 2px solid var(--wp--preset--color--accent-deep); outline-offset: 2px; }
.woocommerce div.product form.cart .reset_variations { display: inline-block; margin-top: 0.5rem; font-size: 0.9rem; }
.woocommerce div.product .woocommerce-variation-price { margin-bottom: 1rem; }
.woocommerce div.product .woocommerce-variation-price .price { font-size: var(--wp--preset--font-size--x-large, 1.75rem); font-weight: 700; }
.woocommerce div.product .woocommerce-variation-add-to-cart { display: flex; align-items: center; gap: 0.75rem; }
.woocommerce div.product form.cart .button { height: 3.5rem; padding-block: 0 !important; }
.woocommerce div.product form.cart .quantity { margin: 0 !important; }
.woocommerce div.product .woocommerce-variation-add-to-cart .button.disabled { opacity: 0.45; }
.aigon-desde { font-weight: 400; font-size: 0.8em; opacity: 0.75; }

/* Opciones como botones (assets/js/opciones.js) */
.aigon-oculto { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.aigon-opciones { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.aigon-pildora {
	min-height: 2.75rem;
	padding: 0 1.15rem;
	border: 1.5px solid #17161426;
	border-radius: 999px;
	background: #fff;
	color: inherit;
	font: inherit;
	font-size: 0.95rem;
	cursor: pointer;
	transition: border-color 0.15s ease, background-color 0.15s ease;
}
.aigon-pildora:hover { border-color: var(--wp--preset--color--base); }
.aigon-pildora[aria-pressed="true"] { background: var(--wp--preset--color--base); border-color: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); }
.aigon-muestra {
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #ddd center / cover no-repeat;
	box-shadow: inset 0 0 0 1px #17161426;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.aigon-muestra:hover { transform: scale(1.06); }
.aigon-muestra[aria-pressed="true"] { box-shadow: 0 0 0 2px var(--wp--preset--color--claro, #eeeae2), 0 0 0 4px var(--wp--preset--color--base); }
.aigon-muestra--sin-foto { font-weight: 700; }
.aigon-pildora:focus-visible, .aigon-muestra:focus-visible { outline: 2px solid var(--wp--preset--color--accent-deep); outline-offset: 3px; }
.aigon-opciones__elegido { font-weight: 400; }
.aigon-opciones__ayuda { margin: 0; font-size: 0.9rem; opacity: 0.75; }

/* Que nada salte al elegir opciones: la fila de colores y el precio tienen siempre su lugar reservado
   (WooCommerce oculta y vuelve a mostrar el precio con una animación cada vez que cambia una opción). */
.aigon-opciones--color { min-height: 2.75rem; align-items: center; }
.aigon-aviso-fotos { margin: -0.25rem 0 1.25rem !important; font-size: 0.8rem; line-height: 1.45; opacity: 0.7; }
.aigon-aviso-fotos a { color: inherit; }
.woocommerce div.product form.cart .woocommerce-variation.single_variation {
	display: block !important;
	height: auto !important;
	min-height: 3.25rem;
	overflow: visible !important;
	padding: 0 !important;
	margin: 0 0 1rem !important;
	opacity: 1 !important;
}
.woocommerce div.product form.cart .woocommerce-variation-price { margin: 0; }
.woocommerce div.product form.cart .reset_variations { display: inline-block !important; }
@media (prefers-reduced-motion: reduce) { .aigon-pildora, .aigon-muestra { transition: none; } .aigon-muestra:hover { transform: none; } }

.woocommerce div.product .product_meta { font-size: 0.875rem; color: var(--aigon-muted); padding-top: 1.25rem; border-top: 1.5px solid #17161414; }
.woocommerce div.product .product_meta a { color: inherit; }

/* Pestañas */
.woocommerce div.product .woocommerce-tabs { margin-top: clamp(2rem, 5vw, 4rem); }

.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	gap: 0.5rem;
	padding: 0 !important;
	margin: 0 0 1.75rem !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: 1.5px solid #17161426 !important;
	background: transparent !important;
	border-radius: 999px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 0.6rem 1.2rem !important; font-weight: 600 !important; color: var(--wp--preset--color--base) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--wp--preset--color--base) !important; border-color: var(--wp--preset--color--base) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--wp--preset--color--contrast) !important; }

.woocommerce div.product .woocommerce-tabs .panel { max-width: 46rem; }
.woocommerce div.product .woocommerce-tabs .panel h2, .woocommerce div.product .woocommerce-tabs .panel h3 { font-size: var(--wp--preset--font-size--large); }

.woocommerce table.shop_attributes { border: 0; }
.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td { border: 0 !important; border-bottom: 1.5px solid #17161414 !important; padding: 0.85rem 0 !important; background: transparent !important; font-style: normal; }
.woocommerce table.shop_attributes th { width: 35%; font-weight: 600; text-align: left; }
.woocommerce table.shop_attributes td p { margin: 0; }

/* Relacionados */
.woocommerce section.related { margin-top: clamp(3rem, 6vw, 5rem); }
.woocommerce section.related > h2 { font-size: var(--wp--preset--font-size--x-large); margin-bottom: 1.5rem; }

/* ---------- Carrito y checkout ---------- */

.aigon-compra { --aigon-muted: #5E584F; }
.aigon-compra .wp-block-woocommerce-cart,
.aigon-compra .wp-block-woocommerce-checkout { max-width: 1320px; margin-inline: auto; }

/* El costo de envío se coordina por WhatsApp: no mostrar "Gratis". */
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__secondary-label,
.wc-block-components-totals-shipping .wc-block-components-totals-item__value { display: none !important; }

.aigon-compra .wc-block-components-text-input input,
.aigon-compra .wc-block-components-combobox .wc-block-components-combobox-control input,
.aigon-compra .wc-blocks-components-select select,
.aigon-compra .wc-block-components-textarea {
	background: #fff;
	color: var(--wp--preset--color--base);
	border-color: #17161433;
	border-radius: 12px;
}

.aigon-compra .wc-block-components-text-input label,
.aigon-compra .wc-blocks-components-select label { color: var(--aigon-muted); }

.aigon-compra .wc-block-components-radio-control__option,
.aigon-compra .wc-block-components-radio-control-accordion-option { border-radius: 12px; }

.aigon-compra .wc-block-components-button:not(.is-link) {
	border-radius: 999px;
	min-height: 3.5rem;
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	font-weight: 600;
}

.aigon-compra .wc-block-components-button:not(.is-link):hover { background: var(--wp--preset--color--accent-deep); }

.aigon-compra .wc-block-cart-item__image img { border-radius: 10px; background: #fff; }

.aigon-gracias { max-width: 32rem; margin-top: 0.5rem; }
.aigon-compra .wc-block-order-confirmation-status { margin-bottom: 1.5rem; }
.aigon-compra .wc-block-order-confirmation-summary { background: #fff; border-radius: 14px; padding: 1.25rem 1.5rem; }
.aigon-compra .wc-block-order-confirmation-totals table { background: #fff; border-radius: 14px; }
.aigon-compra .wc-block-order-confirmation-shipping-address,
.aigon-compra .wc-block-order-confirmation-billing-address { background: #fff; border-radius: 14px; border: 0 !important; }
.aigon-compra .wc-block-order-confirmation-address-wrapper address { background: transparent; }
.aigon-compra .wc-block-order-confirmation-status h1 { display: none; }
.aigon-compra h2.wp-block-heading { font-size: var(--wp--preset--font-size--large); margin-top: 2rem; }

/* ---------- WhatsApp flotante ---------- */

.aigon-wa-float {
	position: fixed;
	right: clamp(1rem, 2.5vw, 1.75rem);
	bottom: clamp(1rem, 2.5vw, 1.75rem);
	z-index: 60;
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	min-height: 3.5rem;
	padding: 0 1.25rem 0 1rem;
	border-radius: 999px;
	background: #157a42;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 10px 24px -6px #000000b3, 0 2px 6px #0000004d;
	transition: transform 0.3s var(--aigon-ease-out), background-color 0.2s;
	animation: aigon-wa-in 0.7s var(--aigon-ease-out) 1.2s backwards;
}

.aigon-wa-float:hover { background: #10633a; color: #fff; transform: translateY(-2px); }

.aigon-wa-float svg { width: 1.6rem; height: 1.6rem; flex: none; }

@keyframes aigon-wa-in {
	from { transform: translateY(140%); }
}

/* ---------- Responsive ---------- */

@media (max-width: 1080px) {
	.woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aigon-timeline { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 2.5rem !important; }
	.aigon-timeline::before { display: none; }
	.aigon-mvp { grid-template-columns: minmax(0, 1fr); }
	.aigon-pasos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aigon-pasos::before { display: none; }
	.aigon-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aigon-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 781px) {
	:root { --aigon-header-h: 64px; }

	/* Celular: foto arriba a todo el ancho, titular y botones abajo */
	.aigon-hero { padding-top: 0; }

	.aigon-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 1.75rem !important; }

	.aigon-hero__photo {
		order: -1;
		margin-inline: calc(-1 * clamp(1rem, 4vw, 3.5rem)) !important;
		border-radius: 0;
		box-shadow: none;
	}

	.aigon-hero__photo img { aspect-ratio: 4 / 3.3; min-height: 0; max-height: none; }

	.aigon-hero__copy h1 { max-width: 12ch; }

	.aigon-hero__copy .wp-block-buttons { flex-direction: column; align-items: stretch; margin-top: 1.75rem; }
	.aigon-hero__copy .wp-block-button,
	.aigon-hero__copy .wp-block-button__link { width: 100%; }

	.aigon-confianza__items { grid-template-columns: minmax(0, 1fr); }
	.aigon-confianza__items > p { padding: 1rem 0; }
	.aigon-confianza__items > p + p::before { left: 0; right: 0; top: 0; bottom: auto; width: auto; height: 1.5px; background: var(--aigon-stitch); }

	.aigon-bienvenida__grid,
	.aigon-mayoristas__grid,
	.aigon-section__head { grid-template-columns: minmax(0, 1fr); }

	/* Tarjetas: deslizables de a una y media */
	.aigon-cards {
		display: flex !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: clamp(1rem, 4vw, 3.5rem);
		padding-inline: clamp(1rem, 4vw, 3.5rem) !important;
		margin-inline: calc(-1 * clamp(1rem, 4vw, 3.5rem)) !important;
		padding-bottom: 0.5rem !important;
		scrollbar-width: none;
	}

	.aigon-cards::-webkit-scrollbar { display: none; }

	.aigon-cards > * { flex: 0 0 78%; scroll-snap-align: start; }

	.aigon-motivo { grid-template-columns: minmax(0, 1fr); }

	/* Cómo comprar: línea de tiempo compacta (número a la izquierda) */
	.aigon-pasos { grid-template-columns: minmax(0, 1fr); gap: 1.4rem !important; margin-top: 1.75rem !important; }
	.aigon-pasos::before { display: block; left: 1.35rem; right: auto; top: 1.5rem; bottom: 1.5rem; width: 1.5px; height: auto; background: var(--aigon-stitch-v); }
	.aigon-paso { display: grid; grid-template-columns: 2.7rem minmax(0, 1fr); column-gap: 1rem; align-items: start; }
	.aigon-paso::before { grid-row: span 2; width: 2.7rem; height: 2.7rem; font-size: 1.1rem; margin: 0; }
	.aigon-paso > h3 { font-size: 1.0625rem; margin: 0.15rem 0 0.15rem !important; }
	.aigon-paso > p { font-size: 0.9375rem; }
	.aigon-pagos { max-width: none; }

	/* Páginas internas */
	.aigon-split,
	.aigon-garantia { grid-template-columns: minmax(0, 1fr); }
	.aigon-historia .aigon-split__media { position: relative; top: 0; }
	.aigon-timeline { grid-template-columns: minmax(0, 1fr); row-gap: 1.5rem !important; padding-left: 2rem; }
	.aigon-timeline::before { display: block; left: 0.55rem; right: auto; top: 0.5rem; bottom: 0.5rem; width: 1.5px; height: auto; background: var(--aigon-stitch-v); }
	.aigon-hito { padding-top: 0; }
	.aigon-hito::before { left: -2rem; top: 0.25rem; }
	.aigon-equipo { grid-template-columns: minmax(0, 1fr); }
	.aigon-socio { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 1.1rem; align-content: center; align-items: end; padding: 1rem; }
	.aigon-socio > h3 { align-self: end; }
	.aigon-socio__rol { align-self: start; }
	.aigon-socio__foto { grid-row: span 2; margin: 0 !important; }
	.aigon-mapa, .aigon-mapa iframe { min-height: 320px; }
	.aigon-faq summary { font-size: 1.0625rem; }

	/* Tienda */
	.aigon-filtros { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * clamp(1rem, 4vw, 3.5rem)); padding-inline: clamp(1rem, 4vw, 3.5rem); }
	.aigon-filtros::-webkit-scrollbar { display: none; }
	.woocommerce ul.products { gap: 1.75rem 0.9rem; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1rem !important; }
	.woocommerce .woocommerce-ordering { float: none; margin-bottom: 1rem; }
	.woocommerce .woocommerce-result-count { float: none; margin-bottom: 0.5rem; }
	.woocommerce div.product { grid-template-columns: minmax(0, 1fr); }
	.woocommerce div.product div.images,
	.woocommerce div.product div.summary { grid-column: 1; grid-row: auto; }
	.woocommerce div.product .woocommerce-tabs { grid-column: 1; grid-row: auto; }
	.woocommerce div.product .woocommerce-tabs ul.tabs { overflow-x: auto; }

	/* Cierre */
	.aigon-cierre__frase { font-size: 2rem; }

	/* Pie: Tienda y AIGON lado a lado */
	.aigon-footer { padding-top: 3rem !important; padding-bottom: 2rem !important; }
	.aigon-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 2rem 1.25rem !important; }
	.aigon-footer__grid > :first-child,
	.aigon-footer__grid > :last-child { grid-column: 1 / -1; }
	.aigon-footer__grid > :first-child .wp-block-image img { width: 150px !important; }
	.aigon-footer li { margin: 0.35rem 0; font-size: 0.9375rem; }
	.aigon-footer .has-small-font-size { flex-direction: column; gap: 0.5rem !important; font-size: 0.8125rem !important; }
	.aigon-footer .has-small-font-size p { margin: 0; }


	.aigon-wa-float span { display: none; }
	.aigon-wa-float { padding: 0; width: 3.5rem; justify-content: center; }

	/* Ficha en celular: foto y colores entran juntos en la pantalla, para ver el cambio de color sin subir. */
	.single-product .woocommerce-breadcrumb { display: none; }
	.woocommerce div.product .product_title { font-size: 1.875rem; margin: 0 0 0.25rem !important; }
	.woocommerce div.product p.price { font-size: 1.25rem !important; margin: 0 0 0.6rem !important; }
	.woocommerce-product-details__short-description { margin-bottom: 0.25rem; }
	.woocommerce-product-details__short-description p:first-child { font-size: 0.9375rem; margin: 0; line-height: 1.4; }
	.woocommerce-product-details__short-description p + p { display: none; }
	.woocommerce div.product form.cart { margin-top: 0.85rem !important; }
	.woocommerce div.product form.cart table.variations tr { gap: 0.3rem; margin-bottom: 0.6rem; }
	.woocommerce div.product form.cart table.variations label { font-size: 0.875rem; }
	.aigon-opciones { gap: 0.3rem; }
	.aigon-pildora { min-height: 2.4rem; padding: 0 0.62rem; font-size: 0.8125rem; letter-spacing: -0.005em; }
	.aigon-muestra, .aigon-opciones--color { width: auto; }
	.aigon-muestra { width: 2.5rem; height: 2.5rem; }
	.aigon-opciones--color { min-height: 2.5rem; }
	.single-product .aigon-wa-float { width: 3rem; min-height: 3rem; right: 0.75rem; bottom: 0.75rem; }
	.single-product .aigon-wa-float svg { width: 1.35rem; height: 1.35rem; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-delay: 0ms !important;
		transition-duration: 0.01ms !important;
	}
}
