.global-mapcoverage.theme-white {
  background: var(--nv-white);
}
.global-mapcoverage.theme-blue {
  background: var(--nv-blue);
}

.mapcoverage-header {
  text-align: center;
  margin-bottom: var(--space-lg);
}
.global-mapcoverage.theme-white .mapcoverage-header h2 {
  color: var(--nv-blue);
}
.global-mapcoverage.theme-white .mapcoverage-header p {
  color: var(--text-color);
}
.global-mapcoverage.theme-blue .mapcoverage-header h2,
.global-mapcoverage.theme-blue .mapcoverage-header p {
  color: var(--nv-white);
}

.mapcoverage-layout {
  display: grid;
  grid-template-columns: 30% 70%;
  gap: var(--space-lg);
  align-items: stretch;
}
.mapcoverage-list,
.mapcoverage-side {
  align-self: stretch;
}

.mapcoverage-list {
  display: grid;
  gap: var(--space-sm);
  height: 100%;
}

.mapcoverage-card {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: var(--space-xs);
  text-align: left;
  border-radius: var(--border-radius-lg);
  padding: var(--space-md);
  border: none;
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
  background: var(--nv-blue-light);
  color: var(--nv-white);
}
.mapcoverage-card .card-title {
  text-align: center;
  color: var(--nv-white);
}
.mapcoverage-card p {
  color: var(--nv-white);
}
.mapcoverage-card.is-active {
  background: var(--nv-blue);
  transform: scale(1.01);
}

.card-row {
  margin: 0;
}
.card-call {
  margin-top: var(--space-sm);
  width: 100%;
  text-align: center;
}

.mapcoverage-side {
  display: grid;
  grid-template-rows: 1fr auto;
  gap: var(--space-md);
}

.mapcoverage-map {
  position: relative;
  height: 100%;
  overflow: hidden;
}
.mapcoverage-map iframe {
  width: 100%;
  height: 100%;
  min-height: 600px;
  border: 0;
  border-radius: var(--border-radius-md);
  display: block;
  opacity: 1;
  transition: opacity 0.12s ease;
}
.mapcoverage-map iframe.is-fading {
  opacity: 0;
}

.mapcoverage-mobile-details {
  display: none;
  gap: var(--space-xs);
  padding: var(--space-md);
  border-radius: var(--border-radius-lg);
  background: var(--nv-blue);
  color: var(--nv-white);
}
.mapcoverage-mobile-details h3,
.mapcoverage-mobile-details p {
  color: var(--nv-white);
}
.mapcoverage-mobile-details .card-call {
  width: 100%;
}

.mapcoverage-tabs {
  display: none;
  gap: var(--space-sm);
  justify-content: center;
  flex-wrap: wrap;
}
.mapcoverage-tab {
  padding: 10px 18px;
  border-radius: var(--border-radius-md);
  border: 1px solid var(--nv-blue-light);
  background: var(--nv-blue-light);
  color: var(--nv-white);
  font-weight: 700;
}
.mapcoverage-tab.is-active {
  background: var(--nv-blue);
  color: var(--nv-white);
  border-color: var(--nv-blue);
}

@media (max-width: 992px) {
  .mapcoverage-layout {
    grid-template-columns: 1fr;
  }
  .mapcoverage-list {
    display: none;
  }
  .mapcoverage-side {
    grid-template-rows: auto auto auto;
  }
  .mapcoverage-map iframe {
    min-height: 300px;
    max-height: 300px;
  }
  .mapcoverage-mobile-details {
    display: grid;
  }
  .mapcoverage-tabs {
    display: flex;
  }
}
