/* =============================================================
   BASECAMP BEND — MAP / CONTACT SECTION
   Uses venue photo (not iframe) matching the preview exactly
   ============================================================= */

.map-section {
  overflow: clip;
  background: var(--bg-deep);
  padding: 5rem 2rem;
}

.map-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  border: 1px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
}

/* Left — Google Maps iframe */
.map-embed-col {
  position: relative;
  overflow: hidden;
  background: var(--bg-card);
  min-height: 420px;
}

.map-frame {
  width: 100%;
  height: 100%;
  min-height: 420px;
  border: none;
  display: block;
  /* Dark-mode filter: desaturate + invert + hue-shift to match the green theme */
  filter: grayscale(0.3) invert(0.92) hue-rotate(155deg) brightness(0.72) contrast(0.9);
  opacity: 0.9;
}

/* Right — contact details */
.map-details {
  background: var(--bg-card);
  padding: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2rem;
}

.map-details h2 {
  font-family: var(--font-display);
  font-size: 3rem;
  color: var(--cream);
  letter-spacing: 0.04em;
  line-height: 1;
}

.info-item {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

.info-icon {
  font-size: 1.2rem;
  opacity: 0.8;
  flex-shrink: 0;
  margin-top: 0.1rem;
}

.info-label {
  font-family: var(--font-mono);
  font-size: 0.68rem;
  color: var(--amber);
  letter-spacing: 0.15em;
  text-transform: uppercase;
  margin-bottom: 0.25rem;
  display: block;
}

.info-value {
  color: var(--cream-dim);
  font-size: 0.92rem;
  line-height: 1.5;
}

.info-value a {
  color: var(--cream-dim);
  text-decoration: none;
  transition: color 0.2s ease;
}

.info-value a:hover { color: var(--amber); }

/* ----- Responsive ----- */
@media (max-width: 860px) {
  .map-inner { grid-template-columns: 1fr; }
  .map-embed-col { min-height: 300px; }
  .map-frame { min-height: 300px; }
  .map-details { padding: 2.5rem 2rem; }
}
