/* -----  _general.scss     -----*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;700&display=swap');
p{
	text-align: justify
}
h2{
	font-weight: 400 !important;
	line-height: 0.8em !important;
	color: #172d4a
}
h2 strong{
	color: #3d97d3;
	font-family: 'Gotham-Black'
}
.w-85{
	width: 100% !important
}
.pop-medium {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal
}
.pop-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal
}
@media(min-width: 768px) {
	.ms-5-md{
		margin-left: 3rem !important
	}
	.w-85{
		width: 85% !important
	}
}
/* -----  _menu.scss     -----*/
.menu {
    position: fixed;
    z-index: 999;
    color: #fff;
    padding: 1em 0;
    box-shadow: 0 0 rgba(0,0,0,.75) inset;
    transition: box-shadow .5s,padding .5s
}
.menu * {
    transition: all .5s !important
}
@media(min-width: 992px) {
    .menu {
        font-size:16px;
        padding: 1em 0;
    }
}

.menu .logo-wrapper .logo {
    transition: font-size .5s;
    font-size: 10em;
    height: 70px;
}

@media(min-width: 992px) {
    .menu .logo-wrapper .logo {
        height: 170px
    }
}

.menu .enlace {
    text-wrap: nowrap
}

.menu .enlace:hover {
    text-decoration: none
}

.menu .navegacion {
    display: block;
    order: 2;
    height: 0 !important;
    flex: 0 0 100%;
    transition: height .5s
}

@media(min-width: 992px) {
    .menu .navegacion {
		/* display:flex; */
		text-align: right;
		position: static;
		width: auto;
		height: auto;
		flex: 0 0 auto;
		order: 0
		}
}
.menu .navegacion li {
    display: block;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateX(3em);
    transition: transform .5s ease-out,opacity .5s ease-out
}
.menu .navegacion li:hover {
	background-color: #013b6c57
}
.menu .navegacion.active {
    height: 100% !important;
    padding: 1em 0.5em !important;
    backdrop-filter: blur(10px);
    background-color: rgb(41 134 196 / 90%);
	border-radius: 12px
}
.menu .navegacion li button.btnpostventa{
	color: #fff;
	text-transform: uppercase;
	padding: 8px 16px;
	margin: 0 4px;
	border: 0;
    background: none
}
@media(min-width: 992px) {
    .menu .navegacion.active {
	    background-color: rgb(41 134 196 / 80%);
        padding:0;
        height: auto
    }
}

.menu .navegacion.active li {
    display: block;
    opacity: 1;
    pointer-events: all;
    transform: translateX(0)
}

.menu .btn-menu {
    margin: 0 .25em;
    padding: .5em 1em;
    transition: background-color .3s
}

.menu .burger {
    position: relative;
    width: 3em;
    height: 1.5em;
    background: rgba(0,0,0,0);
    cursor: pointer;
    display: block;
    transition: all .3s
}

.menu .burger input {
    display: none
}

.menu .burger input:checked~span:nth-of-type(1) {
    transform: rotate(45deg);
    top: -0.35em;
    left: .28em
}

.menu .burger input:checked~span:nth-of-type(2) {
    width: 0%;
    opacity: 0
}

.menu .burger input:checked~span:nth-of-type(3) {
    transform: rotate(-45deg);
    top: 1.85em;
    left: .28em
}

.menu .burger span {
    display: block;
    position: absolute;
    height: .2em;
    width: 100%;
    background: #fff;
    border-radius: .5em;
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out
}

.menu .burger span:nth-of-type(1) {
    top: 0px;
    transform-origin: left center
}

.menu .burger span:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
    transform-origin: left center
}

.menu .burger span:nth-of-type(3) {
    top: 100%;
    transform-origin: left center;
    transform: translateY(-100%)
}

.menu.reducido {
    border-bottom: none;
    /* font-size: 14px; */
    /* color: #d7d7d7; */
}

@media(min-width: 992px) {
    .menu.reducido {
        /* box-shadow:0 5.5em rgba(0,0,0,.75) inset; */
        /* padding: 1.5em 0; */
    }
	.menu.reducido .logo {
		height: 0px
	}
}

