/* --------------------------------------------------------------------------
   Header flotante (desktop + mobile)
   -------------------------------------------------------------------------- */
body,
#wrapper,
.site-content {
	background: var(--insu-color-surface-soft) !important;
}

#header.site-header {
	z-index: 9500;
}

#header.site-header::after {
	display: none !important;
}

#header.site-header .logolink .logoimg.bg--light {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

#header.site-header .logolink .logoimg.bg--dark,
#header.site-header .logolink .logoimg.bg--alt {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

form.woocommerce-product-search .autocomplete-wrapper .product_list_widget,
form.woocommerce-product-search .autocomplete-wrapper .results-found,
form.woocommerce-product-search .autocomplete-wrapper .autocomplete-no-suggestion {
	display: none !important;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper {
	margin-top: 10px;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 !important;
	padding: 0 !important;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview[hidden] {
	display: none !important;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__status {
	margin: 0 !important;
	font-family: var(--insu-font-heading);
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 1.3;
	color: rgba(1, 15, 108, 0.66);
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__items {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
	margin: 0;
	padding: 0;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__item {
	display: grid !important;
	grid-template-columns: 56px minmax(0, 1fr);
	align-items: center;
	gap: 10px;
	padding: 8px 10px;
	border: 1px solid rgba(1, 15, 108, 0.14);
	border-radius: 10px;
	background: #ffffff;
	text-decoration: none !important;
	transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__item:hover,
form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__item.is-active,
form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__item:focus-visible {
	border-color: rgba(164, 44, 23, 0.34);
	box-shadow: 0 8px 18px rgba(1, 15, 108, 0.11);
	transform: translateY(-1px);
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__thumb-wrap {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border: 1px solid rgba(1, 15, 108, 0.12);
	border-radius: 10px;
	background: #ffffff;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__thumb {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 6px;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__title {
	margin: 0 !important;
	font-family: var(--insu-font-heading);
	font-size: 0.9rem;
	line-height: 1.25;
	color: var(--insu-color-ink);
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__more {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	align-self: flex-start;
	padding: 0 20px !important;
	border: 1px solid #8f2614 !important;
	border-radius: 999px;
	font-family: var(--insu-font-heading);
	font-size: 0.9rem;
	font-weight: 700;
	color: #ffffff !important;
	background: linear-gradient(135deg, #a42c17 0%, #c44821 100%) !important;
	opacity: 1 !important;
	box-shadow: 0 10px 20px rgba(164, 44, 23, 0.24);
	text-decoration: none !important;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.16);
	-webkit-text-fill-color: #ffffff !important;
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__more:hover,
form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__more.is-active,
form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__more:focus-visible {
	color: #ffffff !important;
	background: linear-gradient(135deg, #8f2614 0%, #b43f1d 100%) !important;
	box-shadow: 0 12px 24px rgba(164, 44, 23, 0.28);
}

form.woocommerce-product-search.insu-search-v2 .autocomplete-wrapper .insu-search-preview__more[hidden] {
	display: none !important;
}

/* --------------------------------------------------------------------------
   Carrito catalogo: iconos header + acciones catalogo/ficha
   -------------------------------------------------------------------------- */
#header.site-header .insu-cart-trigger {
	position: relative;
	margin-left: 10px;
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(1, 15, 108, 0.2);
	border-radius: 999px;
	color: var(--insu-color-brand-blue);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.82) 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

#header.site-header .insu-cart-trigger:hover,
#header.site-header .insu-cart-trigger:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(164, 44, 23, 0.32);
	color: var(--insu-color-accent);
	background: linear-gradient(180deg, #ffffff 0%, var(--insu-color-accent-soft) 100%);
	box-shadow: 0 8px 18px rgba(1, 15, 108, 0.16);
}

#header.site-header .insu-cart-trigger__icon {
	display: inline-flex;
	width: 18px;
	height: 18px;
}

#header.site-header .insu-cart-trigger__icon svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

#header.site-header .insu-cart-count {
	position: absolute;
	top: -4px;
	right: -4px;
	min-width: 17px;
	height: 17px;
	padding: 0 4px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: var(--insu-color-brand-red);
	color: #ffffff;
	font-family: var(--insu-font-heading);
	font-size: 0.67rem;
	font-weight: 700;
	line-height: 1;
}

#header.site-header .mobile-header-icons {
	display: flex;
	align-items: center;
	gap: 8px;
}

#header.site-header .mobile-header-icons .insu-cart-trigger {
	margin-left: 0;
}

.insu-cart-live-region {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.shop-container li.product .actions-wrapper {
	display: flex;
	justify-content: flex-end;
}

.shop-container li.product .product_thumbnail {
	position: relative;
}

.insu-cart-add {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border: 1px solid rgba(1, 15, 108, 0.2);
	border-radius: 999px;
	background: #ffffff;
	color: var(--insu-color-brand-blue);
	transition: border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.insu-cart-add svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.insu-cart-add:hover,
.insu-cart-add:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(164, 44, 23, 0.34);
	color: var(--insu-color-brand-red);
	box-shadow: 0 8px 18px rgba(1, 15, 108, 0.12);
}

.insu-cart-add--catalog {
	width: 36px;
	height: 36px;
	padding: 0;
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 6;
	box-shadow: 0 8px 18px rgba(1, 15, 108, 0.14);
}

.shop-container li.product .product_thumbnail .insu-cart-add--catalog {
	display: inline-flex !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	z-index: 14 !important;
}

.single-product .insu-cart-add-row {
	margin: 0 0 10px !important;
}

.single-product .insu-cart-add--single {
	min-height: 42px;
	padding: 10px 16px;
	font-family: var(--insu-font-heading);
	font-size: 0.88rem;
	font-weight: 600;
}

.single-product .insu-cart-add--single .insu-cart-add__icon {
	display: inline-flex;
	width: 16px;
	height: 16px;
}

/* --------------------------------------------------------------------------
   Carrito catalogo: panel
   -------------------------------------------------------------------------- */
body.insu-cart-open {
	overflow: hidden;
}

body.insu-cart-open .insu-wa-float {
	opacity: 0 !important;
	pointer-events: none !important;
	transform: translateY(8px) !important;
}

.insu-cart-panel {
	position: fixed;
	inset: 0;
	z-index: 12050;
}

.insu-cart-panel[hidden] {
	display: none !important;
}

.insu-cart-panel__backdrop {
	position: absolute;
	inset: 0;
	border: 0;
	background: rgba(1, 15, 108, 0.28);
	backdrop-filter: blur(2px);
}

.insu-cart-panel__dialog {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	border: 0;
	box-shadow: none;
}

.insu-cart-panel__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: calc(14px + env(safe-area-inset-top)) 18px 14px;
	border-bottom: 1px solid rgba(1, 15, 108, 0.12);
	background: #ffffff;
}

.insu-cart-panel__header h3 {
	margin: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--insu-font-heading);
	font-size: 1.06rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--insu-color-ink);
}

.insu-cart-panel__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	padding: 0 6px;
	border-radius: 999px;
	background: rgba(164, 44, 23, 0.12);
	color: var(--insu-color-brand-red);
	font-size: 0.76rem;
}

.insu-cart-panel__close {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(1, 15, 108, 0.18);
	border-radius: 999px;
	background: #ffffff;
	color: var(--insu-color-ink);
	font-size: 0.95rem;
	line-height: 1;
}

.insu-cart-panel__body {
	flex: 1;
	min-height: 0;
	display: grid;
	grid-template-rows: auto 1fr;
	overflow: hidden;
}

.insu-cart-panel__items {
	max-height: 43vh;
	overflow: auto;
	padding: 14px 18px;
	border-bottom: 1px solid rgba(1, 15, 108, 0.1);
	background: #f8fbff;
	min-height: 0;
}

.insu-cart-empty {
	margin: 0;
	font-size: 0.9rem;
	color: rgba(1, 15, 108, 0.72);
}

.insu-cart-item {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	gap: 10px;
	padding: 10px;
	border: 1px solid rgba(1, 15, 108, 0.14);
	border-radius: 12px;
	background: #ffffff;
}

.insu-cart-item + .insu-cart-item {
	margin-top: 8px;
}

.insu-cart-item__thumb {
	width: 56px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(1, 15, 108, 0.12);
	border-radius: 10px;
	background: #ffffff;
	overflow: hidden;
}

.insu-cart-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 5px;
}

.insu-cart-item__thumb svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
}

.insu-cart-item__body {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.insu-cart-item__title {
	font-family: var(--insu-font-heading);
	font-size: 0.87rem;
	line-height: 1.22;
	color: var(--insu-color-ink);
	text-decoration: none;
}

.insu-cart-item__controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.insu-cart-qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid rgba(1, 15, 108, 0.2);
	border-radius: 999px;
	background: #ffffff;
}

.insu-cart-qty__btn {
	width: 28px;
	height: 28px;
	border: 0;
	background: transparent;
	color: var(--insu-color-ink);
	font-size: 1rem;
	line-height: 1;
}

.insu-cart-qty__value {
	min-width: 42px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-left: 1px solid rgba(1, 15, 108, 0.14);
	border-right: 1px solid rgba(1, 15, 108, 0.14);
	font-size: 0.84rem;
	font-weight: 700;
	color: var(--insu-color-ink);
	background: #ffffff;
}

.insu-cart-item__remove {
	border: 0;
	background: transparent;
	color: var(--insu-color-brand-red);
	font-size: 0.77rem;
	font-weight: 700;
}

.insu-cart-panel__checkout {
	min-height: 0;
	overflow: auto;
	padding: 14px 18px calc(18px + env(safe-area-inset-bottom));
}

.insu-cart-panel__checkout h4 {
	margin: 0 0 10px;
	font-family: var(--insu-font-heading);
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--insu-color-ink-soft);
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.insu-cart-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 10px;
}

.insu-cart-field {
	display: block;
}

