/*
 Theme Name:   Xavier Garcia V.4.0
 Theme URI:    https://xaviergarcia.design
 Description:  V4 GeneratePress child theme for Xavier Garcia Design. Fixes: slider init, WPGB scoped to catalog only.
 Author:       Colillas Branding
 Author URI:   https://colillas.com
 Template:     generatepress
 Version:      0.4
*/

/* Ocultar banner wpml sitio en desarrollo */
.otgs-development-site-front-end {
	display: none;
}

.hidden {
	display: none;
}

/*
 * Header
 */

.xg-header-menu_left,
.xg-header-menu_right {
	column-gap: 30px;
}

.header-wrap {
	/*margin-top: 20px;*/
}

#page {
	margin-top: -81px;
}

/*
body:not(.home) .site-content {
  padding-top: 121px;
}
*/

/*
.admin-bar #page {
  margin-top: -92px;
}
*/

.xg-header .wpml-language-switcher-block {
	width: auto !important;
}

.xg-header .wpml-language-switcher-block:hover .wp-block-navigation-item {
	background-color: #fff;
}

.xg-header .wpml-language-switcher-block .current-language-item {
	min-height: auto !important;
}

.shopping-bag {
	position: relative;
}

.shopping-bag .gb-shape svg {
	stroke: currentColor;
	fill: transparent !important;
	stroke-width: 1.5;
	transition: fill 0.3s ease;
}

body.has_items .shopping-bag .gb-shape svg {
	fill: currentColor !important;
}

body.has_items .shopping-bag {
	position: relative;
}

body.has_items .shopping-bag::before {
	position: absolute;
	content: url('images/red-dot.svg');
	top: -7px;
	right: -4px;
}

/*
.shopping-bag .gb-text {
  font-size: 12px;
  border-radius: 50%;
  color: var(--contrast);
  position: absolute;
  top: -8px;
  right: -12px;
}
*/
@media (min-width: 768px) {
	.header-wrap {
		position: sticky;
		top: 20px;
		z-index: 1400;
	}

	.admin-bar .header-wrap {
		top: 52px;
	}
}

@media (max-width: 767px) {
	.header-wrap {
		position: sticky;
		top: 10px;
		z-index: 1400;
	}

	.admin-bar .header-wrap,
	.site {
		top: 56px;
	}
}

/*
 * FIN - Header
 */

/* 
 * Home
 */

.background-video {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0.5;
}

.background-video-content {
	position: relative;
	z-index: 1;
}