.menu.reducido .burger span {
    background: #3d97d3
}

/* -----  _portada.scss     -----*/
.banner .fondo {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    top: 0;
    left: 0
}
.banner h2.titulo{
	font-family: 'Gotham-Book';
	font-size: 3.2em
}
.banner h2.titulo span{
	font-family: 'Gotham-Black';
	font-weight: 700 !important;
	display: block;
	letter-spacing: -0.045em;
	text-decoration: underline;
	text-underline-offset: 40px;
	text-decoration-skip-ink: none;
	text-decoration-color: #3c97d3;
	text-decoration-thickness: 5px
}
.banner .swiper {
    z-index: 0
}
.banner .swiper-wrapper {
    z-index: 0
}
.banner .swiper-slide {
    min-height: 70vh
}
@media(min-width: 992px) {
		.banner .swiper-slide {
	    min-height: 100vh
	}
}
.banner .swiper .container {
    z-index: 2
}
.swiper .arrow {
    color: #3F51B5;
    background-color: #FFF100 ;
    width: 1.2em !important;
    height: 1.2em !important;
    font-size: 2.7em !important;
    transition: background-color .5s;
    border-radius: 50%;
    border: none
}
@media only screen and (max-width: 767px) {
	.banner h2.titulo span{
		text-decoration: none
	}
}
/* -----  _proyectos-entregados.scss     -----*/

.proyectos-entregados{
	background: url(../images/trama.webp) no-repeat center center;
	background-size: cover
}
.proyectos-entregados .fecha {
	font-family: 'Gotham-Black';
    font-size: 1.5em;
    font-weight: bold;
    position: relative;
	text-align: center
}
.proyectos-entregados .fecha:before {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    top: 100%;
    left: calc(50% - 7px);
    background: #3c97d3
}
.proyectos-entregados .imagen {
    width: 100%
}
.proyectos-entregados figcaption {
    color: #1d1d1d;
    line-height: 1
}

.proyectos-entregados figcaption strong {
	font-family: 'Gotham-Black';
    font-size: 1em
}

.proyectos-entregados figcaption small {
    font-size: 0.8em;
	margin-top: 0.25em
}

.proyectos-entregados .swExperiencia {
    text-align: center
}

.proyectos-entregados .swiper-slide {
    position: relative
}
.proyectos-entregados .swiper-pagination {
    position: static;
    margin-top: 2rem
}
.proyectos-en-venta .swiper-pagination-bullet, .proyectos-entregados .swiper-pagination-bullet, .testimonios .swiper-pagination-bullet {
    width: 0.55em;
    height: 0.55em;
    font-size: 18px;
    box-shadow: 0 0 0 4px #fff,0 0 0 7px #172d4a;
	background: #fff;
    opacity: 1;
    margin: 0 10px !important
}
@media(min-width: 768px) {
    .proyectos-entregados .swiper-pagination-bullet {
        font-size:24px
    }
}
.proyectos-en-venta .swiper-pagination-bullet-active, .proyectos-entregados .swiper-pagination-bullet-active, .testimonios .swiper-pagination-bullet-active {
	background: #3d97d3;
}

/* -----  _proyectos-en-venta.scss     -----*/
.proyectos-en-venta{
	background: url(../images/trama.webp) no-repeat center center;
	background-size: cover
}
.proyectos-en-venta .info-item {
	top: 100px;
	left: 25px;
	position:absolute
}
.proyectos-en-venta .tag-item{
	font-family: 'Gotham-Black';
	display: inline-block;
	/* position:absolute; */
	/* top:10%; */
	/* left: 20px; */
	color: #fff;
	background: #172d4a;
	border-radius: 2em;
	font-size: 0.9em;
	padding: 0.45em 1em
}
.proyectos-en-venta .bt-proyecto, .btn-cta-modal{
	font-family: 'Gotham-Black';
	background: #3c97d3;
	color: #fff;
	border-radius: 2em;
	font-weight: 700;
	font-size: 1em;
	padding: 0.5em 1em;
	transition: all 0.3s
}
.proyectos-en-venta .bt-proyecto:hover, .btn-cta-modal:hover{
	background: #172d4a;
	text-decoration: none
}
.proyectos-en-venta .enlace{
	min-height: 40px
}

