/*
Theme Name: ElKaminante
Theme URI: https://elkaminante.com.uy/
Description: Tema personalizado para ElKaminante.
Author: Cincomedios
Author URI: https://cincomedios.com
Template: Total
Version: 1.0
*/

/*//////////////////////////////////////////////////////*/
/*///VARIABLES//////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

:root {
	--gris-c: var(--wpex-palette-358-color);
	--gris: var(--wpex-palette-156-color);
	--negro-c: var(--wpex-palette-155-color);
	--negro: var(--wpex-palette-154-color);
	--celeste-c: var(--wpex-palette-150-color);
	--celeste: var(--wpex-palette-192-color);
	--azul-c: var(--wpex-palette-147-color);
	--azul: var(--wpex-palette-146-color);
	--azul-o: var(--wpex-palette-165-color);
	--azul-t: rgba(36,57,134,0.8);
	--rosa: var(--wpex-palette-8493-color);
	--naranja-c: var(--wpex-palette-151-color);
	--naranja: var(--wpex-palette-148-color);
	--deg-naranja: linear-gradient(45deg, var(--naranja), var(--naranja-c));
	
	--alerta: #f7cf47;
	--alerta-c: #faf7be;
	--alerta-o: #935801;
	--error: #d10000;
	--error-c: #ffe8e8;
	--error-o: #a70909;
	--exito: #20c502;
	--exito-c: #daffdd;
	--exito-o: #1b600f;
	
	--general-gap: 100px;
	--reduced-gap: 50px;
	--column-gap: 60px;
	--aside-gap: 5vw;
	
	--wpex-body-font-size: 16px;
	--ff-regular: "Satoshi Regular", sans-serif;
	--ff-medium: "Satoshi Medium", sans-serif;
	--ff-bold: "Satoshi Bold", sans-serif;
	--ff-icons: "Font Awesome 6 Free";
	--ff-icons-brands: "Font Awesome 6 Brands";
	--wpex-heading-text-wrap: balance;
	
	--notice-padding: 1em 2em 1em 3.5em;
	--box-padding: 30px;
	
	--br-sm: 16px;
	--br-lg: 24px;
	--br-xl: 34px;
}

@media (width >= 1024px) {
	
	:root {
		--wpex-body-font-size: 18px;
	}
	
	header {
		font-size: 16px;
	}
	
}

@media (width < 1024px) {
	
	:root {
		--general-gap: 50px;
		--reduced-gap: 30px;
		--aside-gap: 7vw;
		
		--wpex-container-max-width: 86%;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///GENERAL////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

html {
	scroll-behavior: smooth;
}

::-webkit-scrollbar {
    width: 0.7rem;
}
 
::-webkit-scrollbar-track {
    background: var(--gris-c);
}
 
::-webkit-scrollbar-thumb {
    background: var(--azul-o);
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {
  opacity: 1;
}

strong {
	font-family: var(--ff-bold);
}

.grecaptcha-badge {
	display: none !important;
}

/*.fecha {
	text-transform: capitalize;
}*/

.ocultar {
	display: none !important;
}

.wpex-card {
	overflow: hidden;
}

.en-linea {
	display: inline-block;
	vertical-align: middle;
}

.en-linea:not(:last-child) {
	margin-right: 20px;
}

a:hover .vcex-list-item-text {
	color: var(--wpex-accent);
}

.wpex-social-btn {
	width: auto;
}

.wpex-social-btn:not(:last-child) {
	margin-right: 10px;
}

body.home .ocultar-home,
body:not(.home) .ocultar-nosotros {
	display: none !important;
}

.fancybox-image {
	border-radius: var(--br-lg);
}

#mantenimiento svg {
	width: 250px;
}

#mantenimiento .vcex-image {
	text-align: center;
}

@media (width < 768px) {
	
	.centrar-mobile {
		text-align: center;
	}
	
	.vcex-heading {
		font-weight: 700;
	}
	
}

/* Espaciado */

div.vc_row {
    row-gap: calc(var(--general-gap) - 20px);
	margin-inline: calc(-1 * (var(--column-gap) / 2));
    margin-bottom: var(--wpex-vc-elements-bottom-margin, var(--general-gap));
}

div.vc_row.no-row-gap {
    row-gap: 0;
}

div.vc_row.big-row-gap {
    row-gap: var(--general-gap);
}

div.vc_row.no-bottom-margins,
div.vc_column-inner {
    margin-bottom: 0;
}

div:has(> .nr-col) {
    row-gap: var(--wpex-row-gap);
}

div.nr-col {
    margin: 0;
}

.full-content:not(.aside-bg-images) {
	padding-block: var(--general-gap);
}

.full-content.aside-bg-images > .wpb_column {
	padding-block: var(--general-gap);
}

div.vc_column_container > .vc_column-inner {
	padding-inline: calc(var(--column-gap) / 2);
}

.wpex-vc-full-width-row--centered > div.vc_column_container > .vc_column-inner {
	padding-inline: 15px !important;
}

.padding-block {
	padding-block: var(--general-gap);
}

:is(.vcex-custom-field,.woocommerce-product-details__short-description) p:last-child {
	margin: 0;
}

@media (width < 992px) {
	
	div.vc_row.acercar {
		row-gap: 30px;
	}
	
}

/* Botones */

.theme-button {
	margin-block: 5px;
}

/* Textos */

.subtitulo {
	color: var(--azul);
	font-family: var(--ff-medium);
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 10px;
}

.subtitulo.naranja .wpb_wrapper {
	background: var(--naranja);
	background-image: var(--deg-naranja);
  	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
	display: inline-block;
}

.oscuro,
.oscuro .wpex-heading,
.oscuro .subtitulo {
	color: var(--wpex-white);
}

@media (width < 768px) {
	
	.subtitulo {
		font-size: 14px;
	}
	
	.center-mobile {
		text-align: center;
	}
	
}

/* Grillas */

.grilla .vc_column-inner > .wpb_wrapper {
	display: grid;
	gap: 20px;
}

.grilla.mosaico {
	align-content: end;
}

@media (width >= 992px) {

	.grilla.col-3.mosaico .vc_column-inner > .wpb_wrapper {
		grid-template-columns: repeat(3,1fr);
	}
	
	.grilla.mosaico .grande {
		grid-column: 1 / 3;
		grid-row: 1 / 3;
	}
	
}

@media (width >= 768px) {

	.grilla.col-2 .vc_column-inner > .wpb_wrapper {
		grid-template-columns: repeat(auto-fit,minmax(450px,1fr));
		gap: 30px;
	}

	.grilla.col-3 .vc_column-inner > .wpb_wrapper {
		grid-template-columns: repeat(auto-fit,minmax(350px,1fr));
		gap: 30px;
	}
	
}

@media (width >= 768px) {

	.grilla.col-2 .vc_column-inner > .wpb_wrapper {
		grid-template-columns: repeat(auto-fit,minmax(450px,1fr));
		gap: 30px;
	}

	.grilla.col-3 .vc_column-inner > .wpb_wrapper {
		grid-template-columns: repeat(auto-fit,minmax(350px,1fr));
		gap: 30px;
	}
	
	.grilla.mosaico .grande {
		grid-column: 1 / 3;
		grid-row: 1 / 3;
	}
	
}

/* Icono + texto */

.icono-info-linea {
	border-radius: 16px;
	border: 1px solid var(--wpex-border-main);
	padding: 24px;
}

.icono-info-caja {
	border-radius: var(--br-sm);
	padding: var(--box-padding);
	overflow: hidden;
}

.texto-abajo .icono-info-caja {
	display: grid;
	align-content: end;
}

.icono-info-caja.con-borde {
	border: 1px solid var(--wpex-border-main);
}

.icono-info-caja.con-borde.naranja {
	background: var(--wpex-white);
	background-image: linear-gradient(to right, var(--wpex-white), var(--wpex-white)), var(--deg-naranja);
    background-clip: padding-box, border-box;
    background-origin: border-box;
    border-color: transparent;
}

.oscuro .icono-info-caja {
	background: var(--azul-c);
}

.icono-info-caja.azul {
	background: var(--azul);
}

.icono-info-caja.naranja {
	background: var(--naranja);
}

.icono-info-caja.imagen {
	min-height: 400px;
}

.icono-info-caja.imagen::before {
	content: "";
	background: linear-gradient(to top, rgba(0,0,0,0.6), rgba(0,0,0,0));
	position: absolute;
	inset: 0;
	z-index: -1;
}

