@charset "utf-8";

@import url("../webfonts/fredoka_one_one_regular/stylesheet.css");

/* Medios fluidos sencillos
   Nota: Los medios fluidos exigen la eliminación de los atributos de altura y anchura de los medios del código HTML
   http://www.alistapart.com/articles/fluid-images/ 
*/
img, object, embed, video {
	max-width: 100%;
    height: auto;
}
/* IE 6 no admite max-width (anchura máxima), por lo que usa de manera predeterminada una anchura del 100% */
.ie6 img {
	width:100%;
}
 body{
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	background-image: url(images/background/bg-general.jpg);
	background-position: center top;
	background-attachment: fixed;
}

/*
	Propiedades de cuadrícula fluida de Dreamweaver
	----------------------------------
	dw-num-cols-mobile:		5;
	dw-num-cols-tablet:		8;
	dw-num-cols-desktop:	10;
	dw-gutter-percentage:	25;
	
	Inspiración obtenida de "Responsive Web Design" de Ethan Marcotte 
	http://www.alistapart.com/articles/responsive-web-design
	
	y Golden Grid System de Joni Korpi
	http://goldengridsystem.com/
*/

/* Diseño móvil: 480 px e inferior. */

.gridContainer {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	background-image: url(images/background/wallpaper-mobil.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#wrapper {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	background-image: url(images/background/wallpaper-tablet.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}
header {
	clear: none;
	width: 100%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 100px;
}
#head1 {
	clear: none;
	float: left;
	width: 48%;
	display: block;
}
#head2 {
	clear: none;
	width: 46%;
	display: block;
	float: right;
}
nav {
	clear: both;
	width: 86%;
	display: block;
	margin-right: auto;
	margin-left: auto;
}
main {
	clear: both;
	width: 94%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
aside {
	clear: none;
	width: 100%;
	display: block;
	/* [disabled]height: 800px; */
	padding-top: 20px;
}
aside::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    background-image: url(images/background/fondo-circle.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; /* Asegura que la imagen esté centrada en la capa */
    
    z-index: -1;
    
    /* PROPIEDAD CLAVE: Define el eje de giro en el centro exacto */
    transform-origin: center center; 
    
    animation: rotarFondoEmaus 60s linear infinite;
}
article {
	clear: none;
	width: 94%;
	display: block;
	/* [disabled]height: 700px; */
	margin-right: auto;
	margin-left: auto;
}
#slider {
	clear: both;
	width: 94%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
#star-main {
	clear: both;
	margin-left: auto;
	width: 96%;
	display: block;
	margin-right: auto;
}
#star-1 {
	clear: none;
	display: block;
	margin-top: 13px;
	text-align: left;
	width: 94%;
	margin-right: auto;
	margin-left: auto;
}
#star-2 {
	clear: none;
	display: block;
	text-align: center;
	width: 86%;
	margin-right: auto;
	margin-left: auto;
}
#container {
	clear: both;
	width: 100%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	height: 500px;
	margin-top: 30px;
}
#herox {
	clear: both;
	margin-left: auto;
	width: 96%;
	display: block;
	margin-right: auto;
}
#herox1 {
	clear: none;
	display: block;
	margin-top: 13px;
	text-align: left;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
#herox2 {
	clear: none;
	display: block;
	text-align: center;
	width: 94%;
	margin-right: auto;
	margin-left: auto;
}
#hero {
	clear: both;
	width: 100%;
	display: block;
	/* [disabled]height: 800px; */
}
#information {
	clear: both;
	width: 100%;
	display: block;
}
#info-1 {
	clear: none;
	width: 92%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}
#info-2 {
	clear: both;
	margin-left: auto;
	width: 92%;
	display: block;
	text-align: center;
	margin-right: auto;
}
#contact-form {
	clear: both;
	width: 94%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: auto;

