#map {
    height: 720px;
    width: 100%;
    border-radius: 40px;
}

.city-filter-container {
    display: flex;
    margin-top: 40px;
    gap: 40px;
}
#city-letters {
    flex: 0 0 80px;
    display: flex;
    flex-direction: column;
}
#city-letters button {
    text-align: center;
    font-family: "DM Sans", Sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    border: none;
    background: none;
    color: #2C2929;
}
#city-letters button.active-letter,
#city-letters button:hover {
    color: #207D20;
}
#city-points {
    flex: 1;
}
#city-points ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    justify-content: flex-start;
}
#city-points ul li {
    border: 1px solid #082A58;
    border-radius: 16px;
    padding: 12px 16px;
}
#city-points ul li span {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 8px;
    color: #2C2929;
    font-family: "Montserrat", Sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}
#city-points ul li:hover {
    border: 1px solid #082A58;
    background: #082A58;
    cursor: pointer;
}
#city-points ul li:hover span {
    color: #fff;
}
#city-points ul li:hover svg path {
    fill: #fff;
}
.no-found {
    color: #082A58;
    font-family: "Montserrat", Sans-serif;
    font-size: 25px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    text-align: center;
}
.gm-style .gm-style-iw-c {
    border-radius: 0;
    padding: 8px;
    box-shadow: none;
    display: none;
}
.gm-style-iw-tc {
    display: none;
}
.popup-info-title {
    color: #2C2929;
    font-family: "Montserrat", Sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px; /* 150% */
}
.popup-info-description {
    color: #2C2929;
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
}
.popup-direction {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 40px;
    height: 40px;
}
.popup-direction a {
    border: 1px solid #185E18;
    width: 40px;
    height: 40px;
    display: block;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M13.59 15.59L15 17L19 13L15 9L13.59 10.41L15.17 12C13.66 11.67 11.44 12.08 10 13.36V6.83L11.59 8.42L13 7L9 3L5 7L6.41 8.41L8 6.83V21H10V17C10.73 14.42 13.07 13.53 15.17 14L13.59 15.59Z' fill='%23185E18'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
}
.gm-style-iw-ch {
    display: none;
}
.place-popup {
    display: flex;
    gap: 8px;
    padding: 8px 0 0 4px;
    min-width: 303px;
    position: relative;
}
.popup-info {
    max-width: 240px;
}
.gm-style-iw-chr {
    position: absolute;
    right: 0;
    top: 0;
    display: none;
}

@media only screen and (max-width: 600px) {
    body {
        .city-filter-container {
            margin-top: 24px;
            gap: 20px;
        }
        #city-letters {
            flex: 0 0 50px;
            display: flex;
            flex-direction: column;
        }
    }
    #map {
        height: 250px;
        border-radius: 16px;
    }
    .popup-info {
        max-width: 210px;
    }
    .place-popup {
        min-width: 285px;
    }
    #city-points ul li {
        padding: 12px;
    }
    #city-points {
        max-height: 650px;
        overflow: auto;
    }
}
