/* Stash House 0.4.2 - approved artwork, map-only styles.
   New class names deliberately bypass the old .map-source / .map-scrub
   rules. Do not add a filter or independently positioned marker here. */
.contact-map {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  border: 1px solid #292e2e;
  border-radius: 0;
  background: #222829;
  color: #fff;
  text-decoration: none;
  isolation: isolate;
  filter: none;
  opacity: 1;
  transform: none;
}
.contact-map__picture,
.contact-map__image {
  display: block;
  width: 100%;
}
.contact-map__image {
  height: auto;
  aspect-ratio: 2108 / 549;
  object-fit: contain;
  filter: none;
  opacity: 1;
  transform: none;
  transition: none;
}
.contact-map:hover .contact-map__image,
.contact-map:focus-visible .contact-map__image {
  filter: none;
  opacity: 1;
  transform: none;
}
.contact-map:focus-visible {
  outline: 2px solid var(--green, #0c6532);
  outline-offset: 4px;
}
/* The desktop artwork already includes its Google Maps cue. The mobile
   crop excludes that corner, so provide live text on phones instead. */
.contact-map__mobile-hint { display: none; }
@media (max-width: 640px) {
  .contact-map__image { aspect-ratio: 660 / 396; }
  .contact-map__mobile-hint {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    min-height: 44px;
    padding: 10px 12px;
    border-top: 1px solid #626969;
    background: #151919;
    color: #fff;
    font-family: var(--mono, monospace);
    font-size: 10px;
    line-height: 1.4;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .contact-map__mobile-hint svg {
    width: 13px;
    height: 13px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
}
