 #map {
      width: 100%;
      height: 400px;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 12px 32px rgba(0,0,0,.25);
    }
    .leaflet-container img,
    .leaflet-container .leaflet-marker-icon,
    .leaflet-container .leaflet-marker-shadow { max-width: none !important; }

    .country-card {
      background: rgba(255,255,255,0.03);
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: 16px;
      padding: 1rem 1rem .25rem;
    }
    .country-title { color:#fff; margin:0 0 .25rem; font-weight:700; }
    .country-sub { color:#adb5bd; margin:0 0 .75rem; font-size:.95rem; }

    .place-item {
      cursor: pointer;
      border-radius: 10px;
      padding: .6rem .65rem !important;
      border: 0; background: transparent;
    }
    .place-item:hover, .place-item:focus { background: rgba(255,255,255,.06); outline: none; }
    .place-row { display:flex; align-items:flex-start; }
    .place-name { color:#d8e0ff; font-weight:600; line-height:1.2; }
    .place-desc { color:#97a0aa; font-size:.92rem; margin-left:1.65rem; }

    @media (max-width: 992px){ #map{ height:45vh; } }
    @media (max-width: 576px){ #map{ height:320px; } }