@font-face {	font-family: 'light';	src: url("light.woff") format("woff");	font-weight: normal;	font-style: normal;	font-display:swap;}

@font-face {	font-family: 'bold';	src: url("bold.woff") format("woff");	font-weight: normal;	font-style: normal;	font-display:swap;}

@font-face {	font-family: 'medium';	src: url("medium.woff") format("woff");	font-weight: normal;	font-style: normal;	font-display:swap;}


html,body{
width:100%;
	height:100%;
font-family: 'light';
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings:
    "wdth" 100; background-color: #f9f8f3;
}
	
* { margin: 0px;
padding: 0px; outline: 0;
}
iframe { display:block; border:none; }

.os-animation{
            opacity: 0;
 }  

.os-animation.animated{
            opacity: 1;
 }  
 
 *:focus { 
    outline: none; 
} 
 
h1,h2,h3,h4,h5,h6{ display:inline !important; font-weight: 400;}


#elhead{ width:100%; text-align:center; height:120px; top:0px; left:0; position:absolute; background-color: transparent; z-index:9999;}

.home{position:relative; top: 0; left: 0; width:100%;height:100vh;min-height:700px;overflow:hidden;align-items:center; z-index: 1;}
.home__bg{position:absolute;inset:0;background:url("../imagenes/home1.jpg")no-repeat center center; background-size: cover;transform:scale(1);animation:zoomHome 14s ease-in-out infinite alternate;}
.home::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.45);}
.home__inner{position:relative;z-index:2;width:1600px;margin:0 auto;height:100%;display:flex;flex-direction:column;justify-content:center;}

@media (max-width:1620px){.home__inner{width:1400px;}}
@media (max-width:1420px){.home__inner{width:1200px;}}
@media (max-width:1220px){.home__inner{width:1100px;}}
@media (max-width:1120px){.home__inner{width:90%;}.home__inner{ text-align: center;}}

