* {
  -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;
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
  -ms-content-zooming: none;
}

#panoWrapper {
  width: 100%;
  height: 600px;
  background: url('../images/FDL map line and ink.jpeg') !important;
  z-index: 999999;
}

#pano {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #5BB84D;
  overflow: scroll !important;
}

#panoWrapper:hover {
  transition: opacity 1s ease-in-out;
}

#control {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  z-index: 1;
  padding: 0.5em;
}

#control span {
  background-color: #5BB84D;
  border-radius: 4px;
  color: #333;
  cursor: pointer;
  margin-bottom: 0.25em;
  padding: 0.5em;
}

#legend {
  position: absolute;
  top: 0;
  right: -300px;
  height: 100%;
  z-index: 1;
  padding: 1em;
  cursor: pointer;
  width: 300px;
  display: none;
}

#legend span {
  color: #333;
}

#legend.open {
  right: 0;
}

#legend-header {
  left: -44px;
  height: 200px;
  top: 0;
  width: 44px;
  position: absolute;
  background-color: #5BB84D;
  color: #333;
}

#legend-header>.legend-header-wrapper {
  content: "Map Legend";
  width: 140px;
  font-size: 1.25em;
  position: absolute;
  top: 88px;
  left: -48px;
  transform: rotate( 90deg);
  color: #fff;
}

#legend-body {
  background-color: #f5f5f5;
  display: none;
  height: 100%;
  width: 300px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}

.list>ul#categories {
  margin: 0;
}

.list>ul li {
  background-color: #f5f5f5;
  cursor: pointer;
  font-weight: bold;
  list-style: none;
  margin: 0;
  padding: 0.5em 1em;
}

#legend .list>ul>li:hover, #legend .list>ul#categories ul:hover {
  background-color: #005776;
}

#legend .list>ul>li:hover span, #legend .list>ul>ul>li:hover span {
  color: #fff;
}

.list>ul>ul:hover, .list>ul>ul>li:hover {
  background-color: #005776;
}

.list ul img {
  margin-right: 0.5em;
  vertical-align: middle;
  width: 32px;
}

.list>ul#categories ul {
  background-color: #005776;
  border-bottom: 1px solid #fff;
  margin: 0;
  padding: 0 0 0 1em;
  display: none;
}

.list>ul#categories ul>li {
  font-size: 0.8em;
}

.list ul li span {
  display: inline-block;
}

ul#category-hotspots>li>img {
  width: 24px;
}

#info-wrapper {
  display: none;
  /* overflow-y: hidden; */
  overflow-y: auto;
  position: absolute;
  z-index: 1;
  height: 100%;
  width: 375px;
}

#info {
  font-family: 'Roboto', sans-serif;
  color: #333;
  height: inherit;
}

#info>* {
  padding: 0.5em;
  opacity: 0.9;
}

.header, #info-title {
  background-color: rgba(51, 51, 51, 0.9);
  /* padding: 1em; */
  color: #fff;
  font-size: 1.25em;
  display: flex;
}

.header>* {
  flex: auto;
  font-size: 0.75em;
}

.header>span.flex-right {
  flex: none;
}

#info-close {
  cursor: pointer;
}

#info-title {
  background-color: #5BB84D;
  color: #333;
  font-size: 2em;
}

#info-media {
  background-color: #000000;
  display: flex;
  height: 275px;
  opacity: 1;
  padding: 0;
}

#info-description {
  background-color: #f5f5f5;
  color: #333;
  height: 100%;
  padding: 8px 16px;
}

.primary {
  width: auto;
  height: 180px;
}

.hotspot {
  width: 32px;
  height: 32px;
  margin-left: -16px;
  margin-top: -24px;
  cursor: pointer;
  background-size: cover;
}

.hotspot.active {
  border: 8px solid #febe10;
  border-radius: 32px;
  width: 48px;
  height: 48px;
  margin-left: -24px;
  margin-top: -36px;
}

[data-source] {
  display: inline-block;
  cursor: pointer;
}

#hotspotSelect {
  display: none;
  position: fixed;
  bottom: 0;
  width: 100%;
  overflow: hidden;
  opacity: 0.95;
  background-color: #055776;
  z-index: 1;
}

#hotspotSelect span {
  padding: 1em;
  color: #fff;
  flex: 1 1 auto;
  text-align: center;
}

#hotspotSelect span.active {
  background-color: #56ba48 !important;
}

#hotspotContentWrapper {
  display: none;
  background-color: rgba(68, 68, 68, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

#hotspotContent {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(100% - 132px);
  background-color: #ffffff;
}

#hotspotContent .informationContent {
  background-color: #fff;
  display: flex;
  padding: 3em;
  width: 100%;
}

#hotspotContent .message {
  text-align: center;
  padding-top: 190px;
  font-size: 70px;
  color: #ddd;
}

#contentCloseWrapper {
  display: flex;
  justify-content: flex-end;
}

#contentClose {
  font-size: 2em;
  color: #fff;
  cursor: pointer;
  padding: 0.25em;
}

.videoContent {
  width: 100%;
  height: 100%;
}

span.navigation {
  background-color: rgba(51, 51, 51, 0.8);
  color: #f5f5f5;
  cursor: pointer;
  height: 3em;
  position: absolute;
  /* width: 2em; */
  top: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto !important;
}

span.navigation:hover {
  background-color: #055776;
}

#media-content {
  display: flex;
  padding: 0;
  width: 100%;
}

#media-content>img {
  object-fit: cover;
}

span#prev-media {
  left: 0;
}

span#next-media {
  right: 0;
}

span.navigation>span.material-icons {
  color: #f5f5f5;
  display: flex;
  justify-content: center;
  font-size: 3em;
}

#legend .material-icons {
  transform: rotate(-90deg);
  position: absolute;
  font-size: 2em;
  margin-top: -3px;
}

#close-legend {
  display: none;
}

.hide {
  display: none !important;
}

@media (max-width: 500px) {
  #info-wrapper {
    width: 100%;
  }
  #legend {
    width: 250px;
    right: -250px;
  }
  #legend-body {
    width: 250px;
  }
}

@media (max-width: 390px) {
  #legend {
    width: 200px;
    right: -200px;
  }
  #legend-body {
    width: 200px;
  }
}

@media (max-width: 335px) {
  #legend {
    width: 160px;
    right: -160px;
  }
  #legend-body {
    width: 160px;
  }
}

/* REQUEST INFO BLOCK */
.mptc-requestInfoBlock { 
  display: flex;
  justify-content: center;
  align-items: center;
  height: 28px; 
  width: 104px; 
  position: fixed; 
  top: 40%; 
  left: -40px;
  z-index: 999;
  transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg); 
  -moz-transform: rotate(-90deg); 
  -o-transform: rotate(-90deg); 
}

.mptc-requestInfoBlock a { 
  display: block; 
  background: #005776; 
  height: 15px; 
  width: 125px; 
  color: #fff;  
  font-size: 14px; 
  font-weight: bold; 
  text-decoration: none; 
  border-radius:0 0 6px 6px;
  transition: all .35s;
  text-align: center;
}

.mptc-requestInfoBlock a:hover { 
  background: #014a65;
  color: #d2d4d5;
}