
:root {
    --primary-dark: #fff;
    --primary-light: #fff;
    --primary-semi-light: #8a8a8a;
    --primary-semi-dark: #2e2e2e;
    --primary-font-color: black;
    --sidebar-width: 300px;
    --sidebar-top-nav-height: 70px;
    --secondary-font-color: #d4af37;
    --top-bar-height: 70px;
    --disabled-font-color: #D3D3D3;
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/montserrat/v15/JTURjIg1_i6t8kCHKm45_bZF3gnD_g.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Montserrat-Bold';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/montserrat/v15/JTURjIg1_i6t8kCHKm45_dJE3gnD_g.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Hind-Light';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/hind/v11/5aU69_a8oxmIdGl4BA.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Hind';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/hind/v11/5aU69_a8oxmIdGl4BA.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@keyframes highlight {
    0% {
        background: #fff;
    }
    100% {
        background: none;
    }
}

html, body {
    width: 100%;
    height: 100%;
    font-family: 'Montserrat' !important;
    overflow:hidden;

}

body {
    min-height: 100vh;
    background-color: var(--primary-dark) !important;
    /*color: var(--primary-light);*/
}
#error_text {
    margin:50px;
}

.highlight {
    animation: highlight 2s;
}

h1, h2, h3, h4, h5, h6 {
    /*color: var(--primary-light) !important;*/
}
a {
    color: black !important;
}

.centered {
    position: fixed; /* or absolute */
    top: 50%;
    left: 50%;
}

.wrapper, .error-view, .loading-spinner {
    display:none;
}

.wrapper.active, .loading-spinner.active  {
    display:block;
    width: 100%;
    height: 100%;
}

.error-view.active {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    z-index: 2;
}

.map {
    width: 100% !important;
    height: 100% !important;
}

#menu {
    position: absolute;
    top:0px;
    padding: 20px;
    padding-top: 100px;
    border-right: 1px solid white;
    bottom: auto;
    width: 420px;
    height: 100%;
    background-color: var(--primary-dark);
    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    z-index: 3;
}

.slide-in {
    animation: slide-in 0.5s forwards;
    -webkit-animation: slide-in 0.5s forwards;
}

.slide-out {
    animation: slide-out 0.5s forwards;
    -webkit-animation: slide-out 0.5s forwards;
}

@keyframes slide-in {
    100% { transform: translateX(0%); }
}

@-webkit-keyframes slide-in {
    100% { -webkit-transform: translateX(0%); }
}

@keyframes slide-out {
    0% { transform: translateX(0%); }
    100% { transform: translateX(-100%); }
}

@-webkit-keyframes slide-out {
    0% { -webkit-transform: translateX(0%); }
    100% { -webkit-transform: translateX(-100%); }
}

#menu ul {
    list-style-type: none !important;
    padding-left: 4px;
}
#menu li {
    line-height: 2em;
}
#menu img {
    margin-right: 6px;
}

.menu-icon {
    background: none;
    border-radius: 29px;
    /*box-shadow: rgb(0 0 0 / 15%) 0px 4px 12px 0px;*/
    display: block;
    height: 80px;
    margin: 0px 12px;
    overflow: visible;
    padding: 0px;
    position: fixed;
    top: 24px;
    bottom: auto;
    width: 80px;
    z-index: 2147483644;
    left: 4px;
    cursor:pointer;
}


@media screen and (max-width: 780px) {
    #menu {
        width: 100%;
        border-right: none;
    }
}