/* -----  _promociones.scss     -----*/
.promociones{
	background: url(../images/prom-bkg.webp) no-repeat center center;
	background-size: cover
}
@media only screen and (max-width: 767px) {
	.promociones{
		padding-top: 3em;
		margin-top: 3em
	}
}
/* -----  _testimonios.scss     -----*/
.testimonios strong{
	display: block
}
.testimonios p.quote {
	padding: 15px 0 0 25px;
    background: url(../images/testimonio_open.svg) no-repeat left top;
	background-size: 55px 55px;
	min-height: 180px;
	margin-bottom: 0
}
.testimonios p, .testimonios h2{
	padding-left: 25px
}
.testimonios p.quote  img{
	width: 45px;
	height: 45px;
	margin-left: -20px
}
@media(min-width: 992px) {
	.testimonios .swiper-horizontal>.swiper-pagination-bullets,.testimonios .swiper-pagination-bullets.swiper-pagination-horizontal,.testimonios .swiper-pagination-custom,.testimonios .swiper-pagination-fraction {
		bottom: var(--swiper-pagination-top, auto) !important;
		right: 0 !important;
		width: 50% !important;
		left: initial !important
	}
}
@media only screen and (max-width: 767px) {
	.testimonios h2{
		padding-left: 0;
		text-align: center;
		margin-top: 0.65em;
		font-size: 2.2em !important
	}
}
/* -----  _contacto.scss     -----*/
.contacto{
    background-image: linear-gradient(to right, #3d97d3 50%, #172d4a calc(50% + 1px)) !important
}
 .form-control, .form-select {
	font-family: sans-serif;
    width: 100%;
    outline: none !important;
    border-radius: 0;
    border: 0;
    padding: .65rem .75rem;
    border: none;
    color: #907c69;
    font-size: 0.75em !important;
    letter-spacing: 0.1em
}
.btn-cta {
	font-family: 'Gotham-Black';
    font-size: 0.8em;
    letter-spacing: 0.15em;
    font-weight: bold;
    padding: 1em;
    background: #fff;
    border: none;
    color: #172d4a;
    transition: all .5s
}
.btn-cta:hover {
	background: #3d97d3
}
@media only screen and (max-width: 767px) {
	.contacto{
	    background: #3d97d3 !important;
		margin: 4em 0
	}
	.contacto h2{
		text-align: center
	}
	.contacto select{
		height: 40px
	}
}
/* -----  _footer.scss     -----*/
.footer {
	background: url(../images/trama.webp) no-repeat center center;
	background-size: cover;
	padding-bottom: 4em !important;
	z-index: 10
}
.footer .sellos img{
	height: 3.5em
}
.footer a .icon {
    background: #172d4a;
    width: 2.5em;
    height: 2.5em;
    flex: 0 0 1em;
    padding: 10px 0 0 9px;
    border-radius: 21px
}
.footer a .icon:hover {
	background: #3d97d3
}
.footer li a{
	font-size: 0.60em;
	line-height: 2.2em;
	transition: all 0.3s
}
.footer .col-md-3 li a:hover{
	text-decoration: none;
	font-size: 0.75em;
	line-height: 2.2em;
	transform: translateX(10px)
}
.footer  a.libro {
	background: url(../images/ic-libro-reclamaciones.svg) no-repeat left center;
	background-size: 45px;
	font-size: 0.9em !important;
	padding: 30px 0 30px 55px;
	font-weight: bold
}
.footer .enlace{
	transition: all 0.3s
}
.footer .enlace:hover{
	transform: scale(1.05);
	box-shadow: 1px 1px 30px 0px rgba(0,0,0,0.50);
}
@media only screen and (max-width: 767px) {
	.footer ul{
		text-align: center;
	}
	.footer .logo{
		width: 40%;
		margin-bottom:20px
	}
}
/* -----  _whatsapp.scss     -----*/

.fijados .whatsapp {
    position: fixed;
    z-index: 9;
    bottom: 6em;
    right: 1em
}
@media(min-width: 768px) {
    .fijados .whatsapp {
        right:1.5em
    }
}
.fijados .static-wsp {
    display: block;
    line-height: 1;
    padding: 1em;
    background-color: #3d97d3;
    border-radius: 50%;
    color: #fff;
    animation: wsp 1.5s ease infinite
}
.fijados .static-wsp .icon {
    width: 1.5em;
    height: 1.5em
}
@media(min-width: 992px) {
    .fijados .static-wsp .icon {
        width:2em;
        height: 2em
    }
}
@keyframes wsp {
    0% {
        box-shadow: 0 0 0 0 rgb(61 151 211 / 50%)
    }

    100% {
        box-shadow: 0 0 0 1em rgba(0,0,0,0)
    }
}
.promo-1{
	animation: promo1 2s ease 0s infinite alternate forwards;
}
@keyframes promo1 {
	0% {
		transform: scale(1);
	}

	100% {
		transform: scale(1.1);
	}
}
.promo-4{
	animation: promo4 2s ease 0s infinite alternate forwards;
}
@keyframes promo4 {
	0% {
		transform: scale(1);
	}

	100% {
		transform: scale(1.1);
	}
}
/* -----  _promociones-interna.scss     -----*/
.promociones-interna{
	background: url(../images/fondo-promocion.webp) no-repeat center top;
	background-size: cover
}
/* -----  _modal.scss     -----*/
.modal-open {
  overflow: hidden;
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}
.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}
.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}
.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}
.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}
.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1.5rem 1rem 0.5rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
  margin-bottom: 1em
}
.modal-title {
  font-family: 'Gotham-Black';
  color: #172d4a;
  font-weight: 700;
  margin-bottom: 0;
  line-height: 1.5
}
.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}
.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
.modal-body .bold{
    font-weight: 700;
	font-size: 1em
}
@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.modal-body p{
	font-size: 0.8em
}
.modal-body h3{
	font-size: 1.1em;
	color: #172d4a
}
button.close {
	font-family: sans-serif;
	position: absolute;
	right: 15px;
	top: 15px;
	border-radius: 50%;
	padding: 0.12em 0.43em !important;
	background: none;
	border-color:#b6b6b6;
	z-index: 999
}
/* -----  _libro-de-reclamaciones.scss     -----*/
.libro-de-reclamaciones .bgGray{
	background: url(../images/bkg-libro-reclamaciones.webp) no-repeat top center;
	background-size: cover
}
.libro-de-reclamaciones .form-control,.libro-de-reclamaciones .form-select {
    width: 100%;
    outline: none !important;
    border-radius: 0;
    border: 0;
    padding: .65rem .75rem;
    border: solid 1px #172d4a;
    color: #000;
    text-transform: uppercase;
    font-size: 0.75em !important;
    letter-spacing: 0.1em
}
.libro-de-reclamaciones .form-row{
	text-align: left !important
}
.libro-de-reclamaciones label, .libro-de-reclamaciones p small{
	color: #808080;
	font-size: 0.7em
}
.libro-de-reclamaciones h3{
	color: #808080;
	text-align: left;
	font-weight: 400 !important;
	font-size: 1.2em;
	line-height:2em;
	text-decoration: underline;
	text-underline-offset: 15px;
	text-decoration-skip-ink: none;
	text-decoration-color: #808080;
	text-decoration-thickness: 1px
}
.libro-de-reclamaciones i{
	color: #dc2b2b
}
.libro-de-reclamaciones .form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-top: 0.5em;
  margin-right: 2rem
}
.libro-de-reclamaciones .form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}
.libro-de-reclamaciones .form-check-label{
	margin-left: 0.5em
}
.libro-de-reclamaciones .btn, .compra-de-terrenos .btn, .postventa .btn {
	background: #172d4a;
	color: #fff;
	outline: none;
	border: none;
	padding: 1em 1.5em
}
.imagen-form{
	padding-right: 0;
	padding-left: 0;
	
}
/* -----  _compra-de-terrenos.scss     -----*/
.compra-de-terrenos .form-control{
	border-bottom: solid 1px #000;
	padding-left: 0
}
.compra-de-terrenos .imagen-form{
	background: url(../images/compra-terrenos.webp) no-repeat center center;
	background-size: cover
}
.compra-de-terrenos h2 span{
	font-weight: 700 !important
}

