/**
 * SEI Integra — Paleta negro mate + plata metalizada
 * Referencia: identidad visual SEI (tarjetas corporativas)
 */

/* --------------------------------------------------------------------------
   Design tokens
   -------------------------------------------------------------------------- */
:root {
	--sei-black: #0a0a0a;
	--sei-black-deep: #000000;
	--sei-black-soft: #111111;
	--sei-black-elevated: #161616;
	--sei-black-card: #1a1a1a;
	--sei-silver: #c0c0c0;
	--sei-silver-bright: #f0f0f0;
	--sei-silver-light: #e0e0e0;
	--sei-silver-mid: #a8a8a8;
	--sei-silver-dark: #707070;
	--sei-silver-muted: #8a8a8a;
	--sei-border: rgba(192, 192, 192, 0.18);
	--sei-border-strong: rgba(224, 224, 224, 0.35);
	--sei-glow: rgba(255, 255, 255, 0.22);
	--sei-glow-soft: rgba(255, 255, 255, 0.08);
	--sei-metal: linear-gradient(
		125deg,
		#5a5a5a 0%,
		#9a9a9a 18%,
		#e8e8e8 38%,
		#ffffff 50%,
		#c8c8c8 62%,
		#8a8a8a 82%,
		#5a5a5a 100%
	);
	--sei-metal-soft: linear-gradient(145deg, #8e8e8e, #e8e8e8, #9a9a9a);
	--sei-font: "Montserrat", "Inter", "Roboto", system-ui, -apple-system, sans-serif;
	--sei-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--sei-duration: 0.45s;
	--sei-header-h: 74px;
}

/* Override Elementor kit globals */
.elementor-kit-53,
body {
	--e-global-color-primary: #c8c8c8;
	--e-global-color-secondary: #1a1a1a;
	--e-global-color-text: #c8c8c8;
	--e-global-color-accent: #e8e8e8;
	--e-global-typography-primary-font-family: "Montserrat";
	--e-global-typography-secondary-font-family: "Montserrat";
	--e-global-typography-text-font-family: "Montserrat";
	--e-global-typography-accent-font-family: "Montserrat";
}

/* --------------------------------------------------------------------------
   Base
   -------------------------------------------------------------------------- */
html {
	background-color: var(--sei-black-deep);
}

body {
	background-color: var(--sei-black) !important;
	background-image:
		radial-gradient(ellipse 80% 50% at 50% -20%, rgba(192, 192, 192, 0.06), transparent 55%),
		radial-gradient(ellipse 60% 40% at 100% 100%, rgba(255, 255, 255, 0.03), transparent 50%);
	color: var(--sei-silver-light) !important;
	font-family: var(--sei-font);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: clip;
	max-width: 100%;
}

/* --------------------------------------------------------------------------
   Anti-overflow horizontal (móvil y desktop)
   Evita anchos Elementor (1140px), 100vw y widgets absolute fuera de viewport.
   -------------------------------------------------------------------------- */
html {
	overflow-x: clip;
	max-width: 100%;
}

html.lenis,
html.lenis body {
	overflow-x: clip;
}

.site,
#page,
#content,
.site-content,
.elementor,
.elementor-section-wrap,
.elementor-inner {
	max-width: 100%;
	overflow-x: clip;
}

img,
video,
iframe,
embed,
object,
svg {
	max-width: 100%;
	height: auto;
}

iframe {
	height: auto;
	max-width: 100%;
}

.e-con,
.e-con-inner,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap,
.elementor-widget,
.elementor-widget-container {
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 1024px) {
	.e-con,
	.e-con > .e-con-inner {
		--width: 100% !important;
		--content-width: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Evita que Elementor estire widgets al 100% de altura (solapes) */
	.e-con,
	.e-con-inner {
		--container-widget-height: initial !important;
		--container-widget-flex-grow: 0 !important;
	}

	.elementor-widget-heading,
	.elementor-widget-text-editor,
	.elementor-widget-button {
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		align-self: flex-start !important;
		flex-grow: 0 !important;
	}

	/* Widgets con posición absoluta de Elementor (suelen provocar scroll horizontal) */
	.elementor-absolute,
	.elementor-widget.elementor-absolute {
		position: relative !important;
		inset: auto !important;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		bottom: auto !important;
		transform: none !important;
		width: auto !important;
		max-width: 100% !important;
		margin-inline: 0 !important;
	}

	.elementor-widget-heading .elementor-heading-title,
	.elementor-widget-text-editor,
	.elementor-widget-text-editor p {
		overflow-wrap: break-word;
		word-wrap: break-word;
		max-width: 100%;
	}

	.elementor-widget-button,
	.elementor-button-wrapper,
	.elementor-button {
		max-width: 100% !important;
	}
}

@media (max-width: 767px) {
	body,
	html {
		overflow-x: clip !important;
		width: 100% !important;
	}

	.elementor-105,
	.elementor-location-header,
	.elementor-location-footer,
	main,
	#content {
		overflow-x: clip;
		max-width: 100vw;
	}
}

body::before {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	opacity: 0.035;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
	background-repeat: repeat;
	background-size: 180px 180px;
}

::selection {
	background: rgba(192, 192, 192, 0.35);
	color: #fff;
}

a {
	color: var(--sei-silver-light);
	transition: color var(--sei-duration) var(--sei-ease), opacity var(--sei-duration) var(--sei-ease);
}

a:hover,
a:focus {
	color: var(--sei-silver-bright);
}

/* --------------------------------------------------------------------------
   Surfaces — fuerza fondo oscuro sobre blancos/grises de Elementor
   -------------------------------------------------------------------------- */
.site,
#page,
#content,
.site-content,
.elementor,
.elementor-section,
.elementor-section-wrap,
.elementor-inner,
.elementor-container,
.e-con,
.e-con-inner,
.elementor-location-header,
.elementor-location-footer,
.elementor-location-single,
.page-content,
.entry-content,
.woocommerce,
.woocommerce-page,
.woocommerce-cart,
.woocommerce-checkout,
.woocommerce-account {
	background-color: transparent !important;
	color: var(--sei-silver-light);
}

/* Contenedores con fondo blanco/gris claro explícito (nunca el header) */
.elementor:not(.elementor-location-header) .elementor-element:not(.elementor-widget):not(.elementor-motion-effects-element-type-background),
.elementor:not(.elementor-location-header) .elementor-element > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: transparent !important;
}

