* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
  -ms-content-zooming: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@-ms-viewport {
  width: device-width;
}

@font-face {
  font-family: Barlow;
  src: url(fuentes/BarlowSemiCondensed-Light_Manzana.ttf);
}

html,
body {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  background-color: #000;
  color: #fff;
}

a,
a:hover,
a:active,
a:visited {
  text-decoration: none;
  color: inherit;
}

audio {
  /*filter: sepia(20%) saturate(70%) grayscale(1) contrast(99%) invert(12%);*/
  font-family: barlow;
}

.numeros {
  display: none;
}

/*placaNegra - animaciones*/
.contenedorPlacaNegra {
  position: absolute;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 0;
  z-index: 1000 !important;
}

.placaNegra {
  position: absolute;

  width: 100vw;
  height: 100vh;
  z-index: 600;
}

.negro {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0.7;
  animation-name: aparecerNegro;
  animation-duration: 10s;
}

@keyframes aparecerNegro {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0.7;
  }
}

.logosIber {
  position: absolute;
  z-index: 610;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  opacity: 0;
  animation-name: aparecerIber;
  animation-duration: 4s;
}

@keyframes aparecerIber {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.logosMuseos {
  position: absolute;
  z-index: 611;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  opacity: 0;
  animation-name: aparecerMuseos;
  animation-duration: 8s;
}

@keyframes aparecerMuseos {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  60% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.contenedorPlacaNegra.disabled {
  display: none;
}

.botonesInicio {
  position: absolute;
  width: 100vw;
  height: 8vh;
  top: 46vh;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  cursor: pointer;
  z-index: 620;
  animation-name: aparecerBotones;
  animation-duration: 10s;
}
@keyframes aparecerBotones {
  0% {
    opacity: 0;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.barrita {
  height: 100%;
  display: none;
}
.boton360,
.botonJuego {
  height: 100%;
  margin-right: 3%;
  margin-left: 3%;
}

.botonJuego {
  display: none;
}

.fondoNegro {
  position: absolute;
  display: none;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 610;
}

#pano {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/*viñeta*/
#pano > div {
  -webkit-box-shadow: inset -60px 0 20vw 6vw rgb(0, 0, 0);
  box-shadow: inset -60px 0 20vw 6vw rgb(0, 0, 0);
}

/*nav*/
.nav {
  position: relative;
  width: 95%;
  height: 10%;
  top: 5%;
  left: 4%;
  display: flex;
}

.logo {
  position: absolute;
  width: 6%;
  left: 0;
  top: 0;
  cursor: pointer;
}

/*Contenedor Mapa*/
.ContenedorMapa {
  position: absolute;
  display: flex;
  width: 25%;
  height: 1vh;
  top: 5%;
  right: 2%;
  z-index: 200;
}

.ContenedorMapa.disabled {
  display: none;
}

.recorrido {
  position: absolute;
  display: flex;
  flex-direction: column;
  right: 0.5%;
  width: 35%;
  float: right;
  z-index: 500;
}

.recorrido-botones,
.estaciones-botones {
  height: 50%;
}

.Mapa {
  position: relative;
  width: 100%;
  height: 35vw;
  right: 0%;
  display: none;
}

.Mapa.enabled {
  display: block;
}

/*
.avanzarRetroceder {
  position: absolute;
  right: 10%;
  top: 30%;
  z-index: 400;
}

.avanzarRetroceder p {
  font-family: Barlow;
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 10px;
}
*/

.botonesSub {
  position: absolute;
  bottom: 10%;
  right: 10%;
  width: 40%;
  height: 9%;
  float: right;
  z-index: 400;
}

.botonesSub img {
  position: absolute;
  width: 100%;
  float: right;
}

#vacio1,
#vacio2 {
  position: relative;
  width: 100%;
  height: 40%;
  margin-bottom: 2%;
}

#vacio1 {
  visibility: hidden;
  bottom: 6%;
}

#vacio1:hover,
#vacio2:hover {
  border: 1px solid #fff;
  opacity: 0.5;
  cursor: pointer;
}

.recorridoOn,
.recorridoOff {
  position: relative;
  width: 85%;
  margin: 7%;
  float: right;
}

.recorridoOn {
  display: none;
}

.recorridoOn.enabled {
  display: block;
}

.recorridoOn:hover,
.recorridoOff:hover,
#est1On:hover,
#est2On:hover,
#est3On:hover,
#est4On:hover,
#est5On:hover,
#est6On:hover,
#est1Off:hover,
#est2Off:hover,
#est3Off:hover,
#est4Off:hover,
#est5Off:hover,
#est6Off:hover {
  cursor: pointer;
  transition-property: transform;
  transition-duration: 0.2;
  transform: scale(1.05, 1.05);
}

.recorridoOff.disabled {
  display: none;
}

