*, *:before, *:after {
    margin: 0;
    padding: 0;
    box-sizing: inherit
}

html {
    font-family: 'Open Sans', sans-serif;
    font-display: swap;
    box-sizing: border-box
}

body {
    font-size: 1.6rem;
    background-color: black;
    color: black;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.container {
    /*height: 100vh;*/
    /*overflow: hidden*/
}

pinch-zoom {
    /*height: 100%*/
}

.button {
    background-color: #323639;
    font-size: 22px;
    min-height: 45px;
    min-width: 45px;
    display: flex;
    border-radius: 5px;
    color: white;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.25s ease-in-out
}


.button-container {
    position: fixed;
    bottom: 40px;
    left: 40px;
    z-index: 4
}

.button:hover {
    color: red
}

.map.smooth {
    transition: transform 0.25s ease-in-out
}

.map .st0 {
    fill: #fcf5d9;
    stroke: #1d1d1b;
    stroke-width: 0.5;
    stroke-miterlimit: 10;
    opacity: 1;
    transition: all 0.25s ease-in-out;
    cursor: pointer
}

.map .st0.off {
    opacity: 0;
}

text {
    pointer-events: none; /* Let clicks pass through the text */
    user-select: none;    /* Optional: prevent accidental text selection */
}

text.off {
    opacity: 0;
}