/* Superficies elevadas (cards, popups, modales) */
.elementor-popup-modal .dialog-widget-content,
#elementor-popup-modal-55 .dialog-widget-content {
	background-color: var(--sei-black-card) !important;
	color: var(--sei-silver-light) !important;
	border-color: var(--sei-border) !important;
}

.dialog-widget-content,
.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single,
.select2-dropdown,
.widget,
.sidebar,
.mini_cart_item,
.elementor-menu-cart__container,
.elementor-menu-cart__main,
.wpr-data-fetch {
	background-color: var(--sei-black-card) !important;
	color: var(--sei-silver-light) !important;
	border-color: var(--sei-border) !important;
}

/* --------------------------------------------------------------------------
   Popup Elementor (Mundial / ID 55) — overrides en assets/css/sei-popup.css
   -------------------------------------------------------------------------- */
.elementor-location-popup {
	display: none !important;
	visibility: hidden !important;
}

/* --------------------------------------------------------------------------
   Tipografía
   -------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.elementor-icon-box-title,
.elementor-image-box-title,
.product_title,
.woocommerce-loop-product__title {
	color: var(--sei-silver-bright) !important;
	font-family: var(--sei-font) !important;
	letter-spacing: 0.06em;
	font-weight: 500;
}

.elementor-heading-title {
	color: var(--sei-silver-bright) !important;
	background-image: var(--sei-metal);
	background-size: 200% auto;
	-webkit-background-clip: text;
	background-clip: text;
}

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.elementor-heading-title {
		-webkit-text-fill-color: transparent;
		color: transparent !important;
	}
}

p,
li,
span,
td,
th,
label,
.elementor-icon-box-description,
.elementor-image-box-description,
.elementor-text-editor,
.woocommerce-Price-amount,
.woocommerce .woocommerce-result-count,
.woocommerce-info,
.woocommerce-message {
	color: var(--sei-silver-mid) !important;
}

/* Textos oscuros hardcodeados en Elementor */
.elementor-nav-menu--main .elementor-item,
.elementor-nav-menu--dropdown .elementor-item,
.elementor-nav-menu--dropdown .elementor-sub-item {
	color: var(--sei-silver-light) !important;
	fill: var(--sei-silver-light) !important;
}

/* --------------------------------------------------------------------------
   Header — barra fija profesional (sin conflicto visual al scroll)
   -------------------------------------------------------------------------- */
.elementor-location-header,
header.elementor-location-header,
.elementor.elementor-location-header,
.elementor-70.elementor-location-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 10000 !important;
	width: 100%;
	isolation: auto;
	overflow: visible !important;
	background-color: #0a0a0a !important;
	background-image: none !important;
	border-bottom: 1px solid rgba(192, 192, 192, 0.14);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.55);
	transition:
		background-color 0.35s var(--sei-ease),
		box-shadow 0.35s var(--sei-ease),
		border-color 0.35s var(--sei-ease);
}

/* Capa sólida detrás del menú: el body nunca se ve a través */
.elementor-location-header::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background: #0a0a0a;
	pointer-events: none;
}

.elementor-location-header > .elementor-section-wrap,
.elementor-location-header > .elementor-element,
.elementor-location-header .elementor-section,
.elementor-location-header .e-con,
.elementor-location-header .e-con-inner,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-element:not(.elementor-widget),
.elementor-70 .elementor-element-459f1a70,
.elementor-70 .elementor-element-459f1a70:not(.elementor-motion-effects-element-type-background),
.elementor-70 .elementor-element-459f1a70 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	position: relative;
	z-index: 1;
	background-color: #0a0a0a !important;
	background-image: none !important;
}

/* Contenedor sticky de Elementor */
.elementor-70 .elementor-element-459f1a70 {
	--z-index: 10000;
	z-index: 10000 !important;
	min-height: var(--sei-header-h);
	border-bottom: 1px solid rgba(192, 192, 192, 0.14) !important;
	box-shadow: 0 10px 32px rgba(0, 0, 0, 0.5);
	transition:
		background-color 0.35s var(--sei-ease),
		box-shadow 0.35s var(--sei-ease),
		border-color 0.35s var(--sei-ease),
		min-height 0.35s var(--sei-ease);
}

/* En el hero (arriba): ligero cristal, pero aún opaco para legibilidad.
   backdrop-filter SOLO en ::before — si va en el header, atrapa el side-cart
   (position:fixed queda relativo al header y se ve como una franja). */