.insu-cart-field input,
.insu-cart-field select {
	width: 100%;
	height: 44px;
	padding: 0 13px;
	border: 1px solid rgba(1, 15, 108, 0.16);
	border-radius: 12px;
	background: #f9fbff;
	font-size: 0.86rem;
	color: var(--insu-color-ink);
	transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.insu-cart-field input::placeholder {
	color: rgba(1, 15, 108, 0.56);
	opacity: 1;
}

.insu-cart-field select {
	appearance: none;
	-webkit-appearance: none;
	background-image: linear-gradient(45deg, transparent 50%, rgba(1, 15, 108, 0.7) 50%), linear-gradient(135deg, rgba(1, 15, 108, 0.7) 50%, transparent 50%);
	background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px);
	background-size: 5px 5px, 5px 5px;
	background-repeat: no-repeat;
	padding-right: 34px;
}

.insu-cart-field input:focus,
.insu-cart-field select:focus {
	outline: none;
	border-color: rgba(164, 44, 23, 0.44);
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(164, 44, 23, 0.12);
}

.insu-cart-field--wide {
	grid-column: 1 / -1;
}

.insu-cart-fieldset {
	margin: 0;
	padding: 11px 12px;
	border: 1px solid rgba(1, 15, 108, 0.14);
	border-radius: 12px;
	background: #f9fbff;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.insu-cart-fieldset legend {
	padding: 0 4px;
	font-size: 0.76rem;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--insu-color-ink-soft);
	letter-spacing: 0.02em;
}

.insu-cart-fieldset label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 34px;
	padding: 0 10px;
	border: 1px solid rgba(1, 15, 108, 0.16);
	border-radius: 999px;
	background: #ffffff;
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--insu-color-ink);
}

.insu-cart-form__notice {
	margin: 0;
	min-height: 1.2em;
	font-size: 0.8rem;
	grid-column: 1 / -1;
}

.insu-cart-form__notice.is-success {
	color: #0f7a28;
}

.insu-cart-form__notice.is-error {
	color: #a42c17;
}

.insu-cart-form__notice.is-loading {
	color: rgba(1, 15, 108, 0.72);
}

.insu-cart-form__submit {
	width: 100%;
	min-height: 42px;
	border: 1px solid rgba(164, 44, 23, 0.34);
	border-radius: 999px;
	background: linear-gradient(135deg, var(--insu-color-accent) 0%, var(--insu-color-brand-blue) 100%);
	color: #ffffff;
	font-family: var(--insu-font-heading);
	font-size: 0.88rem;
	font-weight: 700;
	grid-column: 1 / -1;
}

.insu-cart-form__submit:disabled {
	opacity: 0.56;
	cursor: not-allowed;
}

@media (min-width: 992px) {
	#header.site-header {
		background: transparent !important;
		box-shadow: none !important;
	}

	#header.site-header .header-main,
	.header_on_scroll #header.site-header .header-main {
		width: min(1240px, calc(100vw - 36px));
		margin: 10px auto 0;
		border: 1px solid rgba(15, 23, 42, 0.12);
		border-radius: var(--insu-radius-pill);
		background: rgba(255, 255, 255, 0.9);
		box-shadow: 0 14px 34px rgba(15, 23, 42, 0.14);
		backdrop-filter: saturate(145%) blur(11px);
		-webkit-backdrop-filter: saturate(145%) blur(11px);
		min-height: 72px;
	}

	#header.site-header .header-main .header-contents.container,
	.header_on_scroll #header.site-header .header-main .header-contents.container {
		max-width: none;
		padding: 0 20px;
		min-height: 72px;
	}

	#header.site-header .header-main .header-left-items,
	#header.site-header .header-main .header-right-items,
	.header_on_scroll #header.site-header .header-main .header-left-items,
	.header_on_scroll #header.site-header .header-main .header-right-items {
		min-height: 72px;
		display: flex;
		align-items: center;
	}

	#header.site-header .header-main .logolink .logoimg,
	.header_on_scroll #header.site-header .header-main .logolink .logoimg {
		max-height: 62px;
	}

	#header.site-header .et-header-menu > li {
		margin: 0 2px;
	}

	#header.site-header .et-header-menu > li > a::after,
	#header.site-header .et-header-menu .sub-menu > li > a::after {
		display: none !important;
	}

	#header.site-header .et-header-menu > li > a {
		padding: 10px 10px;
		font-family: var(--insu-font-heading);
		font-size: 0.99rem;
		font-weight: 500;
		letter-spacing: 0;
		color: var(--insu-color-ink-soft) !important;
	}

	#header.site-header .et-header-menu > li.current-menu-item > a,
	#header.site-header .et-header-menu > li.current-menu-ancestor > a,
	#header.site-header .et-header-menu > li > a:hover {
		color: var(--insu-color-accent) !important;
	}

	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu {
		top: calc(100% + 10px);
		left: 0;
		min-width: 228px;
		padding: 10px 0 !important;
		margin: 0;
		border: 1px solid rgba(15, 23, 42, 0.12);
		border-radius: 14px;
		background: rgba(255, 255, 255, 0.98);
		box-shadow: 0 14px 28px rgba(15, 23, 42, 0.16);
		backdrop-filter: saturate(145%) blur(10px);
		-webkit-backdrop-filter: saturate(145%) blur(10px);
	}

	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu::before,
	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu .sub-menu::before {
		display: none !important;
	}

	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu li {
		margin: 0 !important;
		width: 100% !important;
		padding: 0 14px !important;
	}

	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu li > a {
		display: flex;
		align-items: center;
		width: 100%;
		padding: 8px 0 !important;
		font-family: var(--insu-font-heading);
		font-size: 0.9rem;
		font-weight: 500;
		line-height: 1.3;
		color: var(--insu-color-ink-soft) !important;
	}

	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu li > a:hover,
	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu li.current-menu-item > a {
		color: var(--insu-color-accent) !important;
	}

	#header.site-header .et-header-menu > li:not(.menu-item-mega-parent) > .sub-menu .sub-menu {
		top: -10px;
		left: calc(100% + 8px);
		margin-left: 0;
	}

	#header.site-header .et-header-menu .sub-menu li.menu-item-has-children::after {
		top: 10px;
		right: 14px;
		font-size: 13px;
		color: rgba(51, 65, 85, 0.78);
	}

	#header.site-header .quick_search,
	#header.site-header .search-header_icon {
		margin-left: 10px;
		width: 42px;
		height: 42px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		border: 1px solid rgba(1, 15, 108, 0.2);
		border-radius: 999px;
		color: var(--insu-color-brand-blue) !important;
		background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.82) 100%);
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
		transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
		text-decoration: none !important;
	}

	#header.site-header .quick_search::before,
	#header.site-header .quick_search::after,
	#header.site-header .search-header_icon::before,
	#header.site-header .search-header_icon::after {
		display: none !important;
		content: none !important;
	}

	#header.site-header .quick_search svg,
	#header.site-header .search-header_icon svg {
		width: 18px;
		height: 18px;
		stroke-width: 2.1;
	}

	#header.site-header .quick_search .text,
	#header.site-header .search-header_icon .text {
		display: none;
	}

	#header.site-header .quick_search:hover,
	#header.site-header .quick_search:focus-visible,
	#header.site-header .search-header_icon:hover,
	#header.site-header .search-header_icon:focus-visible {
		transform: translateY(-1px);
		border-color: rgba(164, 44, 23, 0.32);
		color: var(--insu-color-accent) !important;
		background: linear-gradient(180deg, #ffffff 0%, var(--insu-color-accent-soft) 100%);
		box-shadow: 0 8px 18px rgba(1, 15, 108, 0.16);
	}

	.header_on_scroll #header.site-header .header-main {
		background: rgba(255, 255, 255, 0.95);
		box-shadow: 0 16px 36px rgba(15, 23, 42, 0.16);
	}

	.header-spacer,
	.product-header-spacer {
		height: 136px !important;
	}

	.insu-cart-panel__header {
		padding: calc(16px + env(safe-area-inset-top)) 26px 16px;
	}

	.insu-cart-panel__body {
		grid-template-columns: minmax(360px, 0.95fr) minmax(460px, 1.05fr);
		grid-template-rows: 1fr;
	}

	.insu-cart-panel__items {
		max-height: none;
		padding: 20px 24px;
		border-bottom: 0;
		border-right: 1px solid rgba(1, 15, 108, 0.1);
	}

	.insu-cart-panel__checkout {
		padding: 20px 24px calc(20px + env(safe-area-inset-bottom));
	}

	.insu-cart-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 11px;
	}
}