.estacionesOff,
.estacionesOn {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 500;
}

.estacionesOff img,
.estacionesOn img {
  position: relative;
  display: none;
  width: 85%;
  margin: 7%;
  float: right;
  z-index: 501;
}

.estacionesOn {
  display: none;
}

.estacionesOff {
  display: block;
}
.estacionesOn.enabled {
  display: block;
}
.estacionesOff.disabled {
  display: none;
}
.estacionesOn.disabled {
  display: none;
}
.estacionesOff.enabled {
  display: block;
}

#est1On.enabled,
#est2On.enabled,
#est3On.enabled,
#est4On.enabled,
#est5On.enabled,
#est6On.enabled {
  display: block;
}

#est1Off.enabled,
#est2Off.enabled,
#est3Off.enabled,
#est4Off.enabled,
#est5Off.enabled,
#est6Off.enabled {
  display: block;
}

.Subsuelos {
  position: absolute;
  float: right;
  height: 100%;
  width: 100%;
}

/*punto actual*/
#puntoActual {
  position: absolute;
  width: 6%;
  z-index: 400;
}

/*animation-name: arribaAbajo;
animation-iteration-count: infinite;
animation-duration: 1s;
animation-timing-function: ease;
@keyframes arribaAbajo {
  0% {
    padding-top: 0%;
  }
  50% {
    padding-top: 2%;
  }
  100% {
    padding-top: 0%;
  }
}*/

#puntoActual.disabled {
  display: none;
}

.primerSub,
.segundoSub {
  position: absolute;
  width: 100%;
  height: 100%;
}

.primerSub,
.segundoSub img {
  position: relative;
}

.mapaPrimerSub,
.mapaSegundoSub {
  position: relative;
  max-width: 100%;
}

.mapaPrimerSub ~ img,
.mapaSegundoSub ~ img {
  position: absolute;
  background-color: aqua;
  width: 7%;
  height: 10%;
  opacity: 0;
}

/*Primer subsuelo*/

/*est1*/
#punto0 {
  top: 78%;
  left: 27.3%;
}

/*est2*/
#punto1 {
  top: 46.7%;
  left: 40.6%;
}

/*Segundo subsuelo*/

/*est3*/
#punto2 {
  top: 55.5%;
  left: 44.9%;
}

/*est4*/
#punto3 {
  top: 60%;
  left: 74.2%;
}

/*est6*/
#punto5 {
  top: 16.7%;
  left: 32.4%;
}

/*est 5*/
#punto4 {
  top: 50.3%;
  left: 16.7%;
  background-color: cornflowerblue;
}

#punto0:hover,
#punto1:hover,
#punto2:hover,
#punto3:hover,
#punto4:hover,
#punto5:hover {
  cursor: pointer;
}

/*Panel*/
.ContenedorPanel {
  position: absolute;
  display: none;
  width: 25%;
  height: 70vh;
  top: 5%;
  right: 2%;
}

.ContenedorPanel.enabled {
  display: block;
}

.Panel {
  position: absolute;
  z-index: 100;
  width: 100%;
  height: 36vw;
  float: right;
}

.PanelTxt {
  position: absolute;
  width: 100%;
  height: 90%;
  float: right;
}

.Panel img {
  position: absolute;
  margin-top: 12.4%;
}

.cajaTexto {
  position: absolute;
  top: 7vw;
  z-index: 150;
  padding: 0 5% 5% 5%;
  width: 100%;
  height: 27vw;
  float: right;
  overflow-y: scroll;
}

.cajaTexto p {
  color: #000;
  display: inline;
  padding-bottom: 5%;
  z-index: 200;
  font-family: Barlow;
  font-size: 100%;
  white-space: pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -o-pre-wrap;
  text-align: left;
  letter-spacing: 0px;
  float: right;
  word-spacing: 0px;

  /*font-size: 25px;*/
}

.cajaTexto h3 {
  color: #000;
  font-size: 20px;
  margin-bottom: 3%;
}

.txt_ing {
  display: none;
}

.txt_ing.enabled {
  display: block;
}

.txt_esp.disabled {
  display: none;
}

/*
.scrollUp,
.scrollDown {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 90%;
  left: 5%;
  height: 4%;
}

.scrollUp {
  top: 16%;
}

.scrollDown {
  top: 90%;
}

.scrollUp img,
.scrollDown img {
  position: absolute;
  top: 0;
  height: 15px;
  object-fit: scale-down;
  margin-top: 0;
}

.scrollUp img {
  transform: rotate(180deg);
}
*/

/*Subtitulos*/
.ContenedorSubs {
  position: absolute;
  display: flex;
  height: 80px;
  width: 100%;
  bottom: 40px;
}

.ContenedorSubs p {
  font-family: barlow;
  font-size: 45px;
  font-weight: 900;
  text-align: center;
  color: rgb(255, 230, 0);
  margin: 0 auto;
}

