/* ==========================================================================
   DAC PRO — Encabezado y pie de página (estilos sobre la estructura de Elementor)
   Encabezado: contenedor .headerv2  | Footer: .marcafooter .itemsfooter .copyfooter
   Los recursos (imágenes y SVG) están en ./assets/
   ========================================================================== */

:root {
	--dp-gold:   #E8B056;
	--dp-gold-d: #B77620;
	--dp-gold-l: #F7DC9A;
	--dp-bg:     #050505;
	--dp-text:   #E9E2D3;
	--dp-font:   'Montserrat', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--dp-font-c: 'Barlow Condensed', 'Arial Narrow', sans-serif;
	--dp-total: 122px;   /* alto total del encabezado: escritorio */
}
@media (max-width: 1180px) { :root { --dp-total: 110px; } }
@media (max-width: 767px)  { :root { --dp-total: 84px; } }

/* ==========================================================================
   ENCABEZADO
   ========================================================================== */

/* ---- Medidas (escritorio) ---- */
.headerv2 {
	--dp-h: 84px;        /* alto de la losa */
	--dp-pt: 5px;        /* separación superior de los paneles */
	--dp-ph: 75px;       /* alto de los paneles */
	--dp-pl: 206px;      /* ancho panel del logo (igual al de herramientas) */
	--dp-pr: 206px;      /* ancho panel de herramientas */
	--dp-bl: 118px;      /* losa: inicio izquierdo */
	--dp-br: 144px;      /* losa: margen derecho */
	--dp-sl: 154px;      /* franja perforada: izquierda (simétrica) */
	--dp-sr: 154px;      /* franja perforada: derecha (simétrica) */
	--dp-logo-l: 30px;
	--dp-logo-h: 58px;
	--dp-tool: 37px;
	--dp-tr: 24px;       /* aire a la derecha de las herramientas */
	--dp-sm: 12px;       /* margen lateral del escenario */
	--dp-pb: 30px;       /* aire bajo la losa (muesca y franja) */
}

/* Contenedor fijo del encabezado */
.headerv2 {
	position: fixed !important;
	top: 0 !important; left: 0 !important; right: 0 !important;
	width: 100% !important;
	max-width: none !important;
	height: var(--dp-total) !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	display: block !important;
	overflow: visible !important;
	z-index: 999;
}

/* Banda oscura: termina bajo la franja y baja siguiendo la muesca */
.headerv2::before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	height: calc(var(--dp-h) + 40px);
	--dp-fy: calc(var(--dp-h) + 25px);
	--dp-ty: calc(var(--dp-h) + 40px);
	background: var(--dp-bg);
	clip-path: polygon(0 0, 100% 0, 100% var(--dp-fy), calc(50% + 106.0px) calc(var(--dp-fy) + 0.00px), calc(50% + 102.3px) calc(var(--dp-fy) + 0.08px), calc(50% + 98.7px) calc(var(--dp-fy) + 0.53px), calc(50% + 95.0px) calc(var(--dp-fy) + 1.55px), calc(50% + 91.3px) calc(var(--dp-fy) + 3.15px), calc(50% + 87.7px) calc(var(--dp-fy) + 5.20px), calc(50% + 84.0px) calc(var(--dp-fy) + 7.50px), calc(50% + 80.3px) calc(var(--dp-fy) + 9.80px), calc(50% + 76.7px) calc(var(--dp-fy) + 11.85px), calc(50% + 73.0px) calc(var(--dp-fy) + 13.45px), calc(50% + 69.3px) calc(var(--dp-fy) + 14.47px), calc(50% + 65.7px) calc(var(--dp-fy) + 14.92px), calc(50% + 62.0px) calc(var(--dp-fy) + 15.00px), calc(50% - 62.0px) calc(var(--dp-fy) + 15.00px), calc(50% - 65.7px) calc(var(--dp-fy) + 14.92px), calc(50% - 69.3px) calc(var(--dp-fy) + 14.47px), calc(50% - 73.0px) calc(var(--dp-fy) + 13.45px), calc(50% - 76.7px) calc(var(--dp-fy) + 11.85px), calc(50% - 80.3px) calc(var(--dp-fy) + 9.80px), calc(50% - 84.0px) calc(var(--dp-fy) + 7.50px), calc(50% - 87.7px) calc(var(--dp-fy) + 5.20px), calc(50% - 91.3px) calc(var(--dp-fy) + 3.15px), calc(50% - 95.0px) calc(var(--dp-fy) + 1.55px), calc(50% - 98.7px) calc(var(--dp-fy) + 0.53px), calc(50% - 102.3px) calc(var(--dp-fy) + 0.08px), calc(50% - 106.0px) calc(var(--dp-fy) + 0.00px), 0 var(--dp-fy));
	pointer-events: none;
	z-index: 0;
}
body.admin-bar .headerv2 { top: 32px !important; }
@media (max-width: 782px) { body.admin-bar .headerv2 { top: 46px !important; } }

/* Escenario */
.headerv2 > .e-con {
	position: relative !important;
	display: block !important;
	width: calc(100% - 2 * var(--dp-sm)) !important;
	max-width: 1456px !important;
	height: var(--dp-h) !important;
	min-height: 0 !important;
	margin: 8px auto 0 !important;
	padding: 0 !important;
	background: none !important;
	z-index: 2;
}
.headerv2 > .e-con > .e-con-inner {
	position: static !important;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: var(--dp-h);
	margin: 0 !important;
	padding: 0 !important;
}

