element.style {
}
.elementor-340 .elementor-element.elementor-element-ec0af50 .elementor-wrapper {
	--video-aspect-ratio: 0.5625;
}
.elementor-widget-video .elementor-wrapper {
	aspect-ratio: var(--video-aspect-ratio);
}
.elementor *, .elementor :after, .elementor :before {
	box-sizing: border-box;
}
*, *::before, *::after {
	box-sizing: inherit;
	-webkit-font-smoothing: antialiased;
	word-break: break-word;
	word-wrap: break-word;
}
user agent stylesheet
div {
	display: block;
}
.elementor-element {
	--widgets-spacing: 20px;
}
.elementor-element, .elementor-lightbox {
	--swiper-theme-color: #000;
	--swiper-navigation-size: 44px;
	--swiper-pagination-bullet-size: 6px;
	--swiper-pagination-bullet-horizontal-gap: 6px;
}
.elementor-element {
	--flex-direction: initial;
	--flex-wrap: initial;
	--justify-content: initial;
	--align-items: initial;
	--align-content: initial;
	--gap: initial;
	--flex-basis: initial;
	--flex-grow: initial;
	--flex-shrink: initial;
	--order: initial;
	--align-self: initial;
	flex-basis: var(--flex-basis);
	flex-grow: var(--flex-grow);
	flex-shrink: var(--flex-shrink);
	order: var(--order);
	align-self: var(--align-self);
}
.elementor-340 .elementor-element.elementor-element-4a06d30 > .elementor-element-populated {
	margin: 0px 0px 0px 0px;
	--e-column-margin-right: 0px;
	--e-column-margin-left: 0px;
	padding: 0px 0px 0px 0px;
}
.elementor-kit-13 {
	--e-global-color-primary: #FFFFFF;
	--e-global-color-secondary: #000000;
	--e-global-color-text: #FFFFFF;
	--e-global-color-accent: #FC3B29;
	--e-global-color-5f31dc2: #FFFFFF00;
	--e-global-color-96068f9: #00000080;
	--e-global-color-538425b: #545454;
	--e-global-color-2ea9a25: #000000CF;
	--e-global-color-428b918: #808080;
	--e-global-color-15adf05: #0F325D;
	--e-global-typography-primary-font-family: "Montserrat";
	--e-global-typography-primary-font-size: 45px;
	--e-global-typography-primary-font-weight: 200;
	--e-global-typography-primary-text-transform: capitalize;
	--e-global-typography-secondary-font-family: "Montserrat";
	--e-global-typography-secondary-font-size: 35px;
	--e-global-typography-secondary-font-weight: 300;
	--e-global-typography-secondary-text-transform: capitalize;
	--e-global-typography-secondary-line-height: 1.2em;
	--e-global-typography-text-font-family: "Montserrat";
	--e-global-typography-text-font-size: 16px;
	--e-global-typography-text-font-weight: 200;
	--e-global-typography-text-line-height: 1.6em;
	--e-global-typography-accent-font-family: "Montserrat";
	--e-global-typography-accent-font-size: 16px;
	--e-global-typography-accent-font-weight: 300;
	--e-global-typography-accent-text-transform: capitalize;
	--e-global-typography-accent-text-decoration: underline;
	--e-global-typography-9babd6a-font-family: "Montserrat";
	--e-global-typography-9babd6a-font-size: 35px;
	--e-global-typography-9babd6a-font-weight: 300;
	--e-global-typography-9babd6a-text-transform: uppercase;
	--e-global-typography-1cddddb-font-family: "Montserrat";
	--e-global-typography-1cddddb-font-size: 22px;
	--e-global-typography-1cddddb-font-weight: 300;
	--e-global-typography-1cddddb-text-transform: uppercase;
	--e-global-typography-8d326f3-font-family: "Montserrat";
	--e-global-typography-8d326f3-font-size: 60px;
	--e-global-typography-8d326f3-font-weight: 100;
	--e-global-typography-8d326f3-text-transform: capitalize;
	--e-global-typography-8d326f3-font-style: normal;
	--e-global-typography-8d326f3-text-decoration: none;
	--e-global-typography-8d326f3-letter-spacing: 10px;
	--e-global-typography-af368bb-font-family: "Montserrat";
	--e-global-typography-af368bb-font-size: 30px;
	--e-global-typography-af368bb-font-weight: 300;
	--e-global-typography-af368bb-text-transform: capitalize;
	--e-global-typography-af368bb-line-height: 0.8em;
	--e-global-typography-3be91e2-font-family: "Montserrat";
	--e-global-typography-3be91e2-font-size: 15px;
	Show All Properties (20 more);
}

@media (min-width: 721px){
	#desktop {
		display: block;
	}

	#texto {
		font-size: 2em;
		color: red;
		position: absolute;
		top: 75%;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 1080px;
		text-align: center;
	}

	.maquina {
		display: block;
		white-space: nowrap; /* los espacios en blanco no rompen la línea */        
		width: 65ch; /* el ancho será el número de caracteres que tiene nuestra línea */
		animation: escribiendo 2s steps(20);          
		overflow: hidden;
	  }
	
	  .cursor{
		animation: 0.6s parpadeo-cursor infinite;
	  }
	
	  @keyframes escribiendo {
		from {
		  width: 0;
		}
	  }
	
	  @keyframes parpadeo-cursor {
		50% {
		  opacity: 0;
		}
	  }

	#mobile {
		display: none;
	}

	/* Para tener un ancho máximo debemos de establecer el width del DIV.delimitador */
	.delimitador{
		width:100%;
		margin:auto;
	}
		/* El contenedor con el padding-top crea el tamaño del vídeo */
	.contenedor{
		height:0px;
		width:100%;
		padding-top:56.25%; /* Relación: 16/9 = 56.25% */
		position:relative;
	}

		/* El iframe se adapta al tamaño del contenedor */
	video {
			position: absolute;
			height: 100%;
			width: 100%;
			top: 0;
			left: 0;
			object-fit: cover;
			object-position: center;
	}

	/* El iframe se adapta al tamaño del contenedor 
	iframe{
		position:absolute;
		height:100%;
		width:100%;
		top:0px;
		left:0px;
		object-fit: cover;
	}
	*/

}

@media (max-width: 720px){
	#desktop {
		display: none;
	}

	#mobile {
		display: block;
	}

	/* Para tener un ancho máximo debemos de establecer el width del DIV.delimitador */
	.delimitador{
		width: 100%;
		height: 1080px;
		margin:auto;
	}
		/* El contenedor con el padding-top crea el tamaño del vídeo */
	.contenedor{
		width: 100%;
		height: 100%;
		padding-top:56.25%; /* Relación: 16/9 = 56.25% */
		position:relative;
	}

		/* El iframe se adapta al tamaño del contenedor */
	video {
			position: absolute;
			height: 100%;
			width: 100%;
			top: 0;
			left: 0;
			object-fit: cover;
			object-position: center;
	}
	/* El iframe se adapta al tamaño del contenedor 
	iframe{
		position:absolute;
		height:100%;
		width:100%;
		top:0px;
		left:0px;
		object-fit: cover;
	}
	*/
}

@media (min-width: 768px){
    #mapa{
        background: #ffffff;
        display: block;
        text-align: center;
        opacity: 90%;
    }
}

@media (max-width: 767px){
    #mapa{
       display: none;
    }
}

