/* The address and directions remain useful when a map is hidden or unavailable. */
.pickup-location {
  --pickup-bg:#fff; --pickup-ink:#172b42; --pickup-border:#93a1b1;
  --pickup-action:#172b42; --pickup-action-ink:#fff;
  margin:1rem 0; padding:1rem; border:1px solid var(--pickup-border); border-radius:12px;
  background:var(--pickup-bg); color:var(--pickup-ink); text-align:left;
  box-sizing:border-box; overflow-wrap:anywhere; min-width:0;
}
html:not(.light) .pickup-location {
  --pickup-bg:#162333; --pickup-ink:#f3f6fa; --pickup-border:#99adc4;
  --pickup-action:#f3f6fa; --pickup-action-ink:#172b42;
}
.pickup-location-with-map { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1.25rem; align-items:start; }
.pickup-location .pickup-location-copy { min-width:0; }
.pickup-location h2 { color:inherit; font-size:1.1rem; line-height:1.3; margin:0 0 .65rem; }
.pickup-location p { color:inherit; font-size:.9rem; line-height:1.5; margin:0 0 .65rem; }
.pickup-location .pickup-location-map { margin:0; min-width:0; }
.pickup-location iframe { display:block; width:100%; height:220px; border:1px solid var(--pickup-border); border-radius:8px; background:#fff; box-sizing:border-box; }
.pickup-location figcaption { color:inherit; font-size:.78rem; line-height:1.4; margin-top:.35rem; }
.pickup-location .pickup-location-arrival { margin:.2rem 0 .65rem; border-top:1px solid var(--pickup-border); border-bottom:1px solid var(--pickup-border); }
.pickup-location .pickup-location-arrival summary { box-sizing:border-box; min-height:44px; padding:.65rem 0; font-size:.88rem; font-weight:650; color:inherit; cursor:pointer; }
.pickup-location .pickup-location-arrival p { padding:0 .15rem .2rem; }
.pickup-location-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; }
.pickup-location a.pickup-location-street-view, .pickup-location a.pickup-location-street-view:visited,
.pickup-location a.pickup-location-street-view:hover, .pickup-location a.pickup-location-street-view:active {
  display:inline-flex; justify-content:center; align-items:center; gap:.45rem;
  min-height:44px; box-sizing:border-box; padding:.6rem .9rem; max-width:100%;
  border:2px solid var(--pickup-ink); border-radius:7px;
  color:var(--pickup-ink); background:var(--pickup-bg); font-size:.9rem; line-height:1.3; font-weight:750;
  text-decoration:none;
}
.pickup-location a.pickup-location-street-view:hover { text-decoration:underline; text-underline-offset:.2em; }
.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 {
  display:inline-flex; justify-content:center; align-items:center; gap:.45rem;
  min-height:44px; box-sizing:border-box; padding:.6rem .9rem; max-width:100%;
  border:2px solid var(--pickup-action); border-radius:7px;
  color:var(--pickup-action-ink); background:var(--pickup-action); font-size:.9rem; line-height:1.3; font-weight:750;
  text-decoration:none; cursor:pointer;
}
.pickup-location a.pickup-location-directions:hover { text-decoration:underline; text-underline-offset:.2em; }
.pickup-location :focus-visible { outline:3px solid var(--pickup-ink); outline-offset:3px; }
.pickup-location p.pickup-location-map-status { font-size:.8rem; margin:.4rem 0 0; }
.pickup-location [hidden] { display:none; }
.pickup-location-sr { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.pickup-location:not(.pickup-location-with-map) .pickup-location-copy { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1.25rem; }
.pickup-location:not(.pickup-location-with-map) h2 { flex-basis:100%; margin-bottom:.1rem; }
.pickup-location:not(.pickup-location-with-map) .pickup-location-address,
.pickup-location:not(.pickup-location-with-map) .pickup-location-hours { flex:1 1 14rem; margin:0; }
.pickup-location:not(.pickup-location-with-map) .pickup-location-arrival { flex:1 1 14rem; margin:0; }
@media(max-width:640px) {
  .pickup-location { padding:.8rem; }
  .pickup-location-with-map { grid-template-columns:minmax(0,1fr); gap:.85rem; }
  .pickup-location iframe { height:210px; }
  .pickup-location .pickup-location-directions, .pickup-location .pickup-location-street-view { width:100%; }
}
@media print {
  .pickup-location-with-map { display:block; }
  .pickup-location .pickup-location-map { display:none; }
}

/* Location information is a separate destination; the auction floor stays compact. */
.pickup-information-page { background:#fff; color:#172b42; padding:1.5rem 1rem 3rem; }
.pickup-information-inner { max-width:1120px; margin:0 auto; }
.pickup-information-heading { margin:1.5rem 0 1rem; }
.pickup-information-heading h1 { color:inherit; font-size:clamp(1.8rem,4vw,2.5rem); line-height:1.15; margin:.35rem 0; }
.pickup-information-heading p { color:inherit; margin:.35rem 0; }
.pickup-information-page a, .pickup-information-page a:visited,
.pickup-information-page a:hover, .pickup-information-page a:active { color:#172b42; text-decoration:underline; text-underline-offset:.2em; }
.pickup-company-nav { display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; align-items:center; }
.pickup-company-nav a, .pickup-company-nav a:visited,
.pickup-company-nav a:hover, .pickup-company-nav a:active,
.pickup-floor-link a, .pickup-floor-link a:visited,
.pickup-floor-link a:hover, .pickup-floor-link a:active {
  display:inline-flex; align-items:center; min-height:44px; color:#172b42;
  background:#fff; padding:.35rem .6rem; font-size:.9rem; font-weight:650;
  text-decoration:underline; text-underline-offset:.25em; border-radius:4px;
}
.pickup-company-nav a[aria-current="page"] { border-bottom:3px solid currentColor; font-weight:800; text-decoration:none; }
.house-pickup-nav { max-width:1200px; margin:0 auto; padding:0 clamp(1rem,4vw,2rem) .45rem; }
.pickup-floor-link { margin:.75rem 0; }
.pickup-information-contact, .pickup-information-return { margin:1.25rem 0; }
.pickup-company-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:1rem; list-style:none; padding:0; margin:1.5rem 0; }
.pickup-company-list li { padding:1rem; border:1px solid #93a1b1; border-radius:8px; }
.pickup-company-list h2 { color:inherit; font-size:1.15rem; margin:0 0 .5rem; }
.pickup-company-list p { margin:0 0 .5rem; }
.pickup-information-page :focus-visible, .pickup-company-nav :focus-visible,
.pickup-floor-link :focus-visible { outline:3px solid #172b42; outline-offset:3px; }
html:not(.light) .pickup-information-page { background:#162333; color:#f3f6fa; }
html:not(.light) .pickup-information-page a, html:not(.light) .pickup-information-page a:visited,
html:not(.light) .pickup-information-page a:hover, html:not(.light) .pickup-information-page a:active,
html:not(.light) .pickup-company-nav a, html:not(.light) .pickup-floor-link a { color:#f3f6fa; background:#162333; }
html:not(.light) .pickup-information-page :focus-visible,
html:not(.light) .pickup-company-nav :focus-visible,
html:not(.light) .pickup-floor-link :focus-visible { outline-color:#f3f6fa; }

.pickup-information-title { display:flex; align-items:center; justify-content:space-between; gap:.65rem; }
.pickup-information-title h1 { min-width:0; }
.pickup-information-title .theme-toggle { flex:none; }
@media(max-width:640px) {
  html.calm .pickup-information-title button.theme-toggle { width:44px; min-width:44px; height:44px; padding:0; justify-content:center; }
  .pickup-information-title .theme-toggle [data-theme-label] { display:none; }
}