video[poster] {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

/* 
 * FIN - Home
 */

/*
 * Product Card
 */
.product-card.text-light .product-card_image {
	object-fit: cover;
}

/* Medidas personalizadas */
.product-cards .tamano-catalogo-doble-col {
	grid-column: span 2;
}

.product-cards .tamano-catalogo-doble-col-row {
	grid-column: span 2;
	grid-row: span 2;
	height: auto;
}

@media (max-width: 1024px) {
	.product-cards .tamano-catalogo-doble-col-row {
		min-height: 480px;
	}
}

@media (max-width: 768px) {
	.product-cards .tamano-catalogo-doble-col-row {
		min-height: 208px;
	}
}

/*
 * FIN - Product Card
 */

/*
 * Bordes en las secciones (Declaradas clases .section, .bg-light y .bg-dark en Estilos Globales)
 */

/* Fondo claro */
.bg-light {
	--border-color: rgba(0, 0, 0, .5);
}

/* Fondo oscuro */
.bg-dark {
	--border-color: rgba(255, 255, 255, .5);
}

/*
 * FIN - Bordes en las secciones
 */


/*
 * Content shadow
 */
#page,
.site-footer.grid-container {
	box-shadow: 0 10px 50px -25px rgba(0, 0, 0, 0.3);
}

/*
 * FIN - Content shadow
 */


/*
 * Woocommerce > Archive
 */

.filter-bar {
	z-index: 100;
}

.woocommerce .site-main>* {
	margin-bottom: 0;
}

.woocommerce-archive-wrapper {
	display: none;
}

.archive.woocommerce img,
.archive.woocommerce-page img {
	height: 100%;
}

/*
 * FIN - Woocommerce > Archive
 */


/*
 * WP Gridbuilder > Filtros
 */

.wpgb-facet .wpgb-hierarchical-list li {
	margin: 5px 0 5px 0 !important;
}

.wpgb-facet .wpgb-hierarchical-list:first-child>li:first-child {
	margin-top: 0 !important;
}

.wpgb-facet .wpgb-checkbox-label {
	font-size: 10px !important;
}

.wpgb-facet .wpgb-checkbox-facet .wpgb-checkbox-control {
	height: 9px !important;
	width: 9px !important;
	border-radius: 0px !important;
	margin-top: auto;
	margin-bottom: auto;
}

.wpgb-facet .wpgb-checkbox .wpgb-checkbox-control {
	border-color: #000000 !important;
}

.wpgb-facet>fieldset:last-child {
	margin-bottom: 0px !important;
}

.wpgb-facet button.wpgb-button {
	padding: 10px 15px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	width: 100%;
	border-radius: 0 !important;
	border: 1px solid var(--border-color) !important;
}

.wpgb-facet button.wpgb-apply,
.wpgb-facet button.wpgb-reset {
	margin-bottom: 0 !important;
}

.wpgb-facet button.wpgb-apply {
	background-color: #eee;
	color: #000 !important;
}

.wpgb-facet button.wpgb-reset {
	background-color: #fff;
	color: #000 !important;
	border-right: 0 !important;
}

.wpgb-facet .wpgb-search-facet input[type="search"] {
	border: 0 !important;
	border-radius: 0 !important;
	font-size: 12px !important;
	padding: 5px 5px 5px 42px !important;
	width: 103px !important;
	height: auto !important;
	min-height: 20px !important;
	line-height: normal !important;
	/*transition: width 0.5s ease;*/
}

.wpgb-facet .wpgb-search-facet input[type="search"]:focus {
	border-bottom: 1px solid var(--border-color) !important;
	width: 100% !important;
}

.wpgb-facet .wpgb-input-icon {
	color: #000 !important;
}

.wpgb-facet .wpgb-clear-button {
	width: auto !important;
}

.wpgb-facet .wpgb-search-facet .wpgb-input-icon {
	width: 24px;
	height: 24px;
	top: calc(50% - 12px);
}

.wpgb-facet .wpgb-load-more {
	background-color: #eee !important;
	color: #000 !important;
}

.order-col .wpgb-select {
	appearance: none;
	background-color: #fff;
	border: 1px solid var(--border-color) !important;
	border-radius: 0px !important;
	padding: 5px 10px !important;
	font-size: 14px !important;
	min-width: 150px;
	transition: border-color 0.3s ease;
}

.order-col .wpgb-select:focus {
	border-color: #000;
	outline: none;
}

.order-col .wpgb-select-toggle {
	fill: #000;
	width: 16px;
	height: 16px;
}

@media (max-width: 1024px) {
	.wpgb-hierarchical-list {
		column-count: 2;
		column-gap: 1rem;
		/* ajusta el espacio entre columnas si quieres */
	}

	.wpgb-hierarchical-list li {
		break-inside: avoid;
		/* evita que se corte un li en varias columnas */
	}
}

/*
 * FIN - WP Gridbuilder > Filtros
 */

/*
 * Ocultar filtros según categoría
 */
.term-26 .filtro-tipo-lente,
.term-27 .filtro-tipo-lente,
.term-30 .filtro-tipo-lente,
.term-31 .filtro-tipo-lente,
.term-28 .filtro-tipo-lente,
.term-29 .filtro-tipo-lente,
.term-30 .filtro-genero,
.term-31 .filtro-genero,
.term-28 .filtro-genero,
.term-29 .filtro-genero {
	display: none;
}


/*
 * FIN - Ocultar filtros según categoría
 */


/*
 * Mostrar filtros tienda
 */
.filters-grid {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.5s ease;
}

.filters-grid.visible {
	max-height: 1500px;
	/* suficientemente grande para mostrar todo */
	padding-bottom: 0px;
}

/*
 * FIN - Mostrar filtros tienda
 */

/*
 * Archivo Productos > Título + Cats
 */
.cat-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 15px;
	/* separación entre padre/tienda y categorías hijas */
}

.cat-header a {
	text-decoration: none;
}

.cat-header a:hover {
	color: var(--accent);
}

/* parte izquierda: tienda + categoría padre */
.cat-header .header-main {
	color: var(--contrast);
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	white-space: nowrap;
}

/* contenedor de categorías hijas */
.cat-header .child-cats {
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
	/* separación entre las hijas */
	align-items: center;
}