contact-form
}
#our-video {
	clear: both;
	width: 100%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: auto;
}
section {
	clear: both;
	margin-left: auto;
	width: 90%;
	display: block;
	margin-right: auto;
	text-align: center;
}
#vixual {
	clear: both;
	margin-left: auto;
	width: 90%;
	display: block;
	margin-right: auto;
	/* [disabled]height: 280px; */
	
}
#vix1 {
	clear: none;
	float: left;
	width: 45%;
	display: block;
	text-align: center;
	height: 520px;
}
#vix2 {
	clear: none;
	float: left;
	margin-left: 10%;
	width: 45%;
	display: block;
	text-align: center;
	height: 520px;
}
#vix3 {
	clear: none;
	float: left;
	width: 45%;
	display: block;
	text-align: center;
	height: 590px;
}
#vix4 {
	clear: none;
	float: left;
	margin-left: 10%;
	width: 45%;
	display: block;
	text-align: center;
	height: 590px;
}
#redes-sociales {
	clear: both;
	width: 100%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	line-height: 20px;
}
footer {
	clear: both;
	width: 100%;
	display: block;
	padding-top: 30px;
	height: 470px;
	background-image: url(images/background/footer-mobil.png);
}
#foot1 {
	clear: both;
	width: 82%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 80px;
	margin-top: 30px;
}
#foot2 {
	clear: both;
	width: 82%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 80px;
}
#foot3 {
	clear: both;
	width: 82%;
	display: block;
	height: 80px;
	margin-right: auto;
	margin-left: auto;
}
#foot4 {
	clear: both;
	width: 82%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 80px;
}
#foot-left {
	clear: none;
	float: left;
	width: 15%;
	display: block;
}
#foot-right {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#foot-left2 {
	clear: both;
	float: left;
	width: 15%;
	display: block;
}
#foot-right2 {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#foot-left3 {
	clear: both;
	float: left;
	width: 15%;
	display: block;
}
#foot-right3 {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#foot-left4 {
	clear: both;
	float: left;
	width: 15%;
	display: block;
}
#foot-right4 {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#chat-bot {
	clear: both;
	float: left;
	width: 100%;
	display: block;
}
#map{
	clear: both;
	/* [disabled]float: left; */
	width: 100%;
	display: block;
	text-align: center;
	height: 450px;
}
.mapax {
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #28ABE3;
	border-right-color: #089FDF;
	border-bottom-color: #089FDF;
	border-left-color: #089FDF;
	border-top-width: 6px;
	border-right-width: 6px;
	border-bottom-width: 6px;
	border-left-width: 6px;
	border-radius: 50px;
    width:90%;
	height:600px;
}
#social-media {
	clear: both;
	width: 90%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	height: 250px;
}
#brand {
	clear: both;
	width: 92%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}

.text-titulo {
	font-family: "fredoka one one regular";
	font-size: 28px;
	font-weight: bold;
	color: #FFFFFF;
	line-height: 38px;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
	/* [disabled]letter-spacing: 2px; */
}
.text-subtitulo {
	font-family: "fredoka one one regular";
	font-size: 18px;
	font-weight: bold;
	color: #FFF;
	line-height: 19px;
	text-align: center;
}
.text-herox {
	font-family: "fredoka one one regular";
	font-size: 20px;
	font-weight: bold;
	color: #009ADC;
	line-height: 45px;
	text-align: left;
}
.text-subherox {
	font-family: "fredoka one one regular";
	font-size: 16px;
	font-weight: bold;
	color: #666;
	line-height: 19px;
	text-align: left;
}
.text-key {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 15px;
	color: #333;
}
.text-contenido {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	line-height: 32px;
	font-weight: normal;
	color: #333;
	text-align: justify;
}

.text-form {
	font-family: "Roboto Regular";
	font-size: 22px;
	font-weight: bold;
	color: #009ADC;
	/* [disabled]letter-spacing: 2px; */
}
.text-section {
	font-family: "fredoka one one regular";
	font-size: 20px;
	font-weight: bold;
	color: #009ADC;
}
.text-contact {
	font-family: "fredoka one one regular";
	font-size: 28px;
	font-weight: bold;
	color: #009ADC;
}
.text-footer {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	color: #FFF;
	line-height: 26px;
}
.text-visual {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 15px;
	font-weight: bold;
	color: #333;
	text-align: center;
}
.titulo-menu {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	font-weight: bold;
	margin: 0px;
	color: #007FFF;
}

