/* ELEVANNIA · Tienda · v1.0.0
   Encabezado «Selva Nocturna» sobre la página clara de la tienda («Selva de Día» del Motor),
   tarjetas distintas por línea y ficha de producto. Selectores con body.elv-tienda para ganar
   a assets/tienda.css del Motor sin !important. */

body.elv-tienda {
	--th-noche: #071410; --th-noche2: #0B1F18; --th-panel: #10281F; --th-linea: #1F4435;
	--th-crema: #F6F3EA; --th-bruma: #A9C0B5; --th-esm: #0E6B4E; --th-esml: #3FA07F;
	--th-oro: #C9A227; --th-oroh: #E0BC4C; --th-borde-claro: #E4DED0;
	--th-ease: cubic-bezier(.22, .61, .36, 1);
}

/* ---------- Encabezado de la tienda ---------- */
.elv-th {
	position: relative; overflow: hidden; isolation: isolate;
	margin: 8px 0 36px; padding: clamp(36px, 6vw, 72px) clamp(24px, 5vw, 64px);
	border-radius: 26px 26px 120px 26px;
	background: radial-gradient(120% 120% at 88% 10%, #14482F 0%, var(--th-noche2) 45%, var(--th-noche) 100%);
	color: var(--th-crema);
}
.elv-th::before, .elv-th::after { content: ""; position: absolute; border-radius: 50%; pointer-events: none; z-index: -1; }
.elv-th::before { right: -140px; top: -120px; width: 460px; height: 460px; border: 1px solid var(--th-linea); }
.elv-th::after { right: -70px; top: -60px; width: 330px; height: 330px; border: 1px solid var(--th-oro); opacity: .35; }
.elv-th__ceja {
	display: flex; align-items: center; gap: 12px; margin: 0 0 14px;
	font: 700 .78rem/1.2 'Karla', system-ui, sans-serif; letter-spacing: .24em; text-transform: uppercase; color: var(--th-oroh);
}
.elv-th__ceja::before { content: ""; width: 28px; height: 1px; background: var(--th-oro); }
body.elv-tienda .elv-th__titulo {
	margin: 0; max-width: 16ch; color: var(--th-crema);
	font: 400 clamp(2.2rem, 1.2rem + 3.6vw, 4rem)/1.05 'Fraunces', Georgia, serif; letter-spacing: -.02em; text-wrap: balance;
}
.elv-th__titulo em { font-style: italic; color: var(--th-oroh); }
.elv-th__texto { margin: 16px 0 0; max-width: 52ch; color: var(--th-bruma); font: 400 1.08rem/1.6 'Karla', system-ui, sans-serif; }
.elv-th__lineas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
body.elv-tienda .elv-th__linea {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border-radius: 999px;
	border: 1px solid var(--th-linea); color: var(--th-crema); text-decoration: none;
	font: 700 .95rem/1 'Karla', system-ui, sans-serif;
	transition: border-color 250ms var(--th-ease), background-color 250ms var(--th-ease), color 250ms var(--th-ease);
}
body.elv-tienda .elv-th__linea:hover { border-color: var(--th-oroh); color: var(--th-oroh); }
body.elv-tienda .elv-th__linea.is-activa { background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)); border-color: transparent; color: var(--th-noche); }
body.elv-tienda .elv-th__linea:focus-visible { outline: 3px solid var(--th-oroh); outline-offset: 3px; }

