html,
body{margin:0;padding:0;font-family:'roboto';-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;touch-action:none !important;}
*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(255, 255, 255, 0);-webkit-tap-highlight-color:transparent;}
*:focus{outline:0;}
a{text-decoration:none;}
.desktop_container{position:absolute;z-index:1;top:0;left:0;right:0;bottom:0;width:100%;overflow:hidden;}
.mobile_container{display:none;}
#mapa{position:absolute;z-index:1;top:0;left:0;right:0;bottom:0;width:100%;webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
#mapa img{width:100%;position:absolute;left:0;top:0;right:0;bottom:0;height:100vh;-webkit-transition:opacity 1s linear;-moz-transition:opacity 1s linear;-o-transition:opacity 1s linear;transition:opacity 1s linear;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);z-index:1;}
#mapa img.opaque{opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=1);}
#mapa img.front{z-index:2;}
#stages{position:absolute;z-index:2;bottom:0;left:0;width:100%;height:140px;background:rgba(0, 0, 0, 0.35);text-align:center;padding:0px 90px;color:#fff;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
#loader{visibility:hidden;}
.line{float:left;height:77px;border-bottom:1px solid #fff;width:calc((100vw - 540px)/3);}
.line:first-of-type,
.line:last-of-type{width:70px;}
.point{width:55px;float:left;height:150px;text-align:center;position:relative;white-space:nowrap;display:flex;align-items:center;justify-content:center;flex-direction:column;font-weight:500;padding:0 0 27px 0;cursor:pointer;transition:opacity ease 0.3s;}
.point.active{cursor:default;}
.point .p{width:16px;height:16px;background-color:#fff;border-radius:15px;position:relative;margin:4px 0 6px 0;}
.point.active .p{background-color:#e05c5c;opacity:0.85;}
.point .p:before{content:"";position:absolute;background:transparent;width:36px;height:36px;top:-12px;left:-12px;border-radius:40px;border:2px solid #fff;transition:all ease 0.1s;}
.point:hover .p:before{width:30px;height:30px;top:-9px;left:-9px;}
.point p.cent{text-align:center;font-size:16px;line-height:16px;background:rgba(0, 0, 0, 0.65);padding:8px 13px;}
.point.active p.cent{background:rgba(224, 92, 92, 0.8);}
.point p.name{text-align:center;font-size:16px;line-height:16px;margin-bottom:0;position:relative;}
.point p.name:after{content:"";position:absolute;left:50%;bottom:-3px;width:0%;border-bottom:1px solid #fff;transition:all ease 0.3s;}
.point.active p.name:after{left:0%;width:100%;}
.point:hover p.cent{background:rgba(0, 0, 0, 1);}
.point.active:hover p.cent{background:rgba(224, 92, 92, 0.8);}
.point.active:hover .p:before{width:36px;height:36px;top:-12px;left:-12px;}
.point:hover p.name:after{width:100%;left:0;}
.punt{position:absolute;width:22px;height:22px;border-radius:20px;border:2px solid rgba(26, 106, 204, 0.8);background-color:rgba(92, 176, 255, 0.8);cursor:pointer;display:inline-block;display:flex;align-items:center;justify-content:center;flex-direction:column;opacity:0;transition:opacity ease 0.3s, transform cubic-bezier(0.57, 0.07, 0.44, 2) 0.3s;margin-left:-11px;margin-top:-11px;transform:scale(0.4);z-index:10;}
.punt.active{opacity:1;transform:scale(1);}
.punt:before{content:"";position:absolute;background:transparent;width:40px;height:40px;top:-14px;left:-14px;border-radius:40px;border:3px solid #fff;transition:all ease 0.1s;}
.punt.outofmap:after{content:"";position:absolute;left:50%;margin-left:-8px;top:-30px;width:0;height:0;border-style:solid;border-width:0 7.5px 10px 7.5px;border-color:transparent transparent #fff transparent;}
.punt.in{border:2px solid rgba(189, 20, 35, 0.8);background-color:rgba(224, 92, 92, 0.8);}
.punt span{position:relative;top:-65px;left:0;text-align:center;white-space:nowrap;color:#303030;font-weight:300;background-color:#fff;line-height:42px;padding:0 18px;display:block;opacity:0;transition:all ease 0.3s;font-size:15px;cursor:default;}
.punt span:before{content:"";position:absolute;left:50%;margin-left:-7px;bottom:-10px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:10px solid #fff;}
.punt.hover span{opacity:1;top:-60px;}
.punt span.right{position:absolute;top:-13px;left:calc(100% + 38px);}
.punt.hover span.right{opacity:1;left:calc(100% + 30px);top:-13px;}
.punt span.right:before{content:"";position:absolute;left:-2px;top:50%;margin-top:-6px;border:0px;width:0;height:0;border-style:solid;border-width:6px 10px 6px 0;border-color:transparent #fff transparent transparent;}
.punt span.left{position:absolute;top:-13px;left:auto;right:58px;}
.punt.hover span.left{opacity:1;position:absolute;top:-13px;left:auto;right:50px;}
.punt span.left:before{content:"";position:absolute;left:auto;right:-10px;top:50%;margin-top:-6px;border:0px;width:0;height:0;border-style:solid;border-width:6px 0px 6px 10px;border-color:transparent transparent transparent #fff;}
#logos{position:absolute;top:25px;left:25px;z-index:2;}
#logos img{width:180px;display:block;margin-bottom:15px;}
#idiomes{position:absolute;top:0px;right:0px;z-index:2;-webkit-transform:translate3d(240px, 0, 0);transform:translate3d(240px, 0, 0);-webkit-transition:-webkit-transform .2s ease;transition:transform .2s ease;}
#idiomes.in{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;}
#idiomes span{display:inline-block;text-align:center;line-height:60px;color:#fff;background:rgba(0, 0, 0, 0.4);font-size:18px;font-weight:400;cursor:pointer;transition:background ease 0.1s;width:60px;height:60px;margin:0px;border:0px;text-transform:uppercase;}
#idiomes span.active{background:rgba(0, 0, 0, 0.7);float:left;font-weight:500;}
#idiomes span.langclose{background:url(../img/closewhite.png) center center no-repeat rgba(224, 92, 92, 1);background-size:35% 35%;}
#idiomes span.langclose:hover{background:url(../img/closewhite.png) center center no-repeat rgba(210, 81, 81, 1);background-size:30% 30%;}
#idiomes span:hover{background:rgba(0, 0, 0, 0.85);}
#map_container{position:absolute;top:0;left:0;bottom:0;right:0;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:-webkit-transform .2s ease;transition:transform .2s ease;}
#map_container.out{-webkit-transform:translate3d(-30px, 0, 0);transform:translate3d(-30px, 0, 0);-webkit-transition:-webkit-transform .8s ease;transition:transform .8s ease;}
#ampliada{position:absolute;top:0;right:0;background:rgba(255, 255, 255, 1);height:100vh;width:550px;z-index:10;-webkit-transform:translate3d(550px, 0, 0);transform:translate3d(550px, 0, 0);-webkit-transition:-webkit-transform .2s ease;transition:transform .2s ease;padding:50px 50px 50px 50px;}
#ampliada.in{-webkit-transform:translate3d(0%, 0, 0);transform:translate3d(0%, 0, 0);box-shadow:-2px 0 2px #666;-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;}
#ampliada_content{opacity:0;transition:opacity ease 0.3s;}
#ampliada_content.in{opacity:1;}
#close{position:absolute;top:30px;right:30px;width:22px;height:22px;background:url(../img/close.png) center center no-repeat;background-size:100% 100%;cursor:pointer;transition:transform .2s ease;}
#close:hover{-ms-transform:scale(1.1);-webkit-transform:scale(1.1);transform:scale(1.1);}
.prevnext{position:absolute;top:30px;left:40px;font-size:13px;font-weight:bold;color:#555;text-transform:uppercase;webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
.prevnext span.prev{display:inline-block;line-height:24px;background:url(../img/left.png) center left 5px no-repeat;background-size:auto 60%;margin-right:6px;padding-left:30px;cursor:pointer;transition:all ease 0.3s;}
.prevnext span.prev:hover{background:url(../img/left.png) center left 0px no-repeat;background-size:auto 60%;color:#333;}
.prevnext span.next{display:inline-block;line-height:24px;background:url(../img/right.png) center right 5px no-repeat;background-size:auto 60%;margin-left:6px;padding-right:30px;cursor:pointer;border-left:1px solid #ccc;padding-left:12px;transition:all ease 0.3s;}
.prevnext span.next:hover{background:url(../img/right.png) center right 0px no-repeat;background-size:auto 60%;color:#333;}
.prevnext span.prev.disabled,
.prevnext span.next.disabled{opacity:0.4;cursor:default;}
.prevnext span.prev.disabled:hover{background:url(../img/left.png) center left 5px no-repeat;background-size:auto 60%;color:#333;}
.prevnext span.next.disabled:hover{background:url(../img/right.png) center right 5px no-repeat;background-size:auto 60%;color:#333;}
#ampliada h1{color:#e05c5c;font-size:32px;line-height:38px;margin:5vh 0 28px 0;text-transform:uppercase;}
.ampliada_text{font-size:16px;line-height:22px;margin:35px 0 0 0;overflow-y:auto;height:calc(95vh - 435px);overflow:hidden;}
#ampliada img{height:250px;width:100%;margin-bottom:-4px;}
#ampliada img.vert{width:auto;}
.ampfoto{width:100%;height:250px;background-size:cover;}
.swiper-wrapper{width:100%;text-align:center;}
.swiper-slide{background-color:#000;}
.swiper-slide img{margin-bottom:-4px;}
.swiper-pagination{bottom:0px !important;background:rgba(0, 0, 0, 0.5) !important;padding:4px 0 6px 0 !important;}
.swiper-pagination-bullet{display:inline-block !important;width:10px !important;height:10px !important;border-radius:10px !important;background:#868686 !important;margin:0 4px !important;cursor:pointer !important;opacity:1 !important;}
.swiper-pagination-bullet-active{background:#d9d9d9 !important;}
a.zoom{cursor:zoom-in;}
@media (max-width:1400px){.punt{width:20px;height:20px;border-radius:20px;margin-left:-10px;margin-top:-10px;}
.punt:before{width:36px;height:36px;top:-13px;left:-13px;border-radius:36px;}
}
@media (max-width:1024px){#ampliada{width:400px;padding:30px;}
#close{top:20px;right:20px;}
#ampliada h1{font-size:28px;line-height:32px;margin:30px 0 15px 0;text-transform:uppercase;}
.ampliada_text{font-size:14px;line-height:18px;margin:25px 0 0 0;height:calc(100vh - 385px);}
#ampliada img{height:200px;width:100%;}
#idiomes{-webkit-transform:translate3d(200px, 0, 0);transform:translate3d(200px, 0, 0);}
#idiomes span{line-height:50px;font-size:16px;width:50px;height:50px;}
#logos{top:20px;left:20px;}
#logos img{width:150px;display:block;margin-bottom:12px;}
#stages{height:130px;}
#stages p{font-size:15px;line-height:15px;}
.point{padding:0 0 31px 0;justify-content:initial;}
.line{height:73px;}
.point p{margin-top:14px;}
.punt.outofmap:after{top:-27px;}
.prevnext{left:17px;top:20px;transform:scale(0.9);}
.ampfoto{width:100%;height:220px;background-size:cover !important;}
.ampfoto-swipe{background-size:auto 100% !important;}
}
@media (max-width:767px){.desktop_container,
#ampliada,
.vertical{display:none;}
.mobile_container{position:absolute;z-index:1;top:0;left:0;bottom:0;right:0;overflow-x:hidden;overflow-y:hidden;display:block;}
.mobile_container p{margin:0px;}
#wrapper{position:absolute;top:0;left:0;bottom:0px;right:0;padding:0px;text-align:center;overflow-x:hidden;overflow-y:hidden;overflow:hidden;width:100%;height:auto;-webkit-overflow-scrolling:touch;}
#wrapper::-webkit-scrollbar-track{background-color:#F5F5F5;}
#wrapper::-webkit-scrollbar{width:2px;background-color:#777;}
#wrapper::-webkit-scrollbar-thumb{background-color:#000000;border:2px solid #777;}
.scroller{position:relative;z-index:1;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0);-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;-ms-text-size-adjust:none;-o-text-size-adjust:none;text-size-adjust:none;}
.scroller_etapes{padding:34px 0 18px 0;}
.header{position:absolute;left:0;top:0;right:0;height:45px;background-color:#e3615a;text-align:center;line-height:45px;color:#fff;font-size:16px;z-index:10;-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;}
.topleft{position:absolute;top:0px;left:0px;width:45px;height:45px;text-align:left;padding-left:0px;background:url(../img/back.png) center left 10px no-repeat;background-size:auto 40%;opacity:0;visibility:hidden;transition:opacity ease 0.3s;}
.topleft.active{opacity:1;visibility:visible;}
#options{position:absolute;top:0px;right:0px;width:45px;height:45px;text-align:right;padding-right:10px;background:url(../img/config.png) center center no-repeat;background-size:50% 50%;}
#options:hover{opacity:0.7;}
.container_options{left:0% !important;width:100% !important;bottom:0 !important;z-index:99;padding:0px !important;background-color:#eff3f6;background-size:cover;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;}
.container_options.in{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}
.langtitol{background-color:#fff;color:#e3615a;font-weight:300;padding:10px 0;border-bottom:3px solid #d0d1d3;font-size:20px;position:relative;line-height:25px;position:relative;}
#lang_close{position:absolute;right:0px;top:0;height:44px;width:44px;background:url(../img/tancar.png) center center no-repeat #fff;background-size:40% 40%;}
#lang_close:hover{opacity:0.7;}
p.lang{text-align:center;padding:12px 0px;background-color:#ccc;border-bottom:1px solid #888;color:#555;margin:0px;font-weight:300;}
p.lang:hover{background-color:#bebebe;color:#fff;}
p.lang.selected{background-color:#aaa;color:#fff;}
.langfooter{position:absolute;bottom:0;left:0;width:100%;}
.langfooter img{float:left;width:calc(50% - 20px);margin:10px;-webkit-filter:brightness(25%);filter:brightness(25%);}
.container_etapa{z-index:2;background-color:#dfdfdf;padding:0px !important;top:45px !important;-webkit-transform:translate3d(0%, 0, 0);transform:translate3d(0%, 0, 0);-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;}
.container_etapa.out{-webkit-transform:translate3d(-20%, 0, 0);transform:translate3d(-20%, 0, 0);}
.container_subetapa{z-index:3;background-color:#fff;padding:0px !important;top:45px !important;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;background-size:100% auto;background-position:top center;background-repeat:no-repeat;}
.container_subetapa.in{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}
.container_subetapa.out{-webkit-transform:translate3d(-20%, 0, 0);transform:translate3d(-20%, 0, 0);}
.container_casa{z-index:4;background-color:#fff;padding:0px !important;top:45px !important;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;background-size:100% auto;background-position:top center;background-repeat:no-repeat;}
.container_casa.in{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}
.container_casa.out{-webkit-transform:translate3d(-20%, 0, 0);transform:translate3d(-20%, 0, 0);}
p.etapes_titol{color:#61646d;font-size:15px;line-height:32px;background-color:#fff;position:absolute;top:45px;left:0;width:100%;z-index:3;text-align:center;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;}
p.etapes_titol.out{-webkit-transform:translate3d(-20%, 0, 0);transform:translate3d(-20%, 0, 0);}
.etapa{margin:15px 15px 17px 15px;width:calc(100% - 30px);height:calc(((100vw - 30px)/1.68) + 50px);background-size:100% auto !important;border-radius:4px;background-color:#fff;background-position:top center;background-repeat:no-repeat;text-align:left;color:#fff;position:relative;}
.etapa:last-of-type{margin:15px 15px 0px 15px;}
.etapa.active{background-color:#eee;}
.etapa p.titol{font-weight:300;font-size:20px;line-height:24px;position:absolute;top:15px;left:15px;z-index:2;}
.etapa p.subtitol{font-size:14px;line-height:14px;font-weight:500;position:absolute;top:46px;left:15px;z-index:2;}
.etapa p.desc{position:absolute;bottom:0;width:100%;z-index:2;color:#616161;line-height:51px;background:url(../img/arrow.png) center right 12px no-repeat transparent;background-size:auto 40%;padding-left:13px;font-weight:500;font-size:20px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;}
.etapa p.desc span{font-size:13px;font-weight:400;display:inline-block;vertical-align:top;line-height:51px;padding-left:8px;}
.etapa:after{position:absolute;content:'';width:100%;height:calc(((100vw - 30px)/1.68));background:linear-gradient(to top, rgba(0, 0, 0, 0) 0%, #000 100%);top:0;opacity:0.5;left:0;z-index:1;backface-visibility:hidden;border-top-right-radius:4px;border-top-left-radius:4px;}
.mapin{width:100%;height:calc(((100vw)/1.68));background-size:cover !important;background-position:top center;background-repeat:no-repeat;color:#fff;position:relative;}
.mapin:after{position:absolute;content:'';width:100%;height:calc(((100vw)/1.68));background:linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #000 100%);top:0;opacity:0.5;left:0;z-index:1;backface-visibility:hidden;}
.mapin p.titol{font-weight:300;font-size:20px;line-height:24px;position:absolute;bottom:15px;left:15px;z-index:2;}
.mapin p.subtitol{font-size:14px;line-height:14px;font-weight:500;position:absolute;bottom:42px;left:15px;z-index:2;}
img.mapin{width:100%;}
.casa{background:url(../img/arrow.png) center right 12px no-repeat #fff;background-size:auto 22%;height:70px;border-bottom:1px solid #ddd;padding:10px 10px 10px 10px;text-align:left;color:#444;font-weight:300;font-size:15px;line-height:18px;display:flex;justify-content:left;align-items:center;}
.casa.active{background:url(../img/arrow.png) center right 12px no-repeat #eee;background-size:auto 22%;}
.fatafoto{width:50px;height:50px;float:left;background-size:cover;background-position:center center;margin-right:10px;}
.casa p{width:calc(100vw - 100px);}
#subetapa_in{opacity:0;visibility:hidden;transition:opacity ease 0.5s;}
#subetapa_in.active{opacity:1;visibility:visible;}
#casa_in{opacity:0;visibility:hidden;transition:opacity ease 0.5s;text-align:left;}
#casa_in.active{opacity:1;visibility:visible;}
#casa_in img{width:100%;height:calc(((100vw)/1.68));}
#casa_in .swiper-slide img{width:auto;height:calc(((100vw)/1.68));}
.mobilefoto{width:100%;height:calc(((100vw)/1.68));background-size:cover !important;}
.mobilefoto.mobilefotoswipper{background-size:auto 100% !important;}
#casa_in h2{color:#000;font-size:20px;line-height:26px;margin:20px 15px;font-weight:400;}
#casa_in p{color:#717171;font-size:15px;line-height:19px;margin:15px 15px;padding-bottom:20px;}
}
@media (min-width:768px) and (max-aspect-ratio:11/9){.vertical{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100vh;z-index:999;background:url(../img/ipad_vert.jpg) center center no-repeat;background-size:cover;display:flex;align-items:center;justify-content:center;flex-direction:column;}
.vertical img{width:40%;}
.vertical img.iphone{display:none;}
}
@media (max-width:767px) and (min-aspect-ratio:13/9){.vertical{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100vh;z-index:999;background:url(../img/ipad_vert.jpg) center center no-repeat;background-size:cover;display:flex;align-items:center;justify-content:center;flex-direction:column;}
.vertical img{width:30%;}
.vertical img.ipad{display:none;}
}