.vcex-icon-box-symbol svg {
	width: 30px;
	height: 30px;
}

.icono-info-caja .vcex-icon-box-symbol svg {
	width: 40px;
	height: 40px;
}

.vcex-icon-box-heading {
	font-size: var(--wpex-text-lg);
}

.vcex-icon-box-heading strong {
	background: var(--naranja);
	background-image: var(--deg-naranja);
  	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
}

.vcex-icon-box-heading:last-child {
	margin: 0;
}

.icono-info-linea .vcex-icon-box-heading {
	color: var(--gris);
}

.oscuro :is(.vcex-icon-box-heading,.vcex-icon-box-content) {
	color: var(--wpex-white);
}

/* Equipo */

.equipo-item .wpb_wrapper {
	position: relative;
}

.equipo-info {
	background: rgba(110, 110, 110, 0.3);
	backdrop-filter: blur(30px);
	border-radius: var(--br-sm);
	padding: 15px 20px;
	position: absolute;
	inset: auto 20px 20px 20px;
}

/* Listas */

.wpb_text_column ul {
	list-style: none;
	display: grid;
	gap: 5px;
	margin: 0;
	padding: 0;
}

.wpb_text_column ul:not(:last-child) {
	margin-bottom: var(--wpex-el-margin-bottom);
}

.wpb_text_column ul li {
	display: grid;
	grid-template-columns: 25px auto;
	align-items: start;
	margin: 0;
}

.wpb_text_column ul li::before {
	content: "\f105";
	color: var(--naranja);
	font-family: var(--ff-icons);
	font-weight: var(--wpex-bold);
}

.wpb_text_column.incluidos ul li::before {
	content: "\f00c";
}

.wpb_text_column.no.incluidos ul li::before {
	content: "\f00d";
}

/* Cajas */

div.vc_row.caja {
	border-radius: var(--br-lg);
	row-gap: 0;
	margin-inline: 0;
	overflow: hidden;
}

.caja div.vc_column_container > .vc_column-inner {
	padding: 0;
}

.mitad-imagen .vc_column-inner:not(:has(img)) > .wpb_wrapper,
.cta .vc_column-inner > .wpb_wrapper {
	padding: var(--reduced-gap);
}

.mitad-imagen.full-w .vc_column-inner:not(:has(img)) > .wpb_wrapper {
	padding: var(--general-gap);
	padding-right: max(calc(50vw - var(--wpex-container-width) / 2),var(--aside-gap));
	padding-left: clamp(var(--reduced-gap),var(--aside-gap),var(--general-gap));
}

.mitad-imagen .wpb_column:has(img) {
	min-height: 400px;
}

.mitad-imagen img {
	position: absolute;
}

.cta:not(.caja) .vc_column-inner > .wpb_wrapper {
	width: var(--wpex-container-width);
	max-width: var(--wpex-container-max-width);
	padding: 0;
	margin-inline: auto;
}

.cta {
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 450px;
}

.cta.centrado {
	text-align: center;
}

.cta .wpb_column::before {
	content: "";
	background: linear-gradient(to right, rgba(0,0,0,0.6), rgba(0,0,0,0) 70%);
	position: absolute;
	inset: 0;
}

.cta.centrado .wpb_column::before {
	background: rgba(0,0,0,0.6);
}

.cta .wpex-heading {
	font-family: var(--ff-regular);
	font-weight: 400;
}

@media (width >= 1024px) {	
	
	.cta:not(.centrado) .vc_column-inner > .wpb_wrapper > * {
		max-width: 550px;
	}
	
	.cta:not(.centrado) .wpb_text_column {
		max-width: 600px;
	}

	.cta:not(.caja) .wpb_column::before {
		background: linear-gradient(to right, rgba(0,0,0,0.8), rgba(0,0,0,0));
	}
	
}

@media (width < 1024px) {	

	.cta .wpb_column::before {
		background: rgba(0,0,0,0.6);
	}
	
}

@media (width >= 768px) {	

	.cta .theme-button:first-of-type {
		margin-right: 20px;
	}
	
}

/* Carrusel */

.wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)) {
	--size: 40px;
	--gap: -60px;
	--wpex-carousel-arrow-prev-left: var(--gap);
	--wpex-carousel-arrow-next-right: var(--gap);
	background: var(--gris-c);
	border-radius: 100%;
	width: var(--size);
	height: var(--size);
}

.wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)) svg {	
	fill: var(--wpex-text-2);
	width: calc(var(--size) / 2.5);
}

.wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)):hover {
	background: var(--azul);
}

.wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)):hover svg {	
	fill: var(--wpex-white);
}

@media (width < 1200px) {
	
	.wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)) {
		--gap: -20px;
	}
	
}

/* Acordéon */

.vc_tta.vc_general .vc_tta-panel {
	--gap: 20px;
	border-bottom: 1px solid var(--wpex-border-main);
}

.vc_tta.vc_general .vc_tta-panel:first-child {
	border-top: 1px solid var(--wpex-border-main);
}

.vc_tta.vc_general .vc_tta-panel-heading {
	border: none;
	border-radius: 0;
}

.vc_tta.vc_general .vc_tta-panel-title {
	font-size: var(--wpex-text-lg);
	font-family: var(--ff-medium);
	font-weight: unset;
}

.vc_tta.vc_general .vc_tta-panel-title > a {
	padding-left: 0 !important;
	padding-block: var(--gap) !important;
}

.vc_tta.vc_general .vc_active .vc_tta-panel-title > a {
	color: var(--naranja);
}

.vc_tta.vc_tta-shape-rounded .vc_tta-panel-body {
	border: none;
	padding: 0 0 var(--gap) !important;
	margin-top: -10px;
}

/* Paginación */

:is(.wpex-pagination,.woocommerce-pagination) .page-numbers {
	border-radius: var(--wpex-pagination-border-radius);
	display: flex;
	align-items: center;
	justify-content: center;
}

.woocommerce-pagination {
	margin-top: 50px !important;
}

/* Etiquetas */

.etiquetas ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 0;
}

.etiquetas li {
    border: 1px solid transparent;
	border-radius: 99em;
	padding: 3px 15px;
	position: relative;
}

body:not(.inactivo) .etiquetas:not(.relleno) li {
	background: var(--rosa);
	background-image: linear-gradient(90deg, var(--rosa), var(--rosa)), var(--deg-naranja);
    background-clip: padding-box, border-box;
    background-origin: border-box;
}

body:not(.inactivo) .etiquetas.relleno li {
	background: var(--naranja);
	border-color: var(--naranja);
	color: var(--wpex-white);
}

.inactivo .etiquetas li {
	background: var(--gris-c);
	border-color: var(--wpex-text-2);
	color: var(--wpex-text-2);
}

body:not(.inactivo) .etiquetas:not(.relleno) span {
	background: var(--naranja);
	background-image: var(--deg-naranja);
  	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
}

/* Título página */

.titulo-pagina {
	--height: 600px;
	background: var(--azul);
	text-align: center;
	min-height: var(--height);
	padding-block: var(--general-gap);
	overflow: hidden;
}

.titulo-pagina .wpb_column {
	position: static !important;
}

.titulo-pagina :is(.titulo,.subtitulo) {
	position: relative;
	z-index: 1;
}

.titulo-pagina:not(:has(.subtitulo)) .titulo,
.titulo-pagina .subtitulo {
	margin-top: 50px;
}

.titulo-pagina .titulo span {
	max-width: 800px;
}

.titulo-pagina .texto {
	max-width: 450px;
	margin: 20px auto 0;
}

.titulo-pagina .fondo {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.titulo-pagina .fondo::after {
	content: "";
	background: rgba(0,0,0,0.6);
	height: auto;
	position: absolute;
	inset: 0;
	visibility: visible;
	z-index: 1;
}

.titulo-pagina .fondo img {
	height: var(--height);
	width: 100%;
	object-fit: cover;
}

.titulo-pagina .fondo > div {
	width: 100%;
}

.titulo-pagina .fondo .sp-buttons {
	display: flex;
	padding: 0;
	gap: 10px;
	inset: auto auto 20px 50%;
	transform: translate(-50%);
	z-index: 2;
}

.titulo-pagina .fondo .sp-button {
	background: var(--wpex-white);
	border: none;
	border-radius: 99em !important;
	margin: 0;
	width: 10px !important;
	height: 10px !important;
	opacity: 0.5;
	transition: width ease 0.3s, opacity ease 0.3s;
}

.titulo-pagina .fondo .sp-button.sp-selected-button {
	width: 20px !important;
	opacity: 0.9;
}

.titulo-pagina .fondo .sp-slides-container {
	z-index: 0;
}

.titulo-pagina .fondo :is(.vcex-image-slider,.sp-mask,.sp-slides-container,.sp-slides,.sp-slide,.wpex-slider-media) {
	width: 100% !important;
	height: var(--height) !important;
}

.inactivo .titulo-pagina {
	filter: grayscale(50%);
}

@media (width >= 1024px) {	
	
	.titulo-pagina .texto {
		font-size: var(--wpex-text-lg);
		max-width: 670px;
	}
	
}

@media (width < 1024px) {
	
	.titulo-pagina {
		--height: 400px;
	}
	
	.titulo-pagina .titulo {
		font-size: var(--wpex-text-4xl) !important;
	}
	
}

/* Newsletter */

#cm-subscription-form {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	row-gap: 20px;
}

