/**
 * Theme Name: geek1
 * Theme URI: geek1
 * Description:geek1
 * Version: 1.0.0
 * Author: Julianf
 * Author URI: geek1
 * License: GNU General Public License v2.0
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Template: genesis
**/
@font-face { 
font-family: Montserrat; 
src: url(/wp-content/themes/startergeek/fonts/montserrat/Montserrat-Regular.woff2); 
font-style:normal;
	font-weight:400
}

@font-face { 
font-family: Montserrat; 
src: url(/wp-content/themes/startergeek/fonts/montserrat/Montserrat-ExtraBold.woff2); 
font-style:normal;
	font-weight:800
}


@font-face { 
font-family: Montserrat; 
src: url(/wp-content/themes/startergeek/fonts/montserrat/Montserrat-Black.woff2); 
font-style:normal;
	font-weight:900
}




@font-face { 
font-family: Oswald; 
src: url(/wp-content/themes/startergeek/fonts/Oswald-Bold.woff2); 
font-style:normal;
	font-weight:900
}






html {-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;}
body {background-color: #fff;color: #10191C;font-family: "Montserrat";font-size: 18px;font-weight: 400;line-height: 1.5;margin: 0;overflow-x: hidden;max-width:100%}
button,input:focus,input[type="button"],input[type="reset"],input[type="submit"],.button,.gallery img {transition: all 0.2s ease-in-out;border: 0;padding: 0.7em;font-size: 1rem;font-family: inherit; }
input[type="submit"],.button{cursor: pointer;}

button, input, select, textarea { font-size: 1rem;font-family: inherit;     line-height: 1.5;width:100%;padding: 8px;border:none;box-sizing:border-box; background: #292929; color:#fff}
textarea{max-height:157px}
a {color: #777;text-decoration: underline;	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;}
a:focus,a:hover {color: #333;text-decoration: none;}
p {	margin: 0 0 20px;	padding: 0;}
ol,ul {	margin: 0;	padding: 0;}
article ol, article ul{padding-left:20px;margin-bottom:10px}

li {list-style-type: none;}
article li {padding-left: 10px; list-style:initial;margin-bottom:5px}
hr {border: none;	border-collapse: collapse;	border-top: 1px solid #eee;	clear: both;	margin: 30px 0;}
b,strong {font-weight: 800;}
blockquote,cite,em,i {font-style: italic;}
mark {background: #ddd;	color: #333;}
blockquote {margin: 30px;}
h1 {font-family: "Oswald";	font-weight: 900;	line-height: 1.2;	margin: 0 0 20px;}
h2,h3{font-family: "Oswald";	font-weight: 800;	line-height: 1.2;	margin: 0 0 20px;}
h4,h5,h6{	font-weight: 800;	line-height: 1.2;	margin: 0 0 20px;}
h1 {font-size: 30px;}
h2 {font-size: 27px;}
h3 {font-size: 24px;}
h4 {font-size: 20px;}
.entry-content h3,.entry-content h4 {font-weight: 800;}
.entry-content h4 {	margin-top: 40px;}
h5 {font-size: 18px;}
h6 {font-size: 16px;}
embed,iframe,img,object,video,.wp-caption {	max-width: 100%;}
img {height: auto;	vertical-align: top;}
figure {margin: 0;}
*, ::before, ::after{-webkit-box-sizing: inherit;-moz-box-sizing: inherit;box-sizing: inherit;}
/*-------- constantes*/
.site-inner{width:100%;margin:0 auto;}



/*------------------------------------------------------------------------------------------------------------------------*/
body.logged-in.admin-bar .totalhead {
  margin-top: calc(0px + 46px);
}



#totalhead.sticky .totalhead{background:#292929;  transition: all .5s ease-out; }

/*-------- general*/
a {color:#707070;text-decoration:none;font-weight:bold}

.site-container{max-width:100%;box-sizing:border-box}

/*logo*/
.title-area {margin:5px auto;background:transparent; position:relative;left:0;top:0;z-index:3}
.title-area img{display:block;}
.site-description{display:none}

/*menu*/

.mobmenu img{margin: 0 auto;	display: block;}
.mobmenu {  cursor: pointer; color:#fff;font-weight:bold;font-size:2em;padding: 10px;}
.active, .mobmenu:hover { filter:  brightness(0)    ;;color:#fff}

#social-container{background:#E4141F; color:#292929;font-size:14px;}


#topinfo{display:flex;justify-content:space-around;align-items:center;color:#fff;font-size:18px;margin-left:14px}
#topinfo #direcciontop{display:flex} 
#topinfo a{font-weight:normal;color:#fff;font-size: 30px;display: flex;  align-items: center;}
#topinfo img{margin: 0 5px}
#topinfo #direcciontop{display:flex}
#topinfo > div{display:none}
#topinfo > div:first-child{display:flex}
#topinfo #direcciontop > div{margin-right:10px}

.entry-header{background-color:#E4141F;padding:10px;position:relative}
.entry-header:after {
  content: '';
  position: absolute;
  bottom: -36px; /* Ajusta para colocar el triángulo justo debajo */
  left: 50%; /* Centra horizontalmente */
  transform: translateX(-50%); /* Ajusta el centro */
  border-width: 36px 20.5px 0; /* Altura del triángulo y la mitad del ancho */
  border-style: solid;
  border-color: #E4141F transparent transparent; /* Color del triángulo */
  width: 0; /* No necesitas ancho para el triángulo */
  height: 0; /* No necesitas altura para el triángulo */
}

.entry-header h1{margin:0}
.header-widget-area{display: flex;  justify-content: space-around;  width: 100%;  background-color: #E4141F;  align-items: center;}

.home .entry-header{background-color:#fff}
.home .entry-header:after {content:none}


.redes a:hover{filter: invert(88%) sepia(19%) saturate(7%) hue-rotate(116deg) brightness(99%) contrast(85%);}
.formulariofull a:hover{filter: invert(88%) sepia(19%) saturate(7%) hue-rotate(116deg) brightness(99%) contrast(85%);}
.telefono a:hover{filter: invert(88%) sepia(19%) saturate(7%) hue-rotate(116deg) brightness(99%) contrast(85%);}


/*menu*/
.totalhead {  padding: 0;  background: none;  overflow-x: visible;  overflow-y: visible;  width: 100%;  position: fixed !important;  top: 0px;  bottom: auto;
  left: 0px;  right: auto;  z-index: 9999;     height: 186px;    background: none;}
.site-header > .wrap{width:100%;margin:0 auto; display: flex;justify-content:space-between;
	align-items: center;  flex-direction:column-reverse}


.nav-primary {    max-height: 0;    overflow: hidden;    transition: max-height .2s ease-out;position:absolute;width: 100%;
left: 0;top: 200px; ;background: rgba(255,255,255,0.8);}

.nav-primary wrap{position:relative; }
.nav-primary ul{text-align:center;list-style:none;padding-left: 0; background:#2D2D2D;}
 .nav-primary li a{color: #404040;padding: 5px 18px;text-decoration: none;font-size: 18px; text-transform:uppercase }
.nav-primary li a{display:block;color:#fff}
 
.nav-primary li:hover { background:#10191C; overflow:hidden}
.nav-primary li:hover > a{color:#fff;}
.nav-primary li ul {display:none;position:absolute;	min-width:140px;top:67px;background:#ed1f41}
.nav-primary li ul li, .nav-primary li ul li a{color:#fff}


.formacontacto{width:100%; max-width:420px}
.formacontacto input, .formacontacto textarea{max-width:420px;width:100%}
.formacontacto textarea{height:150px}
#wpcf7-f69-o1{padding:13px;box-sizing:border-box}
.medioinput{display:flex;justify-content: space-between;}
.medioinput > div{width:48.5%}


#topinfo a:hover {filter: brightness(0) }
#footerinfo a:hover img{filter:   brightness(0) invert(1) ;}
/*slideshow*/
/*.featured-slides{margin:0 auto;background:#202120;position: absolute;z-index: 1;right:0; left:0;}*/


.featured-slides{position:relative}
.featured-slides .custom-html {max-width:750px;padding:10px;box-sizing:border-box; margin:0 auto;
  color: #fff;
  position: absolute;
  z-index: 2;
bottom: 2%;text-align: center;
  left: 0;
  right: 0;
}

.featured-slides .custom-html a{background-color:#E4141F;font-weight:400;color:#fff;width:386px;height:50px;display:flex;align-items:center;justify-content:center;margin: 0 auto;}
.featured-slides .custom-html a:hover{background-color:#292929}

.featured-slides .custom-html h1{text-transform:uppercase}


.mySlides img {margin:0 auto;display: block; width:100%}
/*.fadingslide{animation:fading 6s infinite}@keyframes fading{0%{opacity:0.5}50%{opacity:1}100%{opacity:0.5}}*/

.featured-image-class img{margin:0 auto;display:block; width:100%}


  @keyframes anim {  0% {    display: none;    opacity: 0;  }  1% {    display: block;    opacity: 0;    transform: scale(1.2);  }    100% {    opacity: 1;    transform: scale(1);  }}

.featured-slides picture { animation: anim .8s ease-in-out; overflow:hidden}

.mySlides{overflow:hidden;position:relative}

.bannerdesc{padding: 20px;  box-sizing: border-box;  color: #fff;  text-align: center;background:#10191C}
.bannerdesc h2{text-transform:uppercase;font-weight:900}
.bannerdesc a{width:260px; height:51px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:10px;color:#147EBB;margin:0 auto}

.bannerdesc a:hover{background:#2D2D2D; color:#fff}


.entry-meta{display:none}


.bottonessliders {  cursor: pointer;  position: absolute;  top: 50%;  width: auto;  margin-top: -30px;    color: #fff;  font-weight: bold;  font-size: 20px;
  border-radius: 0 3px 3px 0;  user-select: none; z-index: 4;}	
	
/* Position the "next button" to the right */
.previous_btn {  position: absolute;  left: 1%;  border-radius: 3px 0 0 3px; width: 0;   height: 0;   border-top: 20px solid transparent;  border-bottom: 20px solid transparent;  border-right: 18px solid #00B3A0;}
.next_btn {  position: absolute;  right: 1%;  border-radius: 3px 0 0 3px; width: 0;   height: 0;   border-top: 20px solid transparent;  border-bottom: 20px solid transparent;  border-left: 18px solid #00B3A0;}

/* On hover, add a black background color with a little bit see-through */
.previous_btn:hover, .next_btn:hover {  background-color: rgba(0,0,0,0.8);  color: white;}	

#home-block1, .featured-image-class{margin-top:58px}


#home-block1 {
  position: relative;
  overflow: hidden;
max-width:100%
}
#home-block2{position:relative}
#contslider{position:relative; overflow:hidden; height: 39.8vw;}


#infobanner {display:flex;justify-content:center;flex-wrap:wrap;font-size:12.5px;text-align:left; margin: 0 auto;position:relative;padding:20px;5px;box-sizing:border-box}

#infobanner  > div{max-width:96%;border-radius:10px}

#infobanner  > div {width:390px;height:233px;background:#292929; color:#FFF;margin:10px;padding:20px; box-sizing:border-box;font-size:20px;max-width:100%;text-align:center} 

#infobanner  > div:hover img{}


#servicios{background-color:#E4141F;height:121px;color:#fff;display:flex;justify-content:center;align-items:flex-end;padding:10px;box-sizing:border-box;margin-top: -63px;position:relative;z-index:-1}
#servicios::after {
  content: '';
  position: absolute;
  bottom: -36px; /* Ajusta para colocar el triángulo justo debajo */
  left: 50%; /* Centra horizontalmente */
  transform: translateX(-50%); /* Ajusta el centro */
  border-width: 36px 20.5px 0; /* Altura del triángulo y la mitad del ancho */
  border-style: solid;
  border-color: #E4141F transparent transparent; /* Color del triángulo */
  width: 0; /* No necesitas ancho para el triángulo */
  height: 0; /* No necesitas altura para el triángulo */
}
#servicios h2{margin:0;text-transform:uppercase}
#serviciosint{margin:60px auto;max-width:1300px;display:flex;justify-content:space-around;flex-wrap:wrap}
#serviciosint > div{width:360px;margin:10px;text-align:center; transition: ease 0.5s}
#serviciosint > div h4{font-weight:400;margin:10px auto}

#serviciosint > div:hover{
 transform: scale(1.05);
}
 





.hoverservicio h4{color:#fff}

#tecnologia{background-image: url("/wp-content/uploads/2024/12/Grupo-324.jpg");  background-position: center;  background-repeat: no-repeat;  background-attachment: fixed;  background-size: cover;width:100%;min-height:451px;display:flex;align-items:center;display:flex;flex-direction:column}


#tecnologia h2{ color:#fff; text-transform:uppercase;font-weight:bold;text-align:center; background-color:#E4141F;
 
  background-color: #E4141F;
  padding: 10px 25px;
  border-radius: 0 0 20px 20px;}
#tecnologia p{color:#fff;font-size:20px;margin-top:10px}
#tecyecqui{display:flex;justify-content:space-around;flex-wrap:wrap;max-width:1258px;margin:0 auto}
#tecyecqui > div{max-width:375px;padding:5px;box-sizing:border-box;display:flex;flex-direction:column;text-align:center;align-items: center;margin:10px;justify-content:space-between}





#calidadint{display:flex;justify-content:space-around;flex-wrap:wrap;max-width:1450px;padding:10px;box-sizing:border-box;margin: 20px auto;
align-items:center}
#calidadint > div{padding:10px;box-sizing:border-box}
 
#calidadint li{list-style:initial;margin-bottom: 10px;margin-left:26px}
#calidadint li::marker {
  color: #E4141F; font-size:30px
}

#calidadtexto > div{display:flex;align-items:center;margin-bottom:10px}
#calidadtexto > div h2{margin:0;text-transform:uppercase}
#calidadtexto > div img{margin-right:20px}

#home-block5{background-image: url("/wp-content/uploads/2024/12/caso-fondomobile.jpg");
  background-position: center;
  background-repeat: no-repeat;
 
  background-size: cover;
  width: 100%;}

#casos{
  margin: 0 auto; text-align:center
}

#casos h2{font-size:50px;text-transform:uppercase;padding:10px;box-sizing:border-box}
#casos > div{margin: 0;  color: #fff;  background-color: #E4141F;   padding: 10px;  box-sizing: border-box;}
#galeria{display:flex;width:541px;justify-content:space-around;flex-wrap: wrap;max-width:100%;margin:10px auto}
#galeria > div{display:flex;flex-direction:column;justify-content:space-between;margin:5px;max-width: calc(50% - 10px);}
#galeria > div:last-child{max-width:100%}
#ejemplos{padding:10px;box-sizing:border-box;}
#testimonios{display:flex;flex-wrap:wrap;justify-content:center}
#testimonios > div{width:483px;max-width:90%;margin:10px;background:#fff;padding:20px;box-sizing:border-box;border-radius:24px}
#testimonios > div img{margin-bottom:20px}
.nombretes {margin-left:auto;color:#E4141F;text-align:right}

#articulos{width:411px;background-color:#fff;padding:10px;box-sizing:border-box;border-radius:10px;display:flex;align-items: center;  justify-content: center;
  margin-bottom: -75px;  position: relative;}
#articulos h2{text-transform:uppercase;font-size:50px;margin:0}
#articulos > img{margin-right:10px}
#home-block6 .widget-wrap {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
	background-color:#282828;
	padding:20px 10px;box-sizing:border-box
		;padding-bottom:40px
}
#home-block6 article {
  max-width: 557px;
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
  color: #282828;
}
#home-block6 article .entry-title{padding:5px;box-sizing:border-box;text-align:center}
#home-block6 article h2{font-size:25px; font-family:Montserrat}


#contacto{    max-width: 100%;     margin: 0 auto;}
 #titulocontacto p{display: block;font-size:17px;margin-bottom:10px;color:#E4141F;text-transform:uppercase}
 #titulocontacto h2{margin:0;color:#fff}
#titulocontacto{margin-top:23px;margin-bottom:20px;margin-left:10px}

.siguenos{display:flex}
.siguenos img{filter: invert(84%) sepia(73%) saturate(5507%) hue-rotate(350deg) brightness(90%) contrast(98%);margin:0 10px}
.siguenos img:hover{filter:brightness(0%)}

#contactus{display:flex;max-width:1024px;margin:0 auto;padding: 40px 10px;  box-sizing: border-box;justify-content: space-around;flex-wrap:wrap}

#contactus input{height:41px;box-sizing:border-box}
#contactus textarea{height:120px;box-sizing:border-box}

.footer-widgets-1{background:#FAFAFA;display: flex;  align-items: center;  justify-content: center;padding: 30px 5px;  box-sizing: border-box;background-image: url("/wp-content/uploads/2024/12/bannercontacto-mobile2.jpg");
  background-position: center;
  background-repeat: no-repeat; 
  background-size: cover;}
#footerinfo{display:flex;color:#fff;justify-content: space-around;  max-width: 94%;  margin: 0 auto;font-size:14px;flex-wrap:wrap;flex-direction:column;width:410px}
#footerinfo a{color:#fff;font-weight:normal}
#footerinfo > div{display: flex;border-bottom: solid 1px rgba(228,228,228,0.19);padding: 22px 5px;  align-items: center;  box-sizing: border-box;}
#footerinfo img{margin: 0 5px}
#direccionbottom{display:flex}
#telefonobottom > div{margin-bottom:10px}
#direccionbottom > div{margin-right:10px}




#contacto h2{text-transform:uppercase;text-align:center;}
#contactointo{display:flex;justify-content:space-around;max-width:1080px;padding:10px;box-sizing:border-box;font-size:18px;width:100%;flex-wrap:wrap}
#contactointo > div{padding:10px;box-sizing:border-box}
#contactointo > div:first-child p{margin-bottom:40px}
#contactointo > div a {display:flex;align-items: center;font-weight:400}
#contactointo > div a img{margin-right:10px}
.wpcf7-form{max-width:554px}

.bootomfooterinfo {
  background: #292929;

  padding: 10px;
  box-sizing: border-box;
  color: #fff;
	width:100%
}
.bootomfooterinfo {
  display: flex;
  justify-content: flex-end;
  text-align: center;
  align-items: center;
}
#barrafooter{background:#FFCC00;min-height:63px;width:100%;font-size:30px;text-transform:uppercase;text-align:center;display:flex;justify-content:center;align-items:center;}
#barrafooter h2{margin:0;position: relative;}


.topfooter{position: relative;  bottom: -5px;
}

.ubicacion{display:flex;align-items: flex-start;}


	#forma  {display:flex;justify-content:space-around;flex-direction:column;align-items:center;width:100%;max-width:98%}
#forma > div{margin:0 10px}

.wpcf7-submit{background: #E4141F !important;margin-left: auto;color:#fff;width: 218px !important;display: block;margin-left: auto !important;margin-right: 0 !important;text-transform:uppercase;font-weight:bold;font-size:20px}
.wpcf7-submit:hover{background:#292929 !important;}


	
aside{padding:10px;box-sizing:border-box;display:none}
aside .entry-header{background:none}

.norm_row{margin: 0 auto; margin-top: 30px;display: flex;justify-content: center;position: relative !important;}



#featured-post-3 .widget-wrap {  display: flex;  flex-wrap: wrap;  margin: 0 auto;  max-width: 940px;  justify-content: space-around;}

#featured-post-3 .widget-wrap article{max-width: 400px;  display: flex;  flex-direction: column;overflow:hidden;position: relative;}
#featured-post-3 .widget-wrap article img{max-width: 768px;left: 50%;  margin-left: -384px;  position: relative;}
#featured-post-3 .widget-wrap article .entry-title {  font-size: 22px;  text-align: center;  margin-top: 10px; padding:1em;box-sizing:border-box}
#featured-post-3 .widget-wrap article:hover{background:#E4141F;color:#fff}
#featured-post-3 .widget-wrap article:hover h2 a{color:#fff}



/*pages*//*posts*//*archive category*/
 * 
.featured-image-class{background-color:#E4141F}

 

@keyframes chat {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}


.archive .content,.error404 article .entry-content, .single article .entry-content, .page article .entry-content{max-width:1300px;margin:0 auto;padding:1em;width:100%;box-sizing:border-box}

.page article, .page .content{width:100%}
/*
.page:not(.home) .entry-header{ height:91px;display:flex;justify-content:center;align-items:center;position:relative;padding:5px;box-sizing: border-box;  top: -110px;  color: #fff;}*/


.entry-title{font-size:36px;text-transform:uppercase;position:relative;margin:0;display:flex;align-items:center;justify-content:center;text-align:center}

.page:not(.home)  .entry-header, .single .entry-header{   color: #fff;  display: flex;  justify-content: center;
  align-items: center;  position: relative;background-size: contain;background-repeat: no-repeat;margin-top:0; margin-bottom:40px}








.wpcf7 form.invalid .wpcf7-response-output{background:#ffb900}
.wpcf7 form.sent .wpcf7-response-output {background:#46b450; font-weight:bold;color: #fff;}

#copyright {height:77px;background:#000;width:100%;color:#fff;text-align:center;display:flex;align-items:center;justify-content:center}


header{transition: all 0.5s ease-out}
header.sticky{position: fixed;top: 0;left: 0;right: 0;padding: 0;z-index:98;}	
/*full site*/
@media screen and (min-width: 960px) {
	.totalhead{height:auto;background:none}
	body.logged-in.admin-bar .totalhead {
  margin-top: calc(0px + 32px);
}
	
#totalhead.sticky .totalhead{background:#292929;  transition: all .5s ease-out; }
.previous_btn {    border-top: 30px solid transparent;  border-bottom: 30px solid transparent;  border-right: 25px solid #00B3A0;}
.next_btn {  border-top: 30px solid transparent;  border-bottom: 30px solid transparent;  border-left: 25px solid #00B3A0;}	
	
	/*header*/
.headerdeart .radial-progress{top:15%;right:10%}	
	/*.site-header{background: rgba(255,255,255,0.8)}*/
	.site-header>.wrap{display:flex;align-items: center;justify-content:center;position: relative;	max-width: calc(100% - 9vw);    margin-left: auto;    margin-right: 0; flex-direction:row }
	#social-container{height: 36px;    color: #fff;    max-width: 74%;    margin-left: auto;display: block;}
	#social-container .textwidget{display:flex; }
	#topinfo{width: 640px;max-width:100%;height:36px}
	#topinfo > div{display:flex}
	#topinfo a{font-size:18px}
	.title-area{position:absolute;max-width:25%}
	
	
	#edificamos{font-size:48px}
	.bannerdesc a{height:3vw}
	#home-block1, .featured-image-class{margin-top:0}
	.header-widget-area{width:100%;display:block;background:none}
.whatscel{margin-left:1em}
	.headermail img{margin-top:5px}
	/*logo*/
	
	.entry-title{font-size:50px}
	/*menu*/
	.mobmenu{display:none}
	.nav-primary { max-height: 100%;overflow:visible ;position:relative;top:0; height:73px;display: flex;    align-items: center; border-radius: 0 0 0 20px;max-width: 74%;margin-left:auto}
	/*nav*/
	.nav-primary > ul{display:flex;flex-wrap:wrap;align-items: center;justify-content:space-around; }
	.nav-primary .wrap{display:flex;justify-content:space-around;align-items:center;height:60px;margin-left:20px}
	.nav-primary .wrap>ul{display:flex;flex-wrap:wrap;justify-content:space-around;align-items: center;position:relative;z-index:10;background: none; }
	.nav-primary li, .nav-primary li a{font-size:18px;font-weight:normal;color:#292929}
	
	.nav-primary li:last-child a{border:none}
		.nav-primary .wrap>ul>li {display: flex;     height: 75px;    align-items: center;}

				
	
				.nav-primary li:hover > ul {display:block;}
			
			.nav-primary li ul li {	position:relative;}
			
			.nav-primary li ul li ul {right:-140px;	top:0px;}
	


	 
	
	
	.featured-slides .custom-html h1 {font-size:60px;		}
	.featured-slides .custom-html p{font-size:20px}
	
	
	#home-block1 {
    margin-top: 0;
  }
	 
	#infobanner{background:none}
	#infobanner > div a{width: 28vw;height:24vw;font-size: 1vw;  padding: 2vw;}
	#infobanner > div h4{font-size:1.2vw}
	#infobanner > div img{width: 9vw;}
	#infobanner > div hr{width:22vw; margin:1.5vw}
	 
	
	#servicios h2{font-size:50px}

	
	
	


	
	
	
	
	
	
	#proyectos  .proyecto{width: calc(88% / 3 );}
	
	#tecnologia h2{font-size:50px}

	#home-block4 h2, 	#home-block6 .textwidget h2{font-size:32px}	
	#ultimosproyectos > h2{font-size:32px}
	
	#home-block5{background-image: url("/wp-content/uploads/2024/12/casos-fondo.jpg");
  background-position: center;
  background-repeat: no-repeat;
 
  background-size: cover;
  width: 100%;}
	#casos h2{margin:0}
	#casos > div{margin: 0;   width: calc(100% - 348px); }
	#casos{display: flex;  align-items: center; width: 90%;
  margin-left: auto;margin-right: 0;text-align:left}
#ejemplos{display:flex;justify-content:flex-end;padding:10px;box-sizing:border-box;align-items: center;}
	
	
	#forma {flex-direction:row}
	#contactointo{flex-wrap:nowrap}
	#contactointo > div:last-child{width:58%}
	#contacto h2{font-size:50px}
#aproductividad{background-image: url("/wp-content/uploads/2024/04/eficiencia.jpg"); }
	
		.single	.content-sidebar-wrap{display:flex;margin:0 auto;max-width:1300px;width:100%;}
		.page:not(.home)	.content-sidebar-wrap{display:flex;margin:0 auto;max-width:1300px;width:100%;}
/*	.single .content-sidebar-wrap main{width:65%;padding:0 1em;box-sizing:border-box}
	.single .content-sidebar-wrap aside{ width:35%;margin-top:-0.6em}*/
	
	
	#info{margin-left: 15px;}
	
	#contactus{flex-direction:row-reverse}
	
	
	#barrafooter h2:before{content:url('/wp-content/uploads/2024/03/Grupo-28.png');position: absolute;  left: -400px;top: -5px;}
#barrafooter h2:after{content:url('/wp-content/uploads/2024/03/Grupo-27.png');position: absolute; right: -400px;top: -5px;}
	
	.footer-widgets-1{background:#FAFAFA;display: flex;  align-items: center;  justify-content: center;padding: 30px 5px;  box-sizing: border-box;background-image: url("/wp-content/uploads/2024/12/bannercontacto.jpg");
}
	
	@media screen and (min-width: 1920px) {	
	
	
/*	.nav-primary li, .nav-primary li a{ font-size: 20px }*/
		#menu-item-71{right: -300px;}
		
		.bannerdesc{ font-size:18px}

	.bannerdesc h2{font-size:32px}
	
		.bannerdesc a{height:51px}
		

	}
	

	
	@media screen and (min-width: 1200px) {
.home  #rl-gallery-container-1 .rl-basicgrid-gallery .rl-gallery-item {
   width: calc(16.66% - 10px) !important;  }
	


}

	
		@media screen and (max-width: 1100px) {
 
	 #dirtop{display:none}

}
	
	

	

.animatable {
   opacity: 0;
  transition: opacity 100ms;

}

.animatable.zoomIn {opacity:1;  transform: scale3d(0.2, 0.2, 0.2);} 

.animatable.zoomOut {opacity:1;  transform: scale3d(1.25, 1.25, 1.25);}


/* show objects being animated */
.animatable.animated {

opacity: 1;
}

/* CSS Animations (extracted from http://glifo.uiparade.com/) */


@keyframes bounce {
    20%,
    53%,
    80%,
    from,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0);
    }
    40%,
    43% {
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -30px, 0);
    }
    70% {
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -15px, 0);
    }
    90% {
        transform: translate3d(0, -4px, 0);
    }
}
.animated.bounce {
    animation: bounce  2s ease-in-out both;
    transform-origin: center bottom;
}
@keyframes flash {
    50%,
    from,
    to {
        opacity: 1;
    }
    25%,
    75% {
        opacity: 0;
    }
}
.animated.flash {
    animation: flash 2s ease-in-out both;
}
@keyframes pulse {
    from,
    to {
        transform: scale3d(1, 1, 1);
    }
    50% {
        transform: scale3d(1.05, 1.05, 1.05);
    }
}
.animated.pulse {
    animation: pulse  2s ease-in-out both;
}
@keyframes rubberBand {
    from,
    to {
        transform: scale3d(1, 1, 1);
    }
    30% {
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        transform: scale3d(1.05, 0.95, 1);
    }
}
.animated.rubberBand {
    animation: 2s ease-in-out both;
}
@keyframes shake {
    from,
    to {
        transform: translate3d(0, 0, 0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(-10px, 0, 0);
    }
    20%,
    40%,
    60%,
    80% {
        transform: translate3d(10px, 0, 0);
    }
}
.animated.shake {
    animation: shake  2s ease-in-out both;;
}
@keyframes headShake {
    0% {
        transform: translateX(0);
    }
    6.5% {
        transform: translateX(-6px) rotateY(-9deg);
    }
    18.5% {
        transform: translateX(5px) rotateY(7deg);
    }
    31.5% {
        transform: translateX(-3px) rotateY(-5deg);
    }
    43.5% {
        transform: translateX(2px) rotateY(3deg);
    }
    50% {
        transform: translateX(0);
    }
}
.animated.headShake {
    animation-timing-function: ease-in-out;
    animation: 2s ease-in-out both;
}
@keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg);
    }
    40% {
        transform: rotate3d(0, 0, 1, -10deg);
    }
    60% {
        transform: rotate3d(0, 0, 1, 5deg);
    }
    80% {
        transform: rotate3d(0, 0, 1, -5deg);
    }
    to {
        transform: rotate3d(0, 0, 1, 0deg);
    }
}
.animated.swing {
    transform-origin: top center;
    animation: 2s ease-in-out both;
}
@keyframes tada {
    from,
    to {
        transform: scale3d(1, 1, 1);
    }
    10%,
    20% {
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    }
    30%,
    50%,
    70%,
    90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%,
    60%,
    80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
}
.animated.tada {
    animation: 2s ease-in-out both;
}
@keyframes wobble {
    from,
    to {
        transform: none;
    }
    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    }
    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    }
    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    }
    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    }
    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    }
}
.animated.wobble {
    animation: wobble  2s ease-in-out both;
}
@keyframes jello {
    11.1%,
    from,
    to {
        transform: none;
    }
    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        transform: skewX(0.390625deg) skewY(0.390625deg);
    }
    88.8% {
        transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    }
}
.animated.jello {
    animation: jello  2s ease-in-out both;
    transform-origin: center;
}
@keyframes bounceIn {
    20%,
    40%,
    60%,
    80%,
    from,
    to {
        animation-timing-function: cubic-bezier(0.215, 1, 0.355, 1);
    }
    0% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }
 
    40% {
        transform: scale3d(0.9, 0.9, 0.9);
    }
    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        transform: scale3d(0.97, 0.97, 0.97);
    }
    to {
        opacity: 1;
        transform: scale3d(1, 1, 1);
    }
}
.animated.bounceIn {
    animation: bounceIn  2s ease-in-out both;;
}
@keyframes bounceInDown {
    60%,
    75%,
    90%,
    from,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0);
    }
    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0);
    }
    75% {
        transform: translate3d(0, -10px, 0);
    }
    90% {
        transform: translate3d(0, 5px, 0);
    }
    to {
        transform: none;
    }
}
.animated.bounceInDown {
    animation: bounceInDown  2s ease-in-out both;;
}
@keyframes bounceInLeft {
    60%,
    75%,
    90%,
    from,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61,  0.25, 1);
    }
    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0);
    }
    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0);
    }
    75% {
        transform: translate3d(-10px, 0, 0);
    }
    90% {
        transform: translate3d(5px, 0, 0);
    }
    to {
        transform: none;
    }
}
.animated.bounceInLeft {
    animation: bounceInLeft  4s ease-in-out both;;
}




