/* estilos del sitio web */

/*fuentes y fuentes CDN*/
@font-face { font-family: 'ARegular'; src: url('../fonts/AvenirNext/AvenirNextRegular.otf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'AMedium'; src: url('../fonts/AvenirNext/AvenirNextMedium.ttf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'ABold'; src: url('../fonts/AvenirNext/AvenirNextBold.otf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'FRegular'; src: url('../fonts/Frank_Ruhl_Libre/FrankRuhlLibre-Regular.ttf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'PRegular'; src: url('../fonts/Playfair_Display/PlayfairDisplay-Regular.ttf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'PBold'; src: url('../fonts/Playfair_Display/PlayfairDisplay-Bold.ttf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Oregular'; src: url('../fonts/Open_Sans/OpenSans-Regular.ttf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Obold'; src: url('../fonts/Open_Sans/OpenSans-Bold.ttf'); font-weight: normal; font-style: normal; }
:root{
    --amedium:'AMedium';
    --aregular:'ARegular';
    --abold:'ABold';
    --fregular:'FRegular';
    --pregular:'PRegular';
    --pbold:'Pbold';
    --oregular:'Oregular';
    --obold:'Obold';
    --negro: #000000;
    --blanco: #ffffff;
}
/*estilos generales*/
.npad{padding-left: 0;padding-right: 0;}
.pdb50{padding-bottom:50px;}
.btn-default1{padding: 6px 60px;
    border: 1px #000000 solid;
    border-radius: 14px;
    background-color: #000000;
    color: #ffffff;
    font-family: var(--amedium);
    font-size: 13px;
    text-align: center;}
.btn-default1:hover{    background-color: #ffffff;
    color: #000000;
    border: 1px #000000 solid;
    box-shadow: 0 10px 30px 0 rgba(136, 136, 136, 0.59)}
html, body{opacity:0}
html{position:relative; min-height:100%; padding-bottom: 90px; }
body{padding-top:0px; outline: none;}
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-lg {display: flex; justify-content: center; align-items: center;}
.error{ border-bottom: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;}
.contenedor { width:70%; max-width: 1600px; margin: 0 auto; }
.m20{margin-bottom: 20px}
.m30{margin-bottom: 30px}
.clear { clear: both; }
.rl { position: relative;}
.line:before{content: ''; width: 80%; height: 2px; background-color: transparent; border-bottom: 1px solid #ececec;; position: absolute; bottom: 0; left: 0}
.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; }
.programa .swiper-button-prev { background-image: url(../img/formas/pprev.svg)!important; width: 80px!important; height: 24px!important; background-repeat: no-repeat!important; background-position: center!important; background-size: cover!important; z-index: 1!important; top: 114px !important; left: 32%; }
.programa .swiper-button-next { background-image: url(../img/formas/pnext.svg)!important; width: 80px!important; height: 24px!important; background-repeat: no-repeat!important; background-position: center!important; background-size: cover!important; z-index: 1!important; top: 114px !important; right: 32%; }
.titulo-seccion { font-family: var(--pregular); font-size: 50px; line-height: 1.2; color: #272727; }
@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: 1199px) { 
    .contenedor{width:80%; }
}
@media screen and (max-width: 991px) { 
    html{ padding-bottom: 120px; }
    .centrar-md { display: inherit; }
    .centrar-sm { display: flex; justify-content: center; align-items: center;}
    .titulo-seccion { font-size: 45px; }
}
@media screen and (max-width: 767px) { 
    html{ padding-bottom: 230px; }
    .titulo-seccion { font-size: 40px; }
    .contenedor{width:90%; }
    .centrar-sm { display: inherit; }
    .centrar-xs { display: flex; justify-content: center; align-items: center; }
} 
@media screen and (max-width: 520px) { 
    .titulo-seccion { font-size: 30px; }
} 
/* Menu */
header { width: 100%; max-width: 1920px; margin: auto; position: absolute; left: 0; right: 0; top: 0px; z-index: 502; }
header .cabecera { width: 90%; max-width: 1920px; margin: 0 auto; margin-top: 35px; height: 76px; 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 { -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: #ffffff; 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-family: var(--amedium); font-size: 16px; color: #ffffff; }
header .cabecera ul.menu-escritorio > li:not(:last-child) { margin-right: 24px; }
header .cabecera ul.menu-escritorio > li:nth-child(6) { margin-right: 60px; }
header .cabecera ul.menu-escritorio > li:nth-child(7) { margin-right: 20px; }
header .cabecera ul.menu-escritorio .dropdown-menu { min-width: 100px; border: solid 1px #ffffff; background-color: rgba(0, 0, 0, 0.3); }
header .cabecera ul.menu-escritorio .dropdown-menu > li { color: #ffffff; }
header .cabecera ul.menu-escritorio .dropdown-menu > li a { color: #ffffff; }
header .cabecera ul.menu-escritorio .dropdown-menu>li>a:hover, header .cabecera ul.menu-escritorio .dropdown-menu>li>a:focus { text-decoration: none; color: #000000; background-color: #f5f5f5; }
/* menu negro */
header.black .cabecera ul > li { color: #000000; }
header.black .cabecera .logo > svg #svglogo { fill: #000000; }
header.black .cabecera svg #instagram { fill: #000000; }
header.black .cabecera svg #facebook{ fill: #000000; }
header.black .cabecera .hamburger .raya { background: #000000; }
header.black .cabecera ul.menu-escritorio .dropdown-menu { min-width: 100px; border: solid 1px #000000; background-color: #ffffff; }
header.black .cabecera ul.menu-escritorio .dropdown-menu > li { color: #272727; }
header.black .cabecera ul.menu-escritorio .dropdown-menu > li a { color: #272727; }
.menu { width: 396px; height: 100%; min-height: 700px; padding: 10px; margin: 0; background-color: #f9f9f9; 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; box-shadow: 0 30px 60px 0 rgba(0, 0, 0, 0.25); -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: 120px; padding-left: 60px; }
.menu ul { list-style: none; padding: 0; }
.menu ul > li  { font-family: var(--aregular); font-size: 20px; line-height: 2.75; letter-spacing: 0.5px; color: #000000; }
.menu .redes { width: 100%; position: absolute; bottom: 0; left: 0; }
.menu .redes ul { display: flex; justify-content: center; align-items: center; }
.menu .redes ul > li:not(:last-child) { margin-right: 16px; }
.menu .ctn-submenu:hover ul.submenu { display: block; } 
.menu .submenu { display: none; padding-left: 40px; }
@media screen and (max-width: 1199px) { /* tablet */
    header .cabecera ul.menu-escritorio > li:nth-child(6) { margin-right: 30px; }
}
@media screen and (max-width: 991px) { /* 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: #000000; }
    .menu-open header .cabecera .hamburger .raya { background: #000000; }
    .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: initial; padding-left: initial; min-height: 560px; overflow: auto; }
    .menu .redes { position: relative; margin-top: 20px; }
    .menu ul { text-align: left; }
    .menu ul > li { font-size: 18px; }
}
.portada { position: relative; width: 100%; height: 100vh; min-height: 700px; padding-bottom: 100px; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.portada::after { content: ''; width: 100%; height: 100vh; min-height: 700px; background-color: rgba(0, 0, 0, 0.35); position: absolute; top: 0; left: 0; z-index: 1; }
.portada > div { z-index: 2; }
.portada > span.arrow { cursor: pointer; position: absolute; bottom: 90px; left: 0; right: 0; margin: auto; z-index: 2; text-align: center; }
.portada > span.link { cursor: pointer; position: absolute; width: max-content; bottom: 40px; left: 0; right: 0; margin: auto; z-index: 2; font-family: var(--amedium); font-size: 14px; letter-spacing: 1.6px; text-align: center; color: #ffffff; }
.portada > span.link::before { content: ""; position: absolute; width: 100%; height: 2px; bottom: -10px; left: 0; background-color: var(--blanco); visibility: hidden; transform: scaleX(0); -webkit-transform: scaleX(0); -moz-transform: scaleX(0); -ms-transform: scaleX(0); -o-transform: scaleX(0); transition: all 0.3s ease-in-out 0s; -webkit-transition: all 0.3s ease-in-out 0s; -moz-transition: all 0.3s ease-in-out 0s; -ms-transition: all 0.3s ease-in-out 0s; -o-transition: all 0.3s ease-in-out 0s; }
.portada > span.link:hover::before,
.portada > span.link.active::before { visibility: visible; transform: scaleX(1); -webkit-transform: scaleX(1); -moz-transform: scaleX(1); -ms-transform: scaleX(1); -o-transform: scaleX(1); }
.portada .contenido .uno { width: 58%; text-align: right; }
.portada .contenido .dos { width: 50%; float: right; text-align: left; }
.portada .titulo { font-family: var(--pregular); font-size: 90px; line-height: 1.09; text-align: right; color: #ffffff; margin-bottom: 30px; }
.portada .texto { font-family: var(--amedium); font-size: 16px; line-height: 1.69; color: #ffffff; }
@media screen and (max-width: 1600px) { 
    .portada .titulo { font-size: 80px; }
}
@media screen and (max-width: 1400px) { 
    .portada .titulo { font-size: 60px; }
}
@media screen and (max-width: 991px) { 
    .portada .titulo { font-size: 50px; }
}  
@media screen and (max-width: 767px) { 
    .portada .titulo { font-size: 35px; text-align: left; }
    .portada > span.link { font-size: 12px; }
    .portada .contenido .uno { width: 100%; text-align: left; }
    .portada .contenido .dos { width: 100%; float: initial; text-align: left; }
}
.contacto .seccion1 { padding-top: 100px; }
.contacto .seccion1 .contactar { min-height: calc(100vh - 190px); }
.contactar { position: relative; padding: 80px 0 40px 0; }
.contactar::before { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; bottom: 0; left: 0; }
.contactar::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; right: 0; }
.contactar .titulo { font-family: var(--abold); font-size: 22px; line-height: 1.32; color: #272727; }
.contactar .ctn-boton { margin-top: 50px; }
.contactar .boton { padding: 6px 30px; border: 1px #000000 solid; border-radius: 14px; background-color: #ffffff; color: #000000; font-family: var(--amedium); font-size: 13px; text-align: center; color: #272727; -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: 14px; -moz-border-radius: 14px; -ms-border-radius: 14px; -o-border-radius: 14px; }
.contactar .boton:hover { background-color: #000000; color: #ffffff; border: 1px #000000 solid;  box-shadow: 0 10px 25px 0 rgba(136, 136, 136, 0.59); }
.contactar .informacion { margin-top: auto; }
.contactar .informacion .caja {  margin-bottom: 30px; width: 176px; font-family: var(--aregular); font-size: 15px; line-height: 1.6; color: #272727; }
.contactar .informacion .caja .nombre { font-family: var(--abold); }
.contactar .informacion .boton { margin-top: 100px; }
.form-style-contacto .box { display: flex; }
.form-style-contacto .box .parte1 { width: 50%; }
.form-style-contacto .box .parte2 { width: 50%; }
.form-style-contacto .box .uno, .form-style-contacto .box .dos { width: 25%; }
.form-style-contacto .box .tres, .form-style-contacto .box .cuatro, .form-style-contacto .box .cinco { width: 50%; }
.form-style-contacto .box .seis, .form-style-contacto .box .siete, .form-style-contacto .box .ocho { width: calc(100% - 30px); }
.form-style-contacto .box .ocho label { margin: 0; }
.form-style-contacto label { font-family: var(--abold); font-size: 15px; line-height: 1.6; color: #272727; border: none; }
.form-style-contacto input { width: 100%; height: 23px; background-color: transparent; background-image: none; font-family: var(--aregular); font-size: 15px; line-height: 1.6; color: #272727; border: none; border-bottom: solid 1px #e5e5e5; }
.form-style-contacto select { width: 100%; height: 23px; background-color: #ffffff; background-image: url(../img/formas/downb.svg); background-repeat: no-repeat; background-position: 95% center; font-family: var(--aregular); font-size: 15px; line-height: 1.6; color: #272727; border: none; border-bottom: solid 1px #e5e5e5; appearance: none; -webkit-appearance: none; -moz-appearance: none; }
.form-style-contacto textarea { width: 100%; height: 180px; font-family: var(--aregular); font-size: 15px; line-height: 1.6; color: #272727; resize: none; background: none; border: none; }
.form-style-contacto textarea { line-height: 31px; background-image: -webkit-linear-gradient(top , transparent, transparent 29px, #e5e5e5 0); background-size: 100% 30px; }
.form-style-contacto textarea.error{ background-image: -webkit-linear-gradient(top , transparent, transparent 29px, #E37979 0); border-bottom: none !important; }
.form-style-contacto .g-recaptcha { transform: scale(0.64); -webkit-transform: scale(0.64); -moz-transform: scale(0.64); -ms-transform: scale(0.64); -o-transform: scale(0.64); transform-origin: 0 0; }
.form-style-contacto .grupo { margin-bottom: 25px; margin-left: 30px; }
.form-style-contacto .grupo.captcha { width: 200px; overflow: hidden; }
.form-style-contacto .opciones { margin-top: 25px; }
@media screen and (max-width: 1199px) { 
    .contactar::before { width: 80px; height: 250px; }
    .contactar::after { width: 80px; height: 250px; }
}
@media screen and (max-width: 991px) { 
    .contactar { padding: 60px 0 40px 0; }
    .contactar .informacion { margin-top: 60px; display: flex; align-items: flex-start; justify-content: space-between; }
    .contactar .ctn-boton { margin-top: 0; margin-bottom: 60px; text-align: center; }
    .form-style-contacto .box { justify-content: center; }
}  
@media screen and (max-width: 767px) { 
    .contactar .informacion { margin-top: 60px; display: initial; }
    .contactar .titulo-seccion { margin-bottom: 40px; }
    .contactar::before { opacity: 0.5; }
    .contactar::after { opacity: 0.5; }
    .form-style-contacto .grupo.captcha { margin: auto; }
    .form-style-contacto .box { display: initial; }
    .form-style-contacto .box .uno, .form-style-contacto .box .dos { width: auto; }
    .form-style-contacto .box .tres, .form-style-contacto .box .cuatro, .form-style-contacto .box .cinco { width: auto; }
    .form-style-contacto .box .seis, .form-style-contacto .box .siete, .form-style-contacto .box .ocho{ width: auto; }
    .form-style-contacto .box .parte1 { width: 100%; }
    .form-style-contacto .box .parte2 { width: 100%; }
    .form-style-contacto .grupo { margin-left: 0; }
}
@media screen and (max-width: 520px) { 
    .form-style-contacto .box { display: initial; }
    .form-style-contacto .box .uno, .form-style-contacto .box .dos { width: auto; }
    .form-style-contacto .box .tres, .form-style-contacto .box .cuatro, .form-style-contacto .box .cinco { width: auto; }
    .form-style-contacto .box .seis, .form-style-contacto .box .siete, .form-style-contacto .box .ocho{ width: auto; }
    .form-style-contacto .box .parte1 { width: 100%; }
    .form-style-contacto .box .parte2 { width: 100%; }
    .form-style-contacto .grupo { margin-left: 0; }
}
.home .seccion2 { position: relative; padding: 80px 0; }
.home .seccion2::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.home .seccion2 .texto { font-family: var(--aregular); font-size: 15px; line-height: 1.93; color: #272727; }
.home .seccion2 .texto b { font-family: var(--abold); }
.home .seccion3 { position: relative; width: 100%; background-image: url(../img/inicio/modelos.jpg); background-size: cover; background-position: center; background-repeat: no-repeat; }
.home .seccion3::after { content: ''; width: 100%; background-image: radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0.33), rgba(0, 0, 0, 0.68)); position: absolute; top: 0; left: 0; z-index: 1; }
.home .seccion3, .home .seccion3::after, .home .seccion3 .row { height: 800px; }
.home .seccion3 .row { position: relative; z-index: 2; }
.home .seccion3 .row [class*="col-"] { position: relative; height: 100%; display: flex; align-items: center; }
.home .seccion3 .row [class*="col-"]:first-child { justify-content: flex-start; }
.home .seccion3 .row [class*="col-"]:nth-child(2) { justify-content: center;}
.home .seccion3 .row [class*="col-"]:last-child { justify-content: flex-end; }
.home .seccion3 .row .logo { position: relative; text-align: center; }
.home .seccion3 .link { position: absolute; width: max-content; bottom: -235px; left: 0; right: 0; margin: auto; font-family: var(--amedium); font-size: 14px; letter-spacing: 1.6px; color: #ffffff; }
.home .seccion3 .link::before { content: ""; position: absolute; width: 100%; height: 2px; top: -30px; left: 0; background-color: var(--blanco); transform: scaleX(0.5); -webkit-transform: scaleX(0.5); -moz-transform: scaleX(0.5); -ms-transform: scaleX(0.5); -o-transform: scaleX(0.5); transition: all 0.3s ease-in-out 0s; -webkit-transition: all 0.3s ease-in-out 0s; -moz-transition: all 0.3s ease-in-out 0s; -ms-transition: all 0.3s ease-in-out 0s; -o-transition: all 0.3s ease-in-out 0s; }
.home .seccion3 .link:hover::before,
.home .seccion3 .link.active::before { visibility: visible; transform: scaleX(1); -webkit-transform: scaleX(1); -moz-transform: scaleX(1); -ms-transform: scaleX(1); -o-transform: scaleX(1); }
@media screen and (max-width: 1400px) { 
    .home .seccion3 .row .logo img { width: 90%; }
}
@media screen and (max-width: 1199px) { 
    .home .seccion2::after { width: 80px; height: 250px; }
    .home .seccion3, .home .seccion3::after, .home .seccion3 .row { height: 700px; }
}
@media screen and (max-width: 991px) { 
    .home .seccion2 { padding: 60px 0; }
    .home .seccion2 .texto { font-size: 14px; }
    .home .seccion3, .home .seccion3::after, .home .seccion3 .row { height: 600px; }
}  
@media screen and (max-width: 767px) { 
    .home .seccion3, .home .seccion3::after, .home .seccion3 .row { height: 100%; }
    .home .seccion3 .row [class*="col-"] { height: 400px; }
    .home .seccion3 .row [class*="col-"]:first-child { justify-content: center; }
    .home .seccion3 .row [class*="col-"]:last-child { justify-content: center; }
    .home .seccion3 .link { bottom: -100px; }
    .home .seccion3 .row .logo img { width: 80%; }
    .home .seccion2::after { opacity: 0.5; }
}
.modelo .seccion1 .titulo .titulo1 { position: relative; width: max-content; margin-left: auto; }
.modelo .seccion1 .titulo .titulo2 { font-family: var(--pbold); font-style: italic;  }
.modelo .seccion1 .titulo [data-marca='aitana']::after { content: url("../img/formas/aitana-titulo.svg"); width: 93.5px; height: 93.5px; position: absolute; bottom: 6px; left: -50px; opacity: 0.20; }
.modelo .seccion1 .titulo [data-marca='alanna']::after { content: url("../img/formas/alanna-titulo.svg"); width: 93.5px; height: 93.5px; position: absolute; bottom: 6px; left: -50px; opacity: 0.20; }
.modelo .seccion1 .titulo [data-marca='leonora']::after { content: url("../img/formas/leonora-titulo.svg"); width: 93.5px; height: 93.5px; position: absolute; bottom: 6px; left: -50px; opacity: 0.20; }
.modelo .seccion2 { position: relative; padding-bottom: 50px; }
.modelo .seccion2::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.modelo .seccion2 .titulo-seccion { padding: 80px 0; text-align: center; }
.modelo .seccion2 .swiper-container {  box-shadow: 0 23px 50px 0 rgba(0, 0, 0, 0.23); }
.modelo .seccion2 .swiper-slide { height: 600px; }
.modelo .seccion2 .swiper-slide::after { content: ''; width: 100%; height: 100%; box-shadow: 0 23px 50px 0 rgba(0, 0, 0, 0.23); background-image: linear-gradient(to right, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.07) 14%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.11) 86%, rgba(0, 0, 0, 0.4)); position: absolute; top: 0; left: 0; z-index: 1;  }
@media screen and (max-width: 1199px) { 
    .modelo .seccion2::after { width: 80px; height: 250px; }
}
@media screen and (max-width: 991px) { 
    .modelo .seccion1 .titulo [data-marca='aitana']::after { width: 63.5px; height: 63.5px; bottom: 6px; left: -50px; }
    .modelo .seccion1 .titulo [data-marca='alanna']::after { width: 63.5px; height: 63.5px; bottom: 6px; left: -50px; }
    .modelo .seccion1 .titulo [data-marca='leonora']::after { width: 63.5px; height: 63.5px; bottom: 6px; left: -50px; }
    .modelo .seccion2 .swiper-slide { height: 500px; }
}  
@media screen and (max-width: 767px) { 
    .modelo .seccion2::after { opacity: 0.5; }
    .modelo .seccion2 .swiper-slide { height: 300px; }
    .modelo .seccion1 .titulo .titulo1 { margin-left: initial; width: auto; }
    .modelo .seccion2 .titulo-seccion { padding: 60px 0; }
    .modelo .seccion2 { padding-bottom: 20px; }
}
@media screen and (max-width: 520px) { 
    .modelo .seccion2 .swiper-slide { height: 200px; }
}
.cotizador .seccion1 .titulo .titulo1 { position: relative; width: max-content; margin-left: auto; }
.cotizador .seccion1 .titulo [data-marca='cotizador']::after { content: url("../img/formas/cotizador-titulo.svg"); width: 95px; height: 90px; position: absolute; top: 0; left: -50px; opacity: 0.20; }
.cotizador .seccion2 { position: relative; padding-bottom: 50px; }
.cotizador .seccion2::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.cotizador .seccion2 .row { padding: 80px 0; }
.cotizador .seccion2 .row [class*="col-"]:nth-child(2) > div { width: max-content; margin-left: auto; }
.cotizador .seccion2 .row .titulo { text-transform: uppercase; margin-top: 20px; margin-bottom: 24px; font-family: var(--obold); font-size: 20px; font-weight: bold; line-height: 1.45; color: #4b4b4b; }
.cotizador .seccion2 .row .estados img { width:357px; height:30px; }
.cotizador .seccion2 .row .nota { margin-top: 8px; font-family: var(--aregular); font-size: 13px; line-height: 2.23; color: #adadad; }
.cotizador .seccion2 .row .nota b { font-family: var(--abold); }
.cotizador .seccion2 .plano svg { background-image: url(../img/cotizador/plano.jpg); background-size: contain; background-repeat: no-repeat; background-position: center; width: 100%; height: auto; }
@media screen and (max-width: 1199px) { 
    .cotizador .seccion2::after { width: 80px; height: 250px; }
}
@media screen and (max-width: 991px) { 
    .cotizador .seccion1 .titulo [data-marca='cotizador']::after { width: 65px; height: 60px; top: 0; left: -50px; }
    .cotizador .seccion2 .row { padding: 60px 0; }
    .cotizador .seccion2 .row .titulo { margin-bottom: 10px; font-size: 18px; }
}
@media screen and (max-width: 767px) { 
    .cotizador .seccion2 .row [class*="col-"]:nth-child(2) > div { width: auto; margin-left: inherit; }
    .cotizador .seccion2 .row .estados img { width: 100%; height: 30px; }
    .cotizador .seccion2 .row .titulo { margin-top: 40px; }
    .cotizador .seccion2 .row { padding: 60px 0 40px 0; }
    .cotizador .seccion2 .row .nota { font-size: 13px; line-height: 1.5; }
    .cotizador .seccion2 { padding-bottom: 20px; }
    .cotizador .seccion2::after { opacity: 0.5;}
    .cotizador .seccion1 .titulo .titulo1 { margin-left: initial; }
}
.detalle .seccion1 { position: relative; }
.detalle .seccion1 .swiper-slide { width: 100%; height: 100vh; min-height: 700px; padding-bottom: 100px; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.detalle .seccion1 .swiper-slide::after { content: ''; width: 100%; height: 100vh; min-height: 700px; background-color: rgba(0, 0, 0, 0.35); position: absolute; top: 0; left: 0; z-index: 1; }
.detalle .seccion1 > span.arrow { cursor: pointer; position: absolute; bottom: 90px; left: 0; right: 0; margin: auto; z-index: 2; text-align: center; }
.detalle .seccion1 > span.link { cursor: pointer; position: absolute; width: max-content; bottom: 40px; left: 0; right: 0; margin: auto; z-index: 2; font-family: var(--amedium); font-size: 14px; letter-spacing: 1.6px; text-align: center; color: #ffffff; }
.detalle .seccion1 > span.link::before { content: ""; position: absolute; width: 100%; height: 2px; bottom: -10px; left: 0; background-color: var(--blanco); visibility: hidden; transform: scaleX(0); -webkit-transform: scaleX(0); -moz-transform: scaleX(0); -ms-transform: scaleX(0); -o-transform: scaleX(0); transition: all 0.3s ease-in-out 0s; -webkit-transition: all 0.3s ease-in-out 0s; -moz-transition: all 0.3s ease-in-out 0s; -ms-transition: all 0.3s ease-in-out 0s; -o-transition: all 0.3s ease-in-out 0s; }
.detalle .seccion1 > span.link:hover::before,
.detalle .seccion1 > span.link.active::before { visibility: visible; transform: scaleX(1); -webkit-transform: scaleX(1); -moz-transform: scaleX(1); -ms-transform: scaleX(1); -o-transform: scaleX(1); } 
.detalle .seccion2 { position: relative; padding-bottom: 50px; }
.detalle .seccion2::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.detalle .seccion2 .ficha { padding-top: 20px; padding-bottom: 60px; border-top: solid 1px #ececec;}
.detalle .seccion2 .titulo-seccion { padding-top: 70px; padding-bottom: 30px; } 
.detalle .seccion2 .titulo-card { text-transform: uppercase; margin-bottom: 20px; font-family: var(--abold); font-size: 15px; line-height: 1.93; letter-spacing: 2px; color: #272727; }
.detalle .seccion2 .card { padding-right: 20px; font-family: var(--aregular); font-size: 14px; line-height: 1.57; color: #272727; }
.detalle .seccion2 .card.caracteristicas { padding-bottom: 20px; }
.detalle .seccion2 .card.palta { padding-top: 20px; }
.detalle .seccion2 .card.pbaja { padding-left: 30px; }
.detalle .seccion2 .card ul { padding-inline-start: 15px; }
.detalle .seccion2 .planta { padding: 0 40px; }
.detalle .seccion2 .planta .titulo-card { text-align: center; }
.detalle .seccion2 .imagen img { width: 100%; }
.detalle .seccion2 .datos [class*="col-"] { border-right: solid 1px #ececec; }
.detalle .seccion2 .ctn-boton { text-align: center; }
.detalle .seccion2 .boton { padding: 6px 60px; border: 1px #000000 solid; border-radius: 14px; background-color: #000000; color: #ffffff; font-family: var(--amedium); font-size: 13px; text-align: center; -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: 14px; -moz-border-radius: 14px; -ms-border-radius: 14px; -o-border-radius: 14px; }
.detalle .seccion2 .boton:hover { background-color: #ffffff; color: #000000; border: 1px #000000 solid;  box-shadow: 0 10px 30px 0 rgba(136, 136, 136, 0.59); }
@media screen and (max-width: 1199px) { 
    .detalle .seccion2::after { width: 80px; height: 250px; }
}
@media screen and (max-width: 991px) { 
    .detalle .seccion2 .datos [class*="col-"] { border-right: none; }
    .detalle .seccion2 .datos [class*="col-"]:not(:last-child) { border-right: solid 1px #ececec; }
    .detalle .seccion2 .planta { margin-top: 60px; }
}  
@media screen and (max-width: 767px) { 
    .detalle .seccion2::after { opacity: 0.5; }
    .detalle .seccion1 .swiper-slide { height: 300px; min-height: initial; padding-bottom: 60px; }
    .detalle .seccion1 .swiper-slide::after { height: 300px; min-height: initial; }
    .detalle .seccion1 > span.link { display: none; font-size: 12px; bottom: 20px; }
    .detalle .seccion1 > span.arrow { display: none; bottom: 50px; }
    .detalle .seccion2 .card.pbaja { padding: 0; padding-top: 20px; }
    .detalle .seccion2 .datos [class*="col-"]:not(:last-child) { border-right: none; }
    .detalle .seccion2 .card.palta { padding-right: 0; }
    .detalle .seccion2 .boton { padding: 6px 20px; }
}
@media screen and (max-width: 520px) { 
    .detalle .seccion2 .planta { margin-top: 40px; padding: 0; }
}
.programa { padding-top: 100px; }
.programa .seccion1 { position: relative; position: relative; padding-top: 70px; padding-bottom: 84px; }
.programa .seccion1::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.programa .seccion1 .row { box-shadow: 0 30px 60px 0 rgba(0, 0, 0, 0.25); border: solid 0.5px #d8d8d8; }
.programa .seccion1 .cabecera { margin-top: 34px; height: 120px; }
.programa .seccion1 .uno .cabecera { position: relative; margin-bottom: 60px; padding: 0 30px; } 
.programa .seccion1 .uno .titulo { margin-bottom: 20px; font-family: var(--pbold); font-size: 31px; line-height: 1.19; color: #000000; } 
.programa .seccion1 .uno { background-color: #c4ddd1; border-right: solid 0.5px #d8d8d8; }
.programa .seccion1 .uno .cabecera ul { display: flex; position: absolute; bottom: -50px; left: 30px; z-index: 2; }
.programa .seccion1 .uno .cabecera ul > li { text-transform: uppercase; font-family: var(--aregular); font-size: 15px; letter-spacing: 0.3px; color: #000000; }
.programa .seccion1 .uno .cabecera ul > li.active { font-family: var(--abold); }
.programa .seccion1 .uno .cabecera .tab-pane { font-family: var(--aregular); font-size: 16px; color: #000000; }
.programa .seccion1 .uno .cabecera .tab-pane b { font-family: var(--abold); }
.programa .seccion1 .uno .contenido ul { list-style: none; padding: 0; margin: 0; }
.programa .seccion1 .uno .contenido ul > li { height: 30px; border-bottom: solid 0.5px #9eceb7;; padding: 0 30px; font-family: var(--amedium); font-size: 13px; color: #4b4b4b; display: flex; align-items: center; }
.programa .seccion1 .dos { background-color: #f3f3f3; }
.programa .seccion1 .dos .swiper-slide { background-color: #f3f3f3; }
.programa .seccion1 .dos .cabecera { position: relative; margin-bottom: 15px; text-align: center; }
.programa .seccion1 .dos .cabecera .antes { cursor: pointer; width: 10px; height: 18px; position: absolute; bottom: 3px; margin: auto; left: 38%; display: flex; align-items: center; justify-content: center; }
.programa .seccion1 .dos .cabecera .despues { cursor: pointer; width: 10px; height: 18px; position: absolute; bottom: 3px; margin: auto; right: 38%; display: flex; align-items: center; justify-content: center; }
.programa .seccion1 .dos .cabecera .alineacion { margin-top: auto; }
.programa .seccion1 .dos .titulo { margin-bottom: 20px; font-family: var(--pregular); font-size: 28px; line-height: 1.14; color: #000000; }
.programa .seccion1 .dos .periodo { margin-top: 10px; font-family: var(--obold); font-size: 16px; line-height: 1.81; text-align: center; color: #000000; }
.programa table { background-color: transparent; width: 100%; text-align: center; }
.programa table th { height: 45px; width: 34px; font-family: var(--oregular); font-size: 13px; text-align: center; color: #4b4b4b; }
.programa table th:not(:last-child) { border-bottom: 1px solid #d8d8d8; border-right: 1px dashed #939393; }
.programa table th:last-child { border-bottom: 1px solid #d8d8d8; }
.programa table td { height: 30px; }
.programa table td:not(:last-child) { border-bottom: 1px solid #d8d8d8; border-right: 1px dashed #939393; }
.programa table td:last-child { border-bottom: 1px solid #d8d8d8; }
.programa table tr:nth-child(odd) td.active {background: #b5b5b5;}
.programa table tr:nth-child(even) td.active {background: #dfdfdf;}
.programa table tr:nth-child(14) td { height: 48px; }
.programa table tr:nth-child(15) td { height: 48px; }
.programa table tr:nth-child(16) td { height: 48px; }
.programa table tr:nth-child(17) td { height: 48px; }
.programa .seccion1 .uno .contenido ul > li:nth-child(14) { height: 48px; }
.programa .seccion1 .uno .contenido ul > li:nth-child(15) { height: 48px; }
.programa .seccion1 .uno .contenido ul > li:nth-child(16) { height: 48px; }
.programa .seccion1 .uno .contenido ul > li:nth-child(17) { height: 48px; }
@media screen and (max-width: 1199px) { 
    .programa .seccion1::after { width: 80px; height: 250px; }
    .programa .seccion1 .row { width: 960px; }
    .programa .seccion1 .contenedor { overflow: auto; }
}
@media screen and (max-width: 767px) { 
    .programa .seccion1::after { opacity: 0.5; }
    .programa .seccion1 .uno .titulo { font-size: 26px; }
    .programa .seccion1 .uno .cabecera .tab-pane { font-size: 14px; }
    .programa .seccion1 .uno .cabecera ul > li { font-size: 14px; }
    .programa .seccion1 .dos .titulo { font-size: 26px; }
    .programa .seccion1 .uno .contenido ul > li { font-size: 12px; }
}
.ubicacion { padding-top: 100px; }
.ubicacion .seccion1 { position: relative; padding-top: 70px; padding-bottom: 84px; }
.ubicacion .seccion1::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.ubicacion .seccion2 { position: relative; max-width: 1600px; margin: auto; margin-bottom: 30px; }
.ubicacion .seccion2 .mapa { width: 100%; height: 500px; }
.ubicacion .ctn-boton { position: absolute; bottom: 35px; left:0; right: 0; margin: 0 auto; width: max-content; } 
.ubicacion .boton { padding: 6px 30px; border: 1px #000000 solid; border-radius: 14px; background-color: #000000; color: #ffffff; font-family: var(--amedium); font-size: 13px; text-align: center; -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: 14px; -moz-border-radius: 14px; -ms-border-radius: 14px; -o-border-radius: 14px; }
.ubicacion .boton:hover { background-color: #ffffff; color: #000000; border: 1px #000000 solid;  box-shadow: 0 10px 25px 0 rgba(136, 136, 136, 0.59); }
@media screen and (max-width: 1199px) { 
    .ubicacion .seccion1::after { width: 80px; height: 250px; }
    .ubicacion .ctn-boton { bottom: -50px; } 
}
@media screen and (max-width: 991px) { 
    .ubicacion .seccion1 { padding-top: 60px; padding-bottom: 70px; }
    .ubicacion .seccion2 { margin-bottom: 120px; }
    .ubicacion .seccion2 .mapa { height: 400px; }
}  
@media screen and (max-width: 767px) { 
    .ubicacion .seccion1 { padding-top: 30px; padding-bottom: 40px; }
    .ubicacion .seccion1::after { opacity: 0.5; }
}
.aviso { padding-top: 100px; }
.aviso .seccion1 { position: relative; padding-top: 70px; padding-bottom: 60px; }
.aviso .seccion1::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }
.aviso .seccion2 { font-family: var(--aregular); font-size: 14px; line-height: 1.57; color: #272727; }
.aviso .seccion2 .contenido {  white-space: pre-wrap; } 
@media screen and (max-width: 1199px) { 
    .aviso .seccion1::after { width: 80px; height: 250px; }
}
@media screen and (max-width: 991px) { 
    .aviso .seccion1 { padding-top: 60px; padding-bottom: 60px; }
    .aviso .seccion2 { margin-bottom: 120px; }
    .aviso .seccion2 .mapa { height: 400px; }
}  
@media screen and (max-width: 767px) { 
    .aviso .seccion1 { padding-top: 30px; padding-bottom: 40px; }
    .aviso .seccion1::after { opacity: 0.5; }
}
.avances { padding-top: 100px; }
.avances .seccion1 { position: relative; padding-top: 70px; padding-bottom: 84px; }
.avances .seccion1::after { content: ''; width: 95px; height: 300px; z-index: -1; background-image: url(../img/formas/marca-inicio.svg); background-size: cover; position: absolute; top: 0; left: 0; }

@media screen and (max-width: 1199px) { 
    .avances .seccion1::after { width: 80px; height: 250px; }
}
@media screen and (max-width: 991px) { 
    .avances .seccion1 { padding-top: 60px; padding-bottom: 70px; }
}  
@media screen and (max-width: 767px) { 
    .avances .seccion1 { padding-top: 30px; padding-bottom: 40px; }
    .avances .seccion1::after { opacity: 0.5; }
}
/*------------ Avance de Obra ------------*/
.avance .tlo {font-family: var(--amedium); font-size: 14px; letter-spacing: 1px; color: #272727; text-transform: uppercase;}
.avance a:hover, .avance a:active, .avance a:focus, .avance a {text-decoration: none; color: inherit}
.avance .bg {height: 250px; width: 100%; max-width: 300px; margin: auto; box-shadow: 0 10px 60px 0 rgba(0, 0, 0, 0.16); cursor: pointer;}
.avance .bg.plus {height: 300px; width: 100%; max-width: 400px; margin: auto; box-shadow: 0 10px 60px 0 rgba(0, 0, 0, 0.16); cursor: pointer;}
.avance .card.provisional .cont-abs { position: absolute; top: 50%; left: 50%; transform:translate(-50%, -50%); -webkit-transform:translate(-50%, -50%); -moz-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); -o-transform:translate(-50%, -50%); display: flex; justify-content: center; width: 100%}
.avance .card.provisional .tlo {background-color: var(--blanco); padding: 14px 25px; }
.avance .back-pag {background-color: var(--negro); padding: 10px 20px; color: var(--blanco); font-size: 15px; cursor: pointer}

footer { position: absolute; bottom: 0; left: 0; width: 100%; height: 90px; background-color: #f6f6f6; }
footer .contenedor { width: 85%;color: #000; }
footer  { display: flex; justify-content: space-between; align-items: center; height: 90px; }
footer .box { display: flex; justify-content: space-between; align-items: center; height: 90px; }
footer .uno a img { width: 135px; height: 40px; }
footer .dos a:nth-child(1), footer .dos a:nth-child(2) { margin-right: 34px; text-transform: uppercase; font-family: var(--amedium); font-size: 13px; line-height: 2.92; letter-spacing: 0.5px; text-align: center; color: #272727; }
footer .dos a:nth-child(3) img { margin-left: 20px; width: 90px; height: 22px; }
footer .dos a:nth-child(4) img { margin-left: 16px; }
footer .dos a:nth-child(5) img { margin-left: 8px; }
@media screen and (max-width: 991px) {
    footer { height: 120px; }
    footer .box { display: initial; height: auto; }
    footer .uno { margin-bottom: 10px; }
    footer .uno, footer .dos { text-align: center; }
}  
@media screen and (max-width: 767px) { 
    footer { height: 230px; }
    footer .dos > a { line-height: 3; }
}

/* popover */
.popover {width:120px; border-radius: 0px; font-family: var(--aregular); }
.popover .popover-content{ font-size: 14px; padding: 6px 15px 6px 22px;}
.popover .content-title { font-family: var(--amedium);  }
.popover p { font-size: 14px; color: var(--negro); margin-bottom: 0!important; }
.popover .barra-verde{ width:8px; height: 62px; background:#b8e986; position:absolute; left:5px; bottom:5px; }
.popover .barra-amarilla{ width:8px; height:44px; background: #ffe192; position:absolute; left:5px; bottom: 5px; }
.popover .barra-roja{ width:8px; height:44px; background: #cf001a; position:absolute; left:5px; bottom:5px; }