/* -----  _transparencia.scss     -----*/
.transparencia img.logo{
    height: 5em  !important;
    margin-top: 40px !important
}
.transparencia h2{
    color: #000;
    font-size: 2.4em !important;
    text-align: center;
    font-weight: 400 !important;
    padding: 2em 0
}
.transparencia h2 span{
	font-family:'Gotham-Black';
	color:#3d97d3 ;
    display: block;
    font-weight: 700 !important
}
.transparencia p {
    color: #000;
    text-align: justify;
    margin: 0 30px 30px 30px;
}
.card {
    background: none;
    border: none
}
.card-header {
	font-family: 'Gotham-Black';
    background: #172d4a;
    border-radius: 0.75em !important;
    padding: 0.5rem 1.25rem 0.5rem 1.25rem;
    margin-bottom: 25px;
    text-decoration: none;
    transition: all 0.5s ease
}
.card-header:hover {
    background: #27538d;
    padding-left: 1.5rem
}
.btn-link {
    color: #fff;
    font-weight: 700;
    font-size: 1.6em;
    width: 100%;
    text-align: left
}
.btn-link:hover {
    color: #fff
}
button.collapsed{
    background: url(../images/icn-arrow1.webp) no-repeat right 15px;
    background-size: 40px
}
button{
    background: url(../images/icn-arrow2.webp) no-repeat right 15px;
    background-size: 40px;
    text-decoration: none !important;
    outline: none !important;
    box-shadow: none !important
}
.transparencia ul {
    clear: left;
    width: 90%;
    margin-left: 5% !important
}

