.map-container {
      position: relative;
      width: 100%;
      height: 450px;
      background: #e5e5e5;
      border-radius: 8px;
      overflow: hidden;
      margin: 2rem 0;
    }

    .map-overlay {
      position: absolute;
      inset: 0;
      background: rgba(0,0,0,0.68);
      color: white;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      text-align: center;
      padding: 2rem;
      backdrop-filter: blur(4px);
      transition: opacity 0.5s ease, visibility 0s 0.5s;
      z-index: 2;
    }

    .map-overlay.hidden {
      opacity: 0;
      visibility: hidden;
    }

    .map-overlay p {
      margin: 0 0 1.5rem 0;
      font-size: 1.1rem;
    }

    .map-overlay button {
      padding: 14px 36px;
      font-size: 1.1rem;
      background-color: #4285F4;
      color: white;
      border: none;
      border-radius: 6px;
      cursor: pointer;
      transition: background-color 0.2s;
    }

    .map-overlay button:hover {
      background-color: #3367d6;
    }

    .map-iframe {
      width: 100%;
      height: 100%;
      border: 0;
    }