/*Reproductor de audios*/
.ContenedorTracks {
  position: absolute;
  display: flex;
  width: 15%;
  height: 11%;
  flex-direction: column;
  bottom: 50px;
  right: 3%;
  z-index: 100;
}

.audios {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.lengua,
.aud {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  position: relative;
  height: 50%;
}

.lengua img,
.aud img {
}

#idioma,
#language,
#audioOn,
#audioMute {
  position: relative;
  display: inline;
  float: inline-end;
  height: 100%;
  padding-bottom: 9%;
}

#audioMute {
  height: 110%;
  padding-bottom: 9.3%;
}

#language {
  height: 105%;
  padding-bottom: 9.3%;
}

#idioma.disabled,
#audioOn.disabled {
  display: none;
}

#language,
#audioMute {
  display: none;
}

#language.enabled,
#audioMute.enabled {
  display: inline;
}

#audioOn:hover,
#audioMute:hover,
#idioma:hover,
#language:hover {
  cursor: pointer;
  transition-property: transform;
  transition-duration: 0.2;
  transform: scale(1.05, 1.05);
}

#currentTime {
  /*object-fit: none;*/
  object-position: right;
  font-family: barlow;
  font-size: 30px;
  text-align: end;
}

.preguntarSeguir {
  top: 0%;
  left: 0%;
  width: 100vw;
  height: 100vh;
  position: absolute;

  background: rgba(0, 0, 0, 0.7);
}

.preguntarSeguir-child {
  top: 50%;
  left: 50%;
  width: 30%;
  height: 20%;
  background: white;
  position: absolute;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  transform: translate(-50%, -50%);
  justify-content: center;
}

.preguntarSeguir-p {
  width: 100%;
  margin-top: 4%;
  text-align: center;
  font-size: 20px;
  font-family: barlow;
  color: #000;
}

.quedarse,
.seguir {
  display: flex;
  align-items: center;
  width: 30%;
  height: 30%;
  margin-left: 5%;
  margin-right: 5%;
  cursor: pointer;
  background: #000;
  color: #fff;
}

.quedarse p,
.seguir p {
  text-align: center;
  font-size: 20px;
  font-family: barlow;
  margin: auto;
}

/*esconder elementos del audio*/
/*
audio::-webkit-media-controls-volume-slider {
  display: none;
}

audio::-webkit-media-controls-mute-button {
  display: none;
}
*/

/*responsive del mapa*/

/* Extra small devices (phones, 600px and down) */