.transparencia li {
    background: url(../images/icn-pdf.webp) no-repeat 10px center;
    background-size: 40px;
    background-color: #172d4a;
    border-radius: 10px;
    width: 30%;
    float: left;
    margin: 10px 1%;
    padding-left: 70px;
    list-style-type: none;
    height: 90px;
    transition: all 0.5s ease
}
.transparencia li:hover {
    background-color: #27538d;
}
.transparencia li a {
    color: #fff;
    display: block;
    height: 100%;
    padding-top: 30px;
    transition: all 0.5s ease
}
.transparencia li a:hover{
    text-decoration: none;
    color: rgb(255 255 255 / 70%)
}
body.transp .menu .burger span{
	    background: #172d4a !important
}
@media only screen and (max-width: 767px) {
    .transparencia p {
        font-size: 1.3em;
        margin: 0 0px 30px 0px;
    }

    .transparencia ul {
        width: 100%;
        margin-left: 0% !important;
        padding-left: 0
    }

    .transparencia li {
        background-size: 30px;
        width: 100%;
        float: none;
        padding-left: 50px;
        height: 80px
    }

    .transparencia li a {
        font-size: 1.2em;
    }
}
/* -----  _postventa.scss     -----*/
.postventa .logo{
	height: 7em
}
.postventa h2{
	font-family: 'Gotham-Black';
	font-size: 2.7em;
	line-height: 1.1em !important
}
.postventa h3{
	font-family: 'Gotham-Black';
	font-size: 1.6em
}
.postventa .form-control{
	border: solid 1px #000;
	padding-left: 10px
}
.postventa .imagen-form{
	background: url(../images/postventa.webp) no-repeat center center;
	background-size: cover
}
.postventa h3{
	font-weight: 700 !important
}
h4 strong{
	font-family:  'Gotham-Black'
}