body:not(.sei-scrolled) .elementor-location-header,
body:not(.sei-scrolled) .elementor-70 .elementor-element-459f1a70,
body:not(.sei-scrolled) .elementor-70 .elementor-element-459f1a70:not(.elementor-motion-effects-element-type-background),
body:not(.sei-scrolled) .elementor-location-header .e-con,
body:not(.sei-scrolled) .elementor-location-header .elementor-element:not(.elementor-widget) {
	background-color: rgba(8, 8, 8, 0.94) !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

body:not(.sei-scrolled) .elementor-location-header::before {
	background-color: rgba(8, 8, 8, 0.94) !important;
	backdrop-filter: blur(18px) saturate(160%);
	-webkit-backdrop-filter: blur(18px) saturate(160%);
}

/* Al hacer scroll: negro sólido, sombra y línea plata — cero solapamiento */
body.sei-scrolled .elementor-location-header,
body.sei-scrolled .elementor-location-header::before,
body.sei-scrolled .elementor-70 .elementor-element-459f1a70,
body.sei-scrolled .elementor-70 .elementor-element-459f1a70:not(.elementor-motion-effects-element-type-background),
body.sei-scrolled .elementor-70 .elementor-element-459f1a70 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
body.sei-scrolled .elementor-location-header .e-con,
body.sei-scrolled .elementor-location-header .e-con-inner,
body.sei-scrolled .elementor-location-header .elementor-element:not(.elementor-widget) {
	background-color: #000000 !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

body.sei-scrolled .elementor-location-header,
body.sei-scrolled .elementor-70 .elementor-element-459f1a70 {
	border-bottom-color: rgba(224, 224, 224, 0.28) !important;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.06),
		0 12px 40px rgba(0, 0, 0, 0.85);
}

/* Línea metalizada inferior del header */
.elementor-location-header::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	z-index: 2;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(160, 160, 160, 0.15) 15%,
		rgba(232, 232, 232, 0.55) 50%,
		rgba(160, 160, 160, 0.15) 85%,
		transparent 100%
	);
	opacity: 0.7;
	pointer-events: none;
	transition: opacity 0.35s var(--sei-ease);
}

body.sei-scrolled .elementor-location-header::after {
	opacity: 1;
}

/* Admin bar de WordPress */
body.admin-bar .elementor-location-header,
body.admin-bar .elementor-70 .elementor-element-459f1a70 {
	top: 32px !important;
}

@media screen and (max-width: 782px) {
	body.admin-bar .elementor-location-header,
	body.admin-bar .elementor-70 .elementor-element-459f1a70 {
		top: 46px !important;
	}
}

/* El contenido del sitio queda por debajo del header */
.elementor-location-header ~ *,
#content,
.site-content,
.elementor:not(.elementor-location-header):not(.elementor-location-popup) {
	position: relative;
	z-index: 1;
}

/* Evita que secciones del hero/body pinten encima del menú */
.elementor:not(.elementor-location-header):not(.elementor-location-popup) .elementor-element,
.elementor:not(.elementor-location-header):not(.elementor-location-popup) .e-con {
	z-index: auto;
}

/* Sticky nativo de Elementor (clases que aplica al fijarse) */
.elementor-sticky--active,
.elementor-sticky--effects,
.elementor-sticky--active.elementor-element,
.elementor-sticky--active.e-con,
.elementor-sticky--active:not(.elementor-motion-effects-element-type-background),
.elementor-sticky--active > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #000000 !important;
	background-image: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border-bottom: 1px solid rgba(224, 224, 224, 0.28) !important;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.06),
		0 12px 40px rgba(0, 0, 0, 0.85) !important;
	z-index: 10000 !important;
}

/* Menú y logo siempre legibles sobre el fondo del header */
.elementor-location-header .elementor-nav-menu--main .elementor-item,
.elementor-location-header .elementor-menu-toggle,
.elementor-location-header a {
	text-shadow: none;
}

.elementor-location-header .elementor-nav-menu--dropdown {
	z-index: 10001 !important;
	background-color: #0a0a0a !important;
	border: 1px solid rgba(192, 192, 192, 0.22) !important;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.75);
}

/* Compacta un poco el header al scrollear (más pro) */
body.sei-scrolled .elementor-70 .elementor-element-459f1a70 {
	min-height: 64px;
}

/* Logo SEI Integra — metalizado transparente */
.elementor-location-header .elementor-widget-theme-site-logo img,
.elementor-location-header img.custom-logo,
.elementor-location-header img.sei-logo,
.elementor-70 .elementor-element-613621da img,
.custom-logo-link img,
img.sei-logo,
img.custom-logo {
	width: auto !important;
	height: 58px !important;
	max-width: 220px !important;
	max-height: 58px !important;
	object-fit: contain !important;
	object-position: left center !important;
	filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.45));
	transition: filter var(--sei-duration) var(--sei-ease), transform var(--sei-duration) var(--sei-ease), max-height var(--sei-duration) var(--sei-ease);
}

.elementor-location-header .elementor-widget-theme-site-logo img:hover,
.elementor-location-header img.sei-logo:hover,
.custom-logo-link img:hover {
	filter: drop-shadow(0 0 14px rgba(255, 255, 255, 0.35)) drop-shadow(0 2px 10px rgba(0, 0, 0, 0.45));
	transform: scale(1.02);
}

/* Footer / otras ubicaciones del logo */
.elementor-location-footer img.sei-logo,
.elementor-location-footer .elementor-widget-theme-site-logo img,
.elementor-location-footer .elementor-widget-image img.sei-logo,
.elementor-location-footer img[src*="sei-integra-logo"] {
	width: auto !important;
	height: auto !important;
	max-width: 220px !important;
	max-height: 110px !important;
	object-fit: contain !important;
	filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.4));
}

body.sei-scrolled .elementor-location-header img.sei-logo,
body.sei-scrolled .elementor-location-header .elementor-widget-theme-site-logo img,
body.sei-scrolled .elementor-70 .elementor-element-613621da img {
	height: 46px !important;
	max-height: 46px !important;
	max-width: 180px !important;
}