@media only screen and (max-width: 600px) {
  /*viñeta*/
  #pano > div {
    -webkit-box-shadow: inset 0 80px 70px 3px rgb(0, 0, 0),
      inset 0 -80px 70px 3px rgb(0, 0, 0);
    box-shadow: inset 0 80px 70px 3px rgb(0, 0, 0),
      inset 0 -80px 70px 3px rgb(0, 0, 0);
  }

  #audioControl {
    height: 25px;
    width: 70%;
  }

  .botonesInicio {
    flex-direction: column;
    width: 40vw;
    height: 22vh;
    top: 39vh;
  }

  .barrita {
    height: 2px;
  }

  .logosIber {
    width: 100%;
  }

  .logosIber,
  .logosMuseos {
    transform: scale(0.6);
  }

  .nav {
    top: 3%;
    left: 3%;
    height: 7%;
  }

  .logo {
    width: 17%;
  }

  .botones {
    display: none;
  }

  .ContenedorMapa {
    width: 100%;
    height: 1vh;
    top: 3%;
    left: 0;
  }

  .Mapa {
    width: 94%;
    margin-left: 3%;
    height: 100%;
  }

  .Subsuelos {
    height: 125vw; /*80vh;*/
    top: 7vh;
    background-color: rgb(0, 0, 0);
  }
  .primerSub,
  .segundoSub {
    width: 100%; /*90vw;*/
    height: 125vw; /*119.5vw;*/
  }

  .recorrido {
    position: absolute;
    width: 65%;
    height: 6vh;
    right: 0;
    display: flex;
    flex-direction: row;
    justify-content: end;
    z-index: 100;
  }

  .recorrido-botones {
    width: 45%;
  }
  .estaciones-botones {
    width: 45%;
    margin-right: 3vw;
  }

  .recorridoOff,
  .recorridoOn {
    margin-right: 0%;
  }
  .estacionesOn img,
  .estacionesOff img {
    margin-right: 0%;
  }

  .botonesSub {
    height: 500%;
    top: 117vw;
    left: 55%;
  }

  #vacio1,
  #vacio2 {
    height: 40%;
    margin-bottom: 0%;
    bottom: 0%;
  }

  #vacio2 {
    margin-top: 5%;
  }

  .mapaPrimerSub ~ img,
  .mapaSegundoSub ~ img {
    height: 12vw;
    opacity: 0;
  }

  /*.mapaPrimerSub,
  .mapaSegundoSub {
    top: 0;
    left: 0;
  }*/

  /*est1*/
  #punto0 {
    top: 79.5%;
    left: 29.4%;
  }

  /*est2*/
  #punto1 {
    top: 40.8%;
    left: 44.8%;
  }

  /*Segundo subsuelo*/

  /*est3*/
  #punto2 {
    top: 51.5%;
    left: 50.2%;
  }

  /*est4*/
  #punto3 {
    top: 57.1%;
    left: 83.8%;
  }

  /*est6*/
  #punto5 {
    top: 3.8%;
    left: 35.6%;
  }

  /*est 5*/
  #punto4 {
    top: 45%;
    left: 17.9%;
  }

  /*#puntoActual {
    top: 78.7%;
    left: 29.7%;
  }*/

  .ContenedorPanel {
    position: absolute;
    width: 94%;
    top: 3%;
    right: 3%;
    margin-left: 3%;
  }

  .Panel {
    background-color: #fff;
    position: absolute;
    height: 80vh;
    top: 7vh;
  }

  .PanelTxt {
    position: absolute;
    width: 100%;
    top: 0;
    display: none;
  }

  .Panel img {
    display: none;
    margin-top: 0%;
  }

  .ContenedorSubs {
    height: 40px;
    bottom: 8vh;
  }

  .cajaTexto {
    height: 90%;
  }

  .ContenedorSubs p {
    font-size: 14px;
  }

  .ContenedorTracks {
    width: 88%;
    margin-left: 6%;
    margin-right: 6%;
    height: 4%;
    bottom: 20px;
    right: 0%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }

  .audios {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: left;
  }

  .contenedorTime {
    display: flex;
    width: 0;
  }

  #currentTime {
    width: 100%;
    font-size: 18px;
    overflow-x: visible;
    align-content: right;
  }

  .lengua,
  .aud {
    justify-content: flex-start;
    width: 37%;
    height: 80%;
  }

  #audioMute {
    height: 106%;
    padding-bottom: 0%;
    margin-top: 1%;
  }

  #audioOn {
    padding-left: 3%;
  }

  #idioma,
  #language,
  #audioOn {
    padding-top: 2%;
    padding-bottom: 0%;
  }

  .preguntarSeguir-child {
    width: 90%;
    height: 30%;
  }

  .preguntarSeguir-p {
    font-size: 16px;
  }

  .quedarse,
  .seguir {
    width: 38%;
  }

  .quedarse p,
  .seguir p {
    font-size: 16px;
    padding: 2%;
    margin: auto;
    text-align: center;
  }

  .avanzarRetroceder {
    top: 100px;
  }

  .avanzarRetroceder p {
    font-size: 1rem;
  }

  audio {
    width: 250px;
  }
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
  .ContenedorSubs p {
    font-size: 20px;
  }
  .preguntarSeguir-p,
  .quedarse p,
  .seguir p {
    font-size: 14px;
  }
  .ContenedorMapa {
    width: 40%;
  }
  .Mapa {
    height: 57vw;
  }
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
  .ContenedorSubs p {
    font-size: 25px;
  }
  .ContenedorMapa {
    width: 35%;
  }
  .Mapa {
    height: 50vw;
  }
}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
  .ContenedorSubs p {
    font-size: 35px;
  }
  .preguntarSeguir-p,
  .quedarse p,
  .seguir p {
    font-size: 16px;
  }
  .ContenedorMapa {
    width: 30%;
  }
  .Mapa {
    height: 43vw;
  }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
  .ContenedorSubs p {
    font-size: 45px;
  }

  .preguntarSeguir-p,
  .quedarse p,
  .seguir p {
    font-size: 20px;
  }

  .ContenedorMapa {
    width: 25%;
  }
  .Mapa {
    height: 36vw;
  }
}

/*EDITANDO*/

#titleBar {
  position: absolute;
  top: 0;
  left: 0;
  right: 40px;
  height: 40px;
  text-align: center;
  display: none;
}

.mobile #titleBar {
  height: 50px;
  right: 50px;
}

/* If there is a fullscreen button the title bar must make space for it */
body.fullscreen-enabled #titleBar {
  right: 80px;
}

body.fullscreen-enabled.mobile #titleBar {
  right: 100px;
}

/* If there are multiple scenes the title bar must make space for the scene list toggle */
body.multiple-scenes #titleBar {
  left: 40px;
}

body.multiple-scenes.mobile #titleBar {
  left: 50px;
}

#titleBar .sceneName {
  width: 100%;
  height: 100%;
  line-height: 30px;
  padding: 5px;
  background-color: rgb(58, 68, 84);
  background-color: rgba(58, 68, 84, 0.8);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;

  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.mobile #titleBar .sceneName {
  line-height: 40px;
}