/* estilo hijas */
.cat-header .child-cat {
	display: inline-flex;
	align-items: center;
	color: var(--contrast);
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-decoration: none;
}

/* espacio entre icono y texto */
.cat-header .child-cat svg {
	margin-right: 10px;
}

/* hover categorías hijas */
.cat-header .child-cat:not(.active):hover {
	color: var(--accent);
}

/* cuadrado (icono) no activo */
.cat-header .square {
	color: #fff;
	/* relleno blanco */
}

/* cuadrado activo */
.cat-header .square.active {
	color: var(--contrast);
	/* relleno negro */
}

/*
 * FIN - Archivo Productos > Título + Cats
 */


/*
 * Plantilla Post del blog
 */
.single-post .wp-block-image {
	margin-bottom: 1.5em;
}

.single-post .site-main>* {
	margin-bottom: 0px;
}

@media (max-width: 768px) {
	.one-container .site-main .paging-navigation {
		margin-bottom: 0px;
	}
}

.single-post .paging-navigation a {
	text-decoration: none;
}

.single-post h2,
.single-post h3,
.single-post h4,
.single-post h5 {
	text-align: center;
}

/*
 * FIN - Plantilla Post del blog
 */


div.gb-element-8227f681>div>fieldset>div>ul.wpgb-hierarchical-list {
	column-count: 2;
	/* Número de columnas */
	column-gap: 20px;
	/* Espacio entre columnas */
	list-style-position: inside;
}



/*
 iMAGEN HOVER EN MODO CATALOGO
 */
/* Contenedor de la imagen en el catálogo */
ul.products li.product a img {
	transition: opacity 0.3s ease-in-out;
}

/* Posicionamos la imagen hover justo encima de la otra */
ul.products li.product a {
	position: relative;
	display: block;
}

.imagen-hover-display {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease-in-out;
	z-index: 2;
}

/* Efecto Hover */
ul.products li.product:hover .imagen-hover-display {
	opacity: 1;
	visibility: visible;
	display: block !important;
}

/* Opcional: difuminar un poco la imagen principal al pasar el ratón */
ul.products li.product:hover>a>img:not(.imagen-hover-display) {
	opacity: 0;
}


.woocommerce-product-gallery {
	min-height: 521px !important;
}


/*
 * Carrito - Checkout - Account
 */
.woocommerce-cart .site-content .content-area,
.woocommerce-checkout .site-content .content-area,
.woocommerce-account .site-content .content-area,
.page-id-61 .site-content .content-area,
.page-id-2230 .site-content .content-area {
	border: 1px solid var(--border-color);
	padding: 99px 0px 0px;
	background-color: #fff;
}

.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-account .entry-title,
.page-id-61 .entry-title,
.page-id-2230 .entry-title {
	border-top: 1px solid var(--border-color);
	border-bottom: 1px solid var(--border-color);
	padding: 20px;
	font-weight: 700;
	font-size: 36px;
}

@media (max-width: 767px) {

	.woocommerce-cart .entry-title,
	.woocommerce-checkout .entry-title,
	.woocommerce-account .entry-title,
	.page-id-61 .entry-title,
	.page-id-2230 .entry-title {
		font-size: 32px;
	}

	.woocommerce-cart .site-content .content-area,
	.woocommerce-checkout .site-content .content-area,
	.woocommerce-account .site-content .content-area,
	.page-id-61 .site-content .content-area,
	.page-id-2230 .site-content .content-area {
		padding-top: 89px;
	}

}

.woocommerce-account .woocommerce-MyAccount-content {
	margin-top: 30px;
}

/*
 *  FIN - Carrito
 */

/*
 * Woocommerce messages
 */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	margin-bottom: 0 !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.woocommerce-message .button {
	background-color: var(--base) !important;
	text-transform: uppercase;
	padding: 5px 20px !important;
	color: var(--contrast) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	margin-left: auto !important;
}

.woocommerce-message .button:hover {
	background-color: var(--contrast-3);
}

/*
 * FIN - Woocommerce messages
 */


/*
 *  Seleccionar tienda
 */

.sl-list .sl-item .sl-btn-custom {
	display: none;
}

.sl-list .sl-item.highlighted .sl-btn-custom {
	display: block;
}

.select-store-notices .woocommerce-error,
.select-store-notices .woocommerce-info,
.select-store-notices .woocommerce-message {
	margin-bottom: 0 !important;
	margin-top: -2em !important;
}