@media (max-width: 991px) {
	#header.site-header {
		background: transparent !important;
		box-shadow: none !important;
	}

	#header.site-header .header-mobile {
		width: calc(100vw - 20px);
		margin: 8px auto 0;
		border: 1px solid rgba(15, 23, 42, 0.12);
		border-radius: 14px;
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
		backdrop-filter: saturate(138%) blur(10px);
		-webkit-backdrop-filter: saturate(138%) blur(10px);
	}

	#header.site-header .header-mobile .header-contents.container {
		padding-left: 14px;
		padding-right: 14px;
	}

	#header.site-header .header-mobile .hamburger-menu,
	#header.site-header .header-mobile .hamburger-menu .mobile-toggle {
		display: inline-flex;
		align-items: center;
	}

	#header.site-header .header-mobile .mobile-toggle {
		width: auto;
		height: auto;
		min-width: 34px;
		min-height: 34px;
		padding: 0 6px;
		justify-content: center;
		border: 0;
		border-radius: 0;
		color: var(--insu-color-brand-blue);
		background: transparent !important;
		box-shadow: none;
		transition: color 0.15s ease, opacity 0.15s ease;
	}

	#header.site-header .header-mobile .mobile-toggle:hover,
	#header.site-header .header-mobile .mobile-toggle:focus-visible,
	#header.site-header .header-mobile .mobile-toggle.clicked {
		transform: none;
		color: var(--insu-color-accent);
		background: transparent !important;
		box-shadow: none;
		opacity: 0.9;
	}

	#header.site-header .header-mobile .mobile-toggle .bars {
		width: 18px;
		height: 18px;
	}

	#header.site-header .mobile-header-icons .insu-cart-trigger {
		width: auto;
		height: auto;
		min-width: 34px;
		min-height: 34px;
		padding: 0 6px;
		margin-left: 0;
		border: 0;
		border-radius: 0;
		background: transparent !important;
		box-shadow: none;
	}

	#header.site-header .mobile-header-icons .insu-cart-trigger:hover,
	#header.site-header .mobile-header-icons .insu-cart-trigger:focus-visible {
		transform: none;
		border-color: transparent;
		background: transparent !important;
		box-shadow: none;
	}

	#header.site-header .header-mobile .mobile-toggle .bars svg {
		width: 18px;
		height: 18px;
		stroke: currentColor !important;
		stroke-width: 2.2 !important;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	#header.site-header .header-mobile .mobile-toggle .bars svg line {
		stroke: currentColor !important;
	}

	#header.site-header .header-mobile .mobile-toggle .name {
		display: none;
	}

	body.panel-open-menu .click-capture {
		background: rgba(1, 15, 108, 0.2);
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
	}

	#mobile-menu.side-mobile-menu {
		top: 8px;
		bottom: 8px;
		left: 8px;
		width: calc(100vw - 16px);
		max-width: 430px;
		height: auto;
		z-index: 9600;
		border: 1px solid rgba(15, 23, 42, 0.14);
		border-radius: 16px;
		background: rgba(255, 255, 255, 0.95);
		box-shadow: 0 16px 34px rgba(15, 23, 42, 0.2);
		backdrop-filter: saturate(145%) blur(12px);
		-webkit-backdrop-filter: saturate(145%) blur(12px);
	}

	#mobile-menu.side-mobile-menu.has-bar {
		flex-direction: column;
	}

	#mobile-menu.side-mobile-menu .mobile-bar,
	#mobile-menu.side-mobile-menu > header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		height: auto;
		padding: 12px 16px;
		border-bottom: 1px solid rgba(1, 15, 108, 0.12);
		background: rgba(248, 251, 255, 0.92);
	}

	#mobile-menu.side-mobile-menu > header .container {
		width: 100%;
		padding: 0;
	}

	#mobile-menu.side-mobile-menu > header .panel-header-inner {
		height: auto;
	}

	#mobile-menu.side-mobile-menu .mobile-bar .action-icons {
		margin: 0 0 0 auto;
		flex-direction: row;
		gap: 8px;
	}

	#mobile-menu.side-mobile-menu .mobile-bar .et-close,
	#mobile-menu.side-mobile-menu .mobile-bar .action-icons a,
	#mobile-menu.side-mobile-menu > header .et-close {
		margin: 0;
		width: 36px;
		height: 36px;
		border: 1px solid rgba(1, 15, 108, 0.22);
		border-radius: 999px;
		background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(243, 248, 255, 0.9) 100%);
		color: var(--insu-color-brand-blue);
		box-shadow: 0 6px 14px rgba(1, 15, 108, 0.12);
	}

	#mobile-menu.side-mobile-menu .mobile-bar .et-close:before,
	#mobile-menu.side-mobile-menu .mobile-bar .et-close:after,
	#mobile-menu.side-mobile-menu > header .et-close:before,
	#mobile-menu.side-mobile-menu > header .et-close:after {
		left: 50%;
		width: 14px;
		margin-left: -7px;
		background-color: currentColor;
		border-radius: 999px;
	}

	#mobile-menu.side-mobile-menu .mobile-bar .action-icons a:hover,
	#mobile-menu.side-mobile-menu .mobile-bar .action-icons a:focus-visible,
	#mobile-menu.side-mobile-menu .mobile-bar .et-close:hover,
	#mobile-menu.side-mobile-menu .mobile-bar .et-close:focus-visible,
	#mobile-menu.side-mobile-menu > header .et-close:hover,
	#mobile-menu.side-mobile-menu > header .et-close:focus-visible {
		border-color: rgba(164, 44, 23, 0.32);
		color: var(--insu-color-accent);
		background: var(--insu-color-accent-soft);
	}

	#mobile-menu.side-mobile-menu .side-panel-content {
		padding: 12px 14px 18px;
		color: var(--insu-color-ink-soft);
	}

	#mobile-menu.side-mobile-menu .side-panel-content > .container {
		display: flex;
		flex-direction: column;
		min-height: 100%;
	}

	#mobile-menu.side-mobile-menu .mobile-top-extras {
		margin-bottom: 10px;
	}

	#mobile-menu.side-mobile-menu .mobile-search {
		margin: 0 0 12px;
	}

	#mobile-menu.side-mobile-menu .mobile-search .search-button-group {
		border: 1px solid var(--insu-color-border-control);
		border-radius: 999px;
		padding: 0 8px 0 18px;
		background: #ffffff;
		box-shadow: 0 10px 22px rgba(1, 15, 108, 0.12);
	}

	#mobile-menu.side-mobile-menu .mobile-search .search-field {
		height: 44px;
		font-family: var(--insu-font-body);
		font-size: 0.92rem;
		color: var(--insu-color-ink);
	}

	#mobile-menu.side-mobile-menu .mobile-search .submit {
		width: 34px;
		height: 34px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		border-radius: 999px;
		margin-left: 6px;
	}

	#mobile-menu.side-mobile-menu #mobile-menu-container {
		width: 100%;
	}

	#mobile-menu.side-mobile-menu .mobile-menu {
		margin: 0;
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	#mobile-menu.side-mobile-menu .mobile-menu > li {
		border-bottom: 1px solid rgba(1, 15, 108, 0.1);
	}

	#mobile-menu.side-mobile-menu .mobile-menu > li:last-child {
		border-bottom: 0;
	}

	#mobile-menu.side-mobile-menu .menu-sliding > li,
	#mobile-menu.side-mobile-menu .sliding-menu .sliding-menu-panel-root,
	#mobile-menu.side-mobile-menu .sliding-menu .sliding-menu-top {
		font-size: 1rem;
		text-transform: none;
		overflow: visible;
	}

	#mobile-menu.side-mobile-menu .mobile-menu li > a {
		display: flex;
		align-items: center;
		min-height: 42px;
		padding: 10px 42px 10px 2px;
		border: 0;
		border-radius: 0;
		background: transparent;
		font-family: var(--insu-font-heading);
		font-size: 0.92rem;
		font-weight: 500;
		line-height: 1.22;
		text-transform: none;
		letter-spacing: 0;
		color: var(--insu-color-ink-soft);
		transition: color 0.15s ease, opacity 0.15s ease;
	}

	#mobile-menu.side-mobile-menu .mobile-menu > li.current-menu-item > a,
	#mobile-menu.side-mobile-menu .mobile-menu > li.current-menu-ancestor > a,
	#mobile-menu.side-mobile-menu .mobile-menu > li.active > a,
	#mobile-menu.side-mobile-menu .mobile-menu > li > a:hover {
		color: var(--insu-color-accent);
		background: transparent;
		box-shadow: none;
	}

	#mobile-menu.side-mobile-menu .mobile-menu li.menu-item-has-children > .et-menu-toggle {
		right: 7px;
		top: 50%;
		margin: 0;
		width: 30px;
		height: 30px;
		transform: translateY(-50%);
		border: 1px solid rgba(1, 15, 108, 0.18);
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.9);
		color: var(--insu-color-ink-soft);
	}

	#mobile-menu.side-mobile-menu .mobile-menu li.menu-item-has-children > .et-menu-toggle:after {
		font-size: 11px;
	}

	#mobile-menu.side-mobile-menu .mobile-menu li.menu-item-has-children.active > .et-menu-toggle {
		border-color: rgba(164, 44, 23, 0.34);
		color: var(--insu-color-accent);
		background: var(--insu-color-accent-soft);
	}

	#mobile-menu.side-mobile-menu .sliding-menu .sliding-menu-nav:before {
		right: 7px;
		top: 50%;
		margin: 0;
		width: 30px;
		height: 30px;
		transform: translateY(-50%);
		border: 1px solid rgba(1, 15, 108, 0.18);
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.9);
		color: var(--insu-color-ink-soft);
	}

	#mobile-menu.side-mobile-menu .mobile-menu .sub-menu {
		margin: 0 0 6px;
		padding: 0 0 0 12px;
		border-left: 1px solid rgba(1, 15, 108, 0.14);
		animation: none;
	}

	#mobile-menu.side-mobile-menu .mobile-menu .sub-menu ul {
		padding: 6px 0 0 10px;
	}

	#mobile-menu.side-mobile-menu .mobile-menu .sub-menu li > a {
		min-height: 36px;
		padding: 7px 38px 7px 8px;
		font-size: 0.84rem;
		background: transparent;
		border-color: transparent;
		box-shadow: none;
	}

	#mobile-menu.side-mobile-menu .sliding-menu .sliding-menu-back {
		margin-bottom: 8px;
		padding: 9px 4px 9px 0;
		border: 0;
		border-bottom: 1px solid rgba(1, 15, 108, 0.1);
		border-radius: 0;
		background: transparent;
		font-family: var(--insu-font-heading);
		font-size: 0.85rem;
		font-weight: 600;
		line-height: 1.2;
		color: var(--insu-color-ink-soft);
	}

	#mobile-menu.side-mobile-menu .sliding-menu .sliding-menu-back:before {
		width: 24px;
		height: 24px;
		margin-right: 8px;
		border: 1px solid rgba(1, 15, 108, 0.2);
		border-radius: 999px;
	}

	#mobile-menu.side-mobile-menu .bottom-extras {
		margin-top: 14px;
		padding-top: 0;
		border-top: 0;
	}

	#mobile-menu.side-mobile-menu .bottom-extras .menu-divider {
		display: none;
	}

	#mobile-menu.side-mobile-menu .bottom-extras .quick_wishlist,
	#mobile-menu.side-mobile-menu .bottom-extras .quick_cart,
	#mobile-menu.side-mobile-menu .bottom-extras .account-menu li a {
		min-height: 42px;
		padding: 0 12px;
		border: 1px solid rgba(1, 15, 108, 0.14);
		border-radius: 12px;
		background: #ffffff;
		color: var(--insu-color-ink-soft);
	}

	#mobile-menu.side-mobile-menu .bottom-extras .quick_wishlist .text,
	#mobile-menu.side-mobile-menu .bottom-extras .quick_cart .text,
	#mobile-menu.side-mobile-menu .bottom-extras .account-menu .text {
		font-family: var(--insu-font-heading);
		font-size: 0.86rem;
		font-weight: 600;
	}

	#mobile-menu.side-mobile-menu .bottom-extras .quick_wishlist:hover,
	#mobile-menu.side-mobile-menu .bottom-extras .quick_cart:hover,
	#mobile-menu.side-mobile-menu .bottom-extras .account-menu li a:hover {
		border-color: rgba(164, 44, 23, 0.3);
		color: var(--insu-color-accent);
		background: var(--insu-color-accent-soft);
	}

	.header-spacer,
	.product-header-spacer {
		height: 84px !important;
	}

	.insu-cart-fieldset {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 575px) {
	#header.site-header .header-mobile .header-contents.container {
		padding-left: 11px;
		padding-right: 11px;
	}

	#mobile-menu.side-mobile-menu {
		top: 6px;
		bottom: 6px;
		left: 6px;
		width: calc(100vw - 12px);
		max-width: calc(100vw - 12px);
		border-radius: 14px;
	}

	#mobile-menu.side-mobile-menu .mobile-bar,
	#mobile-menu.side-mobile-menu > header {
		padding: 10px 12px;
	}

	#mobile-menu.side-mobile-menu .side-panel-content {
		padding: 10px 10px 14px;
	}

	#mobile-menu.side-mobile-menu .mobile-menu li > a {
		padding-left: 12px;
		padding-right: 42px;
	}
}