/* Diseño tableta: de 481 px a 1023 px. Hereda estilos de: Diseño móvil. */

@media (min-width: 481px) and (max-width: 1023px)  {
.gridContainer {
	width: 100%;
	background-image: url(images/background/wallpaper-tablet.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#wrapper {
	width: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}
header {
	clear: none;
	width: 95%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 130px;
	justify-content: space-between; 
}
#head1 {
	clear: none;
	float: left;
	width: 38%;
	display: block;
    }
#head2 {
	clear: none;
	float: right;
	width: 38%;
	display: block;
    }
nav {
	clear: both;
	width: 96%;
	display: block;
	margin-right: auto;
	margin-left: auto;
}
main {
	clear: both;
	width: 100%;
	display: block;
	margin-top: 60px;
	margin-bottom: 60px;
}
aside {
	clear: none;
	width: 90%;
	display: block;
	margin-top: -20px;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}
aside::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    background-image: url(images/background/fondo-circle.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; /* Asegura que la imagen esté centrada en la capa */
    
    z-index: -1;
    
    /* PROPIEDAD CLAVE: Define el eje de giro en el centro exacto */
    transform-origin: center center; 
    
    animation: rotarFondoEmaus 60s linear infinite;
}
article {
	clear: none;
	width: 95%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	padding-top: 50px;
	height: auto;
}
#slider {
	clear: both;
	width: 100%;
	display: block;
}
#star-main  {
	clear: both;
	width: 98%;
	display: block;
	margin-top: 70px;
	margin-bottom: 70px;
}
#star-1 {
	clear: none;
	display: block;
	margin-top: 13px;
	text-align: center;
	width: 98%;
	margin-right: auto;
	margin-left: auto;
}
#star-2 {
	clear: none;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}

#container {
	clear: both;
	width: 95%;
	display: block;
	text-align: center;
	height: 510px;
	margin-top: 30px;
}
#herox {
	clear: both;
	margin-left: auto;
	width: 98%;
	display: block;
	margin-right: auto;
	margin-top: 50px;
	margin-bottom: 50px;
}
#herox1 {
	clear: none;
	display: block;
	margin-top: 13px;
	text-align: center;
	width: 98%;
	margin-right: auto;
	margin-left: auto;
}
#herox2 {
	clear: none;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	width: 96%;
}
#hero {
	clear: both;
	width: 100%;
	display: block;
	margin-top: 10px;
	margin-bottom: 10px;
}
#information {
	clear: both;
	width: 100%;
	display: block;
    margin-top: 50px;
	margin-bottom: 50px;
}
#info-1 {
	clear: none;
	margin-left: auto;
	width: 90%;
	display: block;
	margin-right: auto;
	text-align: center;
}
#info-2 {
	clear: none;
	width: 90%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
