.map-container {
    margin: 10px 0 15px;
    position: relative;
}

.map-loader {
    height: 4px;
    width: 100%;
    position: absolute;
    z-index: 1;
    overflow: hidden;
    background-color: #ddd;
}

.map-loader:before {
    display: block;
    position: absolute;
    content: "";
    left: -200px;
    width: 200px;
    height: 4px;
    background-color: #2980b9;
    animation: loading 2s linear infinite;
}

@keyframes loading {
    from {
        left: -200px;
        width: 30%;
    }
    50% {
        width: 30%;
    }
    70% {
        width: 70%;
    }
    80% {
        left: 50%;
    }
    95% {
        left: 120%;
    }
    to {
        left: 100%;
    }
}
.map-infowindow-content h3 {
    margin-top: 0;
}
.map-infowindow-content h5 {
    font-size: 13px;
}
.map-infowindow-content img.map-image {
    max-width: 220px;
}
.map-infowindow-content .rating {
    display: inline-block;
}