#fullscreenToggle {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  padding: 5px;
  background-color: rgb(103, 115, 131);
  background-color: rgba(103, 115, 131, 0.8);
}

.mobile #fullscreenToggle {
  width: 50px;
  height: 50px;
}

body.fullscreen-enabled #fullscreenToggle {
  display: block;
}

#fullscreenToggle .icon {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
}

.mobile #fullscreenToggle .icon {
  top: 10px;
  right: 10px;
}

#fullscreenToggle .icon.on {
  display: none;
}

#fullscreenToggle .icon.off {
  display: block;
}

#fullscreenToggle.enabled .icon.on {
  display: block;
}

#fullscreenToggle.enabled .icon.off {
  display: none;
}

#autorotateToggle {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  padding: 5px;
  background-color: rgb(103, 115, 131);
  background-color: rgba(103, 115, 131, 0.8);
  display: none;
}

.mobile #autorotateToggle {
  width: 50px;
  height: 50px;
}

/* If there is a fullscreen button, autorotate must placed a bit to the left */
body.fullscreen-enabled #autorotateToggle {
  right: 40px;
}

body.fullscreen-enabled.mobile #autorotateToggle {
  right: 50px;
}

#autorotateToggle .icon {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
}

.mobile #autorotateToggle .icon {
  top: 10px;
  right: 10px;
}

#autorotateToggle .icon.on {
  display: none;
}

#autorotateToggle .icon.off {
  display: block;
}

#autorotateToggle.enabled .icon.on {
  display: block;
}

#autorotateToggle.enabled .icon.off {
  display: none;
}

#sceneListToggle {
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  padding: 5px;
  background-color: rgb(103, 115, 131);
  background-color: rgba(103, 115, 131, 0.8);
  display: none;
}

.mobile #sceneListToggle {
  width: 50px;
  height: 50px;
}

#sceneListToggle .text {
  position: absolute;
  top: 5px;
  left: 15px;
  width: 100%;
  line-height: 30px;
}

#sceneListToggle .icon {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
}

.mobile #sceneListToggle .icon {
  top: 10px;
  right: 10px;
}

#sceneListToggle .icon.on {
  display: none;
}

#sceneListToggle .icon.off {
  display: block;
}

#sceneListToggle.enabled .icon.on {
  display: block;
}

#sceneListToggle.enabled .icon.off {
  display: none;
}

#sceneList {
  position: absolute;
  top: 0;
  left: -220px;
  padding-top: 40px;
  width: 220px;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  margin-left: 0;
  -webkit-transition: margin-left 0.5s ease-in-out;
  transition: margin-left 0.5s ease-in-out;
  display: none;
}

.mobile #sceneList {
  padding-top: 50px;
}

#sceneList .scenes {
  width: 100%;
  background-color: rgb(58, 68, 84);
  background-color: rgba(58, 68, 84, 0.8);
}

.mobile #sceneList {
  width: 100%;
  height: 100%;
  left: -100%;
}

.mobile #sceneList.enabled {
  margin-left: 100%;
}

.mobile #sceneList .scenes {
  height: 100%;
}

#sceneList.enabled {
  margin-left: 220px;
}

#sceneList .scene {
  display: block;
  width: 100%;
  height: 30px;
}

.mobile #sceneList .scene {
  height: 40px;
}

#sceneList .scene .text {
  width: 100%;
  height: 100%;
  padding: 0 15px;
  line-height: 30px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mobile #sceneList .scene .text {
  line-height: 40px;
}

.no-touch #sceneList .scene:hover {
  background-color: rgb(103, 115, 131);
  background-color: rgba(103, 115, 131, 0.8);
}

#sceneList .scene.current {
  background-color: rgb(103, 115, 131);
  background-color: rgba(103, 115, 131, 0.8);
}

/* Hide scene list when only a single scene exists */
body.single-scene #sceneList,
body.single-scene #sceneListToggle {
  display: none;
}

/* LINK HOTSPOT */

