/* A clearer first visit, using the same paving and moss. */
html body.grid-site.street-site { --sans: Arial, Helvetica, sans-serif; }
html body.grid-site.street-site :is(p, li, dd, label, input, select, button) { line-height: 1.5; }
html body.grid-site.street-site .home-finder h1 { margin-bottom: .5rem; }
html body.grid-site.street-site .home-purpose { margin: 0 auto 1.25rem; max-width: 32rem; padding: 0; font-size: 1rem; }
html body.grid-site.street-site .home-about p + p { margin-top: .65rem; }

/* Group headings are labels, not another layer of navigation. */
html body.grid-site.street-site .page-menu nav { width: 32rem; max-width: calc(100vw - 3rem); max-height: min(40rem, calc(100dvh - 11rem)); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem 1rem; }
html body.grid-site.street-site .browse-group { display: grid; align-content: start; }
html.street-page body.grid-site.street-site .browse-group-title { font: 900 .85rem/1.4 var(--sans); color: var(--ink); -webkit-text-stroke: .2px currentColor; margin: .35rem .5rem; padding: 0; border: 0 !important; background: none; }
html.street-page body.grid-site.street-site .page-menu nav a { display: flex; align-items: center; justify-content: flex-start; min-height: 44px; border: 0 !important; border-image: none !important; background: transparent; box-shadow: none; padding: .5rem; text-align: left; font-size: .9375rem; line-height: 1.35; }
html body.grid-site.street-site .page-menu nav a:is(:hover,[aria-current=page]) { background: var(--accent); }
html body.grid-site.street-site .access-section-menu .access-jumps { display: grid; grid-template-columns: 1fr; gap: .5rem; }
html body.grid-site.street-site .access-menu-group { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .25rem; }
html body.grid-site.street-site .access-menu-group .browse-group-title { grid-column: 1 / -1; text-align: left; margin-top: .65rem; }
html.street-page body.grid-site.street-site .access-menu-group a { background: var(--panel); box-shadow: none; text-decoration: none; padding: .5rem; }

/* Results follow the completed search immediately. */
html body.grid-site.street-site .explore-page { display: block; }
html body.grid-site.street-site .explore-page .page-heading { padding: .75rem 1rem; margin-bottom: .75rem; }
html body.grid-site.street-site .explore-page .page-heading h1 { font-size: clamp(1.75rem, 4vw, 2.25rem); margin: 0; }
html body.grid-site.street-site .explore-page .page-heading p { margin: .25rem 0 0; }
html body.grid-site.street-site #explore-search { margin: 0 0 .75rem; padding: .5rem .75rem; }
html.street-page body.grid-site.street-site #explore-search > summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: var(--panel); box-shadow: none; min-height: 44px; padding: .5rem .75rem; }
html body.grid-site.street-site #explore-search > summary::before { display: none; }
#explore-summary { font-size: .95rem; line-height: 1.5; }
.search-summary-action { flex: 0 0 auto; font-size: .9rem; text-decoration: underline; }
#explore-search[open] .search-summary-action { display: none; }
html.street-page body.grid-site.street-site #explore-search :is(.explore-form,.availability-tools,.location-info) { border: 0 !important; border-image: none !important; background: transparent; box-shadow: none; padding: .5rem 0; margin: 0; }
html body.grid-site.street-site #explore-search .location-info p { font-size: .875rem; }
html body.grid-site.street-site #explore-search #explore-status { margin: .25rem 0; padding: 0; }
#station-choices:empty, #explore-action-status:empty { display: none; }
html body.grid-site.street-site .explore-page .section-heading { margin: .75rem 0 .5rem; gap: .5rem; align-items: center; padding: .5rem .75rem; border: 8px solid var(--stone-edge); border-image: var(--stone-border) 8 stretch; background: var(--panel); background-clip: padding-box; }
html.street-page body.grid-site.street-site .explore-page .section-heading h2 { border: 0 !important; border-image: none !important; padding: 0; margin: 0; background: none; font-size: 1.25rem; }
html.street-page body.grid-site.street-site #explore-order { margin: 0 0 .75rem; padding: .35rem .75rem; font-size: .875rem; background: var(--panel); background-clip: padding-box; border: 4px solid var(--stone-edge); border-image: var(--stone-border) 8 stretch; }
html body.grid-site.street-site .explore-page #saved-picker { margin-top: 1rem; }