@media (max-width: 767px) {
	.elementor-location-header .elementor-widget-theme-site-logo img,
	.elementor-location-header img.sei-logo,
	.elementor-70 .elementor-element-613621da img {
		height: 42px !important;
		max-height: 42px !important;
		max-width: 140px !important;
	}
}

/* ==========================================================================
   Header móvil — una fila moderna (logo | acciones)
   ========================================================================== */
@media (max-width: 767px) {
	html {
		scroll-behavior: auto !important;
		overscroll-behavior-y: none;
	}

	body {
		padding-top: var(--sei-header-h, 60px);
		background-image: none !important;
		overscroll-behavior-y: none;
	}

	body.admin-bar {
		padding-top: calc(46px + var(--sei-header-h, 60px));
	}

	body::before {
		display: none !important;
	}

	.elementor-location-header,
	.elementor-70.elementor-location-header {
		--sei-header-h: 60px;
	}

	/* Fixed en lugar de sticky: evita parpadeo/repintado en iOS y Android.
	   Sin transform: un transform en el header convierte el side-cart fixed
	   en relativo al header y lo recorta a ~60–74px. */
	.elementor-location-header,
	header.elementor-location-header,
	.elementor.elementor-location-header,
	.elementor-70.elementor-location-header {
		position: fixed !important;
		left: 0;
		right: 0;
		width: 100%;
		isolation: auto;
		-webkit-transform: none;
		transform: none;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}

	/* Fila única: logo izquierda, iconos derecha */
	.elementor-70 .elementor-element-459f1a70 {
		--display: flex !important;
		--flex-direction: row !important;
		--flex-wrap: nowrap !important;
		--flex-wrap-mobile: nowrap !important;
		--justify-content: space-between !important;
		--align-items: center !important;
		--gap: 0 8px !important;
		--row-gap: 0 !important;
		--column-gap: 8px !important;
		--min-height: 60px !important;
		--padding-top: 0 !important;
		--padding-bottom: 0 !important;
		--padding-left: 14px !important;
		--padding-right: 12px !important;
		min-height: 60px !important;
		padding: 0 12px 0 14px !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
	}

	.elementor-location-header .e-con-inner,
	.elementor-70 .elementor-element-459f1a70.e-con {
		flex-wrap: nowrap !important;
	}

	/* Sin cajas / bordes anticuados */
	.elementor-location-header .elementor-widget,
	.elementor-location-header .elementor-widget-container,
	.elementor-location-header .elementor-menu-toggle,
	.elementor-location-header .elementor-button,
	.elementor-location-header .wpr-search-form-input,
	.elementor-location-header .wpr-search-form-submit,
	.elementor-location-header .elementor-menu-cart__toggle,
	.elementor-location-header .elementor-menu-cart__toggle .elementor-button {
		border: none !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
		outline: none !important;
	}

	/* Orden: logo · (flex) · buscar · carrito · menú */
	.elementor-70 .elementor-element-613621da {
		order: 1 !important;
		--order: 1 !important;
		flex: 0 0 auto !important;
		--flex-grow: 0 !important;
		margin-right: auto !important;
	}

	.elementor-70 .elementor-element-a987112 {
		order: 2 !important;
		--order: 2 !important;
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
	}

	.elementor-70 .elementor-element-b766024 {
		order: 3 !important;
		--order: 3 !important;
		flex: 0 0 auto !important;
	}

	.elementor-70 .elementor-element-1d90c4a3 {
		order: 4 !important;
		--order: 4 !important;
		flex: 0 0 auto !important;
	}

	/* Botones icono táctiles */
	.elementor-location-header .elementor-menu-toggle,
	.elementor-location-header .wpr-search-form-submit,
	.elementor-location-header .elementor-menu-cart__toggle .elementor-button {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 42px !important;
		height: 42px !important;
		min-width: 42px !important;
		padding: 0 !important;
		margin: 0 !important;
		border-radius: 50% !important;
		color: var(--sei-silver-light) !important;
		transition:
			background-color 0.3s var(--sei-ease),
			box-shadow 0.3s var(--sei-ease),
			transform 0.3s var(--sei-ease),
			color 0.3s var(--sei-ease) !important;
	}

	.elementor-location-header .elementor-menu-toggle:active,
	.elementor-location-header .wpr-search-form-submit:active,
	.elementor-location-header .elementor-menu-cart__toggle .elementor-button:active {
		transform: scale(0.92);
		background: rgba(255, 255, 255, 0.08) !important;
	}

	.elementor-location-header .elementor-menu-toggle svg,
	.elementor-location-header .wpr-search-form-submit svg,
	.elementor-location-header .elementor-menu-cart__toggle svg {
		width: 20px !important;
		height: 20px !important;
		fill: currentColor !important;
	}

	/* Búsqueda colapsada: solo icono */
	.elementor-location-header .elementor-element-a987112 .elementor-widget-container,
	.elementor-location-header .elementor-element-a987112 form,
	.elementor-location-header .elementor-element-a987112 .wpr-search-form {
		display: flex !important;
		align-items: center !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 0 !important;
		background: transparent !important;
		border: none !important;
	}

	.elementor-location-header .wpr-search-form-input,
	.elementor-location-header .wpr-category-select-wrap,
	.elementor-location-header .wpr-category-select {
		display: none !important;
		width: 0 !important;
		min-width: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		opacity: 0;
		border: none !important;
	}

	.elementor-location-header .wpr-search-form-submit {
		font-size: 0 !important;
		line-height: 0 !important;
		color: transparent !important;
		position: relative;
	}

	/* Icono lupa vía CSS si el botón no trae SVG visible */
	.elementor-location-header .wpr-search-form-submit::before {
		content: "";
		position: absolute;
		inset: 0;
		margin: auto;
		width: 18px;
		height: 18px;
		background: no-repeat center / contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23e0e0e0' stroke-width='1.8'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3-3' stroke-linecap='round'/%3E%3C/svg%3E");
		pointer-events: none;
	}

	/* Panel de búsqueda expandido (experiencia única) */
	body.sei-search-open .elementor-location-header .elementor-element-a987112 {
		position: absolute !important;
		left: 12px !important;
		right: 12px !important;
		top: calc(100% + 8px) !important;
		z-index: 10002 !important;
		width: auto !important;
		animation: sei-search-in 0.35s var(--sei-ease) both;
	}

	body.sei-search-open .elementor-location-header .elementor-element-a987112 .elementor-widget-container,
	body.sei-search-open .elementor-location-header .elementor-element-a987112 form,
	body.sei-search-open .elementor-location-header .elementor-element-a987112 .wpr-search-form {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		padding: 8px 10px 8px 16px !important;
		border-radius: 999px !important;
		background: rgba(12, 12, 12, 0.96) !important;
		border: 1px solid rgba(224, 224, 224, 0.28) !important;
		box-shadow:
			0 0 0 1px rgba(255, 255, 255, 0.04),
			0 16px 40px rgba(0, 0, 0, 0.55) !important;
		backdrop-filter: blur(16px);
		-webkit-backdrop-filter: blur(16px);
	}

	body.sei-search-open .elementor-location-header .wpr-search-form-input {
		display: block !important;
		flex: 1 1 auto !important;
		width: auto !important;
		min-width: 0 !important;
		height: 40px !important;
		padding: 0 4px !important;
		margin: 0 !important;
		opacity: 1 !important;
		background: transparent !important;
		border: none !important;
		border-radius: 0 !important;
		color: var(--sei-silver-bright) !important;
		font-size: 0.95rem !important;
		letter-spacing: 0.04em;
	}

	body.sei-search-open .elementor-location-header .wpr-search-form-input::placeholder {
		color: var(--sei-silver-dark) !important;
	}

	body.sei-search-open .elementor-location-header .wpr-search-form-submit {
		background: var(--sei-metal) !important;
		background-size: 200% auto !important;
		border-radius: 50% !important;
	}

	body.sei-search-open .elementor-location-header .wpr-search-form-submit::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%230a0a0a' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3-3' stroke-linecap='round'/%3E%3C/svg%3E");
	}

	/* Carrito: sin badge cuando está vacío */
	.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
	.elementor-location-header .elementor-menu-cart__toggle .elementor-button-text {
		color: var(--sei-silver-light) !important;
	}

	.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon-qty,
	.elementor-menu-cart__toggle .elementor-button-icon-qty {
		display: none !important;
	}

	.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon-qty[data-counter]:not([data-counter="0"]),
	.elementor-menu-cart__toggle .elementor-button-icon-qty[data-counter]:not([data-counter="0"]) {
		display: flex !important;
		align-items: center;
		justify-content: center;
		position: absolute !important;
		top: 2px !important;
		right: 2px !important;
		min-width: 17px !important;
		height: 17px !important;
		padding: 0 4px !important;
		border-radius: 999px !important;
		background: linear-gradient(145deg, #f0f0f0, #a8a8a8) !important;
		color: #0a0a0a !important;
		font-size: 9px !important;
		font-weight: 600 !important;
		line-height: 1 !important;
		border: 1px solid rgba(255, 255, 255, 0.35) !important;
		box-shadow: 0 0 12px rgba(255, 255, 255, 0.25);
	}

	/* Barra del header siempre por encima del menú */
	.elementor-70 .elementor-element-459f1a70 {
		position: relative !important;
		z-index: 10005 !important;
	}

	.elementor-location-header .elementor-menu-toggle {
		position: relative;
		z-index: 10006 !important;
	}

	body.sei-nav-open .elementor-location-header .elementor-menu-toggle,
	.elementor-location-header .elementor-menu-toggle.elementor-active {
		background: rgba(255, 255, 255, 0.1) !important;
		box-shadow: 0 0 18px rgba(255, 255, 255, 0.12);
	}

	/*
	 * Menú móvil: overlay SOLO en el nav principal (no en ul.sub-menu anidados).
	 */
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100vw !important;
		max-width: 100vw !important;
		height: 100dvh !important;
		min-height: 100vh !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 72px 24px 40px !important;
		border: none !important;
		border-radius: 0 !important;
		background:
			radial-gradient(ellipse 90% 45% at 50% 0%, rgba(200, 200, 200, 0.14), transparent 55%),
			#080808 !important;
		box-shadow: none !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		transform: none !important;
		transform-origin: top !important;
		z-index: 10004 !important;
	}

	.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active) + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
		max-height: 0 !important;
		overflow: hidden !important;
	}

	.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
	body.sei-nav-open .elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		max-height: none !important;
	}

	/* Submenús dentro del overlay: lista indentada, NO pantalla completa */
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul.sub-menu,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul.sub-menu.elementor-nav-menu--dropdown {
		position: static !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		bottom: auto !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 0 0 0 14px !important;
		border: none !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
		overflow: visible !important;
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		z-index: auto !important;
	}

	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container > .elementor-nav-menu {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu li {
		display: list-item !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a {
		display: block !important;
		width: 100% !important;
		padding: 18px 6px !important;
		margin: 0 !important;
		font-family: var(--sei-font) !important;
		font-size: 1.25rem !important;
		font-weight: 300 !important;
		letter-spacing: 0.16em !important;
		text-transform: uppercase !important;
		text-align: left !important;
		line-height: 1.3 !important;
		color: #e8e8e8 !important;
		-webkit-text-fill-color: #e8e8e8 !important;
		fill: #e8e8e8 !important;
		background: transparent !important;
		background-image: none !important;
		border: none !important;
		border-bottom: 1px solid rgba(192, 192, 192, 0.16) !important;
		border-radius: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		text-shadow: none !important;
	}

	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item:hover,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item:focus,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.elementor-item-active,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a:hover,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a:focus {
		color: #ffffff !important;
		-webkit-text-fill-color: #ffffff !important;
		background: transparent !important;
		padding-left: 12px !important;
	}

	/* Evitar que estilos globales de heading metalizado borren el texto del menú */
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item,
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a {
		background-clip: border-box !important;
		-webkit-background-clip: border-box !important;
	}

	/* Sub-items ligeramente más pequeños */
	.elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item {
		font-size: 1rem !important;
		padding: 12px 6px !important;
		letter-spacing: 0.1em !important;
	}

	body.sei-nav-open,
	body.elementor-menu-open {
		overflow: hidden !important;
	}

	/* Móvil: header sólido fijo — sin backdrop-filter (evita parpadeo al scroll) */
	body:not(.sei-scrolled) .elementor-location-header,
	body:not(.sei-scrolled) .elementor-location-header::before,
	body:not(.sei-scrolled) .elementor-70 .elementor-element-459f1a70,
	body:not(.sei-scrolled) .elementor-70 .elementor-element-459f1a70:not(.elementor-motion-effects-element-type-background),
	body:not(.sei-scrolled) .elementor-location-header .e-con,
	body:not(.sei-scrolled) .elementor-location-header .elementor-element:not(.elementor-widget),
	body.sei-scrolled .elementor-location-header,
	body.sei-scrolled .elementor-location-header::before,
	body.sei-scrolled .elementor-70 .elementor-element-459f1a70,
	body.sei-scrolled .elementor-70 .elementor-element-459f1a70:not(.elementor-motion-effects-element-type-background),
	body.sei-scrolled .elementor-location-header .e-con,
	body.sei-scrolled .elementor-location-header .e-con-inner,
	body.sei-scrolled .elementor-location-header .elementor-element:not(.elementor-widget) {
		background-color: #0a0a0a !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	.elementor-location-header,
	.elementor-location-header::before,
	.elementor-70 .elementor-element-459f1a70 {
		transition: none !important;
	}

	body.sei-scrolled .elementor-70 .elementor-element-459f1a70 {
		min-height: 60px !important;
	}

	/* Sin cambios visuales al scroll (clase sei-scrolled no se usa en móvil) */
	body.sei-scrolled .elementor-location-header,
	body:not(.sei-scrolled) .elementor-location-header,
	body.sei-scrolled .elementor-70 .elementor-element-459f1a70,
	body:not(.sei-scrolled) .elementor-70 .elementor-element-459f1a70 {
		box-shadow: 0 8px 28px rgba(0, 0, 0, 0.55) !important;
		border-bottom-color: rgba(192, 192, 192, 0.14) !important;
	}

	body.sei-scrolled .elementor-location-header::after,
	body:not(.sei-scrolled) .elementor-location-header::after {
		opacity: 0.7 !important;
		transition: none !important;
	}

	body.sei-scrolled .elementor-location-header img.sei-logo,
	body.sei-scrolled .elementor-location-header .elementor-widget-theme-site-logo img,
	body.sei-scrolled .elementor-70 .elementor-element-613621da img {
		height: 38px !important;
		max-height: 38px !important;
		max-width: 130px !important;
	}

	.elementor-sticky--active,
	.elementor-sticky--effects {
		position: fixed !important;
		transform: none !important;
	}

	.elementor-motion-effects-container,
	.elementor-motion-effects-layer {
		transform: none !important;
		opacity: 1 !important;
		filter: none !important;
	}
}

@keyframes sei-search-in {
	from {
		opacity: 0;
		transform: translateY(-10px) scale(0.98);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
	body.sei-search-open .elementor-location-header .elementor-element-a987112 {
		animation: none !important;
		transition: none !important;
	}
}

/* Carrito desktop/móvil: ocultar contador en 0 */
.elementor-menu-cart__toggle .elementor-button-icon-qty[data-counter="0"] {
	display: none !important;
}

/* Menú */
.elementor-nav-menu--main .elementor-item {
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-size: 0.78rem !important;
	font-weight: 400 !important;
	position: relative;
	transition: color var(--sei-duration) var(--sei-ease), text-shadow var(--sei-duration) var(--sei-ease);
}

.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-nav-menu--main .elementor-item.highlighted,
.elementor-nav-menu--main .elementor-item:focus {
	color: var(--sei-silver-bright) !important;
	fill: var(--sei-silver-bright) !important;
	text-shadow: 0 0 18px var(--sei-glow);
}

.elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
.elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after,
.elementor-nav-menu--main .e--pointer-underline .elementor-item:after,
.elementor-nav-menu--main .e--pointer-overline .elementor-item:before {
	background-color: var(--sei-silver-light) !important;
	height: 1px !important;
}

.elementor-nav-menu--dropdown {
	background-color: var(--sei-black-card) !important;
	border: 1px solid var(--sei-border) !important;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.55);
}

.elementor-nav-menu--dropdown a:hover,
.elementor-nav-menu--dropdown a.elementor-item-active,
.elementor-nav-menu--dropdown a.highlighted {
	background-color: var(--sei-black-elevated) !important;
	color: var(--sei-silver-bright) !important;
}

.elementor-menu-toggle,
.elementor-menu-toggle svg {
	color: var(--sei-silver-light) !important;
	fill: var(--sei-silver-light) !important;
}

/* --------------------------------------------------------------------------
   Botones — borde plata + shimmer
   -------------------------------------------------------------------------- */
.elementor-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.button,
button[type="submit"],
input[type="submit"] {
	position: relative;
	overflow: hidden;
	background: transparent !important;
	background-image: none !important;
	color: var(--sei-silver-bright) !important;
	border: 1px solid var(--sei-border-strong) !important;
	border-radius: 2px !important;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 500 !important;
	font-size: 0.78rem !important;
	padding: 14px 28px !important;
	box-shadow: inset 0 0 0 0 rgba(255, 255, 255, 0.08), 0 0 0 rgba(255, 255, 255, 0);
	transition:
		color var(--sei-duration) var(--sei-ease),
		border-color var(--sei-duration) var(--sei-ease),
		box-shadow var(--sei-duration) var(--sei-ease),
		transform var(--sei-duration) var(--sei-ease),
		background var(--sei-duration) var(--sei-ease) !important;
}

.elementor-button::before,
.woocommerce a.button::before,
.woocommerce button.button::before,
.button::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		110deg,
		transparent 20%,
		rgba(255, 255, 255, 0.18) 45%,
		rgba(255, 255, 255, 0.35) 50%,
		rgba(255, 255, 255, 0.18) 55%,
		transparent 80%
	);
	transform: translateX(-120%);
	transition: transform 0.7s var(--sei-ease);
	pointer-events: none;
}

