.europe-map-hero{position:relative;width:100%;max-height:300px;overflow:hidden;border-radius:16px;background:var(--bg-card);border:1px solid var(--card-border);margin-bottom:1.5rem;cursor:pointer;transition:box-shadow .3s}.europe-map-hero:hover{box-shadow:var(--shadow-lg)}.europe-map-hero svg{display:block;width:100%;height:auto;max-height:300px}@keyframes pulse{0%,to{opacity:.75}50%{opacity:.92}}.europe-map-country{stroke:var(--bg-primary);stroke-width:.5;transition:opacity .3s}.europe-map-country--anim-0{animation:pulse 3s ease-in-out infinite;animation-delay:0s}.europe-map-country--anim-1{animation:pulse 3s ease-in-out infinite;animation-delay:.3s}.europe-map-country--anim-2{animation:pulse 3s ease-in-out infinite;animation-delay:.6s}.europe-map-cheapest{filter:drop-shadow(0 0 6px var(--accent-text));animation:none!important;opacity:1!important}.europe-map-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#00000059;pointer-events:none}[data-theme=light] .europe-map-overlay{background:#ffffff4d}.europe-map-title{font-size:1.3rem;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.5);margin-bottom:.5rem;text-align:center;padding:0 1rem}[data-theme=light] .europe-map-title{color:var(--text-primary);text-shadow:0 1px 4px rgba(255,255,255,.6)}.europe-map-cta{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem 1rem;background:var(--accent-text);color:#fff;border-radius:20px;font-size:.8rem;font-weight:600;pointer-events:auto}.europe-map-no-data{fill:var(--bg-secondary);opacity:.4;animation:none!important}@media(max-width:640px){.europe-map-hero{max-height:200px;border-radius:12px}.europe-map-hero svg{max-height:200px}.europe-map-title{font-size:1rem}.europe-map-cta{font-size:.7rem;padding:.3rem .8rem}}