#our-video {
	clear: both;
	width: 80%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: auto;
	margin-top: 20px;
	margin-bottom: 60px;
}
#contact-form {
	clear: both;
	width: 86%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: auto;
	margin-top: 20px;
	margin-bottom: 60px;
}
section {
	clear: both;
	width: 100%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-top: 30px;
	margin-bottom: 30px;
}
#vixual {
	clear: both;
	margin-left: auto;
	width: 95%;
	display: block;
	margin-right: auto;
}
#vix1 {
	clear: none;
	margin-left: 5%;
	width: 38%;
	display: block;
	text-align: center;
	height: 530px;
	float: left;
}
#vix2 {
	clear: none;
	margin-left: 18%;
	width: 38%;
	display: block;
	float: left;
	text-align: center;
	height: 530px;
}
#vix3 {
	clear: none;
	float: left;
	margin-left: 5%;
	width: 38%;
	display: block;
	text-align: center;
	height: 620px;
}
#vix4 {
	clear: none;
	float: left;
	margin-left: 18%;
	width: 38%;
	display: block;
	text-align: center;
	height: 620px;
}
#redes-sociales {
	clear: both;
	width: 100%;
	display: block;
	/* [disabled]text-align: center; */
	margin-right: auto;
	margin-left: auto;
	line-height: 60px;
}
footer {
	clear: both;
	width: 100%;
	display: block;
	margin-top: 30px;
	height: 420px;
	background-image: url(images/background/footer-tablet.png);
}
#foot1 {
	clear: none;
	margin-left: auto;
	width: 48%;
	display: block;
	margin-right: auto;
	height: 90px;
	margin-top: 20px;
}
#foot2 {
	clear: none;
	width: 48%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 90px;
}
#foot3 {
	clear: none;
	width: 48%;
	display: block;
	height: 90px;
}
#foot4 {
	clear: none;
	width: 48%;
	display: block;
	height: 90px;
}
#foot-left {
	clear: none;
	float: left;
	width: 14%;
	display: block;
}
#foot-right {
	clear: none;
	float: right;
	width: 76%;
	display: block;
}
#foot-left2 {
	clear: none;
	float: left;
	width: 14%;
	display: block;
}
#foot-right2 {
	clear: none;
	float: right;
	width: 76%;
	display: block;
}
#foot-left3 {
	clear: none;
	float: left;
	width: 14%;
	display: block;
}
#foot-right3 {
	clear: none;
	float: right;
	width: 76%;
	display: block;
}
#foot-left4 {
	clear: none;
	float: left;
	width: 14%;
	display: block;
}
#foot-right4 {
	clear: none;
	float: right;
	width: 76%;
	display: block;
}
#chat-bot {
	clear: both;
	float: left;
	margin-left: 0;
	width: 100%;
	display: block;
}
#map {
	clear: both;
	width: 90%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 500px;
}
#mapax {
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #28ABE3;
	border-right-color: #089FDF;
	border-bottom-color: #089FDF;
	border-left-color: #089FDF;
	border-top-width: 5px;
	border-right-width: 5px;
	border-bottom-width: 5px;
	border-left-width: 5px;
    width:90%;
	height:400px;
}
#social-media {
	clear: both;
	width: 90%;
	display: block;
	margin-right: auto;
	margin-left: auto;
}
#brand {
	clear: both;
	width: 90%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}

.text-titulo {
	font-family: "fredoka one one regular";
	font-size: 32px;
	font-weight: bold;
	color: #FFFFFF;
	line-height: 38px;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
	/* [disabled]letter-spacing: 2px; */
}
.text-subtitulo {
	font-family: "fredoka one one regular";
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
	line-height: 19px;
	text-align: center;
}
.text-herox {
	font-family: "fredoka one one regular";
	font-size: 26px;
	font-weight: bold;
	color: #009ADC;
	line-height: 45px;
	text-align: left;
}
.text-subherox {
	font-family: "fredoka one one regular";
	font-size: 17px;
	font-weight: bold;
	color: #666;
	line-height: 19px;
	text-align: left;
}
.text-key {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 15px;
	color: #333;
}
.text-contenido {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	line-height: 32px;
	font-weight: normal;
	color: #333;
	text-align: justify;
}

.text-form {
	font-family: "Roboto Regular";
	font-size: 22px;
	font-weight: bold;
	color: #009ADC;
	/* [disabled]letter-spacing: 2px; */
}
.text-section {
	font-family: "fredoka one one regular";
	font-size: 26px;
	font-weight: bold;
	color: #009ADC;
}
.text-contact {
	font-family: "fredoka one one regular";
	font-size: 28px;
	font-weight: bold;
	color: #009ADC;
}
.text-footer {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	color: #FFF;
	line-height: 26px;
}
.text-visual {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 15px;
	font-weight: bold;
	color: #333;
	text-align: center;
}
.titulo-menu {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	font-weight: bold;
	margin: 0px;
	color: #007FFF;
}

}

/* Diseño escritorio: de 769 px hasta un máximo de 1232 px.  Hereda estilos de: Diseño móvil y Diseño tableta. */

@media (min-width: 1024px) {
.gridContainer {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-image: url(images/background/wallpaper.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	z-index: 50;
	background-size: cover;
}
#wrapper {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-image: url(images/background/bg-general.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	z-index: 10;
}
header {
	clear: none;
	width: 100%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	height: 120px;
	max-width: 1300px;
}
#head1 {
	clear: none;
	float: left;
	margin-left: 2.0408%;
	width: 24%;
	display: block;
	height: 100px;
}
#head2 {
	clear: none;
	float: right;
	width: 30%;
	display: block;
    }