.elementor-button:hover,
.elementor-button:focus,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.button:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
	color: var(--sei-black) !important;
	border-color: var(--sei-silver-bright) !important;
	background: var(--sei-metal) !important;
	background-size: 200% auto !important;
	box-shadow: 0 0 24px var(--sei-glow), 0 0 2px var(--sei-silver-bright);
	transform: translateY(-1px);
}

.elementor-button:hover::before,
.woocommerce a.button:hover::before,
.woocommerce button.button:hover::before,
.button:hover::before {
	transform: translateX(120%);
}

.elementor-button-link .elementor-button-content-wrapper,
.elementor-button .elementor-button-text {
	position: relative;
	z-index: 1;
}

/* --------------------------------------------------------------------------
   Iconos y cajas
   -------------------------------------------------------------------------- */
.elementor-icon,
.elementor-icon-box-icon .elementor-icon,
.elementor-view-stacked .elementor-icon {
	color: var(--sei-silver-light) !important;
	fill: var(--sei-silver-light) !important;
	border-color: var(--sei-border) !important;
	background-color: transparent !important;
	transition: color var(--sei-duration) var(--sei-ease), filter var(--sei-duration) var(--sei-ease), transform var(--sei-duration) var(--sei-ease);
}

.elementor-icon-box:hover .elementor-icon,
.elementor-icon-box:hover .elementor-icon-box-title {
	filter: drop-shadow(0 0 10px var(--sei-glow));
}

