.map-container {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 72vh;
            width: 100%;
        }

        .map {
            position: relative;
            width: 100%;
            max-width: 1000px;
            height: auto;
            aspect-ratio: 770 / 383; /* Maintains original SVG proportions */
        }

        .map-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: contain;
        }

        .map-dots {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        @keyframes dot-blink {
            from {
                transform: scale(0);
                opacity: 1;
            }
            to {
                transform: scale(2);
                opacity: 0;
            }
        }

        .dot {
            transform-origin: center;
            animation: dot-blink 1s linear infinite;
        }

        /* Individual dot timing variations */
        .dot:nth-child(1) { animation: dot-blink 2s linear infinite; }
        .dot:nth-child(3) { animation: dot-blink 3s linear infinite; }
        .dot:nth-child(5) { animation: dot-blink 1.5s linear infinite; }
        .dot:nth-child(7) { animation: dot-blink 4s linear infinite; }
        .dot:nth-child(9) { animation: dot-blink 2.5s linear infinite; }
        .dot:nth-child(11) { animation: dot-blink 3.5s linear infinite; }
        .dot:nth-child(13) { animation: dot-blink 1.8s linear infinite; }
        .dot:nth-child(15) { animation: dot-blink 2.2s linear infinite; }
        .dot:nth-child(17) { animation: dot-blink 3.2s linear infinite; }
        .dot:nth-child(19) { animation: dot-blink 2.8s linear infinite; }
        .dot:nth-child(21) { animation: dot-blink 4.5s linear infinite; }
        .dot:nth-child(23) { animation: dot-blink 1.7s linear infinite; }
        .dot:nth-child(25) { animation: dot-blink 3.8s linear infinite; }
        .dot:nth-child(27) { animation: dot-blink 2.3s linear infinite; }
        .dot:nth-child(29) { animation: dot-blink 4.2s linear infinite; }

        /* Responsive breakpoints */
        @media (max-width: 1200px) {
            .map {
                max-width: 90%;
            }
            .map-container{
                 min-height: 42vh;
                margin-top: -2rem;
            }
        }

        @media (max-width: 768px) {
            .map-container {
                padding: 10px;
                min-height: 47vh;
                margin-top: -2rem;
            }
            
            .map {
                max-width: 95%;
            }
        }

        @media (max-width: 480px) {
            .map-container {
                padding: 5px;
                min-height: 40vh;
                margin-top: -3.5rem;
            }
            
            .map {
                max-width: 100%;
            }
        }

        /* For very small screens */
        @media (max-width: 320px) {
            .map-container {
                min-height: 35vh;
            }
        }