nav {
	clear: none;
	float: right;
	width: 60%;
	display: block;
	height: 100px;
	padding-top: 36px;
	padding-bottom: -63px;
}
main {
	clear: both;
	width: 100%;
	display: block;
	height: 860px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 100px;
	max-width: 1700px;
	text-align: center;
}
aside {
	clear: none;
	float: left;
	width: 42%;
	display: block;
	height: 720px;
	/* ELIMINADO: No pongas la animación aquí, solo en el ::before */
	position: relative; /* Indispensable para que el ::before se centre */
}

/* 2. Capa del fondo que va a girar */
aside::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    background-image: url(images/background/fondo-circle.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; /* Asegura que la imagen esté centrada en la capa */
    
    z-index: -1;
    
    /* PROPIEDAD CLAVE: Define el eje de giro en el centro exacto */
    transform-origin: center center; 
    
    animation: rotarFondoEmaus 60s linear infinite;
}
article {
	clear: none;
	float: left;
	width: 48%;
	display: block;
	height: 720px;
	margin-left: 3%;
}
#slider {
	clear: both;
	width: 100%;
	display: block;
	height: 800px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 40px;
	max-width: 1700px;
	text-align: center;
}
 
#star-main {
	clear: both;
	margin-left: auto;
	width: 100%;
	display: block;
	margin-right: auto;
	height: 800px;
	max-width: 1500px;
	margin-top: 100px;
}
#star-1 {
	clear: none;
	float: left;
	width: 52%;
	display: block;
	text-align: left;
	height: 690px;
}
#star-2{
	clear: none;
	width: 45%;
	display: block;
	margin-top: 11px;
	height: 690px;
	float: right;
	text-align: left;
}
#container {
	clear: none;
	float: left;
	margin-left: 2%;
	width: 24%;
	display: block;
	height: 400px;
	text-align: center;
	padding-top: 60px;
	background-color: #00C;
}
#herox {
	clear: both;
	margin-left: auto;
	width: 100%;
	display: block;
	margin-right: auto;
	height: 680px;
	max-width: 1700px;
	margin-top: 100px;
	margin-bottom: 50px;
}
#herox1 {
	clear: none;
	float: left;
	width: 54%;
	display: block;
	text-align: left;
	height: 610px;
}
#herox2 {
	clear: none;
	width: 46%;
	display: block;
	margin-top: 11px;
	height: 610px;
	float: right;
	text-align: left;
}
#contact-form {
	clear: both;
	width: 100%;
	display: block;
	height: 800px;
	background-repeat: no-repeat;
	background-position: center top;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	/* [disabled]background-color: #0F3; */
	background-image: url(images/background/bg-contact.png);
	
}
#our-video {
	clear: none;
	width: 50%;
	display: block;
	height: 590px;
	background-repeat: no-repeat;
	background-position: center top;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	max-width: 760px;
	padding-top: 70px;
}
#our-video2 {
	clear: none;
	width: 40%;
	display: block;
	height: 590px;
	background-repeat: no-repeat;
	background-position: center top;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	max-width: 1200px;
	padding-top: 120px;
	float: right;
}
#hero {
	clear: both;
	width: 90%;
	display: block;
	height: 510px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
#information {
	clear: both;
	width: 100%;
	display: block;
	height: 1050px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	max-width: 1700px;
}
#info-1 {
	clear: none;
	float: left;
	width: 48%;
	display: block;
	height: auto;
}
#info-2 {
	clear: none;
	float: right;
	width: 48%;
	display: block;
	height: auto;
}
section {
	clear: both;
	margin-left: auto;
	width: 78%;
	display: block;
	height: 70px;
	margin-right: auto;
	text-align: center;
	margin-top: 50px;
}
#vixual {
	clear: both;
	margin-left: auto;
	max-width: 1600px;
	width: 100%;
	margin-right: auto;
	height: 710px;
	line-height: 19px;
	background-repeat: no-repeat;
	text-align: center;
}
#vix1 {
	clear: none;
	float: left;
	width: 23%;
	display: block;
	height: 600px;
	text-align: center;
	margin-left: 2%;
}
#vix2 {
	clear: none;
	margin-left: 2%;
	width: 23%;
	display: block;
	height: 600px;
	float: left;
	text-align: center;
}
#vix3 {
	clear: none;
	margin-left: 2%;
	width: 23%;
	display: block;
	height: 600px;
	float: left;
	text-align: center;
}
#vix4 {
	clear: none;
	float: left;
	width: 23%;
	display: block;
	height: 600px;
	margin-left: 2%;
	text-align: center;
	}