#cm-subscription-form input {
	background: transparent;
	border: 2px solid var(--wpex-white);
	border-radius: var(--br-sm);
	color: var(--wpex-white);
	text-align: left;
	flex: 1;
}

#cm-subscription-form .theme-button {
	background: var(--wpex-white);
	border-radius: var(--br-sm);
	color: var(--wpex-text-2);
	margin: 0;
}

#cm-subscription-form .theme-button:hover {
	background: var(--gris-c);
}

#subscription-response > div,
#loading-icon {
    background: var(--gris-c);
	border-radius: var(--br-sm);
    color: var(--wpex-text-2);
	text-align: left;
	display: grid;
	grid-template-columns: 20px auto;
	align-content: start;
	align-items: center;
	gap: 10px;
    padding: var(--wpex-btn-padding);
    pointer-events: none;
	position: relative;
	margin-top: 20px;
}

#subscription-response .error-message {
	background: var(--error-c);
	color: var(--error-o);
}

#subscription-response .success-message {
	background: var(--exito-c);
	color: var(--exito-o);
}

#subscription-response .wpex-icon {
    background: var(--wpex-gray-500);
    border-radius: var(--wpex-rounded-full);
    color: var(--wpex-white);
    font-family: var(--ff-icons);
    font-size: 11px;
    font-weight: var(--wpex-bold);
    line-height: 20px;
    text-align: center;
    width: 20px;
    height: 20px;
}

#subscription-response .error-message .wpex-icon {
	background: var(--error);
}

#subscription-response .success-message .wpex-icon {
	background: var(--exito);
}

#loading-icon .wpex-icon {
    animation: girar 1s linear infinite;
}

@media (width < 500px) {
	
	#cm-subscription-form {
		justify-content: center;
	}
	
	#cm-subscription-form input {
		flex: unset;
		width: 100%;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///HEADER/////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

#site-header-inner,
#site-logo .logo-img {
	transition: height ease 0.3s;
}

.is-sticky .header-fixed-height #site-header-inner {
	height: 56px;
}

.is-sticky #site-logo .logo-img {
	height: 40px;
}

.is-sticky .logo-img--base,
.not-sticky .logo-img--sticky {
	display: none;
}

.not-sticky .theme-button {
	background: var(--wpex-white);
	color: var(--wpex-text-2);
}

.not-sticky .theme-button:hover {
	background: var(--gris-c);
	color: var(--wpex-text-2);
}

#site-header .theme-button {
	margin: 0;
}

.is-sticky .theme-button {
	padding-block: 0.5em;
}

@media (width < 1200px) {
	
	.header-fixed-height #site-header-inner {
		height: 100px;
	}
	
	#site-logo .logo-img {
		height: 40px !important;
	}
	
	#site-header .theme-button {
		display: none;
	}
	
}

/* Menú */

.not-sticky .main-navigation-ul > .menu-item:hover > a {
	color: var(--wpex-white);
}

#site-navigation-wrap.has-menu-underline .main-navigation-ul > li > a > .link-inner::after {
	background: var(--deg-naranja);
}

:is(.viajes-en-grupo,.group-trips) #site-navigation-wrap.has-menu-underline .main-navigation-ul > li.viajes-grupo > a > .link-inner::after,
:is(.experiencias-por-uruguay,.experiences-in-uruguay) #site-navigation-wrap.has-menu-underline .main-navigation-ul > li.viajes-uruguay > a > .link-inner::after,
body:not(.single-trip) #site-navigation-wrap.has-menu-underline .main-navigation-ul > li.current_page_parent > a > .link-inner::after {
	opacity: 1;
	transform: scaleX(1);
}

.main-navigation-ul .contacto {
	display: none;
}

/* Idioma */

.wpml-ls-legacy-list-horizontal > ul {
	display: flex;
	align-items: center;
	gap: 10px;
}

.wpml-ls-legacy-list-horizontal a {
	padding: 0;
}

.wpml-ls-legacy-list-horizontal li:not(.wpml-ls-current-language,:hover) .wpml-ls-flag {
	filter: grayscale(100%);
}

.wpml-ls-legacy-list-horizontal .wpml-ls-flag {
	box-shadow: 0 0 3px rgba(0,0,0,0.2);
}

/*//////////////////////////////////////////////////////*/
/*///INICIO/////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Slider */

.sr7-layer {
	font-family: var(--ff-regular) !important;
}

.sr7-layer em {
	font-family: "Libre Baskerville" !important;
}

.sr7-bullets.custom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	width: auto !important;
}

.custom .sr7-bullet {
	background: #fff !important;
	border-radius: 99em !important;
	width: 10px !important;
	height: 10px !important;
	position: relative !important;
	left: 0 !important;
	top: 0 !important;
	opacity: 0.5;
	transition: all ease 0.3s;
}

.custom .sr7-bullet.selected {
	width: 20px !important;
	opacity: 0.9;
}

@media (1024px < width <= 1600px) {
	
	.slider-capa-left {
		left: 5% !important;
	}
	
}

@media (480px < width <= 1024px) {
	
	.slider-capa-left {
		left: 7% !important;
	}
	
}

/* Viajeros */

.etiqueta-viajeros {
	background: rgba(255,255,255,0.4);
	backdrop-filter: blur(30px);
	border-radius: 99em;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.2);
	padding: 10px 25px;
	max-width: 100%;
	position: absolute;
	top: 50px;
	left: 15px;
	z-index: 2;
}

.etiqueta-viajeros .wpb_wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.etiqueta-viajeros .vcex-grid-item {
	margin-right: -10px;
}

.etiqueta-viajeros img {
	border: 1.5px solid var(--wpex-white);
}

@media (width >= 1200px) {
	
	.etiqueta-viajeros {
		left: -20px;
	}
	
	.etiqueta-viajeros img {
		width: 50px;
		height: 50px;
		max-width: initial;
	}
	
	.etiqueta-viajeros .texto {
		font-size: var(--wpex-text-lg);
	}
	
}

@media (width < 1200px) {
	
	.intro-img img {
		max-height: 450px;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///VIAJES/////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Archivo */

.item-viaje .imagen .wpb_wrapper {
	position: relative;
}

.item-viaje .imagen img {
	aspect-ratio: 1 / 1;
	height: 100%;
}

.item-viaje .etiqueta {
	--gap: 20px;
	border-radius: 99em;
	color: var(--wpex-white);
	font-size: var(--wpex-text-sm);
	text-transform: none;
	display: inline-block;
	padding: 6px 15px;
	position: absolute;
	inset: var(--gap) auto auto var(--gap);
}

.item-viaje .etiqueta.no-disponible {
	background: var(--gris);
}

.item-viaje .etiqueta .extra {
	/*display: none;*/
}

.item-viaje:hover .etiqueta .extra {
	display: inline-block;
}

.item-viaje .etiqueta.fecha {
	background: var(--naranja);
}

.item-viaje .detalles .wpb_wrapper,
.item-viaje .precio {
	display: flex;
	gap: 10px;
}

.item-viaje .precio::after {
	content: "|";
	height: auto;
	visibility: visible;
}

.item-viaje .ver-mas {
	background: var(--azul-t);
	backdrop-filter: blur(4px);
	border-radius: var(--br-lg);
	text-decoration: none;
	display: flex;
	justify-content: center;
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity ease 0.3s;
}

.item-viaje .imagen:hover .ver-mas {
	opacity: 1;
}

/* Individual */

.aviso-viaje {
	background: var(--gris-c);
	border: 2px solid var(--wpex-text-2);
	border-radius: var(--br-sm);
	font-size: var(--wpex-text-lg);
	padding: var(--box-padding);
	padding-block: 20px;
}

.aviso-viaje.fecha {
	background: var(--celeste);
	border-color: var(--azul);
	color: var(--azul);
}

.viaje-galeria .entry-media {
	margin: 0;
}

.viaje-galeria img {
	border-radius: var(--br-lg);
	width: 100%;
}

.viaje-galeria .wpex-carousel__nav::before {
	content: "";
	background: linear-gradient(90deg, var(--wpex-white), rgba(255,255,255,0) 20%, rgba(255,255,255,0) 80%, var(--wpex-white));
	position: absolute;
	inset: 0;
	pointer-events: none;
}
	
.viaje-galeria .wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)) {
	--gap: 0;
	background: var(--azul);
}

