html{
	overflow:hidden;
}
body{
    overflow:hidden !important; margin:0 !important; padding:0 !important; min-height: 100% !important; height: 100% !important;
}
body.ui-mobile-viewport.ui-overlay-a, .ui-page-theme-a{
    /*background-color: #000 !important;*/
    background-color: transparent !important;
    min-height: 100% ;
    width:100%; height:100%;
    overflow: hidden !important;
}
.builder-process {
    position: relative;
}

/*TIPOGRAFIA*/
@font-face {
    font-family: 'montserrat';
    src: url('../fonts/Montserrat-Medium.ttf') format('woff');
    font-style: normal;
}
@font-face {
    font-family: 'playfair';
    src: url('../fonts/PlayfairDisplay-VariableFont_wght.woff2') format('woff');
    font-style: normal; 
}


.caracteristicas ul li{font-family: 'montserrat' !important;}
h1,h2, .casa-botones a, form, input, .nodispo, #limpiar input[type="reset"]{font-family: 'playfair' !important;}

#range_movil{ width: 20%; margin: 0px auto; display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; z-index: 999999;}
.ui-mobile .ui-page-active{overflow-y: hidden; min-height: 100% !important;}
#range_movil button#next{position: absolute; top: 20%; width: 1.8em; height: 1.8em; padding: 0.1em; left: 0px; background: #C4C4C0; border-radius: 50%; font-size: 1.6em; text-shadow: none;}
#range_movil button#prev{position: absolute; top: 20%; width: 1.8em; height: 1.8em; padding: 0.1em; right: 0px; background: #C4C4C0; border-radius: 50%; font-size: 1.6em; text-shadow: none;}

body input[type="range" i] {
    color: -internal-light-dark(rgb(255, 255, 255), rgb(255, 255, 255)) !important;
}

#botones #todos, #botones #limpiar{display:none;}


