html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {

  font-weight: 400;
  font-weight: 400;
  font-size: 1vw;
  line-height: 1.66vw;
  color: #001D52;
  
  font-family: "DM Sans", sans-serif;
  overflow-x: hidden;
  outline: 0;
  opacity:1;
  background-color: #F7F7FB;
  position: relative;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

header {     display: block; position: relative; overflow: hidden; padding: .5vw 4.5vw;  background:#fff; height:10.1015vh;}
header h1 { display:inline-block; float:left; position:relative; overflow:hidden; width:300px;padding-top: 15px;}
header h1 img { display:block; width:100%; height:auto; }
header h2 {display: inline-block; color: #C2C2C2; text-transform: uppercase; font-size: 1.6111vw; line-height: 1.3333vw; margin: 1.8vw auto 0 auto; font-weight: 400; text-align: center; width: 65vw; }
header .caixa { display:inline-block; float:right; position:relative; overflow:hidden; margin-top:1vw; }
header .caixa p { display:inline-block; margin-right:0vw; color:#007A5E; font-size:.8333vw; line-height: 1.3333vw; }
header .caixa img { display: inline-block; width: 7.7976190476vw; height: auto; vertical-align: middle; }

header .idioma { display: none; position: absolute; top: 2.2vw; left: 0; width: 2.2822822823vw; }
header .idioma img { display:block; width:100%; height:auto; }

.home { display:block; position:relative; overflow:hidden; width:100%; height:89.8985vh; background-repeat: no-repeat; background-position:center bottom; background-size:cover; padding: 3.61vw 29.30vw; text-align:center; background-image:url('../img/foto-home-1.jpg');}

.home h3 { display: block; color: #001D52; text-transform: uppercase; font-size: .88vw; line-height: 1vw; font-weight: 500; }
.home h2 { display: block; font-weight: 700; font-size: 2.3vw; line-height: 3vw; color: #001D52; margin-top:1vw;}
.home h2 span { display: block; }
.home p { display:block; margin-top:0.1vw; }
.home p span { display:block; }
.home .form { display:block; position:relative; overflow:hidden; width:100%; margin-top:2vw; }
.home .form input { display: block;  position: relative; overflow: hidden; width: 100%; background: #FFFFFF; border: 1.23732px solid #EFF0F7; box-shadow: 0px 9.89853px 30.9329px rgba(13, 10, 44, 0.06); border-radius: 74.239px; font-size: 1vw; line-height: 3.33vw; padding: 0 9vw 0 2vw; color: #000E29; outline: none;}
.home .form button { display: block; position: absolute; top: .38vw; right: 0.5vw; background: #6DD67C; box-shadow: 0px 3px 12px rgb(74 58 255 / 18%); border-radius: 56px; color: #fff; font-size: 1vw; line-height: 1.11vw; border: 1px solid #6DD67C; padding: .7142857143vw 1.9047619048vw .7142857143vw 1.9047619048vw; cursor: pointer;}
.home .frase { display: block; position: relative; overflow: hidden; width: 80%; margin: 0vw auto 0 auto; margin-top:20px;}
.home .frase img { display: inline-block; width: 2vw; height: auto; margin-right: 1vw; vertical-align: middle; }
.home .frase .fa { display:inline-block; font-size:1.7vw; margin-right:1vw; vertical-align: middle; color:#6DD67C; }
.home .frase p { display: inline-block; text-align: left; color: #000E29; font-size: .88vw; line-height: 1.27vw; vertical-align: middle; }

#ajax { background-image: url(../img/fondo-internas.jpg); background-repeat: no-repeat; background-position: center; background-size: cover; }
#ajax.sinfo { background-image:none; }
main .titulo { display: block; position: relative; overflow: hidden; }
main .titulo h2 { display: block; position: relative; overflow: hidden; font-weight: 700; margin-top: 1vw; font-size: 1.88vw; line-height: 2.55vw; text-align: center; color: #001D52; }
main .titulo p { text-align:center;  }
main .titulo p span { display:block; }

main .subtitulo { display: block; text-align: center; color: #001D52; font-size: 1.333vw; line-height: 1.94vw; font-weight: 700; padding:.5vw 0; }
main .subtitulo span { display:block; font-weight: 400; }

.homeInterna { display:block; position:relative; overflow:hidden; width:100%;  /*background-image: url(../img/fondo-internas.jpg);background-repeat: no-repeat; background-position:center; background-size:cover; */ text-align:center;}

.marco { display: block; position: relative; width: 41.548vw; margin: 1vw auto 1vw auto; padding: 0 0 2vw 0; background: #FFFFFF; border: 1px solid #EFF0F7; box-sizing: border-box; box-shadow: 0px 5px 16px rgb(8 15 52 / 6%); border-radius: 34px; height:35vw;  -webkit-transform: translateX(500px); transform: translateX(500px); opacity: 0; transition: all .5s; height:34vw;}
.marco.visible { opacity:1;-webkit-transform: translateX(0px); transform: translateX(0px); }

.botones { display:block; position:relative; overflow:hidden; width:41.548vw; margin:0 auto; }
.marco h2 { display: block;  margin-top: 2vw; font-weight: 700; font-size: 1.33vw; line-height: 1.94vw; color: #001D52; padding: 0 3vw; text-align:left; }
.marco.contop h2 { margin-top:9vw; }
.marco p { display: block; font-size: 1vw; line-height: 1.6vw; font-weight: 400; color: #000e29; padding: 0 3vw; text-align:left; margin-top:.5vw;}
.marco .mapa { position: relative; overflow: hidden; display: block; width: 100%; height: 20.5vw; margin-top: 1vw; background-repeat: no-repeat; background-position: top; background-size: cover;}

.pasos { display: block; position: relative; overflow: hidden; width: 85%; margin: 0 auto; text-align: center; padding-bottom: 1vw; margin-bottom: 1vw; margin-top: 2vw; border-bottom: 1px solid #D9DBE9; width:90%;}
.pasos span.numero { display:inline-block; margin-right:.5vw; position: relative; overflow: hidden; width: 1.5vw; }
.pasos span.numero .circulo { display: block; width: 100%; background: #6DD67C; height: 1.5vw; border-radius: 50%; }
.pasos span.numero p { position: absolute; color: #fff; font-size: .88vw; line-height: 1vw; left: 0; right: 0; margin: 0 auto; z-index: 99; padding: 0; text-align: center; top: 0.3vw; }
.pasos span.numero.pend p { color:#1e2a43; }
.pasos span.numero.pend .circulo { background: #EFF0F7;  }
/*.pasos span.numero { display: inline-block; color: #fff; font-size: .88vw; line-height: 1vw; background: #6DD67C; padding: 0.5vw 0.9vw; border-radius: 50%; margin-right: 0.5vw; }
.pasos span.numero.pend { display: inline-block; color: #1e2a43; font-size: .88vw; line-height: 1vw; background: #EFF0F7; padding: 0.5vw 0.8vw border-radius: 50%; margin-right: .5vw; }*/
.pasos span.linea { display: inline-block; vertical-align: top; margin-top:.5vw; width: 6vw; height: 0.3571428571vw; background: #EFF0F7; margin-right: .5vw; border-radius: 17px; position:relative; }
.pasos span.linea .mitad { display: block; position: absolute; top: 0; left: 0; width: 50%; background: #6DD67C; height: 0.3571428571vw; border-radius: 17px;}
.pasos span.linea .tercio { display: block; position: absolute; top: 0; left: 0; width: 75%; background: #6DD67C; height: 0.3571428571vw; border-radius: 17px;}
.pasos span.linea .total { display: block; position: absolute; top: 0; left: 0; width: 100%; background: #6DD67C; height: 0.3571428571vw; border-radius: 17px;}

.marco #panel {display: block; position: absolute; left: 0; bottom: 1vw; right: 0; margin: 0 auto; overflow: hidden; padding: 0.5vw 1vw;  border-radius: 27px; background: #FFFFFF; border: 1px solid #EFF0F7; box-sizing: border-box; box-shadow: 0px 2px 6px rgb(19 18 66 / 7%); border-radius: 46px; width: 16vw;}
.marco #panel #area { display: inline-block; float: left; position: relative; overflow: hidden; font-size: 1vw; line-height: 1.3vw; background: #fff;  padding: 0.5vw 1vw; margin-right:1vw; color:#000E29;} 
.marco #panel #delete-button { display: inline-block; float: left; width: auto; float: left; cursor: pointer; border: 0; padding: 0; margin: 0; border-radius: 0; width: 3vw; height: auto; cursor: pointer; background:none; width:2vw; text-align:center;}
.marco #panel #delete-button img { display:block; width:60%; height: auto; margin:0 auto;}
.marco #panel #delete-button .fa { display:block; font-size:20px; margin-bottom:5px;color:#000E29; }
.marco #panel #delete-button span { display:block; font-size:11px; text-align:center; color:#000E29;}
/*.marco #panel button:hover { color:#6DD67C; background:#fff; }*/

.marco ul.tiporesidencia { display: block; position: relative; overflow: hidden;  width: 85%; margin: 2vw auto 0 auto; }
.marco .tiporesidencia li { display: block; position:relative; overflow:hidden; width:100%; margin-bottom:2vw; background: #fff; padding: 1vw 2vw; color: #001D52; cursor: pointer; text-align: left; font-weight: 500; background: #FFFFFF; box-shadow: 0px 2px 11px rgb(69 65 164 / 6%), 0px 4px 10px rgb(31 37 89 / 7%);
    border-radius: 16px; font-size: 1vw; line-height: 1.1vw; color: #001d52;  cursor:pointer; text-align:left;border: 2px solid #fff}
    .marco .tiporesidencia li p { display: inline-block; float: left; font-size: 1vw; line-height: 1.1vw; position: relative; overflow: hidden; margin-left: 0;
    padding-top: 0.8vw; font-weight: 500; padding-left:0; }
.marco .tiporesidencia li img { display: inline-block; float: left;position: relative; overflow: hidden;margin-right:1vw; width:3.9285714286vw; height:auto; vertical-align:middle;}
 
.marco .tiporesidencia li:hover, .marco .tiporesidencia li.sele { border: 2px solid #6DD67C;} 

.marco ul.inclinacion { display: block; position: absolute; bottom: -.5vw; left:0; z-index: 9; text-align:center; width:100%;}
.marco .inclinacion li { display: inline-block; margin-right: 1vw; background: #fff; padding: 1vw 2vw; font-size: 1vw; line-height: 1.1vw; color: #001D52; font-weight: 500; cursor:pointer;background: #FFFFFF; box-shadow: 0px 2px 11px rgba(69, 65, 164, 0.06), 0px 4px 10px rgba(31, 37, 89, 0.07); border-radius: 16px; border:2px solid #fff; width:27%;}
.marco .inclinacion li:last-child { margin-right:0; }
.marco .inclinacion li span { display:block; }   
.marco .inclinacion li:hover, .marco .inclinacion li.sele { border:2px solid #6DD67C; } 
li#\33 1 {display: none;}
li#\33 2 p {padding: 0 1vw!important;}

.marco .solar {display: block; position: absolute; bottom: -.5vw; left: 0; z-index: 9; text-align:center; width:100%;} 
.marco .solar li {display: inline-block; margin-right: 1vw; background: #fff; padding: 1vw 0.5vw; font-size: 1vw; line-height: 1.1vw; color: #001D52; font-weight: 500; cursor:pointer;background: #FFFFFF; box-shadow: 0px 2px 11px rgba(69, 65, 164, 0.06), 0px 4px 10px rgba(31, 37, 89, 0.07); border-radius: 16px; border:2px solid #fff;
    vertical-align: top; width:18vw; min-height: 7vw;}
.en .marco .solar li { min-height:8.5vw; }    
.marco .solar li:last-child { margin-right:0; }
.marco .solar li span { display:block; }   
.marco .solar li p {     margin-left: 0; font-size: .8333vw; line-height: .9444vw; margin-top:.5vw; text-align:center; width:100%;}
.marco .solar li:hover, .marco .solar li.sele { border:2px solid #6DD67C;} 

.marco .input { display: block; position: relative; overflow: hidden; width: 85%; margin: 1vw auto; }
.marco input { display: block; position: relative; overflow: hidden; width: 100%; background: #FFFFFF; border: 1px solid #EFF0F7; box-sizing: border-box; box-shadow: 0px 8px 25px rgb(13 10 44 / 6%); border-radius: 60px; font-size: 1vw; line-height: 3.33vw; padding: 0 5vw; color: #000E29; text-align:center; }
.marco .input .menos { display: block; position: absolute; top: 0; left: 0; background: #FFFFFF; border: 1px solid #EFF0F7; box-shadow: 0px 2px 6px rgb(19 18 66 / 7%); border-radius: 46px; padding: 0.8vw 1.5vw; font-size: 1.666vw; cursor:pointer;}
.marco .input .mas { display: block; position: absolute; top: 0; right: 0; background: #FFFFFF; border: 1px solid #EFF0F7; box-shadow: 0px 2px 6px rgb(19 18 66 / 7%); border-radius: 46px; padding: 0.8vw 1.5vw; font-size: 1.666vw; cursor:pointer;}
.marco .input .sub { display: block; text-align: center; color: #A0A3BD; margin-top: 1vw; font-size: 1vw; line-height: 1.3vw; }

.botones .volver { display: inline-block; float: left; width: auto; cursor: pointer; font-size: 1vw; line-height: 1.1vw;  color:#6DD67C; padding:.83vw 2vw .9vw; background:#fff;  box-shadow: 0px 3px 12px rgba(74, 58, 255, 0.18);
border-radius: 56px; margin-bottom:2vw; border:1px solid #6DD67C; font-weight: 600;}
/*.botones .volver:hover { color:#fff; background:#6DD67C; }*/

.botones #enviaform2, .botones #enviaform3, .botones #enviaform4, .botones #enviaform5, .botones #enviaform6, .botones #enviaform8 { display: inline-block; float: right; width: auto; cursor: pointer; font-size: 1vw; line-height: 1.1vw;  color:#fff; padding:.83vw 2vw .9vw; background:#6DD67C;  box-shadow: 0px 3px 12px rgba(74, 58, 255, 0.18);
border-radius: 56px; margin-bottom:2vw; border:1px solid #6DD67C; text-decoration:none; font-weight: 600;}
/*.botones #enviaform2:hover, .botones #enviaform3:hover, .botones #enviaform4:hover, .botones #enviaform5:hover, .botones #enviaform6:hover, .botones #enviaform8:hover { color:#6DD67C; background:#fff; }*/

.final h2 { display:block; position:relative; overflow:hidden; width:85%; text-align:center; margin:2vw auto 2vw auto; color:#001D52; font-size:1.888vw; line-height: 2.55vw; font-weight: 700; }
.final.final .caixa2 { display:block; width: 85%; text-align:center; position:relative; overflow:hidden; margin:1vw auto 0 auto; }
.final.final .caixa2 p { display:inline-block; margin-right:0vw; color:#007A5E; font-size:.8333vw; line-height: 1.3333vw; }
.final.final .caixa2 img { display: inline-block; width: 7.7976190476vw; height: auto; vertical-align: middle; }
.final .ico { display: block; margin-top: 3vw; margin: 5vw auto 0 auto; text-align: center; font-size: 2vw; line-height: 2.2vw; color: #6DD67C; }


.marco2 { display: block; position: relative; overflow: hidden; width: 90%; margin: 1vw auto; padding: 0 0 0 0; /* border: 1px solid #fff; */ box-sizing: border-box; /* box-shadow: 0px 5px 16px rgb(8 15 52 / 6%); */ background: #F7F7FB; /* border-radius: 36px; */ min-height: 43vw; }
.marco2 .izq { display:inline-block; float:left; position:relative; overflow:hidden; width:50%; background:#001D52;  border-radius:36px 0 0 36px; padding:1.5vw 1vw; min-height: 43vw;}
.marco2 .der { display:inline-block; float:right; position:relative; overflow:hidden; width:50%; background: #EFF0F6; border-radius: 0 34px 36px 0; padding: 1.5vw 3vw; min-height: 43vw;}
.marco2 .izq .cuadro { display:block; position:relative; overflow:hidden; width:80%; margin:0 auto; width:90%; }
.marco2 .izq .cuadro h2 { display: block; text-align: center; color: #fff; font-size: 1.33vw; font-weight: 700; line-height: 1.38vw; margin-bottom: 2vw; }
.marco2 .izq .cuadro p { display: block; font-size: 1vw; line-height: 1.3vw; font-weight: 400; color: #fff;}
.marco2 .izq .cuadro p strong { font-weight: 900; }
.marco2 .der  h2 { display: block; margin-top:6vw; color: #001D52; font-size: 1.33vw; font-weight: 700; line-height: 1.38vw; margin-bottom: 2vw; }
.marco2 .der form { display: block; position: relative; overflow: hidden; width: 100%; margin-top: 3vw; }
.marco2 .der form ul { display: block; position: relative; overflow: hidden; width: 100%; }
.marco2 .der form ul li { display:inline-block; float:left; position:relative; overflow:hidden; width:48%; margin-bottom:2vw; }
.marco2 .der form ul li.dere { float:right; }
.marco2 .der form ul li.largoo { width:100%; margin-right: 0; }
.marco2 .der form ul li.largoo #acepto { display: inline-block;
    float: left;
    width: 2vw; }
.marco2 .der form ul li label { display:block; margin-bottom:.5vw; font-size:1vw; line-height: 1.3vw; color:#001D52; font-weight: 500;}
.marco2 .der form ul li input { display: block; position:relative; overflow:hidden; width: 100%; background: #FFFFFF; /* Neutral/300 */ border: 1px solid #EFF0F7; box-sizing: border-box; /* Input/Default */ box-shadow: 0px 2px 6px rgba(19, 18, 66, 0.07); border-radius: 46px; color:#000E29; font-size:1vw; line-height: 3.3vw; padding: 0 2vw;}
.marco2 .der form button { display: block; cursor: pointer; font-size: 1vw; line-height: 1.1vw; color: #fff; padding: 0.83vw 2vw 0.9vw; margin-bottom: 2vw; text-decoration: none; width: 100%; border:1px solid #6DD67C; margin-top: 1vw; background: #6DD67C; box-shadow: 0px 3px 12px rgb(74 58 255 / 18%); border-radius: 56px; font-weight: 600;}
/*.marco2 .der form button:hover { background:#EFF0F6; color:#001D52;}*/

.marco2 .der form ul li.primero::before { display:block;  content:url('../img/nombre.svg'); position:absolute; right:1vw; top:2.5vw; width:1.5vw; height:2.5vw; z-index:1; }
.marco2 .der form ul li.segundo::before { display:block;  content:url('../img/e-mail.svg'); position:absolute; right:1vw; top:2.9vw; width:1.5vw; height:2.5vw; z-index:1; }
.marco2 .der form ul li.tercero::before { display:block;  content:url('../img/movil.svg'); position:absolute; right:1vw; top:2.5vw; width:1.5vw; height:2.5vw; z-index:1; }
.marco2 .der form ul li.cuarto::before { display:block;  content:url('../img/codigo.svg'); position:absolute; right:1vw; top:2.5vw; width:1.5vw; height:2.5vw; z-index:1; }

ul.resultados { display: block; position: relative; overflow: hidden; width: 100%; }
.resultados li { display: block; position: relative; overflow: hidden; width: 100%; margin-bottom: 1.5vw; padding-bottom: 1.5vw; border-bottom: 1px solid #EFF0F6; }

.resultados li div p { color:#fff; font-weight: 500;  line-height:20px;}
.resultados li div { display: inline-block; float: left; position: relative; overflow: hidden; width: 85%; padding-top:1vw; }
.resultados li div h4 { display: block; color: #fff; font-size: 1.1vw; line-height: 1.94vw; font-weight: 700; }
.resultados li.color div p, .resultados li.color div h4 { color:#001D52 !important; }
.resultados li img { display: inline-block; float: right; position: relative; overflow: hidden; width: 2.8571428571vw; margin-top:.5vw; height: auto; vertical-align: top; }
.resultados li.color { background: #fff; border-radius: 16px; padding: 1vw; }
.resultados li.color div { width:80%; padding-top:.4vw; }


.resultados li.mitad { width: 48%; display: inline-block; float: left; }
.resultados li.mitad2 { width: 48%; display: inline-block; float: right; }
.resultados li.mitad div p span, .resultados li.mitad2 div p span { display:block; }
.resultados li.mitad div, .resultados li.mitad2 div {     width: 100%; padding-top: 0; }
.marco2 .izq .cuadro p.centrado { text-align:center; }
.mensaje { color: #6DD67C; font-size: 1vw; line-height: 1.3vw; margin-bottom: 2vw; font-weight: 500; }

.botones.grande { width:90%; }
.botones.grande .volver { font-size: .7vw; line-height: .8vw; padding: 0.4vw 1vw; color: #001D52; border-color:#001D52;margin-bottom:1vw;}
.botones.grande #enviaform8 { font-size: .7vw; line-height: .8vw; padding: 0.4vw 1vw; color: #001D52; border-color:#001D52; background:#fff; margin-bottom:1vw;}

.banner { display: block; position: relative; overflow: hidden; width: 90%; background: #007A5E; margin: 0 auto; background: #007A5E; border: 1px solid #EFF0F7; box-shadow: 0px 5px 16px rgb(8 15 52 / 6%); border-radius: 10px; padding:1vw; }
.banner.largo { width:100%; }
.banner h2 { display: inline-block; float: left; position: relative; overflow: hidden; vertical-align: middle; color: #fff; font-size: 1.064vw; line-height: 1.2vw; padding-top: 0.5vw; }
.banner h2 span { display:block; font-weight: 500; }
.banner img { display: block; position: absolute; top: 1.5vw; left: 0; right: 0; margin: 0 auto; width: 7.6785714286vw; height: auto; }
.banner .calcula { display: table; float: right; position: relative; overflow: hidden; background: #007A5E; border: 1px solid #EFF0F7; box-shadow: 0px 5px 16px rgb(8 15 52 / 6%); border-radius: 36px; color: #fff; font-size: 1vw; line-height: 1.33vw; padding: 1vw; }

.datos { display: block; position: relative; overflow: hidden; width: 90%; margin: 2vw auto;  }
.datos p { display:block; font-size:1vw; line-height: 1.66vw; font-weight: 400; margin-bottom:1vw;  }
.datos p strong { font-weight: 700; }
.datos p span { display:block; }

.marco2.presupuesto .der  h2 { display: block; margin-top:4vw; color: #001D52; font-size: 1.33vw; font-weight: 700; line-height: 1.38vw; margin-bottom: 2vw; }
.marco2.presupuesto .der  h2 span { display:block; margin-top: 1vw; font-size:1vw; line-height: 1.33vw; font-weight: 400; }
.marco2.presupuesto .subtitulo { display: block; position: relative;  width: 100%; background: #A0A3BD; border-radius: 16px; text-align: left; padding: 1vw; color: #fff; font-size: 1vw; line-height: 1.66vw; font-weight: 400;}
.marco2.presupuesto .subtitulo .limpia { display: block; position: absolute; top: -0.5vw; right: 2vw; z-index: 9; background:#fff; padding:.4vw .6vw; border-radius:4px; }
.marco2.presupuesto .subtitulo .limpia img { display: inline-block;
    width: 1.0714285714vw;
    height: auto;
    margin-right: 5px;
    float: left;
    position: relative;
    overflow: hidden;}
.marco2.presupuesto .subtitulo .limpia p { color: #6DD67C;
    font-size: .8vw;
    line-height: .9vw;
    display: inline-block;
    width: auto;
    float: left;
    position: relative;
    overflow: hidden;}
ul.detalles { display: block; position: relative; overflow: hidden; width: 100%; padding: 1vw; background: #FFFFFF; opacity: 0.9; border-radius: 16px; margin-top: 0.5vw; margin-bottom:1vw;}
.detalles li { display:inline-block; float:left; position:relative; overflow:hidden; width: 28%; margin-right:.5vw; }
.detalles li p { display:block; font-size:1vw; line-height: 1.66vw; font-weight: 700; }
.detalles li p span { display:block; font-weight: 400; }
.detalles li:last-child { margin-right:0; width:38%; }
.marco2.presupuesto .der p { width:90%; }
.comparte { display:block; margin-top:2vw; }
.comparte .link { display:block; position:relative; overflow:hidden; width:100%; margin-top:.3vw; background:#fff; cursor:pointer;}
.comparte .link img { display:inline-block; float:left; position:relative; overflow:hidden; width:2.5vw; height:auto; }
.comparte .link p { display:inline-block; float:left; position:relative; overflow:hidden; color:#A0A3BD; font-size:1vw; line-height: 1.66vw; padding:.3vw 1vw; }
.copiar { display: table; margin-top: 0.5vw; color: #A0A3BD; font-size: .8333vw; line-height: 1.33vw; cursor: pointer; }
.marco2.presupuesto .botones.grande { text-align:center; }
.marco2.presupuesto .botones.grande #enviaform8 { margin-top:1vw; float:none; }

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

  header { height:90px; }
  .home, .homeInterna { min-height:86vh; }

}

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

  .marco { min-height:40.5vw; }
  .marco .mapa { min-height:23.5vw; }
  header { height:90px; }
  .home, .homeInterna { min-height:89.8985vh; }

}

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

  .marco { min-height:42vw; }
  .marco .mapa { min-height:27.5vw; }

}

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

  .marco { min-height:37vw; }
  .marco .mapa { min-height:22.5vw; }

}

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

  #ajax { background-image:none; }
  .idioma { display:none!important;}
  header .idioma {top:4.2vw; width:4.282282vw; }
  header h2 { display:none; }
  header .caixa { margin-top:1.8vw; }
  header .caixa img { width:13.797619vw; }
  .marco { opacity:1;-webkit-transform: translateX(0px); transform: translateX(0px);   }
  main { height:auto; }
  body { background:#f7f7fb; }
  header { padding:10px 50px; margin-bottom:0px; height:auto; }
  header h1 { width:16.47619vw; }
  header .calcula { font-size:16px; line-height: 20px; padding:10px 20px; margin-top:15px;}
  .home { padding:50px 90px; }
  .home h3 { font-size:16px; line-height: 18px; }
  .home h2 { font-size:50px; line-height: 55px; }
  body, .home p, .marco p { font-size:18px; line-height: 25px; }
  .home .form { margin-top:20px; }
  .home .form input { font-size:18px; line-height: 20px; padding:10px 110px 10px 20px; }
  .home .form button { font-size:16px; line-height: 20px; top:.5vw; }
  .home .frase p { font-size:16px; line-height: 23px;margin-top: 0px;
    width: 90%;}
  .home .frase img { width:4vw; margin-right:10px; }
  .home .frase .fa { font-size:25px; margin-right:10px; }
  main .titulo h2 { font-size: 34px; line-height: 46px; margin-top: 10px; }
  .marco { width:90%; margin:20px auto; padding:20px 0 50px 0; min-height:81.5vw; height:auto;}
  .marco .mapa { height:56vw; margin-top:20px;}
  /*.pasos span.numero, .pasos span.numero.pend {font-size: 16px; line-height: 18px;padding: 5px 11px; margin-right: 5px; }
  .pasos span.linea { width:14vw; }*/
  .pasos span.numero { margin-right:5px; width:30px; }
  .pasos span.numero .circulo { height:30px; }
  .pasos span.numero p { top:7px; font-size:16px; line-height: 18px; }
  .pasos span.linea {display: inline-block; vertical-align: top; margin-top: 10px; width: 100px; height: 7px; background: #EFF0F7; margin-right: 5px; border-radius: 17px; position: relative; }
  .pasos span.linea .mitad, .pasos span.linea .total, .pasos span.linea .tercio { height:7px; }
  .pasos { margin:10px auto; padding-bottom:20px; width:90%;}
  .marco2 .izq .cuadro { width:90%; }
  .marco h2 {margin-top: 20px; font-weight: 700; font-size: 24px; line-height: 35px; margin-left: 35px; }
  .marco p { margin-left:35px; }
  .final.final h2 { width: 70%; margin: 100px auto; }
  .final.final .caixa2 p { font-size:15px; line-height: 20px; }
  .final.final .caixa2 img { width: 15.797619vw; }
  .final.final .ico { margin-top:30px; font-size:30px; }
  .botones .volver, .botones #enviaform2, .botones #enviaform3, .botones #enviaform4, .botones #enviaform5, .botones #enviaform6, .botones #enviaform8, .marco2 .der form button { font-size:18px; line-height: 20px; padding:8px 20px 9px; }
  .marco #panel { padding:10px; bottom:20px; width:31vw; }
  .marco #panel #area { font-size:18px; line-height: 20px; padding:5px 10px; margin-right:10px; width:36vw; }
  .marco #panel #delete-button { width:2vw; }
  .botones { width:87.405vw; }
  .marco ul.tiporesidencia { margin:80px auto 0 auto; width:90%; }
  .marco .tiporesidencia li { font-size:18px; line-height: 20px; margin-bottom:30px; padding:20px; }
  .marco .tiporesidencia li img { width:6.5vw; margin-right:10px; }
  .marco .tiporesidencia li p { font-size: 18px; line-height: 20px; padding-top:13px;}
  .marco ul.inclinacion {bottom: 25px; width: 100%; }
  .marco .inclinacion li { font-size:18px; line-height:20px; padding:20px; margin-right:10px;}
  .marco .input { width:90%; margin:60px auto; }
  .marco input { font-size: 18px; line-height: 20px; padding: 10px 20px; width: 100%; margin-top: 20px; }
  .marco .input .sub { margin-top: 10px; font-size: 16px; line-height: 20px }
  .marco .input .menos {display: block; position: absolute; top: 22px; left: 2px; background: #FFFFFF; border: 1px solid #EFF0F7; box-shadow: 0px 2px 6px rgb(19 18 66 / 7%); border-radius: 60px; padding: 5px 10px; font-size: 18px; cursor: pointer; }
  .marco .input .mas {display: block; position: absolute; top: 22px; right: 2px; background: #FFFFFF; border: 1px solid #EFF0F7; box-shadow: 0px 2px 6px rgb(19 18 66 / 7%); border-radius: 60px; padding: 5px 10px; font-size: 18px; cursor: pointer; }
  .marco .solar li { font-size:18px; line-height: 20px; padding:20px; margin-right:10px; width:37vw;}
  .marco .solar li p { font-size:15px; line-height: 17px; }
  .marco ul.solar {bottom: 25px; width: 100%; }
  .marco2 { width:90%; margin:10px auto; min-height:auto;height:auto !important; }
  .marco2 .izq { display:block; float:none; width:100%; padding:20px; min-height:auto;height:auto !important; border-radius:36px; margin-top:20px;}
  .marco2 .der { display:block; float:none; width:100%; padding:20px; min-height:auto; margin-top:20px; border-radius:36px; height:auto !important;}
  .marco2 .izq .cuadro h2, .marco2 .der h2 { font-size:24px; line-height: 35px; margin-bottom:20px; margin-top:20px;}
  .marco2 .izq .cuadro p, .marco2 .der p { font-size:18px; line-height: 20px; }
  .marco2 .der form { margin-top: 30px; }
  .marco2 .der form ul li { margin-bottom:30px; }
  .marco2 .der form ul li label { margin-bottom:10px; font-size:18px; line-height: 20px; }
  .marco2 .der form ul li input { font-size:18px; line-height: 40px; padding:0 20px; }
  .marco2 .der form ul li.primero::before, .marco2 .der form ul li.segundo::before, .marco2 .der form ul li.cuarto::before {right: 20px; top: 30px; width: 20px; height: 20px;  }
  .marco2 .der form ul li.segundo::before { top: 32px; right: 27px }
  .marco2 .der form ul li.tercero::before { top:38px; }
  .resultados li { margin-bottom:30px; padding-bottom:30px; }
  .resultados li div h4 { font-size:21px; line-height: 25px; }
  .resultados li img { width:7vw; }
  .resultados li.mitad div, .resultados li.mitad2 div { width:100%; }
  .resultados li div { padding-top:0; }
  .resultados li.color { padding:20px; }
  .mensaje { font-size:16px; line-height: 18px; margin-bottom:20px; }
  .home p span, main .titulo p span { display:inline; }
  main .subtitulo { font-size:18px; line-height: 30px; }
  .botones.grande .volver, .botones.grande #enviaform8 {font-size: 15px; line-height: 17px; padding: 6px 15px;  margin-bottom: 10px; }
  .banner { padding:20px; margin-top:20px; }
  .banner h2 { font-size:20px; line-height: 30px; }
  .banner img { top:36px; width:9.678571vw; }
  .banner .calcula { font-size:13px; line-height: 20px; padding:10px 15px; margin-top:10px; }
  .datos { margin:40px auto; }
  .datos p { display: block; font-size: 16px; line-height: 20px; font-weight: 400; margin-bottom: 10px; }
  header .caixa p { font-size:14px; line-height: 18px; }
  .marco2.presupuesto .der h2 {display: block; margin-top: 20px; color: #001D52; font-size: 24px; font-weight: 700; line-height: 30px; margin-bottom: 20px; }
  .marco2.presupuesto .der h2 span { margin-top: 10px; font-size: 18px; line-height: 30px; ; }
  .marco2.presupuesto .subtitulo {padding: 20px; font-size: 18px; line-height: 30px; }
  .marco2.presupuesto .subtitulo img {top: -10px; right: 20px; width: 18.48vw; }
  ul.detalles {padding: 20px;margin-top: 10px; margin-bottom: 20px; }
  .detalles li:last-child { width: 38%; }
  .comparte { margin-top:30px; }
  .comparte .link { margin-top:10px; }
  .comparte .link img { width:5.5vw; }
  .comparte .link p { padding:10px 10px 10px 20px; }
  .copiar { margin-top:10px; font-size:15px; line-height: 20px; }

}

@media screen and (max-width: 700px) {
  header { padding:10px 20px; height:auto; }
  header .idioma {top: 7.7vw; width: 7vw; }
  header .caixa {margin-top: 10px;padding-right:0px;}
  header h1 {width:35%; margin-top:0px; margin-left:0px;}
  header .calcula, .marco button, .marco1 button { font-size:12px;  }
  header .calcula { margin-top:10px; }
  header .caixa p { font-size:11px; line-height: 18px; }
  header .caixa img { width:19.797619vw; }
  .home { padding:80px 20px 20px 20px; height:auto; min-height:89.8985vh; background-image:url('../img/foto-home-movil-1.jpg');}
  .home h2 {font-size: 28px; line-height: 30px; margin-top: 10px; margin-bottom:10px;}
  .home .form button { top:7px; right:10px; }
  .home .frase { width:90%; margin-top:20px; margin:10px 0 0 0; }
  .home .frase p { line-height: 16px; width: 84%; font-size: 14px;}
  .home .frase img { width:8vw; }
  main .titulo { width:90%; margin:0 auto; }
  main .titulo h2 { font-size:20px; line-height: 26px; margin-bottom:10px;}
  body { font-size:16px; line-height: 18px; }
  /*.pasos span.linea { width:9vw; height:5px; }
  .pasos span.linea .mitad, .pasos span.linea .tercio, .pasos span.linea .total { height:5px; }*/
  .home .form input { font-size:16px; border-radius:56px;}
  .marco { padding:10px 0 40px 0; }
  .pasos { width:93%; }
  .marco .mapa { height:71vw; }
  .marco h2 {margin-top: 20px; font-weight: 700; font-size: 20px; line-height: 25px; margin-left: 20px; margin-bottom:5px;}
  .marco p { margin-left:20px; font-size:16px; line-height: 18px; }
  body, .home p, .marco p, .marco #panel #area, .botones .volver, .botones #enviaform2, .botones #enviaform3, .botones #enviaform4, .botones #enviaform5, .botones #enviaform6, .botones #enviaform8, .marco2 .der form button, .marco .tiporesidencia li { font-size:16px; line-height: 20px; }
  .marco #panel { width:56vw; }
  .home .form { overflow:visible; }
  .marco #panel #delete-button {width:4vw; width: 8vw;
    margin-right: 10px;}
    .marco #panel #delete-button .fa { font-size:15px; }
    .marco #panel #delete-button span { font-size:10px; }
  .marco .tiporesidencia li img { width:12vw; }
  .marco .tiporesidencia li p {font-size: 16px; line-height: 18px; padding-top: 4px; width: 100%; }
  .marco .tiporesidencia li span { display:block; }  
  .marco2 .izq, .marco2 .der { padding:10px; }
  .marco2 .izq .cuadro { width:90%; }
  .resultados li img { width:9vw; }
  .resultados li div { width:100%; }
  .resultados li.color div { width:85%; }
  .resultados li.color img { margin-top:10px; }
  .resultados li.mitad, .resultados li.mitad2 { width:100%; display:block; }
  .marco2 .der form ul li { display:block; float:none; width:100%; }
  .marco2 .der form ul li.tercero::before {top: 33px; right: 30px; }
  .izq .pasos { width:98.5%; }
  .cuadro h2 { font-size:24px; line-height: 30px; }
  .marco2 .der form ul li.segundo::before {top: 38px; right: 22px; }
  .marco2 .der form ul li.cuarto::before { right:15px; }
  .marco ul.inclinacion { bottom:-13px; }
  .marco .inclinacion li {padding: 10px; font-size: 11px; line-height: 16px; width: 31%; margin-right: 5px; min-height: 19vw; vertical-align: top; }
  .marco .solar li {font-size: 14px; line-height: 18px; padding: 10px; margin-right: 5px; width: 48%; min-height: 31vw; }
  .marco .solar li p {font-size: 11px; line-height: 15px; }
  .home .form {margin-top: 40px; }
  .marco ul.tiporesidencia { margin-top:40px; }
  .marco .tiporesidencia li { margin-bottom:20px; padding:10px 20px; }
  .marco .tiporesidencia li p { width:75%; }
  .marco ul.solar { bottom:-13px; }
  .final.final .caixa2 img {width: 25.797619vw; }
  .final.final h2 {width: 80%; margin: 50px auto 20px auto;; }
  main .subtitulo {font-size: 16px; line-height: 20px; width: 90%; margin: 0 auto; }
  .marco2 .izq .cuadro h2, .marco2 .der h2 {    font-size: 19px; line-height: 26px;}
  .marco2 .izq .cuadro p.centrado { margin-bottom:10px; }
  .marco2 .der form ul li.primero::before, .marco2 .der form ul li.segundo::before, .marco2 .der form ul li.cuarto::before {right: 30px; top: 36px; width: 10px; height: 10px; }
  .marco2 .der form ul li.segundo::before {top: 41px; right: 30px; width: 10px; height: 10px; }
  .marco2 .der form ul li.tercero::before {top: 36px; }
  .marco2 .der form ul li.cuarto::before {right:30px;}
  .banner h2 { display:block; width:100%; margin-bottom:60px; }
  .banner img {top: 86px; width: 31.678571vw; }
  .banner .calcula {font-size: 13px; line-height: 20px; padding: 10px 15px; margin-top: 10px; margin: 10px auto; float: none; }
  .marco2.presupuesto .subtitulo img { width:38.48vw; }
  .detalles li {display: block; float: none; position: relative; overflow: hidden; width: 100%; margin-right: 0; margin-bottom: 10px; }
  .detalles li:last-child { margin-bottom:0; }
  .detalles li p { width:100% !important; font-size:18px !important; line-height: 30px !important; }
  .detalles li p span { width:100% !important; font-size:18px !important; line-height: 30px !important; }
  .detalles li:last-child {width: 100%; }
  .marco2 .izq .cuadro p, .marco2 .der p {font-size: 13px; line-height: 24px; }
  .resultados li div h4 { font-size:16px; }
  .comparte .link img { width:11.5vw; }
  .comparte .link p {padding: 15px 10px 10px 20px; font-size: 15px; line-height: 17px; width: 80% !important; }
  .resultados li {margin-bottom: 20px; padding-bottom: 20px; }
  .marco .input .mas, .marco .input .menos { padding:10px; }
  .marco2.presupuesto .der h2 { font-size:22px; line-height: 28px; }
  .marco2.presupuesto .der h2 span {margin-top: 10px; font-size: 18px; line-height: 25px; }
  .marco p { width:90%; }
  .final.final .caixa2 p { width:auto; }
  .final.final .caixa2 p { font-size:12px; }
  .marco2 .der { padding:10px 20px; }
  .marco2 .der form ul li.largoo #acepto {display: inline-block; float: left; width: 30px; padding: 0 !important; margin-left: 0; }
  .marco2 .der form ul li.largoo label { margin-bottom: 0; font-size: 16px; display: inline-block; float: left; width: 88%; font-weight: 400; vertical-align: top; margin-top: 0 }
  .banner { text-align:center; }
  .banner h2 { margin-bottom:70px; font-size:19px; line-height: 25px; }
  .marco2.presupuesto .subtitulo .limpia { padding:4px 6px;top: -14px; right: 10px; }
  .marco2.presupuesto .subtitulo .limpia img { width:15px; top:unset; right:unset;}
  .marco2.presupuesto .subtitulo .limpia p { font-size: 11px; line-height: 13px; }
  .pasos span.linea { width:40px; }
  .pasos span.numero { width:30px; }
  .pasos span.numero .circulo { height:30px; }
  

  
}