/* --------------------------------------------------------------------------
   Correccion global: icono de busqueda separado del borde
   -------------------------------------------------------------------------- */
.goya-search .search-button-group .search-icon,
.goya-search .search-button-group .search-clear {
	left: 14px !important;
}

.goya-search .woocommerce-product-search .search-field {
	margin-left: 36px !important;
}

.search-panel .search-button-group,
#mobile-menu.side-mobile-menu .mobile-search .search-button-group {
	padding-left: 18px !important;
}

/* --------------------------------------------------------------------------
   Buscador del header: panel coherente con el nuevo estilo flotante
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
	.panel-open-search #header.site-header .quick_search,
	.panel-open-search #header.site-header .search-header_icon {
		border-color: rgba(164, 44, 23, 0.32);
		color: var(--insu-color-accent) !important;
		background: linear-gradient(180deg, #ffffff 0%, var(--insu-color-accent-soft) 100%);
		box-shadow: 0 8px 18px rgba(1, 15, 108, 0.16);
	}

	.search-panel.side-panel:not(.mobile-search) {
		left: auto;
		right: max(20px, calc((100vw - min(1240px, calc(100vw - 36px))) / 2 + 20px));
		top: 146px;
		width: min(720px, calc(100vw - 36px));
		max-height: calc(100vh - 172px);
		height: auto;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		opacity: 0;
		pointer-events: none;
		transform: translate3d(0, -16px, 0) scale(0.97) !important;
		transform-origin: top right;
		transition: transform 0.28s cubic-bezier(0.22, 0.74, 0.2, 1), opacity 0.2s ease !important;
		z-index: 9450;
	}

	.search-panel.side-panel:not(.mobile-search)::before,
	.search-panel.side-panel:not(.mobile-search)::after {
		display: none !important;
		content: none !important;
	}

	.panel-open-search .search-panel.side-panel:not(.mobile-search) {
		opacity: 1 !important;
		pointer-events: auto;
		transform: translate3d(0, 0, 0) scale(1) !important;
		animation: insu-search-panel-in 0.28s cubic-bezier(0.22, 0.74, 0.2, 1);
	}

	.panel-open-search .click-capture {
		background: rgba(1, 15, 108, 0.1);
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
	}

	.search-panel.side-panel:not(.mobile-search) header {
		display: none !important;
	}

	.search-panel.side-panel:not(.mobile-search) .et-close {
		display: none !important;
	}

	.search-panel.side-panel:not(.mobile-search) .side-panel-content {
		padding: 10px 0 0 !important;
	}

	.search-panel.side-panel:not(.mobile-search) .side-panel-content.container,
	.search-panel.side-panel:not(.mobile-search) .side-panel-content .row,
	.search-panel.side-panel:not(.mobile-search) .side-panel-content [class*="col-"],
	.search-panel.side-panel:not(.mobile-search) .goya-search,
	.search-panel.side-panel:not(.mobile-search) .searchform,
	.search-panel.side-panel:not(.mobile-search) .searchform fieldset {
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.search-panel.side-panel:not(.mobile-search) .searchform fieldset {
		margin: 0 !important;
		padding: 0 !important;
		min-width: 0 !important;
	}

	.search-panel.side-panel:not(.mobile-search) .search-button-group {
		margin: 0 auto;
		max-width: none;
		border: 1px solid var(--insu-color-border-control);
		border-radius: 999px;
		padding: 0 8px 0 14px;
		background: #ffffff;
		box-shadow: 0 12px 28px rgba(1, 15, 108, 0.16);
	}

	.search-panel.side-panel:not(.mobile-search) .search-field {
		height: 52px;
		font-family: var(--insu-font-body);
		font-size: 0.98rem;
		color: var(--insu-color-ink);
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper {
		margin-top: 10px;
	}

	.search-panel.side-panel:not(.mobile-search) form.woocommerce-product-search .autocomplete-wrapper .product_list_widget,
	.search-panel.side-panel:not(.mobile-search) form.woocommerce-product-search .autocomplete-wrapper .results-found,
	.search-panel.side-panel:not(.mobile-search) form.woocommerce-product-search .autocomplete-wrapper .autocomplete-no-suggestion {
		display: none !important;
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview {
		gap: 6px;
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview[hidden] {
		display: none !important;
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview__items {
		gap: 6px;
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview__item {
		grid-template-columns: 60px minmax(0, 1fr);
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview__thumb-wrap {
		width: 60px;
		height: 60px;
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview__thumb {
		width: 60px;
		height: 60px;
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview__title {
		margin: 0 !important;
		font-family: var(--insu-font-heading);
		font-size: 0.92rem;
		line-height: 1.28;
		color: var(--insu-color-ink);
	}

	.search-panel.side-panel:not(.mobile-search) .autocomplete-wrapper .insu-search-preview__more {
		min-height: 42px;
		font-size: 0.88rem;
	}

	@keyframes insu-search-panel-in {
		from {
			opacity: 0;
			transform: translate3d(0, -18px, 0) scale(0.965);
		}
		to {
			opacity: 1;
			transform: translate3d(0, 0, 0) scale(1);
		}
	}
}

/* --------------------------------------------------------------------------
   Visibilidad + contraste en Inicio/Footer
   -------------------------------------------------------------------------- */
.home .elementor-invisible,
footer.elementor-location-footer .elementor-invisible {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	animation: none !important;
}

.home .elementor-3389 .elementor-element-718536f .elementor-heading-title,
.home .elementor-3389 .elementor-element-718536f .elementor-headline,
.home .elementor-3389 .elementor-element-718536f .elementor-headline *,
.home .elementor-3389 .elementor-element-718536f .elementor-widget-text-editor,
.home .elementor-3389 .elementor-element-718536f .elementor-widget-text-editor p,
.home .elementor-3389 .elementor-element-718536f .elementor-widget-text-editor li,
.home .elementor-3389 .elementor-element-718536f .elementor-button-text {
	color: #ffffff !important;
}

.home .elementor-3389 .elementor-element-718536f .elementor-widget-text-editor a,
.home .elementor-3389 .elementor-element-718536f .elementor-headline a {
	color: rgba(255, 255, 255, 0.94) !important;
}

footer.elementor-location-footer .elementor-widget-heading .elementor-heading-title,
footer.elementor-location-footer .elementor-widget-text-editor,
footer.elementor-location-footer .elementor-widget-text-editor p,
footer.elementor-location-footer .elementor-icon-list-item,
footer.elementor-location-footer .elementor-icon-list-item > a,
footer.elementor-location-footer .elementor-icon-list-item > .elementor-icon-list-text,
footer.elementor-location-footer .elementor-widget-container,
footer.elementor-location-footer li,
footer.elementor-location-footer span,
footer.elementor-location-footer a {
	color: rgba(255, 255, 255, 0.92) !important;
}

footer.elementor-location-footer a:hover,
footer.elementor-location-footer a:focus-visible {
	color: #ffffff !important;
}

footer.elementor-location-footer .elementor-icon-list-icon,
footer.elementor-location-footer .elementor-icon-list-icon i,
footer.elementor-location-footer .elementor-icon-list-icon svg {
	color: var(--insu-color-brand-red) !important;
	fill: var(--insu-color-brand-red) !important;
}

footer.elementor-location-footer .elementor-icon-list-icon svg path {
	fill: currentColor !important;
}

/* --------------------------------------------------------------------------
   Inicio: contraste en fondos oscuros (hero + bloques oscuros + footer)
   -------------------------------------------------------------------------- */
.home .elementor-3389 .elementor-element.elementor-element-a7d3306:not(.elementor-motion-effects-element-type-background),
.home .elementor-3389 .elementor-element.elementor-element-a7d3306 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: rgba(0, 0, 0, 0.62) !important;
}

.home .elementor-3389 .elementor-element-a7d3306 .elementor-headline,
.home .elementor-3389 .elementor-element-a7d3306 .elementor-headline *,
.home .elementor-3389 .elementor-element-a7d3306 .elementor-heading-title,
.home .elementor-3389 .elementor-element-a7d3306 p,
.home .elementor-3389 .elementor-element-a7d3306 .elementor-button-text {
	color: #ffffff !important;
}

.home .elementor-3389 .elementor-element-718536f .elementor-headline,
.home .elementor-3389 .elementor-element-718536f .elementor-headline-plain-text,
.home .elementor-3389 .elementor-element-718536f .elementor-headline-dynamic-text {
	color: #ffffff !important;
	text-shadow: 0 3px 20px rgba(0, 0, 0, 0.34);
}

