/* ============================================================
   LOCATION — full-bleed grayscale Google map background
   Card stays on the left; brand pin pops in the negative space
   ============================================================ */
.loc--map {
  position: relative; overflow: hidden;
  background: #dde3e3;
  padding: clamp(54px, 7vw, 96px) clamp(20px, 4vw, 56px);
  min-height: clamp(460px, 52vw, 640px);
  display: flex; align-items: center;
}
.loc__bg {
  position: absolute; inset: 0; width: 100%; height: 100%; border: 0;
  filter: grayscale(1) contrast(1.05) brightness(1.05);
  pointer-events: none; z-index: 0;
}
/* soften the card side so the panel reads, leave the right map crisp */
.loc__scrim {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(90deg, rgba(255, 243, 222, .62) 0%, rgba(255, 243, 222, .18) 36%, rgba(255, 243, 222, 0) 58%);
}
/* brand pin in the negative space */
.loc__marker {
  position: absolute; z-index: 2; left: 50%; top: 50%;
  transform: translate(-50%, -100%);
  display: flex; flex-direction: column; align-items: center; pointer-events: none;
}
.loc__marker svg { width: clamp(48px, 5vw, 66px); height: auto; filter: drop-shadow(0 9px 12px rgba(44, 44, 44, .4)); }
.loc__marker .lbl {
  margin-bottom: 8px; font-family: var(--font-label); font-weight: 900; text-transform: uppercase;
  letter-spacing: .06em; font-size: .66rem; color: #fff; background: var(--pd-teal-dark);
  padding: 5px 13px; border-radius: var(--r-pill); box-shadow: var(--pd-shadow-sm); white-space: nowrap;
}
.loc--map .loc__inner {
  position: relative; z-index: 3; max-width: 1180px; margin: 0 auto; width: 100%;
  display: block;
}
.loc--map .loc__panel { width: clamp(320px, 42%, 450px); }

@media (max-width: 760px) {
  .loc__marker { left: 76%; top: 26%; }
  .loc__scrim { background: rgba(255, 243, 222, .4); }
  .loc--map .loc__panel { width: 100%; max-width: 480px; margin: 0 auto; }
}
