:root {
	--ico-header-offset: 180px;
}

#content.site-content {
	padding-top: var(--ico-header-offset);
}

.admin-bar .ico-global-header {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .ico-global-header {
		top: 46px;
	}
}

.ico-global-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: #fff;
	color: #12415a;
	font-family: var(--icofoods-font-primary);
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.09);
	background: var(--ico-header-bg, #fff);
}

.ico-global-header a {
	color: inherit;
	text-decoration: none;
}

.ico-global-header a.ico-mega-view-all{
	color: #3e9ada;
}

.ico-variant-b2c .ico-global-header a.ico-mega-view-all{
	color: #8dbf3e;
}

.ico-global-header .ico-tracking-link{
	color: #459cd6;
}

.ico-header-actions a {
	color: #459cd6;
}

.ico-global-header.is-preheader-hidden .ico-preheader {
	display: none;
}

.ico-preheader {
	background: var(--ico-preheader-bg, #459cd6);
	color: #fff;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.ico-preheader-inner {
	max-width: 480px;
	margin: 0 auto;
	padding: 11px 16px;
	display: grid;
	grid-template-columns: 20px 1fr 20px 28px;
	align-items: center;
	gap: 12px;
}

.ico-preheader-track-wrap {
	overflow: hidden;
}

.ico-preheader-track {
	display: flex;
	transition: transform 0.35s ease;
}

.ico-preheader-slide {
	min-width: 100%;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.1px;
}

.ico-preheader-slide a,
.ico-preheader-slide span {
	color: #fff;
}

.ico-preheader-arrow {
	background: transparent;
	border: 0;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
}

.ico-preheader-close {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 0;
	background: #ffffff;
	color: #0b4460;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.ico-header-shell {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 16px;
}

.ico-header-desktop {
	background: var(--ico-header-bg, #fff);
	position: relative;
	z-index: 30;
}

.ico-header-top-band {
	background: var(--ico-preheader-bg, #3e9ada);
}

.ico-header-main-band {
	background: var(--ico-header-bg, #fff);
}

.ico-header-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 56px;
}

.ico-header-tabs {
	display: flex;
	align-items: flex-end;
	gap: 8px;
	height: 100%;
}

.ico-tab {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	height: 47px;
	padding: 0 14px;
	border-radius: 16px 16px 0 0;
	color: rgba(255, 255, 255, 0.95);
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	justify-content: center;
	align-items: center;
}

.ico-tab-business {
	width: 100%;
	max-width: 232px;
	border-radius: 23.5px 23.5px 0 0;
}

.ico-tab-home {
	width: 100%;
	max-width: 232px;
	border-radius: 23.5px 23.5px 0 0;
}

.ico-tab-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.ico-tab-icon svg {
	display: block;
}

.ico-tab-text {
	white-space: nowrap;
}

.ico-variant-b2b .ico-tab:last-child .ico-tab-text {
	color: white;
}

.ico-tab-home.is-active .ico-tab-icon path {
	fill: #0b4460;
}

.ico-variant-b2c .ico-tab-home.is-active .ico-tab-icon path{
	fill: white;
}

.ico-tab.is-active {
	background: #fff;
	color: #2e8bd7;
}

.ico-variant-b2c .ico-tab.is-active {
	background: #0b4460 !important;
	color: white !important;
}

.ico-header-top-links {
	display: flex;
	align-items: center;
	gap: 14px;
	color: #fff;
	font-size: 16px;
	font-weight: 500;
}

.ico-header-top-links a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	opacity: 1;
	font-size: 14px;
	font-weight: 300;
}

.ico-header-top-links a:hover{
	opacity: 0.8;
}

.ico-header-top-links a:not(:last-child)::after {
	content: "";
	width: 1px;
	height: 16px;
	background: rgba(255, 255, 255, 0.55);
	margin-left: 10px;
}

.ico-header-top-links img {
	width: 13px;
	height: 13px;
	object-fit: contain;
}

.ico-header-main {
	display: grid;
	grid-template-columns: 150px minmax(280px, 1fr) auto;
	gap: 18px;
	align-items: center;
	padding: 12px 0 10px 40px;
}

.ico-header-logo{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 90px;
}

.ico-header-logo img {
	max-height: 88px;
	width: auto;
	display: block;
}

.ico-header-search {
	display: flex;
	border: 2px solid #eaeaea;
	border-radius: 999px;
	overflow: hidden;
	height: 52px;
	width: 100%;
	max-width: 492px;
	justify-self: start;
	background: #ffffff;
}

.ico-header-search-wrap {
	position: relative;
	width: 100%;
	max-width: 492px;
	justify-self: start;
}

.ico-header-search-wrap .ico-header-search {
	max-width: 100%;
}

.ico-search-leading-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	min-width: 20px;
	margin-left: 16px;
}

.ico-search-leading-icon .ico-search-leading-svg,
.ico-search-leading-icon svg,
.ico-search-submit-icon svg {
	display: block;
	width: 20px;
	height: 20px;
}

.ico-search-clear {
	display: none;
	width: 20px;
	height: 20px;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.ico-header-search.is-has-value .ico-search-leading-svg {
	display: none;
}

.ico-header-search.is-has-value .ico-search-clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.ico-global-header.ico-variant-business .ico-search-clear {
	color: #459cd6;
	background-color: white;
}

.ico-global-header.ico-variant-home .ico-search-clear {
	color: #8dbf3e;
	background-color: white;
}

.ico-header-search input {
	flex: 1;
	border: 0;
	background: transparent;
	padding: 0 16px 0 10px;
	font-size: 18px;
	color: #eaeaea;
	outline: none;
}

.ico-header-search input[type="search"]::-webkit-search-cancel-button,
.ico-header-search input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
	appearance: none;
	display: none;
}

.ico-header-search input[type="search"]::-ms-clear,
.ico-header-search input[type="search"]::-ms-reveal {
	display: none;
	width: 0;
	height: 0;
}

.ico-header-search input::placeholder {
	color: #a4a4a4;
	opacity: 1;
}

.ico-variant-b2b .ico-header-search input{
	background-color: #ffffff;
}

.ico-variant-b2b .ico-header-search{
	background-color: #ffffff;
}

.ico-header-search button {
	border: 0;
	padding: 0 30px;
	background: #eaeaea;
	font-weight: 700;
	color: #a4a4a4;
	cursor: pointer;
	font-size: 18px;
}

.ico-global-header.ico-variant-business .ico-header-search.is-has-value {
	border-color: #3e9ada;
}

.ico-global-header.ico-variant-business .ico-header-search.is-has-value button[type="submit"] {
	background: #3e9ada;
	color: #ffffff;
}

.ico-global-header.ico-variant-home .ico-header-search.is-has-value {
	border-color: #8dbf3e !important;
}

.ico-global-header.ico-variant-home .ico-header-search.is-has-value button[type="submit"] {
	background: #8dbf3e;
	color: #ffffff;
}

.ico-live-search-panel {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	width: 100%;
	background: #ffffff;
	border: 0;
	border-radius: 10px;
	padding: 20px 14px 16px;
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28);
	z-index: 60;
}

.ico-live-search-group + .ico-live-search-group {
	margin-top: 20px;
}

.ico-live-search-group h4 {
	margin: 0 0 14px;
	color: #0b4460;
}

.ico-live-search-group ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ico-live-search-group li + li {
	margin-top: 8px;
}

.ico-live-search-group a {
	color: #343434;
}

.ico-live-products a {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #0b4460;
}

.ico-live-products img,
.ico-live-product-thumb-empty {
	width: 44px;
	height: 32px;
	flex: 0 0 44px;
	object-fit: contain;
}

.ico-live-product-thumb-empty {
	background: rgba(11, 68, 96, 0.08);
	border-radius: 6px;
}

.ico-live-search-empty {
	color: #505050;
	padding: 2px 0;
}

.ico-live-search-footer {
	margin-top: 18px;
	display: flex;
	justify-content: center;
}

.ico-live-search-all {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 28px;
	border-radius: 999px;
	font-size: 14px;
	background: #8dbf3e;
	color: #ffffff !important;
	font-weight: 500;
}

.ico-variant-b2b .ico-live-search-all {
	background: #0b4460;
}

.ico-header-actions {
	display: flex;
	align-items: center;
	gap: 0;
}

.ico-action-call {
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 1;
	padding-right: 16px;
	border-right: 1px solid #dcdcdc;
}

.ico-action-call-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
}

.ico-action-call-icon svg {
	display: block;
	width: 28px;
	height: 28px;
}

.ico-action-call-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1px;
}

.ico-action-label {
	font-size: 14px;
	color: #459cd6;
	line-height: 1;
}

.ico-action-call strong {
	font-size: 18px;
	font-weight: 800;
	color: #459cd6;
	letter-spacing: 0;
	line-height: 1;
}

.ico-action-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 700;
	color: #2f8ad5;
	padding: 0 18px;
	min-height: 44px;
	position: relative;
	line-height: 1;
}

.ico-action-link + .ico-action-link {
	margin-left: 0;
}

.ico-action-link + .ico-action-link::before {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	bottom: 8px;
	width: 1px;
	background: #d7dee5;
}

.ico-action-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	position: relative;
}

.ico-action-icon svg {
	width: 100%;
	height: 100%;
	display: block;
}

.ico-action-link-favorites .ico-action-text,
.ico-action-link-cart .ico-action-text {
	display: none;
}

.ico-action-link-favorites,
.ico-action-link-cart {
	padding: 0 14px;
	gap: 0;
}

.ico-cart-indicator {
	position: absolute;
	top: -4px;
	right: -4px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #e60012;
	opacity: 0;
	transform: scale(0.5);
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.ico-action-link-cart.has-items .ico-cart-indicator {
	opacity: 1;
	transform: scale(1);
}

.ico-action-link-cart.is-shaking .ico-action-icon {
	animation: ico-cart-shake 0.42s ease;
}

@keyframes ico-cart-shake {
	0% { transform: translateX(0); }
	20% { transform: translateX(-1.5px) rotate(-4deg); }
	40% { transform: translateX(1.5px) rotate(4deg); }
	60% { transform: translateX(-1px) rotate(-2deg); }
	80% { transform: translateX(1px) rotate(2deg); }
	100% { transform: translateX(0); }
}

.ico-header-menu-bar {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 16px;
	padding: 9px 0 13px;
	border-bottom: 1px solid #e3e8ed;
}

.ico-category-toggle {
	border: 0;
	background: var(--ico-accent, #8dbf3e);
	color: #fff;
	width: 184px;
	height: 44px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 999px;
	font-size: 16px;
	font-weight: 600;
	gap: 8px;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.ico-category-toggle .ico-toggle-arrow,
.ico-brands-toggle .ico-toggle-arrow {
	display: inline-flex;
	line-height: 0;
	transform-origin: center;
	transition: transform 0.2s ease;
}

.ico-category-toggle .ico-toggle-arrow svg,
.ico-brands-toggle .ico-toggle-arrow svg {
	display: block;
	width: 12px;
	height: 7px;
}

.ico-global-header.is-menu-open .ico-category-toggle .ico-toggle-arrow {
	transform: rotate(180deg);
}

.ico-quick-links {
	display: flex;
	align-items: center;
	gap: 18px;
	min-width: 0;
	overflow-x: auto;
}

.ico-quick-links a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 16px;
	font-weight: 700;
	color: #2e8bd7;
	white-space: nowrap;
	transition: all 0.2s ease;
}

.ico-quick-link {
	position: relative;
}

.ico-quick-links a:hover{
	color: #8dbf3e;
}

.ico-variant-b2c .ico-quick-links a:hover{
	color: #8dbf3e !important;
}

.ico-quick-links a:hover svg path{
	color: #8dbf3e;
}

.ico-variant-b2c .ico-quick-links a:hover svg path{
	color: #8dbf3e !important;
}

.ico-quick-links img {
	width: 18px;
	height: 18px;
	object-fit: contain;
}

.ico-quick-link .ico-quick-link-icon-hover {
	display: none;
}

.ico-quick-link.has-hover-icon:hover .ico-quick-link-icon-default,
.ico-quick-link.has-hover-icon:focus-visible .ico-quick-link-icon-default {
	display: none;
}

.ico-quick-link.has-hover-icon:hover .ico-quick-link-icon-hover,
.ico-quick-link.has-hover-icon:focus-visible .ico-quick-link-icon-hover {
	display: block;
}

.ico-right-shortcuts {
	display: flex;
	align-items: center;
	gap: 18px;
}

.ico-right-shortcuts > a,
.ico-right-shortcuts > button {
	position: relative;
	padding-bottom: 6px;
}


.ico-right-shortcuts > a::after,
.ico-right-shortcuts > button::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -3px;
	width: 180px;
	height: 10px;
	opacity: 0;
	pointer-events: none;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% 100%;
	transition: opacity 0.2s ease;
}

.ico-right-shortcuts > button::after {
	bottom: -10px;
}

.ico-right-shortcuts > a:hover::after,
.ico-right-shortcuts > a:focus-visible::after,
.ico-right-shortcuts > button:hover::after,
.ico-right-shortcuts > button:focus-visible::after {
	opacity: 1;
}

.ico-variant-b2b .ico-right-shortcuts > a::after,
.ico-variant-b2b .ico-right-shortcuts > button::after {
	background-image: url("../images/subrayado-b2b.png");
}

.ico-variant-b2c .ico-right-shortcuts > a::after,
.ico-variant-b2c .ico-right-shortcuts > button::after {
	background-image: url("../images/subrayado-b2c.png");
}

.ico-brands-toggle {
	border: 0;
	background: transparent;
	font-size: 16px;
	font-weight: 700;
	padding-top: 0;
	color: #358fd7;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.ico-global-header.is-brands-open .ico-brands-toggle .ico-toggle-arrow {
	transform: rotate(180deg);
}

.ico-variant-b2b .ico-right-shortcuts .ico-toggle-arrow path{
	fill: #3e9ada;
}

.ico-tracking-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	font-weight: 800;
	color: #358fd7;
	white-space: nowrap;
}