@media (max-width: 767px) {
	.sel-store-map-container .asl-map {
		order: 0 !important;
	}

	.sel-store-map-container .asl-panel {
		order: 1 !important;
	}
}

/* Resumen carrito */
.resumen-carrito {}

.item-carrito {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	padding: 10px;
}

.item-carrito:first-child {
	border-top: 1px solid #ddd;
}


.producto-thumb {
	background-color: var(--fondo-productos);
}

.producto-thumb img {
	max-width: 150px;
	height: auto;
}

.producto-detalles {
	flex: 1;
}

.producto-titulo {
	font-size: 24px;
	font-weight: 600;
	margin-bottom: 0px;
}

.producto-titulo a {
	color: var(--contrast);
	text-decoration: none;
}

.producto-titulo a:hover {
	color: var(--accent);
}

.producto-sku {
	font-size: 12px;
	color: var(--contrast-3);
	margin-bottom: 0.25rem;
}

.producto-variacion {
	font-size: 12px;
	font-weight: 400;
	color: var(--contrast);
}

.producto-detalles .producto-remove .remove {
	color: var(--contrast-3);
	font-size: 12px;
	text-decoration: underline;
	display: flex;
	align-items: center;
	margin-top: 10px
}

.producto-detalles .producto-remove .remove:hover {
	color: var(--contrast);
}

.producto-remove .remove {
	color: red;
	font-size: 1.5rem;
	text-decoration: none;
	line-height: 1;
}

.producto-remove .remove svg {
	width: 25px;
	height: 25px;
	fill: currentColor;
}


@media (max-width: 767px) {
	.producto-titulo {
		font-size: 18px;
	}

	.producto-thumb {
		width: 30%;
	}

	.producto-thumb img {
		max-width: 100%;
	}
}


/*
 *  FIN - Seleccionar tienda
 */

/*
 * Seleccionar Tienda > CF7
 */

.form-select-store {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.form-select-store .user-name {
	border-top: none;
	border-bottom: none;
	border-left: none;
}

.form-select-store .user-surname {
	border-top: none;
	border-bottom: none;
	border-right: none;
	border-left: none;
}

.form-select-store .user-email {
	border-bottom: none;
	border-left: none;
}

.form-select-store .user-phone {
	border-bottom: none;
	border-right: none;
	border-left: none;
}

.form-select-store .form-legal {
	grid-column: 1/3;
	padding: 20px;
	border-top: 1px solid var(--border-color);
	border-left: none;
	border-right: none;
	border-bottom: none;
}

.form-select-store .form-submit {
	grid-column: 1/3;
	border: 1px solid var(--border-color);
	border-bottom: none;
	border-right: none;
	border-left: none;
}

.selected-store {
	margin-bottom: 15px;
}

.selected-store-data {
	display: none;
}

@media (max-width: 767px) {
	.form-select-store .user-name {
		grid-column: 1/3;
		border-bottom: 1px solid var(--border-color);
		border-right: none;
	}

	.form-select-store .user-surname {
		grid-column: 1/3;
	}

	.form-select-store .user-email {
		grid-column: 1/3;
		border-right: none;
	}

	.form-select-store .user-phone {
		grid-column: 1/3;
	}
}

/*
 * Seleccionar Tienda > CF7
 */

/* Ocultar badge  reCAPTCHA  */
.grecaptcha-badge {
	visibility: hidden;
}

/*
 * Footer
 */
/* Contenedor en columna (una fila por red) */
.social-links--stacked {
	display: flex;
	flex-direction: column;
	gap: 14px;
	/* .6rem;	*/
	font-size: 16px;
}

/* Enlace con icono + etiqueta alineados */
.social-link {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	text-decoration: none !important;
	color: inherit;
	line-height: 1.25;
	/* tamaño del icono configurable */
	--icon-size: 1.15em;
}

/* Icono vectorial nítido */
.social-link .icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--icon-size);
	height: var(--icon-size);
	flex: 0 0 auto;
}

.social-link svg {
	width: 100%;
	height: 100%;
	vertical-align: middle;
}

.social-link:hover {
	opacity: .85;
}

/*
 * Menú móvil (Burger Menu) - Mobile / Tablet Fix
 * Sustituye el bloque anterior completo por este.
 */
