/**
 * Theme Name: geek1
 * Theme URI: geek1
 * Description:geek1
 * Author: Julian
 * 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: Gelion; 
src: url(/wp-content/themes/startergeek/fonts/Gelion/Gelion-Regular.woff2); 
font-style:normal;
	font-weight:400
}

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


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




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


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





html {-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;}
body {background-color: #fff;color:#292A2A;font-family: "Gelion";font-size: 20px;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: 2px;box-sizing:border-box; }
input[type="submit"],.button{cursor: pointer;}

button, input, select, textarea { font-size: 1rem;font-family: inherit;     line-height: 1.5;width:100%;padding: 0.7em;border:none;box-sizing:border-box; background: #fff; color:#292A2A;border:solid 1px #fff }
input{max-height:41px}
textarea {max-height:97px}

a {color: #244983;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,h2,h3 {font-family: "Oswald";	font-weight: 900;	line-height: 1.2;	margin: 0 0 20px;}
 h4,h5,h6{font-family: "Oswald";	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:#292A2A;  transition: all .5s ease-out;}

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

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

/*logo*/
.title-area {margin:0 auto;background:transparent; position:relative;left:0;top:0;z-index:3; height:93px;padding: 5px 10px;box-sizing:border-box;max-width:70%;display: flex;  align-items: center;}
.title-area img{display:block;max-width:100%}
.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 {background:#191919}

#social-container{background:#BC3131; font-size:14px;display:flex;justify-content:space-around}


#topinfo{display:flex;justify-content:space-around;align-items:center;min-height: 38px;color:#fff;    padding: 10px 5px;box-sizing:border-box}
#topinfo #direcciontop{display:flex} 
#topinfo a{font-weight:normal}
#topinfo img{margin: 0 5px}
#topinfo #direcciontop{display:flex}
#topinfo #telefonotop > div{margin-bottom:10px}
#topinfo #direcciontop > div{margin-right:10px}


#topinfo > div{display:none}
#topinfo #toptel{display:flex;font-weight:bold}
#topinfo > #telefonotop{display:flex;align-items:center}
#topinfo #toptel a{font-weight:bold}
#topinfo a:hover{filter: brightness(0) invert(1)}



#telefonotop{font-size:25px}
#emailtop {font-size:20px}
#telefonotop a, #emailtop a{color:#fff}


.redes a:hover{filter: brightness(0) saturate(100%) invert(10%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(16%) contrast(87%);}
.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;   overflow-x: visible;  overflow-y: visible;  width: 100%;  position: fixed !important;  top: 0px;  bottom: auto;
  left: 0px;  right: auto;  z-index: 9999;background-color:#fff  }


.site-header{height:94px;background: #fff; width:1138px;margin:0 auto;max-width:100%}
 



.site-header > .wrap{width:100%;margin:0 auto; display: flex;justify-content:space-between;
	align-items: center; height:100%}


.nav-primary {    max-height: 0;    overflow: hidden;    transition: max-height .2s ease-out;position:absolute;width: 100%;
left: 0;top: 150px;}

.nav-primary wrap{position:relative; }
.nav-primary ul{text-align:center;list-style:none;padding-left: 0; background:#191919;}
 .nav-primary li a{color: #46494A;padding:5px;text-decoration: none;font-size: 20px;   font-weight:400;}

.nav-primary li a{display:flex;align-items:center;justify-content:center;min-height:50px;color:#46494A;text-transform:uppercase}
.nav-primary li:hover { background:#BC3131;color:#fff;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:500px; max-width:95%}
.formacontacto input, .formacontacto textarea{max-width:474px}
.formacontacto textarea{height:174px}
#wpcf7-f69-o1{padding:13px;box-sizing:border-box}
.medioinput{display:flex;justify-content: space-between;}
.medioinput > div{width:48.5%}


#redestop img:hover{filter: invert(88%) sepia(27%) saturate(5139%) hue-rotate(357deg) brightness(102%) contrast(106%);}


 

.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{position:relative;margin-top:160px}
.featured-image-class img{margin:0 auto;display:block; max-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{position:relative}
.featured-slides picture { animation: anim .8s ease-in-out; overflow:hidden}
.single .featured-slides img {border-bottom-right-radius: 50px;	border-bottom-left-radius: 50px;}

.featured-slides .custom-html{position: absolute;  color: #fff;  text-align: center;  bottom: 25%; max-width: 86vw;  text-align: center;  left: 0;  right: 0;  margin: 0 auto;display: flex;  flex-direction: column;  align-items: center;}
.featured-slides h2{font-size:7vw;  text-transform: uppercase;text-align:center }
.featured-slides p{font-size:1.5vw;max-width:60vw;text-align:center    }
.featured-slides a{position: absolute;
  background:
#BC3131;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 310px;
  height: 41px;
  border-radius:
5px;
  margin:0 auto;
  left: 0;
  right: 0;
  bottom: 25%;
}

.featured-slides a:hover{background: #0A2A4F;}

.mySlides{overflow:hidden;position:relative;background:#244983}

.bannerdesc{ padding: 20px;  box-sizing: border-box;  color: #fff;  text-align: center; position:absolute; z-index: 5;
 bottom: 2%;
  left: 0;
  right: 0;
	
}
 
.bannerdesc p{font-size:18px;max-width:1000px;margin:0 auto}
 

.bannerdesc a{ 
  color: #fff;
  margin: 0 auto;
    margin-bottom: 0px;
  text-align: center;
  font-size: 24px;
  align-items: center;
  display: flex;
  justify-content: center;
  margin-bottom: 5px;
	text-transform:initial;
}

.bannerdesc a:hover{background: #244983;  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 {
  position: relative;
  overflow: hidden;
max-width:100%
}

 
#home-block2{background-color:#292A2A}

#servicioseccion h2{text-align:center;text-transform:uppercase;margin:20px auto}
#servicios{display:flex; justify-content:center;flex-wrap:wrap;  width: 1500px; max-width:100%;  margin: 40px auto;}
.servicio{width:575px;max-width:100%;margin:10px 5px;display:flex;flex-direction:column;justify-content:space-between;background-color:#F5F5F5}
.servicio h3{text-align:center;text-transform:uppercase;font-size:20px;;color:#292A2A;margin:10px auto;padding:10px;box-sizing:border-box}
.servicio p{padding:10px;box-sizing:border-box;text-align:center}
.servicio a{background:#E4141F;color:#fff;display:flex;align-items:center;justify-content:center;width:149px;height:35px;border-radius:5px;margin:0 auto;margin-bottom:20px}
.servicio a:hover{background:#292A2A}







#clientes{display:flex;justify-content:center;align-items:center;  background-image: url("/wp-content/uploads/2026/04/clientes-banner.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  width: 100%;
  display: flex;
  position: relative;
  min-height: 352px;
  box-sizing: border-box;
  padding-bottom: 0;
  justify-content: center;
  color: #fff;text-align: center;}
#clientesint h2{ color:#fff;text-transform:uppercase;}

#clientesint{width:920px;max-width:100%;padding:10px;box-sizing:border-box}
#clientesint > div{display:flex;justify-content:space-around;align-items:center;flex-wrap:wrap}
#clientesint > div img{padding:10px;box-sizing:border-box}


.home #rl-gallery-container-1{padding-bottom:20px}








#custom_html-10 h2{text-align:center;color:#BC3131;text-transform:uppercase;}



 


.bootomfooterinfo {  display: flex;  justify-content: space-between;  text-align: center;  align-items: center;}
.bootomfooterinfo {
  background: #333333;
  height: 65px;
  padding: 10px;
  box-sizing: border-box;
	color: #fff;}
.bootomfooterinfo img{position:relative; right:10px}

#siguenos {background:#D41634;width:800px; height:107px;display:flex;align-items:center;justify-content:flex-end;margin-bottom: -55px;  position: relative;max-width: calc(98% - 36px);padding:5px;box-sizing:border-box}
#siguenos > div{display:flex;}
#siguenos span{margin-right:10px;font-size:20px}
#siguenos a{margin-right:10px}

#siguenos a:hover{filter:brightness(0) invert(1)}

#siguenos:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
  }
#siguenos:after{border-width: 0 0 107px 36px;
    border-color: transparent transparent transparent #D41634;
    right: -35px;
    bottom: 0;}


/* DISEÑO PARA MÓVIL */
#especialistasparent{background-color:#BC3131}
#especialistas{margin-top: -180px;  position: relative;  z-index: 1;}
.contenedor-especialistas {  display: flex;  flex-direction: column;   align-items: center;  text-align: center;}

.img-lingote {   z-index: 2;  position: relative;display: block;
  margin: 0 auto;  margin-bottom: -40px;}

#descripcionespecialistas {  background-color: #BC3131;  color: white;  padding: 60px 30px 40px 30px;  width: 100%;  z-index: 1;}

#descripcionespecialistas p {  font-size: 1rem;  line-height: 1.5;  margin: 0;}



#nosotros{color:#fff;width:1080px;max-width:100%;padding:10px;box-sizing:border-box;display:flex;flex-direction:column;margin: 0 auto;
    text-align: center;font-size: 18px;}
#nosotros h3{font-size:30px;text-transform:uppercase}
#nosotros > div{padding:10px 25px;box-sizing:border-box;line-height: 2;}

#valores h3{text-align:center;font-size:30px;text-transform:uppercase;color:#fff;margin:30px auto}
#valoresint{color:#fff;width:1080px;max-width:100%;padding:10px;box-sizing:border-box;display:flex;flex-direction:column;margin: 0 auto;
    text-align: center;font-size: 18px;flex-wrap:wrap;justify-content:center;align-items:center}
.valorimg{height:125px}
#valoresint h4{text-transform:uppercase}
#valoresint > div{width:350px;padding:10px;box-sizing:border-box;margin-bottom: 30px;}



#soluciones{margin:0 auto;width:1250px;padding:30px 10px;box-sizing:border-box;max-width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center}
#solucionesint{padding:30px;box-sizing:border-box;color:#fff}
#solucionesint h2{font-size:36px; text-transform:uppercase;  line-height: 1.5;max-width:400px;margin:0 auto;margin-bottom:20px;text-align:center;}
#solucionesint p{max-width: 480px;    font-size: 18px;  line-height: 2;}
#solucionesint ul{max-width: 480px;   font-size: 18px;margin-left: 20px;}
#solucionesint li{list-style:initial; }
#solucionesint a{font-size:18px;background-color:#BC3131;color:#fff;width:116px;height:44px;border-radius:10px;display:flex;justify-content:center;align-items:center;margin:10px auto;text-transform:uppercase}
#solucionesint a:hover{background-color:#292A2A}

#home-block3 #rl-gallery-1{max-width:1240px;margin:0 auto;margin-bottom:30px}




.telinfo a{display:flex;align-items: center;}
.telinfo a img{margin-right:10px}
#barrafooter{background:#295DE5;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-form{max-width:750px;margin:20px auto}


.wpcf7-submit{background:#BC3131 !important;margin-left: auto;color:#fff;width: 312px !important;display: block;  font-weight:bold;font-size:20px;  font-weight:400; height:45px; font-family:"Oswald";text-transform:uppercase;margin-top:20px}
.wpcf7-submit:hover{color: #fff !important;background: #0A2A4F !important}

.footerinfo{display:flex;justify-content:space-around}
.footer-widgets-1 {color:#fff;background:#292A2A; }
.footer-widgets-1 a{color:#fff;display:flex}
#footerinfo{display:flex;align-items: center;justify-content:space-around;flex-wrap:wrap;flex-direction:column}
.footerinfo { padding: 10px;box-sizing:border-box;flex-wrap:wrap}
.footerlogo{filter:brightness(0) invert(1);padding: 10px 40px;box-sizing:border-box}

#footerinfo > div{display:flex;justify-content:center;align-items:center;margin:5px 15px;flex-direction: column;}
#footerinfo > div img{margin:0 5px}
#footinfo   > div {margin: 15px auto;}
#footinfo   > div, #footinfo   > div a{display: flex;  justify-content: center;  align-items: center;  }
#footinfo  > div img{margin:0 10px}




.footer-widgets-1 section{padding:40px;box-sizing:border-box;display:flex;justify-content:center;width:100%;align-items:center}


#text-3{background-color:#303543;width:100%}
#text-3 h2{text-transform:uppercase}
#text-3 .textwidget{max-width: 100%;
  width: 369px;
  display: flex;
  flex-direction: column;
  align-items: center;}


.footer-widgets-1{display:flex;flex-wrap:wrap}


.footer-widgets-2 .bootomfooterinfo {
  display: flex;
  justify-content: space-between;
  text-align: center;
  align-items: center;
}

.footer-widgets-2 .bootomfooterinfo {
  background:
#292A2A;
  height: 65px;
  padding:
10px;
  box-sizing: border-box;
  color: #fff;
  text-align: center;
  display: flex;
  justify-content: space-between;
  text-align: center;
  align-items: center;
}
.footer-widgets-2 .bootomfooterinfo {
  color: #fff;
  text-align: center;
  text-align: center;
}

 
#hechopor {
  background-color: #191919;
  width: 248px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  position: relative;
}


#emailbottom a{display:flex;align-items:center}
#redesbottom {display:flex;align-items:center}


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


.page .entry-header{display:flex;justify-content:center;width:100%;margin:0 auto;text-align:center;background-color:#292A2A}

.single .entry-header{display:flex;justify-content:center;width:1200px;max-width:100%;padding:10px;box-sizing:border-box;color:#292A2A;text-align:center;margin: 20px auto;}
.single .entry-header .entry-title{color:#292A2A;text-align:center}
.norm_row{margin: 0 auto; margin-top: 30px;display: flex;justify-content: center;position: relative !important;}


/* Contenedor principal azul */




#home-block5 {
    background-color: #F5F5F5; /* Color azul del fondo */
    padding: 40px 20px;
    font-family: sans-serif;
}

#home-block5 h2 {
    color: #ffffff;
    text-align: center;
    text-transform: uppercase;
    font-size: 50px;
    margin-bottom: 30px;
 
    display: table;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 5px;
}

/* Estructura de la Tarjeta (Mobile) */
#home-block5 .entry {
    background: #ffffff;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column; /* Imagen arriba, texto abajo en móvil */
    overflow: hidden;
    border-radius: 4px;
	padding:10px;box-sizing:border-box;box-shadow: 6px 8px 7px -1px rgba(180,180,180,0.75);
}

#home-block5 .entry-image {
    width: 100%;
    height: 250px;
    object-fit: cover; /* Para que la imagen no se deforme */
    display: block;
}

#home-block5 .entry-header, 
#home-block5 .entry-content {
    padding: 20px;
}

#home-block5 .entry-title {
    font-size: 1.2rem;
    text-transform: uppercase;
    margin: 0 0 10px 0;
    font-weight: bold;
}

#home-block5 .entry-title a {
    text-decoration: none;
    color: #333;
}

/* Botón Ver Más */
#home-block5 .more-link {
    display: inline-block;
    background: #1e4ea1;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: bold;
    border-radius: 5px;
    margin-top: 15px;
    float: right; /* Alineado a la derecha como en tu imagen */
}

#home-block5 .more-link:hover{background:#292A2A}

/* Clearfix para el float del botón */
#home-block5 .entry-content::after {
    content: "";
    clear: both;
    display: table;
}

 


/*pages*//*posts*//*archive category*/
 
.entry-title{color:#fff;text-transform:uppercase;margin-bottom:0} 


#imagetop{ margin:0 auto; margin-top:168px;display: flex;  justify-content: center;}
#imagetop img{width:100%}

.joinchat__button{background:none !important}
.joinchat__button__image{overflow:visible  !important}
.joinchat__button__open{display:none !important}
.joinchat--show .joinchat__button__image{ transition: none !important; animation: chat 3s linear 1s  normal both !important;}


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


.archive .content,.error404 article .entry-content, .single article .entry-content, .page article .entry-content{max-width:1200px;margin:0 auto;padding:1em;width:100%;box-sizing:border-box;}
/*
.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;}*/

.content-sidebar-wrap{margin-top:58px}

.entry-title{font-size:18px;position:relative; display:flex;align-items:center; }

.single .entry-header, .page .entry-header{padding:10px;box-sizing:border-box;}
.single .entry-header h1, .page .entry-header h1{  font-size:30px;font-weight: 800;}


.footer-widgets-1 h2{text-transform:uppercase;font-size:50px}

#wpcf7-f41-o1{max-width:574px;margin:0 auto;padding:10px;box-sizing:border-box}

.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: 800px) {
	
		.featured-slides h2 {
 font-size: 3.6vw;
    max-width: 48vw;
  
}
	
}


	
	
	@media  screen and (min-width: 450px) {
  
    .mySlides {
        height: 756px  ; /* Ajusta este valor al alto que desees mantener */
        overflow: hidden;
        position: relative;
    }

    .imagendebanner {
        width: 100%;
        height: 100% !important; /* Fuerza el alto del contenedor */
        object-fit: cover; /* Recorta los lados para mantener la proporción sin estirar */
        object-position: center; /* Centra la imagen para que no se pierda el foco */
    }

 
}







@media screen and (min-width: 1025px) {
	
	body.logged-in.admin-bar .totalhead {
  margin-top: calc(0px + 32px);
}
	
.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{border-radius:50px;padding: 5px 50px; box-sizing:border-box;margin-top:-15px}
	.site-header>.wrap{display:flex;align-items: center;justify-content:center;position: relative;	max-width:1250px;;
}
	#social-container{display:block}
	#social-container .textwidget{display:flex; justify-content:flex-end}
	#topinfo{width: 840px;  margin: 0 auto;max-width:90%;margin-top: -10px;    margin-bottom: 10px;}
	
	.title-area img{max-width:341px;}
	#topinfo > div, #topinfo > div a{display:flex; align-items:center}
	#topinfo > div strong{text-transform:uppercase}
	
	#edificamos{font-size:48px}


  
	
	
.bannerdesc a{   font-size: 3.5vw;}
	.bannerdesc p{font-size:25px}
	.featured-slides h2 {
 font-size: 3.3vw;
    max-width: 48vw;
  
}
	
	

	
	
	.header-widget-area{width:100%}
.whatscel{margin-left:1em}
	.headermail img{margin-top:5px}
	/*logo*/
	
	.entry-title{font-size:30px}
	/*menu*/
	.mobmenu{display:none}
	.nav-primary { max-height: 100%;overflow:visible ;position:relative;top:0; height:73px;display: flex;    align-items: center;justify-content:center;	}
	
 
	
	
	
	
	
	
	
	
	
	/*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;}
	.nav-primary .wrap>ul{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;position:relative;z-index:10;background: none; }
	.nav-primary li, .nav-primary li a{font-size:20px; }
	
	
	
	.nav-primary .wrap > ul > li {display:inline-block;padding: 2px 15px;width:120px}
	.nav-primary .wrap > ul > li:first-child {border-left: none;}
	
				
	
				.nav-primary li:hover > ul {display:block;}
			
			.nav-primary li ul li {	position:relative;}
			
			.nav-primary li ul li ul {right:-140px;	top:0px;}
	
 
	 

	
	
	.servicio h3{font-size:39px}
	#servicioseccion h2{font-size:60px}
	
	
	#nosotros{flex-direction:row}
	#nosotros > div{width:50%}
	
	#valoresint {flex-direction:row;}
	
	
	#soluciones > img, #soluciones > div{width:50%}
	#solucionesint h2{font-size:50px}
	
	#titulomejora h2{font-size:50px;}
	#mejoraobjetivo{margin:60px auto}
	
	
	#clientesint h2 {font-size:50px;}
	
	
	
	#featured-post-2 .widget-wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 1200px;
  justify-content: space-around;
}
	
#home-block5 .entry {
  
        margin-bottom: 30px;
       
    max-width:525px;
 
	}

  

    /* 2. Contenedor de la derecha (Título + Texto + Botón) */
    /* Para que el título y el texto se apilen, ambos van a la columna 2 */
    
    #home-block5 .entry-header {
        grid-column: 2;
        padding: 20px; /* Padding superior y lateral */
        text-align: center;
		box-sizing:border-box
		
    }

    #home-block5 .entry-title {
        margin: 0;
        font-size: 1.4rem;
        font-weight: 800;
        text-transform: uppercase;
        color: #1a1a1a;
		grid-area: 1 / 2 / 2 / 3;
    }

    #home-block5 .entry-content {
        grid-column: 2;
        padding: 20px 40px 40px 40px;
        display: flex;
        flex-direction: column;
        justify-content: space-between; /* Empuja el botón al final */
        height: 100%;
		grid-area: 2 / 2 / 3 / 3;
    }

    #home-block5 .entry-content p {
        font-size: 1rem;
        line-height: 1.5;
        color: #333;
        margin-bottom: 20px;
    }

    /* 3. El Botón */
    #home-block5 .more-link {
        align-self: flex-end; /* Alinea el botón a la derecha */
        background-color: #1e4ea1;
        color: white;
        padding: 12px 30px;
        text-decoration: none;
        font-weight: bold;
        border-radius: 5px;
        text-transform: uppercase;
    }
	#home-block5 .alignnone {
        display: block;
        width: 100%;
        /* Truco para el cuadrado perfecto */
       
        overflow: hidden;
		 grid-area: 1 / 1 / 3 / 2;
    }

    /* La imagen dentro del contenedor */
    #home-block5 .entry-image {
        width: 100%;
        height: 280px;
        /* Esto es lo más importante: evita que se deforme */
        object-fit: cover; 
        object-position: center;
    }
	
	
	.featured-image-class{margin-top:58px}
	
	
	
	
	#footerinfo{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-direction:column}
	
	.footer-widgets-1 h2{ font-size:50px}
	
	.footer-widgets-1 #custom_html-6{width:40%}
	.footer-widgets-1   #text-2{width:60%}
	
  
	#contacto{display: flex;    max-width: 1920px;    margin: 0 auto;    justify-content: flex-start;align-items:center}
 #contacto .mapafooter{width:56vw}
	.formacontacto{margin-left:6vw}
	
	#contactoint{ flex-direction:row-reverse}
	#contactus h2{font-size:50px}
	 
 
	
	#info{margin-left: 15px;}
	
	#contactus{flex-direction:row-reverse}
	
.page .entry-header h1{font-size:50px} 
	
 #hechopor {
    margin-right: -10px;
  }
	 #hechopor::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style:
solid;
    border-width:
0 0 64px 21px;
    border-color:
transparent transparent transparent #292A2A;
    left: 0;
    bottom: 0;
  }
	#footerinfo{display:flex;justify-content:center;flex-wrap:nowrap;flex-direction:column}
.footerinfo{max-width:745px; }	
	
	.footerlogo {  border-right:solid 1px #fff;}
	


	
	
	@media screen and (min-width: 1920px) {	
	
	
/*	.nav-primary li, .nav-primary li a{ font-size: 20px }*/
	 
		
		#presencia h2{font-size:50px}
		

	}
	

	
	@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  3s 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  3s 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;
}