.viaje-galeria .wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)) svg {	
	fill: var(--wpex-white);
}

.viaje-galeria .wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)):hover {
	background: var(--gris-c);
}

.viaje-galeria .wpex-carousel__nav .wpex-carousel__arrow:where(:not(.theme-button)):hover svg {	
	fill: var(--wpex-text-2);
}

.viaje-datos .vc_column-inner > .wpb_wrapper {
	display: grid;
	gap: 30px;
}

.viaje-datos.alt span {
	color: var(--azul);
	font-size: var(--wpex-text-base);
	display: block;
	margin-bottom: 5px;
}

@media (width >= 768px) {
	
	.viaje-datos .vc_column-inner > .wpb_wrapper {
		grid-template-columns: repeat(3,1fr);
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///PAQUETES///////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Destinos */

.wpex-term-cards-grid:has(.item-destino) {
	grid-template-columns: unset;
	grid-template-areas:
		"a a b b c c"
		"a a b b c c"
		"a a d d e e";
		"a a d d e e";
}

.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry img {
	aspect-ratio: 3/2;
	object-fit: cover;
	height: 100%;
	width: 100%;
}

.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry:first-child {
	grid-area: a;
}

.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry:nth-child(2) {
	grid-area: b;
}

.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry:nth-child(3) {
	grid-area: c;
}

.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry:nth-child(4) {
	grid-area: d;
}

.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry:nth-child(5) {
	grid-area: e;
}

.item-destino .wpb_wrapper:has(> .imagen) {
	border-radius: var(--br-lg);
	position: relative;
	overflow: hidden;
}

.item-destino .wpb_wrapper:has(> .imagen)::before {
	content: "";
	background: linear-gradient(to top, rgba(0,0,0,0.9), rgba(0,0,0,0) 70%);
	position: absolute;
	inset: 0;
	transition: opacity ease 0.3s;
	z-index: 1;
}

.item-destino:hover .wpb_wrapper:has(> .imagen)::before {
	opacity: 0;
}

.item-destino .wpb_wrapper:has(> .imagen)::after {
	content: "";
	background: var(--azul-t);
	backdrop-filter: blur(4px);
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity ease 0.3s;
	z-index: 1;
}

.item-destino:hover .wpb_wrapper:has(> .imagen)::after {
	opacity: 1;
}

.item-destino .detalles {
	padding: var(--box-padding);
	position: absolute;
	inset: auto 0 0;
	z-index: 2;
}

.item-destino .wpb_wrapper:has(> .nombre) {
	display: grid;
	align-items: center;
	grid-template-columns: auto 40px;
	gap: 30px;
}

.item-destino .nombre span {
	max-width: 200px;
}

.item-destino .icono > div {
	transition: background ease 0.3s, color ease 0.3s;
}

.item-destino:hover .icono > div {
	background: var(--wpex-white) !important;
	color: var(--wpex-text-2) !important;
}

@media (width >= 1024px) {	

	.wpex-term-cards-entry:first-child .item-destino,
	.wpex-term-cards-entry:first-child .item-destino :is(.wpb_column,.vc_column-inner,.wpb_wrapper) {
		height: 100%;
	}
	
}

@media (width < 1024px) {
	
	.wpex-term-cards-grid:has(.item-destino) {
		grid-template-areas:
			"a a"
			"b c"
			"d e";
	}
	
}

@media (768px <= width < 1024px) {
	
	.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry:first-child img {
		aspect-ratio: 6/2.5;
	}
	
}

@media (width < 768px) {
	
	.wpex-term-cards-grid:has(.item-destino) {
		grid-template-areas:
			"a"
			"b"
			"c"
			"d"
			"e";
	}
	
	.wpex-term-cards-grid:has(.item-destino) .wpex-term-cards-entry img {
		aspect-ratio: 2/1;
	}
	
}

/* Archivo */

.paquete-buscador .search-filter-input-text {
	border-color: var(--wpex-border-main);
	border-radius: 99em;
	padding: var(--wpex-input-padding);
	padding-inline: 20px;
}

.paquete-buscador .search-filter-input-text input {
	padding: 0 !important;
}

.paquete-buscador .search-filter-icon {
	margin: 0 0 0 5px;
	padding: 0 0 0 5px;
}

.paquete-buscador .search-filter-icon:not([class*="clear"]) {
	border-left: 1px solid var(--wpex-border-main);
	order: 2;
}

.paquete-buscador .search-filter-icon[class*="clear"]:hover {
	cursor: pointer;
}

.paquete-buscador .search-filter-icon:not([class*="clear"]) svg {
	color: currentcolor;
	fill: currentcolor;
}

.paquete-filtro .search-filter-input-button-group {
	gap: 10px;
}

.paquete-filtro .search-filter-input-button {
	border: 1px solid var(--wpex-border-main);
    border-radius: var(--br-sm);
	box-shadow: none !important;
    padding: var(--wpex-btn-padding);
    position: relative;
	flex: 1;
	transition: all ease 0.3s;
}

.paquete-filtro.relleno .search-filter-input-button {
	background: var(--gris-c);
	border-color: var(--gris-c);
}

.paquete-filtro:not(.relleno) .search-filter-input-button.search-filter-input-button--is-selected {
	background: var(--wpex-white);
    background-image: linear-gradient(90deg, var(--wpex-white), var(--wpex-white)), var(--deg-naranja);
    background-clip: padding-box, border-box;
    background-origin: border-box;
	border: 2px solid transparent;
	color: var(--wpex-text-2);
}

.paquete-filtro.relleno .search-filter-input-button.search-filter-input-button--is-selected {
	background: var(--wpex-naranja);
    background-image: var(--deg-naranja);
}

.paquete-filtro .search-filter-input-button:hover:not(.is-disabled):not(.search-filter-input-button--is-selected) {
	border-color: var(--naranja);
}

.paquete-filtro.relleno .search-filter-input-button:hover:not(.is-disabled):not(.search-filter-input-button--is-selected) {
	background: var(--gris-c);
}

/*.paquete-filtro .search-filter-input-button.search-filter-input-button--is-selected::after {
	content: "\f00d";
	font-family: var(--ff-icons);
	font-weight: var(--wpex-bold);
	font-size: var(--wpex-text-xs);
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	opacity: 0;
}

.paquete-filtro .search-filter-input-button.search-filter-input-button--is-selected:hover::after {
	opacity: 1
}*/

/* Individual */

#noIncEquMano, #noIncEquBodega, #noIncEquBM, #incArtPersonal, #incEquMano, #incEquBodega, #incEquBM, #incHospCrucero, #incHospHotel1, #incHospHotel2, #incHospHotel3, #incHospHotel4, #incHospHotel5, #noIncSeguro, #incSeguro, #noIncPropina, #incPropina, #noIncWifi, #incWifi, #incPaqBebidas, #noIncPaqBebidas, #incTraslado, #noIncTraslado, #incGuia, #sinGuia, .typeVueloCircuito.hotelVarios #sinGuia, .guiasOn #sinGuia, #incCiudades, #noIncTextoExtra, #incTextoExtra, #incPaqBebidas, #noIncVisitasExtra, #incPaseos, .typeVueloCircuito.hotelUno #sinGuia,.typeVueloCircuito.hotelDos #sinGuia, .typeVueloCircuito.hotelTres #sinGuia, .typeVueloCircuito.hotelVarios #sinGuia, .typeCircuito.hotelUno #sinGuia, .typeCircuito.hotelDos #sinGuia, .typeCircuito.hotelTres #sinGuia, .typeCircuito.hotelVarios #sinGuia, .typeCrucero #incTasasVuelos, .typeTerrestre #incTasasVuelos, .typeBarcoHotel #incTasasVuelos, .typeCircuito #incTasasVuelos {
    display: none;
}

.equiBodega #noIncEquMano, .equiMano #noIncEquBodega, .equiPersonal #noIncEquBM, .equiPersonal #incArtPersonal, .equiMano #incEquMano, .equiBodega #incEquBodega, .equiManoBodega #incEquBM, .typeCrucero #incHospCrucero, .typeCruceroVuelo #incHospCrucero, .hotelUno #incHospHotel1, .hotelDos #incHospHotel1, .hotelDos #incHospHotel2, .hotelTres #incHospHotel1, .hotelTres #incHospHotel2, .hotelTres #incHospHotel3, .hotelCuatro #incHospHotel1, .hotelCuatro #incHospHotel2, .hotelCuatro #incHospHotel3, .hotelCuatro #incHospHotel4, .hotelCinco #incHospHotel1, .hotelCinco #incHospHotel2, .hotelCinco #incHospHotel3, .hotelCinco #incHospHotel4, .hotelCinco #incHospHotel5, .hotelVarios #incHospHotel1, .trasladosOn #incTraslado, .trasladosOff #noIncTraslado, .typeVueloCircuito #incCiudades, .typeCrucero #incCiudades, .typeCruceroVuelo #incCiudades, .typeCircuito #incCiudades, .typeVueloCircuito #incPaseos, .typeTerrestre #incPaseos, .typeCircuito #incPaseos, .guiasOn #incGuia, .incExtraUno #incTextoExtra1, .incExtraDos #incTextoExtra2, .incExtraTres #incTextoExtra3, .seguroOff #noIncSeguro, .seguroOn #incSeguro, .incNoExtraUno #noIncTextoExtra1, .incNoExtraDos #noIncTextoExtra2, .incNoExtraTres #noIncTextoExtra3, .typeVueloCircuito.propinasOn #incPropina, .typeVueloCircuito.propinasOff #noIncPropina, .typeCrucero.propinasOn #incPropina, .typeCrucero.propinasOff #noIncPropina .typeCircuito.propinasOn #incPropina, .typeCircuito.propinasOff #noIncPropina, .paqBedidasOff #noIncPaqBebidas, .paqBedidasOn #incPaqBebidas, .typeCrucero.wifiOff #noIncWifi, .typeCrucero.wifiOn #incWifi, .typeCruceroVuelo.wifiOff #noIncWifi, .typeCruceroVuelo.wifiOn #incWifi, .typeVueloCircuito #noIncVisitasExtra, .typeCrucero #noIncVisitasExtra, .typeTerrestre #noIncVisitasExtra, .typeCruceroVuelo #noIncVisitasExtra, .typeCircuito #noIncVisitasExtra, .hotelDos #sinGuia, .hotelTres #sinGuia, .hotelVarios #sinGuia {
    display: grid;
}