.home .elementor-3389 .elementor-element-19a48b3 .elementor-heading-title,
.home .elementor-3389 .elementor-element-19a48b3 .elementor-field-group > label,
.home .elementor-3389 .elementor-element-19a48b3 .elementor-field-group .elementor-field,
.home .elementor-3389 .elementor-element-19a48b3 .elementor-field-group .elementor-field::placeholder {
	color: #ffffff !important;
}

.home .elementor-3389 .elementor-element.elementor-element-19a48b3:not(.elementor-motion-effects-element-type-background),
.home .elementor-3389 .elementor-element.elementor-element-19a48b3 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #061245 !important;
	background-image: linear-gradient(130deg, #00175f 0%, #0b3e92 48%, #a42c17 100%) !important;
}

.home .elementor-3389 .elementor-element.elementor-element-19a48b3::before,
.home .elementor-3389 .elementor-element.elementor-element-19a48b3 > .elementor-background-video-container::before,
.home .elementor-3389 .elementor-element.elementor-element-19a48b3 > .e-con-inner > .elementor-background-video-container::before,
.home .elementor-3389 .elementor-element.elementor-element-19a48b3 > .elementor-background-slideshow::before,
.home .elementor-3389 .elementor-element.elementor-element-19a48b3 > .e-con-inner > .elementor-background-slideshow::before,
.home .elementor-3389 .elementor-element.elementor-element-19a48b3 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
	background-color: transparent !important;
	background-image: linear-gradient(160deg, rgba(1, 15, 108, 0.82) 0%, rgba(6, 37, 117, 0.52) 44%, rgba(164, 44, 23, 0.72) 100%) !important;
	opacity: 1 !important;
}

/* --------------------------------------------------------------------------
   Inicio Hero (video): contenido centrado al pie, compacto y sin bloque vacío
   -------------------------------------------------------------------------- */
.home .elementor-3389 .elementor-element.elementor-element-718536f {
	position: relative;
	align-items: flex-end !important;
	justify-content: center !important;
	padding: clamp(90px, 15vh, 150px) clamp(14px, 3vw, 30px) clamp(18px, 5vh, 42px) !important;
	overflow: hidden;
}

.home .elementor-3389 .elementor-element.elementor-element-718536f > .e-con-inner {
	width: 100% !important;
	margin: 0 auto !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 8px !important;
}

.home .elementor-3389 .elementor-element.elementor-element-718536f::before,
.home .elementor-3389 .elementor-element.elementor-element-718536f > .elementor-background-video-container::before,
.home .elementor-3389 .elementor-element.elementor-element-718536f > .e-con-inner > .elementor-background-video-container::before,
.home .elementor-3389 .elementor-element.elementor-element-718536f > .elementor-background-slideshow::before,
.home .elementor-3389 .elementor-element.elementor-element-718536f > .e-con-inner > .elementor-background-slideshow::before,
.home .elementor-3389 .elementor-element.elementor-element-718536f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
	background-color: transparent !important;
	background-image: linear-gradient(
		180deg,
		rgba(1, 15, 108, 0) 0%,
		rgba(1, 15, 108, 0.16) 48%,
		rgba(2, 9, 45, 0.68) 100%
	) !important;
	opacity: 1 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-a7d3306 {
	align-self: center !important;
	margin: 0 auto !important;
	width: min(540px, 100%) !important;
	max-width: 100% !important;
	padding: clamp(8px, 1.4vw, 14px) clamp(10px, 1.6vw, 18px) !important;
	border-radius: 16px !important;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	box-shadow: 0 10px 22px rgba(1, 15, 108, 0.24);
}

.home .elementor-3389 .elementor-element.elementor-element-a7d3306:not(.elementor-motion-effects-element-type-background),
.home .elementor-3389 .elementor-element.elementor-element-a7d3306 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: rgba(2, 12, 58, 0.54) !important;
	background-image: linear-gradient(140deg, rgba(1, 15, 108, 0.62) 0%, rgba(164, 44, 23, 0.42) 100%) !important;
}

.home .elementor-3389 .elementor-element.elementor-element-9a02a89,
.home .elementor-3389 .elementor-element.elementor-element-468d4cf {
	align-items: flex-end !important;
	justify-content: center !important;
	text-align: center !important;
}

/* Oculta solo el contenedor vacío del hero */
.home .elementor-3389 .elementor-element.elementor-element-55ae771 {
	display: none !important;
}

.home .elementor-3389 .elementor-element.elementor-element-03b4e40 {
	width: 100% !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 6px !important;
}

.home .elementor-3389 .elementor-element.elementor-element-743e532,
.home .elementor-3389 .elementor-element.elementor-element-749a264 {
	display: flex !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
}

