/*
	Theme Name: Close·marketing
	Theme URI: https://close.marketing
	Description: Tema realizado creado a medida en WordPress.
	Author: closemarketing
	Author URI: https://close.marketing

	Version: 1.0

	Template: generatepress

	License: GPL-2.0+
	License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/* fira-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/fira-sans-v17-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/fira-sans-v17-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* fira-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/fira-sans-v17-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/fira-sans-v17-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* fira-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/fira-sans-v17-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/fira-sans-v17-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

@font-face {
	font-family: 'Amsterdam Kindom';
	src: url('fonts/AmsterdamKindom-Italic.woff2') format('woff2'),
			url('fonts/AmsterdamKindom-Italic.ttf') format('truetype');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Amsterdam Kindom';
	src: url('fonts/AmsterdamKindom.woff2') format('woff2'),
			url('fonts/AmsterdamKindom.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

html {
	scroll-behavior: smooth;
}

/* Menú escritorio */
.fitq_menuDesktop {
	position: fixed !important;
   top: 0;
   left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 9999;
	/*overflow: hidden;*/
}

@media (max-width: 992px) {
	.fitq_menuDesktop.active {
		overflow-y: auto;
		max-height: none;
		height: 100%;
	}
}

/* Imagen de fondo con degradado */
.fitconq-menu-wrapper::before {
	content: '';
	position: absolute;
	background-color: rgba(0, 0, 0, 0.6);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}
/* Botón cerrar */
.fitq_menuDesktop_close {
	cursor: pointer;
}

/* Blog */

/* Ocultar meta */
footer.entry-meta {
	display: none;
}

/* Animación de secciones de la home */
div.cfit_section {
	transition: transform 0.5s ease;
}

/* Ocultar footer del sitio - Excepto cuando es una sección de fullpage */
body:not(.gbfp-active) div.site-footer {
	display: none;
}

/* Mostrar footer cuando es una sección de fullpage */
body.gbfp-active footer.gbfp-section.site-footer {
	display: flex !important;
}

/* Botón flotante whatsapp */
.joinchat {
	bottom: 90px !important;
}

/* @media screen and ( width <= 480px ) {
	.joinchat {
		bottom: 85px !important;
	}
} */

/* Ocultar menú móvil */
@media screen and (width <= 992px) {

	header.site-header div.inside-header nav.main-navigation button {
		display: block;
	}

	nav.main-navigation ul#menu-menu {
		display: block !important;
	}
}