/*//////////////////////////////////////////////////////*/
/*///TESTIMONIOS////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Archivo */

.wpex-card:has(.item-testimonio) {
	background: var(--wpex-white);
	border-radius: var(--br-xl);
	padding: var(--box-padding);
}

.item-testimonio .icono :is(svg,img) {
	width: 50px;
}

@media (width >= 1200px) {
	
	.item-testimonio .wpb_column:nth-child(2) .wpb_wrapper {
		padding-left: 30px;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///BLOG///////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Inicio */

.wpex-card:has(.item-entrada.inicio) {
	background: var(--celeste-c);
	border-radius: var(--br-xl);
	padding: var(--box-padding);
}

.item-entrada.inicio .wpb_wrapper:has(> .imagen) {
	position: relative;
}

@media (width < 600px) {
	
	.item-entrada.inicio .wpb_column {
		width: 100% !important;
	}
	
	.item-entrada.inicio .imagen img {
		aspect-ratio: 2 / 1;
	}
	
}

.item-entrada.inicio {
	
}

/* Archivo */

.blog .titulo-lista.archivo,
.archive .titulo-lista.blog {
	display: none;
}

.wpex-card:has(.item-entrada) {
	border-radius: var(--br-lg);
}

.item-entrada:not(.inicio) .wpb_wrapper {
	background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0) 70%);
	display: grid;
	align-content: end;
	min-height: 500px;
	padding: 30px;
}

.item-entrada:not(.inicio) .imagen {
	position: absolute;
	inset: 0;
	z-index: -1;
}

.item-entrada .ver-mas {
	align-self: unset !important;
	background: var(--azul-t);
	backdrop-filter: blur(4px);
	border-radius: var(--br-lg);
	text-decoration: none;
	display: flex;
	justify-content: center;
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity ease 0.3s;
}

.item-entrada:hover .ver-mas {
	opacity: 1;
}

@media (width < 1024px) {
	
	.item-entrada:not(.inicio) .wpb_wrapper {
		min-height: 400px;
	}
	
}

/* Individual */

.entrada-contenido img {
	border-radius: var(--br-lg);
}

.entrada-contenido .vcex-post-content-c > figure:not(:last-child) {
	margin-bottom: var(--reduced-gap) !important;
}

.entrada-contenido .vcex-post-content-c > p:has(+ figure) {
	margin-bottom: var(--reduced-gap) !important;
}
	
.entrada-compartir {
	text-align: center;
}

.entrada-autor {
	display: grid;
	grid-template-columns: 80px auto;
	align-content: center;
	align-items: center;
	gap: 20px;
}

.entrada-autor::after {
	display: none;
}

.entrada-autor img {
	border-radius: 100%;
	display: block;
}

.entrada-autor .nombre {
	font-family: var(--ff-medium);
}

.entrada-autor .bio {
	font-size: var(--wpex-text-sm);
}

.entrada-navegacion {
	border-top: 1px solid var(--wpex-border-main);
	padding-top: 50px;
}

.entrada-navegacion .vcex-post-next-prev__link {
	display: grid;
	column-gap: 10px;
}

.entrada-navegacion .vcex-post-next-prev__link::before {
	color: var(--azul);
	font-size: var(--wpex-text-sm);
	letter-spacing: 2px;
	text-transform: uppercase;
}

.entrada-navegacion .vcex-post-next-prev__link:hover::before {
	color: currentColor;
}

.entrada-navegacion .vcex-post-next-prev__next .vcex-post-next-prev__link {
	text-align: left;
	justify-content: start;
}

.entrada-navegacion .vcex-post-next-prev__prev .vcex-post-next-prev__link {
	text-align: right;
	justify-content: end;
}

.entrada-navegacion .vcex-post-next-prev__next .vcex-post-next-prev__link::before {
	content: "Anterior";
	grid-column: 2;
}

[lang="en-US"] .entrada-navegacion .vcex-post-next-prev__next .vcex-post-next-prev__link::before {
	content: "Previous";
}

.entrada-navegacion .vcex-post-next-prev__prev .vcex-post-next-prev__link::before {
	content: "Siguiente";
}

[lang="en-US"] .entrada-navegacion .vcex-post-next-prev__prev .vcex-post-next-prev__link::before {
	content: "Next";
}

.entrada-navegacion .vcex-post-next-prev__icon {
	font-size: var(--wpex-text-xl);
}

.entrada-navegacion .vcex-post-next-prev__next .vcex-post-next-prev__icon {
	grid-column: 1;
	grid-row: 1 / 3;
}

.entrada-navegacion .vcex-post-next-prev__prev .vcex-post-next-prev__icon {
	grid-column: 2;
	grid-row: 1 / 3;
}

@media (width >= 768px) {
	
	.entrada-fecha {
		justify-content: end;
	}
	
	.entrada-compartir {
		text-align: right;
	}
	
}

@media (width < 768px) {
	
	.single-post .etiquetas ul,
	.entrada-fecha {
		justify-content: center;
	}
	
	.wpb_wrapper:has(> .entrada-autor) {
		display: flex;
		justify-content: center;
	}
	
}