.elementor-icon-box-wrapper,
.elementor-image-box-wrapper {
	transition: transform var(--sei-duration) var(--sei-ease), border-color var(--sei-duration) var(--sei-ease);
}

/* Divisores finos plata */
.elementor-divider-separator,
hr {
	border-color: var(--sei-border) !important;
	background-color: var(--sei-border) !important;
}

.elementor-widget-divider .elementor-divider-separator {
	border-top-color: var(--sei-border-strong) !important;
}

/* --------------------------------------------------------------------------
   Formularios y búsqueda
   -------------------------------------------------------------------------- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
textarea,
select,
.wpr-search-form-input,
.elementor-field-textual {
	background-color: var(--sei-black-elevated) !important;
	color: var(--sei-silver-light) !important;
	border: 1px solid var(--sei-border) !important;
	border-radius: 2px !important;
	transition: border-color var(--sei-duration) var(--sei-ease), box-shadow var(--sei-duration) var(--sei-ease);
}

input::placeholder,
textarea::placeholder,
.wpr-search-form-input::placeholder {
	color: var(--sei-silver-dark) !important;
}

input:focus,
textarea:focus,
select:focus,
.wpr-search-form-input:focus {
	border-color: var(--sei-silver-mid) !important;
	box-shadow: 0 0 0 1px rgba(192, 192, 192, 0.25), 0 0 16px var(--sei-glow-soft) !important;
	outline: none;
}

.wpr-search-form-submit {
	background: transparent !important;
	color: var(--sei-silver-light) !important;
	border-color: var(--sei-border-strong) !important;
}

.wpr-search-form-submit:hover {
	background: var(--sei-metal) !important;
	color: var(--sei-black) !important;
}

/* --------------------------------------------------------------------------
   WooCommerce
   -------------------------------------------------------------------------- */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce div.product div.images,