.ico-tracking-link-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.ico-tracking-link-icon svg {
	display: block;
	width: 22px;
	height: 16px;
}

.ico-header-panels {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 40;
	pointer-events: none;
}

.ico-mega-menu,
.ico-brands-panel,
.ico-account-panel,
.ico-cart-panel {
	width: 100%;
	margin: 0;
	display: none;
	pointer-events: auto;
}

.ico-mega-menu,
.ico-brands-panel {
	border: 1px solid #f7fafc;
	border-top: 0;
	border-radius: 0 0 12px 12px;
	background: #f7fafc;
	box-shadow: 0 14px 30px rgba(16, 30, 46, 0.16);
}

.ico-variant-b2c .ico-brands-panel {
	border: 1px solid #ffffff;
}

.ico-variant-b2b .ico-global-header.is-menu-open .ico-mega-menu{
	background-color: #f7fafc;
}

.ico-variant-b2c .ico-global-header.is-menu-open .ico-mega-menu{
	background-color: #0b4460;
}

.ico-panel-shell {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 16px;
}

.ico-global-header.is-menu-open .ico-mega-menu {
	display: block;
	border: 0;
}

.ico-global-header.is-brands-open .ico-brands-panel {
	display: block;
}

.ico-global-header.is-account-open .ico-account-panel {
	display: block;
	background: transparent;
	box-shadow: none;
	border: 0;
}

.ico-global-header.is-cart-open .ico-cart-panel {
	display: block;
	background: transparent;
	box-shadow: none;
	border: 0;
}

.ico-account-panel .ico-panel-shell,
.ico-cart-panel .ico-panel-shell {
	display: block;
	padding: 0;
}

.ico-account-flyout {
	position: fixed;
	width: 430px;
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28);
	z-index: 1205;
	overflow: hidden;
	color: #2f2f2f;
}

.ico-account-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-bottom: 1px solid #ced6dc;
}

.ico-account-tab {
	border: 0;
	background: #ffffff;
	height: 52px;
	font-size: 16px;
	font-weight: 700;
	color: #8e979e;
	cursor: pointer;
	border-bottom: 3px solid transparent;
}

.ico-social-text{
	width: 100%;
	padding-right: 30px;
	text-align: center;
	font-weight: 400;
}

.ico-account-tab.is-active {
	color: #0b4460;
}

.ico-account-flyout[data-variant="business"] .ico-account-tab.is-active {
	border-bottom-color: #0b4460;
}

.ico-account-flyout[data-variant="home"] .ico-account-tab.is-active {
	border-bottom-color: #0b4460;
}

.ico-account-pane {
	padding: 20px 20px 18px;
}

.ico-account-form {
	display: grid;
	gap: 10px;
}

.ico-account-form label {
	font-size: 15px;
	font-weight: 500;
	color: #42484e;
}

.ico-account-field-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.ico-account-field-head label {
	margin: 0;
}

.ico-account-reset-link {
	font-size: 14px;
	font-weight: 700;
	color: #0b4460 !important;
	text-decoration: none;
	white-space: nowrap;
}

.ico-account-form input[type="text"],
.ico-account-form input[type="email"],
.ico-account-form input[type="password"] {
	width: 100%;
	height: 46px;
	border: 1px solid #d5dbe0;
	border-radius: 10px;
	background: #fff;
	padding: 0 14px;
	font-size: 15px;
	color: #2f2f2f;
}

.ico-password-field {
	position: relative;
}

.ico-password-field input {
	padding-right: 50px;
}

.ico-password-toggle {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	border: 0;
	background: transparent;
	width: 34px;
	height: 34px;
	padding: 0;
	border-radius: 50%;
	color: #6e7780;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.ico-password-toggle.is-active::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 24px;
	height: 1.5px;
	background: #191c1f;
	transform: translate(-50%, -50%) rotate(-38deg);
	pointer-events: none;
}

.ico-password-toggle img {
	display: block;
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.ico-account-check {
	display: flex;
	gap: 8px;
	align-items: flex-start;
	margin-top: 2px;
}

.ico-account-check input {
	margin-top: 5px;
}

.ico-account-check span {
	font-size: 13px;
	line-height: 1.35;
	color: #42484e;
}

.ico-account-check a:any-link {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.ico-account-submit {
	border: 0;
	height: 50px;
	border-radius: 999px;
	margin-top: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	cursor: pointer;
}

.ico-account-flyout[data-variant="business"] .ico-account-submit {
	background: #0b4460;
}

.ico-account-flyout[data-variant="home"] .ico-account-submit {
	background: #8dbf3e;
}

.ico-account-social {
	margin-top: 14px;
	padding-top: 14px;
	display: grid;
	gap: 10px;
}

.ico-account-social .ico-account-social-title {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 18px;
}

.ico-account-social .ico-account-social-title::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 1px;
	background: #dce2e8;
}

.ico-account-social .ico-account-social-title > span {
	position: relative;
	display: inline-block;
	font-size: 13px;
	color: #7d858d;
	background: #ffffff;
	padding: 0 10px;
	z-index: 1;
}

.ico-account-social a {
	height: 42px;
	border: 1px solid #d5dbe0;
	border-radius: 10px;
	background: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	padding: 0 14px;
	gap: 12px;
	font-size: 15px;
	font-weight: 500;
	color: #3f464d;
	line-height: 1;
}

.ico-account-social .ico-social-icon {
	display: inline-flex;
	width: 20px;
	height: 20px;
	align-items: center;
	justify-content: center;
	flex: 0 0 20px;
}

.ico-account-social .ico-social-icon svg {
	display: block;
	width: 20px;
	height: 20px;
}

.ico-account-autopass-note {
	margin: 0;
	font-size: 13px;
	line-height: 1.35;
	color: #4f4f4f;
}

.ico-cart-flyout {
	position: fixed;
	width: 500px;
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28);
	padding: 16px 18px 22px;
	z-index: 1205;
}

.ico-cart-flyout.is-loading {
	opacity: 1;
	pointer-events: none;
}

.ico-cart-flyout.is-loading::after {
	content: '';
	display: none;
}

.ico-cart-head {
	font-size: 17px;
	font-weight: 800;
	color: #0b4460;
	padding-bottom: 12px;
	border-bottom: 1px solid #dce3ea;
}

.ico-cart-items {
	display: grid;
	gap: 14px;
	padding: 12px 0 4px;
}

.ico-cart-item {
	display: grid;
	grid-template-columns: 82px 1fr auto;
	gap: 12px;
	align-items: center;
	padding: 10px 0;
	border-bottom: 1px solid #e7edf2;
}

.ico-cart-thumb {
	display: inline-flex;
	width: 82px;
	height: 82px;
	border: 1px solid #d8dde2;
	align-items: center;
	justify-content: center;
}

.ico-cart-thumb img,
.ico-cart-thumb-empty {
	width: 78px;
	height: 78px;
	object-fit: contain;
}

.ico-cart-thumb-empty {
	background: #f5f7fa;
}

.ico-cart-item-main {
	min-width: 0;
}

.ico-cart-name {
	display: block;
	color: #2f2f2f;
	font-size: 15px;
	line-height: 1.3;
	margin-bottom: 8px;
}

.ico-cart-row {
	display: flex;
	align-items: center;
	gap: 10px;
}

.ico-cart-qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid #d8dde2;
	border-radius: 10px;
	height: 36px;
}

.ico-cart-qty button {
	width: 30px;
	height: 34px;
	border: 0;
	background: transparent;
	font-size: 18px;
	line-height: 1;
	color: #4298d8;
	cursor: pointer;
}

.ico-cart-qty span {
	min-width: 26px;
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	color: #2f2f2f;
}

.ico-cart-prices {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
}

.ico-cart-price-now {
	font-size: 15px;
	font-weight: 800;
	color: #eb0000;
}

.ico-cart-old-price {
	font-size: 12px;
	color: #9e9e9e;
	text-decoration: line-through;
}

.ico-cart-remove {
	width: 24px;
	height: 24px;
	border: 0;
	background: transparent;
	color: #9aa8b3;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.ico-cart-footer {
	padding-top: 14px;
}

.ico-cart-subtotal-row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	color: #0b4460;
	margin-bottom: 8px;
}

.ico-cart-subtotal-row span {
	font-size: 16px;
}

.ico-cart-subtotal-row strong {
	font-size: 20px;
	color: #eb0000;
}

.ico-cart-footer p {
	margin: 0 0 14px;
	font-size: 14px;
	line-height: 1.35;
	color: #4f4f4f;
}

.ico-cart-checkout,
.ico-cart-view {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 46px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 800;
}

.ico-cart-checkout {
	color: #ffffff !important;
	margin-bottom: 12px;
	gap: 10px;
}

.ico-cart-view {
	border: 2px solid transparent;
	background: transparent;
}

.ico-cart-checkout-arrow {
	display: inline-flex;
	width: 20px;
	height: 20px;
}

.ico-cart-checkout-arrow svg {
	display: block;
	width: 20px;
	height: 20px;
}

.ico-cart-flyout[data-variant="business"] .ico-cart-checkout {
	background: #459cd6;
}

.ico-cart-flyout[data-variant="business"] .ico-cart-view {
	border-color: #459cd6;
	color: #459cd6 !important;
}

.ico-cart-flyout[data-variant="home"] .ico-cart-checkout {
	background: #8dbf3e;
}

.ico-cart-flyout[data-variant="home"] .ico-cart-view {
	border-color: #8dbf3e;
	color: #8dbf3e !important;
}

.ico-cart-empty {
	padding: 22px 0 10px;
	font-size: 15px;
	color: #4f4f4f;
}

.ico-mega-grid {
	display: grid;
	grid-template-columns: 1fr 280px;
	gap: 28px;
	padding: 24px 20px 18px;
}

.ico-mega-categories {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px 28px;
}

.ico-mega-category-card {
	background: transparent;
	border-radius: 8px;
	padding: 0;
}

.ico-mega-category-title {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

.ico-mega-custom-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	padding: 7px;
	border-radius: 8px;
	background: var(--ico-accent, #86be3f);
}

.ico-mega-custom-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ico-mega-category-title a {
	font-size: 20px;
	font-weight: 800;
	line-height: 1.15;
	color: #1c1f23;
}

.ico-variant-b2c .ico-mega-category-title a{
	color: white;
}

.ico-mega-category-card ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 4px;
}

.ico-mega-category-card li a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0 8px 1px;
	font-size: 16px;
	line-height: 1.5;
	color: #3d4751;
	font-weight: 400;
	transition: all 0.25s ease;
}

.ico-mega-category-card li a:hover{
	color: #0b4460;
	font-weight: 600;
}

.ico-variant-b2c .ico-mega-category-card li a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0 8px 1px;
	font-size: 16px;
	line-height: 1.5;
	color: #ffffff;
	font-weight: 400;
}

.ico-variant-b2c .ico-mega-category-card li a:hover{
	color: #8dbf3e;
	font-weight: 600;
}

.ico-mega-sub-icon {
	display: inline-flex;
	width: 18px;
	height: 18px;
	align-items: center;
	justify-content: center;
	flex: 0 0 18px;
}

.ico-mega-sub-icon img {
	width: 18px;
	height: 18px;
	object-fit: contain;
	display: block;
}

.ico-mega-view-all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 11px 0 0;
	color: #2e8bd7;
	font-size: 16px;
	font-weight: 700;
}

.ico-mega-view-all::after {
	content: "→";
	font-size: 18px;
	line-height: 1;
}

.ico-mega-banner img {
	width: 100%;
	height: auto;
	border-radius: 12px;
	display: block;
	transition: all 0.25s ease;
}

.ico-mega-banner img:hover {
	transform: scale(1.01);
}

.ico-mega-footer {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	align-items: center;
	padding: 12px 20px;
	border-radius: 0 0 12px 12px;
}

.ico-mega-footer-band {
	border-top: 1px solid #dce2e9;
	background: #f7fafc;
	border-radius: 0 0 12px 12px;
	overflow: hidden;
}