@media (width >= 500px) {	

	.entrada-navegacion .vcex-post-next-prev__item {
		flex: 1;
		max-width: 300px;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///SIDEBAR////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.caja-contacto {
	border-radius: var(--br-lg);
	border: 1px solid var(--wpex-border-main);
	padding: 30px;
}

.caja-contacto.sin-llamada .o-llamada {
	display: none;
}

.sidebar .caja-contacto .enviar input {
	background: var(--wpex-white);
	border: 2px solid var(--azul);
	color: var(--azul);
	padding-block: 0.7em;
}

.sidebar .caja-contacto .enviar input:hover {
	background: var(--azul);
	border: 2px solid var(--azul);
	color: var(--wpex-white);
}

@media (width < 992px) {
	
	.sidebar {
		margin-top: var(--general-gap);
	}
	
	.sidebar > .vc_column-inner {
		width: 100% !important;
		height: auto !important;
		position: relative !important;
		inset: 0 !important;
		transform: none !important;
	}
	
}

@media (width < 768px) {
	
	.sidebar {
		text-align: center;
	}
	
	.sidebar .vcex-heading {
		font-size: var(--wpex-text-2xl) !important;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - NOTIFICACIONES///////////////////////*/
/*//////////////////////////////////////////////////////*/

.page-description {
	display: none;
}

.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup-checkout {
	width: 100%;
}

.woocommerce-checkout .woocommerce-NoticeGroup-checkout {
    padding: 0;
}

.woocommerce-message, .woocommerce-error, .woocommerce-info, .vcex-no-posts-found, .woocommerce-notice,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul)) {
	background: var(--wpex-surface-2, var(--wpex-gray-100)) !important;
	border: none !important;
	border-radius: 10px !important;
	font-size: 1em !important;
	line-height: 1.7em !important;
	text-align: left !important;
    display: block;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
	padding: var(--notice-padding) !important;
	margin: 0 0 var(--reduced-gap) !important;
	width: 100%;
	position: relative;
}

.woocommerce-error {
    flex-wrap: wrap;
    gap: 5px;
}

div:not(.woocommerce-notices-wrapper) > .woocommerce-message:last-child,
div:not(.woocommerce-notices-wrapper,.woocommerce-NoticeGroup) > .woocommerce-error:last-child,
div:not(.woocommerce-notices-wrapper,.woocommerce-form-login-toggle,[class*="fields"],.wc-empty-cart-message) > .woocommerce-info:last-child,
div:not(.woocommerce-notices-wrapper) > .vcex-no-posts-found:last-child,
div:not(.woocommerce-notices-wrapper) > .woocommerce-notice:last-child {
	margin: 0 !important;
}

.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before, .woocommerce-notice::before {
    --size: 20px;
    border-radius: 100%;
    color: var(--wpex-white);
    font-family: var(--ff-icons);
    font-size: 0.8em;
    font-weight: var(--wpex-bold);
    line-height: var(--size);
    text-align: center;
    display: block !important;
    width: var(--size);
    height: var(--size);
    position: absolute;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%);
}

div.woocommerce-error a.button, div.woocommerce-info a.button, div.woocommerce-message a.button,
div.woocommerce-error a.button:hover, div.woocommerce-info a.button:hover, div.woocommerce-message a.button:hover {
    background: transparent !important;
    color: currentColor !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    text-decoration: underline !important;
    padding: 0 !important;
    margin: 0 !important;
}

.vcex-no-posts-found,
.woocommerce-no-products-found .woocommerce-info {
	margin: 0 !important;
}

.woocommerce-message,
.woocommerce-notice--success {
	background: var(--exito-c) !important;
	color: var(--exito-o) !important;
}

.woocommerce-message::before,
.woocommerce-notice--success::before {
	content: "\f00c";
	background: var(--exito) !important;
	/*color: var(--exito-c) !important;*/
}

.woocommerce-notice--success::before {
	content: "\f00c";
	font-family: var(--ff-icons);
    font-size: 11px;
	font-weight: var(--wpex-bold);
    position: absolute;
    top: 15px;
    left: 15px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    border-radius: 100%;
    color: var(--wpex-white);
}

.woocommerce-error {
	background: var(--error-c) !important;
	color: var(--error-o) !important;
}

.woocommerce-error::before {
	content: "\f00d";
	background: var(--error) !important;
}

.woocommerce-info, .vcex-no-posts-found,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul)) {
	background: var(--alerta-c) !important;
	color: var(--alerta-o) !important;
}

.woocommerce-info::before,
.vcex-no-posts-found::before,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul))::before {
	content: "\f129";
	background: var(--alerta) !important;
}

.vcex-no-posts-found::before,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul))::before {
	content: "\f129";
	font-family: var(--ff-icons);
    font-size: 11px;
	font-weight: var(--wpex-bold);
    display: block !important;
    position: absolute;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    border-radius: 100%;
    color: var(--wpex-white);
}

.wc-empty-cart-message {
	width: 100%;
}

.woocommerce-info.cart-empty {
    font-weight: 400;
}

.woocommerce-info.cart-empty::before {
	display: block !important;
}

.woocommerce-error li {
    width: 100%;
}

/* Enlaces */

.woocommerce-message a {
	color: var(--exito-o) !important;
}

.woocommerce-error a {
	color: var(--error-o) !important;
}

.woocommerce-info a {
	color: var(--alerta-o) !important;
}

.woocommerce-message a, .woocommerce-error a, .woocommerce-info a {
	text-decoration: underline;
}

/*//////////////////////////////////////////////////////*/
/*///MODAL//////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.modal-window:has(form:not(.init):has(.completed)) :is(.modal-window__wrapper,.modal-window__content) {
	display: block !important;
	opacity: 1 !important;
}

.modal-window__content {
	width: 86%;
	max-width: 600px;
	height: auto !important;
	max-height: initial;
	transform: translate(-50%,-50%);
	overflow: hidden;
}

.modal-window__content iframe {
	min-height: 700px;
}

.modal-window__content-wrapper {
	max-height: initial;
}

.modal-window__content-main:not(:has(.calendly-inline-widget)) {
	padding: 30px;
}

.modal-window__content-main > p:first-child,
.modal-window__content-main > p:empty {
	display: none;
}

.modal-window__content-main :is(h2,h3) {
	font-weight: 500;
	margin: 0;
}

.modal-window__content-main h2 {
	color: var(--azul);
}

.modal-window__content-main h3 {
	font-size: var(--wpex-text-lg);
}

.calendly-inline-widget {
	margin-top: -30px;
}

@media (height < 830px) {
	
	.modal-window__content {
		height: 90% !important;
	}
	
}

@media (width < 768px) {
	
	.calendly-inline-widget {
		padding-left: 10px;
	}
	
	.modal-window__content {
		max-height: 600px !important;
	}
	
	.modal-window__content:has(.sent) {
		height: auto !important;
		max-height: initial !important;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///CF7////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.wpcf7-form {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	gap: 20px;
}

.wpcf7-form ul {
	display: none;
}

.wpcf7-form .campo {
	position: relative;
}

.wpcf7-form .campo.x1,
.full .wpcf7-form .campo.x2,
.full .wpcf7-form .campo.x3 {
	grid-column: 1/-1;
}

.wpcf7-form .campo.x2:has(.x1) {
	display: grid;
	gap: 20px;
	align-content: start;
}

.wpcf7-form label {
	font-family: var(--ff-medium);
	font-size: var(--wpex-text-sm);
	text-align: left;
	display: block;
	margin-bottom: 5px;
	white-space: nowrap;
	overflow: hidden;
}

.wpcf7-form label span:not(.wpcf7-list-item-label) {
	color: var(--error);
	display: inline-block;
}

.wpcf7-form span {
	display: block;
}

.wpcf7-form input,
.wpcf7-form textarea,
.wpcf7-form select {
	background: transparent;
	border-radius: var(--wpex-input-border-radius);
	text-align: left;
	display: block;
	margin: 0 !important;
	width: 100%;
}

.wpcf7-form input::-webkit-calendar-picker-indicator {
	opacity: 0.4;
}

.wpcf7-form span:has(> select)::after {
	content: "\f107";
	font-family: var(--ff-icons);
	font-weight: var(--wpex-bold);
	opacity: 0.5;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
}

.wpcf7-form select {
	appearance: none;
	padding: 0.6em 1em;
}

.wpcf7-form select:hover {
	cursor: pointer;
}

.wpcf7-form select option {
	color: #000;
}

.sin-borde .wpcf7-form input,
.sin-borde .wpcf7-form textarea,
.sin-borde .wpcf7-form select {
	border: none;
}

.wpcf7-form :is(.wpcf7-radio,.wpcf7-checkbox) {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(130px,1fr));
	gap: 10px;
	margin-top: 10px;
}

.wpcf7-form .wpcf7-list-item {
	margin: 0;
}

.wpcf7-form .wpcf7-list-item input {
	display: none;
}

.wpcf7-form .wpcf7-list-item label {
	font-family: var(--ff-regular);
	display: grid;
	grid-template-columns: 20px auto;
	align-items: center;
	gap: 10px;
	margin: 0;
}

.wpcf7-form .wpcf7-list-item label::before {
	content: "\f00c";
	border: 1px solid var(--wpex-border-main);
	border-radius: var(--wpex-input-border-radius);
	color: #fff;
	font-family: var(--ff-icons);
	font-size: var(--wpex-text-xs);
	font-weight: var(--wpex-bold);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	transition: all ease 0.3s;
}

.wpcf7-form .wpcf7-list-item label:has(:checked)::before {
	background: var(--azul);
	border-color: var(--azul);
}

.wpcf7-form .wpcf7-list-item label:hover {
	cursor: pointer;
}

.wpcf7-form .enviar {
	margin-top: 10px;
	position: relative;
}

.wpcf7-form .enviar :is(input,button) {
	padding: var(--wpex-btn-padding);
	padding-right: calc(2em + 25px);
    background-color: var(--wpex-btn-bg, var(--wpex-accent));
    border-radius: var(--wpex-btn-border-radius);
    border-width: var(--wpex-btn-border-width);
    border-style: var(--wpex-btn-border-style);
    border-color: var(--wpex-btn-border-color, currentColor);
    color: var(--wpex-btn-color, var(--wpex-on-accent));
    font-size: var(--wpex-btn-font-size);
    font-family: var(--wpex-btn-font-family);
    font-style: var(--wpex-btn-font-style);
    text-transform: var(--wpex-btn-text-transform);
	text-align: center;
    letter-spacing: var(--wpex-btn-letter-spacing);
    line-height: var(--wpex-btn-line-height);
    font-weight: var(--wpex-btn-font-weight);
	width: auto;
    transition: 0.15s all ease;
}

.wpcf7-form .enviar.full :is(input,button) {
	width: 100%;
}

.wpcf7-form .enviar :is(input,button):hover {
    background-color: var(--wpex-hover-btn-bg, var(--wpex-accent-alt));
    border-color: var(--wpex-hover-btn-border-color, var(--wpex-btn-border-color, currentColor));
	color: var(--wpex-hover-btn-color, var(--wpex-on-accent-alt));
	cursor: pointer;
}

.wpcf7-form .enviar:after {
	content: "\f178";
	color: var(--wpex-white);
	font-family: var(--ff-icons);
	font-size: var(--wpex-text-sm);
	font-weight: var(--wpex-bold);
	position: absolute;
	left: calc(50% + 30px);
	top: 50%;
	transform: translate(-50%,-50%);
	pointer-events: none;
}

.sidebar .wpcf7-form .enviar:not(:hover):after {
	color: var(--azul);
}

.wpcf7 .wpcf7-spinner {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%) !important;
	margin: 0;
}

.wpcf7-form.resetting .wpcf7-spinner {
	display: inline-block !important;
	visibility: visible !important;
}
	
.wpcf7-form .enviar.derecha input {
	margin-left: auto !important;
}

@media (width >= 768px) {

	.wpcf7-form .campo.x2 {
		grid-column: span 3;
	}

	.wpcf7-form .campo.x3 {
		grid-column: span 2;
	}
	
	.wpcf7-form .enviar.centrar input {
		margin-top: 30px !important;
		margin-inline: auto !important;
	}
	
}

@media (width < 768px) {
	
	.wpcf7-form {
		grid-template-columns: 100%;
	}
	
}

/* Pasos */