.woocommerce div.product .summary {
	background-color: var(--sei-black-elevated);
	border: 1px solid var(--sei-border);
	border-radius: 4px;
	transition: border-color var(--sei-duration) var(--sei-ease), box-shadow var(--sei-duration) var(--sei-ease), transform var(--sei-duration) var(--sei-ease);
}

.woocommerce ul.products li.product:hover {
	border-color: var(--sei-border-strong);
	box-shadow: 0 0 28px var(--sei-glow-soft);
	transform: translateY(-4px);
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--sei-silver-bright) !important;
}

.woocommerce span.onsale {
	background: var(--sei-metal) !important;
	color: var(--sei-black) !important;
}

.woocommerce-tabs ul.tabs li a,
.woocommerce-Tabs-panel,
.woocommerce table.shop_table,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.cart_totals,
.woocommerce-checkout-review-order {
	color: var(--sei-silver-light) !important;
	background-color: var(--sei-black-elevated) !important;
	border-color: var(--sei-border) !important;
}

.woocommerce-checkout #payment {
	background: var(--sei-black-card) !important;
	border: 1px solid var(--sei-border);
}

.woocommerce-MyAccount-navigation ul li a {
	color: var(--sei-silver-mid) !important;
	border-color: var(--sei-border) !important;
}