@media (max-width: 1024px) {

	/* Overlay general */
	.gb-menu-container {
		display: none !important;
		position: fixed;
		inset: 0;
		width: 100vw;
		height: 100vh;
		background: rgba(255, 255, 255, 0.98);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
		z-index: 100000;
		overflow-y: auto;
		overflow-x: hidden;
		padding: 88px 24px 32px;
		margin: 0;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.28s ease, visibility 0.28s ease;
		box-sizing: border-box;
	}

	/* Estado abierto */
	.gb-menu-container.gb-menu-open {
		display: block !important;
		opacity: 1;
		visibility: visible;
	}

	/* Evitar scroll del fondo */
	body.mobile-menu-open {
		overflow: hidden;
	}

	/*
	 * Normalización de wrappers internos
	 * Solo dentro del overlay móvil, para no tocar desktop.
	 */
	.gb-menu-container,
	.gb-menu-container > *,
	.gb-menu-container nav,
	.gb-menu-container .wp-block-navigation,
	.gb-menu-container .wp-block-navigation__container,
	.gb-menu-container .gb-container,
	.gb-menu-container .gb-inside-container,
	.gb-menu-container .inside-navigation {
		box-sizing: border-box;
	}

	/* Cualquier contenedor interno importante del menú debe apilar en vertical */
	.gb-menu-container nav,
	.gb-menu-container .wp-block-navigation,
	.gb-menu-container .wp-block-navigation__container,
	.gb-menu-container ul.menu,
	.gb-menu-container ul.sub-menu {
		width: 100% !important;
		max-width: 520px;
		margin-left: auto;
		margin-right: auto;
	}

	.gb-menu-container .wp-block-navigation__container,
	.gb-menu-container ul.menu,
	.gb-menu-container ul.sub-menu {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		gap: 0 !important;
		padding: 0 !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		list-style: none !important;
		text-align: left !important;
	}

	/* Items siempre en vertical y ocupando ancho */
	.gb-menu-container .wp-block-navigation-item,
	.gb-menu-container ul.menu > li,
	.gb-menu-container ul.sub-menu > li {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		opacity: 0;
		transform: translateY(14px);
		transition:
			opacity 0.32s ease,
			transform 0.32s ease,
			border-color 0.25s ease,
			background-color 0.25s ease;
		transition-delay: calc(var(--item-index, 0) * 0.04s);
		border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	}

	.gb-menu-container.gb-menu-open .wp-block-navigation-item,
	.gb-menu-container.gb-menu-open ul.menu > li,
	.gb-menu-container.gb-menu-open ul.sub-menu > li {
		opacity: 1;
		transform: translateY(0);
	}

	/*
	 * Enlaces del menú:
	 * bloque completo, táctil, elegante y sin layout inline.
	 */
	.gb-menu-container .wp-block-navigation-item__content,
	.gb-menu-container ul.menu > li > a,
	.gb-menu-container ul.sub-menu > li > a {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		width: 100% !important;
		min-height: 56px;
		padding: 14px 2px;
		margin: 0 !important;
		text-decoration: none !important;
		text-align: left !important;
		font-size: 24px;
		font-weight: 300;
		line-height: 1.15;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: #1a1a1a;
		background: transparent;
		border: 0;
		box-shadow: none;
	}

	.gb-menu-container .wp-block-navigation-item__content:hover,
	.gb-menu-container ul.menu > li > a:hover,
	.gb-menu-container ul.sub-menu > li > a:hover,
	.gb-menu-container .wp-block-navigation-item__content:focus,
	.gb-menu-container ul.menu > li > a:focus,
	.gb-menu-container ul.sub-menu > li > a:focus {
		color: #000;
		outline: none;
	}

	/* Submenús, si existen */
	.gb-menu-container ul.sub-menu {
		padding: 6px 0 10px 0 !important;
		margin: 0 !important;
	}

	.gb-menu-container ul.sub-menu > li {
		border-bottom: 0 !important;
	}

	.gb-menu-container ul.sub-menu > li > a {
		min-height: 42px;
		padding: 8px 2px 8px 18px;
		font-size: 15px;
		font-weight: 400;
		letter-spacing: 0.06em;
		text-transform: none;
		color: rgba(26, 26, 26, 0.82);
	}

	/*
	 * Si dentro del panel aparece selector de idioma u otros bloques,
	 * los forzamos también a comportarse como bloques apilados.
	 */
	.gb-menu-container .wpml-language-switcher-block,
	.gb-menu-container .wp-block-navigation-item.has-child,
	.gb-menu-container .menu-item,
	.gb-menu-container .gb-button-wrapper,
	.gb-menu-container .gb-headline,
	.gb-menu-container .gb-icon {
		width: 100%;
	}

	/* Mejor separación visual de grupos auxiliares */
	.gb-menu-container .wpml-language-switcher-block {
		max-width: 520px;
		margin: 22px auto 0;
		padding-top: 12px;
		border-top: 1px solid rgba(0, 0, 0, 0.12);
	}

	.gb-menu-container .wpml-language-switcher-block .wp-block-navigation__container,
	.gb-menu-container .wpml-language-switcher-block ul,
	.gb-menu-container .wpml-language-switcher-block li {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		flex-wrap: wrap !important;
		gap: 12px !important;
		width: auto !important;
		border: 0 !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.gb-menu-container .wpml-language-switcher-block a,
	.gb-menu-container .wpml-language-switcher-block .wp-block-navigation-item__content {
		display: inline-flex !important;
		width: auto !important;
		min-height: auto !important;
		padding: 4px 0 !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		letter-spacing: 0.08em !important;
		text-transform: uppercase !important;
		color: rgba(26, 26, 26, 0.75) !important;
	}

	.gb-menu-container .wpml-language-switcher-block .current-language-item > a,
	.gb-menu-container .wpml-language-switcher-block .current-language-item > .wp-block-navigation-item__content {
		color: #000 !important;
	}

	/* Botón de cierre */
	.gb-menu-close-fix {
		position: fixed;
		top: 22px;
		right: 22px;
		width: 44px;
		height: 44px;
		cursor: pointer;
		z-index: 100001;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.82);
		backdrop-filter: blur(6px);
		-webkit-backdrop-filter: blur(6px);
	}

	.gb-menu-close-fix::before,
	.gb-menu-close-fix::after {
		content: '';
		position: absolute;
		width: 24px;
		height: 1.5px;
		background-color: #1a1a1a;
	}

	.gb-menu-close-fix::before {
		transform: rotate(45deg);
	}

	.gb-menu-close-fix::after {
		transform: rotate(-45deg);
	}

	.social-links--stacked {
		gap: 14px;
		/* .6rem;	*/
		font-size: 12px;
	}

}