#redes-sociales {
	clear: both;
	width: 100%;
	display: block;
	height: 190px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
footer {
	clear: both;
	width: 100%;
	display: block;
	height: 120px;
	/* [disabled]background-color: #007FFF; */
	padding-top: 22px;
	max-width: 2100px;
	margin-right: auto;
	margin-left: auto;
	background-image: url(images/background/bg-footer.png);
}
#foot1 {
	clear: none;
	float: left;
	margin-left: 6%;
	width: 20%;
	display: block;
	height: 60px;
	margin-top: 18px;
}
#foot2 {
	clear: none;
	float: left;
	margin-left: 2%;
	width: 20%;
	display: block;
	height: 60px;
	margin-top: 18px;
}
#foot3 {
	clear: none;
	float: left;
	margin-left: 2%;
	width: 20%;
	display: block;
	height: 60px;
	margin-top: 18px;
}
#foot4 {
	clear: none;
	float: left;
	margin-left: 2%;
	width: 21%;
	display: block;
	height: 60px;
	margin-top: 18px;
}
#chat-bot {
	clear: both;
	float: left;
	width: 20%;
	display: block;
	height: 40px;
	background-color: #06C;
}
#foot-left {
	clear: none;
	float: left;
	width: 16%;
	display: block;
}

#foot-right {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#foot-left2 {
	clear: none;
	float: left;
	width: 16%;
	display: block;
}

#foot-right2 {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#foot-left3 {
	clear: none;
	float: left;
	width: 16%;
	display: block;
}

#foot-right3 {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#foot-left4 {
	clear: none;
	float: left;
	width: 16%;
	display: block;
}

#foot-right4 {
	clear: none;
	float: right;
	width: 82%;
	display: block;
}
#map {
	clear: both;
	margin-left: auto;
	max-width: 1700px;
	width: 100%;
	display: block;
	margin-right: auto;
	height: 640px;
	text-align: center;
    }
#mapax {
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #28ABE3;
	border-right-color: #089FDF;
	border-bottom-color: #089FDF;
	border-left-color: #089FDF;
	border-top-width: 5px;
	border-right-width: 5px;
	border-bottom-width: 5px;
	border-left-width: 5px;
	width: 90%;
	height: 540px;
    }
#social-media {
	clear: both;
	width: 80%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	height: 120px;
    }

#brand {
	clear: both;
	width: 90%;
	display: block;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	height: 430px;
    }


.text-titulo {
	font-family: "fredoka one one regular";
	font-size: 40px;
	font-weight: bold;
	color: #FFFFFF;
	line-height: 38px;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
	/* [disabled]letter-spacing: 2px; */
}
.text-subtitulo {
	font-family: "fredoka one one regular";
	font-size: 22px;
	font-weight: bold;
	color: #FFF;
	line-height: 19px;
	text-align: center;
}
.text-herox {
	font-family: "fredoka one one regular";
	font-size: 23px;
	font-weight: bold;
	color: #009ADC;
	line-height: 45px;
	text-align: left;
}
.text-herox-2 {
	font-family: "fredoka one one regular";
	font-size: 42px;
	font-weight: bold;
	color: #009ADC;
	line-height: 48px;
	text-align: left;
}
.text-herox-3 {
	font-family: "fredoka one one regular";
	font-size: 40px;
	font-weight: bold;
	color: #009ADC;
	line-height: 45px;
	text-align: left;
} 
.text-subherox {
	font-family: "fredoka one one regular";
	font-size: 17px;
	font-weight: normal;
	color: #666;
	line-height: 19px;
	text-align: left;
}
.text-key {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 15px;
	color: #333;
}
.text-contenido {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	line-height: 33px;
	font-weight: normal;
	color: #333;
	text-align: justify;
}

