html{
   font-family: "Inria Sans", sans-serif !important;
}
body{
   height: 100vh;
}

nav a{
   font-size: 20px;
   color: #464646;
}

.home nav a{
   font-family: "JetBrains Mono", monospace;
   font-size: 1.2em;
   font-weight: 100;
   color: #fff;
}

.home nav a:hover{
   font-weight: 700;
}

a.logo{
   font-family: "JetBrains Mono", monospace;
   font-size: 20px;
   font-weight: 300;
   color: #415260;
}

.mono{
   font-family: "JetBrains Mono", monospace;
}
.dark a.logo{
  color: #fff;
}
a.logo span{
   font-size: 48px;
   font-weight: 500;
   line-height: 1;
}

nav.scene-nav a{
   display: block;
   background: #000;
   padding: 2px 20px;
   margin-bottom: 10px;
   font-size: 20px;
   color: #fff;
   border-radius: 11px;
   text-align: center;
   border: 1px solid #000;
}
.dark nav.scene-nav a{
  border: 1px solid rgba(255, 255, 255, 0.5);
}
nav.scene-nav a.active{
   background: #fff;
   border: 1px solid #000;
   color: #000;
}

.dark #map{
  background: #000;
}
.leaflet-tooltip {
   top: -3px;
   padding: 0px 5px;
   background: transparent;
   border: 0;
   color: #fff;
   font-weight: bold;
   text-transform: uppercase;
   font-size: 12px;
   margin-left: -20px;
   box-shadow: none;
}
.leaflet-tooltip:before {
   border-color: transparent;
}
.no-select {
   user-drag: none;
   user-select: none;
   -moz-user-select: none;
   -webkit-user-drag: none;
   -webkit-user-select: none;
   -ms-user-select: none;
}
.leaflet-overlay-pane svg{
   left: -25px;
   top: -2px;
}
.leaflet-retina .leaflet-control-layers-toggle{
  background: url(../images/layers.svg);
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
}
.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar{
  box-shadow: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px 0 rgb(0 0 0 / 6%);
  border: initial;
  border-radius: 8px;
  /* overflow: hidden; */
}
.leaflet-control-layers-overlays label span{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  color: #70757a;
  font-size: 12px;
  cursor: pointer;
}
.leaflet-control-layers-overlays{
  display: flex;
  justify-content: space-between;
  width: 300px;
}
.leaflet-control-layers-overlays label span img{
  outline: 2px solid transparent;
  border: 2px solid #fff;
  width: 30px;
  margin-right: 6px;
  border-radius: 8px;
}
.leaflet-control-layers label {
  text-align: center;
  line-height: 1.2;
}
.leaflet-control-layers-selector {
  opacity: 0;
  position: absolute;
}
/*.leaflet-control-layers label:hover img,*/
.leaflet-control-layers input[type="checkbox"]:checked + img{
  outline: 2px solid #6a9ef7;
}
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: block;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.leaflet-control-layers-expanded{
  padding: 0;
  border-top-left-radius: 0px !important;
  border-bottom-left-radius: 0px !important;
}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: absolute;
  right: 46px;
  top: 0;
  background: #fff;
  box-shadow: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px 0 rgb(0 0 0 / 6%);
  border-bottom-left-radius: 8px;
  border-top-left-radius: 8px;
  padding: 6px 12px;
  border-right: 1px solid #dadce0;
}
.leaflet-touch .leaflet-control-layers-toggle {
  width: 46px;
  height: 46px;
}
.leaflet-control-zoom{
  border-radius: 8px;
  overflow: hidden;
}

.leaflet-popup-content img {
  pointer-events: none; /* Ensure the image does not block map interactions */
}
.leaflet-popup img.city-asset-1{
  position: absolute;
 top: -72px;
 left: -16px;
 z-index: -1;
 width: 400px;
 max-width: 400px;
}
.leaflet-popup img.city-asset-2{
  position: absolute;
  top: -57px;
  left: -22px;
  z-index: -1;
  width: 600px;
  max-width: 600px;
}
.leaflet-popup img.city-asset-3{
  position: absolute;
  top: -114px;
  left: -16px;
  z-index: -1;
  width: 600px;
  max-width: 600px;
}
.leaflet-popup img.city-asset-4{
  position: absolute;
  top: -271;
  left: -266px;
  z-index: -1;
  width: 850px;
  max-width: 850px;
}
.leaflet-popup img.city-asset-5{
  position: absolute;
  top: -184px;
  left: -175;
  z-index: -1;
  width: 200px;
  max-width: 200px;
}
.leaflet-popup img.city-asset-6{
  position: absolute;
  top: -135px;
  left: -244;
  z-index: -1;
  width: 700px;
  max-width: 700px;
}
.leaflet-popup img.city-asset-7{
  position: absolute;
  top: -204px;
  left: -356;
  z-index: -1;
  width: 350px;
  max-width: 350px;
}
.leaflet-popup img.street-asset-1{
   position: absolute;
   top: -903px;
   left: -921px;
   z-index: -1;
   width: 2000px;
   max-width: 2000px;
}
.leaflet-popup img.street-asset-2{
   position: absolute;
   top: -880px;
   left: -62px;
   z-index: -1;
   width: 2500px;
   max-width: 2500px;
}
.leaflet-popup img.street-asset-3{
   position: absolute;
   top: -300px;
   left: -227px;
   z-index: -1;
   width: 850px;
   max-width: 850px;
}

.leaflet-popup img.block-asset-1{
   position: absolute;
   top: -930px;
   left: -416px;
   z-index: -1;
   width: 850px;
   max-width: 850px;
}
.leaflet-popup img.block-asset-2{
   position: absolute;
   top: -187px;
   left: -156px;
   z-index: -1;
   width: 850px;
   max-width: 850px;
}
.leaflet-popup img.block-asset-3{
   position: absolute;
   top: -60px;
   left: -231px;
   z-index: -1;
   width: 250px;
   max-width: 250px;
}
.leaflet-popup img.sky-asset-1{
   position: absolute;
   top: -294px;
   left: -21px;
   z-index: -1;
   width: 1100px;
   max-width: 1100px;
}
.leaflet-popup img.sky-asset-2{
   position: absolute;
   top: -345px;
   left: -1106px;
   z-index: -1;
   width: 1100px;
   max-width: 1100px;
}
.leaflet-popup img.sky-asset-3{
   position: absolute;
   top: -530px;
   left: -333px;
   z-index: -1;
   width: 600px;
   max-width: 600px;
}
.leaflet-popup-content-wrapper, .leaflet-popup-tip{
  background-color: transparent;
  box-shadow: initial;
  padding: 0;
  border-radius: initial;
}
.leaflet-popup-close-button{
  display: none;
}

.leaflet-popup-pane{
  z-index: 400
}
.timeline-nav{
   display: flex;
   position: fixed;
   bottom: 0;
   right: 0;
   width: 100%;
   justify-content: end;
   height: 50%;
   align-items: end;
   transition: background 0.3s;
}
.timeline-nav:has(nav:hover) {
   background-image: linear-gradient(transparent, rgb(255 255 255 / 75%), #fff);
   transition: background 0.3s;
}

.z-1000{
  z-index: 1000;
}
#scene-nav-btn,
#scene-nav{
  width: 200px;
}
#scene-nav{
  bottom: 45px;
}

.text-red{
  color: #ff0000;
}