.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover {
	color: var(--sei-silver-bright) !important;
	background: var(--sei-black-elevated) !important;
}

.elementor-menu-cart__toggle .elementor-button {
	background: transparent !important;
	color: var(--sei-silver-light) !important;
}

.elementor-menu-cart__product-name a,
.elementor-menu-cart__product-price {
	color: var(--sei-silver-light) !important;
}

/* --------------------------------------------------------------------------
   Footer — ver assets/css/sei-footer.css (Etapa 8)
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   Contacto — una sola imagen (sin fondo viejo de Elementor)
   -------------------------------------------------------------------------- */

/* Quita imágenes de fondo del contenedor (foto antigua detrás del logo SEI). */
body.page-id-73 #content .e-con,
body.page-id-73 #content .elementor-element:not(.elementor-widget),
body.page-id-73 #content .elementor-element > .elementor-motion-effects-container > .elementor-motion-effects-layer,
body.page-id-73 .elementor-widget-image,
body.page-id-73 .elementor-widget-image > .elementor-widget-container,
body.page-id-73 .elementor-element-4fc7466,
body.page-id-73 .elementor-element-4fc7466 > .elementor-widget-container,
.elementor-page-73 #content .e-con,
.elementor-page-73 #content .elementor-element:not(.elementor-widget),
.elementor-page-73 #content .elementor-element > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: none !important;
	background-color: transparent !important;
}

/* La imagen visible (logo SEI / foto de la sección) */
body.page-id-73 #content .elementor-widget-image img,
body.page-id-73 img.sei-contact-photo,
body.page-id-73 img[src*="contacto-soporte-tecnologico"],
body.page-id-73 img[src*="contacto-asesoria"],
body.page-id-73 img[src*="sei-integra-logo"] {
	border-radius: 24px !important;
	object-fit: contain !important;
	object-position: center center !important;
	width: 100% !important;
	height: auto !important;
	max-height: 520px;
	background-color: #0a0a0a !important;
	box-shadow:
		0 0 0 1px rgba(192, 192, 192, 0.18),
		0 18px 48px rgba(0, 0, 0, 0.45);
	filter: none;
}

body.page-id-73 img[src*="sei-integra-logo"] {
	background-color: transparent !important;
	box-shadow: none !important;
	filter: drop-shadow(0 4px 20px rgba(0, 0, 0, 0.5));
}

@media (max-width: 767px) {
	body.page-id-73 #content .elementor-widget-image img,
	body.page-id-73 img.sei-contact-photo,
	body.page-id-73 img[src*="sei-integra-logo"] {
		max-height: 360px;
		border-radius: 18px !important;
	}
}

/* Textos y fondos claros/azules típicos del kit anterior */
.elementor-element[style*="background-color: #fff"],
.elementor-element[style*="background-color:#fff"],
.elementor-element[style*="background-color: #FFF"],
.elementor-element[style*="background-color: #ffffff"],
.elementor-element[style*="background-color:#ffffff"],
.elementor-element[style*="background-color: #FFFFFF"],
.elementor-element[style*="background-color:#FFFFFF"] {
	background-color: var(--sei-black-elevated) !important;
}

/* Enlaces y acentos azules del diseño anterior */
a[style*="color: #1F45A8"],
a[style*="color:#1F45A8"],
span[style*="color: #1F45A8"],
span[style*="color:#1F45A8"],
.elementor-element[style*="color: #1F45A8"],
.elementor-element[style*="color:#1F45A8"],
.elementor-element[style*="color: #4F6EDB"],
.elementor-element[style*="color:#4F6EDB"],
.elementor-element[style*="color: #0F172A"],
.elementor-element[style*="color:#0F172A"],
.elementor-element[style*="color: #324A6D"],
.elementor-element[style*="color:#324A6D"] {
	color: var(--sei-silver-light) !important;
}

/* Sombras suaves plateadas en lugar de azules */
.elementor-element {
	--e-box-shadow-color: rgba(255, 255, 255, 0.08);
}

/* --------------------------------------------------------------------------
   Scrollbar
   -------------------------------------------------------------------------- */
* {
	scrollbar-width: thin;
	scrollbar-color: var(--sei-silver-dark) var(--sei-black-deep);
}

*::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

*::-webkit-scrollbar-track {
	background: var(--sei-black-deep);
}

*::-webkit-scrollbar-thumb {
	background: var(--sei-silver-dark);
	border-radius: 4px;
}

*::-webkit-scrollbar-thumb:hover {
	background: var(--sei-silver-mid);
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.elementor-nav-menu--main .elementor-item {
		letter-spacing: 0.08em;
		font-size: 0.72rem !important;
	}
}

@media (max-width: 767px) {
	.elementor-button,
	.woocommerce a.button,
	.woocommerce button.button,
	.button {
		padding: 12px 20px !important;
		letter-spacing: 0.12em;
		font-size: 0.72rem !important;
	}

	h1, .elementor-heading-title {
		letter-spacing: 0.04em;
	}

	.woocommerce ul.products li.product:hover {
		transform: none;
	}
}

/* Accesibilidad: foco visible */
:focus-visible {
	outline: 1px solid var(--sei-silver-mid);
	outline-offset: 3px;
}

/* Admin bar no se ve afectado por el ruido */
body.admin-bar::before {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar::before {
		top: 46px;
	}
}