@media (max-width: 767px) {
	.gb-menu-container {
		padding: 84px 18px 24px;
	}

	.gb-menu-container .wp-block-navigation-item__content,
	.gb-menu-container ul.menu > li > a,
	.gb-menu-container ul.sub-menu > li > a {
		font-size: 21px;
		min-height: 52px;
		letter-spacing: 0.07em;
	}

	.gb-menu-close-fix {
		top: 16px;
		right: 16px;
		width: 42px;
		height: 42px;
	}

	.social-links--stacked {
		gap: 14px;
		/* .6rem;	*/
		font-size: 11px;
	}
}


/*
 * HERO HOME
 * Usamos el ID porque este bloque es único y así evitamos depender
 * de clases generadas de GenerateBlocks.
 */
#hero-home {
	position: relative;
	overflow: hidden;
	padding: 0 !important;
}

/* Slider base */
#hero-home > .wp-block-gslider-blocks-image-slider {
	position: relative;
	z-index: 1;
	margin-bottom: 0 !important;
}

/* Asegurar que la imagen llene correctamente el hero */
#hero-home .swiper-slide img {
	display: block;
	width: 100%;
	height: auto;
}

/* Overlay inferior por encima del slider */
#hero-home > .background-video-content,
#hero-home > .gb-element-a9b93bde.background-video-content {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 20;
	display: flex;
	justify-content: center;
	margin: 0 20px 20px 20px;
	box-sizing: border-box;
	max-height: 100px;
}

/* Ancho interno del contenido */
#hero-home > .background-video-content > .gb-element-6cfaa3fd,
#hero-home > .gb-element-a9b93bde.background-video-content > .gb-element-6cfaa3fd {
	width: 100%;
	max-width: 1200px;
}

/* El overlay no debe bloquear interacción general del slider */
#hero-home > .background-video-content,
#hero-home > .gb-element-a9b93bde.background-video-content {
	pointer-events: none;
}

#hero-home > .background-video-content a,
#hero-home > .background-video-content button,
#hero-home > .gb-element-a9b93bde.background-video-content a,
#hero-home > .gb-element-a9b93bde.background-video-content button {
	pointer-events: auto;
}