.modal-window__content:has(.uacf7-step) [class*="close"] {
	display: none !important;
}

.wpcf7-form .uacf7-multisetp-form .titulo {
	margin-bottom: 25px;
}

.wpcf7-form .uacf7-step {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	gap: 20px;
	padding-bottom: 70px;
	position: relative;
}

.wpcf7-form.sent:has(.confirmacion) .uacf7-step {
	display: block;
	padding-bottom: 0;
}

.wpcf7-form > [class*="uacf7-form"] {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	gap: 20px;
}

.wpcf7-form .steps-form .steps-row {
	display: flex !important;
}

.wpcf7-form .steps-form .steps-row .steps-step {
	flex: 1;
	padding: 0;
}

.wpcf7-form .steps-form:before,
.wpcf7-form .steps-form:after,
.wpcf7-form .steps-form .steps-row:before,
.wpcf7-form .steps-form .steps-row:after {
	content: "";
	background: var(--gris-c);
	border-radius: 99em;
	display: block !important;
	height: 6px;
	width: calc(50% - 100px) !important;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: width ease 0.3s;
}

.wpcf7-form .steps-form:before,
.wpcf7-form .steps-form .steps-row:before {
	left: 60px;
}

.wpcf7-form .steps-form:after,
.wpcf7-form .steps-form .steps-row:after {
	left: calc(50% + 40px);
}

.wpcf7-form .steps-form:before,
.wpcf7-form .steps-form:after {
	background: var(--azul);
	z-index: 2;
}

.wpcf7-form .steps-form:after {
	width: 0 !important;
}

.wpcf7-form .steps-form:before,
.wpcf7-form .steps-form:has([title-id=".step-2"].uacf7-btn-active):after {
	width: calc(35% - 100px) !important;
}

.wpcf7-form .steps-form:has([title-id=".step-1"].completed):before,
.wpcf7-form .steps-form:has([title-id=".step-2"].completed):after {
	width: calc(50% - 100px) !important;
}

.wpcf7-form .uacf7-multisetp-form :is(.salir,.uacf7-prev,.uacf7-next) {
	padding: var(--wpex-btn-padding);
    background-color: var(--wpex-btn-bg, var(--wpex-accent));
    border-radius: var(--wpex-btn-border-radius);
    border-width: var(--wpex-btn-border-width);
    border-style: var(--wpex-btn-border-style);
    border-color: var(--wpex-btn-border-color, currentColor);
    color: var(--wpex-btn-color, var(--wpex-on-accent));
    font-size: var(--wpex-btn-font-size);
    font-family: var(--wpex-btn-font-family);
    font-style: var(--wpex-btn-font-style);
    text-transform: var(--wpex-btn-text-transform);
	text-align: center;
    letter-spacing: var(--wpex-btn-letter-spacing);
    line-height: var(--wpex-btn-line-height);
    font-weight: var(--wpex-btn-font-weight);
	text-decoration: none;
    transition: 0.15s all ease;
}

.wpcf7-form .uacf7-multisetp-form :is(.salir,.uacf7-prev,.uacf7-next,.enviar) {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
    width: calc(50% - 10px);
    margin: 0 !important;
	position: absolute;
	bottom: 0;
}

.wpcf7-form .uacf7-multisetp-form :is(.salir,.uacf7-prev) {
	background: var(--gris-c);
	color: var(--wpex-text-2);
	left: 0;
}

.wpcf7-form .uacf7-multisetp-form :is(.salir,.uacf7-prev):hover {
	background: #ddd;
	cursor: pointer;
}

.wpcf7-form .uacf7-multisetp-form :is(.uacf7-next,.enviar) {
	right: 0;
}

.wpcf7-form .uacf7-multisetp-form :is(.uacf7-next):hover {
    background-color: var(--wpex-hover-btn-bg, var(--wpex-accent-alt));
    border-color: var(--wpex-hover-btn-border-color, var(--wpex-btn-border-color, currentColor));
	color: var(--wpex-hover-btn-color, var(--wpex-on-accent-alt));
	cursor: pointer;
}

.wpcf7-form .uacf7-multisetp-form :is(.salir,.uacf7-prev)::before,
.wpcf7-form .uacf7-multisetp-form :is(.uacf7-next):after {
	content: "";
	font-family: var(--ff-icons);
	font-size: var(--wpex-text-sm);
	font-weight: var(--wpex-bold);
}

.wpcf7-form .uacf7-multisetp-form :is(.salir,.uacf7-prev)::before {
	content: "\f177";
}

.wpcf7-form .uacf7-multisetp-form :is(.uacf7-next)::after {
	content: "\f178";
}

.wpcf7-form .uacf7-multisetp-form :is(.enviar input) {
	padding-left: 0;
	padding-right: 30px;
}

[lang="en"] .wpcf7-form .uacf7-multisetp-form :is(.enviar input) {
	padding-right: 0;
}

.wpcf7-form .uacf7-multisetp-form :is(.enviar):after {
	left: calc(50% + 35px);
}
	
.wpcf7-form .uacf7-multisetp-form .wpcf7-spinner {
	top: auto !important;
	bottom: 13px !important;
    right: 10px !important;
    transform: none !important;
}

.wpcf7-form .uacf7-multisetp-form .wpcf7-spinner.is-active {
	display: block !important;
}