.home .elementor-3389 .elementor-element.elementor-element-743e532 .elementor-button-wrapper,
.home .elementor-3389 .elementor-element.elementor-element-749a264 .elementor-button-wrapper {
	text-align: center !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e7bc227,
.home .elementor-3389 .elementor-element.elementor-element-e7bc227 > .elementor-widget-container {
	margin-left: 0 !important;
	padding-left: 0 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e7bc227 > .elementor-widget-container {
	padding: 0 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e7bc227 .elementor-headline {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 2px !important;
	text-align: center !important;
	font-size: clamp(1.35rem, 2.2vw, 1.95rem) !important;
	line-height: 1.14 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e7bc227 .elementor-headline-plain-text {
	display: block !important;
	width: 100%;
	font-weight: 500 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e7bc227 .elementor-headline-dynamic-wrapper {
	display: block !important;
	width: 100%;
	line-height: 1.08 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e7bc227 .elementor-headline-dynamic-text {
	display: inline-block !important;
	font-weight: 700 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-a7d3306 .elementor-widget {
	margin-bottom: 6px !important;
}

.home .elementor-3389 .elementor-element.elementor-element-a7d3306 .elementor-widget:last-child {
	margin-bottom: 0 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-a7d3306 .elementor-widget-text-editor p {
	margin: 0 0 6px !important;
}

.home .elementor-3389 .elementor-element.elementor-element-a7d3306 .elementor-widget-text-editor p:last-child {
	margin-bottom: 0 !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e12b908 .elementor-divider {
	text-align: center !important;
	padding-block-start: 8px !important;
	padding-block-end: 8px !important;
}

.home .elementor-3389 .elementor-element.elementor-element-e12b908 .elementor-divider-separator {
	margin: 0 auto !important;
}

.home .elementor-3389 .elementor-element.elementor-element-b7ede0d .elementor-button,
.home .elementor-3389 .elementor-element.elementor-element-ae12f2d .elementor-button {
	font-size: 0.88rem !important;
	padding: 9px 22px !important;
	border-radius: 999px !important;
}

@media (max-width: 1024px) {
	.home .elementor-3389 .elementor-element.elementor-element-718536f {
		padding: clamp(82px, 12vh, 126px) 12px 18px !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-a7d3306 {
		width: min(88vw, 540px) !important;
		border-radius: 14px !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-03b4e40 {
		gap: 8px !important;
	}
}

	@media (max-width: 767px) {
		.home .elementor-3389 .elementor-element.elementor-element-718536f {
			min-height: 42.8vh !important;
			padding: 72px 10px 12px !important;
		}

	.home .elementor-3389 .elementor-element.elementor-element-718536f::before,
	.home .elementor-3389 .elementor-element.elementor-element-718536f > .elementor-background-video-container::before,
	.home .elementor-3389 .elementor-element.elementor-element-718536f > .e-con-inner > .elementor-background-video-container::before,
	.home .elementor-3389 .elementor-element.elementor-element-718536f > .elementor-background-slideshow::before,
	.home .elementor-3389 .elementor-element.elementor-element-718536f > .e-con-inner > .elementor-background-slideshow::before,
	.home .elementor-3389 .elementor-element.elementor-element-718536f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
		display: none !important;
		background: none !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-a7d3306 {
		width: 100% !important;
		padding: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		background: transparent !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-a7d3306:not(.elementor-motion-effects-element-type-background),
	.home .elementor-3389 .elementor-element.elementor-element-a7d3306 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background: transparent !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-03b4e40 {
		flex-direction: column !important;
		align-items: center !important;
		gap: 6px !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-743e532,
	.home .elementor-3389 .elementor-element.elementor-element-749a264 {
		width: 100% !important;
		max-width: 300px !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-e7bc227 .elementor-headline {
		font-size: clamp(1rem, 4.8vw, 1.2rem) !important;
		gap: 1px !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-b7ede0d .elementor-button,
	.home .elementor-3389 .elementor-element.elementor-element-ae12f2d .elementor-button {
		width: 100% !important;
		padding: 8px 16px !important;
		font-size: 0.8rem !important;
	}

	.home .elementor-3389 .elementor-element.elementor-element-19a48b3 {
		padding: 22px 10px 24px !important;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-heading-title {
		font-size: clamp(1.85rem, 8.3vw, 2.35rem) !important;
		line-height: 1.06 !important;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-form {
		max-width: 390px;
		margin: 0 auto;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-form-fields-wrapper {
		gap: 7px !important;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-field-group {
		margin-bottom: 0 !important;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-field-group .elementor-field {
		min-height: 40px !important;
		padding: 0 13px !important;
		border-radius: 8px !important;
		font-size: 0.88rem !important;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-field-group .elementor-field::placeholder {
		font-size: 0.88rem !important;
		opacity: 0.92;
	}

	.home .elementor-3389 .elementor-element-19a48b3 .elementor-button {
		min-height: 40px !important;
		padding: 0 16px !important;
		border-radius: 8px !important;
		font-size: 0.76rem !important;
		letter-spacing: 0.1em !important;
	}
}

.home .insu-home-hero-panel-host {
	width: min(560px, calc(100% - 24px));
	margin: 12px auto 18px;
}

.home .insu-home-hero-panel-host > .elementor-element.elementor-element-a7d3306 {
	width: 100% !important;
	margin: 0 auto !important;
}

@media (max-width: 1024px) {
	.home .insu-home-hero-panel-host {
		width: min(88vw, 540px);
		margin: 10px auto 16px;
	}
}

@media (max-width: 767px) {
	.home .insu-home-hero-panel-host {
		width: calc(100% - 16px);
		margin: 8px auto 14px;
	}

	.home .insu-home-hero-panel-host > .elementor-element.elementor-element-a7d3306 {
		width: 100% !important;
		max-width: 420px !important;
		padding: 10px 12px !important;
		border-radius: 14px !important;
		box-shadow: 0 14px 28px rgba(1, 15, 108, 0.28) !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		background: #071a57 !important;
	}

	.home .insu-home-hero-panel-host > .elementor-element.elementor-element-a7d3306:not(.elementor-motion-effects-element-type-background),
	.home .insu-home-hero-panel-host > .elementor-element.elementor-element-a7d3306 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background-color: #071a57 !important;
		background-image: linear-gradient(132deg, rgba(7, 26, 87, 0.96) 0%, rgba(16, 62, 145, 0.94) 52%, rgba(146, 43, 24, 0.92) 100%) !important;
	}
}

.elementor-3532 .elementor-element.elementor-element-c6f7b78::before,
.elementor-3532 .elementor-element.elementor-element-870f7d6 > .elementor-background-overlay {
	background-color: #0f131b !important;
	opacity: 0.98 !important;
}

.elementor-3532 .elementor-heading-title,
.elementor-3532 .elementor-icon-list-item > .elementor-icon-list-text,
.elementor-3532 .elementor-icon-list-item > a {
	color: rgba(255, 255, 255, 0.88) !important;
}

.elementor-3532 .elementor-widget-heading .elementor-heading-title,
.elementor-3532 .elementor-icon-list-item,
.elementor-3532 .elementor-icon-list-item > a,
.elementor-3532 .elementor-icon-list-item > .elementor-icon-list-text,
.elementor-3532 .elementor-widget-text-editor,
.elementor-3532 .elementor-widget-text-editor p,
.elementor-3532 .elementor-widget-text-editor a {
	color: rgba(255, 255, 255, 0.9) !important;
}

.elementor-3532 .elementor-icon-list-icon svg {
	fill: var(--insu-color-brand-red) !important;
}

.elementor-3532 .elementor-element-cd34eff,
.elementor-3532 .elementor-element-cd34eff a {
	color: #fe3e3e !important;
}

/* --------------------------------------------------------------------------
   Inicio (page-id-3389): renovación bloque "Nuestros Productos"
   -------------------------------------------------------------------------- */
.home .elementor-3389 .elementor-element-5707323 {
	padding: 12px 0 2px !important;
}

.home .elementor-3389 .elementor-element-a4892c6 {
	max-width: min(1160px, calc(100vw - 30px)) !important;
	margin: 0 auto !important;
	padding: 0 12px !important;
}

.home .elementor-3389 .elementor-element-bec9409 .elementor-heading-title {
	font-family: var(--insu-font-heading) !important;
	font-size: clamp(1.95rem, 3.6vw, 2.7rem) !important;
	font-weight: 600 !important;
	line-height: 1.08 !important;
	letter-spacing: 0.01em !important;
	color: var(--insu-color-ink) !important;
}

.home .elementor-3389 .elementor-element-b3c9b15 .elementor-divider-separator {
	width: 108px !important;
	border-top-width: 3px !important;
	border-color: rgba(164, 44, 23, 0.48) !important;
}

.home .elementor-3389 .elementor-element-761fad07 {
	position: relative;
	padding: 20px 0 44px !important;
	background: transparent !important;
}

.home .elementor-3389 .elementor-element-761fad07::before {
	content: "";
	position: absolute;
	inset: 0 auto auto 50%;
	transform: translateX(-50%);
	width: min(1220px, calc(100vw - 24px));
	height: 100%;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 28px;
	background:
		radial-gradient(1000px 300px at 10% 0%, rgba(1, 15, 108, 0.05) 0%, rgba(1, 15, 108, 0) 70%),
		linear-gradient(160deg, #f7fbff 0%, #ffffff 48%, #fff7ef 100%);
	box-shadow: 0 20px 46px rgba(15, 23, 42, 0.08);
}

.home .elementor-3389 .elementor-element-761fad07 > .elementor-background-overlay {
	display: none !important;
}

.home .elementor-3389 .elementor-element-761fad07 > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1160px !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-column {
	width: auto !important;
	flex: initial !important;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-column > .elementor-widget-wrap {
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 20px 18px 18px !important;
	border: 1px solid rgba(15, 23, 42, 0.09);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
	text-align: center;
	transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-column > .elementor-widget-wrap:hover {
	transform: translateY(-3px);
	border-color: rgba(164, 44, 23, 0.26);
	box-shadow: 0 16px 30px rgba(15, 23, 42, 0.12);
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-column > .elementor-widget-wrap > .elementor-background-overlay {
	display: none !important;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-image {
	width: 100%;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-image .elementor-widget-container {
	width: 100%;
	min-height: 118px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px 0 2px;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-image img {
	max-width: min(76%, 280px);
	max-height: 88px;
	width: auto;
	height: auto;
	object-fit: contain;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-heading {
	width: 100%;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-heading .elementor-heading-title {
	font-family: var(--insu-font-heading) !important;
	font-size: clamp(1.2rem, 2vw, 1.38rem) !important;
	font-weight: 600 !important;
	line-height: 1.24 !important;
	color: var(--insu-color-ink) !important;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-button {
	margin-top: auto;
	width: 100%;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-button .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 18px !important;
	border: 1px solid rgba(164, 44, 23, 0.34);
	border-radius: 999px;
	font-family: var(--insu-font-heading);
	font-size: 0.88rem;
	font-weight: 600;
	color: #ffffff !important;
	background: linear-gradient(135deg, var(--insu-color-accent) 0%, var(--insu-color-brand-blue) 100%) !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-button .elementor-button:hover,
.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-button .elementor-button:focus-visible {
	background: linear-gradient(135deg, var(--insu-color-accent-hover) 0%, #000a4a 100%) !important;
	box-shadow: 0 10px 20px rgba(1, 15, 108, 0.2);
	transform: translateY(-1px);
}

@media (max-width: 1024px) {
	.home .elementor-3389 .elementor-element-761fad07 {
		padding: 16px 0 34px !important;
	}

	.home .elementor-3389 .elementor-element-761fad07::before {
		width: calc(100vw - 20px);
		border-radius: 22px;
	}

	.home .elementor-3389 .elementor-element-761fad07 > .elementor-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
}

@media (max-width: 767px) {
	.home .elementor-3389 .elementor-element-761fad07 {
		padding: 12px 0 24px !important;
	}

	.home .elementor-3389 .elementor-element-761fad07::before {
		width: calc(100vw - 14px);
		border-radius: 18px;
	}

	.home .elementor-3389 .elementor-element-761fad07 > .elementor-container {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
	}

	.home .elementor-3389 .elementor-element-761fad07 .elementor-column > .elementor-widget-wrap {
		padding: 16px 14px 14px !important;
	}

	.home .elementor-3389 .elementor-element-761fad07 .elementor-widget-button .elementor-button {
		width: 100%;
	}
}

/* --------------------------------------------------------------------------
   Inicio: "Links de interés" debajo de redes y logos homogéneos
   -------------------------------------------------------------------------- */
.home .elementor-3389 .elementor-element-cb812f8 {
	padding: 14px 0 30px !important;
}

.home .elementor-3389 .elementor-element-cb812f8 > .e-con-inner {
	max-width: min(1160px, calc(100vw - 24px)) !important;
	margin: 0 auto !important;
	padding: 0 8px !important;
}

.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592,
.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-eb61d31 {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px !important;
}

.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592 {
	margin-bottom: 10px !important;
}

.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592 > .elementor-element,
.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-eb61d31 > .elementor-element {
	min-height: 86px;
	padding: 8px 10px !important;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 12px;
	background: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06);
}

.home .elementor-3389 .elementor-element-cb812f8 .elementor-widget-image,
.home .elementor-3389 .elementor-element-cb812f8 .elementor-widget-image .elementor-widget-container {
	width: 100%;
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
}

.home .elementor-3389 .elementor-element-cb812f8 .elementor-widget-image img {
	max-width: 84%;
	max-height: 44px;
	width: auto;
	height: auto;
	object-fit: contain;
}

@media (max-width: 1024px) {
	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592,
	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-eb61d31 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592 > .elementor-element,
	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-eb61d31 > .elementor-element {
		min-height: 82px;
	}
}

@media (max-width: 767px) {
	.home .elementor-3389 .elementor-element-cb812f8 {
		padding: 12px 0 24px !important;
	}

	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592,
	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-eb61d31 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px !important;
	}

	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-a66d592 > .elementor-element,
	.home .elementor-3389 .elementor-element-cb812f8 .elementor-element-eb61d31 > .elementor-element {
		min-height: 74px;
		padding: 7px 8px !important;
	}

	.home .elementor-3389 .elementor-element-cb812f8 .elementor-widget-image img {
		max-height: 38px;
	}
}

/* --------------------------------------------------------------------------
   Catálogo: título siempre visible y limpio
   -------------------------------------------------------------------------- */
.woocommerce-shop .hero-header .woocommerce-products-header__title,
.tax-product_cat .hero-header .woocommerce-products-header__title,
.tax-product_tag .hero-header .woocommerce-products-header__title,
.page-id-3172 .hero-header .woocommerce-products-header__title {
	color: var(--insu-color-ink) !important;
	text-shadow: none !important;
}

/* --------------------------------------------------------------------------
   MaxButtons en productos: estilo moderno y consistente
   -------------------------------------------------------------------------- */
.single-product .product_meta .tagged_as {
	font-size: 0;
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
}

.single-product .product_meta .tagged_as::before {
	content: "Marca:";
	font-size: 0.86rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--insu-color-ink-soft);
	margin-right: 2px;
}

.single-product .product_meta .tagged_as a {
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.3;
	text-transform: uppercase;
}

.single-product .woocommerce-product-details__short-description .entry-content {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: stretch;
}

.single-product .woocommerce-product-details__short-description .entry-content > p {
	margin: 0;
	display: contents;
}

.single-product .woocommerce-product-details__short-description a.maxbutton {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px;
	width: auto !important;
	min-width: 158px;
	height: auto !important;
	min-height: 42px;
	padding: 10px 14px !important;
	border: 1px solid rgba(15, 23, 42, 0.16) !important;
	border-radius: 11px !important;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;
	background: #ffffff !important;
	text-decoration: none !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.single-product .woocommerce-product-details__short-description a.maxbutton:hover,
.single-product .woocommerce-product-details__short-description a.maxbutton:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(164, 44, 23, 0.34) !important;
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.12) !important;
	background: var(--insu-color-accent-soft) !important;
}

.single-product .woocommerce-product-details__short-description a.maxbutton .mb-text {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px;
	padding: 0 !important;
	font-family: var(--insu-font-heading) !important;
	font-size: 0.86rem !important;
	line-height: 1.2 !important;
	font-weight: 600 !important;
	color: var(--insu-color-ink-soft) !important;
	text-shadow: none !important;
	text-align: center !important;
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-comprar {
	border-color: #d4c200 !important;
	background: #ffe600 !important;
	box-shadow: 0 6px 14px rgba(45, 50, 119, 0.16) !important;
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-comprar .mb-text {
	color: #2d3277 !important;
	font-weight: 700 !important;
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-comprar:hover,
.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-comprar:focus-visible {
	background: #f3d900 !important;
	border-color: #c6b600 !important;
	box-shadow: 0 10px 20px rgba(45, 50, 119, 0.22) !important;
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-comprar .mb-text::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	background-image: url('/wp-content/mu-plugins/assets/mercadolibre.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-ficha-tecnica .mb-text::before {
	content: "📄";
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-folleto .mb-text::before {
	content: "📘";
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-certificado-anmat .mb-text::before,
.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-certificado-senasa .mb-text::before {
	content: "✅";
}

.single-product .woocommerce-product-details__short-description a.maxbutton.maxbutton-hojas-de-seguridad .mb-text::before {
	content: "🧪";
}

.single-product .woocommerce-product-details__short-description a.maxbutton .mb-text::before {
	font-size: 0.96rem;
	line-height: 1;
}

@media (max-width: 767px) {
	.single-product .woocommerce-product-details__short-description a.maxbutton {
		width: 100% !important;
	}
}

/* --------------------------------------------------------------------------
   Nosotros (page-id-3395): layout compacto + marcas homogéneas
   -------------------------------------------------------------------------- */
.page-id-3395 .site-content,
.page-id-3395 .elementor.elementor-3395 {
	background: var(--insu-color-surface-soft);
}

.page-id-3395 .header-spacer {
	display: block !important;
	visibility: visible !important;
	height: 156px !important;
}

.page-id-3395 .elementor.elementor-3395 {
	padding-top: 8px;
}

.page-id-3395 .elementor.elementor-3395 > .elementor-section {
	background: transparent !important;
}

.page-id-3395 .elementor.elementor-3395 > .elementor-section > .elementor-background-overlay {
	background: transparent !important;
	opacity: 1 !important;
}

.page-id-3395 .elementor-element-199ec4ae {
	display: none !important;
}

.page-id-3395 .elementor-element-71b5fe91 {
	margin-bottom: 16px !important;
	padding: 34px 0 8px !important;
}

.page-id-3395 .elementor-element-71b5fe91 > .elementor-background-overlay {
	display: none !important;
}

.page-id-3395 .elementor-element-71b5fe91 > .elementor-container,
.page-id-3395 .elementor-element-7cf80b3a > .elementor-container,
.page-id-3395 .elementor-element-1f0de2b6 > .elementor-container {
	max-width: 1200px !important;
}

.page-id-3395 .elementor-element-7adf2a76 > .elementor-element-populated {
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	grid-template-columns: minmax(300px, 0.95fr) minmax(420px, 1.25fr);
	gap: 28px;
	align-items: stretch !important;
}

.page-id-3395 .elementor-element-7adf2a76 > .elementor-element-populated > .elementor-section {
	margin: 0 !important;
}

.page-id-3395 .elementor-element-5af61534,
.page-id-3395 .elementor-element-55c63b12 {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 18px;
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

.page-id-3395 .elementor-element-5af61534 {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 220px;
	padding: 0 !important;
}

.page-id-3395 .elementor-element-5af61534 > .elementor-container {
	max-width: none !important;
}

.page-id-3395 .elementor-element-2fb8f68c > .elementor-element-populated {
	align-items: center !important;
	justify-content: center !important;
	min-height: 100%;
	padding: 0 !important;
}

.page-id-3395 .elementor-element-2fb8f68c > .elementor-widget-wrap {
	width: 100%;
	min-height: 220px;
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.page-id-3395 .elementor-element-2fb8f68c > .elementor-widget-wrap::before {
	content: "Nosotros";
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0;
	font-family: var(--insu-font-heading);
	font-size: clamp(1.9rem, 3vw, 2.5rem);
	font-weight: 600;
	line-height: 1.08;
	text-align: center;
	color: var(--insu-color-ink);
}

.page-id-3395 .elementor-element-aac8499 {
	display: none !important;
}

.page-id-3395 .elementor-element-aac8499 img {
	width: clamp(190px, 74%, 320px) !important;
	max-width: 320px !important;
	max-height: 140px !important;
	object-fit: contain !important;
}

/* Refuerzo: ocultar cualquier logo/imágen dentro del recuadro del título "Nosotros". */
.page-id-3395 .elementor-element-5af61534 .elementor-element-aac8499,
.page-id-3395 .elementor-element-5af61534 .elementor-widget-image,
.page-id-3395 .elementor-element-5af61534 .elementor-widget-image .elementor-widget-container,
.page-id-3395 .elementor-element-5af61534 .elementor-widget-image img {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.page-id-3395 .elementor-element-55c63b12 {
	padding: 0 !important;
}

.page-id-3395 .elementor-element-7961f84e > .elementor-element-populated {
	background: transparent !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: 34px 34px 30px !important;
}

.page-id-3395 .elementor-element-1e5a8086 {
	font-family: var(--insu-font-body) !important;
	font-size: 1.05rem !important;
	line-height: 1.68 !important;
	color: var(--insu-color-ink-soft) !important;
}

.page-id-3395 .elementor-element-1e5a8086 p {
	margin: 0 0 0.9em !important;
}

.page-id-3395 .elementor-element-1e5a8086 p:last-child {
	margin-bottom: 0 !important;
}

.page-id-3395 .elementor-element-4e466a1b > .elementor-widget-container {
	margin: 22px 0 0 !important;
}

.page-id-3395 .elementor-element-4e466a1b .elementor-button {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	border-radius: 999px;
	border: 1px solid rgba(164, 44, 23, 0.34);
	background: linear-gradient(135deg, var(--insu-color-accent) 0%, var(--insu-color-brand-blue) 100%);
	padding: 11px 22px 11px 20px !important;
	font-family: var(--insu-font-heading);
	font-size: 0.94rem;
	font-weight: 600;
	color: #ffffff;
}

.page-id-3395 .elementor-element-4e466a1b .elementor-button:hover,
.page-id-3395 .elementor-element-4e466a1b .elementor-button:focus {
	color: #ffffff;
	background: linear-gradient(135deg, var(--insu-color-accent-hover) 0%, #000a4a 100%);
	border-color: rgba(164, 44, 23, 0.52);
}

.page-id-3395 .elementor-element-7cf80b3a {
	padding: 40px 0 48px !important;
	background: transparent !important;
}

.page-id-3395 .elementor-element-45de9097 .elementor-heading-title {
	font-family: var(--insu-font-heading) !important;
	font-size: clamp(1.15rem, 2vw, 1.35rem) !important;
	font-weight: 600 !important;
	letter-spacing: 0.14em !important;
	color: var(--insu-color-ink-soft) !important;
}

.page-id-3395 .elementor-element-3c14371e .elementor-heading-title {
	font-family: var(--insu-font-heading) !important;
	font-size: clamp(1.6rem, 3.2vw, 2.15rem) !important;
	font-weight: 500 !important;
	line-height: 1.18 !important;
	color: var(--insu-color-ink) !important;
}

.page-id-3395 .elementor-element-45031425 .elementor-divider-separator {
	width: 100px !important;
	border-top-width: 2px !important;
	border-color: rgba(164, 44, 23, 0.45) !important;
}

.page-id-3395 .elementor-element-477f7299,
.page-id-3395 .elementor-element-8713251,
.page-id-3395 .elementor-element-710b09cd {
	padding-top: 14px !important;
}

.page-id-3395 .elementor-element-7cf80b3a .elementor-inner-section .elementor-column > .elementor-element-populated {
	margin: 6px !important;
	padding: 0 !important;
	min-height: 104px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(1, 15, 108, 0.1);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: none !important;
	overflow: hidden;
}

.page-id-3395 .elementor-element-7cf80b3a .elementor-inner-section .elementor-column > .elementor-element-populated > .elementor-background-overlay {
	display: none !important;
}

.page-id-3395 .elementor-element-7cf80b3a .elementor-widget-image .elementor-widget-container,
.page-id-3395 .elementor-element-7cf80b3a .elementor-widget-image .elementor-widget-container > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 100%;
	height: 100%;
	padding: 8%;
}

.page-id-3395 .elementor-element-7cf80b3a .elementor-widget-image img {
	width: auto !important;
	height: auto !important;
	max-width: 84% !important;
	max-height: 84% !important;
	object-fit: contain !important;
	image-rendering: auto;
	filter: contrast(1.02) saturate(1.02);
}

.page-id-3395 .elementor-element-1f0de2b6 {
	padding: 0 0 56px !important;
	background: transparent !important;
}

@media (max-width: 1024px) {
	.page-id-3395 .header-spacer {
		display: block !important;
		height: 124px !important;
	}

	.page-id-3395 .elementor-element-71b5fe91 {
		padding: 50px 0 8px !important;
	}

	.page-id-3395 .elementor-element-7adf2a76 > .elementor-element-populated {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.page-id-3395 .elementor-element-5af61534 {
		min-height: 180px;
	}

	.page-id-3395 .elementor-element-2fb8f68c > .elementor-element-populated {
		min-height: 180px;
	}

	.page-id-3395 .elementor-element-2fb8f68c > .elementor-widget-wrap {
		min-height: 180px;
	}

	.page-id-3395 .elementor-element-7961f84e > .elementor-element-populated {
		padding: 24px 20px !important;
	}

	.page-id-3395 .elementor-element-7cf80b3a {
		padding: 30px 14px 34px !important;
	}
}

@media (max-width: 767px) {
	.page-id-3395 .elementor.elementor-3395 {
		padding-top: 6px;
	}

	.page-id-3395 .header-spacer {
		display: block !important;
		height: 96px !important;
	}

	.page-id-3395 .elementor-element-71b5fe91 {
		padding-top: 34px !important;
	}

	.page-id-3395 .elementor-element-2fb8f68c > .elementor-widget-wrap::before {
		font-size: 1.7rem;
		padding: 6px 0;
	}

	.page-id-3395 .elementor-element-7cf80b3a .elementor-inner-section .elementor-column > .elementor-element-populated {
		min-height: 92px;
	}
}

/* --------------------------------------------------------------------------
   Contacto (page-id-3391): bloque unificado + formulario moderno
   -------------------------------------------------------------------------- */
.page-id-3391 .site-content,
.page-id-3391 .elementor.elementor-3391 {
	background: var(--insu-color-surface-soft);
}

.page-id-3391 .elementor.elementor-3391 {
	width: min(1220px, calc(100vw - 36px));
	margin: 0 auto;
	padding: 24px 0 50px;
	display: grid;
	grid-template-columns: minmax(0, 1.18fr) minmax(0, 0.82fr);
	gap: 22px;
	align-items: stretch;
}

.page-id-3391 .header-spacer {
	display: block !important;
	height: 152px !important;
}

.page-id-3391 .elementor.elementor-3391 > .elementor-section {
	margin: 0 !important;
	width: 100% !important;
}

.page-id-3391 .elementor-element-5c8bc212 {
	grid-column: 1;
	grid-row: 1;
	min-height: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 20px;
	background: #ffffff !important;
	box-shadow: 0 14px 34px rgba(2, 6, 23, 0.08);
	overflow: hidden;
}

.page-id-3391 .elementor-element-5c8bc212 > .elementor-background-overlay {
	display: none !important;
}

.page-id-3391 .elementor-element-5c8bc212 > .elementor-container,
.page-id-3391 .elementor-element-840c548 > .elementor-container {
	max-width: none !important;
}

.page-id-3391 .elementor-element-7d29dfa > .elementor-element-populated {
	padding: 24px 24px 22px !important;
}

.page-id-3391 .elementor-element-215b9f7 {
	margin-bottom: 14px !important;
}

.page-id-3391 .elementor-element-be7cc1d .elementor-heading-title {
	font-family: var(--insu-font-heading) !important;
	font-size: clamp(2rem, 3.1vw, 2.45rem) !important;
	font-weight: 500 !important;
	line-height: 1.04 !important;
	color: var(--insu-color-ink) !important;
}

.page-id-3391 .elementor-element-70e5d3bc {
	background: transparent !important;
}

.page-id-3391 .elementor-element-70e5d3bc > .elementor-container {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
	align-items: stretch;
}

.page-id-3391 .elementor-element-70e5d3bc .elementor-column {
	width: auto !important;
	flex: initial !important;
}

.page-id-3391 .elementor-element-452ba484 > .elementor-element-populated {
	height: 100%;
	padding: 18px 16px !important;
	border: 1px solid rgba(1, 15, 108, 0.12);
	border-radius: 16px;
	background: rgba(244, 247, 248, 0.82);
}

.page-id-3391 .elementor-element-1d631d4e .elementor-heading-title {
	font-family: var(--insu-font-heading) !important;
	font-size: 1.15rem !important;
	font-weight: 600 !important;
	color: var(--insu-color-ink) !important;
}

.page-id-3391 .elementor-element-3595c18 .elementor-divider-separator {
	width: 84px !important;
	border-top-width: 2px !important;
	border-color: rgba(164, 44, 23, 0.45) !important;
}

.page-id-3391 .elementor-element-34b2b67d,
.page-id-3391 .elementor-element-34b2b67d p,
.page-id-3391 .elementor-element-34b2b67d a {
	font-family: var(--insu-font-body) !important;
	font-size: 0.97rem !important;
	line-height: 1.55 !important;
	color: var(--insu-color-ink-soft) !important;
}

.page-id-3391 .elementor-element-f629aa9 .elementor-social-icons-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	gap: 10px;
}

.page-id-3391 .elementor-element-f629aa9 .elementor-social-icon {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	border: 1px solid rgba(1, 15, 108, 0.24);
	background: #ffffff;
	color: var(--insu-color-brand-blue);
	transition: transform 0.15s ease, color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.page-id-3391 .elementor-element-f629aa9 .elementor-social-icon-facebook-f {
	color: #1877f2;
	border-color: rgba(24, 119, 242, 0.4);
	background: rgba(24, 119, 242, 0.09);
}

.page-id-3391 .elementor-element-f629aa9 .elementor-social-icon-instagram {
	color: #e4405f;
	border-color: rgba(228, 64, 95, 0.38);
	background: rgba(228, 64, 95, 0.1);
}

.page-id-3391 .elementor-element-f629aa9 .elementor-social-icon-envelope {
	color: #a42c17;
	border-color: rgba(164, 44, 23, 0.34);
	background: rgba(164, 44, 23, 0.1);
}

.page-id-3391 .elementor-element-f629aa9 .elementor-social-icon:hover {
	transform: translateY(-1px);
	filter: saturate(1.08);
}

.page-id-3391 .elementor-element-4c9b4124 > .elementor-element-populated {
	height: 100%;
	padding: 0 !important;
}

.page-id-3391 .elementor-element-19bad655 .elementor-widget-container {
	height: 100%;
	padding: 18px !important;
	border: 1px solid rgba(1, 15, 108, 0.12);
	border-radius: 16px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

.page-id-3391 .elementor-element-19bad655 .elementor-form {
	height: 100%;
}

.page-id-3391 .elementor-element-19bad655 .elementor-form-fields-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 11px;
}

.page-id-3391 .elementor-element-19bad655 .elementor-col-100 {
	grid-column: 1 / -1;
}

.page-id-3391 .elementor-element-19bad655 .elementor-field-group {
	margin-bottom: 0 !important;
}

.page-id-3391 .elementor-element-19bad655 .elementor-field {
	min-height: 48px;
	height: 48px;
	border: 1px solid var(--insu-color-border-control);
	border-radius: 11px;
	background: #ffffff;
	padding: 0 14px;
	font-family: var(--insu-font-body);
	font-size: 0.94rem;
	color: var(--insu-color-ink);
}

.page-id-3391 .elementor-element-19bad655 textarea.elementor-field {
	min-height: 128px;
	height: auto;
	padding: 12px 14px;
	resize: vertical;
}

.page-id-3391 .elementor-element-19bad655 .elementor-field:focus {
	border-color: rgba(164, 44, 23, 0.52) !important;
	box-shadow: 0 0 0 3px rgba(164, 44, 23, 0.14) !important;
}

.page-id-3391 .elementor-element-19bad655 .elementor-button {
	width: 100%;
	min-height: 48px;
	border: 1px solid rgba(164, 44, 23, 0.3);
	border-radius: 999px;
	background: linear-gradient(135deg, var(--insu-color-accent) 0%, var(--insu-color-brand-blue) 100%);
	color: #ffffff !important;
	font-family: var(--insu-font-heading);
	font-size: 0.95rem;
	font-weight: 600;
}

.page-id-3391 .elementor-element-19bad655 .elementor-button:hover,
.page-id-3391 .elementor-element-19bad655 .elementor-button:focus-visible {
	background: linear-gradient(135deg, var(--insu-color-accent-hover) 0%, #000a4a 100%);
}

.page-id-3391 .elementor-element-840c548 {
	grid-column: 2;
	grid-row: 1;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 14px 34px rgba(2, 6, 23, 0.08);
	overflow: hidden;
}

.page-id-3391 .elementor-element-1141a9b > .elementor-element-populated {
	height: 100%;
	padding: 0 !important;
}

.page-id-3391 .elementor-element-9f58b21,
.page-id-3391 .elementor-element-9f58b21 .elementor-widget-container,
.page-id-3391 .elementor-element-9f58b21 .elementor-custom-embed {
	height: 100%;
}

.page-id-3391 .elementor-element-9f58b21 iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 640px;
	border: 0;
}

@media (max-width: 1199px) {
	.page-id-3391 .header-spacer {
		height: 124px !important;
	}

	.page-id-3391 .elementor.elementor-3391 {
		width: calc(100vw - 24px);
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.page-id-3391 .elementor-element-5c8bc212,
	.page-id-3391 .elementor-element-840c548 {
		grid-column: 1;
	}

	.page-id-3391 .elementor-element-840c548 {
		grid-row: 2;
	}

	.page-id-3391 .elementor-element-9f58b21 iframe {
		min-height: 420px;
	}
}

@media (max-width: 920px) {
	.page-id-3391 .elementor-element-70e5d3bc > .elementor-container {
		grid-template-columns: 1fr;
		gap: 12px;
	}
}

@media (max-width: 767px) {
	.page-id-3391 .header-spacer {
		height: 94px !important;
	}

	.page-id-3391 .elementor.elementor-3391 {
		padding: 8px 0 34px;
	}

	.page-id-3391 .elementor-element-7d29dfa > .elementor-element-populated {
		padding: 14px 12px 14px !important;
	}

	.page-id-3391 .elementor-element-19bad655 .elementor-widget-container {
		padding: 12px !important;
	}

	.page-id-3391 .elementor-element-19bad655 .elementor-form-fields-wrapper {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.page-id-3391 .elementor-element-19bad655 .elementor-col-50,
	.page-id-3391 .elementor-element-19bad655 .elementor-col-100 {
		grid-column: 1;
	}

	.page-id-3391 .elementor-element-9f58b21 iframe {
		min-height: 320px;
	}
}
