        .subtitle {
           /* text-align: center;*/
            color: #7f8c8d;
            margin-bottom: 2rem;
            font-size: 1.2rem;
        }

        .map-controls {
            background: white;
            padding: 1.5rem;
            border-radius: 8px;
            margin-bottom: 1.5rem;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
        }

        .filter-buttons {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin-bottom: 1rem;
        }

        .filter-btn {
            padding: 0.5rem 1rem;
            border: 2px solid #ddd;
            background: white;
            border-radius: 20px;
            cursor: pointer;
            transition: all 0.3s;
            font-size: 0.9rem;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .filter-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }

        .filter-btn.active {
            background: #3498db;
            color: white;
            border-color: #3498db;
        }

        .filter-btn.green { border-color: #27ae60; }
        .filter-btn.green.active { background: #27ae60; border-color: #27ae60; }

        .filter-btn.yellow { border-color: #f39c12; }
        .filter-btn.yellow.active { background: #f39c12; border-color: #f39c12; }

        .filter-btn.orange { border-color: #e67e22; }
        .filter-btn.orange.active { background: #e67e22; border-color: #e67e22; }

        .filter-btn.red { border-color: #e74c3c; }
        .filter-btn.red.active { background: #e74c3c; border-color: #e74c3c; }

        .filter-btn.blue { border-color: #3498db; }
        .filter-btn.blue.active { background: #3498db; border-color: #3498db; }

        .search-box {
            width: 100%;
            padding: 0.75rem 1rem;
            border: 2px solid #ddd;
            border-radius: 8px;
            font-size: 1rem;
        }

        .search-box:focus {
            outline: none;
            border-color: #3498db;
        }

        #map {
            width: 100%;
            height: 600px;
            border-radius: 8px;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        }

        .legend {
            background: white;
            padding: 1.5rem;
            border-radius: 8px;
            margin-top: 1.5rem;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
        }

        .legend h3 {
            margin-bottom: 1rem;
            color: #2c3e50;
        }

        .legend-items {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 0.75rem;
        }

        .legend-item {
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .legend-color {
            width: 20px;
            height: 20px;
            border-radius: 50%;
            flex-shrink: 0;
        }

        .legend-color.green { background: #27ae60; }
        .legend-color.yellow { background: #f39c12; }
        .legend-color.orange { background: #e67e22; }
        .legend-color.red { background: #e74c3c; }
        .legend-color.blue { background: #3498db; }

        .cta-section {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 3rem 2rem;
            border-radius: 8px;
            text-align: center;
            margin-top: 2rem;
        }

        .cta-section h2 {
            font-size: 2rem;
            margin-bottom: 1rem;
        }

        .cta-section p {
            font-size: 1.2rem;
            margin-bottom: 1.5rem;
            opacity: 0.9;
        }

        .cta-btn {
            display: inline-block;
            padding: 1rem 2rem;
            background: white;
            color: #667eea;
            text-decoration: none;
            border-radius: 30px;
            font-weight: bold;
            font-size: 1.1rem;
            transition: all 0.3s;
        }

        .cta-btn:hover {
            transform: translateY(-3px);
            box-shadow: 0 8px 16px rgba(0,0,0,0.2);
        }

        @media (max-width: 768px) {
            h1 {
                font-size: 1.8rem;
            }

            .subtitle {
                font-size: 1rem;
            }

            #map {
                height: 400px;
            }

            .filter-buttons {
                justify-content: center;
            }

            .legend-items {
                grid-template-columns: 1fr;
            }

            .cta-section h2 {
                font-size: 1.5rem;
            }

            .cta-section p {
                font-size: 1rem;
            }
        }