.link-hotspot {
  width: 41px;
  height: 24px;
  margin-left: -20px;
  margin-top: -20px;
  opacity: 0.9;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.no-touch .link-hotspot:hover {
  opacity: 1;
}

.escalera {
  width: 41px;
  height: 41px;
}

.linkLlenop {
  width: 30px;
  height: 30px;
}

.banderita {
  width: 120px;
  height: 60px;
}

.mobile .link-hotspot {
  width: 41px;
  height: 24px;
}

.link-hotspot-icon {
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.link-hotspot-tooltip {
  position: absolute;
  left: 100%;
  top: 14px; /* ( 60 - (16 + 2*8) ) / 2 */

  margin-left: 3px;

  font-family: BARLOW;
  font-size: 20px;

  max-width: 300px;

  padding: 8px 10px;

  /*border-radius: 5px;*/

  background-color: rgb(255, 255, 255);
  /*background-color: rgba(255, 255, 255, 0.8);*/

  color: rgb(0, 0, 0);

  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;

  cursor: pointer;

  opacity: 0;

  -ms-transform: translateX(-8px);
  -webkit-transform: translateX(-8px);
  transform: translateX(-8px);

  -webkit-transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    opacity 0.3s;
  transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    opacity 0.3s;
}

.mobile .link-hotspot {
  top: 19px; /* ( 70 - (16 + 2*8) ) / 2 */
}

.mobile .link-hotspot.escalera {
  width: 41px;
  height: 41px;
}

.mobile .link-hotspot.linkLlenop {
  width: 30px;
  height: 30px;
}

.mobile .link-hotspot.banderita {
  width: 90px;
  height: 45px;
}

.no-touch .link-hotspot:hover .link-hotspot-tooltip {
  opacity: 1;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

/* Prevent tooltip from triggering */
.link-hotspot-tooltip {
  pointer-events: none;
}
.no-touch .link-hotspot:hover .link-hotspot-tooltip {
  pointer-events: all;
}

/* Fallback mode without pointer-events (IE8-10) */
.tooltip-fallback .link-hotspot-tooltip {
  display: none;
}
.no-touch .tooltip-fallback .link-hotspot:hover .link-hotspot-tooltip {
  display: block;
}

/* INFO HOTSPOTS */

.info-hotspot {
  line-height: 1.2em;
  opacity: 0.9;
  -webkit-transition: opacity 0.2s 0.2s;
  transition: opacity 0.2s 0.2s;
}

.no-touch .info-hotspot:hover {
  opacity: 1;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.info-hotspot.visible {
  opacity: 1;
}

.info-hotspot .info-hotspot-header {
  width: 40px;
  height: 40px;
  font-family: BARLOW;
  font-size: 20px;
  border-radius: 20px;
  background-color: rgb(0, 0, 0);
  cursor: pointer;
  -webkit-transition: width 0.3s ease-in-out 0.5s;
  /*border-radius 0.3s ease-in-out 0.5s;*/
  transition: width 0.3s ease-in-out 0.5s; /*border-radius 0.3s ease-in-out 0.5s;*/
}

.info-hotspot-header.header-pdf {
  height: 67px;
  background-color: rgb(0, 0, 0);
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.mobile .info-hotspot .info-hotspot-header {
  width: 40px;
  height: 40px;
  border-radius: 40px;
}

.mobile .info-hotspot .info-hotspot-header-pdf {
  width: 20px;
  height: 20px;
  border-radius: 40px;
}

.mobile .info-hotspot-header.header-pdf {
  width: 35px;
  height: 50px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.desktop.no-touch .info-hotspot .info-hotspot-header:hover {
  width: 260px;
  border-radius: 0px;
  -webkit-transition: width 0.3s ease-in-out, border-radius 0.3s ease-in-out;
  transition: width 0.3s ease-in-out, border-radius 0.3s ease-in-out;
}

.desktop .info-hotspot.visible .info-hotspot-header,
.desktop.no-touch .info-hotspot.visible .info-hotspot-header:hover {
  width: 260px;
  border-radius: 0px;
  /*border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;*/
  -webkit-transition: width 0.3s ease-in-out; /*border-radius 0.3s ease-in-out;*/
  transition: width 0.3s ease-in-out; /*border-radius 0.3s ease-in-out;*/
}

.info-hotspot .info-hotspot-icon-wrapper {
  width: 40px;
  height: 40px;
}

.info-hotspot-icon-wrapper.iconWrapper-pdf {
  height: 70px;
}

.mobile .info-hotspot .info-hotspot-icon-wrapper {
  width: 40px;
  height: 40px;
}

.mobile .info-hotspot-icon-wrapper.iconWrapper-pdf {
  width: 35px;
  height: 50px;
}

.info-hotspot .info-hotspot-icon {
  width: 90%;
  height: 90%;
  margin: 5%;
}

.info-hotspot .info-hotspot-title-wrapper {
  position: absolute;
  left: 40px;
  top: 0;
  width: 0;
  height: 40px;
  padding: 0;
  overflow: hidden;
  -webkit-transition: width 0s 0.4s, padding 0s 0.4s;
  transition: width 0s 0.4s, padding 0s 0.4s;
}

.info-hotspot-title-wrapper.titleWrapper-pdf {
  left: 40px;
  top: 10px;
  text-align: center;
}

.desktop .info-hotspot.visible .info-hotspot-title-wrapper,
.desktop.no-touch
  .info-hotspot
  .info-hotspot-header:hover
  .info-hotspot-title-wrapper {
  width: 220px;
  padding: 0 5px;

  -webkit-transition: width 0s 0.4s, padding 0s 0.4s;
  transition: width 0s 0.4s, padding 0s 0.4s;
}

.info-hotspot .info-hotspot-title-wrapper:before {
  content: "";
  display: inline-block;
  vertical-align: middle;

  height: 100%;
}

.info-hotspot .info-hotspot-title {
  display: inline-block;
  vertical-align: middle;

  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.info-hotspot .info-hotspot-close-wrapper {
  position: absolute;
  left: 260px;
  top: 0;
  height: 40px;
  width: 40px;
  /*border-top-right-radius: 5px;*/
  background-color: rgb(0, 0, 0);
  visibility: hidden;
  -ms-transform: perspective(200px) rotateY(90deg);
  -webkit-transform: perspective(200px) rotateY(90deg);
  transform: perspective(200px) rotateY(90deg);
  -ms-transform-origin: 0 50% 0;
  -webkit-transform-origin: 0 50% 0;
  transform-origin: 0 50% 0;
  -webkit-transition: -ms-transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s,
    transform 0.3s 0.3s, visibility 0s 0.6s;
  transition: -ms-transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s,
    transform 0.3s 0.3s, visibility 0s 0.6s;
}

.info-hotspot-close-wrapper.closeIcon-pdf {
  height: 67px;

  padding-top: 1px;
  padding-bottom: 29px;
}

.desktop .info-hotspot.visible .info-hotspot-close-wrapper {
  visibility: visible;
  -ms-transform: perspective(200px) rotateY(0deg);
  -webkit-transform: perspective(200px) rotateY(0deg);
  transform: perspective(200px) rotateY(0deg);
  -webkit-transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    visibility 0s 0s;
  transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    visibility 0s 0s;
}

.info-hotspot .info-hotspot-close-icon {
  width: 70%;
  height: 70%;
  margin: 15%;
}

.info-hotspot .info-hotspot-text {
  position: absolute;
  display: flex;
  flex-direction: column;
  font-family: barlow;
  font-size: 16px;
  width: 300px; /* auto;*/
  height: auto;
  top: 40px;
  left: 0;
  padding: 10px;
  background-color: rgb(255, 255, 255);
  overflow-y: auto;
  visibility: hidden;
  /* rotate(90deg) causes transition flicker on Firefox 58 */
  -ms-transform: perspective(200px) rotateX(-89.999deg);
  -webkit-transform: perspective(200px) rotateX(-89.999deg);
  transform: perspective(200px) rotateX(-89.999deg);
  -ms-transform-origin: 50% 0 0;
  -webkit-transform-origin: 50% 0 0;
  transform-origin: 50% 0 0;
  -webkit-transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    visibility 0s 0.3s;
  transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    visibility 0s 0.3s;

  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.info-hotspot-text img {
  cursor: pointer;
}

.info-hotspot-text.text-pdf {
  top: 67px;
  padding: 50px;
}

.text-pdf p {
  font-size: 18px;
  text-align: center;
  margin: auto;
}

.text-pdf a {
  color: blue;
  text-decoration: underline;
}

.desktop .info-hotspot.visible .info-hotspot-text {
  visibility: visible;
  color: black;
  -ms-transform: perspective(200px) rotateX(0deg);
  -webkit-transform: perspective(200px) rotateX(0deg);
  transform: perspective(200px) rotateX(0deg);
  -webkit-transition: -ms-transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s,
    transform 0.3s 0.3s, visibility 0s 0s;
  transition: -ms-transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s,
    transform 0.3s 0.3s, visibility 0s 0s;
}

/* INFO HOTSPOT MODAL */

.desktop .info-hotspot-modal {
  display: none;
}

.info-hotspot-modal {
  top: 0;
  left: 0;
  position: absolute;
  width: 94%;
  margin-left: 3%;
  height: 97%;
  margin-top: 3%;
  overflow: hidden;
  z-index: 11000 !important;
  background-color: rgb(255, 255, 255);
  line-height: 1.2em;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.2s ease-in-out 0.5s, visibility 0s 0.7s;
  transition: opacity 0.2s ease-in-out 0.5s, visibility 0s 0.7s;
}

.info-hotspot-modal.modal-pdf {
  top: 30%;
  height: 30%;
}

.info-hotspot-modal.modal-pdf p {
  font-size: 18px;
  text-align: center;
  margin: auto;
}

.info-hotspot-modal.modal-pdf a {
  color: blue;
  text-decoration: underline;
}

.info-hotspot-modal.visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.2s ease-in-out, visibility 0s 0s;
  transition: opacity 0.2s ease-in-out, visibility 0s 0s;
}

.info-hotspot-modal .info-hotspot-header {
  position: absolute;
  color: #000;
  font-family: barlow;
  font-weight: 900;
  font-size: 20px;
  top: 10px;
  left: 10px;
  right: 10px;
  padding: 10px;
  width: auto;
  height: 50px;
  background-color: rgb(255, 255, 255);
  background-color: rgb(255, 255, 255);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out 0.2s;
  transition: opacity 0.3s ease-in-out 0.2s;
}

.info-hotspot-modal.visible .info-hotspot-header {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-in-out 0.2s;
  transition: opacity 0.3s ease-in-out 0.2s;
}

.info-hotspot-modal .info-hotspot-icon-wrapper {
  width: 50px;
  height: 50px;
}

.info-hotspot-modal .info-hotspot-icon {
  width: 90%;
  height: 90%;
  margin: 5%;
}

.info-hotspot-modal .info-hotspot-title-wrapper {
  position: absolute;
  top: 0;
  left: 0px;
  right: 0px;
  width: auto;
  height: 50px;
  padding: 0 10px;
}

.info-hotspot-modal .info-hotspot-title-wrapper:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}

.info-hotspot-modal .info-hotspot-title {
  display: inline-block;
  vertical-align: middle;

  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.info-hotspot-modal .info-hotspot-close-wrapper {
  position: absolute;

  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  background-color: rgb(255, 255, 255);
  cursor: pointer;
}

.info-hotspot-modal .info-hotspot-close-icon {
  position: absolute;
  width: 70%;
  height: 70%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.info-hotspot-modal .info-hotspot-text {
  position: absolute;
  color: rgb(0, 0, 0);
  font-family: barlow;
  top: 70px;
  bottom: 10px;
  left: 10px;
  right: 10px;
  padding: 10px;
  background-color: rgb(255, 255, 255);
  background-color: rgb(255, 255, 255);
  overflow-y: auto;
  opacity: 0;

  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;

  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.info-hotspot-modal .info-hotspot-text img {
  width: 100%;
}

.info-hotspot-modal.visible .info-hotspot-text {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-in-out 0.4s;
  transition: opacity 0.3s ease-in-out 0.4s;
}

/* ESCALERAS HOTSPOTS */
.esc-hotspot {
  width: 40px;
  height: 40px;
  margin-left: -20px;
  margin-top: -20px;
  opacity: 0.9;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.no-touch .esc-hotspot:hover {
  opacity: 1;
}

.mobile .esc-hotspot {
  width: 40px;
  height: 40px;
}

.esc-hotspot-icon {
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.esc-hotspot-tooltip {
  position: absolute;
  left: 100%;
  top: 14px; /* ( 60 - (16 + 2*8) ) / 2 */

  margin-left: 3px;

  font-family: BARLOW;
  font-size: 20px;

  max-width: 300px;

  padding: 8px 10px;

  /*border-radius: 5px;*/

  background-color: rgb(255, 255, 255);
  /*background-color: rgba(255, 255, 255, 0.8);*/

  color: rgb(0, 0, 0);

  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;

  cursor: pointer;

  opacity: 0;

  -ms-transform: translateX(-8px);
  -webkit-transform: translateX(-8px);
  transform: translateX(-8px);

  -webkit-transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    opacity 0.3s;
  transition: -ms-transform 0.3s, -webkit-transform 0.3s, transform 0.3s,
    opacity 0.3s;
}

.mobile .esc-hotspot {
  top: 19px; /* ( 70 - (16 + 2*8) ) / 2 */
}

.no-touch .esc-hotspot:hover .esc-hotspot-tooltip {
  opacity: 1;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

/* Prevent tooltip from triggering */
.esc-hotspot-tooltip {
  pointer-events: none;
}
.no-touch .esc-hotspot:hover .esc-hotspot-tooltip {
  pointer-events: all;
}

/* Fallback mode without pointer-events (IE8-10) */
.tooltip-fallback .esc-hotspot-tooltip {
  display: none;
}
.no-touch .tooltip-fallback .esc-hotspot:hover .esc-hotspot-tooltip {
  display: block;
}

/* View control buttons */

.viewControlButton {
  display: none;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 40px;
  height: 40px;
  padding: 5px;
  background-color: rgb(103, 115, 131);
  background-color: rgba(103, 115, 131, 0.8);
}

body.view-control-buttons .viewControlButton {
  display: block;
}

/* Hide controls when width is too small */
@media (max-width: 600px) {
  body.view-control-buttons .viewControlButton {
    display: none;
  }
}

.viewControlButton .icon {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
}

/* Center is at margin-left: -20px */
.viewControlButton-1 {
  margin-left: -145px;
}
.viewControlButton-2 {
  margin-left: -95px;
}
.viewControlButton-3 {
  margin-left: -45px;
}
.viewControlButton-4 {
  margin-left: 5px;
}
.viewControlButton-5 {
  margin-left: 55px;
}
.viewControlButton-6 {
  margin-left: 105px;
}