/* Losa de metal cepillado */
.headerv2 > .e-con::before {
	content: "";
	position: absolute;
	top: 0; bottom: 0;
	left: var(--dp-bl); right: var(--dp-br);
	width: auto !important; height: auto !important;   /* anula el ancho 100% que Elementor da a .e-con::before */
	background:
		repeating-linear-gradient(90deg, rgba(255,255,255,.022) 0 1px, transparent 1px 4px),
		linear-gradient(180deg, #1d1d1d 0, #101010 14%, #0a0a0a 100%);
	border-top: 1px solid rgba(232, 176, 86, .35);
	clip-path: polygon(88px 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%, 0 20px, 68px 20px);
	z-index: 0;
	pointer-events: none;
}

/* Franja inferior perforada con la línea dorada */
.headerv2 > .e-con::after {
	content: "";
	position: absolute;
	left: var(--dp-sl); right: var(--dp-sr);
	top: calc(var(--dp-h) - 6px);
	height: 15px;
	background:
		linear-gradient(90deg, transparent, var(--dp-gold) 6%, var(--dp-gold-l) 30%, var(--dp-gold) 46%, var(--dp-gold) 54%, var(--dp-gold-l) 70%, var(--dp-gold) 94%, transparent) 0 0 / 100% 2px no-repeat,
		radial-gradient(circle at 50% 50%, rgba(255,255,255,.22) 0 1.1px, transparent 1.7px) 0 0 / 7px 7px,
		linear-gradient(180deg, #161616, #070707);
	clip-path: polygon(0 0, 100% 0, calc(100% - 15px) 100%, 15px 100%);
	z-index: 1;
	pointer-events: none;
}

/* Muesca central con las barras */
.headerv2 > .e-con > .e-con-inner::before {
	content: "";
	position: absolute;
	left: 50%;
	top: calc(var(--dp-h) - 6px);
	width: 206px; height: 29px;
	transform: translateX(-50%);
	background:
		url(assets/barras-muesca.webp) 50% 47% / 60px auto no-repeat,
		url(assets/muesca.svg) 0 0 / 100% 100% no-repeat;
	filter: drop-shadow(0 6px 7px rgba(232, 176, 86, .4));
	z-index: 2;
	pointer-events: none;
}

/* Paneles con borde dorado (logo y herramientas) */
.headerv2 > .e-con > .e-con-inner::after {
	content: "";
	position: absolute;
	left: 0; right: 0;
	top: var(--dp-pt);
	height: var(--dp-ph);
	background:
		url(assets/panel-logo.svg) 0 0 / var(--dp-pl) 100% no-repeat,
		url(assets/panel-herramientas.svg) 100% 0 / var(--dp-pr) 100% no-repeat;
	filter: drop-shadow(0 0 5px rgba(232, 176, 86, .45));
	z-index: 3;
	pointer-events: none;
}

/* Destellos sobre los bordes dorados */
.headerv2::after {
	content: "";
	position: absolute;
	top: 8px;
	left: 50%;
	width: calc(100% - 2 * var(--dp-sm));
	max-width: 1456px;
	height: var(--dp-h);
	transform: translateX(-50%);
	--fl: radial-gradient(ellipse 50% 50% at 50% 50%, rgba(255,248,226,.98) 0, rgba(247,220,154,.7) 16%, rgba(232,176,86,.3) 42%, transparent 72%);
	--ln: linear-gradient(90deg, transparent, rgba(255,236,180,.7) 50%, transparent);
	background:
		var(--fl) calc(30% + -22px) calc(var(--dp-h) - 13px) / 110px 14px no-repeat,
		var(--ln) calc(30% + -22px) calc(calc(var(--dp-h) - 13px) + 7px) / 110px 1px no-repeat,
		var(--fl) calc(72% + 24.2px) calc(var(--dp-h) - 13px) / 110px 14px no-repeat,
		var(--ln) calc(72% + 24.2px) calc(calc(var(--dp-h) - 13px) + 7px) / 110px 1px no-repeat,
		var(--fl) calc(var(--dp-pl) * .44 - 60px) calc(var(--dp-pt) - 7px) / 120px 16px no-repeat,
		var(--ln) calc(var(--dp-pl) * .44 - 60px) calc(calc(var(--dp-pt) - 7px) + 8px) / 120px 1px no-repeat,
		var(--fl) calc(var(--dp-pl) * .065 - 18px) calc(var(--dp-pt) - 5px) / 40px 12px no-repeat,
		var(--fl) calc(100% + 18px - var(--dp-pr) * .065) calc(var(--dp-pt) - 5px) / 40px 12px no-repeat,
		var(--fl) calc(var(--dp-pl) * .96 - 30px) calc(var(--dp-pt) - 6px) / 60px 14px no-repeat,
		var(--fl) calc(var(--dp-pl) * .60 - 50px) calc(var(--dp-pt) + var(--dp-ph) - 8px) / 100px 14px no-repeat,
		var(--ln) calc(var(--dp-pl) * .60 - 50px) calc(calc(var(--dp-pt) + var(--dp-ph) - 8px) + 7px) / 100px 1px no-repeat,
		var(--fl) calc(100% + 50px - var(--dp-pr) * .58) calc(var(--dp-pt) - 6px) / 100px 14px no-repeat,
		var(--ln) calc(100% + 50px - var(--dp-pr) * .58) calc(calc(var(--dp-pt) - 6px) + 7px) / 100px 1px no-repeat,
		var(--fl) calc(100% + 55px - var(--dp-pr) * .50) calc(var(--dp-pt) + var(--dp-ph) - 8px) / 110px 14px no-repeat,
		var(--ln) calc(100% + 55px - var(--dp-pr) * .50) calc(calc(var(--dp-pt) + var(--dp-ph) - 8px) + 7px) / 110px 1px no-repeat;
	mix-blend-mode: screen;
	pointer-events: none;
	z-index: 6;
	animation: dp-twinkle 5.5s ease-in-out infinite;
}
@keyframes dp-twinkle { 0%, 100% { opacity: .55; } 50% { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .headerv2::after { animation: none; opacity: .85; } }

/* ---- Logo ---- */
.headerv2 .logov2 {
	position: absolute !important;
	left: var(--dp-logo-l); top: 50%;
	transform: translateY(-50%);
	width: auto !important;
	margin: 0 !important;
	z-index: 4;
}
.headerv2 .logov2 a { display: block; line-height: 0; }
.headerv2 .logov2 img {
	display: block;
	width: auto !important; max-width: none !important;
	height: var(--dp-logo-h) !important;
	filter: drop-shadow(0 2px 6px rgba(0,0,0,.6));
}

/* ---- Navegación (escritorio) ---- */
.headerv2 .elementor-widget-uael-nav-menu {
	position: absolute !important;
	top: 0;
	height: calc(var(--dp-h) - 6px);
	left: calc(var(--dp-pl) + 16px);
	right: calc(var(--dp-pr) + 16px);
	width: auto !important;
	margin: 0 !important;
	z-index: 4;
}
.headerv2 .elementor-widget-uael-nav-menu > .elementor-widget-container,
.headerv2 .uael-nav-menu,
.headerv2 .uael-nav-menu__layout-horizontal { height: 100%; }
.headerv2 .uael-nav-menu__layout-horizontal {
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: none;
	border: 0;
}
.headerv2 ul.uael-nav-menu {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: clamp(15px, 2.2vw, 32px);
	margin: 0 !important; padding: 0 !important;
	list-style: none;
	height: auto;
}
.headerv2 ul.uael-nav-menu > li { margin: 0 !important; padding: 0 !important; border: 0 !important; width: auto !important; }
.headerv2 ul.uael-nav-menu > li > a.uael-menu-item {
	position: relative;
	display: block !important;
	padding: 8px 0 !important;
	margin: 0 !important;
	background: none !important;
	border: 0 !important;
	color: #fff !important;
	font: 600 13px/1 var(--dp-font) !important;
	letter-spacing: 1px !important;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
	transition: color .2s ease;
}
.headerv2 ul.uael-nav-menu > li > a.uael-menu-item:hover,
.headerv2 ul.uael-nav-menu > li.current-menu-item > a.uael-menu-item,
.headerv2 ul.uael-nav-menu > li.current-menu-ancestor > a.uael-menu-item,
.headerv2 ul.uael-nav-menu > li.current_page_item > a.uael-menu-item { color: var(--dp-gold) !important; }
.headerv2 ul.uael-nav-menu > li > a.uael-menu-item::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 2px;
	background-image: linear-gradient(90deg, transparent, var(--dp-gold), transparent);
	transform: scaleX(0);
	transition: transform .25s ease;
	opacity: 1; width: auto; top: auto !important;
	background-color: transparent !important;   /* UAE pinta aquí un color sólido que tapaba el degradado */
	border: 0 !important;
}
.headerv2 ul.uael-nav-menu > li > a.uael-menu-item::before { content: none !important; display: none !important; }
.headerv2 ul.uael-nav-menu > li > a.uael-menu-item:hover::after,
.headerv2 ul.uael-nav-menu > li.current-menu-item > a.uael-menu-item::after,
.headerv2 ul.uael-nav-menu > li.current_page_item > a.uael-menu-item::after { transform: scaleX(1); }

@media (min-width: 1025px) {
	.headerv2 .uael-nav-menu.uael-layout-horizontal { display: block; width: 100%; margin: 0; height: 100%; }
	.headerv2 nav.uael-nav-menu__layout-horizontal { position: static !important; width: 100% !important; height: 100%; }
}

/* ---- Herramientas: buscar, cuenta, carrito ---- */
.headerv2 .iconv2 {
	position: absolute !important;
	right: 0; top: var(--dp-pt);
	height: var(--dp-ph);
	width: var(--dp-pr) !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 var(--dp-tr) 0 48px !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-around !important;
	gap: 8px !important;
	background: none !important;
	z-index: 4;
}
.headerv2 .iconv2 > .elementor-widget {
	width: var(--dp-tool) !important;
	height: var(--dp-tool);
	margin: 0 !important;
	display: grid;
	place-items: center;
	flex: none;
}
.headerv2 .iconv2 .elementor-widget-container { width: 100%; height: 100%; display: grid; place-items: center; }

/* Hover de los íconos: se elevan 1 px y brillan */
.headerv2 .iconv2 > .elementor-widget { transition: transform .2s ease, filter .2s ease; cursor: pointer; }
.headerv2 .iconv2 > .elementor-widget:hover { transform: translateY(-1px); filter: brightness(1.25); }
@media (prefers-reduced-motion: reduce) { .headerv2 .iconv2 > .elementor-widget { transition: none; } }

/* Buscar (HFE) */
.headerv2 .hfe-search-button-wrapper { position: relative; width: var(--dp-tool); height: var(--dp-tool); }
.headerv2 .hfe-search-icon-toggle { position: relative; width: var(--dp-tool); height: var(--dp-tool); }
.headerv2 .hfe-search-icon-toggle i {
	position: absolute !important;
	inset: 0 !important;
	box-sizing: border-box !important;
	width: 100% !important; height: 100% !important;
	margin: 0 !important; padding: 0 !important;
	font-size: 0 !important;
	background: url(assets/icon-buscar.svg) center / 24px 24px no-repeat !important;
	cursor: pointer;
	z-index: 2;
}
.headerv2 .hfe-search-icon-toggle i::before { content: none !important; }
.headerv2 .hfe-search-icon-toggle { width: var(--dp-tool) !important; height: var(--dp-tool) !important; }
.headerv2 .hfe-search-button-wrapper .hfe-search-icon-toggle .hfe-search-form__input {
	border: 0 !important; background: transparent !important; box-shadow: none !important; padding: 0 !important;
	color: #fff !important;
	font: 500 13px/1 var(--dp-font) !important;
	height: var(--dp-tool) !important;
	border-radius: 0 !important;
	z-index: 3;
}
.headerv2 .hfe-search-button-wrapper.hfe-input-focus .hfe-search-icon-toggle .hfe-search-form__input {
	border: 1px solid var(--dp-gold) !important;
	background: #0b0b0b !important;
	width: 250px;
	padding: 0 40px 0 14px !important;
	z-index: 5;
}
.headerv2 .hfe-search-form__input::placeholder { color: #8a8a8a; }

/* Cuenta (widget de ícono) */
.headerv2 .iconv2 .elementor-widget-icon .elementor-icon {
	display: block;
	width: var(--dp-tool); height: var(--dp-tool);
	background: url(assets/icon-cuenta.svg) center / 24px 24px no-repeat;
}
.headerv2 .iconv2 .elementor-widget-icon .elementor-icon svg,
.headerv2 .iconv2 .elementor-widget-icon .elementor-icon i { display: none !important; }

/* Punto "en línea": solo cuando hay sesión iniciada (WordPress agrega body.logged-in) */
body.logged-in .headerv2 .iconv2 .elementor-widget-icon { position: relative; }
body.logged-in .headerv2 .iconv2 .elementor-widget-icon::before,
body.logged-in .headerv2 .iconv2 .elementor-widget-icon::after {
	content: "";
	position: absolute;
	bottom: 4px; right: 4px;
	width: 9px; height: 9px;
	border-radius: 50%;
	box-sizing: content-box;
	pointer-events: none;
}
/* punto fijo, siempre opaco */
body.logged-in .headerv2 .iconv2 .elementor-widget-icon::after {
	background: #3ddc84;
	border: 2px solid #0b0b0b;
	box-shadow: 0 0 6px rgba(61, 220, 132, .75);
	z-index: 2;
	animation: dp-online-halo 2.5s ease-in-out infinite;
}
@keyframes dp-online-halo {
	0%, 100% { box-shadow: 0 0 4px 0 rgba(61, 220, 132, .5); }
	50%      { box-shadow: 0 0 8px 2px rgba(61, 220, 132, .95); }
}
/* onda que se expande y se desvanece (mismo ritmo que el botón de WhatsApp) */
body.logged-in .headerv2 .iconv2 .elementor-widget-icon::before {
	width: 13px; height: 13px;   /* igual al punto (9 px + borde de 2 px) para que el halo quede centrado */
	background: rgba(61, 220, 132, .85);
	z-index: 1;
	animation: dp-online-ripple 2.5s ease-out infinite;
}
@keyframes dp-online-ripple {
	0%   { transform: scale(1);   opacity: 1; }
	40%  { transform: scale(1.3); opacity: .5; }
	100% { transform: scale(1.7); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { body.logged-in .headerv2 .iconv2 .elementor-widget-icon::before { animation: none; display: none; } body.logged-in .headerv2 .iconv2 .elementor-widget-icon::after { animation: none; } }

/* Carrito (HFE) + contador real de WooCommerce */
.headerv2 .hfe-site-header-cart,
.headerv2 .hfe-site-header-cart-li,
.headerv2 .hfe-masthead-custom-menu-items { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; }
.headerv2 .hfe-cart-container { position: relative; display: block; width: var(--dp-tool); height: var(--dp-tool); padding: 0 !important; background: url(assets/icon-carrito.svg) center / 24px 24px no-repeat; }
.headerv2 .hfe-cart-menu-wrap-default { display: block !important; position: static; padding: 0 !important; border: 0 !important; background: none !important; }
.headerv2 .hfe-cart-menu-wrap-default::before,
.headerv2 .hfe-cart-menu-wrap-default::after,
.headerv2 .hfe-cart-count::before,
.headerv2 .hfe-cart-count::after { content: none !important; display: none !important; }
.headerv2 .hfe-cart-count {
	position: absolute;
	right: -3px; bottom: -1px;
	width: 17px !important; height: 17px !important;
	min-width: 0 !important; min-height: 0 !important;
	aspect-ratio: 1 / 1;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important; align-items: center; justify-content: center;
	border-radius: 50% !important;
	line-height: 1 !important; text-align: center;
	background: linear-gradient(180deg, var(--dp-gold-l), var(--dp-gold-d)) !important;
	border: 0 !important;
	color: #111 !important;
	font: 700 10px/1 var(--dp-font) !important;
	box-sizing: border-box;
}

/* ---- Botón de menú (tablet / móvil) ---- */
.headerv2 .uael-nav-menu__toggle { display: none !important; }

/* ---- Tablet: de 1025 a 1180 px (menú visible, medidas reducidas) ---- */
@media (max-width: 1180px) {
	.headerv2 {
		--dp-h: 76px; --dp-ph: 67px; --dp-pl: 190px; --dp-pr: 190px;
		--dp-bl: 36px; --dp-br: 36px; --dp-sl: 48px; --dp-sr: 48px;
		--dp-logo-l: 24px; --dp-logo-h: 52px; --dp-pb: 26px;
		--dp-tool: 34px;
	}
	.headerv2 > .e-con::before { clip-path: polygon(20px 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%, 0 20px); }
	.headerv2 ul.uael-nav-menu { gap: 16px; }
	.headerv2 ul.uael-nav-menu > li > a.uael-menu-item { font-size: 12px !important; letter-spacing: .8px !important; }
}

/* ---- Tablet y móvil: menú colapsado (hasta 1024 px) ---- */
@media (max-width: 1024px) {
	.headerv2 { --dp-pl: 214px; --dp-pr: 214px; --dp-bl: 36px; --dp-br: 36px; --dp-sl: 48px; --dp-sr: 48px; --dp-tr: 22px; }
	.headerv2 .iconv2 {
		right: calc(var(--dp-tr) + 38px + 18px) !important; /* deja sitio al botón */
		left: auto !important;
		width: calc(3 * var(--dp-tool) + 12px) !important;
		padding: 0 !important;
		gap: 6px !important;
		justify-content: flex-start !important;
	}
	.headerv2 .elementor-widget-uael-nav-menu {
		left: auto !important;
		right: var(--dp-tr);
		top: calc(var(--dp-pt) + var(--dp-ph) / 2 - 19px);
		width: 38px !important; height: 38px;
	}
	.headerv2 .elementor-widget-uael-nav-menu > .elementor-widget-container,
	.headerv2 .uael-nav-menu { height: 38px; }
	.headerv2 .uael-nav-menu__toggle {
		display: block !important;
		position: relative;
		width: 38px; height: 38px;
		margin: 0 !important; padding: 0 !important;
		background: url(assets/icon-menu.svg) center / 24px 24px no-repeat, linear-gradient(180deg, #F7DC9A 0%, #E8B056 48%, #B77620 100%);
		box-shadow: inset 0 1px 0 rgba(255,255,255,.6), inset 0 -2px 0 rgba(90,50,5,.35);
		cursor: pointer;
	}
	.headerv2 .uael-nav-menu__toggle[aria-expanded="true"] {
		background: url(assets/icon-cerrar.svg) center / 24px 24px no-repeat, linear-gradient(180deg, #F7DC9A 0%, #E8B056 48%, #B77620 100%);
	}
	.headerv2 .uael-nav-menu__toggle:hover { filter: brightness(1.12); }
	.headerv2 .uael-nav-menu__toggle .uael-nav-menu-icon { display: none !important; }

	/* Menú desplegable */
	.headerv2 nav.uael-nav-menu__layout-horizontal.uael-dropdown {
		position: fixed !important;
		left: 12px !important; right: 12px !important;
		width: auto !important;
		top: calc(8px + var(--dp-h) + 6px) !important;
		height: auto !important;
		display: none;
		z-index: 9999 !important;
		background: linear-gradient(180deg, #151515, #090909) !important;
		border: 1px solid rgba(232, 176, 86, .55);
		border-radius: 4px;
		box-shadow: 0 20px 40px rgba(0,0,0,.8), 0 0 14px rgba(232,176,86,.25);
		padding: 8px 0 !important;
	}
	body.admin-bar .headerv2 nav.uael-nav-menu__layout-horizontal.uael-dropdown { top: calc(32px + 8px + var(--dp-h) + 6px) !important; }
	.headerv2 nav.uael-dropdown.menu-is-active { display: block !important; }
	.headerv2 nav.uael-dropdown ul.uael-nav-menu {
		display: block !important;
		gap: 0;
	}
	.headerv2 nav.uael-dropdown ul.uael-nav-menu > li + li { border-top: 1px solid rgba(232, 176, 86, .18) !important; }
	.headerv2 nav.uael-dropdown ul.uael-nav-menu > li > a.uael-menu-item {
		padding: 14px 20px !important;
		font-size: 13px !important;
		letter-spacing: 1px !important;
	}
	.headerv2 nav.uael-dropdown ul.uael-nav-menu > li > a.uael-menu-item::after { display: none; }
}

/* ---- Móvil (hasta 640 px) ---- */
@media (max-width: 767px) {
	.headerv2 {
		--dp-h: 58px; --dp-pt: 0px; --dp-ph: 58px; --dp-pl: 130px; --dp-pr: 192px;
		--dp-bl: 24px; --dp-br: 24px;
		--dp-logo-l: 18px; --dp-logo-h: 38px; --dp-pb: 18px;
		--dp-tool: 32px; --dp-tr: 12px; --dp-sm: 8px;
	}
	.headerv2 > .e-con::before { clip-path: none; }
	.headerv2::before { clip-path: polygon(0 0, 100% 0, 100% var(--dp-fy), 0 var(--dp-fy)); }
	.headerv2::after {
		background:
		var(--fl) calc(var(--dp-pl) * .44 - 60px) calc(var(--dp-pt) - 7px) / 120px 16px no-repeat,
		var(--ln) calc(var(--dp-pl) * .44 - 60px) calc(calc(var(--dp-pt) - 7px) + 8px) / 120px 1px no-repeat,
		var(--fl) calc(var(--dp-pl) * .065 - 18px) calc(var(--dp-pt) - 5px) / 40px 12px no-repeat,
		var(--fl) calc(100% + 18px - var(--dp-pr) * .065) calc(var(--dp-pt) - 5px) / 40px 12px no-repeat,
		var(--fl) calc(var(--dp-pl) * .96 - 30px) calc(var(--dp-pt) - 6px) / 60px 14px no-repeat,
		var(--fl) calc(var(--dp-pl) * .60 - 50px) calc(var(--dp-pt) + var(--dp-ph) - 8px) / 100px 14px no-repeat,
		var(--ln) calc(var(--dp-pl) * .60 - 50px) calc(calc(var(--dp-pt) + var(--dp-ph) - 8px) + 7px) / 100px 1px no-repeat,
		var(--fl) calc(100% + 50px - var(--dp-pr) * .58) calc(var(--dp-pt) - 6px) / 100px 14px no-repeat,
		var(--ln) calc(100% + 50px - var(--dp-pr) * .58) calc(calc(var(--dp-pt) - 6px) + 7px) / 100px 1px no-repeat,
		var(--fl) calc(100% + 55px - var(--dp-pr) * .50) calc(var(--dp-pt) + var(--dp-ph) - 8px) / 110px 14px no-repeat,
		var(--ln) calc(100% + 55px - var(--dp-pr) * .50) calc(calc(var(--dp-pt) + var(--dp-ph) - 8px) + 7px) / 110px 1px no-repeat;
	}
	.headerv2::before { --dp-fy: calc(var(--dp-h) + 16px); }   /* 8 px arriba + alto del panel + 8 px: mismo margen que arriba y a los lados */
	.headerv2 > .e-con::after,
	.headerv2 > .e-con > .e-con-inner::before { display: none; }
	.headerv2 .iconv2 { gap: 4px !important; width: calc(3 * var(--dp-tool) + 8px) !important; right: calc(var(--dp-tr) + 34px + 12px) !important; }
	.headerv2 .elementor-widget-uael-nav-menu { width: 34px !important; height: 34px; top: calc(var(--dp-ph) / 2 - 17px); }
	.headerv2 .uael-nav-menu__toggle { width: 34px; height: 34px; background-size: 21px 21px, auto; }
	.headerv2 .uael-nav-menu__toggle[aria-expanded="true"] { background-size: 21px 21px, auto; }
	.headerv2 .hfe-cart-count { width: 15px !important; height: 15px !important; font-size: 8px !important; }
	.headerv2 .iconv2 .elementor-widget-icon .elementor-icon,
	.headerv2 .hfe-search-icon-toggle i,
	.headerv2 .hfe-cart-container { background-size: 21px 21px; }
}


/* ==========================================================================
   PIE DE PÁGINA
   Contenedores: .marcafooter (logo + lema) · .itemsfooter (3 beneficios) · .copyfooter (legales y redes)
   El botón flotante de WhatsApp (.iconredes) NO se toca.
   ========================================================================== */

footer.ast-custom-footer:has(.marcafooter) {
	--ft-b: 30px;
	position: relative;
	overflow-x: clip;
	overflow-y: visible;
	padding: 56px 20px 96px !important;
	background: transparent !important;
}
footer.ast-custom-footer:has(.marcafooter) > div { position: static; }

/* Fondo oscuro con borde superior en forma de trapecio + línea dorada con curva central.
   El recorte sigue la curva: en el centro la página "entra" en el pie. */
footer.ast-custom-footer:has(.marcafooter)::before {
	content: "";
	position: absolute;
	top: -12px; left: 0; right: 0; bottom: 0;
	background:
		url(assets/marco-superior.svg) 0 12px / 100% 38px no-repeat,
		radial-gradient(ellipse 60% 55% at 50% 38%, rgba(30, 26, 20, .9), transparent 70%),
		var(--dp-bg);
	filter: drop-shadow(0 0 5px rgba(232, 176, 86, .55));
	clip-path: polygon(
		0 4px, 37.60% 4.00px, 37.99% 4.07px, 38.37% 4.50px,
		38.76% 5.49px, 39.14% 7.10px, 39.53% 9.27px, 39.91% 11.87px,
		40.30% 14.70px, 40.69% 17.53px, 41.07% 20.13px, 41.46% 22.30px,
		41.84% 23.91px, 42.23% 24.90px, 42.61% 25.33px, 43.00% 25.40px,
		57.00% 25.40px, 57.39% 25.33px, 57.77% 24.90px, 58.16% 23.91px,
		58.54% 22.30px, 58.93% 20.13px, 59.31% 17.53px, 59.70% 14.70px,
		60.09% 11.87px, 60.47% 9.27px, 60.86% 7.10px, 61.24% 5.49px,
		61.63% 4.50px, 62.01% 4.07px, 62.40% 4.00px, 100% 4px,
		100% 100%, 0 100%);
	pointer-events: none;
	z-index: 0;
}

/* Brillo y destello bajo la curva central */
footer.ast-custom-footer:has(.marcafooter) > div::before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 50px;
	background:
		radial-gradient(ellipse 50% 50% at 50% 50%, #fff6d8 0, rgba(255,230,160,.85) 18%, rgba(232,176,86,.35) 48%, transparent 75%) 50% 20px / min(84px, 11%) 8px no-repeat,
		radial-gradient(ellipse 50% 50% at 50% 50%, rgba(255,224,150,.4) 0, rgba(232,176,86,.18) 40%, transparent 72%) 50% 11px / min(300px, 30%) 26px no-repeat;
	mix-blend-mode: screen;
	animation: dp-twinkle 5.5s ease-in-out infinite;
	pointer-events: none;
	z-index: 2;
}
@media (prefers-reduced-motion: reduce) { footer.ast-custom-footer:has(.marcafooter) > div::before { animation: none; } }

/* Esquinas de mármol */
footer.ast-custom-footer:has(.marcafooter) > div::after {
	content: "";
	position: absolute;
	inset: 0;
	--mw: clamp(200px, 21%, 300px);
	background:
		url(assets/marmol-izq.webp) left 0 bottom calc(var(--ft-b) - 7px) / var(--mw) auto no-repeat,
		url(assets/marmol-der.webp) right 0 bottom calc(var(--ft-b) - 7px) / var(--mw) auto no-repeat;
	pointer-events: none;
	z-index: 0;
}

/* Línea base dorada y placa central */
footer.ast-custom-footer:has(.marcafooter)::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 120px;
	background:
		url(assets/placa-pie.webp) 50% calc(100% - var(--ft-b) + 2px) / 320px auto no-repeat,
		linear-gradient(90deg, rgba(183,118,32,.15), var(--dp-gold) 18%, var(--dp-gold-l) 50%, var(--dp-gold) 82%, rgba(183,118,32,.15)) 0 calc(100% - var(--ft-b) + 1px) / 100% 2px no-repeat,
		linear-gradient(90deg, transparent, rgba(232,176,86,.28) 50%, transparent) 0 calc(100% - var(--ft-b) + 4px) / 100% 8px no-repeat;
	filter: drop-shadow(0 0 8px rgba(232, 176, 86, .35));
	pointer-events: none;
	z-index: 2;
}


/* Contenedores */
footer.ast-custom-footer:has(.marcafooter) .marcafooter,
footer.ast-custom-footer:has(.marcafooter) .itemsfooter,
footer.ast-custom-footer:has(.marcafooter) .copyfooter {
	position: relative;
	z-index: 3;
	width: 100% !important;
	max-width: 900px !important;
	min-height: 0 !important;
	margin: 0 auto !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}
footer.ast-custom-footer:has(.marcafooter) .marcafooter > .e-con-inner,
footer.ast-custom-footer:has(.marcafooter) .itemsfooter > .e-con-inner,
footer.ast-custom-footer:has(.marcafooter) .copyfooter > .e-con-inner {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center;
}
footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget,
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget,
footer.ast-custom-footer:has(.marcafooter) .copyfooter .elementor-widget:not(.iconredes) { margin: 0 !important; }

/* ---- Marca: logo | línea | lema ---- */
footer.ast-custom-footer:has(.marcafooter) .marcafooter { padding-bottom: 64px !important; }
footer.ast-custom-footer:has(.marcafooter) .marcafooter > .e-con-inner { flex-direction: row !important; gap: 54px !important; }   /* 26 + línea de 2 + 26 */
footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-image { position: relative; width: auto !important; flex: none; }
footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-image img {
	display: block;
	width: auto !important; max-width: none !important;
	height: 74px !important;
	filter: drop-shadow(0 2px 6px rgba(0,0,0,.6));
}
footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-image::after {
	content: "";
	position: absolute;
	right: -28px; top: 6px; bottom: 6px;
	width: 2px;
	background: linear-gradient(180deg, transparent, var(--dp-gold), transparent);
}
footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-heading { width: auto !important; flex: none; }
footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-heading .elementor-heading-title {
	margin: 0 !important;
	text-align: left;
	font: 700 26px/1 var(--dp-font-c) !important;
	letter-spacing: .03em !important;
	text-transform: uppercase;
	background: linear-gradient(180deg, #ffffff 15%, #8d8d8d 100%);
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: transparent !important;
	filter: drop-shadow(0 2px 4px rgba(0,0,0,.7));
}

/* Ornamento: línea – chevrones – línea */
footer.ast-custom-footer:has(.marcafooter) .marcafooter::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 24px;
	height: 18px;
	background:
		url(assets/ornamento-pie.webp) 50% 50% / 86px auto no-repeat,
		linear-gradient(90deg, transparent, var(--dp-gold) 40%, var(--dp-gold)) 0 50% / calc(50% - 59px) 1px no-repeat,
		linear-gradient(270deg, transparent, var(--dp-gold) 40%, var(--dp-gold)) 100% 50% / calc(50% - 59px) 1px no-repeat;
	filter: drop-shadow(0 0 6px rgba(232, 176, 86, .45));
	pointer-events: none;
}

/* ---- Beneficios ---- */
footer.ast-custom-footer:has(.marcafooter) .itemsfooter { padding-bottom: 22px !important; }
footer.ast-custom-footer:has(.marcafooter) .itemsfooter > .e-con-inner { flex-direction: row !important; gap: 0 !important; align-items: stretch !important; }
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading { width: auto !important; flex: none; }
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading .elementor-heading-title {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 !important;
	padding: 4px 30px;
	text-align: left;
	font: 500 12px/1.3 var(--dp-font) !important;
	letter-spacing: 1px !important;
	text-transform: uppercase;
	color: var(--dp-text) !important;
}
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading .elementor-heading-title::before {
	content: "";
	flex: none;
	width: 34px; height: 34px;
	background: center / contain no-repeat;
}
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading + .elementor-widget-heading .elementor-heading-title { border-left: 1px solid rgba(232, 176, 86, .55); }
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .qualityfoot .elementor-heading-title::before { background-image: url(assets/icon-calidad.svg); }
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .resultfoot .elementor-heading-title::before { background-image: url(assets/icon-resultados.svg); }
footer.ast-custom-footer:has(.marcafooter) .itemsfooter .rendimfoot .elementor-heading-title::before { background-image: url(assets/icon-rendimiento.svg); }

/* ---- Derechos, legales y redes ---- */
footer.ast-custom-footer:has(.marcafooter) .copyfooter { padding-top: 19px !important; }
footer.ast-custom-footer:has(.marcafooter) .copyfooter > .e-con-inner { flex-direction: column !important; gap: 10px !important; }
footer.ast-custom-footer:has(.marcafooter) .copyfooter::before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--dp-gold) 25%, var(--dp-gold) 75%, transparent);
	opacity: .7;
}
footer.ast-custom-footer:has(.marcafooter) .copyfooter .hfe-copyright-wrapper,
footer.ast-custom-footer:has(.marcafooter) .copyfooter .hfe-copyright-wrapper span {
	color: var(--dp-gold) !important;
	font: 500 14px/1 var(--dp-font) !important;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-align: center;
}

footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-items,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-items {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 0 !important; padding: 0 !important;
}
footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item::after,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item::after { content: none !important; display: none !important; }
footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item > a,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item > a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 2px 22px;
	color: var(--dp-text);
	text-decoration: none;
	transition: color .2s ease;
}
footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-text,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-text {
	padding: 0 !important;
	color: inherit !important;
	font: 400 14px/1.2 var(--dp-font) !important;
	letter-spacing: .5px;
	text-transform: uppercase;
}
footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item > a:hover,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item > a:hover { color: var(--dp-gold); }
footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item + .elementor-icon-list-item > a,
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item + .elementor-icon-list-item > a { border-left: 1px solid rgba(232, 176, 86, .55); }
footer.ast-custom-footer:has(.marcafooter) .politicasfoot { margin-bottom: 6px !important; }
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item > a { padding: 2px 26px; }

/* Íconos de redes */
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-icon {
	display: block !important;
	flex: none;
	width: 26px !important; height: 26px;
	background: center / contain no-repeat;
}
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-icon svg { display: none !important; }
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item:nth-child(1) .elementor-icon-list-icon { background-image: url(assets/icon-instagram.svg); }
footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item:nth-child(2) .elementor-icon-list-icon { background-image: url(assets/icon-facebook.svg); }

/* ---- Pie: tablet ---- */
@media (max-width: 1024px) {
	footer.ast-custom-footer:has(.marcafooter) { padding-top: 54px !important; padding-bottom: 92px !important; }
	footer.ast-custom-footer:has(.marcafooter) > div::after { --mw: 26%; opacity: .6; }
	footer.ast-custom-footer:has(.marcafooter) .itemsfooter > .e-con-inner { flex-direction: column !important; align-items: center !important; }
	footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading { width: min(100%, 300px) !important; }
	footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading .elementor-heading-title { justify-content: center; text-align: center; padding: 12px 0; }
	footer.ast-custom-footer:has(.marcafooter) .itemsfooter .elementor-widget-heading + .elementor-widget-heading .elementor-heading-title { border-left: 0; border-top: 1px solid rgba(232, 176, 86, .35); }
}

/* ---- Pie: móvil ---- */
@media (max-width: 767px) {
	footer.ast-custom-footer:has(.marcafooter) { --ft-b: 24px; padding: 48px 16px 84px !important; }
	footer.ast-custom-footer:has(.marcafooter)::after { background-size: 230px auto, 100% 2px, 100% 8px; }
	footer.ast-custom-footer:has(.marcafooter) > div::after { --mw: 36%; opacity: .45; }
	footer.ast-custom-footer:has(.marcafooter) .marcafooter > .e-con-inner { flex-direction: column !important; gap: 12px !important; }
	footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-image { display: flex; flex-direction: column; align-items: center; }
	footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-image img { height: 64px !important; }
	footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-image::after {
		position: static; right: auto; top: auto; bottom: auto;
		width: 90px; height: 2px; margin-top: 12px;
		background: linear-gradient(90deg, transparent, var(--dp-gold), transparent);
	}
	footer.ast-custom-footer:has(.marcafooter) .marcafooter .elementor-widget-heading .elementor-heading-title { text-align: center; }
	footer.ast-custom-footer:has(.marcafooter) .marcafooter::after { background-size: 66px auto, calc(50% - 43px) 1px, calc(50% - 43px) 1px; }
	footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-items { flex-direction: column; gap: 12px; }
	footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item > a { padding: 4px 0; justify-content: center; }
	footer.ast-custom-footer:has(.marcafooter) .politicasfoot .elementor-icon-list-item + .elementor-icon-list-item > a { border-left: 0; }
	footer.ast-custom-footer:has(.marcafooter) .redesfoot .elementor-icon-list-item > a { padding: 2px 16px; }
}