/* Keep offer, name and photograph together without a tall credit column. */
html body.grid-site.street-site :is(.explore-card,.place-card) { padding: .9rem; }
html body.grid-site.street-site :is(.explore-card,.place-card) .venue-heading { align-items: start; gap: .75rem; grid-template-columns: minmax(0, 1fr) 5.5rem; }
html body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo { width: 5.5rem; }
html body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo img { height: 4.25rem; width: 5.5rem; object-fit: contain; }
html body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo figcaption { font-size: .625rem; line-height: 1.35; }
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo figcaption a { display: inline; min-height: 0; padding: 0; border: 0 !important; border-image: none !important; background: none; box-shadow: none; }
html body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo-date { font-size: .625rem; }
html body.grid-site.street-site :is(.explore-card,.place-card) .listing-heading { display: block; margin-top: .5rem; }
html body.grid-site.street-site :is(.explore-card,.place-card) .listing-heading :is(h2,h3) { margin: 0; font-size: 1.2rem; line-height: 1.3; }
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) .listing-heading a { display: inline; padding: 0; border: 0 !important; border-image: none !important; box-shadow: none; background: none; }
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) :is(.price-row,.result-price) { padding: 0; border: 0 !important; border-image: none !important; background: none; margin: 0; }
html body.grid-site.street-site .place-card .price-row { display: flex; flex-direction: column; align-items: start; gap: .35rem; }
/* The old horizontal order basis becomes 160px of empty height in a column. */
html body.grid-site.street-site .place-card .price-row .order { flex: 0 1 auto; }
html body.grid-site.street-site :is(.explore-card,.place-card) :is(.price,.result-price) { font: 700 1.5rem/1.2 var(--sans); color: var(--accent-ink); }
html body.grid-site.street-site :is(.explore-card,.place-card) :is(.result-order,.order) { font: 400 1rem/1.5 var(--sans); margin: .4rem 0 0; }
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) :is(.card-deck,.catch,.distance-label,.today-hours) { margin: .5rem 0; padding: 0; border: 0 !important; background: none; }
html body.grid-site.street-site :is(.explore-card,.place-card) .today-hours { font-size: .875rem; font-weight: 600; }
html body.grid-site.street-site :is(.explore-card,.place-card) .source-date { font-size: .8125rem; margin: .5rem 0; }
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) :is(.hours-details,.listing-accessibility,.card-more,.card-directions) { padding: 0; margin: 0; border: 0 !important; background: transparent; }
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) :is(.hours-details,.listing-accessibility,.card-more,.card-directions) > summary { width: fit-content; max-width: 100%; padding: .5rem .25rem; border: 0 !important; border-image: none !important; box-shadow: none; background: transparent; min-height: 44px; font: 600 .875rem/1.5 var(--sans); }
html body.grid-site.street-site :is(.explore-card,.place-card) :is(.hours-details,.listing-accessibility,.card-more) { margin-top: .5rem; }
html body.grid-site.street-site :is(.explore-card,.place-card) .row-actions { padding-top: .5rem; gap: .5rem 1rem; align-items: center; }
html body.grid-site.street-site .place-card .card-bottom { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
html body.grid-site.street-site .place-card .card-bottom .source-date { flex-basis: 100%; }
html body.grid-site.street-site :is(.explore-card,.place-card) .details-button { background: var(--blue); --stone-border: var(--stone-selected-border); }
html body.grid-site.street-site .home-actions #home-locate { --stone-border: var(--stone-selected-border); }
html body.grid-site.street-site :is(.explore-card,.place-card) .card-directions[open] { flex-basis: 100%; }
html body.grid-site.street-site :is(.explore-card,.place-card) .map-links { display: flex; flex-wrap: wrap; gap: .5rem; }
html body.grid-site.street-site .explore-card .card-more { margin-top: .25rem; }
@media(max-width: 600px) {
  html body.grid-site.street-site .access-menu-group { grid-template-columns: minmax(0, 1fr); }
  html.street-page body.grid-site.street-site #explore-search > summary { gap: .5rem; align-items: start; }
  .search-summary-action { max-width: 4.5rem; }
  html body.grid-site.street-site .explore-page .page-heading p { font-size: .875rem; }
}
@media(max-width: 379px) {
  html body.grid-site.street-site .page-menu nav { grid-template-columns: minmax(0, 1fr); }
}

html body.grid-site.street-site :is(.explore-card,.place-card) .venue-heading:has(.venue-photo[hidden]) { grid-template-columns: minmax(0, 1fr); }

/* A quiet image edge keeps photographs separate from the stone surface. */
html.street-page body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo-link { display: block; padding: 0; border: 1px solid var(--stone-edge) !important; border-image: none !important; background: transparent; }
html body.grid-site.street-site :is(.explore-card,.place-card) .venue-photo img { max-width: 100%; }

/* Keep the food finder in document order; older grid rows overlapped its controls. */
html body.grid-site.street-site .food-guide { gap: .75rem; }
html body.grid-site.street-site .food-guide .intro { padding: .5rem .75rem; align-items: center; }
html body.grid-site.street-site .food-guide .intro h1 { font-size: 2rem; line-height: 1.25; }
html body.grid-site.street-site .food-guide .intro-copy { margin: 0; }
html.street-page body.grid-site.street-site .food-guide .finder { display: flex; flex-direction: column; align-items: stretch; gap: .75rem; padding: .75rem; }
html.street-page body.grid-site.street-site .food-guide .finder > * { margin: 0; }
html.street-page body.grid-site.street-site .food-guide .finder .primary-filters { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
html.street-page body.grid-site.street-site .food-guide .type-filters { align-self: stretch; }
html.street-page body.grid-site.street-site .food-guide .availability-tools { border: 0 !important; border-image: none !important; padding: 0; background: transparent; }
html body.grid-site.street-site .food-guide .availability-tools .row-actions { margin: 0; padding: 0; }
html body.grid-site.street-site .food-guide .availability-tools p { margin: .25rem 0 0; }
html.street-page body.grid-site.street-site .food-guide :is(.extra-filters,.location-info,.filter-note) > summary { border: 0 !important; border-image: none !important; background: transparent; padding: .5rem .25rem; min-height: 44px; }
html body.grid-site.street-site .food-guide .location-tools { margin: 0; gap: .25rem .75rem; }
html body.grid-site.street-site .food-guide .extra-filters .guide-notes { border: 0; background: none; padding: 0; margin-top: .75rem; }
html body.grid-site.street-site .food-guide .results-heading { padding: 0; margin: 0; }
html.street-page body.grid-site.street-site .food-guide .results-heading > p { border: 0; border-image: none; padding: .25rem .5rem; font-size: .875rem; }
html body.grid-site.street-site main.home-page { min-height: 0; padding-block: 1rem; }
html body.grid-site.street-site .home-finder { padding: 1.25rem; }
html body.grid-site.street-site .home-main-action { margin-bottom: 1rem; }
html.street-page body.grid-site.street-site .home-plan { border: 0 !important; border-image: none !important; background: none; text-decoration: underline; }
html body.grid-site.street-site .account-page #reader-forms { display: block; }
html body.grid-site.street-site .account-page .page-heading p { max-width: 40rem; }
html body.grid-site.street-site .account-page #reader-forms > .fine-print { max-width: 32rem; }
html.street-page body.grid-site.street-site .account-page form > button[type=submit] { background: var(--blue); --stone-border: var(--stone-selected-border); }
html body.grid-site.street-site main > .result-support { width: 100%; margin: .25rem 0; padding: .5rem .75rem; border: 0; border-image: none; font-size: .875rem; background: var(--panel); }
html.street-page body.grid-site.street-site .result-support a { display: inline-flex; align-items: center; min-height: 44px; padding: .25rem; border: 0 !important; border-image: none !important; background: none; text-decoration: underline; font-weight: 600; }
html body.grid-site.street-site .result-support[hidden],
html body.grid-site.street-site .browse-group[hidden] { display: none !important; }
@media(max-width: 600px) {
  html body.grid-site.street-site .food-guide .intro { display: block; }
  html body.grid-site.street-site .food-guide .intro-copy { margin-top: .25rem; }
  html body.grid-site.street-site .home-finder { padding: 1rem .75rem; }
}
@media(max-width: 359px) {
  html.street-page body.grid-site.street-site .food-guide .finder .primary-filters { grid-template-columns: minmax(0, 1fr); }
}
