body {
	font-family: 'Ubuntu', sans-serif;
	font-weight: lighter;
	color: #222;
}
.HomeBackground {
    position: relative;
	width: 100vw;
	height:100vh;
    background-image: url('../media/la_moraleja.jpg');
	background-repeat: no-repeat;
    background-attachment: fixed;
	background-size: cover;
    background-position: center;
}
.HomeArrow {
    position: relative;
    top: calc(100vh - 12%);
    cursor: pointer;
    text-align: center;
    color: #FFF;
    animation-duration: 2s;
}

.HomeArrow:hover {
    color: #58aa99;
    animation-name: bounce;
}
.Grup {
    margin: 1.5rem auto;
    position: relative;
}
.Grup-img {
    background-image: url('../media/BLBlogo.png');
    background-repeat: no-repeat;
	background-size: contain;
    background-position: center;
    height: 25rem;
    margin: 0 auto;
}
.Grup-title {
    position: relative;
    margin: 1rem auto;
    text-align: right;
    right: 0;
}

.Grup-title > h2 {
    position: relative;
    font-size: 5vh;
    font-weight: normal;
    margin-top: .5rem;
}
.Grup-title > p {
    margin: .7rem 0; 
    text-align: left;
}
.Proyect {
    background-image: url('../media/dolmen.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-position-x: center;
    color: #FFF;
 
}

.Proyect-title > h2 {
    position: relative;
    font-size: 5vh;
    font-weight: normal;
    margin-top: 1rem;
}
.Proyect-icons{
    margin: 2rem auto;
}
.Proyect-iconsItem, .Proyect-iconsItem:visited {
    margin: 1rem auto;
    text-decoration: none;
    color: #FFF;
   
}
.Proyect-iconsItem > img {
    height: 8rem;
    margin: auto;
    cursor: pointer;
}
.Proyect-iconsItem > figcaption  {
    text-align: center;
    margin: auto;
}
.Proyect-iconsItem > figcaption > h4  {
    font-size: 1.1rem;
    margin: .5rem 0 .2rem;
    text-align: center;
}
.Unifamiliares {
    background-image: url('../media/Recurso5.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.Residenciales {
    background-image: url('../media/Reresidencial.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.Corporativos {
    background-image: url('../media/Recurso6.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center
}
.Vialidad {
    background-image: url('../media/Recurso7.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.Comunitarios {
    background-image: url('../media/Recurso8.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.Mapa {
    background-image: url('../media/Recurso9.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.OnConstruccion {
    margin: 2rem auto ;
}

.OnConstruccion-box {
    cursor: pointer;
    margin: .5rem  .3rem;
}
.OnConstruccion-box img {
    object-fit: cover;
    object-position: center;
    height: 16rem;
    margin: 1rem  auto 0;
}
¿
.OnConstruccion-title > h2 {
    position: relative;
    font-size: 5vh;
    font-weight: normal;
    margin-top: 1rem;
    text-align: right;
}
.OnConstruccion-title > p {
    margin: 1rem 0; 
    text-align: left;
}

.OnConstruccion-box > h3 {
    margin: 1rem 0; 
    text-align: left;
}
.OnConstruccion-text > p {
    margin: .5rem 0; 
    font-size: 1.1rem;
}

.Description {
    margin: .5rem 0; 
    font-size: 1.1rem;
    line-height: 1.5rem;
}

.Ubicacion {
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 1.8rem;
    color:#333;
}

.Status {
    padding: .5rem 0;
    color: #FFF;
    background-color: #58aa99;
    font-weight: bold;
    margin: -.3rem 0 .5rem;
    font-size: 1.3rem;
    text-align: center
}
.Clase {
    font-size: 1.1rem;
    line-height: 1.8rem;
}
.botton {
    padding: 1rem;
    margin: 1rem 0;
    text-align: center;
    text-decoration: none;
    background-color: transparent;
    border:  thin solid #9d8b59;
    font-family: 'Ubuntu';
    color:#333;
    font-weight: bold;
}
.botton:hover {
    transform: skewX(-10deg);
}
.OnConstruccion-textRight {
    text-align: right;
}
.OnConstruccion-textRight > p {
    margin: .5rem 0; 
}

.Promo {
    position: relative;
    color: #333;
    padding: 2rem 0 ;
}

.Promo-title > h2 {
    font-size: 5vh;
    font-weight: normal;
    margin-top: 1rem;
}
.Promo-container  {
    margin-top: 1rem;
    position: relative;
}

.Promo figure {
    height: 25rem ;
    margin: 1rem auto;
}

.Promo figure img {
    object-fit: cover;
    object-position: top center !important;
    height: inherit;
 
}

.Promo-text {
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(60, 60, 59, .7);
    height: inherit;
    color: #FFF;
    text-align: center;
}

.Promo-text-agor {
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255, 255, 255, .7);
    height: inherit;
    color: #333;
    text-align: center;
} 

.Logo-promo {
    height: 7rem !important;
    margin: auto;
    object-fit: contain !important;
}

.Promo-text p {
    margin: auto;
}
.Promo-text span    {
    font-weight: bold;
    font-size: 1.2rem;
}

.Promo-text-agor span    {
    font-weight: bold;
    font-size: 1.2rem;
}

.Promo-arrow {
    position: absolute;
    top: 45%;
}

.Arrow-right, .Arrow-left {
    color: #bbb;
    margin: 0 .5rem;
}

.Arrow-right:hover, .Arrow-left:hover {
    color: #333;
}

.Arrow-right {
    position: absolute;
    right: 0;
}
.Dont {
    margin: auto;
    left: 45%;
}

.dot {
  cursor:pointer;
  height: 13px;
  width: 13px;
  margin: .5rem .3rem 0;
  background-color: #bbb;
  border-radius: 50%;
  transition: background-color 0.6s ease;
}
.active, .dot:hover {
  background-color: rgba(88, 170, 153, .7);
}

.Comming {
    margin: 2rem auto 0;
}

.Comming-title > h2 {
    position: relative;
    font-size: 3.3vh;
    font-weight: normal;
    margin-top: 1rem;
    text-align: right;
}
.Comming-container {
    margin: 1.5rem auto 0;
}
.Comming-map {
  display: block;
  height: 650px;
}
.Contact {
    background-color: #333;
    color: #FFF;
    padding: 2rem 0 ;
}

.Contact-title > h2 {
    position: relative;
    font-size: 5vh;
    font-weight: normal;
    margin-top: 1rem;
}
.Footer-form {
    margin: 2rem auto 1rem;
    padding: 1rem;
    background-color: #FFF;
    border-radius: 1rem;
    color: #222;
}
.Footer-form form {
    margin: 1rem auto;
}
.form-group > input {
	height: 2rem;
	margin: .5rem 0;
    padding: .5rem;
	color: rgba(60, 60, 59, .6); 	
	border: 1px solid #58aa99;
	outline: 0;
    font-family: 'ubuntu';
}
.form-group > textarea {
	height: 8rem;
	margin: .5rem 0;
    padding: .5rem;
	font-family: 'ubuntu';
	color: rgba(60, 60, 59, .6); 	
	border: 1px solid #58aa99;
	outline: 0;
}
.Footer-form  a {
    display: block;
	background-color: #58aa99;
	color: #FFF;
	padding: 1rem;
	text-align: center;
}

.input-group-addon {
    padding: .5rem;
  
    font-weight: 400;
    line-height: 1;
    color: #bbb;
    text-align: center;
}

.has-error .input-group-addon {
    color: #a94442;
    
}

.help-block {
    display: block;
    margin-top: 5px;
    margin-bottom: 10px;
    color: #a94442;
    background-color: #f2dede;
    padding: .5rem;
}

.alert-success {
    background-color: #dff0d8;
    color: #3c763d;
    padding: .5rem;
}
.Footer-ubication {
    margin-bottom: 1rem;
    padding: 1rem;
}

.Footer-Logo {
    background-image: url('../media/BLBlogo.png');
    background-repeat: no-repeat;
	background-size: contain;
    background-position: center;
    height: 12rem;
    margin: 0 auto;
}

.Footer-items { list-style: none;}

.Footer-tex {
    font-size: 1.3rem;
}

.boton {
    display: block;
    padding: .2rem;
    background-color: #58aa99;
    color: #FFF;
    text-decoration: none;
    font-size: .8rem;
    font-weight: bold;
    text-align: center;
}

.Footer-copy {
    margin: 1rem auto 0;
    text-align: center;
}

.Footer-copy a {
   color: #FFF;
   text-decoration: none;
}

.Footer-copy a:hover {
   color: #bbb;
}

.u-number {
    color: #d8d1bd;
    font-size: 3rem;
    transform: rotate(-90deg);
}
.u-line {
    position: relative;
    background-color: #58aa99;
    width: 6rem;
    height: .2rem;

}
.u-line-right {
    position: relative;
    background-color: #58aa99;
    width: 6rem;
    height: .2rem;
    margin-top: .4rem;
}
.u-line-up {
    position: relative;
    background-color: #58aa99;
    width: 6rem;
    height: .2rem;
    margin: 1rem 0;
}
.u-opacity {
    padding: 1rem;
    background-color: rgba(51, 51, 51, .79);
}
.u-hidden { display: none; }

.u-margin-top { margin-top: 6rem;}

.u-boton { 
    display: block;
    padding: .5rem;
    background-color: #58aa99;
    color: #FFF;
    text-decoration: none;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    border: none;
}

.u-boton:hover {
    cursor: pointer;
    background-color: #bbb;
    color: #333;
 
}

.Promociones-box img {
    object-fit: contain;
    object-position: top left;
}

@media screen and (min-width: 30em){ 
    .Promo-text {
        position: relative;
        background-color: rgba(60, 60, 59, 1);
        height: inherit;
        color: #FFF;
        text-align: center;
    }
    
    .Promo-text-agor {
        position: relative;
        background-color: rgba(255, 255, 255, 1);
        height: inherit;
        color: #333;
        text-align: center;
    } 
}


@media screen and (min-width: 48em){ 
    .Comming-title > h2 {
    font-size: 4vh;
    }

    .Footer-Logo {
    height: 8rem;
    background-position: left;
    margin: 0;
    
    }

    .Promo figure {
        height: 35rem ;
    }

    .Promo-titleSlider {
    margin-top: 0;
    }

    
}

@media screen and (min-width: 64em) {
    .Comming-title > h2 {
    font-size: 5vh;
}
	.desktop { display: block; }

    .mobile { display: none; }
    
    .Promo figure {
        height: 40rem ;
        object-position: center !important;
    }

    .Promo figure img{
        object-position: center !important;
    }
}

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0,-4px,0);
    transform: translate3d(0,-4px,0);
  }
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}