/**
 * fp-map.css
 * Part of SouthKorea theme — extracted from fp-map.php
 * @package SouthKorea
 */

.map-land { fill: #0d1830; stroke: #1a3060; stroke-width: 0.8; transition: fill 0.3s; }
                        .map-land:hover { fill: #12204a; }
                        @keyframes pinPulse { 0%,100% { r: 4; opacity: 0.8; } 50% { r: 7; opacity: 0.3; } }
                        @keyframes pinPulse2 { 0%,100% { r: 3; opacity: 0.6; } 50% { r: 6; opacity: 0.2; } }
                        .pin-ring { animation: pinPulse 2s ease-in-out infinite; }
                        .pin-ring2 { animation: pinPulse2 2.5s ease-in-out infinite; }
/* ── Map CTA ──────────────────────────────────────────────── */
.map-explore-cta { display: flex; align-items: center; gap: 20px; margin-top: 32px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.07); flex-wrap: wrap; }
.map-explore-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 24px; background: rgba(0,200,255,.1); border: 1px solid rgba(0,200,255,.3); color: #00c8ff; font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; text-decoration: none; font-family: 'DM Sans', sans-serif; transition: background .2s, border-color .2s; }
.map-explore-btn:hover { background: rgba(0,200,255,.18); border-color: rgba(0,200,255,.6); }
.map-explore-note { font-size: 11px; color: rgba(255,255,255,.3); font-family: 'DM Sans', sans-serif; letter-spacing: .5px; }

/* Responsive */
@media (max-width: 1024px) {
    #map { padding: 60px 24px !important; }
    #map > div { grid-template-columns: 1fr !important; gap: 40px !important; }
    .map-wrap { display: none; }
}
@media (max-width: 640px) {
    #map { padding: 48px 16px !important; }
    .city-item { gap: 14px; }
    .city-num { font-size: 28px; }
    .city-info h3 { font-size: 16px; }
    .map-explore-cta { flex-direction: column; align-items: flex-start; gap: 12px; }
}