.home__content{max-width:790px;color:#fff;}
.home__content h1{font-size:55px;font-weight:300;line-height:1.15;margin-bottom:28px;}
.home__content p{font-size:18px;line-height:1.6;margin-bottom:35px;opacity:.85;}
.home__btn{display:inline-block;padding:14px 26px;border:1px solid #fff;color:#fff;text-decoration:none;font-size:14px;letter-spacing:1px;transition:.3s ease;}
.home__btn:hover{background:#fff;color:#000;}
.home__bottom{position:absolute;bottom:0px;left:0;width:100%;}
.home__line{height:1px;background:rgba(255,255,255,.3);margin-bottom:18px;}
.home__footer{display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:13px;opacity:.7;}
.home__footer img{width:45px;transition:.3s ease; padding-bottom: 5px;}
.home__footer img:hover{transform:translateY(4px);}

.home__content.fade-out{opacity:0;}
.home__content.fade-in{opacity:1;}

.home__content{
transition:opacity .7s ease;
}

.lalis{position:absolute;bottom:65px;left:0;width:100%;height:1px;background:rgba(255,255,255,.35);z-index:2;}

@keyframes zoomHome{from{transform:scale(1);}to{transform:scale(1.13);}}

@media (max-width:920px){.home__content h1{font-size:33px;}}

.redes{transition:all 1s;-moz-transition:all 1s;-webkit-transition:all 1s;-o-transition:all 1s; opacity: 1;}
.redes:hover{ opacity: .7;}   

#separador1{background:url("../imagenes/separador.jpg")  no-repeat center center fixed;background-size:cover; width:100%; height:600px; }


.texto1{ color:#1a1a1a; font-size:15px; line-height: 100%; text-transform: uppercase; }
.texto2{ color:#1a1a1a; font-size:55px; line-height: 100%; }
.texto3{ color:#1a1a1a; font-size:21px; line-height: 150%; }
.texto1a{ color:#e8e5e0; font-size:15px; line-height: 100%; text-transform: uppercase; }
.texto2a{ color:#e8e5e0; font-size:55px; line-height: 100%; }
.texto3a{ color:#e8e5e0; font-size:21px; line-height: 150%; }.texto4{ color:#e8e5e0; font-size:50px; line-height: 140%; }
.texto5{color:#e8e5e0;font-size:50px;line-height:140%;position:relative;display:inline-block;}
.texto5::after{content:"";position:absolute;left:0;bottom:-10px;width:100%;height:2px;background:#e8e5e0;}


#arriba, #arriba1,#arriba2,#arriba3,#arriba4{display:inline-block;vertical-align:top;}
#arriba{width:1600px;vertical-align:middle; text-align:center;}
#arriba1{width:200px;margin-right:-4px; text-align:left;  margin-top:30px;}
#arriba2{width:1200px;margin-right:-4px;text-align:center;  margin-top:30px;}
#arriba3{width:200px;margin-right:-4px;text-align:left;  margin-top:30px;}

#manifiesto{ width: 100%; background-color: #f9f8f3; text-align: center; display: block;}

#mani, #mani1,#mani2,#mani3,#mani4,#mani5,#mani6{display:inline-block;vertical-align:top;}
#mani{width:1600px;vertical-align:middle; text-align:center;}
#mani1{width:100%;margin-right:0px; text-align:left; }
#mani2{width:50%;margin-right:-4px;text-align:left; margin-top: 50px;}
#mani3{width:50%;margin-right:-4px;text-align:left; margin-top: 50px;}
#mani4{width:50%;margin-right:-4px;text-align:left; margin-top: 230px;}
#mani5{width:50%;margin-right:-4px;text-align:left; margin-top: 0px;}
#mani6{width:50%;margin-right:-4px;text-align:left; margin-top: 0px;}


.manifiestoimagenes{width:100%;padding:70px 0;}
.manifiestoimagenes__inner{width:1600px;margin:0 auto;}
.mimg{overflow:hidden;}
.mimg img{width:100%;height:auto;display:block;transform:scale(1);animation:zoomM1 13s ease-in-out infinite alternate;}
@keyframes zoomM1{from{transform:scale(1);}to{transform:scale(1.08);}}

@media(max-width:1620px){.manifiestoimagenes__inner{width:1400px;}}
@media(max-width:1420px){.manifiestoimagenes__inner{width:1200px;}}
@media(max-width:1220px){.manifiestoimagenes__inner{width:1100px;}}
@media(max-width:1120px){.manifiestoimagenes__inner{width:100%;}.manifiestoimagenes{padding:40px 0;}}


.bannerparallax{position:relative;width:100%;aspect-ratio:1920/700;overflow:hidden;background:url("../imagenes/banner.jpg")no-repeat center center fixed; background-size: cover;}


#historia{ width: 100%; background-color: #524a48; text-align: center; display: block;}

.histo{ width: 1600px; display: inline-block; text-align: left;}

.lalis2{width:100%;height:1px;background:rgba(255,255,255,.35);z-index:2;}

.historiaimagenes{width:100%;padding:70px 0;}
.historiaimagenes__inner{width:1600px;margin:0 auto;display:grid;grid-template-columns:541fr 1051fr;gap:40px;}
@media(max-width:1620px){.historiaimagenes__inner{width:1400px;}}
@media(max-width:1420px){.historiaimagenes__inner{width:1200px;}}
@media(max-width:1220px){.historiaimagenes__inner{width:1100px;}}
@media(max-width:1120px){.historiaimagenes__inner{width:100%;}.historiaimagenes{padding:40px 0;}}

.himg{overflow:hidden;}
.himg--1 img{width:100%;height:auto;display:block;transform:scale(1);animation:zoomH1 12s ease-in-out infinite alternate;}
.himg--2 img{width:100%;height:auto;display:block;transform:scale(1);animation:zoomH2 14s ease-in-out infinite alternate;}
@keyframes zoomH1{from{transform:scale(1);}to{transform:scale(1.09);}}
@keyframes zoomH2{from{transform:scale(1);}to{transform:scale(1.1);}}

.invis{ display: block;}

#proyectos{ width: 100%; background-color: #f9f8f3; text-align: center; display: block;}

.goverlay{background:rgba(0,0,0,.7)!important;}



@keyframes captionfade{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}

.proyectos{width:100%;padding:80px 0;}
.proyectos__inner{width:1600px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;}

.proyecto{display:block;color:#fff;text-decoration:none;}
.proyecto__img{position:relative;overflow:hidden;aspect-ratio:622/824;}
.proyecto__img img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1);transition:transform 1.5s ease;}
.proyecto__num{position:absolute;top:20px;left:20px;font-size:28px;color:#fff;z-index:3;}
.proyecto__overlay{position:absolute;inset:0;background:rgba(0,0,0,0);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;transition:background .4s ease;opacity:0;z-index:2;}
.proyecto__overlay h3{font-size:36px;margin-bottom:10px;font-weight:300;}
.proyecto__overlay p{font-size:16px;max-width:320px;}
.proyecto:hover .proyecto__img img{transform:scale(1.08);}
.proyecto:hover .proyecto__overlay{background:rgba(0,0,0,.7);opacity:1;}
.proyecto__info{margin-top:14px;font-size:14px;color:#1a1a1a;line-height:1.5; text-align: left;}

@media(max-width:1620px){.proyectos__inner{width:1400px;}}
@media(max-width:1420px){.proyectos__inner{width:1200px;}}
@media(max-width:1220px){.proyectos__inner{width:1100px;}}
@media(max-width:1120px){.proyectos__inner{width:96%;}}
@media(max-width:820px){.proyectos__inner{width:90%;grid-template-columns:1fr;} .proyecto__overlay h3{font-size:30px;} .proyecto__info{text-align: center;}}


:root{--fancybox-accent-color:#f9f8f3;--fancybox-color:#f9f8f3;}

/*.fancybox__backdrop{background:rgba(0,0,0,.7)!important;}
.fancybox__toolbar{background:transparent;}
.fancybox__button{color:#f9f8f3;}
.fancybox__button:hover{opacity:.7;}
.fancybox__thumbs .carousel__slide{border:none!important;box-shadow:none!important;}
.fancybox__thumbs .carousel__slide img{border:2px solid transparent;transition:all .25s ease;}
.fancybox__thumbs .carousel__slide.is-nav-selected img{border:2px solid #f9f8f3;}
.fancybox__thumbs .carousel__slide:hover img{border:2px solid #f9f8f3;}
.fancybox__caption{color:#fff;text-align:center;font-size:16px;max-width:700px;margin:auto;padding:40px 30px 30px;line-height:1.6;background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,0));}
*/
.fancybox__content img{max-width:95vw;max-height:92vh;object-fit:contain;}
.fancybox__caption{
background:none!important;
padding:20px 0;
text-align:center;
color:#fff;
}

.proyectosdos{width:100%;padding:0px 0;}
.proyectosdos__inner{width:1600px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:40px;}
.proyectodos{display:block;color:#fff;text-decoration:none;}
.proyectodos__img{position:relative;overflow:hidden;aspect-ratio:464/361;}
.proyectodos__img img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1);transition:transform 1.5s ease;}
.proyectodos__num{position:absolute;top:18px;left:18px;font-size:24px;color:#fff;z-index:3;}
.proyectodos__overlay{position:absolute;inset:0;background:rgba(0,0,0,0);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;transition:background .4s ease;opacity:0;z-index:2;}
.proyectodos__overlay h3{font-size:28px;margin-bottom:8px;font-weight:300;}
.proyectodos__overlay p{font-size:14px;max-width:260px;}
.proyectodos:hover .proyectodos__img img{transform:scale(1.08);}
.proyectodos:hover .proyectodos__overlay{background:rgba(0,0,0,.7);opacity:1;}
.proyectodos__info{margin-top:12px;font-size:15px;color:#3d3d3d;line-height:1.5;text-align:left;}

@media(max-width:1620px){.proyectosdos__inner{width:1400px;}}
@media(max-width:1420px){.proyectosdos__inner{width:1200px;}}
@media(max-width:1220px){.proyectosdos__inner{width:1100px;}}
@media(max-width:1120px){.proyectosdos__inner{width:96%;grid-template-columns:repeat(2,1fr);}}
@media(max-width:820px){.proyectosdos__inner{width:90%;grid-template-columns:1fr;} .proyectodos__info{text-align:center;}}


#contacto{ width: 100%; background-color: #f9f8f3; text-align: center; display: block;}

.lalis2{width:100%;height:1px;background:#ccccc8;z-index:2;}

#abajo, #abajo1,#abajo2,#abajo3,#abajo4,#abajo5,#abajo6,#abajo7,#abajo8,#abajo9{display:inline-block;vertical-align:top;}
#abajo{width:1600px;vertical-align:middle; text-align:center;}
#abajo1{width:200px;margin-right:-4px; text-align:left;  margin-top:30px;}
#abajo2{width:1200px;margin-right:-4px;text-align:center;  margin-top:30px;}
#abajo3{width:200px;margin-right:-4px;text-align:left;  margin-top:30px;}
#abajo4{width:200px;margin-right:-4px; text-align:left;  margin-top:30px;}
#abajo5{width:100%;margin-right:0px;text-align:center;  margin-top:30px;}
#abajo7{width:200px;margin-right:-4px; text-align:left;  margin-top:60px;}
#abajo8{width:1200px;margin-right:-4px;text-align:center;  margin-top:60px;}
#abajo9{width:200px;margin-right:-4px;text-align:right;  margin-top:50px;}


.contactame{width:100%;padding:0;box-sizing:border-box;}
.contactame__inner{width:100%;display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start;}
.contactame__info{text-align:left;}
.contactame__texto{font-size:18px;line-height:1.6;margin-bottom:40px;color:#2b2b2b;}
.contactame__telefono{font-size:18px;margin-bottom:10px;color:#2b2b2b;}
.contactame__mail{font-size:18px;color:#2b2b2b;text-decoration:underline;}
.contactame__form{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.contactame__input{width:100%;padding:18px;border:1px solid #2b2b2b;background:transparent;font-size:15px;box-sizing:border-box;}
.contactame__input--full{grid-column:1 / 2;}
.contactame__btn{background:#151515;color:#fff;border:none;padding:18px;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;}
.contactame__btn:hover{background:#000;}

@media(max-width:1120px){.contactame__inner{grid-template-columns:1fr;gap:40px;}.contactame__info{text-align:center;}}
@media(max-width:820px){.contactame__form{grid-template-columns:1fr;} .contactame__input,.contactame__input--full{text-align:center}}


#abajo9 img{width:45px;transition:.3s ease; padding-bottom: 5px;}
#abajo9 img:hover{transform:translateY(-4px);}


@media screen and (max-width:1620px)
 {
#mani,.histo{width:1400px;}
     
#arriba{width:1400px;}
#arriba2{width:1000px;}
     
#abajo{width:1400px;}
#abajo2{width:1000px;}
#abajo8{width:1000px;}
     
}

@media screen and (max-width:1420px)
 {
#abajo{width:1200px;}
#abajo2{width:800px;}
#abajo8{width:800px;}     
     
.texto4,.texto5{font-size:45px;}
     
#mani,.histo{width:1200px;}     
     
#arriba{width:1200px;}
#arriba2{width:800px;}
}


@media screen and (max-width:1220px)
 {
#abajo{width:1100px;}
#abajo2{width:700px;}
#abajo8{width:700px;}   
     
#mani,.histo{width:1100px;}  
#mani4{margin-top: 260px;}
.texto2,.texto2a{font-size:50px;}   
     
#arriba{width:1100px;}
#arriba2{width:700px;}
}


@media screen and (max-width:1120px)
 {
     
#abajo{width:90%;vertical-align:middle; text-align:center;}
#abajo1{width:100%;margin-right:0px; text-align:center;  margin-top:30px;}
#abajo2,#abajo3{ width:100%;margin-right:0px; text-align:center;  margin-top:30px;}
#abajo4{width:200px;margin-right:-4px; text-align:center;  margin-top:30px;}
#abajo7{width:100%;margin-right:0px; text-align:center;  margin-top:30px; }
#abajo8{width:100%;margin-right:0px; text-align:center;  margin-top:30px;}
#abajo9{width:100%;margin-right:0px; text-align:center;  margin-top:30px;}     
     
.invis{ display: none;}     
     
.texto4,.texto5{font-size:35px;}     
     
#mani,.histo{width:90%;} 
#mani2{width:100%;margin-right:0px;text-align:center; margin-top: 50px;}
#mani3{width:100%;margin-right:0px;text-align:center; margin-top: 50px;}
#mani4{width:100%;margin-right:0px;text-align:left; margin-top: 0px;}
#mani5{width:100%;margin-right:0px;text-align:center; margin-top: 40px;}
#mani6{ display: none;}
     
.histo{ text-align: center;}
     
.infotext1{ width: 100%; text-align: center;}
.infotext2{ width: 100%; max-width: 1120px; text-align: center;}     
     
     
#arriba{width:1100px;}
#arriba2{width:700px;}
}


@media screen and (max-width:920px)
 { 
#mani2{width:90%;}     
}


@media screen and (max-width:820px)
 { 
.texto4,.texto5{font-size:30px;}     
 .texto5::after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:#e8e5e0;}
     
.bannerparallax{position:relative;width:100%;aspect-ratio:1920/800;overflow:hidden;background:url("../imagenes/banner.jpg")no-repeat center center ; background-size: cover;}
     
.texto2,.texto2a{font-size:45px;} 
}

@media screen and (max-width:620px)
 {
.texto2,.texto2a{font-size:40px;} 
}

@media screen and (max-width:520px)
 {
.texto2,.texto2a{font-size:35px;} 
}

#menumovil{ display:none;}
.button_container {
  position: absolute;
  top: -20px;;
  right: 0px;
  height: 0px;
  width: 35px;
  cursor: pointer;
  z-index: 9999;
  -webkit-transition: opacity .25s ease;
  -moz-transition: opacity .25s ease;
  transition: opacity .25s ease;
}
.button_container:hover {
  opacity: .7;
}
.button_container.active .top {
  -webkit-transform: translateY(11px) translateX(0) rotate(45deg);
  -moz-transform: translateY(11px) translateX(0) rotate(45deg);
          transform: translateY(11px) translateX(0) rotate(45deg);
  background: #ffffff;
}
.button_container.active .middle {
  opacity: 0;
  background: #ffffff;
}
.button_container.active .bottom {
  -webkit-transform: translateY(-11px) translateX(0) rotate(-45deg);
  -moz-transform: translateY(-11px) translateX(0) rotate(-45deg);
          transform: translateY(-11px) translateX(0) rotate(-45deg);
  background: #ffffff;
}
.button_container span {
  background: #ffffff;
  border: none;
  height: 5px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .35s ease;
  -moz-transition: all .35s ease;
  transition: all .35s ease;
  cursor: pointer;z-index: 9999;
}
.button_container span:nth-of-type(2) {
  top: 11px;
}
.button_container span:nth-of-type(3) {
  top: 22px;
}

.overlay {
  position: fixed;
  background-color:rgba(0,0,0,0.9);
    top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .35s, visibility .35s, height .35s;
  -moz-transition: opacity .35s, visibility .35s, height .35s;
  transition: opacity .35s, visibility .35s, height .35s;
  overflow: hidden;
}
.overlay.open {
  opacity: 1;
  visibility: visible;
  height: 100%;
}
.overlay.open li {
  -webkit-animation: fadeInUp .8s ease forwards;
  -moz-animation: fadeInUp .8s ease forwards;
          animation: fadeInUp .8s ease forwards;
  -webkit-animation-delay: .35s;
  -moz-animation-delay: .35s;
          animation-delay: .35s;
}
.overlay.open li:nth-of-type(2) {
  -webkit-animation-delay: .4s;
  -moz-animation-delay: .4s;
          animation-delay: .4s;
}
.overlay.open li:nth-of-type(3) {
  -webkit-animation-delay: .45s;
  -moz-animation-delay: .45s;
          animation-delay: .45s;
}
.overlay.open li:nth-of-type(4) {
  -webkit-animation-delay: .50s;
  -moz-animation-delay: .50s;
          animation-delay: .50s;
}
.overlay nav {
  position: relative;
  height: 70%;
  top: 50%;
  -webkit-transform: translateY(-35%);
  -moz-transform: translateY(-35%);
          transform: translateY(-35%);
  
  text-align: center;
  margin-right:0px;
}
.overlay ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  height: 100%;
}
.overlay ul li {
  display: block;
  min-height: 70px;
  position: relative;
  opacity: 0;
}
.overlay ul li a {
  display: block;
  position: relative;
  color: #ffffff;
  text-decoration: none;
  overflow: hidden;
  font-size: 40px;
  opacity:1;  line-height:120%;
}
.overlay ul li a:hover,a:after, .overlay ul li a:focus:after, .overlay ul li a:active:after {
  width: 100%;font-size: 40px;
  opacity:.5;-webkit-transition: .25s;
  transition: .25s;
}
.overlay ul li a:after {
  opacity:.9;-webkit-transition: .25s;
  transition: .25s;
  
}

@-webkit-keyframes fadeInRight {
   0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInRight {
 0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}


@media screen and (max-width:1120px){

#arriba{width:90%;vertical-align:middle; text-align:left; }
#arriba1{width:100%;margin-right:0px;  text-align:left;}
#arriba2,#arriba3,#arriba4{display:none;}

#menumovil{ z-index:9999;position: absolute;top: 50px;
  right: 5%;
  height: 27px;
  width: 35px; display:block;}

}



.menuno { margin-right: 25px;
 font-size: 16px; color: #FFFFFF; text-decoration: none;transition:all 1s;-moz-transition:all 1s;-webkit-transition:all 1s;-o-transition:all 1s; opacity: 1;
}

.menuno:hover {
   opacity: .6;
}


.menudo { line-height: 2;
 font-size: 16px; color: #FFFFFF; text-decoration: none;transition:all 1s;-moz-transition:all 1s;-webkit-transition:all 1s;-o-transition:all 1s; opacity: 1;
}

.menudo:hover {
   opacity: .6;
}



.menuno2 { margin-right: 25px;
 font-size: 16px; color: #1a1a1a; text-decoration: none;transition:all 1s;-moz-transition:all 1s;-webkit-transition:all 1s;-o-transition:all 1s; opacity: 1;
}

.menuno2:hover {
   opacity: .6;
}


.menudo2 { line-height: 2;
 font-size: 16px; color: #1a1a1a; text-decoration: none;transition:all 1s;-moz-transition:all 1s;-webkit-transition:all 1s;-o-transition:all 1s; opacity: 1;
}

.menudo2:hover {
   opacity: .6;
}