.ico-mega-footer-left,
.ico-mega-footer-right {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

.ico-mega-footer a {
	font-size: 12px;
	font-weight: 500;
	color: #343737;
}

.ico-mega-footer a:hover {
	color: #0b4460;
}

.ico-mega-footer-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.ico-mega-footer-link img {
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.ico-mega-footer-right a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.ico-mega-footer-right img {
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.ico-brands-panel-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 20px;
	border-bottom: 1px solid #dce3ea;
}

.ico-brands-panel-head span {
	font-size: 26px;
	font-weight: 800;
	color: #14344a;
}

.ico-brands-panel-head a {
	font-size: 15px;
	font-weight: 700;
	color: #2e8bd7;
}

.ico-brands-carousel {
	padding: 64px 20px 42px;
}

.ico-brands-viewport {
	overflow: hidden;
}

.ico-brands-track {
	display: flex;
	will-change: transform;
}

.ico-brands-page {
	min-width: 100%;
	flex: 0 0 100%;
}

.ico-brands-grid {
	display: grid;
	grid-template-columns: repeat(var(--ico-brand-columns, 7), minmax(0, 1fr));
	gap: 14px 20px;
	align-items: center;
}

.ico-brand-item {
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 0;
	border-radius: 0;
	min-height: 48px;
	padding: 0;
}

.ico-brand-item img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.ico-brand-item span {
	font-size: 15px;
	font-weight: 700;
	text-align: center;
	color: #12364c;
}

.ico-brands-dots {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	padding: 14px 0 4px;
}

.ico-brands-dots button {
	width: 10px;
	height: 10px;
	border: 1px solid #3f9ada;
	border-radius: 50%;
	padding: 0;
	background: transparent;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.ico-brands-dots button.is-active {
	background: #3f9ada;
	border-color: #3f9ada;
}

.ico-brands-carousel:not(.has-multiple-pages) .ico-brands-dots {
	display: none;
}

.ico-desktop-overlay {
	position: fixed;
	left: 0;
	right: 0;
	top: var(--ico-header-offset, 180px);
	bottom: 0;
	background: rgba(7, 18, 28, 0.52);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 20;
	transition: opacity 0.2s ease, visibility 0.2s ease;
}

.ico-global-header.is-menu-open .ico-desktop-overlay,
.ico-global-header.is-brands-open .ico-desktop-overlay {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

html.has-ico-variant-modal,
body.has-ico-variant-modal {
	overflow: hidden;
}

.ico-variant-modal {
	position: fixed;
	inset: 0;
	z-index: 5000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.ico-variant-modal[hidden] {
	display: none !important;
}

.ico-variant-modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(7, 18, 28, 0.72);
	backdrop-filter: blur(4px);
}

.ico-variant-modal-dialog {
	position: relative;
	z-index: 2;
	width: min(960px, calc(100vw - 48px));
	color: #ffffff;
}

.ico-variant-modal-head {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	margin-bottom: 22px;
	text-align: center;
}

.ico-variant-modal-logo {
	display: block;
	max-width: 164px;
	max-height: 86px;
	width: auto;
	height: auto;
}

.ico-variant-modal-brand {
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.8px;
	text-transform: uppercase;
}

.ico-variant-modal-head p {
	margin: 0;
	font-size: 38px;
	font-weight: 700;
	line-height: 1.2;
}

.ico-variant-modal-options {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-radius: 10px;
	overflow: hidden;
	background: linear-gradient(102deg, #2f9ce2 0%, #14567e 100%);
}

.ico-variant-option {
	padding: 46px 44px 42px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.ico-variant-option + .ico-variant-option {
	border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.ico-variant-option-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

.ico-variant-option h3 {
	margin: 0 0 18px;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.2;
}

.ico-variant-option ul {
	margin: 0 0 20px;
	padding: 0 0 0 22px;
	max-width: 380px;
	text-align: left;
	font-size: 34px;
	line-height: 1.35;
	font-weight: 400;
}

.ico-variant-option p {
	margin: 0;
	max-width: 500px;
	font-size: 38px;
	font-weight: 700;
	line-height: 1.24;
}

.ico-variant-option-cta {
	margin-top: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	width: min(100%, 374px);
	height: 58px;
	padding: 0 20px;
	border: 1px solid #ffffff;
	border-radius: 999px;
	background: #ffffff;
	color: #0b4460;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
}

.ico-variant-option-cta svg {
	width: 20px;
	height: 20px;
}

.ico-mobile-header,
.ico-mobile-drawer,
.ico-mobile-drawer-backdrop {
	display: none;
}

.ico-variant-home .ico-header-shell {
	color: #fff;
}

.ico-variant-home .ico-header-main-band,
.ico-variant-home .ico-header-main,
.ico-variant-home .ico-header-menu-bar {
	border-color: rgba(255, 255, 255, 0.18);
}

.ico-variant-b2c .ico-header-search {
	border-color: #eaeaea !important;
	background-color: white !important;
}

.ico-variant-home .ico-header-search {
	border-color: rgba(255, 255, 255, 0.25);
	background: rgba(255, 255, 255, 0.08);
}

.ico-variant-home .ico-header-search input {
	color: #fff;
}

.ico-variant-b2c .ico-header-search input {
	color: #000 !important;
}

.ico-variant-home .ico-header-search input::placeholder {
	color: rgba(255, 255, 255, 0.75);
}

.ico-variant-home .ico-header-search button {
	background: rgba(255, 255, 255, 0.22);
	color: #fff;
}

.ico-variant-b2c .ico-header-search button {
	background: #eaeaea;
	color: #a4a4a4;
}

.ico-variant-b2c .ico-header-search input::placeholder {
	color: #a4a4a4;
}

.ico-variant-home .ico-action-link,
.ico-variant-home .ico-tracking-link,
.ico-variant-home .ico-quick-links a,
.ico-variant-home .ico-brands-toggle,
.ico-variant-home .ico-action-call strong {
	color: #fff;
}

.ico-variant-home .ico-action-label {
	color: #b8d4e8;
}

.ico-variant-home .ico-tab.is-active {
	background: #fff;
	color: #0b4460;
}

.ico-variant-b2c .ico-preheader{
	background-color: var(--ico-preheader-bg, #ffffff);
}

.ico-variant-b2c .ico-preheader .ico-preheader-slide a,
.ico-variant-b2c .ico-preheader .ico-preheader-slide span{
	color: #0b4460;
}

.ico-variant-b2c .ico-preheader .ico-preheader-arrow{
	color: #0b4460;
}

.ico-variant-b2c .ico-header-shell .ico-header-top-links{
	color: #0b4460;
}

.ico-variant-b2c .ico-header-top-band{
	background-color: var(--ico-preheader-bg, #ffffff);
}

.ico-variant-b2c .ico-header-top-links a:not(:last-child)::after{
	background-color: #0b4460;
}

.ico-variant-b2c .ico-preheader-close{
	background: #0b4460;
	color: #ffffff;
}

.ico-variant-b2c .ico-tab.ico-tab-business .ico-tab-icon path{
	fill: #0b4460;
}

.ico-variant-b2c .ico-tab.ico-tab-business .ico-tab-text{
	color: #0b4460;
}

.ico-variant-b2c .ico-action-call-icon svg path{
	stroke: white;
}

.ico-variant-b2c .ico-action-icon svg path{
	fill: white;
}


html.ico-mobile-cart-active,
body.ico-mobile-cart-active {
	overflow: hidden !important;
	overscroll-behavior: none;
}

@media (max-width: 980px) {
	.ico-header-shell,
	.ico-desktop-overlay {
		display: none !important;
	}

	.ico-header-panels {
		display: block !important;
		position: static;
		pointer-events: none;
	}

	.ico-header-panels .ico-mega-menu,
	.ico-header-panels .ico-brands-panel,
	.ico-header-panels .ico-cart-panel {
		display: none !important;
	}

	.ico-header-panels .ico-account-panel {
		pointer-events: auto;
	}

	.ico-mobile-header {
		display: block;
		background: var(--ico-header-bg, #fff);
	}

	.ico-mobile-tabs {
		display: flex;
		gap: 8px;
		padding: 8px 12px 0;
		background: var(--ico-preheader-bg, #3e9ada);
	}

	.ico-mobile-tabs .ico-tab {
		height: 38px;
		padding: 0 10px;
		font-size: 14px;
		border-radius: 14px 14px 0 0;
	}

	.ico-mobile-tabs .ico-tab-business {
		width: 100%;
		max-width: 161px;
	}

	.ico-mobile-main {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 14px 12px;
		border-bottom: 1px solid #e4e8ec;
	}

	.ico-mobile-menu-toggle {
		border: 0;
		background: transparent;
		font-size: 38px;
		line-height: 1;
		color: #2e8bd7;
		cursor: pointer;
	}

	.ico-mobile-logo img {
		max-height: 74px;
		width: auto;
	}

	.ico-mobile-actions {
		display: flex;
		gap: 0;
		align-items: center;
	}

	.ico-mobile-actions a {
		color: #2e8bd7;
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 34px;
	}

	.ico-mobile-actions a + a {
		border-left: 1px solid #d5dde4;
	}

	.ico-mobile-actions svg {
		width: 24px;
		height: 24px;
		display: block;
	}

	.ico-variant-modal {
		padding: 20px;
	}

	.ico-variant-modal-dialog {
		width: min(760px, calc(100vw - 40px));
	}

	.ico-variant-modal-head p {
		font-size: 32px;
	}

	.ico-variant-option h3 {
		font-size: 34px;
	}

	.ico-variant-option ul {
		font-size: 27px;
	}

	.ico-variant-option p {
		font-size: 28px;
	}

	.ico-variant-option-cta {
		font-size: 28px;
		height: 54px;
	}

	.ico-mobile-search {
		display: flex;
		margin: 0;
		width: 100%;
		border: 1px solid #d8d8d8;
		border-radius: 999px;
		overflow: hidden;
		background: #f2f2f2;
		height: 50px;
	}

	.ico-mobile-search-wrap {
		position: relative;
	}

	.ico-mobile-search input {
		flex: 1;
		border: 0;
		background: transparent;
		padding: 0 14px;
		min-width: 0;
	}

	/* Evita la X nativa de Safari/Chrome: usamos solo el botón propio del buscador. */
	.ico-mobile-search input[type="search"]::-webkit-search-cancel-button,
	.ico-mobile-search input[type="search"]::-webkit-search-decoration,
	.ico-mobile-search input[type="search"]::-webkit-search-results-button,
	.ico-mobile-search input[type="search"]::-webkit-search-results-decoration {
		-webkit-appearance: none;
		appearance: none;
		display: none;
	}

	.ico-mobile-search input[type="search"]::-ms-clear,
	.ico-mobile-search input[type="search"]::-ms-reveal {
		display: none;
		width: 0;
		height: 0;
	}

	.ico-mobile-search button[type="submit"] {
		border: 0;
		background: #dedede;
		width: 58px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 0;
	}

	.ico-mobile-search-clear {
		display: none;
		border: 0;
		background: transparent;
		width: 38px;
		min-width: 38px;
		font-size: 28px;
		line-height: 1;
		color: #6a7781;
		padding: 0;
	}

	.ico-mobile-search.is-has-value .ico-mobile-search-clear {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.ico-mobile-live-search-panel {
		position: absolute;
		left: 0;
		right: 0;
		top: calc(100% + 8px);
		background: #f1f5f8;
		border-radius: 10px;
		padding: 14px 12px 16px;
		z-index: 15;
		box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
	}

	.ico-mobile-live-group + .ico-mobile-live-group {
		margin-top: 14px;
	}

	.ico-mobile-live-group h4 {
		margin: 0 0 10px;
		font-size: 17px;
		font-weight: 700;
		color: #0f3d5a;
	}

	.ico-mobile-live-group ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.ico-mobile-live-group li + li {
		margin-top: 8px;
	}

	.ico-mobile-live-group a {
		color: #2a2f34;
	}

	.ico-mobile-live-products a {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.ico-mobile-live-products img,
	.ico-mobile-live-thumb-empty {
		width: 32px;
		height: 32px;
		object-fit: contain;
	}

	.ico-mobile-live-thumb-empty {
		background: rgba(12, 70, 103, 0.08);
		border-radius: 6px;
	}

	.ico-mobile-live-empty {
		font-size: 14px;
		color: #374651;
	}

	.ico-mobile-live-footer {
		margin-top: 14px;
		display: flex;
		justify-content: center;
	}

	.ico-mobile-live-all {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height: 36px;
		padding: 0 22px;
		border-radius: 999px;
		background: #0f4a6a;
		color: #fff !important;
		font-weight: 700;
	}

	.ico-mobile-call {
		display: flex;
		align-items: center;
		background: #eaf5ff;
		padding: 12px 14px;
		color: #2e8bd7;
		font-weight: 700;
		font-size: 20px;
		gap: 8px;
	}

	.ico-mobile-call-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 28px;
	}

	.ico-mobile-call-icon svg {
		width: 28px;
		height: 28px;
		display: block;
	}

	.ico-mobile-call-label {
		font-weight: 500;
	}

	.ico-mobile-call strong {
		font-weight: 800;
		color: #3591d8;
	}

	.ico-mobile-call-arrow {
		margin-left: auto;
		font-size: 28px;
		line-height: 1;
		color: #2e8bd7;
	}

	.ico-mobile-drawer {
		position: fixed;
		top: 0;
		left: 0;
		width: min(360px, 92vw);
		height: 100vh;
		background: #f1f5f8;
		transform: translateX(-100%);
		transition: transform 0.25s ease;
		z-index: 1102;
		overflow: auto;
	}

	.ico-mobile-drawer-backdrop {
		position: fixed;
		inset: 0;
		background: rgba(6, 17, 28, 0.56);
		opacity: 0;
		visibility: hidden;
		transition: 0.2s ease;
		z-index: 1101;
	}

	.ico-global-header.is-mobile-open .ico-mobile-drawer,
	.ico-global-header.is-mobile-open .ico-mobile-drawer-backdrop {
		display: block;
	}

	.ico-global-header.is-mobile-open .ico-mobile-drawer {
		transform: translateX(0);
	}

	.ico-global-header.is-mobile-open .ico-mobile-drawer-backdrop {
		opacity: 1;
		visibility: visible;
	}

	.ico-mobile-drawer-head {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 12px;
		background: #fff;
	}

	.ico-mobile-drawer-head img {
		max-height: 44px;
	}

	.ico-mobile-drawer-close {
		border: 0;
		background: transparent;
		font-size: 34px;
		line-height: 1;
		color: #86be3f;
		cursor: pointer;
		padding: 0;
	}

	.ico-mobile-drawer-body {
		padding: 10px 12px 24px;
	}

	.ico-mobile-panel {
		display: none;
	}

	.ico-mobile-panel.is-active {
		display: block;
	}

	.ico-mobile-category-section {
		display: flex;
		flex-direction: column;
	}

	.ico-mobile-category-list {
		display: grid;
		gap: 2px;
		margin-bottom: 8px;
	}

	.ico-mobile-panel-open {
		border: 0;
		background: transparent;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 12px 2px;
		font-weight: 700;
		cursor: pointer;
		color: #0f3d5a;
		font-size: 17px;
		border-bottom: 1px solid #dde3ea;
		width: 100%;
		text-align: left;
	}

	.ico-mobile-next {
		font-size: 20px;
		line-height: 1;
		color: #144b6b;
	}

	.ico-mobile-panel-headline {
		display: grid;
		grid-template-columns: auto 1fr auto;
		align-items: center;
		gap: 10px;
		padding: 10px 2px 12px;
		margin-bottom: 4px;
	}

	.ico-mobile-panel-back {
		border: 0;
		background: transparent;
		font-size: 36px;
		line-height: 1;
		color: #0f3d5a;
		padding: 0;
		width: 24px;
	}

	.ico-mobile-panel-title-main {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		font-size: 17px;
		font-weight: 700;
		color: #0f3d5a;
	}

	.ico-mobile-panel-title-main img,
	.ico-mobile-panel-title-main .ico-mobile-brands-icon {
		width: 18px;
		height: 18px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.ico-mobile-brands-icon svg {
		width: 18px;
		height: 18px;
		display: block;
	}

	.ico-mobile-panel-headline > a {
		color: #0c4667;
		font-size: 17px;
		font-weight: 700;
	}

	.ico-mobile-cat-main {
		display: inline-flex;
		align-items: center;
		gap: 8px;
	}

	.ico-mobile-cat-main img {
		width: 16px;
		height: 16px;
		object-fit: contain;
		filter: saturate(0.9);
	}

	.ico-mobile-cat-label {
		color: #0c4667;
	}

	.ico-mobile-subcategory-list {
		display: grid;
		gap: 4px;
	}

	.ico-mobile-subcategory {
		border-bottom: 1px solid #dde3ea;
		padding-bottom: 4px;
	}

	.ico-mobile-subcategory summary {
		list-style: none;
		padding: 10px 0;
		font-size: 17px;
		font-weight: 700;
		color: #0f3d5a;
		position: relative;
		cursor: pointer;
	}

	.ico-mobile-subcategory summary::marker,
	.ico-mobile-subcategory summary::-webkit-details-marker {
		display: none;
	}

	.ico-mobile-subcategory summary::after {
		content: "⌄";
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		font-size: 20px;
		line-height: 1;
	}

	.ico-mobile-subcategory[open] summary::after {
		content: "⌃";
	}

	.ico-mobile-subcategory ul {
		list-style: none;
		margin: 0 0 6px;
		padding: 0;
	}

	.ico-mobile-subcategory li a {
		display: block;
		padding: 7px 16px 7px 0;
		color: #374651;
		position: relative;
		font-size: 16px;
	}

	.ico-mobile-subcategory li a::after {
		content: "›";
		position: absolute;
		right: 2px;
		top: 50%;
		transform: translateY(-50%);
		color: #2a3f50;
		font-size: 18px;
		line-height: 1;
	}

	.ico-mobile-subcategory-empty a {
		display: inline-flex;
		padding: 4px 0 10px;
		color: #0c4667;
		font-weight: 700;
	}

	.ico-mobile-tracking {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 54px;
		margin: 16px 0 24px;
		padding: 12px 16px;
		gap: 10px;
		border-radius: 8px;
		background-color: var(--ico-category-button-bg, var(--ico-accent, #86be3f));
		color: #fff;
		font-size: 17px;
		font-weight: 800;
		line-height: 1.2;
	}

	.ico-mobile-tracking:hover,
	.ico-mobile-tracking:focus-visible {
		color: #fff;
	}

	.ico-mobile-tracking-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		line-height: 0;
	}

	.ico-mobile-tracking-icon svg {
		width: 20px;
		height: 14px;
		display: block;
	}

	.ico-mobile-links,
	.ico-mobile-top-links {
		display: flex;
		flex-direction: column;
		gap: 8px;
		margin-bottom: 12px;
	}

	.ico-mobile-links a {
		display: flex;
		align-items: center;
		gap: 8px;
		padding: 7px 0;
		color: #0c4667;
		font-weight: 700;
	}

	.ico-mobile-links img {
		width: 16px;
		height: 16px;
	}

	.ico-mobile-top-links a {
		padding: 7px 0;
		border-bottom: 1px solid #d8e0e7;
		color: #0c4667;
		font-weight: 700;
	}

	.ico-mobile-top-links {
		margin-top: 8px;
		padding-top: 8px;
		border-top: 1px solid #d8e0e7;
	}

	.ico-mobile-brands {
		padding-top: 2px;
	}

	.ico-mobile-brands-carousel {
		padding: 0;
	}

	.ico-mobile-brands-carousel .ico-brands-grid {
		grid-template-columns: repeat(var(--ico-brand-columns, 3), minmax(0, 1fr));
		gap: 10px 12px;
	}

	.ico-mobile-brands-carousel .ico-brand-item {
		min-height: 42px;
	}

	.ico-mobile-brands-carousel .ico-brands-dots {
		padding-bottom: 2px;
	}

	.ico-mobile-cart-drawer {
		position: fixed;
		inset: 0;
		width: 100vw;
		height: 100vh;
		height: 100dvh;
		background: #f4f8fb;
		z-index: 99999;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		padding-top: env(safe-area-inset-top, 0px);
	}

	.ico-mobile-cart-drawer[hidden],
	.ico-mobile-cart-backdrop[hidden] {
		display: none !important;
	}

	.ico-mobile-cart-backdrop {
		position: fixed;
		inset: 0;
		background: rgba(6, 17, 28, 0.56);
		z-index: 99998;
	}

	.ico-mobile-cart-head {
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		flex: 0 0 64px;
		min-height: 64px;
		padding: 0 16px;
		background: #0b4460;
		border-bottom: 0;
		color: #fff;
	}

	.ico-mobile-cart-close {
		position: absolute;
		left: 18px;
		top: 50%;
		transform: translateY(-50%);
		width: 38px;
		height: 38px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		border: 0;
		background: transparent;
		font-size: 27px;
		font-weight: 300;
		line-height: 1;
		color: #fff;
		padding: 0;
		cursor: pointer;
	}

	.ico-mobile-cart-head strong {
		display: block;
		font-size: 24px;
		line-height: 1;
		font-weight: 800;
		color: #fff;
		text-align: center;
		transform: translateX(92px);
	}

	.ico-mobile-cart-body {
		flex: 1 1 auto;
		min-height: 0;
		overflow-y: auto;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
		padding: 16px 12px 18px;
		background: #f4f8fb;
	}

	.ico-mobile-cart-items {
		display: grid;
		gap: 12px;
	}

	.ico-mobile-cart-item {
		display: grid;
		grid-template-columns: 86px minmax(0, 1fr) 24px;
		gap: 12px;
		align-items: start;
		background: #fff;
		border: 1px solid #dce3ea;
		border-radius: 14px;
		padding: 12px;
		margin: 0;
		box-shadow: none;
	}

	.ico-mobile-cart-item .ico-cart-thumb {
		width: 86px;
		height: 86px;
		background: #fff;
	}

	.ico-mobile-cart-item .ico-cart-thumb img,
	.ico-mobile-cart-item .ico-cart-thumb-empty {
		width: 82px;
		height: 82px;
		object-fit: contain;
	}

	.ico-mobile-cart-item .ico-cart-name {
		margin: 0 0 10px;
		font-size: 16px;
		line-height: 1.28;
		font-weight: 500;
		color: #24536b;
		text-decoration: none;
	}

	.ico-mobile-cart-item .ico-cart-row {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.ico-mobile-cart-item .ico-cart-qty {
		height: 38px;
		border-radius: 9px;
		background: #fff;
	}

	.ico-mobile-cart-item .ico-cart-qty button {
		width: 34px;
		height: 36px;
		font-size: 19px;
	}

	.ico-mobile-cart-item .ico-cart-qty span {
		min-width: 32px;
		font-size: 16px;
	}

	.ico-mobile-cart-item .ico-cart-prices {
		display: inline-flex;
		align-items: baseline;
		gap: 7px;
		min-width: 0;
		flex-wrap: wrap;
	}

	.ico-mobile-cart-item .ico-cart-price-now {
		font-size: 17px;
		line-height: 1.15;
		font-weight: 800;
		white-space: nowrap;
		color: #ec0000;
	}

	.ico-mobile-cart-item .ico-cart-old-price {
		font-size: 11px;
		white-space: nowrap;
		color: #a7adb2;
	}

	.ico-mobile-cart-item .ico-cart-remove {
		width: 24px;
		height: 24px;
		font-size: 22px;
		color: #9ba8b2;
		padding: 0;
		margin-top: -2px;
	}

	.ico-mobile-cart-body > .ico-cart-empty {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 180px;
		padding: 28px 18px;
		text-align: center;
		color: #4f5c64;
	}

	.ico-mobile-cart-footer {
		flex: 0 0 auto;
		background: #fff;
		border-top: 1px solid #dce3ea;
		padding: 14px 16px calc(16px + env(safe-area-inset-bottom, 0px));
		box-shadow: 0 -5px 16px rgba(11, 68, 96, 0.04);
	}

	.ico-mobile-cart-footer .ico-cart-subtotal-row {
		margin: 0 0 8px;
	}

	.ico-mobile-cart-footer .ico-cart-subtotal-row > span {
		font-size: 16px;
		color: #0b4460;
	}

	.ico-mobile-cart-footer .ico-cart-subtotal-row strong,
	.ico-mobile-cart-footer .ico-cart-subtotal-row strong .amount,
	.ico-mobile-cart-footer .ico-cart-subtotal-row strong .woocommerce-Price-amount,
	.ico-mobile-cart-footer .ico-cart-subtotal-row strong .woocommerce-Price-currencySymbol,
	.ico-mobile-cart-footer .ico-cart-subtotal-row strong bdi,
	.ico-mobile-cart-footer .ico-cart-subtotal-row strong * {
		font-size: 20px;
		font-weight: 800;
		color: #ec0000 !important;
	}

	.ico-mobile-cart-footer p {
		margin: 0 0 14px;
		font-size: 13px;
		line-height: 1.35;
		color: #4b555b;
	}

	.ico-mobile-cart-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}

	.ico-mobile-cart-actions .ico-cart-view,
	.ico-mobile-cart-actions .ico-cart-checkout {
		height: 46px;
		min-height: 46px;
		margin: 0;
		border-radius: 999px;
		font-size: 13px;
		font-weight: 800;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		white-space: nowrap;
	}

	.ico-global-header.ico-variant-business .ico-mobile-cart-actions .ico-cart-checkout {
		background: #459cd6;
		border: 2px solid #459cd6;
		color: #fff !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-cart-actions .ico-cart-view {
		background: #fff;
		border: 2px solid #459cd6;
		color: #459cd6 !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-cart-actions .ico-cart-checkout {
		background: #8bc63f;
		border: 2px solid #8bc63f;
		color: #fff !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-cart-actions .ico-cart-view {
		background: #fff;
		border: 2px solid #8bc63f;
		color: #79b52f !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-cart-head {
		justify-content: flex-end;
		padding: 0 28px 0 16px;
		background: #ffffff;
		border-bottom: 1px solid #e3e8ed;
	}

	.ico-global-header.ico-variant-business .ico-mobile-cart-head strong {
		font-size: 22px;
		color: #0b4460;
		text-align: right;
		transform: none;
		margin-right: 2px;
	}

	.ico-global-header.ico-variant-business .ico-mobile-cart-close {
		color: #0b4460;
	}

}

@media (max-width: 767px) {
	.ico-variant-modal {
		padding: 16px;
	}

	.ico-variant-modal-dialog {
		width: min(344px, calc(100vw - 32px));
	}

	.ico-variant-modal-head {
		display: none;
	}

	.ico-variant-modal-options {
		grid-template-columns: 1fr;
		background: linear-gradient(165deg, #2899e1 0%, #125077 100%);
	}

	.ico-variant-option {
		padding: 28px 24px 26px;
	}

	.ico-variant-option + .ico-variant-option {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.12);
		background: rgba(8, 58, 88, 0.42);
	}

	.ico-variant-option h3 {
		font-size: 42px;
		margin-bottom: 10px;
	}

	.ico-variant-option ul {
		max-width: 100%;
		font-size: 33px;
		line-height: 1.28;
		margin-bottom: 14px;
	}

	.ico-variant-option p {
		font-size: 34px;
		line-height: 1.2;
	}

	.ico-variant-option-cta {
		margin-top: 18px;
		width: 100%;
		max-width: none;
		font-size: 30px;
	}
}


/* FIX v8: Las imágenes asignadas a categorías se usan para PLP/slider, no para el menú desplegable. */
.ico-global-header .ico-mega-category-title > img,
.ico-global-header .ico-mega-sub-icon,
.ico-mobile-drawer .ico-mobile-cat-main > img,
.ico-mobile-drawer .ico-mobile-panel-title-main > img {
  display: none !important;
}

/* FIX v23: Modal de método de entrada integrado según maqueta y manteniendo datos administrables */
html.has-ico-variant-modal,
body.has-ico-variant-modal {
  overflow: hidden !important;
}

.ico-variant-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 100vh !important;
  padding: 40px 20px !important;
  overflow-y: auto !important;
}

.ico-variant-modal[hidden] {
  display: none !important;
}

.ico-variant-modal-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.87) !important;
  backdrop-filter: blur(5.85px) !important;
  -webkit-backdrop-filter: blur(5.85px) !important;
}

.ico-variant-modal-dialog {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 954px !important;
  margin: auto !important;
  color: #ffffff !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  font-family: var(--ico-font-family, 'Avenir Next LT Pro', 'Avenir LT Pro', Arial, sans-serif) !important;
}

.ico-variant-modal-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 0 32px !important;
  text-align: center !important;
}

.ico-variant-modal-logo {
  display: block !important;
  width: 150px !important;
  height: 113px !important;
  max-width: 150px !important;
  max-height: 113px !important;
  object-fit: contain !important;
  margin: 0 0 32px !important;
}

.ico-variant-modal-brand {
  font-size: 28px !important;
  line-height: 1 !important;
  letter-spacing: .8px !important;
  text-transform: uppercase !important;
  margin: 0 0 32px !important;
}

.ico-variant-modal-head p {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: normal !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
  max-width: 90% !important;
}

.ico-variant-modal-options {
  width: 954px !important;
  max-width: 100% !important;
  min-height: 493px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: 0 15px 50px rgba(0, 0, 0, 0.5) !important;
}

.ico-variant-option {
  width: 100% !important;
  min-width: 0 !important;
  padding: 40px 48px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  position: relative !important;
}

.ico-variant-option-business {
  background: linear-gradient(180deg, #166498 0%, #178FDF 100%) !important;
  border-radius: 8px 0 0 8px !important;
}

.ico-variant-option-home {
  background: linear-gradient(180deg, #0C435E 0%, #1786BC 100%) !important;
  border-radius: 0 8px 8px 0 !important;
}

.ico-variant-option + .ico-variant-option {
  border-left: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-top: 0 !important;
}

.ico-variant-option-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 56px !important;
  height: 56px !important;
  margin: 0 0 16px !important;
}

.ico-variant-option-icon svg {
  width: 56px !important;
  height: 56px !important;
  display: block !important;
}

.ico-variant-option h3 {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: 0 !important;
  margin: 0 0 24px !important;
}

.ico-variant-option ul {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 360px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  color: #ffffff !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: normal !important;
}

.ico-variant-option li {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: normal !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin: 0 !important;
}

.ico-variant-option li::before {
  content: '' !important;
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  min-width: 6px !important;
  background: #ffffff !important;
  border-radius: 999px !important;
}

.ico-variant-option p {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  margin: 0 0 32px !important;
  max-width: 320px !important;
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ico-variant-option-cta {
  position: relative !important;
  isolation: isolate !important;
  margin: 0 !important;
  width: 236px !important;
  max-width: 100% !important;
  height: 39px !important;
  min-height: 39px !important;
  padding: 0 20px !important;
  border-radius: 19.5px !important;
  border: 0 !important;
  background: #ffffff !important;
  color: #0B4460 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08) !important;
  transition: transform .3s cubic-bezier(.25,.8,.25,1), box-shadow .3s cubic-bezier(.25,.8,.25,1) !important;
}

.ico-variant-option-cta::before {
  content: '' !important;
  position: absolute !important;
  top: -4px !important;
  left: -6px !important;
  width: 236px !important;
  max-width: 100% !important;
  height: 39px !important;
  border-radius: 19.5px !important;
  border: 1px solid #ffffff !important;
  pointer-events: none !important;
  z-index: -1 !important;
  transition: box-shadow .3s cubic-bezier(.25,.8,.25,1) !important;
}

.ico-variant-option-home .ico-variant-option-cta::before {
  border-color: #00E0FF !important;
}

.ico-variant-option-cta:hover,
.ico-variant-option-cta:focus,
.ico-variant-option-cta:visited,
.ico-variant-option-cta:active {
  color: #0B4460 !important;
  text-decoration: none !important;
}

.ico-variant-option-cta:hover {
  transform: translate(-3px, 3px) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12) !important;
}

.ico-variant-option-cta svg {
  width: 14px !important;
  height: 14px !important;
  transition: transform .3s ease !important;
}

.ico-variant-option-cta:hover svg {
  transform: translateX(4px) !important;
}

.ico-variant-option-cta:hover::before {
  box-shadow: 0 0 10px rgba(255, 255, 255, .3) !important;
}

.ico-variant-option-home .ico-variant-option-cta:hover::before {
  box-shadow: 0 0 10px rgba(0, 224, 255, .4) !important;
}

@media (max-width: 1023px) {
  .ico-variant-modal {
    padding: 20px 15px !important;
    align-items: flex-start !important;
  }

  .ico-variant-modal-dialog {
    max-width: 343px !important;
    margin-top: 40px !important;
  }

  .ico-variant-modal-head {
    display: flex !important;
    margin-bottom: 32px !important;
  }

  .ico-variant-modal-logo {
    width: 100px !important;
    height: 75px !important;
    max-width: 100px !important;
    max-height: 75px !important;
    margin-bottom: 32px !important;
  }

  .ico-variant-modal-head p {
    display: block !important;
    font-size: 16px !important;
    margin-bottom: 0 !important;
  }

  .ico-variant-modal-options {
    width: 100% !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    border-radius: 8px !important;
  }

  .ico-variant-option {
    width: 100% !important;
    padding: 40px 24px !important;
  }

  .ico-variant-option-business {
    border-radius: 8px 8px 0 0 !important;
  }

  .ico-variant-option-home {
    border-radius: 0 0 8px 8px !important;
  }

  .ico-variant-option + .ico-variant-option {
    border-left: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, .18) !important;
  }

  .ico-variant-option h3 {
    font-size: 20px !important;
    margin-bottom: 12px !important;
  }

  .ico-variant-option ul {
    margin-bottom: 24px !important;
    gap: 14px !important;
  }

  .ico-variant-option p {
    font-size: 16px !important;
    margin-bottom: 32px !important;
    min-height: auto !important;
  }
}

/* B2C account register extra fields */
.ico-account-select-wrap {
	position: relative;
}

.ico-account-form select {
	width: 100%;
	height: 46px;
	border: 1px solid #d5dbe0;
	border-radius: 10px;
	background: #fff;
	padding: 0 40px 0 14px;
	font-size: 15px;
	color: #2f2f2f;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.ico-account-select-wrap::after {
	content: "";
	position: absolute;
	right: 15px;
	top: 50%;
	width: 8px;
	height: 8px;
	border-right: 2px solid #8e979e;
	border-bottom: 2px solid #8e979e;
	transform: translateY(-65%) rotate(45deg);
	pointer-events: none;
}

.ico-account-form select:focus,
.ico-account-form input[type="text"]:focus,
.ico-account-form input[type="email"]:focus,
.ico-account-form input[type="password"]:focus {
	outline: none;
	border-color: #0b4460;
	box-shadow: 0 0 0 1px rgba(11, 68, 96, 0.08);
}

/* B2C account register layout polish */
.ico-account-flyout[data-variant="home"] {
	border-radius: 10px;
}

.ico-account-form-register {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 14px;
	row-gap: 12px;
}

.ico-account-form-register .ico-account-field {
	display: grid;
	gap: 7px;
	min-width: 0;
}

.ico-account-form-register .ico-account-field-full,
.ico-account-form-register .ico-account-check,
.ico-account-form-register .ico-account-submit {
	grid-column: 1 / -1;
}

.ico-account-form-register .ico-account-field-half {
	grid-column: span 1;
}

.ico-account-form-register label {
	margin: 0;
	line-height: 1.1;
}

.ico-account-form-register .ico-password-field,
.ico-account-form-register .ico-account-select-wrap {
	width: 100%;
}

.ico-account-form-register .ico-account-check {
	margin-top: 0;
	align-items: flex-start;
}

.ico-account-form-register .ico-account-check span {
	font-size: 13px;
	line-height: 1.35;
}

.ico-account-form-register + .ico-account-social {
	margin-top: 12px;
	padding-top: 12px;
}

.ico-account-form-register .ico-account-submit {
	margin-top: 2px;
}

.ico-account-form-register input::placeholder {
	color: #9ca4aa;
}

@media (max-width: 560px) {
	.ico-account-form-register {
		grid-template-columns: 1fr;
	}

	.ico-account-form-register .ico-account-field-half {
		grid-column: 1 / -1;
	}
}

/* Modal inicial - assets administrables desde el admin */
.ico-variant-option-icon-img {
  display: block !important;
  width: 56px !important;
  height: 56px !important;
  object-fit: contain !important;
}

.ico-account-notices {
	margin: 16px 24px 0;
	padding: 12px 14px;
	border-radius: 14px;
	background: #fff1f1;
	border: 1px solid #ffd1d1;
	color: #d93025;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
}

.ico-account-notices p {
	margin: 0;
}

.ico-account-notices p + p {
	margin-top: 6px;
}


.ico-account-notices {
	margin: 14px 24px 0;
	padding: 12px 14px;
	border: 1px solid rgba(226, 59, 36, 0.18);
	border-radius: 14px;
	background: #fff3f0;
	color: #9f2417;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.45;
}

.ico-account-notices.is-empty {
	display: none;
}

.ico-account-notices.is-success {
	border-color: rgba(55, 169, 69, 0.22);
	background: #f0fbf2;
	color: #217a2e;
}

.ico-account-notices p {
	margin: 0;
}

.ico-account-notices p + p {
	margin-top: 6px;
}

.ico-account-submit.is-loading,
.ico-account-submit:disabled {
	cursor: wait;
	opacity: 0.78;
}

/* FIX vFinal modal método entrada: botón y composición según mAQUETACION/pages/Modal/index.html */
html.has-ico-variant-modal,
body.has-ico-variant-modal {
  overflow: hidden !important;
}

.ico-variant-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  width: 100% !important;
  min-height: 100vh !important;
  padding: 40px 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow-y: auto !important;
}

.ico-variant-modal[hidden] {
  display: none !important;
}

.ico-variant-modal-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.87) !important;
  backdrop-filter: blur(5.85px) !important;
  -webkit-backdrop-filter: blur(5.85px) !important;
}

.ico-variant-modal-dialog {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 954px !important;
  margin: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  color: #ffffff !important;
  font-family: var(--ico-font-family, 'Avenir Next LT Pro', Arial, sans-serif) !important;
}

.ico-variant-modal-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 0 32px !important;
  text-align: center !important;
}

.ico-variant-modal-logo {
  display: block !important;
  width: 150px !important;
  height: 113px !important;
  max-width: 150px !important;
  max-height: 113px !important;
  object-fit: contain !important;
  margin: 0 0 32px !important;
}

.ico-variant-modal-head p {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: normal !important;
  margin: 0 !important;
  max-width: 90% !important;
}

.ico-variant-modal-options {
  width: 954px !important;
  max-width: 100% !important;
  min-height: 493px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: 0 15px 50px rgba(0, 0, 0, 0.5) !important;
}

.ico-variant-option {
  width: 100% !important;
  min-width: 0 !important;
  padding: 40px 48px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  position: relative !important;
}

.ico-variant-option-business {
  background: linear-gradient(180deg, #166498 0%, #178FDF 100%) !important;
  border-radius: 8px 0 0 8px !important;
}

.ico-variant-option-home {
  background: linear-gradient(180deg, #0C435E 0%, #1786BC 100%) !important;
  border-radius: 0 8px 8px 0 !important;
}

.ico-variant-option + .ico-variant-option {
  border-left: 0 !important;
  border-top: 0 !important;
}

.ico-variant-option-icon,
.ico-variant-option-icon-img,
.ico-variant-option-icon svg {
  width: 56px !important;
  height: 56px !important;
}

.ico-variant-option-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 0 16px !important;
}

.ico-variant-option-icon-img,
.ico-variant-option-icon svg {
  display: block !important;
  object-fit: contain !important;
}

.ico-variant-option h3 {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  margin: 0 0 24px !important;
}

.ico-variant-option ul {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  align-items: center !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.ico-variant-option li {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: normal !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin: 0 !important;
}

.ico-variant-option li::before {
  content: '' !important;
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  min-width: 6px !important;
  border-radius: 50% !important;
  background-color: #ffffff !important;
}

.ico-variant-option p {
  color: #ffffff !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  margin: 0 0 32px !important;
  max-width: 320px !important;
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ico-variant-option-cta {
  position: relative !important;
  width: 236px !important;
  height: 39px !important;
  min-height: 39px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 19.5px !important;
  background: transparent !important;
  color: #0B4460 !important;
  box-shadow: none !important;
  display: inline-block !important;
  text-decoration: none !important;
  cursor: pointer !important;
  isolation: auto !important;
  transform: none !important;
}

.ico-variant-option-cta::before {
  content: '' !important;
  position: absolute !important;
  top: -4px !important;
  left: -6px !important;
  width: 236px !important;
  height: 39px !important;
  border-radius: 19.5px !important;
  border: 1px solid #ffffff !important;
  background: transparent !important;
  pointer-events: none !important;
  z-index: 1 !important;
  transition: box-shadow .3s cubic-bezier(.25,.8,.25,1) !important;
}

.ico-variant-option-home .ico-variant-option-cta::before {
  border-color: #00E0FF !important;
}

.ico-variant-option-cta > span:first-child {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  width: 236px !important;
  height: 39px !important;
  border-radius: 19.5px !important;
  background: #ffffff !important;
  color: #0B4460 !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 38px 0 20px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  text-decoration: none !important;
  transition: transform .3s cubic-bezier(.25,.8,.25,1), box-shadow .3s cubic-bezier(.25,.8,.25,1) !important;
}

.ico-variant-option-cta > span[aria-hidden='true'] {
  position: absolute !important;
  z-index: 3 !important;
  top: 50% !important;
  right: 25px !important;
  width: 14px !important;
  height: 14px !important;
  transform: translateY(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
  transition: transform .3s ease !important;
}

.ico-variant-option-cta svg {
  width: 14px !important;
  height: 14px !important;
  display: block !important;
}

.ico-variant-option-cta,
.ico-variant-option-cta:hover,
.ico-variant-option-cta:focus,
.ico-variant-option-cta:visited,
.ico-variant-option-cta:active {
  color: #0B4460 !important;
  text-decoration: none !important;
  outline: none !important;
}

.ico-variant-option-cta:hover > span:first-child,
.ico-variant-option-cta:focus > span:first-child {
  transform: translate(-3px, 3px) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12) !important;
}

.ico-variant-option-cta:hover > span[aria-hidden='true'],
.ico-variant-option-cta:focus > span[aria-hidden='true'] {
  transform: translateY(-50%) translate(-3px, 3px) translateX(4px) !important;
}

.ico-variant-option-cta:hover::before,
.ico-variant-option-cta:focus::before {
  box-shadow: 0 0 10px rgba(255, 255, 255, .3) !important;
}

.ico-variant-option-home .ico-variant-option-cta:hover::before,
.ico-variant-option-home .ico-variant-option-cta:focus::before {
  box-shadow: 0 0 10px rgba(0, 224, 255, .4) !important;
}

@media (max-width: 1023px) {
  .ico-variant-modal {
    padding: 20px 15px !important;
    align-items: flex-start !important;
  }

  .ico-variant-modal-dialog {
    max-width: 343px !important;
    margin-top: 40px !important;
  }

  .ico-variant-modal-logo {
    width: 100px !important;
    height: 75px !important;
    max-width: 100px !important;
    max-height: 75px !important;
    margin-bottom: 32px !important;
  }

  .ico-variant-modal-head p {
    font-size: 16px !important;
  }

  .ico-variant-modal-options {
    width: 100% !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  .ico-variant-option {
    padding: 40px 24px !important;
  }

  .ico-variant-option-business {
    border-radius: 8px 8px 0 0 !important;
  }

  .ico-variant-option-home {
    border-radius: 0 0 8px 8px !important;
  }

  .ico-variant-option h3 {
    font-size: 20px !important;
    margin-bottom: 12px !important;
  }

  .ico-variant-option p {
    min-height: auto !important;
  }
}

/* RT Fix 2026-06-15: Modal B2B/B2C - dejar solo el botón, sin borde/desfase alrededor */
.ico-variant-option-cta::before {
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.ico-variant-option-home .ico-variant-option-cta::before,
.ico-variant-option-cta:hover::before,
.ico-variant-option-cta:focus::before,
.ico-variant-option-home .ico-variant-option-cta:hover::before,
.ico-variant-option-home .ico-variant-option-cta:focus::before {
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.ico-variant-option-cta:hover > span:first-child,
.ico-variant-option-cta:focus > span:first-child {
  transform: none !important;
}

.ico-variant-option-cta:hover > span[aria-hidden='true'],
.ico-variant-option-cta:focus > span[aria-hidden='true'] {
  transform: translateY(-50%) translateX(4px) !important;
}


/* RT Fix 2026-06-15: Modal B2B/B2C mobile - asegurar que el overlay cubra toda la pantalla al hacer scroll */
.ico-variant-modal {
  width: 100vw !important;
  height: 100dvh !important;
  min-height: 100dvh !important;
  box-sizing: border-box !important;
  -webkit-overflow-scrolling: touch !important;
}

.ico-variant-modal-backdrop {
  position: fixed !important;
  inset: 0 !important;
}

@supports not (height: 100dvh) {
  .ico-variant-modal {
    height: 100vh !important;
    min-height: 100vh !important;
  }
}


/* RT Fix 2026-06-16: saludo de usuario logueado en header B2B/B2C */
.ico-action-link-account .ico-action-text {
	max-width: 126px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ico-action-link-account {
	min-width: 0;
}

/* B2C invitado: evitar que los descendentes (por ejemplo la "g" de Registrarse) se recorten. */
.ico-variant-b2c .ico-action-link-account[data-account-panel-trigger="1"] .ico-action-text {
	overflow: visible;
	text-overflow: clip;
	line-height: 1.12;
}

@media (max-width: 1180px) {
	.ico-action-link-account .ico-action-text {
		max-width: 102px;
	}
}

@media (max-width: 980px) {
	.ico-mobile-actions .ico-action-link-account .ico-action-text,
	.ico-mobile-actions .ico-action-link-account .ico-action-text {
		display: none;
	}
}


/* RT Fix 2026-07-02: Modal selector B2B/B2C con colores oficiales ICO, sin degradados */
.ico-variant-modal-options {
  background: transparent !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

.ico-variant-option-business {
  background: #459CD6 !important;
  background-image: none !important;
  border-radius: 8px 0 0 8px !important;
}

.ico-variant-option-home {
  background: #0B4460 !important;
  background-image: none !important;
  border-radius: 0 8px 8px 0 !important;
}

.ico-variant-option + .ico-variant-option {
  border-left: 0 !important;
  border-top: 0 !important;
}

.ico-variant-option-icon {
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  border-radius: 999px !important;
  margin: 0 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ico-variant-option-business .ico-variant-option-icon {
  background: #0B4460 !important;
}

.ico-variant-option-home .ico-variant-option-icon {
  background: #FFFFFF !important;
}

.ico-variant-option-icon svg,
.ico-variant-option-icon-img {
  width: 52px !important;
  height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  object-fit: contain !important;
}

.ico-variant-option-business .ico-variant-option-icon svg path {
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
}

.ico-variant-option-home .ico-variant-option-icon svg path {
  fill: #0B4460 !important;
  stroke: #0B4460 !important;
}

.ico-variant-option h3 {
  margin-bottom: 18px !important;
}

.ico-variant-option-cta,
.ico-variant-option-cta:hover,
.ico-variant-option-cta:focus,
.ico-variant-option-cta:visited,
.ico-variant-option-cta:active {
  background: transparent !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.ico-variant-option-business .ico-variant-option-cta,
.ico-variant-option-business .ico-variant-option-cta:hover,
.ico-variant-option-business .ico-variant-option-cta:focus,
.ico-variant-option-business .ico-variant-option-cta:visited,
.ico-variant-option-business .ico-variant-option-cta:active {
  color: #0B4460 !important;
}

.ico-variant-option-home .ico-variant-option-cta,
.ico-variant-option-home .ico-variant-option-cta:hover,
.ico-variant-option-home .ico-variant-option-cta:focus,
.ico-variant-option-home .ico-variant-option-cta:visited,
.ico-variant-option-home .ico-variant-option-cta:active {
  color: #FFFFFF !important;
}

.ico-variant-option-business .ico-variant-option-cta > span:first-child {
  background: #FFFFFF !important;
  color: #0B4460 !important;
}

.ico-variant-option-home .ico-variant-option-cta > span:first-child {
  background: #8DBF3E !important;
  color: #FFFFFF !important;
}

.ico-variant-option-business .ico-variant-option-cta svg path {
  stroke: #0B4460 !important;
}

.ico-variant-option-home .ico-variant-option-cta svg path {
  stroke: #FFFFFF !important;
}

.ico-variant-option-cta::before,
.ico-variant-option-home .ico-variant-option-cta::before,
.ico-variant-option-cta:hover::before,
.ico-variant-option-cta:focus::before,
.ico-variant-option-home .ico-variant-option-cta:hover::before,
.ico-variant-option-home .ico-variant-option-cta:focus::before {
  content: none !important;
  display: none !important;
}

@media (max-width: 1023px) {
  .ico-variant-option-business {
    border-radius: 8px 8px 0 0 !important;
  }

  .ico-variant-option-home {
    border-radius: 0 0 8px 8px !important;
  }

  .ico-variant-option-icon {
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    min-height: 68px !important;
  }

  .ico-variant-option-icon svg,
  .ico-variant-option-icon-img {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
  }
}

/* B2C mega menu footer: match approved visual design. */
@media (min-width: 992px) {
	.ico-variant-b2c .ico-mega-footer-band {
		background: #f7fafc;
		border-top: 1px solid #d6dee5;
	}

	.ico-variant-b2c .ico-mega-footer {
		min-height: 46px;
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.ico-variant-b2c .ico-mega-footer-left,
	.ico-variant-b2c .ico-mega-footer-right {
		gap: 0;
		flex-wrap: nowrap;
	}

	.ico-variant-b2c .ico-mega-footer a,
	.ico-variant-b2c .ico-mega-footer a:visited {
		font-size: 12px;
		line-height: 1.2;
		text-decoration: none;
	}

	.ico-variant-b2c .ico-mega-footer-left .ico-mega-footer-link:first-child {
		color: #0b4460;
		font-weight: 700;
		padding-right: 18px;
		margin-right: 18px;
		border-right: 1px solid #8d9aa3;
	}

	.ico-variant-b2c .ico-mega-footer-left .ico-mega-footer-link:not(:first-child) {
		color: #343737;
		font-weight: 500;
	}

	.ico-variant-b2c .ico-mega-footer-right {
		gap: 26px;
	}

	.ico-variant-b2c .ico-mega-footer-right a,
	.ico-variant-b2c .ico-mega-footer-right a:visited {
		color: #343737;
		font-weight: 700;
	}

	.ico-variant-b2c .ico-mega-footer-left a:hover,
	.ico-variant-b2c .ico-mega-footer-right a:hover {
		color: #0b4460;
	}

	.ico-variant-b2c .ico-mega-footer-right img,
	.ico-variant-b2c .ico-mega-footer-link img {
		width: 17px;
		height: 17px;
		flex: 0 0 17px;
	}
}

/* RT Fix 2026-07-30: cabecera mobile B2B/B2C alineada a la maqueta. */
@media (max-width: 980px) {
	.ico-global-header .ico-mobile-header {
		width: 100%;
		overflow: hidden;
	}

	/* Las dos pestañas siempre deben entrar, incluso en pantallas muy angostas. */
	.ico-global-header .ico-mobile-tabs {
		gap: 0;
		padding: 8px 12px 0;
		box-sizing: border-box;
	}

	.ico-global-header .ico-mobile-tabs .ico-tab,
	.ico-global-header .ico-mobile-tabs .ico-tab-business,
	.ico-global-header .ico-mobile-tabs .ico-tab-home {
		flex: 1 1 0;
		width: auto;
		max-width: none;
		min-width: 0;
		height: 42px;
		padding: 0 clamp(6px, 2.8vw, 16px);
		gap: 7px;
		border-radius: 16px 16px 0 0;
		font-size: clamp(12px, 3.7vw, 16px);
		line-height: 1;
		overflow: hidden;
	}

	.ico-global-header .ico-mobile-tabs .ico-tab-text {
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.ico-global-header .ico-mobile-tabs .ico-tab-icon,
	.ico-global-header .ico-mobile-tabs .ico-tab-icon svg {
		width: 18px;
		height: 18px;
		min-width: 18px;
		flex: 0 0 18px;
	}

	/* Fila principal: evita que el logo o el carrito se corten en 260-390 px. */
	.ico-global-header .ico-mobile-main {
		display: grid;
		grid-template-columns: 40px minmax(64px, 1fr) auto;
		align-items: center;
		gap: clamp(4px, 2vw, 12px);
		min-height: clamp(82px, 24vw, 106px);
		padding: 12px clamp(10px, 4vw, 22px);
		box-sizing: border-box;
		border-bottom: 0;
	}

	.ico-global-header .ico-mobile-menu-toggle {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		padding: 0;
		font-size: 0;
		line-height: 0;
	}

	.ico-global-header .ico-mobile-menu-toggle::before {
		content: "";
		display: block;
		width: 27px;
		height: 3px;
		border-radius: 99px;
		background: currentColor;
		box-shadow: 0 -8px 0 currentColor, 0 8px 0 currentColor;
	}

	.ico-global-header .ico-mobile-logo {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		min-width: 0;
		max-width: 100%;
	}

	/* B2B mobile: alinear el logo al inicio de su columna como en Figma. */
	.ico-global-header.ico-variant-business .ico-mobile-logo {
		justify-self: start;
		justify-content: flex-start;
	}

	.ico-global-header .ico-mobile-logo img {
		display: block;
		width: auto;
		height: auto;
		max-width: clamp(72px, 31vw, 122px);
		max-height: 76px;
		object-fit: contain;
	}

	.ico-global-header .ico-mobile-actions {
		justify-self: end;
		display: grid;
		grid-template-columns: repeat(3, clamp(31px, 10vw, 42px));
		align-items: center;
		gap: 0;
		min-width: 0;
	}

	.ico-global-header .ico-mobile-actions a {
		width: 100%;
		height: 38px;
		min-width: 0;
		padding: 0;
		box-sizing: border-box;
	}

	.ico-global-header .ico-mobile-actions svg {
		width: clamp(21px, 7vw, 27px);
		height: clamp(21px, 7vw, 27px);
	}

	/* Buscador con aire lateral como en la referencia. */
	.ico-global-header .ico-mobile-search-wrap {
		padding: 0 clamp(10px, 4vw, 22px) 16px;
		box-sizing: border-box;
		z-index: 20;
	}

	.ico-global-header .ico-mobile-search {
		height: clamp(48px, 14vw, 58px);
		border-width: 2px;
		background: #fff;
	}

	.ico-global-header .ico-mobile-search input {
		font-size: clamp(15px, 4.2vw, 19px);
		line-height: 1.2;
		padding: 0 14px;
		color: #343737;
	}

	.ico-global-header .ico-mobile-search input::placeholder {
		color: #9a9a9a;
		opacity: 1;
	}

	.ico-global-header .ico-mobile-search button[type="submit"] {
		width: clamp(52px, 16vw, 70px);
		min-width: clamp(52px, 16vw, 70px);
		background: #e9e9e9;
		color: #999;
	}

	.ico-global-header .ico-mobile-search button[type="submit"] svg {
		width: 28px;
		height: 28px;
	}

	.ico-global-header .ico-mobile-search button[type="submit"] svg path,
	.ico-global-header .ico-mobile-search button[type="submit"] svg circle {
		stroke: #999 !important;
		fill: none !important;
	}

	/* Call center compacto, sin quiebres innecesarios. */
	.ico-global-header .ico-mobile-call {
		min-height: 58px;
		padding: 10px clamp(10px, 4vw, 22px);
		gap: clamp(4px, 1.5vw, 9px);
		font-size: clamp(15px, 4.8vw, 21px);
		line-height: 1.2;
		box-sizing: border-box;
	}

	.ico-global-header .ico-mobile-call-label,
	.ico-global-header .ico-mobile-call strong {
		white-space: nowrap;
	}

	.ico-global-header .ico-mobile-call-icon,
	.ico-global-header .ico-mobile-call-icon svg {
		width: clamp(24px, 7vw, 30px);
		height: clamp(24px, 7vw, 30px);
		min-width: clamp(24px, 7vw, 30px);
	}

	.ico-global-header .ico-mobile-call-arrow {
		font-size: 28px;
	}

	/* Perfil B2B: celeste + blanco. */
	.ico-global-header.ico-variant-business .ico-preheader {
		background: var(--ico-preheader-bg, #459cd6);
		color: #fff;
	}

	.ico-global-header.ico-variant-business .ico-mobile-tabs {
		background: var(--ico-preheader-bg, #459cd6);
		color: #fff;
	}

	.ico-global-header.ico-variant-business .ico-preheader-slide a,
	.ico-global-header.ico-variant-business .ico-preheader-slide span,
	.ico-global-header.ico-variant-business .ico-preheader-arrow {
		color: #fff;
	}

	.ico-global-header.ico-variant-business .ico-preheader-close {
		background: #fff;
		color: #0b4460;
	}

	.ico-global-header.ico-variant-business .ico-mobile-tabs .ico-tab {
		color: #fff;
		background: transparent;
	}

	.ico-global-header.ico-variant-business .ico-mobile-tabs .ico-tab.is-active {
		background: #fff;
		color: var(--ico-accent, #459cd6);
	}

	.ico-global-header.ico-variant-business .ico-mobile-tabs .ico-tab.is-active svg path {
		fill: var(--ico-accent, #459cd6) !important;
		stroke: var(--ico-accent, #459cd6) !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-tabs .ico-tab:not(.is-active) svg path {
		fill: #fff !important;
		stroke: #fff !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-main,
	.ico-global-header.ico-variant-business .ico-mobile-search-wrap {
		background: var(--ico-header-bg, #fff);
	}

	.ico-global-header.ico-variant-business .ico-mobile-menu-toggle,
	.ico-global-header.ico-variant-business .ico-mobile-actions a {
		color: var(--ico-accent, #459cd6);
	}

	.ico-global-header.ico-variant-business .ico-mobile-actions svg path {
		fill: var(--ico-accent, #459cd6) !important;
		stroke: var(--ico-accent, #459cd6) !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-actions a + a {
		border-left-color: #d9e0e5;
	}

	.ico-global-header.ico-variant-business .ico-mobile-search {
		border-color: #e2e2e2;
	}

	.ico-global-header.ico-variant-business .ico-mobile-call {
		background: var(--ico-header-bg, #fff);
		color: var(--ico-accent, #459cd6);
	}

	/* Perfil B2C: azul oscuro + verde, conservando su logo amarillo. */
	.ico-global-header.ico-variant-home .ico-preheader {
		background: var(--ico-preheader-bg, #ffffff);
		color: #0b4460;
	}

	.ico-global-header.ico-variant-home .ico-mobile-tabs {
		background: var(--ico-preheader-bg, #ffffff);
		color: #0b4460;
	}

	.ico-global-header.ico-variant-home .ico-preheader-slide a,
	.ico-global-header.ico-variant-home .ico-preheader-slide span,
	.ico-global-header.ico-variant-home .ico-preheader-arrow {
		color: #0b4460;
	}

	.ico-global-header.ico-variant-home .ico-preheader-close {
		background: var(--ico-header-bg, #0b4460);
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-tabs .ico-tab {
		background: transparent;
		color: var(--ico-header-bg, #0b4460);
	}

	.ico-global-header.ico-variant-home .ico-mobile-tabs .ico-tab:not(.is-active) svg path {
		fill: var(--ico-header-bg, #0b4460) !important;
		stroke: var(--ico-header-bg, #0b4460) !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-tabs .ico-tab.is-active {
		background: var(--ico-header-bg, #0b4460);
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-tabs .ico-tab.is-active svg path {
		fill: #fff !important;
		stroke: #fff !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-main,
	.ico-global-header.ico-variant-home .ico-mobile-search-wrap {
		background: var(--ico-header-bg, #0b4460);
	}

	.ico-global-header.ico-variant-home .ico-mobile-menu-toggle,
	.ico-global-header.ico-variant-home .ico-mobile-actions a {
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-actions svg path {
		fill: #fff !important;
		stroke: #fff !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-actions a + a {
		border-left-color: rgba(255, 255, 255, 0.45);
	}

	.ico-global-header.ico-variant-home .ico-mobile-search {
		border-color: #e2e2e2;
	}

	.ico-global-header.ico-variant-home .ico-mobile-search {
		border-color: var(--ico-accent, #8dbf3e);
		background: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-search-clear {
		color: var(--ico-accent, #8dbf3e);
	}

	.ico-global-header.ico-variant-home .ico-mobile-search button[type="submit"] {
		background: var(--ico-accent, #8dbf3e);
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-search button[type="submit"] svg path,
	.ico-global-header.ico-variant-home .ico-mobile-search button[type="submit"] svg circle {
		stroke: #fff !important;
		fill: none !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-live-search-panel .ico-live-search-all {
		background: var(--ico-accent, #8dbf3e);
		color: #fff !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-call {
		background: var(--ico-header-bg, #0b4460);
		color: var(--ico-accent, #8dbf3e);
	}
}

@media (max-width: 320px) {
	.ico-global-header .ico-mobile-tabs {
		padding-left: 8px;
		padding-right: 8px;
	}

	.ico-global-header .ico-mobile-tabs .ico-tab {
		gap: 4px;
		padding-left: 5px;
		padding-right: 5px;
		font-size: 11px;
	}

	.ico-global-header .ico-mobile-main {
		grid-template-columns: 34px minmax(58px, 1fr) auto;
		gap: 3px;
		padding-left: 8px;
		padding-right: 8px;
	}

	.ico-global-header .ico-mobile-menu-toggle {
		width: 34px;
	}

	.ico-global-header .ico-mobile-menu-toggle::before {
		width: 23px;
	}

	.ico-global-header .ico-mobile-logo img {
		max-width: 72px;
	}

	.ico-global-header .ico-mobile-actions {
		grid-template-columns: repeat(3, 31px);
	}

	.ico-global-header .ico-mobile-call {
		font-size: 14px;
		padding-left: 8px;
		padding-right: 8px;
		gap: 3px;
	}
}

/* RT Fix 2026-08-03: menú mobile B2B/B2C alineado a la maqueta aprobada. */
@media (max-width: 980px) {
	.ico-global-header .ico-mobile-drawer {
		width: min(100vw, 480px);
		max-width: 100%;
		background: #f3f7fa;
		overflow-x: hidden;
		overflow-y: auto;
	}

	.ico-global-header .ico-mobile-drawer-head {
		justify-content: flex-start;
		gap: 28px;
		min-height: 104px;
		padding: 20px 30px;
		box-sizing: border-box;
		background: #fff;
		box-shadow: 0 3px 10px rgba(11, 68, 96, 0.08);
	}

	.ico-global-header .ico-mobile-drawer-head img {
		width: auto;
		height: auto;
		max-width: 112px;
		max-height: 62px;
		object-fit: contain;
	}

	.ico-global-header .ico-mobile-drawer-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 34px;
		width: 34px;
		height: 34px;
		padding: 0;
		font-size: 32px;
		font-weight: 300;
		color: #86be3f;
	}

	.ico-global-header .ico-mobile-drawer-body {
		padding: 0;
		background: #f3f7fa;
	}

	.ico-global-header .ico-mobile-panel-root {
		min-height: calc(100vh - 104px);
		padding: 28px 28px 38px;
		box-sizing: border-box;
		background: #f3f7fa;
	}

	.ico-global-header .ico-mobile-panel:not(.ico-mobile-panel-root) {
		min-height: calc(100vh - 104px);
		padding: 30px 30px 42px;
		box-sizing: border-box;
		background: #fff;
	}

	.ico-global-header .ico-mobile-category-list {
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 0;
	}

	.ico-global-header .ico-mobile-panel-open {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 22px;
		align-items: center;
		gap: 12px;
		min-height: 64px;
		padding: 10px 0;
		border: 0;
		font-size: clamp(18px, 5vw, 21px);
		font-weight: 700;
		line-height: 1.15;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-cat-main {
		display: block;
		min-width: 0;
	}

	.ico-global-header .ico-mobile-cat-icon,
	.ico-global-header .ico-mobile-brands-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 30px;
		height: 30px;
		color: #0b4460;
		line-height: 0;
	}

	.ico-global-header .ico-mobile-cat-icon img,
	.ico-global-header .ico-mobile-cat-icon svg,
	.ico-global-header .ico-mobile-brands-icon svg {
		display: block;
		width: 28px;
		height: 28px;
		max-width: 28px;
		max-height: 28px;
		object-fit: contain;
	}

	.ico-global-header .ico-mobile-cat-label {
		min-width: 0;
		color: #0b4460;
		text-align: left;
	}

	.ico-global-header .ico-mobile-next {
		display: inline-flex;
		align-items: center;
		justify-content: flex-end;
		width: 22px;
		font-size: 34px;
		font-weight: 400;
		line-height: 1;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-tracking {
		width: 100%;
		min-height: 62px;
		margin: 48px 0 42px;
		padding: 14px 20px;
		gap: 15px;
		border-radius: 7px;
		box-sizing: border-box;
		background: var(--ico-category-button-bg, var(--ico-accent, #86be3f));
		color: #fff;
		font-size: clamp(18px, 5vw, 21px);
		font-weight: 700;
		line-height: 1.1;
		text-align: center;
	}

	.ico-global-header .ico-mobile-tracking-icon,
	.ico-global-header .ico-mobile-tracking-icon svg {
		width: 29px;
		height: 22px;
		min-width: 29px;
	}

	.ico-global-header .ico-mobile-tracking-icon svg path {
		fill: #fff !important;
		stroke: #fff !important;
	}

	.ico-global-header .ico-mobile-links {
		display: flex;
		flex-direction: column;
		gap: 8px;
		margin: 0 0 30px;
	}

	.ico-global-header .ico-mobile-links a {
		display: grid;
		grid-template-columns: 30px minmax(0, 1fr);
		align-items: center;
		gap: 18px;
		min-height: 52px;
		padding: 8px 0;
		color: #0b4460;
		font-size: clamp(17px, 4.8vw, 20px);
		font-weight: 600;
		line-height: 1.2;
	}

	.ico-global-header .ico-mobile-link-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 30px;
		height: 30px;
		color: #0b4460;
		line-height: 0;
	}

	.ico-global-header .ico-mobile-link-icon img,
	.ico-global-header .ico-mobile-link-icon svg {
		display: block;
		width: 28px;
		height: 28px;
		max-width: 28px;
		max-height: 28px;
		object-fit: contain;
	}

	.ico-global-header .ico-mobile-top-links {
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 0;
		padding: 25px 0 0;
		border-top: 1px solid #d2dce3;
	}

	.ico-global-header .ico-mobile-top-links a {
		padding: 12px 0;
		border: 0;
		color: #0b4460;
		font-size: clamp(16px, 4.5vw, 18px);
		font-weight: 600;
		line-height: 1.25;
	}

	.ico-global-header .ico-mobile-panel-headline {
		grid-template-columns: 28px minmax(0, 1fr) auto;
		gap: 12px;
		padding: 2px 0 24px;
		margin: 0;
	}

	.ico-global-header .ico-mobile-panel-back {
		display: inline-flex;
		align-items: center;
		justify-content: flex-start;
		width: 28px;
		padding: 0;
		font-size: 38px;
		font-weight: 400;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-panel-title-main {
		display: block;
		min-width: 0;
		font-size: clamp(18px, 5vw, 21px);
		font-weight: 700;
		line-height: 1.15;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-panel-title-main .ico-mobile-cat-icon,
	.ico-global-header .ico-mobile-panel-title-main .ico-mobile-brands-icon {
		width: 30px;
		height: 30px;
	}

	.ico-global-header .ico-mobile-panel-title-main .ico-mobile-cat-icon img,
	.ico-global-header .ico-mobile-panel-title-main .ico-mobile-cat-icon svg,
	.ico-global-header .ico-mobile-panel-title-main .ico-mobile-brands-icon svg {
		width: 28px;
		height: 28px;
		max-width: 28px;
		max-height: 28px;
	}

	.ico-global-header .ico-mobile-panel-headline > a {
		white-space: nowrap;
		color: #0b4460;
		font-size: clamp(16px, 4.5vw, 18px);
		font-weight: 600;
	}

	.ico-global-header .ico-mobile-subcategory-list {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	.ico-global-header .ico-mobile-subcategory {
		padding: 0;
		border: 0;
	}

	.ico-global-header .ico-mobile-subcategory summary {
		padding: 17px 0;
		font-size: clamp(17px, 4.8vw, 20px);
		font-weight: 700;
		line-height: 1.2;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-subcategory summary::after {
		right: 0;
		font-size: 24px;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-subcategory ul {
		margin: 0 0 6px;
		padding: 0;
	}

	.ico-global-header .ico-mobile-subcategory li a {
		padding: 14px 28px 14px 20px;
		font-size: clamp(16px, 4.5vw, 19px);
		line-height: 1.2;
		color: #343737;
	}

	.ico-global-header .ico-mobile-subcategory li a::after {
		right: 0;
		font-size: 26px;
		color: #343737;
	}

	.ico-global-header .ico-mobile-subcategory-empty a {
		padding: 10px 0 18px 20px;
		font-size: 17px;
		color: #0b4460;
	}

	.ico-global-header .ico-mobile-subcategory-direct {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		padding: 17px 0;
		color: #0b4460;
		font-size: clamp(17px, 4.8vw, 20px);
		font-weight: 700;
		line-height: 1.2;
		text-decoration: none;
	}

	.ico-global-header .ico-mobile-subcategory-direct-arrow {
		flex: 0 0 auto;
		font-size: 26px;
		font-weight: 400;
		line-height: 1;
	}
}

@media (max-width: 360px) {
	.ico-global-header .ico-mobile-drawer-head {
		gap: 20px;
		min-height: 94px;
		padding: 17px 22px;
	}

	.ico-global-header .ico-mobile-panel-root,
	.ico-global-header .ico-mobile-panel:not(.ico-mobile-panel-root) {
		padding-left: 22px;
		padding-right: 22px;
	}

	.ico-global-header .ico-mobile-tracking {
		margin-top: 38px;
	}
}

/* RT Fix 2026-08-03: variante mobile B2C según la maqueta ICO Market. */
@media (max-width: 980px) {
	.ico-global-header.ico-variant-home .ico-mobile-drawer,
	.ico-global-header.ico-variant-home .ico-mobile-drawer-body,
	.ico-global-header.ico-variant-home .ico-mobile-panel-root,
	.ico-global-header.ico-variant-home .ico-mobile-panel:not(.ico-mobile-panel-root) {
		background: var(--ico-header-bg, #0b4d69);
	}

	.ico-global-header.ico-variant-home .ico-mobile-drawer-head {
		background: var(--ico-header-bg, #0b4d69);
		box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06);
	}

	.ico-global-header.ico-variant-home .ico-mobile-drawer-head img {
		max-width: 150px;
		max-height: 68px;
	}

	.ico-global-header.ico-variant-home .ico-mobile-drawer-close {
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-cat-main {
		display: block;
		min-width: 0;
	}

	.ico-global-header.ico-variant-home .ico-mobile-panel-open,
	.ico-global-header.ico-variant-home .ico-mobile-cat-label,
	.ico-global-header.ico-variant-home .ico-mobile-next,
	.ico-global-header.ico-variant-home .ico-mobile-cat-icon,
	.ico-global-header.ico-variant-home .ico-mobile-brands-icon {
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-cat-icon img,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon img {
		filter: brightness(0) invert(1);
	}

	.ico-global-header.ico-variant-home .ico-mobile-cat-icon svg,
	.ico-global-header.ico-variant-home .ico-mobile-brands-icon svg,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon svg {
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-cat-icon svg path,
	.ico-global-header.ico-variant-home .ico-mobile-cat-icon svg circle,
	.ico-global-header.ico-variant-home .ico-mobile-brands-icon svg path,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon svg path,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon svg circle {
		stroke: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-links a,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon,
	.ico-global-header.ico-variant-home .ico-mobile-top-links a {
		color: #fff;
	}


	/* Menú mobile B2C: íconos simples y proporciones de la maqueta. */
	.ico-global-header.ico-variant-home .ico-mobile-links a {
		grid-template-columns: 30px minmax(0, 1fr);
		gap: 18px;
	}

	.ico-global-header.ico-variant-home .ico-mobile-link-icon,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon .ico-mobile-b2c-menu-svg {
		width: 30px;
		height: 30px;
		max-width: 30px;
		max-height: 30px;
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-link-icon .ico-mobile-b2c-menu-svg path,
	.ico-global-header.ico-variant-home .ico-mobile-link-icon .ico-mobile-b2c-menu-svg circle {
		fill: none !important;
		stroke: currentColor !important;
	}

	.ico-global-header.ico-variant-home .ico-mobile-top-links {
		border-top-color: rgba(255, 255, 255, 0.35);
	}

	.ico-global-header.ico-variant-home .ico-mobile-panel-headline {
		grid-template-columns: 28px minmax(0, 1fr) auto;
	}

	.ico-global-header.ico-variant-home .ico-mobile-panel-back,
	.ico-global-header.ico-variant-home .ico-mobile-panel-title-main,
	.ico-global-header.ico-variant-home .ico-mobile-panel-headline > a {
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-panel-title-main {
		display: block;
		min-width: 0;
	}

	.ico-global-header.ico-variant-home .ico-mobile-subcategory summary,
	.ico-global-header.ico-variant-home .ico-mobile-subcategory summary::after,
	.ico-global-header.ico-variant-home .ico-mobile-subcategory li a,
	.ico-global-header.ico-variant-home .ico-mobile-subcategory li a::after,
	.ico-global-header.ico-variant-home .ico-mobile-subcategory-empty a,
	.ico-global-header.ico-variant-home .ico-mobile-subcategory-direct {
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-subcategory li a {
		font-weight: 400;
	}

	.ico-global-header.ico-variant-home .ico-mobile-tracking {
		background: var(--ico-category-button-bg, var(--ico-accent, #8cc63f));
		color: #fff;
	}

	.ico-global-header.ico-variant-home .ico-mobile-brands-carousel .ico-brand-item {
		background: #fff;
		border-radius: 6px;
		padding: 6px;
	}

	.ico-global-header.ico-variant-home .ico-mobile-brands-carousel .ico-brand-item span {
		color: #0b4460;
	}
}


/* RT Fix 2026-08-04: evita que el live search mobile quede recortado por el header. */
@media (max-width: 980px) {
	.ico-global-header.is-mobile-live-open .ico-mobile-header {
		overflow: visible;
	}

	.ico-global-header.is-mobile-live-open .ico-mobile-live-search-panel {
		z-index: 100;
		max-height: calc(100vh - var(--ico-header-offset, 180px) - 12px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* RT Fix 2026-08-04: botón final del live search mobile B2C en verde. */
@media (max-width: 980px) {
	body.ico-variant-b2c .ico-live-search-all,
	body.ico-variant-b2c .ico-mobile-live-search-panel .ico-live-search-all,
	.ico-global-header.ico-variant-home .ico-live-search-all,
	.ico-global-header.ico-variant-home .ico-mobile-live-search-panel a.ico-live-search-all {
		background-color: var(--ico-accent, #8dbf3e) !important;
		border-color: var(--ico-accent, #8dbf3e) !important;
		color: #ffffff !important;
	}
}


/* RT Fix 2026-08-04 v12: el botón mobile usa la clase .ico-mobile-live-all. */
@media (max-width: 980px) {
	body.ico-variant-b2c .ico-mobile-live-all,
	body.ico-variant-b2c .ico-mobile-live-search-panel a.ico-mobile-live-all,
	.ico-global-header.ico-variant-home .ico-mobile-live-all,
	.ico-global-header.ico-variant-home .ico-mobile-live-search-panel a.ico-mobile-live-all {
		background: var(--ico-accent, #8dbf3e) !important;
		background-color: var(--ico-accent, #8dbf3e) !important;
		border-color: var(--ico-accent, #8dbf3e) !important;
		color: #ffffff !important;
	}
}


/* RT Fix 2026-08-04 v13: buscador mobile B2B con borde y lupa celestes. */
@media (max-width: 980px) {
	.ico-global-header.ico-variant-business .ico-mobile-search {
		border-color: var(--ico-accent, #459cd6) !important;
		background-color: #ffffff !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-search-clear {
		color: var(--ico-accent, #459cd6) !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-search button[type="submit"] {
		background: var(--ico-accent, #459cd6) !important;
		background-color: var(--ico-accent, #459cd6) !important;
		color: #ffffff !important;
	}

	.ico-global-header.ico-variant-business .ico-mobile-search button[type="submit"] svg path,
	.ico-global-header.ico-variant-business .ico-mobile-search button[type="submit"] svg circle {
		stroke: #ffffff !important;
		fill: none !important;
	}
}

@media (max-width: 980px) {
	.ico-global-header {
		position: relative !important;
		top: auto !important;
	}
	#content.site-content {
		padding-top: 0 !important;
	}
}

/* RT Fix 2026-09-07: megamenu desktop con scroll interno en pantallas de menor alto. */
@media (min-width: 981px) {
	.ico-global-header .ico-mega-menu {
		max-height: var(--ico-desktop-panel-max-height, calc(100dvh - var(--ico-header-offset, 180px)));
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior-y: contain;
		-webkit-overflow-scrolling: touch;
		scrollbar-gutter: stable;
	}
}