.text-form {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 22px;
	font-weight: bold;
	color: #009ADC;
	/* [disabled]letter-spacing: 2px; */
}
.text-section {
	font-family: "fredoka one one regular";
	font-size: 28px;
	font-weight: bold;
	color: #009ADC;
}
.text-contact {
	font-family: "fredoka one one regular";
	font-size: 28px;
	font-weight: bold;
	color: #FFFFFF;
}
.text-footer {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	color: #FFF;
	line-height: 26px;
}
.text-visual {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 15px;
	font-weight: bold;
	color: #333;
	text-align: center;
}
.titulo-menu {
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 16px;
	font-weight: bold;
	margin: 0px;
	color: #009ADC;
}
}


.img-zoom {
  transition: transform 0.6s; /* Agrega transición para un efecto suave */
}

/* Efecto de zoom al pasar el mouse sobre la imagen */
.img-zoom:hover {
  transform: scale(1.06); /* Ajusta el valor según sea necesario para el nivel de zoom deseado */
}

.img-float {
  transition: transform 0.5s ease-in-out; /* Agrega transición para un efecto suave */
}

/* Efecto flotante hacia arriba al pasar el mouse sobre la imagen */
.img-float:hover {
  transform: translateY(-10px); /* Ajusta el valor según sea necesario para el nivel de flotación deseado */
}

.img-shake {
  transition: transform 0.5s ease-in-out; /* Agrega transición para un efecto suave */
}

/* Efecto de shake al pasar el mouse sobre la imagen */
.img-shake:hover {
  animation: shake 0.5s ease-in-out; /* Utiliza la animación 'shake' durante 0.5 segundos */
}

/* Definición de la animación 'shake' */
@keyframes shake {
  0%, 100% {
    transform: translateX(0); /* No hay desplazamiento al principio y al final de la animación */
  }
  25%, 75% {
    transform: translateX(-5px); /* Desplazamiento a la izquierda en el 25% y 75% de la animación */
  }
  50% {
    transform: translateX(5px); /* Desplazamiento a la derecha en el 50% de la animación */
  }
}

.contenido {
	font-size: 16px;
	color: #FFF;
	font-family: Tahoma, Geneva, sans-serif;
	background-color: #4AD506;
	height: 52px;
	width: 98%;
	font-weight: 700;
	border: none;
	-webkit-border-radius: 50px;
}
.size {
	width: 98%;
	height: 52px;
	border-color: #CCC;
	border-style: solid;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}
.size2 {
	height: 220px;
	width: 98%;
	border-color: #CCC;
	border-style: solid;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
}
.titulos {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #FFF
}
.consulta_box {
    height: 290px
}
.contactanos {
    color: #FFF;
    font-weight: 700
}
borderx {
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #28ABE3;
	border-right-color: #089FDF;
	border-bottom-color: #089FDF;
	border-left-color: #089FDF;
	border-top-width: 6px;
	border-right-width: 6px;
	border-bottom-width: 6px;
	border-left-width: 6px;
	width: 80%;
}
.text-white {
    font-size: 0;
    color: #FFF;
    line-height: 0
}
.botom-formulario {
  background-color: #67C738;
  color: #ffffff;

  width: 300px;
  height: 46px;

  border: none;              /* ❌ elimina el borde gris */
  outline: none;             /* ❌ elimina el contorno al hacer focus */
  border-radius: 25px;       /* ✅ bordes redondeados */

  font-family: Tahoma, Geneva, sans-serif;
  font-size: 19px;
  font-weight: bold;

  cursor: pointer;

  appearance: none;          /* elimina estilos por defecto */
  -webkit-appearance: none; /* Safari / Chrome */
  -moz-appearance: none;    /* Firefox */

  display: block;
  margin: 0 auto;
}
.messenger-button {
	position: fixed;
	bottom: 28px; /* Ajusta segÃºn necesites */
	left: 10px; /* Ajusta segÃºn necesites */
	z-index: 1000; /* Asegura que estÃ© por encima de otros elementos */
}