@keyframes bounceInRight {
    60%,
    75%,
    90%,
    from,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.25, 1);
    }
    from {
        opacity: 0;
        transform: translate3d(3000px, 0, 0);
    }
    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0);
    }
    75% {
        transform: translate3d(10px, 0, 0);
    }
    90% {
        transform: translate3d(-5px, 0, 0);
    }
    to {
        transform: none;
    }
}
.animated.bounceInRight {
    animation: bounceInRight 4s ease-in-out both;
}
@keyframes bounceInUp {
    60%,
    75%,
    90%,
    from,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        transform: translate3d(0, 3000px, 0);
    }
    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0);
    }
    75% {
        transform: translate3d(0, 10px, 0);
    }
    90% {
        transform: translate3d(0, -5px, 0);
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
.animated.bounceInUp {
    animation: bounceInUp  2s ease-in-out both;
}
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.animated.fadeIn {
    animation: fadeIn  1s ease-in-out both;
}
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.animated.fadeInDown {
    animation: fadeInDown 1s ease-in-out both;
}
@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.animated.fadeInLeft {
    animation: fadeInLeft  1s ease-in-out both;
}
@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 0, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.animated.fadeInRight {
    animation: fadeInRight  1s ease-in-out both;
}
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 100%, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.animated.fadeInUp {
    animation: fadeInUp  1s ease-in-out both;
}
@keyframes lightSpeedIn {
    from {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
    60% {
        transform: skewX(20deg);
        opacity: 1;
    }
    80% {
        transform: skewX(-5deg);
        opacity: 1;
    }
    to {
        transform: none;
        opacity: 1;
    }
}
.animated.lightSpeedIn {
    animation: lightSpeedIn  2s ease-in-out both;
    animation-timing-function: ease-out;
}
@keyframes rotateIn {
    from {
        transform-origin: center;
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
    }
    to {
        transform-origin: center;
        transform: none;
        opacity: 1;
    }
}
.animated.rotateIn {
    animation: rotateIn  1s ease-in-out both;
}
@keyframes rotateInDownLeft {
    from {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
    to {
        transform-origin: left bottom;
        transform: none;
        opacity: 1;
    }
}
.animated.rotateInDownLeft {
    animation: rotateInDownLeft  1s ease-in-out both;
}
@keyframes rotateInDownRight {
    from {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
    to {
        transform-origin: right bottom;
        transform: none;
        opacity: 1;
    }
}
.animated.rotateInDownRight {
    animation: rotateInDownRight  1s ease-in-out both;
}
@keyframes rotateInUpLeft {
    from {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
    to {
        transform-origin: left bottom;
        transform: none;
        opacity: 1;
    }
}
.animated.rotateInUpLeft {
    animation: rotateInUpLeft  1s ease-in-out both;
}
@keyframes rotateInUpRight {
    from {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
    }
    to {
        transform-origin: right bottom;
        transform: none;
        opacity: 1;
    }
}
.animated.rotateInUpRight {
    animation: rotateInUpRight  1s ease-in-out both;
}
@keyframes rollIn {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.animated.rollIn {
    animation: rollIn  2s ease-in-out both;
}

@keyframes zoomOut {
    from {
        opacity: 1;
        transform: scale3d(1.25, 1.25, 1.25);
		
    }
    100% {
        opacity: 1;
		 transform: scale3d(1, 1, 1);
		
    }
}

.animated.zoomOut {

	
    animation: zoomOut 1s cubic-bezier(1, 0, 0.7, 1) 0.125s 1 normal forwards running; overflow:hidden;
	
}


@keyframes zoomIn {
 from {
        opacity: 0;
       transform: scale3d(0.2, 0.2, 0.2);
		animation-delay:3s
    }
 
 
    100% {
        opacity: 1;
        transform: scale3d(1, 1, 1);
    }
	
   

	
}
.animated.zoomIn {
	 
  overflow:hidden;position:relative;
	 animation: bounceIn  2s ease-in-out both;;
	
}
@keyframes zoomInDown {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.animated.zoomInDown {
    animation: zoomInDown  2s ease-in-out both;
}
@keyframes zoomInLeft {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.animated.zoomInLeft {
    animation: zoomInLeft  2s ease-in-out both;
}
@keyframes zoomInRight {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.animated.zoomInRight {
    animation: zoomInRight  2s ease-in-out both;
}
@keyframes zoomInUp {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.animated.zoomInUp {
    animation: zoomInUp  2s ease-in-out both;
}
@keyframes slideInDown {
    from {
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
.animated.slideInDown {
    animation: slideInDown  1s ease-in-out both;
}
@keyframes slideInLeft {
    from {
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
.animated.slideInLeft {
    animation: slideInLeft  1s ease-in-out both;
}
@keyframes slideInRight {
    from {
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
.animated.slideInRight {
    animation: slideInRight  1s ease-in-out both;
}
@keyframes slideInUp {
    from {
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
.slideInUp {
    animation: slideInUp  1s ease-in-out both;
}
	
	}