/* estilos del sitio web */

/*fuentes y fuentes CDN*/
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700');

:root{
    --negro: #000000;
    --blanco: #ffffff;
    --gris: #6e6a69;
    --naranja: #ee9409;
}

/*estilos generales*/
html, body{opacity:0}
html{ position:relative; min-height:100%; padding-bottom: 60px; }
body{ padding-top:0px; outline: none; font-family: 'Open Sans', sans-serif; color: var(--gris); }
body a { color: inherit; }
body a:link,a:visited,a:hover,a:active{ text-decoration:none; color: inherit; }
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; -moz-appearance:none;}
.required{border:1px solid red !important;}
.row{margin-left:0px; margin-right:0px}
.row-no-padding [class*="col-"] { padding-left: 0 !important; padding-right: 0 !important;  }
:focus { outline: none; }
.centrar{display: flex; justify-content: center; align-items: center;}
.centrar {display: flex; justify-content: center; align-items: center;}
.centrar-lg {display: flex; justify-content: center; align-items: center;}
.error{border:1px solid #E37979 !important;}
.bg{-webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-position: center; background-repeat: no-repeat; }
.bg-100{-webkit-background-size: contain; -moz-background-size: contain; -o-background-size: contain; background-size: contain; background-position: center; background-repeat: no-repeat;  }
.contenedor-principal{ width:100%; max-width: 2600px; margin: 0 auto; padding-top: 80px;}
.contenedor{width:90%; max-width: 1600px; margin: 0 auto; }
.clear { clear: both; }
.rl{ position: relative; padding: 30px 0;}
.line:before{content: ''; width: 80%; height: 2px; background-color: transparent; border-bottom: 1px solid var(--naranja); position: absolute; bottom: 0; left: 0; right: 0; margin: auto; }
.swiper-button-prev { background-image: url(../img/formas/prev.svg)!important; width: 14px!important; height: 24px!important; background-repeat: no-repeat!important; background-position: center!important; background-size: cover!important; z-index: 1!important; }
.swiper-button-next { background-image: url(../img/formas/next.svg)!important; width: 14px!important; height: 24px!important; background-repeat: no-repeat!important; background-position: center!important; background-size: cover!important; z-index: 1!important; }
.ms-nav-prev { background-image: url(../img/formas/prev.svg)!important; width: 13px!important; height: 30px!important; background-repeat: no-repeat!important; background-position: center!important; background-size: cover!important; z-index: 1!important; }
.ms-nav-next { background-image: url(../img/formas/next.svg)!important; width: 13px!important; height: 30px!important; background-repeat: no-repeat!important; background-position: center!important; background-size: cover!important; z-index: 1!important; }

@media screen and (max-width: 1199px) { 
    .centrar-lg { display: inherit; }
    .centrar-md { display: flex; justify-content: center; align-items: center;}
}
@media screen and (max-width: 991px) { 
    .centrar-md { display: inherit; }
    .centrar-sm { display: flex; justify-content: center; align-items: center;}
}
@media screen and (max-width: 767px) { 
    html{ padding-bottom: 80px; }
    .centrar-sm { display: inherit; }
    .centrar-xs {display: flex; justify-content: center; align-items: center;}
} 
/* Menu */
header { position: fixed; width: 100%; margin: auto; z-index: 500; background-color: #ffffff;}
header .cabecera { width: 90%; max-width: 1600px; margin: 0 auto; height: 80px;  border-bottom: 1px var(--naranja) solid; position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; align-items: center; z-index: 500; }
header .cabecera .logo > svg #svglogo { fill: var(--gris); -webkit-transition: all .35s ease; transition: all .35s ease; }
header .cabecera .hamburger { cursor: pointer; height: auto; position: absolute; right: 0; top: 26px; width: 30px; transition: all .2s ease-out; }
header .cabecera .hamburger .raya { width: 100%; height: 2px; background: var(--gris); margin-bottom: 6px; transition: all 0.3s; backface-visibility: hidden; }
header .cabecera ul.menu-escritorio { display: flex; align-items: center; padding-inline-start: 0; list-style: none; }
header .cabecera ul.menu-escritorio > li { font-weight: 300; font-size: 14px; color: var(--gris); }
header .cabecera ul.menu-escritorio > li:not(:last-child) { margin-right: 30px; }
.menu { width: 396px; height: 100%; min-height: 700px; padding: 10px; margin: 0; background-color: #ffffff; overflow: hidden; position: fixed; top: 0; right: 0; bottom: 0; transform: translate3d(0, 0, 0); transform: translateX(100%); will-change: transform; transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); z-index: 2; -webkit-transform: translateX(100%); -moz-transform: translateX(100%); -ms-transform: translateX(100%); -o-transform: translateX(100%); -webkit-transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); -moz-transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); -ms-transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); -o-transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
.menu .contenido { margin-top: 40%; padding-left: 60px; }
.menu ul { list-style: none; padding: 0; }
.menu ul > li  { font-size: 32px; text-transform: capitalize; letter-spacing: 1.3px; color: #888; font-weight: 300; -webkit-transform: translateY(50px); transform: translateY(50px); opacity: 0; }
.menu ul > li.active  { color: var(--negro); }
.menu-open .menu { box-shadow: 0 30px 60px 0 rgba(0, 0, 0, 0.25); }
.menu-open .menu ul > li { opacity: 1; margin-bottom: 10px; transform: translateY(0px); -webkit-transform: translateY(0px); -moz-transform: translateY(0px); -ms-transform: translateY(0px); -o-transform: translateY(0px); }
.menu-open .menu ul > li:nth-child(1) { transition: all 0.3s ease-out 0.1s; -webkit-transition: all 0.3s ease-out 0.1s; -moz-transition: all 0.3s ease-out 0.1s; -ms-transition: all 0.3s ease-out 0.1s; -o-transition: all 0.3s ease-out 0.1s; }
.menu-open .menu ul > li:nth-child(2) { transition: all 0.3s ease-out 0.2s; -webkit-transition: all 0.3s ease-out 0.2s; -moz-transition: all 0.3s ease-out 0.2s; -ms-transition: all 0.3s ease-out 0.2s; -o-transition: all 0.3s ease-out 0.2s; }
.menu-open .menu ul > li:nth-child(3) { transition: all 0.3s ease-out 0.3s; -webkit-transition: all 0.3s ease-out 0.3s; -moz-transition: all 0.3s ease-out 0.3s; -ms-transition: all 0.3s ease-out 0.3s; -o-transition: all 0.3s ease-out 0.3s; }
.menu-open .menu ul > li:nth-child(4) { transition: all 0.3s ease-out 0.4s; -webkit-transition: all 0.3s ease-out 0.4s; -moz-transition: all 0.3s ease-out 0.4s; -ms-transition: all 0.3s ease-out 0.4s; -o-transition: all 0.3s ease-out 0.4s; }

@media screen and (max-width: 1199px) { /* tablet */
    header .cabecera {  height: 70px; margin-top: 0; }
    /* Menu abierto */
    body.menu-open  { position: fixed; top: 0; left: 0; right: 0; margin: auto; }
    body.menu-open::after { content: ''; position: fixed; top: 0; left: 0; width: 100%;  height: 100%;  background-color: rgba(255, 255, 255, 0.74); transition: all 200ms ; -webkit-transition: all 200ms ; -moz-transition: all 200ms ; -ms-transition: all 200ms ; -o-transition: all 200ms ; z-index: 2; }
    .menu-open .menu { transform: translateX(0); -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); z-index: 10; }
    .menu-open header .cabecera .logo > svg #svglogo { fill: var(--gris); }
    .menu-open header .cabecera .hamburger .raya { background: var(--gris); }
    .menu-open header .cabecera .hamburger .raya__top { transform: rotate(45deg) translate(7px, 7px); -webkit-transform: rotate(45deg) translate(7px, 7px); -moz-transform: rotate(45deg) translate(7px, 7px); -ms-transform: rotate(45deg) translate(7px, 7px); -o-transform: rotate(45deg) translate(7px, 7px); }
    .menu-open header .cabecera .hamburger .raya__middle { opacity: 0; }
    .menu-open header .cabecera .hamburger .raya__bottom { transform: rotate(-45deg) translate(4px, -4px); -webkit-transform: rotate(-45deg) translate(4px, -4px); -moz-transform: rotate(-45deg) translate(4px, -4px); -ms-transform: rotate(-45deg) translate(4px, -4px); -o-transform: rotate(-45deg) translate(4px, -4px); } 
}
@media screen and (max-width: 767px) {  /* teléfono */
    /* header { background-color: mediumpurple; } */
    header .cabecera {  height: 60px; }
    header .cabecera .logo > svg { width: 120px; height: 40px; }
    header .cabecera .hamburger { top: 20px; }
    .menu { transform: translate(0, -100%); -webkit-transform: translate(0, -100%); -moz-transform: translate(0, -100%); -ms-transform: translate(0, -100%); -o-transform: translate(0, -100%); }
    .menu-open .menu { transform: translate(0, 0); -webkit-transform: translate(0, 0); -moz-transform: translate(0, 0); -ms-transform: translate(0, 0); -o-transform: translate(0, 0); z-index: 10; }
    .menu-open header { background-color: #f9f9f9; }
    .menu { width: 100%; height: 100%; min-height: initial; padding: 20px; padding-top: 100px; margin-top: initial; text-align: center; overflow: auto; }
    .menu .contenido { margin-top: 30%; padding-left: initial; min-height: 560px; overflow: auto; }
    .menu ul { text-align: center; }
    .menu ul > li { font-size: 28px; }
}

.titulo { font-weight: 300; font-size: 18px; color: var(--naranja); }
.inicio .seccion1 { padding: 30px 0; }
.inicio .seccion1 .swiper-slide { height: calc(100vh - 230px); min-height: 200px; }
.inicio .contenedor-slide { width:90%; max-width: 1600px; margin: 0 auto; margin-top: 20px; }
.taller .seccion1 { padding: 30px 0; }
.taller .seccion1 .titulo { margin-bottom: 20px; }
.taller .seccion1 .parrafo1 { max-width: 610px; margin-bottom: 80px; }
.contacto .seccion1 .titulo { text-align: center; padding: 40px 0; }
.contacto .seccion1 .row { display: flex; }
.contacto .seccion1 #mapa { margin: 10px; }

.inmobiliaria .seccion1, .portafolio .seccion1, .desarrollo .seccion1, .detalle .seccion1 { padding-bottom: 50px; }

.inmobiliaria .seccion1 .row { color: var(--gris); font-weight: 300; }
.inmobiliaria .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 50px; text-align: center; }
.inmobiliaria .seccion1 .titulo { padding-top: 50px; }
.inmobiliaria .seccion1 .titulo-servicio { font-weight: 300; font-size: 18px; color: var(--naranja); padding-top: 25px; }
.inmobiliaria .seccion1 .titulo-apartado { font-weight: 300; font-size: 14px; text-decoration: underline; margin-bottom: 30px; }
.inmobiliaria .seccion1 .informacion, .inmobiliaria .galeria { padding-top: 24px; }
.inmobiliaria .seccion1 .informacion { padding-bottom: 20px; }
.inmobiliaria .seccion1 .descripcion, .inmobiliaria .detalles, .inmobiliaria .servicios { padding-bottom: 30px; }
.inmobiliaria .seccion1 .boton { width: 110px; height: 46px; font-weight: 300; font-size: 16px; }
.modal-title { font-weight: 300; font-size: 20px; color: var(--naranja); }
.modal-body { padding: 20px; }
.modal-header { padding: 20px!important; border-bottom: none !important; }

.portafolio .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 50px; text-align: center; }
.portafolio .seccion1 [class*="col-"] { margin-bottom: 20px; }
.portafolio .seccion1 .item { height: 300px; }
.portafolio .seccion1 .item { position: relative; padding: 10px; }
.portafolio .seccion1 .item:hover::after { content: attr(data-content); width: 100%; color: var(--blanco); font-size: 24px; text-align: center; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background-color: rgba(238, 148, 9, .6); position: absolute; top: 0; left: 0; z-index: 1;  }

.desarrollo .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 50px; text-align: center; }
.desarrollo .seccion1 [class*="col-"] { margin-bottom: 20px; }
.desarrollo .seccion1 .item { height: 400px; margin: 0 15px 30px 15px; text-align: center; }
.desarrollo .seccion1 .item .item-a { height: 300px; position: relative; }
.desarrollo .seccion1 .item-a:hover::after { content: attr(data-content); color: var(--blanco); font-size: 24px; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background-color: rgba(238, 148, 9, .6); position: absolute; top: 0; left: 0; z-index: 1;  }
.desarrollo .seccion1 .item .nombre { margin-top: 10px; font-size: 16px; color: var(--negro); }
.desarrollo .seccion1 .item .tipo { margin-top: 5px; font-size: 14px; color: #999999; } 


.detalle .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 50px; text-align: center; }
.detalle .seccion1 .descripcion { margin: 20px 0; }
.detalle .seccion1 .row [class*="col-"] { margin-bottom: 20px; }
.detalle .seccion1 .row [class*="col-"] .item { width: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; }
.detalle .seccion1 .row .item.imiddle img { width: 100%;  }
.detalle .seccion1 .row .item.ifull img { width: 100%; }



form .textfield { display: block; width: 100%; height: 40px; padding: 4px 14px; display: flex; align-content: center; background-color: #ffffff; background-image: none; font-weight: 300; font-size: 15px; letter-spacing: -0.17px; color: var(--gris); border: 1px #eaeaea solid; }
form textarea.textfield { height: auto; }
form .textfield::placeholder { color: #f0f0f0; }
form .boton { width: 100%; height: 60px; }
form .grupo { margin-bottom: 17px; }
form .grupo.boton { margin-bottom: 30px; }
form label { font-weight: 300; font-size: 15px; letter-spacing: -0.17px; color: var(--gris);  }
.boton { cursor: pointer; display: flex; align-items: center; justify-content: center; background-color: var(--naranja); border: 1px var(--naranja) solid; color: #ffffff!important; font-weight: 600; font-size: 20px; letter-spacing: -0.19px; box-shadow: 0 10px 25px 0 transparent; border-radius: 5px; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; }
.boton:hover { background-color: var(--naranja); border: 1px var(--naranja) solid; color: #ffffff!important; box-shadow: 0 10px 25px 0 rgba(210, 129, 5, 0.29); }
footer  { position: absolute; bottom: 0; left: 0; right: 0; margin: auto; }
footer .contenedor { height: 40px; border-top: 1px var(--naranja) solid; display: flex; justify-content: space-between; align-items: center; }

@media screen and (max-width: 1199px) { 
    .detalle .seccion1 .row [class*="col-"] .item.imiddle { height: 400px;  }
}
@media screen and (max-width: 991px) { 
    .contacto .seccion1 .row [class*="col-"]:first-child { margin-bottom: 40px; }
    .contacto .seccion1  iframe { height: 300px; }
    .desarrollo .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 50px; }
    .desarrollo .seccion1 .box { max-height: 660px; }
    .desarrollo .seccion1 .box .item { height: 300px; }
    .desarrollo .seccion1 .box .item:nth-child(3) { height: 250px; }
    .desarrollo .seccion1 .box .item:nth-child(4) { height: 350px; }
    .desarrollo .seccion1 .box .item .item-a { height: 250px; }
    .desarrollo .seccion1 .box .item:nth-child(3) .item-a { height: 200px; }
    .desarrollo .seccion1 .box .item:nth-child(4) .item-a { height: 300px; }
    .desarrollo .seccion1 .box.dos-item { max-height: 330px; }
    .desarrollo .seccion1 .box.dos-item .item:nth-child(2) .item-a { height: 200px; }
    .desarrollo .seccion1 .box.tres-item { max-height: 330px; }
    .desarrollo .seccion1 .box.tres-item .item:nth-child(2) .item-a { height: 200px; }
    .desarrollo .seccion1 .box.tres-item .item:nth-child(3) .item-a { height: 300px; }
    .desarrollo .seccion1 .box.cuatro-item { max-height: 860px; }
    .desarrollo .seccion1 .box.cuatro-item .item { height: 400px; }
    .desarrollo .seccion1 .box.cuatro-item .item:nth-child(3) { height: 300px; }
    .desarrollo .seccion1 .box.cuatro-item .item:nth-child(4) { height: 500px; }
    .desarrollo .seccion1 .box.cuatro-item .item .item-a { height: 360px; }
    .desarrollo .seccion1 .box.cuatro-item .item:nth-child(3) .item-a { height: 260px; }
    .desarrollo .seccion1 .box.cuatro-item .item:nth-child(4) .item-a { height: 460px; }
    .detalle .seccion1 .row [class*="col-"] .item.imiddle { height: 350px;  }
    .detalle .seccion1 .row [class*="col-"] .item.ifull { height: 500px;  }
    .contacto .seccion1 .row { display: initial; }
    .contacto .seccion1 #mapa { height: 300px; margin: 0; margin-bottom: 30px; }
}
@media screen and (max-width: 767px) { 
    footer .contenedor { flex-direction: column; text-align: center; height: 80px; padding: 10px; }
    .inicio .seccion1 .swiper-slide { height: 400px; }
    .inmobiliaria .seccion1 .boton { margin-top: 20px; }
    .inmobiliaria .seccion1 .titulo.principal { padding-bottom: 30px; }
    .inmobiliaria .seccion1 .titulo { padding-top: 30px; }
    .contacto .seccion1 .row { padding-left: 0 !important; padding-right: 0 !important; }
    .portafolio .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 30px; }
    .portafolio .seccion1 .item { height: 250px; }
    .desarrollo .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 30px; }
    .desarrollo .seccion1 .item .item-a { height: 250px; }
    .detalle .seccion1 .titulo.principal { padding-top: 25px; padding-bottom: 30px; }
    .detalle .seccion1 .row [class*="col-"] .item.imiddle { height: 300px;  }
    .detalle .seccion1 .row [class*="col-"] .item.ifull { height: 300px;  }
}
@media screen and (max-width: 519px) { 
    .inicio .seccion1 .swiper-slide { height: 200px; }
    .contacto .seccion1  iframe { height: 200px; }
    .portafolio .seccion1 .box { max-height: 270px; }
    .portafolio .seccion1 .box .item {height: 125px; margin: 5px; }
    .portafolio .seccion1 .box .item:nth-child(5) { height: 125px; }
    .portafolio .seccion1 .box .item:nth-child(6) { height: 125px; }
    .detalle .seccion1 .row [class*="col-"] .item.imiddle { height: 250px;  }
    .detalle .seccion1 .row [class*="col-"] .item.ifull { height: 250px;  }
}