/******************* NUEVOS ESTILOS **********************/
body{margin: 0px; background-color: #000000;}
    .project-content{width:100%; height:100%;}
    /*.builder-process-image svg image{width:100%; height:100%;}*/
    .builder-process-image{
        height: 100vh !important;
        vertical-align: middle;
        margin: 0;
        overflow: hidden;
        width: 100%;
        text-align: center;
        justify-content: center;}
    /*.builder-process-image svg { 
        display: inline-block;
        position: absolute;
        top: 0; 
        left: 0;
        max-width: none;
        width: auto; 
        height: 100vh !important;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
    }*/
    .builder-process-image svg { display: inline-block; position: absolute; max-width: 100vw; height: 100vh !important; top: -5%; left: 0px;     max-height: 100vh;}
    /*.builder-process-image svg image{ height: 100vh; }*/
    /*svg{max-width:100%; overflow:visible;}*/
	.input-range{position:absolute; z-index:999; top:85%; width: 100vw;}
    .input-range-bis{top:95%; position:absolute; z-index:999; width: 100vw;}
	.input-range input{ width: 100vw; padding: 0% 10%;}
    .input-range-bis input{ width: 100vw; padding: 0% 10%;}
	/*.img-svg{position:fixed;}*/

    a path {z-index: 9999999; }
   

    /*******pop-up********/
    #result-piso{ font-size: 1em; width: 100%;}
    #result-piso:nth-first-child{display: block;}
    #pop_casa{position: absolute; top: 10%; z-index: 999; left: 36%; width: 450px;}
    .container-casa{ margin: 15px 15px; background-color: #c4c4c0d4; backdrop-filter: blur(10px); min-height: 180px;}
    .container-casa #popup_close{ float: right; font-size: 2em; line-height: 1em; cursor: pointer; padding: 0px 10px; color: #3d3d3d; background-color: transparent;}
    .container-casa .popup_like{display: inline-block; font-size: 23px; cursor: pointer; padding:3px 10px; border-radius: 4px 0px 4px 4px; color:#000; text-decoration: none;}
    #pop-head{height: 8em; width: 8em; margin: 0px auto; background-image:url("../img/captura.jpg"); background-size: cover;}
    .caracteristicas{padding: 20px 35px;}
    .caracteristicas h2 {text-align:left; position: absolute; width: 100%; padding: 0px; margin: 0px; font-size: 1.1em; display: inline-flex;top: 3.4em;}
    .caracteristicas p{font-size:1em; margin:10px 10px;}
    .caracteristicas ul{ list-style: none; margin: 2em 2px 2em 2em; display: flex; font-size: 0.9em; flex-direction: column; width: 100%; padding: 0px 0px;}
    .caracteristicas ul li{display: inline-block; padding-right: 20px; width: 100%;}
    .caracteristicas ul li:last-child{padding-right: 0px;}
    .disponible:before{content: ""; background-color: #00ff00; padding: 0px 8px;  margin-right: 10px; border-radius: 50%;}
    .nodisponible:before{content: ""; background-color: #ff0000; padding: 0px 8px;  margin-right: 10px; border-radius: 50%;}
    .button-casa{display: block; background-color: #000; color:#C08E38 !important; text-align: center; padding: 10px; cursor: pointer; font-weight: 500 !important; text-decoration: none; text-shadow: none; border: 1px solid #636363; }
    .pop-ocupado{content: ''; border-radius: 50%; width: 20px; height: 20px; margin: 0px auto;}
    div.casa-botones { display: contents; text-align: right;  margin: 1.5em 0px 0px 0px;}
    div.casa-botones a{color: #3d3d3d !important; text-decoration: none; background: transparent; text-shadow: none;  text-align: center; padding: 5px; border: 1px solid #3d3d3d; cursor: pointer; margin: 3px 0px; width: 100%;}
    .tipologias .botonplano{color: #3d3d3d !important; text-decoration: none; background: transparent; text-shadow: none;  text-align: center; padding: 5px; border: 1px solid #3d3d3d; cursor: pointer; margin: 3px 0px; width: 70%;}
    div.casa-botones span{display:none;}
    .container-caract{padding: 0px 40px;}
    .aviso_libre form{display: flex; flex-direction: column; align-items: center; background: #3b3b3b; margin: 0px; padding: 15px;}
    .aviso_libre form input{ background: #000; color: #b5b5b5; font-weight: 700;}
    div.casa-botones a.quiero_aviso{background-color: transparent; line-height: 20px; cursor: auto;}

    div.casa-botones a.quiero_aviso_reservado{background-color: transparent; line-height: 20px; cursor: no-drop;}
    div.casa-botones a.plano_reservado{cursor: no-drop;}

    .reservado{ background-color: #3b3b3b; color: #C08E38 !important; text-decoration: none; text-shadow: none; width: 100%; text-align: center; padding: 15px; cursor: pointer; margin: 0px; border: 1px solid #636363;}
    .aviso_reserva{ align-items: center; margin: 0px; padding: 0px; color: #3d3d3d; text-shadow: none;}
    .aviso_reserva ul{ flex-direction: column; align-items: flex-start;}
    .aviso_reserva ul li a{ line-height: 30px; color: #3d3d3d; text-decoration: none; font-weight: 500;}
    .aviso_reserva ul li a:hover{ color: #4d4d4d;}
    .aviso_reserva p{ color: #3d3d3d;}
    .aviso_reserva > p{font-size: 0.9em;}
    .aviso_reserva .rcontact{ margin: 0.5em 0px 1em 3em;}
    .aviso_reserva .rcontact a{ color: #3d3d3d; font-weight: 500; text-decoration: none; font-size: 0.9em;}
    .moviles { display: flex; align-items: center; margin-left: 0.5em; margin-top: 2.5em;}
    .caracteristicas div.moviles p { margin: 0px 10px; font-size: 0.9em;}
    .caracteristicas .aviso_reserva span{ font-size: 1.5em; font-weight: 600; padding-right: 1.3em; cursor: pointer;}
    .moviles .fas.fa-mobile-alt{ font-size: 1.2em;}
    .far, .fas{margin-right: 10px;}

    #mySidefav.sidenavfav{ padding: 3% 3% 0% 3%; display: none; height: 85%; margin-top: 5%;}
    #mySidefav .aviso_reserva ul{ list-style: none; padding-left: 5px;}
    #mySidefav .aviso_reserva ul li{ font-size: 14px;}
    #mySidefav .aviso_reserva ul li a{ font-size: 14px; display: block;}
    #mySidefav .aviso_reserva ul li span{ display: none;}
    #mySidefav ul#favs > li { padding: 20px 0px; margin: 10px 0px;}
/*    #mySidefav ul#favs li > div{ display: flex; flex-direction: row; justify-content: space-between;}*/
    #mySidefav  #enlace_casa, #mySidefav .aviso_reserva span, #mySidefav .quiero_reserva{display: none;}


    #mySidefav div.casa-botones{ display: inline-flex; align-content: flex-end; justify-content: space-around; align-items: center; width: 30%; flex-direction: column; margin-top: 1.3em;}
    #mySidefav ul#favs > li.fondo_ocupado{ background: #ff000036; padding: 20px;}
    #mySidefav ul#favs > li.fondo_noocupado{ background: trasnparent; padding: 20px;}
    #mySidefav ul#favs > li.fondo_ocupado .nodispo{ display:block; font-weight: 700; padding-left: 1.7em;}
    #mySidefav ul#favs > li.fondo_noocupado .nodispo{ display:none; }
    .fondo_ocupado ul, .fondo_noocupado ul{list-style: none; margin: 4em 0px 1em 3em; display: flex; font-size: 1em; flex-direction: column; width: 100%; padding: 0px 0px;}

    .tipologias{display:flex; flex-direction: column; margin-top: 2.5em;}
    .tipologias img{cursor: pointer;}

  /*********form filtros**************/
  .filtros-casas label{font-size: 1.2em; color: #C08E38; text-shadow: 1px 1px 0px #96969673 !important; border-bottom: 2px #C08E38 solid; padding: 15px 0px 0px 0px; font-weight: 600;}
  .filtros-casas form{display: flex; flex-flow: row wrap; align-items: center; justify-content: flex-start;}
 .range_valor:after{position: absolute;
    top: 8px;
    left: -7px;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-right: 7px solid #ccc;
    border-bottom: 7px solid transparent;
    content: '';}

#superficie, #precio{width: 30%;}


/******double range*******/
html, body, .project-content, .builder-process{ width: 100vw; height: 100vh; max-width: 100%; max-height: 100%;}

/*display: inline-flex;*/
.builder-process{ flex:51; flex-flow: column wrap; align-items: stretch; align-content: stretch; overflow: hidden; display: inline-flex; }
.builder-process-image svg{ width: auto; height: auto;}
.ui-page-theme-a .ui-bar-inherit{text-shadow:none !important;}
body form{ margin-block-end: 0.5em;}
.filtros-casas{ order: 2; position: absolute; z-index: 999999; width: 100%; background-color: transparent; color: #000000; padding: 0px 40px 0px 40px; bottom: 50px; font-weight: 600;}
#superficie, #precio {width: 450px; }
#select1, #select2{width: 170px;}
#select1 label, #select2 label{padding: 15px 0px 0px 0px; }
/*#superficie label, #precio label{padding: 10px;}
body .ui-slider-popup { font-size: 16px; height: 35px;}*/
body input.ui-slider-input{font-size: 13px; width: 43px;}
body .ui-slider-track .ui-btn.ui-slider-handle{font-size: 0.7em !important;}
#filtros_close{ align-self: flex-start; margin-top: -50px; background-color: #333; padding: 10px;transform: rotate(90deg); color: #fff; text-shadow: none;}
#filtros_open{align-self: flex-start; transform: rotate(-90deg); display: none; position: absolute; bottom: 2px; z-index: 999; background-color: #000000; color: #333; text-shadow: none; background-color: #eee; padding: 10px; font-weight: 600;}
#dar_favoritos p{ color:#C4C4C0; border:#3d3d3d; }
#botones{ margin: 0px 0px 0px 10px;}
#botones div{background-color:#C4C4C0; color:#3d3d3d; border: 0.13rem solid #3d3d3d; text-shadow: none;}
#botones div:hover{background-color:#7d7d7d; }
#limpiar .ui-btn{align-self: flex-end; font-family: 'playfair' !important;}
#limpiar div.ui-btn{border: none; margin: 0px; padding: 0px; background-color:transparent; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; font-size: 1.1em;}
#limpiar {font-size: 13px;padding: .5em 1em; line-height: .8em;}
#todos, #libres, #limpiar input[type="reset"]{font-weight: bold; cursor: pointer; font-size: 0.9em; padding: .1em .5em; line-height: .8em;}
#todos p, #libres p{margin: 9px;}
#filtros_close:hover, #filtros_open:hover{cursor: pointer}
.ui-page-theme-a .ui-slider-track .ui-slider-bg.ui-btn-active{background-color: #000;}
.ui-page-theme-a .ui-slider-track.ui-shadow-inset.ui-bar-inherit.ui-corner-all{border-color: transparent;}
#full_page{text-align: center; cursor: pointer; background-image: url('../img/EXPANDIR.png'); background-repeat: no-repeat; height: 30px; width: 30px; float: right;}

.powered{  
    position: absolute;
    z-index: 999;
    width: 100%;
    background-color: transparent;
    bottom: 45px;
    text-align: center;
/*    margin-right: 91px;*/
}

.powered img{ width: 8%;}

body .ui-rangeslider .ui-rangeslider-sliders .ui-slider-track{top: 12px;}
body .ui-slider-track{height: 3px;}
body .ui-slider-track .ui-btn.ui-slider-handle{line-height: 17px;}
html >body .ui-rangeslider .ui-rangeslider-sliders .ui-slider-track:first-child{height: 3px !important;}
.ui-page-theme-a div.ui-rangeslider-sliders div a{background-color: rgb(51, 51, 51); color: rgb(192, 142, 56); border-color: rgb(80, 80, 80); text-shadow: none;}
body .ui-slider-track .ui-btn.ui-slider-handle{height: 15px; margin: -9px 0 0 -15px;}
body input.ui-slider-input {padding: 0px 4px;}
body .ui-slider-popup { width: 60px; height: 29px; font-size: 15px; padding-top: 10px;}
.popform{margin-block-end: 0em;}
.popform .ui-btn.ui-input-btn.ui-corner-all.ui-shadow{color: #C08E38 !important; text-decoration: none; background: #000; text-shadow: none; width: 100%; text-align: center; padding: 20px; border: 1px solid #636363; margin: 0px; border-radius: 0px;}

input:focus, input.ui-mobile:focus {
    outline:none !important;
    outline-width: 0 !important;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}


.__range input{ height: 3px;}
.__range-step datalist {
    position:relative;
    display: flex;
    justify-content: space-between;
    height: auto;
    bottom: 0px;
    -webkit-user-select: none;       
    -moz-user-select: none; 
    -ms-user-select: none;               
    user-select: none; 
    pointer-events:none;  
    padding: 0px 10%;
    z-index:9;
}
.__range-step datalist option {
    width: 15px;
    height: 15px;
    min-height: 10px;
    border-radius: 100px;
    white-space: nowrap;       
    padding:0;
    line-height: 40px;
    z-index:9;
}

.builder-process-range-input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    /*cursor: grab;*/
    height: 2rem;
    width: 100%;
    z-index:999;
    padding-right:10px; 
}

.img_part{ display: inline-flex; position: absolute; width: 100vw;}



.btn_form{ color: #000; font-weight: 700; border: 1px solid #000; padding: 5px;}

/*************menú lateral*************/
.ui-page-theme-a{text-shadow: none !important}
#mapa_entorno, .aviso_libre, .aviso_reserva{display: none;}
#por_pisos{display: none;}
#ver_volver{display: none; right: 10px; top: 10px; position: absolute; color: #fff; text-shadow: none; font-weight: 800; background: #000000; border-radius: 10px; padding: 4px; cursor: pointer;}
.head_fav{ display: flex; flex-direction: row; align-items: center; align-content: center; justify-content: space-between;     padding: 20px;}
.linefav{ position: absolute; font-size: 30px; cursor: pointer; color: #fff; top: 45%; float: left; z-index: 99999999999; padding: 0px 20px;}
body div.sidenavfav {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: #c4c4c0d4;
  backdrop-filter: blur(10px);
  overflow-x: hidden;
  transition: 0.2s;
  padding-top: 60px;
  text-align:center;
  z-index: 9999999999;
}
body div.sidenav a:hover, body div.sidenavfav a:hover { color: #5d5d5d;}
.sidenav .closebtn,  .sidefav .closebtn{ position: absolute; top: 0; right: 25px; font-size: 36px; margin-left: 50px;}
#favs, .sidenavfav h2{ margin-top: 25px; color: #3d3d3d; text-shadow: none;}
ul#favs{ list-style: none; text-align: left; padding: 0px 0px; }
ul#favs li{ padding: 5px 0px 0px 5px;}
ul#favs li p{ margin: 3px;}
ul#favs .aviso_reserva > p { margin: 30px 3px 3px;}
body div.sidenavfav .closebtn{ font-size: 55px; font-weight: lighter; color: #3d3d3d; text-shadow: none; text-decoration: none;}
body div.sidenavfav h2 a{ color: #3d3d3d; text-shadow: none; text-decoration: none; cursor: pointer; text-align: left; position: absolute; width: 50%; padding: 0px; margin: 0px; font-size: 0.7em; display: inline-flex;}
ul#favs li .container-caract { padding: 2px 25px;}
ul#favs li .container-caract ul{ list-style: none; display: flex; padding-left: 0px; justify-content: space-around; align-content: flex-start; align-items: flex-start; flex-direction: column; flex-wrap: nowrap;}
ul#favs li .container-caract ul li{ padding: 2px; font-size: 13px; padding: 3px 0px 0px 0px; font-size: 1em; line-height: 1.5em;}
ul#favs li .casa-botones a{ font-size: 14px; padding: 5px; cursor: pointer; font-size: 1em;} 
#mySidefav h2#quepiso{display: none;}
#favs ul{list-style: none; margin: 2em 0px 1em 1.7em; display: flex; font-size: 1em; flex-direction: column; width: 100%; padding: 0px 0px;}

/************Internas************/
.container_pisos{
    display: flex;
    justify-content: space-around;
    height: 100%;
    align-items: center;
    color: #fff;
    text-shadow: none;
    font-weight: 700;
}

@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
}



/****************brujula*****************/
#brujula{ transform: skewY(5deg) skewX(-18deg) rotate(360deg); position: absolute; top: 0px; left: 0px; z-index: 999999999; margin: 10px 20px;}
#contextMenuContainer {display: none; position: fixed; border: 1px solid gray; background: #fff; width:130px; z-index: 100;}
@media (max-width: 1920px), (max-height: 1080px){
    .input-range {top: 6%;} /*75*/
    .input-range-bis{top:6%;} /*95*/
}
@media (max-width: 1421px), (max-height: 761px){
    .input-range {top: 6%;} /*80*/
   /* .input-range-bis{top:95%;}*/
}
/*@media (max-width: 1366px), (max-height: 768px){
    .input-range {top: 75%;}
    .input-range-bis{top:95%;}
}*/
@media (max-width: 1500px){
    #favs ul {margin: 2em 0px 1em 1.7em;}
}

@media (max-width: 1400px){
    #favs ul {margin:2em 0px 1em 1.7em;}
}

@media (max-width: 1300px){
    .input-range {top: 6%;} /*72*/
   /* .input-range-bis{top:95%;}*/
}

@media (max-width: 1025px){
    .input-range {top: 6%;} /*83*/
}
/*1280x800
1280x720*/

/*@media (max-width: 880px){
    .input-range {top: 73%;}
    .input-range-bis{top:95%;}
}*/



#mySidefav{width: 0%;}
#mySidefav.salfav{width: 30% !important;}


/**********HOVER PISO**********/
/*.hovertext {
  position: relative;
  border-bottom: 1px dotted black;
}*/

/*a:before {
  content: attr(data-piso);
  visibility: hidden;
  opacity: 0;
  width: 140px;
  background-color: black;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  padding: 5px 0;
  transition: opacity 1s ease-in-out;

  position: absolute;
  z-index: 1;
  left: 0;
  top: 110%;
}

a:hover:before {
  opacity: 1;
  visibility: visible;
}*/

/***************pop-img en grande*****************/
#tipologia_img{
    visibility: hidden;
    position: absolute;
    z-index: 999999;
    display: flex;
    top: 5%;
    width: 96%;
    margin: 0px 2%;
    text-align: center;
    background: #c4c4c0d4;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
#tipologia_img img{ padding: 0px 0px 20px 0px; }

#tipologia_img .closeimg{
    font-size: 2em;
    display: block;
    width: 96%;
    max-width: 100%;
    text-align: right;
    padding: 10px;
    cursor: pointer;
}

#tipologia_img .previmg{
    visibility: hidden;
    position: absolute;
    width: 95%;
    text-align: left;
    font-size: 2em;
    cursor: pointer;
}

#tipologia_img .nextimg{
    position: absolute;
    width: 95%;
    text-align: right;
    font-size: 2em;
    cursor: pointer;
}
#grande_pdf{border: none;}

@media (max-width: 1450px){

    .filtros-casas{bottom: 5%;}
}

@media (max-width: 769px){
    #range_movil{ display: flex; z-index: 99; position: absolute; top: 10%; width: 100%; align-self: center;}
    #range_movil button{display: inline-block; width: 20%;margin: 0px auto;}
    #filtros_open{position: absolute; bottom: 0px; z-index: 999; background-color: #000000; margin-top: 10px; align-self: center; padding: 10px; font-size: 30px; color:#fff;}
    .builder-process-image svg{top: 25%; left: 0px;}
    #pop_casa {left: 0%;}
    .caracteristicas h2 {top: 1.4em;}
    div.casa-botones a{width: 97%;}
}

@media (max-width: 640px){
    .filtros-casas {bottom: 0px;}
    body #pop_casa{position: absolute; top: 18%; z-index: 999; left: 0%;  width: 100%;}
    .aviso_reserva{margin: 15% 0px 0px !important;}
    #mySidefav.salfav{width: 95% !important;}
    #tipologia_img{top:20%; background: #c4c4c0; width: 96%; margin: 0px 2%; height: 75%; justify-content: center; flex-direction: column; align-items: center;}
/*    #grande_pdf{height: 400px; -webkit-transform: scale(0.9); -webkit-transform-origin: center center;}*/ 
    #grande_pdf{width: 80vw; height: 300px !important;}
    #grande_img{width: 80vw;}
    .powered{  
        position: absolute;
        z-index: 999;
        width: 100%;
        bottom: 1px;
        text-align: none;
        margin: 0px;
        width: 100vw;}

    .powered img{ width: 18%;}
 }   

@media (max-width: 500px){
    .input-range {top: 10%;}
    .input-range-bis{top: 85%;}
    .__range-step datalist {padding: 0px 0%;}
    .builder-process-image{height:90vh; width: auto;}
/*  .builder-process-image svg{max-width: 100vw; width: auto; height: 90vh; /*margin-left: -80%;}*/
    .builder-process-image svg{max-width: 120vw; width: auto; margin-left: -10vw; top: 5%;}
/* BANDA VERTICAL    .filtros-casas form { display: flex; align-items: center; flex-direction: column; max-width: 100%;}*/
    .filtros-casas form { display: flex; align-items: center; flex-direction: row; max-width: 100%; justify-content: space-around;justify-content: center;}
    #pop_casa {left: 0%;}
    .filtros-casas{padding: 0px 0px 0px 0px; bottom: 30px;}
    #botones { margin: 5px 0px 5px 0px;}
    #pop_casa .caracteristicas{ padding: 20px 10px !important; }
    .caracteristicas ul{margin: 0.1em 0px 1em 2em;}
    #favs ul { margin: 0em 0px 1em 1.7em;}
    .tipo_lista li{}
    
}

@media (max-height: 401px){
    .builder-process-image svg{display: block; margin: auto; text-align: center; float: none; width: 100vw; overflow: hidden; height: auto !important;}
    .caracteristicas ul{margin: 5em 0px 1em 3em;}
}