/* Responsive escritorio MD-SM */
@media screen 
  and (min-width: 980px) 
  and (max-width: 1366px),
  screen 
  and (min-device-width: 1200px) 
  and (max-device-width: 1600px) 
  and (-webkit-min-device-pixel-ratio: 2)
  and (min-resolution: 192dpi) {

	/* Columnas del grid */
	div.fitq_grid {
		margin-left: 0 !important;
	}

	div.fitq_grid .gb-grid-column {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding-left: 0 !important;
	}

	.fitq_titulo {
		font-size: 38px !important;
	}
	
	/* Botones pequeños */
	.fitq_botonSM.gb-container-60bce6b3{
		margin-top: 15px !important;
	}
	
	/* Icono */
	.fitq_botonSM svg {
		width: 7.5em !important;
	}
	
	/* Grupo de botones M */
	.fitq_grupoBotonM svg {
		height: 8em !important;
	}
	
	/* Botón mediano */
	.fitq_botonM {
		border-radius: 60%;
		height: 200px;
		width: 200px;
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: center;
	}
	
	/* Div interior */
	.fitq_botonM > div {
		padding: 0 !important;
		margin-bottom: 15px;
	}
	
	/* Título */
	.fitq_botonM h3 {
		font-size: 24px;
	}
	
	/* Descripción */
	.fitq_botonM p {
		font-size: 18px;
	}
	
	/* Icono completo */
	.fitq_botonM a.gb-button span.gb-icon svg {
		width: 180px !important;
		height: 180px !important;
	}
	
	/* Icono en botón */
	.fitq_botonM span.gb-icon svg {
		width: 60px !important;
		height: 60px !important;
	}
	
	/* Botón XL */
	.fitq_botonXL {
		background-image: linear-gradient(360deg, rgba(0, 0, 0, 0), var(--black));
		height: 285px;
		width: 285px;
		border-radius: 60%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	/* Botón */
	.fitq_botonXL > .gb-button {
		padding: 0;
		background: transparent;
	}
	
	/* Icono botón XL */
	.fitq_botonXL span.gb-icon svg {
		width: 78px !important;
		height: 78px !important;
	}
	
	/* Texto botón XL */
	.fitq_botonXL span.gb-button-text {
		font-size: 32px !important;
	}
	
	/* Grupo de logos */
	.fitq_logos img {
		width: 180px;
		max-height: 120px;
	}
	
	/* Carrusel */
	.fitq_carrusel {
		font-size: 16px !important;
	}
}

/* Correcciones formas botones en móvil */
@media screen and ( width < 767px ) {
	/* Columnas del grid */
	div.fitq_grid {
		margin-left: 0 !important;
	}

	div.fitq_grid .gb-grid-column {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding-left: 0 !important;
	}

	/* Botones SM */
	.fitq_botonSM svg {
		width: 6em !important;
		height: 6em !important;
	}

	/* Grupo de botones M */
	.fitq_grupoBotonM svg {
		height: 5em !important;
		width: 6em !important;
	}
	
	/* Botón mediano */
	.fitq_botonM {
		border-radius: 60%;
		height: 148px;
		width: 148px;
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: center;
	}
	
	/* Div interior */
	.fitq_botonM > div {
		padding: 0 !important;
		margin-bottom: 15px;
	}
	
	/* Título */
	.fitq_botonM h3 {
		font-size: 18px;
	}
	
	/* Descripción */
	.fitq_botonM p {
		font-size: 16px;
	}
	
	/* Icono completo */
	.fitq_botonM a.gb-button span.gb-icon svg {
		width: 135px !important;
		height: 135px !important;
	}
	
	/* Icono en botón */
	.fitq_botonM span.gb-icon svg {
		width: 44px !important;
		height: 44px !important;
	}

	/* Botón XL */
	.fitq_botonXL {
		background-image: linear-gradient(360deg, rgba(0, 0, 0, 0), var(--black));
		height: 148px;
		width: 148px;
		border-radius: 60%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	/* Botón */
	.fitq_botonXL > .gb-button {
		padding: 0;
		background: transparent;
	}
	
	/* Icono botón XL */
	.fitq_botonXL span.gb-icon svg {
		width: 44px !important;
		height: 44px !important;
	}
	
	/* Texto botón XL */
	.fitq_botonXL span.gb-button-text {
		font-size: 18px !important;
	}

	/* Alinear columnas grid  */
	.gb-grid-wrapper.gb-grid-wrapper-c2991582 .gb-grid-column {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.gb-grid-wrapper.gb-grid-wrapper-029aaa57 .gb-grid-column {
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

/* Ajustar posición del botón del menú móvil */
@media (max-width: 992px) {
   

	.main-navigation .inside-navigation {
		justify-content: flex-end !important;
	}
}

/* Ajusta z-index del botón chat en móvil */
@media screen and ( width <= 576px) {
	div.joinchat {
		z-index: 9 !important;
	}
}

/* Fijar el menú en móvil*/
@media screen and (width <= 576px) {
    header.site-header {
		position: fixed;
		width: 100%;
		z-index: 1000;
	}

	header.site-header::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: linear-gradient(to bottom, rgb(0 0 0 / 50%), rgba(255, 255, 255, 0%));
		z-index: -1;
	}
}

/* Ajustes XL */
@media screen and ( width > 1600px ) {
	div.fitq_grid {
		margin-left: 0 !important;
	}

	div.fitq_grid .gb-grid-column {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding-left: 0 !important;
	}

	/* Grupo de botones M */
	.fitq_grupoBotonM svg {
		height: 8em !important;
	}
	
	/* Botón mediano */
	.fitq_botonM {
		border-radius: 60%;
		height: 200px;
		width: 200px;
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: center;
	}
	
	/* Div interior */
	.fitq_botonM > div {
		padding: 0 !important;
		margin-bottom: 15px;
	}
	
	/* Título */
	.fitq_botonM h3 {
		font-size: 24px;
	}
	
	/* Descripción */
	.fitq_botonM p {
		font-size: 18px;
	}
}


/* Elemento GP Menú Nuestras Cositas */
.fitconq-nuestras-cositas a{
	font-size: 20px;
}
@media( max-width: 767px ){
	.mobile-custom-menu-item{
		position: relative !important;
		right: 0 !important;
	}
	.fitq_menuDesktop.active{
		overflow-y: auto;
	}
}

@media (min-width: 768px) {
	.cfit_section {
		height: 100vh;
		/*position: relative;*/
		background-color: rgba(0, 0, 0, 0.6);
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
	}

	.vimeo-video-wrapper{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.fitconq-overlay-background::before {
		content: '';
		position: absolute;
		background-color: rgba(0, 0, 0, 0.6);
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.fitconq-div-content {
		position: relative;
		z-index: 2;
	}
}
@media( max-width: 767px ){
	.cfit_section {
		height: auto;
	}
	.cfit_section:first-child .vimeo-video-wrapper {
		height: 100dvh;
		width: 100%;
		object-fit: cover;

	}
	.cfit_section:not(:first-child) {
    	height: auto;
		min-height: 100vh;
		padding: 3rem 1rem;
	}
	.fitconq-overlay-background::before{
		content: '';
		position: absolute;
		background-color: rgba(0, 0, 0, 0.6);
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.fitconq-div-content {
		position: relative;
		z-index: 2;
	}
}

/* Vimeo video shortcode */
.vimeo-video-wrapper::-webkit-media-controls-enclosure {
   overflow: hidden;
}

.vimeo-video-wrapper::-webkit-media-controls-panel {
   width: 100% !important;
}

.vimeo-video-wrapper::-webkit-media-controls-menu-button {
   display: none !important;
   opacity: 0 !important;
   width: 0 !important;
   pointer-events: none !important;
}
video::-webkit-media-controls-timeline,
video::-webkit-media-controls-current-time-display,
video::-webkit-media-controls-time-remaining-display,
video::-webkit-media-controls-fullscreen-button,
video::-webkit-media-controls-download-button,
video::-webkit-media-controls-picture-in-picture-button {
	display: none !important;
}

/* Controles personalizados para video */
.fitq-video-controls {
    position: absolute;
    bottom: 20px;
    left: 20px;
    display: flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 4px;
    z-index: 1;
    opacity: 1;
    transition: opacity 0.3s ease;
}

/* Mostrar controles al hacer hover sobre el video */
.vimeo-video-wrapper:hover + .fitq-video-controls,
.fitq-video-controls:hover {
    opacity: 1;
}

/* Para asegurar que funcione la interacción con hover en móviles */
@media (hover: none) {
    .fitq-video-controls {
        opacity: 1; /* Siempre visible en dispositivos táctiles */
        bottom: 30px; /* Un poco más arriba en móviles */
    }
    
    /* Ocultar controles después de 3 segundos de inactividad */
    .vimeo-video-wrapper:not(:hover) + .fitq-video-controls:not(:hover) {
        opacity: 1;
        transition-delay: 3s;
    }
}

/* Estilizar botones de control */
.fitq-video-play-pause,
.fitq-video-mute {
	background: transparent;
	border: none;
	color: white;
	cursor: pointer;
	padding: 8px;
	margin-right: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
}

.fitq-video-play-pause:hover,
.fitq-video-mute:hover {
	background: transparent;
	color: white;
}

.fitq-video-play-pause span,
.fitq-video-mute span {
	width: 32px;
	height: 32px;
	font-size: 32px;
}

/* Control de volumen */
.fitq-video-volume-container {
	display: flex;
	align-items: center;
}

.fitq-video-volume-slider-container {
	width: 60px;
	margin-left: 5px;
	display: none;
	transition: display 0.3s ease;
}

.fitq-video-volume-container:hover .fitq-video-volume-slider-container {
	display: block;
}

.fitq-video-volume-slider {
	width: 100%;
	height: 6px;
	-webkit-appearance: none;
	background: rgba(255, 255, 255, 0.5);
	outline: none;
	border-radius: 3px;
}

.fitq-video-volume-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 12px;
	height: 12px;
	background: white;
	border-radius: 50%;
	cursor: pointer;
}

.fitq-video-volume-slider::-moz-range-thumb {
	width: 12px;
	height: 12px;
	background: white;
	border-radius: 50%;
	cursor: pointer;
	border: none;
}

/* Solución para mostrar controles al hacer hover */
.vimeo-video-wrapper:hover ~ .fitq-video-controls {
	opacity: 1;
}

/* Para asegurar que el contenedor del video sea relativo para el posicionamiento */
.vimeo-video-wrapper {
	position: relative;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

/* Corregir selector de hover para múltiples videos */
video.vimeo-video-wrapper:hover + .fitq-video-controls,
video.vimeo-video-wrapper:focus + .fitq-video-controls {
	opacity: 1;
}

/* Estilos específicos para video de la home en móvil */
@media (max-width: 767px) {
	.vimeo-video-wrapper[data-home-video="true"] {
		touch-action: none;
		-webkit-touch-callout: none;
		overscroll-behavior: contain;
	}
}