/* ---------- Tarjetas ---------- */
body.elv-tienda .wc-block-product-template { gap: 28px; }
body.elv-tienda .wc-block-product-template li.wc-block-product {
	position: relative; display: flex; flex-direction: column; padding: 0 0 24px; text-align: center;
	transition: transform 250ms var(--th-ease), box-shadow 250ms var(--th-ease);
}
body.elv-tienda .wc-block-product-template li.wc-block-product:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(7, 20, 16, .14); }
body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-image { margin: 0 0 18px; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-image img {
	display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover;
}
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-post-title { margin: 0 18px 8px; font-size: 1.15rem; line-height: 1.25; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-post-title::before {
	display: block; margin-bottom: 6px;
	font: 700 .68rem/1.2 'Karla', system-ui, sans-serif; letter-spacing: .2em; text-transform: uppercase;
}
body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-price { margin: 0 18px 16px; font-size: 1rem; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button { margin-top: auto; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button__link {
	min-height: 44px; padding: 0 22px; border-radius: 999px; font: 700 .9rem/1 'Karla', system-ui, sans-serif;
	display: inline-flex; align-items: center; justify-content: center;
	transition: background-color 250ms var(--th-ease), color 250ms var(--th-ease), filter 250ms var(--th-ease);
}

/* Skin Care: clara, esmeralda, esquina orgánica abajo a la izquierda */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care {
	background: #FFFFFF; border: 1px solid var(--th-borde-claro); border-radius: 26px 26px 26px 72px;
}
body.elv-tienda .wc-block-product-template li.product_cat-skin-care .wp-block-post-title::before { content: "Skin Care"; color: var(--th-esm); }
body.elv-tienda .wc-block-product-template li.product_cat-skin-care .wp-block-post-title a { color: var(--th-noche); }
body.elv-tienda .wc-block-product-template li.product_cat-skin-care .wp-block-button__link {
	background: transparent; border: 1.5px solid var(--th-esm); color: var(--th-esm);
}
body.elv-tienda .wc-block-product-template li.product_cat-skin-care .wp-block-button__link:hover { background: var(--th-esm); color: #FFFFFF; }

/* Suplementos: Noche con dorado, esquina orgánica abajo a la derecha */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos {
	background: var(--th-noche2); border: 1px solid var(--th-linea); border-radius: 26px 26px 72px 26px; color: var(--th-crema);
}
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wp-block-post-title::before { content: "Suplemento alimenticio"; color: var(--th-oroh); }
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wp-block-post-title a { color: var(--th-crema); letter-spacing: .06em; }
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wc-block-components-product-price,
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wc-block-components-product-price * { color: var(--th-crema); }
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wc-block-components-product-price del,
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wc-block-components-product-price del * { color: var(--th-bruma); }
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wp-block-button__link {
	background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)); border: 0; color: var(--th-noche);
}
body.elv-tienda .wc-block-product-template li.product_cat-suplementos .wp-block-button__link:hover { filter: brightness(1.07); color: var(--th-noche); }
body.elv-tienda .wc-block-product-template li.product_cat-suplementos:hover { box-shadow: 0 18px 40px rgba(7, 20, 16, .3); }

/* Kit de Inicio: hilo dorado y etiqueta para Socios */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits {
	background: linear-gradient(180deg, var(--th-panel), var(--th-noche)); border: 1.5px solid var(--th-oro); border-radius: 26px; color: var(--th-crema);
}
body.elv-tienda .wc-block-product-template li.product_cat-kits .wp-block-post-title::before { content: "Para Socios Visionarios"; color: var(--th-oroh); }
body.elv-tienda .wc-block-product-template li.product_cat-kits .wp-block-post-title a,
body.elv-tienda .wc-block-product-template li.product_cat-kits .wc-block-components-product-price,
body.elv-tienda .wc-block-product-template li.product_cat-kits .wc-block-components-product-price * { color: var(--th-crema); }
body.elv-tienda .wc-block-product-template li.product_cat-kits .wp-block-button__link {
	background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)); border: 0; color: var(--th-noche);
}

body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button__link:focus-visible { outline: 3px solid var(--th-oroh); outline-offset: 3px; }

/* ---------- Ficha de producto ---------- */
body.elv-tienda.single-product .wc-block-components-product-image img,
body.elv-tienda.single-product .woocommerce-product-gallery img.elv-envase { border-radius: 26px; }
body.elv-tienda.single-product h1.wp-block-post-title::before {
	display: block; margin-bottom: 10px;
	font: 700 .78rem/1.2 'Karla', system-ui, sans-serif; letter-spacing: .22em; text-transform: uppercase;
}
body.elv-linea-skin h1.wp-block-post-title::before { content: "Skin Care · ELEVANNIA"; color: var(--th-esm); }
body.elv-linea-sup h1.wp-block-post-title::before { content: "Suplemento alimenticio · ELEVANNIA"; color: #8F7012; }
body.elv-linea-kit h1.wp-block-post-title::before { content: "Para Socios Visionarios"; color: #8F7012; }
.elv-leyenda-sanitaria {
	margin: 14px 0 0; padding: 12px 16px; border-left: 3px solid var(--th-oro); border-radius: 0 10px 10px 0;
	background: #FBF6E4; color: #4A3D0E; font: 400 .88rem/1.5 'Karla', system-ui, sans-serif;
}

@media (prefers-reduced-motion: reduce) {
	body.elv-tienda .wc-block-product-template li.wc-block-product,
	body.elv-tienda .wc-block-product-template li.wc-block-product:hover { transition: none; transform: none; }
}

/* Precio y botones sin subrayado */
body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-price ins,
body.elv-tienda.single-product .wc-block-components-product-price ins { text-decoration: none; font-weight: 600; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button__link { text-decoration: none; }

/* ---------- 1.0.1 · Rejilla más compacta ----------
   WooCommerce fija ancho por columna con su propio CSS de maquetación; aquí se usa una rejilla
   (4 columnas en escritorio, 2 en celular). Los !important solo pisan esa maquetación de WooCommerce. */
body.elv-tienda ul.wc-block-product-template {
	display: grid !important; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important; gap: 22px !important;
}
body.elv-tienda ul.wc-block-product-template > li.wc-block-product { width: auto !important; max-width: none !important; margin: 0 !important; }
body.elv-tienda .wc-block-product-template li.wc-block-product { padding-bottom: 18px; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-image { margin-bottom: 14px; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-post-title { margin: 0 14px 6px; font-size: 1.02rem; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-price { margin: 0 14px 12px; font-size: .9rem; }
body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button__link { min-height: 40px; padding: 0 18px; font-size: .85rem; }
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care { border-radius: 22px 22px 22px 56px; }
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos { border-radius: 22px 22px 56px 22px; }
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits { border-radius: 22px; }
@media (max-width: 600px) {
	body.elv-tienda ul.wc-block-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
	body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-post-title { margin: 0 10px 6px; font-size: .92rem; }
	body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-post-title::before { font-size: .6rem; letter-spacing: .14em; }
	body.elv-tienda .wc-block-product-template li.wc-block-product .wc-block-components-product-price { margin: 0 10px 10px; font-size: .8rem; }
	body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button__link { padding: 0 12px; font-size: .78rem; }
}

/* ---------- Botón dorado de Suplementos y Kit: el tema lo pisa en reposo y al pasar el cursor ---------- */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link:is(:hover, :focus, :active, .added, .loading),
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link:is(:hover, :focus, :active, .added, .loading) {
	background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)) !important;
	color: var(--th-noche) !important;
	border: 0 !important;
	-webkit-text-fill-color: var(--th-noche) !important;
}
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link:hover,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link:hover {
	filter: brightness(1.08);
}
/* Skin Care: al pasar el cursor, relleno esmeralda con texto blanco (también reforzado). */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care .wp-block-button .wp-block-button__link:hover {
	background: var(--th-esm) !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
}

/* ---------- Efecto al pasar el cursor (1.0.3): elevación, resplandor y destello ---------- */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care .wp-block-button .wp-block-button__link {
	position: relative; overflow: hidden; isolation: isolate;
	transition: transform 220ms var(--th-ease), box-shadow 220ms var(--th-ease), background 220ms var(--th-ease), color 220ms var(--th-ease) !important;
}
/* Destello diagonal que cruza el botón */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link::after,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link::after {
	content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 55%; z-index: -1; pointer-events: none;
	background: linear-gradient(105deg, transparent 0%, rgba(255, 255, 255, .55) 50%, transparent 100%);
	transform: translateX(-130%) skewX(-18deg);
}
/* Dorado: más luminoso, se eleva y brilla */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link:hover,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link:hover {
	background: linear-gradient(135deg, #F7DD7C, #E5BF3F) !important;
	filter: none;
	transform: translateY(-3px) scale(1.03);
	box-shadow: 0 0 0 3px rgba(224, 188, 76, .28), 0 10px 26px rgba(224, 188, 76, .5) !important;
}
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link:hover::after,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link:hover::after {
	transform: translateX(330%) skewX(-18deg);
	transition: transform 700ms var(--th-ease);
}
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wp-block-button .wp-block-button__link:active,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wp-block-button .wp-block-button__link:active {
	transform: translateY(0) scale(.99);
	box-shadow: 0 3px 10px rgba(224, 188, 76, .4) !important;
}
/* Skin Care: se eleva y se rellena de esmeralda con sombra suave */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care .wp-block-button .wp-block-button__link:hover {
	transform: translateY(-3px) scale(1.03);
	box-shadow: 0 10px 24px rgba(14, 107, 78, .35);
}
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care .wp-block-button .wp-block-button__link:active {
	transform: translateY(0) scale(.99);
}
@media (prefers-reduced-motion: reduce) {
	body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button .wp-block-button__link:hover,
	body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button .wp-block-button__link:active { transform: none !important; }
	body.elv-tienda .wc-block-product-template li.wc-block-product .wp-block-button .wp-block-button__link::after { display: none !important; }
}


/* ---------- 1.0.4 · "Ver carrito" legible en tarjetas oscuras (Suplementos y Kit) ---------- */
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos a.added_to_cart,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits a.added_to_cart,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wc-block-components-product-button__added,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos .wc-block-components-product-button a:not(.wp-block-button__link),
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits .wc-block-components-product-button a:not(.wp-block-button__link) {
	color: var(--th-oroh) !important; -webkit-text-fill-color: var(--th-oroh) !important; opacity: 1 !important;
	font: 700 .9rem/1.2 'Karla', system-ui, sans-serif; text-decoration: underline; text-underline-offset: 4px;
}
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-suplementos a.added_to_cart:hover,
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-kits a.added_to_cart:hover { color: var(--th-crema) !important; -webkit-text-fill-color: var(--th-crema) !important; }
body.elv-tienda .wc-block-product-template li.wc-block-product.product_cat-skin-care a.added_to_cart { color: var(--th-esm); font-weight: 700; }

/* ---------- 1.0.4 · Carrito vacío: rejilla "Te puede interesar" con el diseño de la tienda ---------- */
body.elv-tienda .wp-block-woocommerce-empty-cart-block li.wc-block-grid__product {
	display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0 0 22px;
	background: #FFFFFF; border: 1px solid var(--th-borde-claro); border-radius: 22px 22px 22px 56px; overflow: hidden;
}
body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image { width: 100%; margin: 0 0 14px; background: #F3F7F5; }
body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; }
body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title { margin: 0 14px 6px; font: 600 1rem/1.25 'Fraunces', Georgia, serif; color: var(--th-noche); text-decoration: none; }
body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price { margin: 0 14px 14px; color: var(--th-noche); font-weight: 700; }
body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product .wp-block-button__link {
	min-height: 44px; padding: 0 22px; border-radius: 999px; border: 0; font: 700 .9rem/1 'Karla', system-ui, sans-serif;
	background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)) !important; color: var(--th-noche) !important;
}
body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product .wp-block-button__link:hover { filter: brightness(1.07); }


/* ---------- 1.0.5 · Carrito vacío: ícono de marca, rejilla ordenada y botón a la tienda ---------- */
body.elv-tienda .wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::before {
	-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent !important;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23E0BC4C'/%3E%3Cstop offset='1' stop-color='%23C9A227'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='60' cy='60' r='58' fill='%23071410'/%3E%3Ccircle cx='60' cy='60' r='53' fill='none' stroke='url%28%23g%29' stroke-width='1.5' opacity='.6'/%3E%3Cpath d='M40 52h40l-3.5 30a5 5 0 0 1-5 4.4H48.5a5 5 0 0 1-5-4.4z' fill='none' stroke='url%28%23g%29' stroke-width='3' stroke-linejoin='round'/%3E%3Cpath d='M50 52v-5a10 10 0 0 1 20 0v5' fill='none' stroke='url%28%23g%29' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M60 78c-9-2-13-9-12-17 8 0 14 5 12 17z' fill='%233FA07F'/%3E%3Cpath d='M60 78c0-8 2-14 8-18' stroke='%23071410' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
	width: 104px !important; height: 104px !important; margin: 0 auto 18px !important; display: block; content: "";
}
body.elv-tienda .wp-block-woocommerce-empty-cart-block h2.wc-block-cart__empty-cart__title { font: 500 clamp(1.5rem, 1.1rem + 1.6vw, 2.1rem)/1.15 'Fraunces', Georgia, serif; color: var(--th-noche); margin: 0 0 10px; }
.elv-vacio { display: flex; flex-direction: column; align-items: center; gap: 18px; margin: 0 auto 28px; max-width: 520px; text-align: center; }
.elv-vacio__texto { margin: 0; color: #3A5248; font: 400 1.05rem/1.55 'Karla', system-ui, sans-serif; }
body.elv-tienda a.elv-vacio__boton {
	display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 34px; border-radius: 999px;
	background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)); color: var(--th-noche); text-decoration: none;
	font: 700 1.05rem/1 'Karla', system-ui, sans-serif; box-shadow: 0 10px 26px rgba(201, 162, 39, .28);
	transition: transform 250ms var(--th-ease), box-shadow 250ms var(--th-ease), filter 250ms var(--th-ease);
}
body.elv-tienda a.elv-vacio__boton:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 14px 30px rgba(201, 162, 39, .38); }
body.elv-tienda a.elv-vacio__boton:focus-visible, body.elv-tienda a.elv-vacio__enlace:focus-visible { outline: 3px solid var(--th-oroh); outline-offset: 3px; }
.elv-vacio__pie { margin: 34px 0 6px; text-align: center; }
body.elv-tienda a.elv-vacio__enlace { display: inline-flex; align-items: center; min-height: 44px; color: var(--th-esm); font: 700 1rem/1 'Karla', system-ui, sans-serif; text-decoration: underline; text-underline-offset: 5px; }
body.elv-tienda a.elv-vacio__enlace::after { content: "→"; margin-left: 8px; text-decoration: none; display: inline-block; }

body.elv-tienda .wp-block-woocommerce-empty-cart-block ul.wc-block-grid__products {
	display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; max-width: 1180px; margin: 0 auto; padding: 0; list-style: none;
}
body.elv-tienda .wp-block-woocommerce-empty-cart-block li.wc-block-grid__product { width: auto !important; max-width: none !important; margin: 0 !important; flex: none !important; }
@media (max-width: 1000px) { body.elv-tienda .wp-block-woocommerce-empty-cart-block ul.wc-block-grid__products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
@media (max-width: 600px) {
	body.elv-tienda a.elv-vacio__boton { width: 100%; max-width: 420px; }
	body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product .wp-block-button__link { padding: 0 14px; font-size: .85rem; }
	body.elv-tienda .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title { font-size: .92rem; }
}
@media (prefers-reduced-motion: reduce) { body.elv-tienda a.elv-vacio__boton { transition: none; } body.elv-tienda a.elv-vacio__boton:hover { transform: none; } }


/* ---------- 1.0.6 · Título inspirador del carrito y envases en las líneas del carrito ---------- */
.elv-tc--vacio { display: none; }
body:has(.wp-block-woocommerce-empty-cart-block:not(.is-hidden):not([hidden])) .elv-tc--lleno { display: none; }
body:has(.wp-block-woocommerce-empty-cart-block:not(.is-hidden):not([hidden])) .elv-tc--vacio { display: inline; }
body.woocommerce-cart h1.wp-block-post-title { text-wrap: balance; }
body.elv-tienda .wc-block-cart-item__image img[src$=".svg"],
body.elv-tienda .wc-block-components-order-summary-item__image img[src$=".svg"] { object-fit: contain; background: #0B1F18; border-radius: 14px; }


/* ---------- 1.0.7 · Pedido recibido: mensaje de marca y botón de regreso ---------- */
.elv-gracias { display: flex; flex-direction: column; align-items: center; gap: 16px; margin: 26px auto 10px; max-width: 560px; text-align: center; }
.elv-gracias__texto { margin: 0; color: #3A5248; font: 400 1.05rem/1.55 'Karla', system-ui, sans-serif; }
body.woocommerce-order-received h1.wp-block-post-title { font-family: 'Fraunces', Georgia, serif; text-wrap: balance; }

/* ---------- 1.0.11 · Logo del banco en el número de tarjeta: sin deformarse ---------- */
#mp-checkout-custom-root #mp-custom-checkout-form-container #form-checkout__cardNumber-container.mp-card-icon-detected { padding-right: 60px !important; }
#mp-checkout-custom-root #mp-custom-checkout-form-container #form-checkout__cardNumber-container.mp-card-icon-detected:before {
	width: 48px !important; padding: 4px !important; background-size: contain !important; background-origin: content-box !important; background-clip: content-box !important; background-color: #fff !important;
}


/* ---------- 1.0.12 · Aire entre la franja de sesión y el título del carrito y del checkout ---------- */
body.woocommerce-cart h1.wp-block-post-title,
body.woocommerce-checkout:not(.woocommerce-order-received) h1.wp-block-post-title { margin-top: clamp(28px, 4vw, 52px); }

/* ---------- 1.0.15 · Enlace «Acceder» del checkout: botón visible ---------- */
body.woocommerce-checkout .wc-block-checkout__login-prompt {
	display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 22px;
	border: 2px solid #0E6B4E; border-radius: 999px; background: #fff; color: #0E6B4E;
	font-size: 15px; font-weight: 700; line-height: 1.2; letter-spacing: .02em; text-decoration: none;
	box-shadow: 0 2px 8px rgba(14, 107, 78, .14); transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
}
body.woocommerce-checkout .wc-block-checkout__login-prompt::before {
	content: ""; width: 18px; height: 18px; flex: none; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4.4 3.6-7 8-7s8 2.6 8 7'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4.4 3.6-7 8-7s8 2.6 8 7'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.woocommerce-checkout .wc-block-checkout__login-prompt:hover,
body.woocommerce-checkout .wc-block-checkout__login-prompt:focus-visible { background: #0E6B4E; color: #fff; box-shadow: 0 4px 14px rgba(14, 107, 78, .3); }
body.woocommerce-checkout .wc-block-checkout__login-prompt:focus-visible { outline: 3px solid #E0BC4C; outline-offset: 2px; }
@media (max-width: 480px) { body.woocommerce-checkout .wc-block-checkout__login-prompt { padding: 9px 18px; font-size: 14px; } }
/* 1.0.16 · el encabezado «Información de contacto» + botón se acomodan (WooCommerce lo sube con margen negativo) */
body.woocommerce-checkout .wc-block-components-checkout-step__heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px 16px; }
body.woocommerce-checkout .wc-block-components-checkout-step__heading > .wc-block-components-checkout-step__title { flex: 1 1 auto; margin: 0; }
body.woocommerce-checkout .wc-block-components-checkout-step__heading-content { flex: 0 0 auto; margin: 0; }
body.woocommerce-checkout .wc-block-checkout__login-prompt { margin: 0; box-sizing: border-box; max-width: 100%; }
@media (max-width: 560px) {
	body.woocommerce-checkout .wc-block-components-checkout-step__heading-content { flex: 1 1 100%; }
	body.woocommerce-checkout .wc-block-checkout__login-prompt { display: flex; width: 100%; justify-content: center; }
}

/* ---------- 1.0.18 · Migas de pan: fichas y categorías (en la Tienda se ocultan por PHP) ---------- */
.elv-migas-envoltura { max-width: var(--wp--style--global--wide-size, 1200px); margin: 0 auto; padding: 18px 0 4px; box-sizing: border-box; }
.elv-migas ol { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 0; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.elv-migas ol::-webkit-scrollbar { display: none; }
.elv-migas li { display: inline-flex; align-items: center; flex: none; font-size: 13px; line-height: 1; letter-spacing: .03em; }
.elv-migas li + li::before {
	content: ""; width: 14px; height: 14px; margin: 0 8px; flex: none; background: #0E6B4E; opacity: .45;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.elv-migas a { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border-radius: 999px; background: rgba(14, 107, 78, .08); color: #0E6B4E; font-weight: 700; text-decoration: none; transition: background-color .2s ease, color .2s ease; }
.elv-migas li:first-child a::before {
	content: ""; width: 14px; height: 14px; margin-right: 6px; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E") center / contain no-repeat;
}
.elv-migas a:hover, .elv-migas a:focus-visible { background: #0E6B4E; color: #fff; }
.elv-migas a:focus-visible { outline: 3px solid #E0BC4C; outline-offset: 2px; }
.elv-migas__actual { color: #0A1A14; font-weight: 700; }
.elv-migas__actual span { display: inline-block; max-width: 46ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 560px) { .elv-migas-envoltura { padding: 14px 0 0; } .elv-migas__actual span { max-width: 22ch; } }

/* ---------- 1.0.22 · Paginación (cuando haya más de 24 productos) ---------- */
body.elv-tienda .wp-block-query-pagination { margin: 40px 0 8px; gap: 10px; align-items: center; justify-content: center; flex-wrap: wrap; }
body.elv-tienda .wp-block-query-pagination-numbers { display: inline-flex; gap: 8px; align-items: center; }
body.elv-tienda .wp-block-query-pagination .page-numbers,
body.elv-tienda .wp-block-query-pagination-next,
body.elv-tienda .wp-block-query-pagination-previous {
	display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 16px; box-sizing: border-box;
	border: 2px solid rgba(14, 107, 78, .35); border-radius: 999px; background: #fff; color: #0E6B4E;
	font-weight: 700; font-size: 15px; text-decoration: none; transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
body.elv-tienda .wp-block-query-pagination a:hover, body.elv-tienda .wp-block-query-pagination a:focus-visible { background: #0E6B4E; border-color: #0E6B4E; color: #fff; }
body.elv-tienda .wp-block-query-pagination a:focus-visible { outline: 3px solid #E0BC4C; outline-offset: 2px; }
body.elv-tienda .wp-block-query-pagination .page-numbers.current { background: #0E6B4E; border-color: #0E6B4E; color: #fff; }
body.elv-tienda .wp-block-query-pagination .page-numbers.dots { border-color: transparent; background: transparent; min-width: 0; padding: 0 4px; }

/* ===== v1.0.23 · Móvil (revisión en iPhone XR, 29-oct-2026) ===== */
/* Carrito en móvil (≤ 781 px): la lista de productos era una <table> que no se achicaba (380 px fijos) y se salía de la pantalla */
@media (max-width: 781px){
  body.elv-tienda table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block{
    display:block; width:100%; max-width:100%; box-sizing:border-box; padding:4px 16px;
  }
  body.elv-tienda .wc-block-cart-items tbody{display:block}
  body.elv-tienda .wc-block-cart-items__row{
    position:relative; display:grid; grid-template-columns:64px minmax(0,1fr)!important; column-gap:14px!important; align-items:start; padding:16px 0;
  }
  body.elv-tienda .wc-block-cart-item__image{grid-column:1; grid-row:1; width:auto; padding:0!important}
  body.elv-tienda .wc-block-cart-item__product{grid-column:2; grid-row:1; width:auto; min-width:0; padding:0!important}
  body.elv-tienda .wc-block-cart-item__product .wc-block-components-product-name{padding-right:78px}
  body.elv-tienda .wc-block-cart-item__total{position:absolute; top:16px; right:0; width:auto; padding:0!important; text-align:right; white-space:nowrap}
  body.elv-tienda .wc-block-cart-item__wrap{min-width:0}
  body.elv-tienda .wc-block-cart-item__quantity{flex-wrap:nowrap; gap:12px; align-items:center}
}

/* Tienda y categorías en móvil: el contenido tocaba los bordes de la pantalla (sin margen lateral) */
@media (max-width: 781px){
  body.woocommerce-shop main.wp-block-group{padding-left:16px!important; padding-right:16px!important; box-sizing:border-box}
}

/* Resumen del pedido (checkout) en móvil: el precio de cada línea no debe recortarse */
@media (max-width: 781px){
  body.elv-tienda .wc-block-components-order-summary-item__total-price{flex:none; white-space:nowrap; text-align:right}
  body.elv-tienda .wc-block-components-order-summary-item__description{min-width:0}
}

/* 1.0.26/1.0.28 · Kit Cénit destacado: etiqueta «El más completo» como texto real accesible (1.0.28; antes pseudo-elemento) (guía la elección entre los tres Kits; la tarjeta no muestra descripción) */
body.elv-tienda .wc-block-product-template li.elv-kit-cenit { position: relative; box-shadow: 0 0 0 1px rgba(224, 188, 76, .35), 0 16px 38px rgba(7, 20, 16, .35); }
body.elv-tienda .wc-block-product-template li.elv-kit-cenit .elv-etiqueta-kit {
	margin: 0; position: absolute; top: 16px; right: 16px; z-index: 2; padding: 6px 14px; border-radius: 999px;
	background: linear-gradient(135deg, var(--th-oroh), var(--th-oro)); color: var(--th-noche); font: 700 12px/1.2 'Karla', system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase;
	box-shadow: 0 6px 16px rgba(0, 0, 0, .35); pointer-events: none;
}

/* 1.0.27 · Tarjetas de Kits: el precio y el botón van abajo y quedan alineados entre tarjetas aunque el título ocupe 1, 2 o 3 líneas (!important: el bloque de WooCommerce trae márgenes en línea) */
body.elv-tienda .wc-block-product-template li.product_cat-kits .wp-block-woocommerce-product-price { margin-top: auto !important; }
body.elv-tienda .wc-block-product-template li.product_cat-kits .wc-block-components-product-button { margin-top: 0 !important; }