.crush{
	-webkit-transform:scale(1,1);
	 -webkit-animation-name:punch;
	 -webkit-animation-duration:1s;
	 -webkit-animation-iteration-count:infinite;
	 -webkit-animation-direction:alternate;
	 -webkit-animation-timing-function:ease-in-out;
	 -webkit-animation-delay:1s;*/
	}
@-webkit-keyframes punch{
	from{ -webkit-transform:scale(1,1)}
	to{-webkit-transform:scale(1.04,1.04)}
	}	
	
.float {
  transform: translateY(0);
  animation: float 3s ease-in-out infinite;
}

@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0px);
  }
}	

.balloon {
  animation: balloon 6s ease-in-out infinite;
}

@keyframes balloon {
  0%   { transform: translate(0, 0); }
  25%  { transform: translate(5px, -35px); }
  50%  { transform: translate(0, -15px); }
  75%  { transform: translate(-5px, -35px); }
  100% { transform: translate(0, 0); }
}

.blur-in {
  animation: blurIn 3s ease forwards;
  opacity: 0;
}

.shine {
  position: relative;
  overflow: hidden;
}
.shine::after {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,0.5), transparent);
  transform: skewX(-20deg);
  animation: shineMove 3s infinite;
}

@keyframes shineMove {
  100% {
    left: 125%;
  }
}

@keyframes blurIn {
  from {
    opacity: 0;
    filter: blur(10px);
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}
/* 1. Definimos la animación del fondo */
@keyframes animatedBackground {
    from { background-position: 0 0; }
    to { background-position: 100% 0; }
}

/* 2. Aplicamos el efecto a tu clase gridContainer */
.gridContainer {
    /* Mantenemos tu código exacto para la animación */
    animation: animatedBackground 40s linear infinite;
    -ms-animation: animatedBackground 40s linear infinite;
    -moz-animation: animatedBackground 40s linear infinite;
    -webkit-animation: animatedBackground 40s linear infinite;

    /* REQUISITOS PARA QUE SE VEA: */
    background-repeat: repeat-x; /* Importante para que el fondo no se corte */
    background-size: cover;      /* O 'contain' dependiendo de tu imagen */
}
.tilt-smooth {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.tilt-smooth:hover {
  transform: perspective(1000px) rotateY(10deg) rotateX(4deg) scale(1.03);
  box-shadow: 0 20px 40px rgba(0,0,0,0.0);
}
/* 3. Definición de la animación de giro */
@keyframes rotarFondoEmaus {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
.capas {
	position: relative;
	max-width: 650px;
	margin: 0 auto;
  height:510px;
}
.capas img {
	position: absolute;
	max-width: 100%;
	transition: all ease 1250ms;
	transform-style: preserve-3d;
}
.capas:hover .capa0 {
	transform: perspective(2000px) rotateX(0deg) rotateY(30deg) rotateZ(0deg) translateX(-30px) translateY(0px) translateZ(0px);
}
.capas:hover .capa1 {
	transform: perspective(2000px) rotateX(0deg) rotateY(30deg) rotateZ(0deg) translateX(-30px) translateY(0px) translateZ(40px);
	opacity: .6;
}
.capas:hover .capa2 {
	transform: perspective(2000px) rotateX(0deg) rotateY(30deg) rotateZ(0deg) translateX(-30px) translateY(0px) translateZ(80px);
}
.capas:hover .capa3 {
	transform: perspective(2000px) rotateX(0deg) rotateY(30deg) rotateZ(0deg) translateX(-30px) translateY(0px) translateZ(120px);
}
.capas:hover .capa4 {
	transform: perspective(2000px) rotateX(0deg) rotateY(30deg) rotateZ(0deg) translateX(-30px) translateY(0px) translateZ(160px);
}
.capas:hover .capa5 {
	transform: perspective(2000px) rotateX(0deg) rotateY(30deg) rotateZ(0deg) translateX(-30px) translateY(0px) translateZ(200px);
}
.tutorial{
  text-align: center;
}
@keyframes marquee { 0% { text-indent: 100% }
              100%{text-indent: -50%}}
