/* ==========================================================================
   IVOO Deluxe — Portada (réplica de maqueta_nueva/IVOO Inicio.dc.html)
   Solo se carga en la portada; Flatsome está apagado ahí.
   ========================================================================== */

html, body.ivoo-home {
	margin: 0;
	padding: 0;
	background: #0F0E0B;
}

body.ivoo-home {
	color: #F4EFE4;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 1.5;
}

.ivoo-home *,
.ivoo-home *::before,
.ivoo-home *::after { box-sizing: border-box; }

.ivoo-home ::selection { background: #F5D30F; color: #0F0E0B; }

.ivoo-home img { max-width: 100%; }

/* ---- Announcement bar ---- */
.ivoo-announce {
	background: #F5D30F;
	color: #0F0E0B;
	text-align: center;
	padding: 9px 20px;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

/* ---- Header ---- */
.ivoo-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	padding: 14px 48px;
	border-bottom: 1px solid rgba(212, 175, 55, 0.18);
	background: #0F0E0B;
	position: sticky;
	top: 0;
	z-index: 50;
}

.ivoo-header__logo { height: 58px; width: auto; mix-blend-mode: lighten; display: block; }

.ivoo-nav {
	display: flex;
	gap: 36px;
	align-items: center;
	font-size: 14px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 400;
}

.ivoo-nav a { color: #F4EFE4; text-decoration: none; transition: color .15s; }
.ivoo-nav a:hover, .ivoo-nav a:focus { color: #F5D30F; }
.ivoo-nav a.is-active { color: #F5D30F; }

.ivoo-header__side { display: flex; align-items: center; gap: 24px; }

.ivoo-header__login {
	color: #A79E8C;
	text-decoration: none;
	font-size: 14px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.ivoo-header__login:hover { color: #F4EFE4; }

.ivoo-cart {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 1px solid rgba(212, 175, 55, 0.35);
	padding: 8px 16px;
	font-size: 13px;
	letter-spacing: 0.1em;
	color: #F4EFE4;
	text-decoration: none;
}
.ivoo-cart:hover { border-color: #F5D30F; color: #F4EFE4; }
.ivoo-cart__diamond { color: #F5D30F; }
.ivoo-cart__count {
	background: #F5D30F;
	color: #0F0E0B;
	font-weight: 600;
	min-width: 20px;
	height: 20px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	padding: 0 6px;
}

/* ---- Hero: galería ---- */
.ivoo-hero {
	position: relative;
	overflow: hidden;
	background: #0F0E0B;
	border-bottom: 1px solid rgba(212, 175, 55, 0.18);
}

.ivoo-hero__inner {
	max-width: 1360px;
	margin: 0 auto;
	padding: 80px 48px 96px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: center;
}

.ivoo-hero__stats {
	display: flex;
	gap: 40px;
	margin-top: 52px;
	padding-top: 28px;
	border-top: 1px solid rgba(212, 175, 55, 0.2);
}

.ivoo-stat { display: flex; flex-direction: column; gap: 4px; }

.ivoo-stat__num { font-family: 'Marcellus', serif; font-size: 26px; color: #F5D30F; }

.ivoo-stat__label {
	font-size: 12px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #A79E8C;
}

.ivoo-hero__collage { position: relative; height: 560px; }

.ivoo-hero__photo {
	position: absolute;
	border: 1px solid rgba(212, 175, 55, 0.6);
	padding: 10px;
	background: #14120D;
}

.ivoo-hero__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ivoo-hero__photo--main { top: 0; right: 0; width: 62%; height: 74%; }

.ivoo-hero__photo--offers {
	bottom: 0;
	left: 0;
	width: 52%;
	height: 58%;
	box-shadow: 24px -24px 60px rgba(0, 0, 0, 0.55);
}

.ivoo-hero__disc {
	position: absolute;
	top: 8%;
	left: 6%;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background: #F5D30F;
	color: #0F0E0B;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
}

.ivoo-kicker { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.ivoo-kicker__line { width: 40px; height: 1px; background: #F5D30F; }
.ivoo-kicker__text {
	font-size: 13px;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #F5D30F;
	font-weight: 500;
}

.ivoo-hero h1 {
	font-family: 'Marcellus', serif;
	font-size: 58px;
	line-height: 1.12;
	margin: 0 0 22px;
	font-weight: 400;
	text-wrap: pretty;
	color: #F4EFE4;
}

.ivoo-hero__text {
	font-size: 18px;
	line-height: 1.65;
	color: #CFC7B6;
	margin: 0 0 36px;
	max-width: 480px;
	text-wrap: pretty;
}

.ivoo-hero__actions { display: flex; gap: 16px; flex-wrap: wrap; }

.ivoo-btn {
	display: inline-block;
	background: #F5D30F;
	color: #0F0E0B;
	text-decoration: none;
	padding: 15px 34px;
	font-size: 14px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 600;
	border: 1px solid #F5D30F;
	transition: background .15s, color .15s, border-color .15s;
}
.ivoo-btn:hover { background: #FFE23D; border-color: #FFE23D; color: #0F0E0B; }

.ivoo-btn--ghost {
	background: transparent;
	border: 1px solid rgba(244, 239, 228, 0.4);
	color: #F4EFE4;
	font-weight: 400;
}
.ivoo-btn--ghost:hover { background: transparent; border-color: #F5D30F; color: #F5D30F; }

/* ---- Trust bar ---- */
.ivoo-trust {
	border-top: 1px solid rgba(212, 175, 55, 0.18);
	border-bottom: 1px solid rgba(212, 175, 55, 0.18);
	background: #14120D;
}

.ivoo-trust__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1px;
	background: rgba(212, 175, 55, 0.18);
}

.ivoo-trust__item {
	background: #14120D;
	padding: 28px 32px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ivoo-trust__title {
	color: #F5D30F;
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 500;
}

.ivoo-trust__desc { color: #A79E8C; font-size: 14px; line-height: 1.5; }

/* ---- Secciones ---- */
.ivoo-section { padding: 90px 48px 30px; max-width: 1360px; margin: 0 auto; }
.ivoo-section--products { padding: 80px 48px 90px; }

.ivoo-section__head { text-align: center; margin-bottom: 48px; }

.ivoo-section__kicker {
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: #F5D30F;
	font-weight: 500;
	margin-bottom: 14px;
}

.ivoo-section__title {
	font-family: 'Marcellus', serif;
	font-size: 38px;
	font-weight: 400;
	margin: 0;
	color: #F4EFE4;
}

/* ---- Categorías ---- */
.ivoo-cats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }

.ivoo-cat {
	text-decoration: none;
	color: #F4EFE4;
	display: block;
	border: 1px solid rgba(212, 175, 55, 0.18);
	transition: border-color .15s;
}
.ivoo-cat:hover { border-color: rgba(212, 175, 55, 0.6); color: #F4EFE4; }

.ivoo-cat__img { width: 100%; aspect-ratio: 3 / 3.6; object-fit: cover; display: block; }

.ivoo-cat__bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 20px;
	border-top: 1px solid rgba(212, 175, 55, 0.18);
}

.ivoo-cat__name { font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; }
.ivoo-cat__cta { color: #F5D30F; font-size: 13px; letter-spacing: 0.1em; }

/* ---- Productos ---- */
.ivoo-products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }

.ivoo-product {
	background: #161410;
	border: 1px solid rgba(212, 175, 55, 0.16);
	display: flex;
	flex-direction: column;
	transition: border-color .15s;
}
.ivoo-product:hover { border-color: rgba(212, 175, 55, 0.5); }

.ivoo-product__media {
	position: relative;
	background: #FBF9F4;
	padding: 18px;
	display: block;
}

.ivoo-product__media img {
	width: 100%;
	aspect-ratio: 1 / 0.92;
	object-fit: contain;
	display: block;
}

.ivoo-product__badge {
	position: absolute;
	top: 12px;
	left: 12px;
	background: #0F0E0B;
	color: #F5D30F;
	font-size: 11px;
	letter-spacing: 0.12em;
	font-weight: 600;
	padding: 5px 10px;
}

.ivoo-product__body {
	padding: 20px 20px 22px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.ivoo-product__brand {
	font-size: 11px;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: #A79E8C;
}

.ivoo-product__name { font-family: 'Marcellus', serif; font-size: 19px; line-height: 1.3; flex: 1; }
.ivoo-product__name a { color: #F4EFE4; text-decoration: none; }
.ivoo-product__name a:hover { color: #F5D30F; }

.ivoo-product__detail { font-size: 13px; color: #A79E8C; }

.ivoo-product__price {
	display: flex;
	align-items: baseline;
	gap: 12px;
	margin-top: 2px;
	flex-wrap: wrap;
	color: #F5D30F;
	font-size: 19px;
	font-weight: 500;
}

.ivoo-product__price del {
	color: #6E675A;
	font-size: 14px;
	white-space: nowrap;
	font-weight: 300;
}
.ivoo-product__price del .woocommerce-Price-amount { color: #6E675A; }

.ivoo-product__price ins { text-decoration: none; white-space: nowrap; color: #F5D30F; }

/* Texto solo para lectores de pantalla (lo ocultaba Flatsome, aquí está apagado) */
.ivoo-home .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

.ivoo-product__add,
a.ivoo-product__add {
	margin-top: 8px;
	background: transparent;
	border: 1px solid rgba(212, 175, 55, 0.45);
	color: #F4EFE4;
	padding: 12px 10px;
	font-family: 'Jost', sans-serif;
	font-size: 13px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	cursor: pointer;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	display: block;
	transition: background .15s, color .15s, border-color .15s;
}

.ivoo-product__add:hover { background: #F5D30F; color: #0F0E0B; border-color: #F5D30F; }
.ivoo-product__add.loading { opacity: .6; pointer-events: none; }
.ivoo-product__add.added::after { content: ' ✓'; }

/* ---- Tienda: cabecera de página ---- */
.ivoo-shophead { max-width: 1360px; margin: 0 auto; padding: 56px 48px 0; }

.ivoo-crumbs {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #A79E8C;
	margin-bottom: 18px;
}
.ivoo-crumbs a { color: #A79E8C; text-decoration: none; }
.ivoo-crumbs a:hover { color: #F5D30F; }
.ivoo-crumbs__sep { color: #6E675A; }
.ivoo-crumbs__here { color: #F5D30F; }

.ivoo-shophead__bar {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
	border-bottom: 1px solid rgba(212, 175, 55, 0.2);
	padding-bottom: 26px;
}

.ivoo-shophead h1 {
	font-family: 'Marcellus', serif;
	font-size: 44px;
	font-weight: 400;
	margin: 0 0 8px;
	color: #F4EFE4;
}

.ivoo-shophead__meta { font-size: 14px; color: #A79E8C; }

.ivoo-pills { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }

.ivoo-pill {
	display: inline-block;
	background: transparent;
	color: #F4EFE4;
	border: 1px solid rgba(212, 175, 55, 0.4);
	padding: 10px 20px;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 500;
	text-decoration: none;
	transition: border-color .15s, color .15s, background .15s;
}
.ivoo-pill:hover { border-color: #F5D30F; color: #F5D30F; }
.ivoo-pill.is-active { background: #F5D30F; color: #0F0E0B; border-color: #F5D30F; }

/* ---- Tienda: grid y paginación ---- */
.ivoo-shopgrid { max-width: 1360px; margin: 0 auto; padding: 44px 48px 30px; }

.ivoo-shopgrid__empty { color: #A79E8C; font-size: 16px; padding: 40px 0 60px; }
.ivoo-shopgrid__empty a { color: #F5D30F; text-decoration: none; }

.ivoo-pagination {
	max-width: 1360px;
	margin: 0 auto;
	padding: 10px 48px 90px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.ivoo-pagination .page-numbers {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	border: 1px solid rgba(212, 175, 55, 0.3);
	color: #F4EFE4;
	background: transparent;
	transition: border-color .15s, color .15s;
}
.ivoo-pagination a.page-numbers:hover { border-color: #F5D30F; color: #F5D30F; }
.ivoo-pagination .page-numbers.current { background: #F5D30F; color: #0F0E0B; border-color: #F5D30F; }
.ivoo-pagination .page-numbers.dots { border-color: transparent; color: #6E675A; }

/* ---- Ficha de producto ---- */
.ivoo-pdp { max-width: 1360px; margin: 0 auto; padding: 48px 48px 80px; }
.ivoo-pdp .ivoo-crumbs { margin-bottom: 34px; }

.ivoo-pdp__grid {
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 72px;
	align-items: start;
}

.ivoo-pdp__gallery { position: sticky; top: 110px; }

.ivoo-pdp__frame {
	position: relative;
	background: #FBF9F4;
	border: 1px solid rgba(212, 175, 55, 0.25);
	padding: 44px;
}

.ivoo-pdp__frame img {
	width: 100%;
	aspect-ratio: 1 / 0.9;
	object-fit: contain;
	display: block;
}

.ivoo-pdp__badge {
	position: absolute;
	top: 18px;
	left: 18px;
	background: #0F0E0B;
	color: #F5D30F;
	font-size: 12px;
	letter-spacing: 0.14em;
	font-weight: 600;
	padding: 7px 14px;
}

.ivoo-pdp__caption {
	display: flex;
	gap: 10px;
	margin-top: 14px;
	justify-content: center;
	font-size: 12px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #6E675A;
}
.ivoo-pdp__caption span { color: #F5D30F; }

.ivoo-pdp__kicker {
	font-size: 12px;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #F5D30F;
	font-weight: 500;
	margin-bottom: 14px;
}

.ivoo-pdp__info h1 {
	font-family: 'Marcellus', serif;
	font-size: 40px;
	line-height: 1.18;
	font-weight: 400;
	margin: 0 0 18px;
	text-wrap: pretty;
	color: #F4EFE4;
}

.ivoo-pdp__price {
	display: flex;
	align-items: baseline;
	gap: 16px;
	margin-bottom: 26px;
	flex-wrap: wrap;
}

.ivoo-pdp__price del { color: #6E675A; font-size: 19px; }
.ivoo-pdp__price del .woocommerce-Price-amount { color: #6E675A; }

.ivoo-pdp__price-now,
.ivoo-pdp__price-now .woocommerce-Price-amount {
	color: #F5D30F;
	font-size: 34px;
	font-family: 'Marcellus', serif;
}
.ivoo-pdp__price-now del, .ivoo-pdp__price-now del .woocommerce-Price-amount { color: #6E675A; font-size: 19px; font-family: 'Jost', sans-serif; }
.ivoo-pdp__price-now ins { text-decoration: none; }

.ivoo-pdp__save {
	border: 1px solid rgba(212, 175, 55, 0.45);
	color: #CBB86A;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	padding: 5px 12px;
}
.ivoo-pdp__save .woocommerce-Price-amount { color: #CBB86A; }

.ivoo-pdp__desc {
	font-size: 16px;
	line-height: 1.75;
	color: #CFC7B6;
	margin: 0 0 30px;
	text-wrap: pretty;
}

/* Pirámide olfativa */
.ivoo-notes {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	background: rgba(212, 175, 55, 0.22);
	border: 1px solid rgba(212, 175, 55, 0.22);
	margin-bottom: 30px;
}

.ivoo-notes__cell {
	background: #14120D;
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ivoo-notes__label {
	font-size: 11px;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #F5D30F;
}

.ivoo-notes__value { font-size: 14px; color: #CFC7B6; line-height: 1.5; }

/* Cantidad + comprar */
.ivoo-pdp__buy { display: flex; gap: 14px; align-items: stretch; margin-bottom: 18px; }

.ivoo-qty { display: flex; align-items: center; border: 1px solid rgba(212, 175, 55, 0.4); }

.ivoo-qty__btn {
	background: transparent;
	border: none;
	color: #F4EFE4;
	width: 44px;
	height: 52px;
	font-size: 18px;
	cursor: pointer;
	font-family: 'Jost', sans-serif;
}
.ivoo-qty__btn:hover { color: #F5D30F; }

.ivoo-qty__val { min-width: 40px; text-align: center; font-size: 16px; font-weight: 500; }

.ivoo-pdp__add,
a.ivoo-pdp__add {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F5D30F;
	color: #0F0E0B;
	border: none;
	padding: 0 34px;
	font-family: 'Jost', sans-serif;
	font-size: 14px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: background .15s;
}
.ivoo-pdp__add:hover { background: #FFE23D; color: #0F0E0B; }
.ivoo-pdp__add.loading { opacity: .6; pointer-events: none; }
.ivoo-pdp__add.added::after { content: ' ✓'; }

/* Link "Ver carrito" que WooCommerce añade tras el add-to-cart AJAX */
.ivoo-home a.added_to_cart {
	display: inline-flex;
	align-items: center;
	align-self: center;
	color: #F5D30F;
	text-decoration: none;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 500;
	white-space: nowrap;
	border-bottom: 1px solid rgba(212, 175, 55, 0.5);
	padding-bottom: 2px;
	transition: border-color .15s;
}
.ivoo-home a.added_to_cart:hover { border-color: #F5D30F; }
.ivoo-home a.added_to_cart::after { content: ' →'; }

/* En la tarjeta de producto: centrado bajo el botón */
.ivoo-product__body a.added_to_cart { align-self: center; margin-top: 10px; }

.ivoo-pdp__wa,
a.ivoo-pdp__wa {
	display: block;
	text-align: center;
	border: 1px solid rgba(212, 175, 55, 0.4);
	color: #F4EFE4;
	text-decoration: none;
	padding: 15px 34px;
	font-size: 14px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	margin-bottom: 30px;
	transition: border-color .15s, color .15s;
}
.ivoo-pdp__wa:hover { border-color: #F5D30F; color: #F5D30F; }

.ivoo-pdp__stock { color: #CBB86A; font-size: 15px; margin: 0 0 18px; }

.ivoo-pdp__trust {
	display: flex;
	flex-direction: column;
	gap: 12px;
	font-size: 14px;
	color: #A79E8C;
	border-top: 1px solid rgba(212, 175, 55, 0.2);
	padding-top: 22px;
}

.ivoo-pdp__trust-row { display: flex; gap: 12px; align-items: baseline; }
.ivoo-pdp__trust-row > span:first-child { color: #F5D30F; }
.ivoo-pdp__trust-row strong { color: #F4EFE4; font-weight: 400; }

/* Relacionados */
.ivoo-related {
	border-top: 1px solid rgba(212, 175, 55, 0.18);
	background: #14120D;
	padding: 70px 48px 90px;
}

.ivoo-related__inner { max-width: 1360px; margin: 0 auto; }

.ivoo-related__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 40px;
	flex-wrap: wrap;
}

.ivoo-related__head h2 {
	font-family: 'Marcellus', serif;
	font-size: 32px;
	font-weight: 400;
	margin: 0;
	color: #F4EFE4;
}

.ivoo-related__head a {
	color: #F5D30F;
	text-decoration: none;
	font-size: 13px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

/* ---- Carrito: pasos ---- */
.ivoo-steps { max-width: 1360px; width: 100%; margin: 0 auto; padding: 52px 48px 0; }

.ivoo-steps__row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.ivoo-step { display: flex; align-items: center; gap: 12px; opacity: 0.45; text-decoration: none; color: #F4EFE4; }
.ivoo-step.is-current { opacity: 1; }
a.ivoo-step:hover { opacity: 0.8; }

.ivoo-step__num {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 1px solid rgba(212, 175, 55, 0.5);
	color: #CBB86A;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
}
.ivoo-step.is-current .ivoo-step__num {
	background: #F5D30F;
	border-color: #F5D30F;
	color: #0F0E0B;
	font-weight: 600;
}

.ivoo-step__label { font-family: 'Marcellus', serif; font-size: 21px; }

.ivoo-steps__line { width: 70px; height: 1px; background: rgba(212, 175, 55, 0.35); }

/* ---- Carrito: layout ---- */
.ivoo-cartpage { max-width: 1360px; width: 100%; margin: 0 auto; padding: 48px 48px 90px; }

.ivoo-cartpage__cols {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: 48px;
	align-items: start;
}
.ivoo-cartpage.is-empty .ivoo-cartpage__cols { grid-template-columns: 1fr; }

.ivoo-cartitems__head {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #A79E8C;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(212, 175, 55, 0.25);
}

.ivoo-cartitem {
	display: grid;
	grid-template-columns: 110px 1fr auto;
	gap: 24px;
	padding: 26px 0;
	border-bottom: 1px solid rgba(212, 175, 55, 0.14);
	align-items: center;
}

.ivoo-cartitem__thumb {
	background: #FBF9F4;
	padding: 8px;
	border: 1px solid rgba(212, 175, 55, 0.2);
	display: block;
}
.ivoo-cartitem__thumb img { width: 100%; aspect-ratio: 1; object-fit: contain; display: block; }

.ivoo-cartitem__info { display: flex; flex-direction: column; gap: 8px; }

.ivoo-cartitem__name {
	font-family: 'Marcellus', serif;
	font-size: 19px;
	line-height: 1.3;
	text-wrap: pretty;
	color: #F4EFE4;
	text-decoration: none;
}
.ivoo-cartitem__name:hover { color: #F5D30F; }

.ivoo-cartitem__prices { display: flex; align-items: baseline; gap: 10px; }
.ivoo-cartitem__prices del,
.ivoo-cartitem__prices del .woocommerce-Price-amount { color: #6E675A; font-size: 13px; }
.ivoo-cartitem__price, .ivoo-cartitem__price .woocommerce-Price-amount { color: #F5D30F; font-size: 16px; font-weight: 500; }

.ivoo-cartitem__controls { display: flex; align-items: center; gap: 16px; margin-top: 4px; }

.ivoo-qty--sm .ivoo-qty__btn { width: 36px; height: 38px; font-size: 16px; }
.ivoo-qty--sm .ivoo-qty__val { min-width: 32px; font-size: 14px; }

.ivoo-cartitem__remove {
	color: #6E675A;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-decoration: none;
	transition: color .15s;
}
.ivoo-cartitem__remove:hover { color: #E06A5A; }

.ivoo-cartitem__line { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.ivoo-cartitem__total, .ivoo-cartitem__total .woocommerce-Price-amount { font-size: 18px; color: #F4EFE4; font-weight: 500; white-space: nowrap; }
.ivoo-cartitem__save {
	background: rgba(212, 175, 55, 0.12);
	color: #CBB86A;
	font-size: 12px;
	padding: 4px 10px;
	white-space: nowrap;
}
.ivoo-cartitem__save .woocommerce-Price-amount { color: #CBB86A; }

.ivoo-cartitems__empty { padding: 60px 0; text-align: center; color: #A79E8C; font-size: 16px; }
.ivoo-cartitems__empty a { color: #F5D30F; text-decoration: none; }

.ivoo-cartitems__back {
	display: inline-block;
	margin-top: 26px;
	color: #F5D30F;
	text-decoration: none;
	font-size: 13px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

/* ---- Carrito: resumen ---- */
.ivoo-cartsum {
	background: #14120D;
	border: 1px solid rgba(212, 175, 55, 0.25);
	padding: 32px;
	position: sticky;
	top: 110px;
}

.ivoo-cartsum h2 {
	font-family: 'Marcellus', serif;
	font-size: 24px;
	font-weight: 400;
	margin: 0 0 24px;
	color: #F4EFE4;
}

.ivoo-cartsum__coupon { display: flex; gap: 10px; margin-bottom: 24px; }

.ivoo-cartsum__coupon input {
	flex: 1;
	min-width: 0;
	background: #0F0E0B;
	border: 1px solid rgba(212, 175, 55, 0.3);
	color: #F4EFE4;
	padding: 12px 14px;
	font-family: 'Jost', sans-serif;
	font-size: 14px;
	outline: none;
}
.ivoo-cartsum__coupon input::placeholder { color: #6E675A; }
.ivoo-cartsum__coupon input:focus { border-color: rgba(212, 175, 55, 0.6); }

.ivoo-cartsum__coupon button {
	background: transparent;
	border: 1px solid rgba(212, 175, 55, 0.45);
	color: #F5D30F;
	padding: 12px 18px;
	font-family: 'Jost', sans-serif;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background .15s, color .15s;
}
.ivoo-cartsum__coupon button:hover { background: #F5D30F; color: #0F0E0B; }

.ivoo-cartsum__rows {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(212, 175, 55, 0.2);
	font-size: 15px;
}

.ivoo-cartsum__row { display: flex; justify-content: space-between; color: #A79E8C; gap: 12px; }
.ivoo-cartsum__row .woocommerce-Price-amount { color: inherit; }
.ivoo-cartsum__list { text-decoration: line-through; }
.ivoo-cartsum__row--save { color: #CBB86A; }

.ivoo-cartsum__total {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 22px 0;
	gap: 12px;
}
.ivoo-cartsum__total > span:first-child { font-family: 'Marcellus', serif; font-size: 22px; }
.ivoo-cartsum__amount, .ivoo-cartsum__amount .woocommerce-Price-amount {
	font-family: 'Marcellus', serif;
	font-size: 30px;
	color: #F5D30F;
}

.ivoo-cartsum__checkout,
a.ivoo-cartsum__checkout {
	display: block;
	width: 100%;
	text-align: center;
	background: #F5D30F;
	color: #0F0E0B;
	border: none;
	padding: 17px 10px;
	font-size: 14px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: background .15s;
}
.ivoo-cartsum__checkout:hover { background: #FFE23D; color: #0F0E0B; }

.ivoo-cartsum__wa,
a.ivoo-cartsum__wa {
	display: block;
	text-align: center;
	margin-top: 14px;
	border: 1px solid rgba(212, 175, 55, 0.4);
	color: #F4EFE4;
	text-decoration: none;
	padding: 14px 10px;
	font-size: 13px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	transition: border-color .15s, color .15s;
}
.ivoo-cartsum__wa:hover { border-color: #F5D30F; color: #F5D30F; }

.ivoo-cartsum__trust { display: flex; flex-direction: column; gap: 10px; font-size: 13px; color: #A79E8C; margin-top: 24px; }
.ivoo-cartsum__trust > div { display: flex; gap: 10px; align-items: baseline; }
.ivoo-cartsum__trust span:first-child { color: #F5D30F; }

/* ---- Notices de WooCommerce (cupones, avisos) ---- */
.ivoo-notices { max-width: 1360px; margin: 0 auto; padding: 24px 48px 0; }
.ivoo-notices:empty { display: none; }
.ivoo-notices .woocommerce-message,
.ivoo-notices .woocommerce-info,
.ivoo-notices .woocommerce-error,
.ivoo-notices .woocommerce-error li {
	list-style: none;
	margin: 0 0 10px;
	padding: 14px 18px;
	background: #14120D;
	border: 1px solid rgba(212, 175, 55, 0.35);
	color: #CFC7B6;
	font-size: 14px;
}
.ivoo-notices .woocommerce-error,
.ivoo-notices ul.woocommerce-error { padding: 0; border: none; background: transparent; }
.ivoo-notices .woocommerce-error li { border-color: rgba(224, 106, 90, 0.55); color: #E8B0A6; }
.ivoo-notices a { color: #F5D30F; }

/* WooCommerce moderno imprime avisos como "notice banners" de wc-blocks */
.ivoo-home .wc-block-components-notice-banner,
.ivoo-home .wc-block-components-notice-banner.is-error,
.ivoo-home .wc-block-components-notice-banner.is-info,
.ivoo-home .wc-block-components-notice-banner.is-success {
	background: #14120D;
	border: 1px solid rgba(212, 175, 55, 0.35);
	color: #CFC7B6;
	box-shadow: none;
}
.ivoo-home .wc-block-components-notice-banner.is-error { border-color: rgba(224, 106, 90, 0.55); color: #E8B0A6; }
.ivoo-home .wc-block-components-notice-banner svg { fill: #F5D30F; }
.ivoo-home .wc-block-components-notice-banner.is-error svg { fill: #E06A5A; }
.ivoo-home .wc-block-components-notice-banner a { color: #F5D30F; }

/* WC enfoca el aviso al mostrarlo; sin esto el navegador pinta un anillo azul */
.ivoo-notices [role="alert"]:focus,
.ivoo-notices .wc-block-components-notice-banner:focus,
.ivoo-notices .woocommerce-error:focus,
.ivoo-notices .woocommerce-message:focus,
.ivoo-notices .woocommerce-info:focus {
	outline: 2px solid rgba(212, 175, 55, 0.45);
	outline-offset: 2px;
	box-shadow: none;
}

/* ---- Footer slim (carrito) ---- */
.ivoo-footer--slim { padding: 34px 48px; }
.ivoo-footer__bottom--slim { margin: 0 auto; padding-top: 0; border-top: none; }

/* ---- Marcas ---- */
.ivoo-brands {
	border-top: 1px solid rgba(212, 175, 55, 0.18);
	border-bottom: 1px solid rgba(212, 175, 55, 0.18);
	background: #14120D;
	padding: 54px 48px;
}

.ivoo-brands__kicker {
	text-align: center;
	font-size: 12px;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: #A79E8C;
	margin-bottom: 28px;
}

.ivoo-brands__list {
	display: flex;
	justify-content: center;
	align-items: baseline;
	gap: 56px;
	flex-wrap: wrap;
	font-family: 'Marcellus', serif;
	font-size: 24px;
	color: #CBB86A;
}

/* ---- Contacto ---- */
.ivoo-contact {
	max-width: 1360px;
	margin: 0 auto;
	padding: 90px 48px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: center;
}

.ivoo-contact h2 {
	font-family: 'Marcellus', serif;
	font-size: 38px;
	font-weight: 400;
	margin: 0 0 20px;
	text-wrap: pretty;
	color: #F4EFE4;
}

.ivoo-contact__text {
	font-size: 17px;
	line-height: 1.7;
	color: #CFC7B6;
	margin: 0 0 30px;
	max-width: 460px;
	text-wrap: pretty;
}

.ivoo-contact__rows { display: flex; flex-direction: column; gap: 14px; font-size: 16px; color: #F4EFE4; }
.ivoo-contact__row { display: flex; gap: 12px; align-items: baseline; }
.ivoo-contact__row span:first-child { color: #F5D30F; }

.ivoo-contact .ivoo-btn { margin-top: 34px; }

.ivoo-contact__frame { border: 1px solid rgba(212, 175, 55, 0.25); padding: 12px; }
.ivoo-contact__frame img { width: 100%; aspect-ratio: 4 / 4.2; object-fit: cover; display: block; }

/* ---- Footer ---- */
.ivoo-footer {
	background: #0B0A08;
	border-top: 1px solid rgba(212, 175, 55, 0.18);
	padding: 56px 48px 28px;
}

.ivoo-footer__grid {
	max-width: 1360px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr;
	gap: 48px;
	align-items: start;
}

.ivoo-footer__logo {
	height: 72px;
	width: auto;
	mix-blend-mode: lighten;
	display: block;
	margin: 0 0 16px -10px;
}

.ivoo-footer__about { color: #A79E8C; font-size: 14px; line-height: 1.7; margin: 0; max-width: 320px; }

.ivoo-footer__col { display: flex; flex-direction: column; gap: 12px; font-size: 14px; }

.ivoo-footer__head {
	font-size: 12px;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: #F5D30F;
	margin-bottom: 6px;
}

.ivoo-footer__col a { color: #CFC7B6; text-decoration: none; }
.ivoo-footer__col a:hover { color: #F5D30F; }
.ivoo-footer__col span { color: #CFC7B6; }

.ivoo-footer__social { display: flex; gap: 18px; margin-top: 6px; }
.ivoo-footer__social a {
	color: #F5D30F;
	text-decoration: none;
	letter-spacing: 0.1em;
	font-size: 13px;
	text-transform: uppercase;
}

.ivoo-footer__bottom {
	max-width: 1360px;
	margin: 40px auto 0;
	padding-top: 20px;
	border-top: 1px solid rgba(212, 175, 55, 0.12);
	color: #6E675A;
	font-size: 13px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
}

/* ---- WhatsApp flotante ---- */
.ivoo-wa {
	position: fixed;
	right: 28px;
	bottom: 28px;
	background: #1FAF54;
	color: #FFFFFF;
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 13px 22px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
	z-index: 60;
	transition: background .15s;
}
.ivoo-wa:hover { background: #23C25F; color: #FFFFFF; }
.ivoo-wa__dot { width: 9px; height: 9px; border-radius: 50%; background: #FFFFFF; display: inline-block; }

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1100px) {
	.ivoo-products { grid-template-columns: repeat(3, 1fr); }
	.ivoo-trust__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
	.ivoo-header { padding: 14px 24px; flex-wrap: wrap; }
	.ivoo-nav { gap: 20px; order: 3; width: 100%; justify-content: center; padding-top: 10px; }
	.ivoo-hero__inner { grid-template-columns: 1fr; gap: 48px; padding: 56px 24px 72px; }
	.ivoo-pdp { padding: 40px 24px 60px; }
	.ivoo-steps { padding: 40px 24px 0; }
	.ivoo-steps__line { width: 28px; }
	.ivoo-step__label { font-size: 16px; }
	.ivoo-cartpage { padding: 36px 24px 60px; }
	.ivoo-cartpage__cols { grid-template-columns: 1fr; gap: 36px; }
	.ivoo-cartsum { position: static; }
	.ivoo-cartitem { grid-template-columns: 84px 1fr; }
	.ivoo-cartitem__line { grid-column: 2; flex-direction: row; align-items: center; gap: 12px; justify-content: flex-start; }
	.ivoo-notices { padding: 20px 24px 0; }
	.ivoo-pdp__grid { grid-template-columns: 1fr; gap: 40px; }
	.ivoo-pdp__gallery { position: static; }
	.ivoo-pdp__info h1 { font-size: 32px; }
	.ivoo-notes { grid-template-columns: 1fr; }
	.ivoo-related { padding: 56px 24px 70px; }
	.ivoo-hero__collage { height: 440px; max-width: 520px; }
	.ivoo-hero h1 { font-size: 44px; }
	.ivoo-section, .ivoo-section--products { padding-left: 24px; padding-right: 24px; }
	.ivoo-cats { grid-template-columns: 1fr 1fr; }
	.ivoo-products { grid-template-columns: repeat(2, 1fr); }
	.ivoo-contact { grid-template-columns: 1fr; padding: 70px 24px; gap: 40px; }
	.ivoo-footer { padding: 48px 24px 24px; }
	.ivoo-footer__grid { grid-template-columns: 1fr; gap: 36px; }
	.ivoo-brands__list { gap: 32px; font-size: 20px; }
}

@media (max-width: 560px) {
	.ivoo-header__side { gap: 14px; }
	.ivoo-header__login { display: none; }
	.ivoo-hero h1 { font-size: 36px; }
	.ivoo-hero__text { font-size: 16px; }
	.ivoo-hero__collage { height: 360px; }
	.ivoo-hero__stats { gap: 24px; flex-wrap: wrap; }
	.ivoo-cats { grid-template-columns: 1fr; }
	.ivoo-products { grid-template-columns: 1fr; }
	.ivoo-trust__grid { grid-template-columns: 1fr; }
	.ivoo-section__title { font-size: 30px; }
	.ivoo-contact h2 { font-size: 30px; }
	.ivoo-announce { font-size: 11px; }
}
