/* Text and controls remain usable independently of third-party map tiles. */
.pickup-location {
  --pickup-bg:#f4f7fa; --pickup-ink:#172b42; --pickup-border:#8292a4;
  display:flex; flex-wrap:wrap; gap:1.5rem; margin:1.2rem 0; padding:1.25rem;
  border:1px solid var(--pickup-border); border-radius:14px;
  background:var(--pickup-bg); color:var(--pickup-ink); text-align:left;
  box-sizing:border-box; overflow-wrap:anywhere;
}
html:not(.light) .pickup-location {
  --pickup-bg:#162333; --pickup-ink:#f3f6fa; --pickup-border:#99adc4;
}
.pickup-location .pickup-location-copy { flex:1 1 16rem; min-width:0; }
.pickup-location .pickup-location-map { flex:1 1 20rem; min-width:0; }
.pickup-location h2 { color:inherit; font-size:1.3rem; margin:0 0 .8rem; }
.pickup-location p { color:inherit; font-size:.95rem; line-height:1.55; margin:.5rem 0 .9rem; }
.pickup-location p.pickup-location-eyebrow { font-size:.72rem; font-weight:800; letter-spacing:.1em; margin:0 0 .4rem; }
.pickup-location .pickup-location-arrival { border-left:3px solid currentColor; padding-left:.8rem; margin:1rem 0; }
.pickup-location a.pickup-location-directions, .pickup-location a.pickup-location-directions:visited,
.pickup-location a.pickup-location-directions:hover, .pickup-location a.pickup-location-directions:active,
.pickup-location button {
  display:inline-flex; justify-content:center; align-items:center; gap:.45rem;
  min-height:44px; box-sizing:border-box; padding:.65rem 1rem;
  border:2px solid var(--pickup-ink); border-radius:8px;
  color:var(--pickup-ink); background:var(--pickup-bg); font:inherit; font-weight:750;
  text-decoration:underline; text-underline-offset:.2em; cursor:pointer;
}
.pickup-location button[hidden], .pickup-location [data-map-container][hidden] { display:none; }
.pickup-location :focus-visible { outline:3px solid var(--pickup-ink); outline-offset:4px; }
.pickup-location iframe { width:100%; height:280px; border:1px solid var(--pickup-border); border-radius:8px; background:white; box-sizing:border-box; }
.pickup-location p.pickup-location-map-help { font-size:.8rem; }
.pickup-location-sr { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media(max-width:560px) { .pickup-location { gap:.7rem; padding:1rem; } }
@media print { .pickup-location-map { display:none; } }
