/* ==========================================================================
   Venue Page — Map placeholder, gallery, info cards
   ========================================================================== */

.venue-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-8);
  align-items: start;
}

.venue-map-placeholder {
  width: 100%;
  height: 400px;
  background: linear-gradient(135deg, var(--color-light-grey), var(--color-border));
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-mid-grey);
  font-size: var(--fs-lg);
  overflow: hidden;
}

.venue-map-placeholder iframe {
  width: 100%;
  height: 100%;
  border: none;
}

/* ── Transport cards ── */
.transport-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: var(--space-6);
}

.transport-card {
  padding: var(--space-6);
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  border-top: 3px solid var(--color-accent-green);
}

.transport-card h4 {
  margin-bottom: var(--space-3);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.transport-card p {
  font-size: var(--fs-sm);
  color: var(--color-dark-grey);
}

/* ── Auckland gallery placeholder ── */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
}

.gallery-item {
  height: 200px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.5);
  font-size: var(--fs-sm);
  overflow: hidden;
  transition: transform var(--transition-base);
}

.gallery-item:hover {
  transform: scale(1.02);
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ── Landmarks ── */
.landmarks-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: var(--space-6);
}

.landmark-card {
  text-align: center;
  padding: var(--space-6);
}

.landmark-icon {
  font-size: 2.5rem;
  margin-bottom: var(--space-3);
}

.landmark-card h4 {
  font-size: var(--fs-base);
  margin-bottom: var(--space-2);
}

.landmark-card p {
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
}

@media (max-width: 768px) {
  .venue-info-grid {
    grid-template-columns: 1fr;
  }
  .gallery-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 480px) {
  .gallery-grid {
    grid-template-columns: 1fr;
  }
  .venue-map-placeholder {
    height: 280px;
  }
  .gallery-item {
    height: 160px;
  }
}