.wpcf7-form .steps-form {
	margin-bottom: 30px;
}

.wpcf7-form .steps-form .steps-row .steps-step:first-child {
	text-align: left;
}

.wpcf7-form .steps-form .steps-row .steps-step:last-child {
	text-align: right;
}

.wpcf7-form .steps-form .steps-row .steps-step .btn-circle {
	background: var(--gris-c) !important;
	box-shadow: none !important;
	color: var(--wpex-text-2) !important;
	font-family: var(--ff-medium);
	font-size: 14px;
	line-height: 40px;
	width: 40px;
	height: 40px;
}

.wpcf7-form .steps-form .steps-row .steps-step .btn-circle:is(.uacf7-btn-active,.completed) {
	background: var(--azul) !important;
	color: var(--wpex-white) !important;
	transform: none;
}

.wpcf7-form .confirmacion {
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 30px;
	grid-column: 1 / -1;
	padding-top: 20px;
}

.wpcf7-form.sent:has(.confirmacion) .titulo,
.wpcf7-form.sent:has(.confirmacion) .step-end *:not(.confirmacion,.confirmacion > *),
.wpcf7-form:not(.sent) .confirmacion,
.wpcf7-form.sent:has(.confirmacion) .wpcf7-response-output {
	display: none !important;
}

.wpcf7-form .confirmacion .icono {
	background: var(--celeste);
	border-radius: 100%;
	color: var(--azul);
	font-family: var(--ff-icons);
	font-size: 30px;
	font-weight: var(--wpex-bold);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	margin-inline: auto;
}

.wpcf7-form .confirmacion .icono::before {
	content: "\f072";
	transform: rotate(-45deg);
}

.wpcf7-form .confirmacion :is(h2,p) {
	max-width: 400px;
	margin-inline: auto !important;
}

.wpcf7-form .confirmacion .theme-button {
	margin: 20px 0 0 0 !important;
}

@media (width < 768px) {
	
	.wpcf7-form .uacf7-step,
	.wpcf7-form > [class*="uacf7-form"] {
		grid-template-columns: 100%;
	}
	
}

/* Mensajes */

.wpcf7 .wpcf7-not-valid-tip {
	color: var(--error);
	font-size: 14px;
	position: absolute;
	left: 0;
	bottom: -20px;
	white-space: nowrap;
    overflow: hidden;
    width: 100%;
}

.wpcf7 .wpcf7-not-valid-tip::before {
	content: "↳";
	margin-right: 5px;
	display: inline-block;
	position: relative;
	top: -5px;
}

.typography-white .wpcf7 .wpcf7-not-valid-tip {
	color: #fff;
}

form:not(.et-fb-form) input.wpcf7-not-valid,
form:not(.et-fb-form) textarea.wpcf7-not-valid,
form:not(.et-fb-form) select.wpcf7-not-valid {
	border-color: var(--error) !important;
}

.wpcf7 form.wpcf7-form div.wpcf7-response-output {
	background: var(--gris-c);
	border: none;
	border-radius: 10px;
	color: var(--wpex-text-2);
	line-height: 1.4em;
	grid-template-columns: 20px auto;
	gap: 15px;
	align-items: center;
	grid-column: 1/-1;
	margin: 30px 0 0;
	padding: 20px 25px;
	text-align: left;
}

.wpcf7 form.wpcf7-form.resetting div.wpcf7-response-output {
	display: none !important;
}

.wpcf7 form.wpcf7-form div.wpcf7-response-output:not(:empty) {
	display: grid;
}

.wpcf7 form.wpcf7-form div.wpcf7-response-output::before {
	content: "";
	background: var(--wpex-white);
	border-radius: 100%;
	color: var(--wpex-white);
	font-family: var(--ff-icons);
	font-size: 12px;
	font-weight: var(--wpex-bold);
	line-height: 20px;
	text-align: center;
	width: 20px;
	height: 20px;
}

.wpcf7 .wpcf7-form.invalid div.wpcf7-response-output,
.wpcf7 .wpcf7-form.unaccepted div.wpcf7-response-output,
.wpcf7 .wpcf7-form.spam div.wpcf7-response-output {
	background: var(--alerta-c);
	color: var(--alerta-o);
}

.vcex-no-posts-found {
	background: var(--alerta-c);
}

.wpcf7 .wpcf7-form.invalid div.wpcf7-response-output::before,
.wpcf7 .wpcf7-form.unaccepted div.wpcf7-response-output::before,
.wpcf7 .wpcf7-form.spam div.wpcf7-response-output::before {
	content: "\f12a";
	background: var(--alerta);
}

.wpcf7 .wpcf7-form.failed div.wpcf7-response-output {
	background: var(--error-c);
	color: var(--error-o);
}

.wpcf7 .wpcf7-form.failed div.wpcf7-response-output::before {
	content: "\f00d";
	background: var(--error);
}

.wpcf7 .wpcf7-form.sent div.wpcf7-response-output {
	background: var(--exito-c);
	color: var(--exito-o);
}

.wpcf7 .wpcf7-form.sent div.wpcf7-response-output::before {
	content: "\f00c";
	background: var(--exito);
}

/*//////////////////////////////////////////////////////*/
/*///FOOTER/////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

#footer-widgets {
	margin-bottom: 0;
}

.footer-box .footer-widget {
	padding-bottom: 20px;
}

#footer .wp-block-image svg {
	height: 60px;
}

#footer p:last-child {
	margin: 0;
}

#footer a:hover {
	color: var(--naranja-c);
}

#footer a[class*="button"] {
	background: var(--wpex-white);
	color: var(--negro-c);
	margin: 0;
}

#footer a[class*="button"]:hover {
	background: var(--gris-c);
}

#footer .footer-box:last-child {
	margin-bottom: 0;
}

#footer .footer-widget:last-child {
	padding-bottom: 0;
}

@media (width >= 1024px) {
	
	.footer-box > :last-child {
		padding-bottom: 0;
	}

	.footer-box.col-1 p {
		max-width: 340px;
	}
	
}

@media (width < 1024px) {
	
	.footer-box:last-child > :last-child {
		padding-bottom: 0;
	}
	
}

@media (768px <= width < 1024px) {
	
	#footer .footer-box {
		width: 50%;
	}
	
}

/*@media (width < 768px) {
	
	#footer .footer-box {
		text-align: center;
	}
	
	#footer .wp-block-buttons {
		justify-content: center;
	}
	
}*/

/* Copyright */

#footer-bottom .footer-bottom-flex {
	display: block;
}

#copyright {
	display: grid;
	align-items: center;
	column-gap: 20px;
	row-gap: 10px;
}

#copyright .redes {
	font-size: var(--wpex-text-base);
	display: flex;
	gap: 10px;
}

#copyright .redes a:hover {
	color: var(--naranja-c);
}

@media (width >= 768px) {
	
	#copyright {
		grid-template-columns: repeat(2,1fr);
	}
	
	#copyright .redes {
		justify-content: end;
	}
	
}

@media (width < 768px) {
	
	#copyright, #copyright .redes {
		justify-content: center;
	}
	
}

/* WhatsApp */

#footer .whatsapp {
	--size: 60px;
	--gap: 50px;
	--fs: 30px;
	background: #25D366;
	border-radius: 100%;
	color: #fff;
	font-size: var(--fs);
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--size);
	height: var(--size);
	position: fixed;
	right: var(--gap);
	z-index: 999;
	transition: all ease 0.3s;
	animation: pulse-wapp 2s infinite;
}

#footer .whatsapp:hover {
	background: #128C7E;
	color: #fff;
}

@media (width < 768px) {
	
	#footer .whatsapp {
		--size: 40px;
		--fs: 20px;
		right: 7% !important;
		bottom: 50px !important;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///ANIMACIONES////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

@keyframes scroll {
	
    0% {
        opacity: 1;
    }
      
    100% {
        opacity: 0;
        transform: translateY(25px);
    }
	
}

@keyframes pendulo {
	
    0% {
        transform: translateY(0);
    }
      
    50% {
        transform: translateY(10px);
    }
      
    100% {
        transform: translateY(0);
    }
	
}

@keyframes girar {
	
    0% {
        transform: rotate(0deg);
    }
      
    100% {
        transform: rotate(360deg);
    }
	
}

@keyframes pulse-wapp {
	
	0% {
		transform: scale(0.90);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(37, 211, 102, 0);
	}

	100% {
		transform: scale(0.90);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
	}
	
}