.mobile-language, .hero-mobile-title, .hero-mobile-description, .city-search-icon, .nav-search-icon, .mobile-results-toolbar { display: none; }

@media (max-width: 720px) {
  html { scroll-padding-top: 0; }
  body { padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px)); }
  .site-header { min-height: 72px; padding: 10px 16px; gap: 12px; }
  .site-header .language-switch { display: none; }
  .mobile-language { display: block; grid-column: 2; grid-row: 1; width: 76px; min-height: 44px; border: 1px solid var(--line); border-radius: 14px; padding: 8px 28px 8px 12px; color: var(--green); background: #fff; font-size: 14px; font-weight: 650; -webkit-appearance: none; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23183c32' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 9px center; background-size: 14px; }
  .site-header nav { position: fixed; z-index: 950; left: 12px; right: 12px; bottom: calc(10px + env(safe-area-inset-bottom, 0px)); padding: 6px; gap: 6px; border: 1px solid #dce2d6; border-radius: 20px; background: #fff; box-shadow: 0 6px 28px #183c3221; }
  .site-header nav a { min-height: 48px; border-radius: 14px; font-size: 13px; }
  .site-header nav a[aria-current] { background: #edf2e4; box-shadow: none; }
  .site-header nav svg { width: 22px; height: 22px; flex-shrink: 0; }
  .nav-search-icon { display: block; }
  .mobile-editing .site-header nav { display: none; }
  .toast { bottom: calc(92px + env(safe-area-inset-bottom, 0px)); }
  .hero, .hero:has(.hero-city) { grid-template-columns: minmax(0, 1fr) 116px; gap: 8px; min-height: 0; padding-top: 20px; padding-bottom: 20px; align-items: center; }
  .hero .eyebrow, .hero-full-title, .hero .hero-full-description, .hero-link { display: none; }
  .hero-mobile-title, .hero .hero-mobile-description { display: block; }
  .hero h1 { font-size: clamp(24px, 6.5vw, 30px); line-height: 1.12; margin-bottom: 8px; }
  .hero .hero-mobile-description { font-size: 12px; line-height: 1.5; margin-bottom: 0; }
  .hero .hero-city { position: relative; min-height: 0; margin: 0; }
  .hero-city .city-scene { width: 116px; }
  .hero-city .city-note, .hero-city .city-scene-footer > span { display: none; }
  .hero-city .city-map { margin: 0; }
  .hero-city .city-scene-footer { position: absolute; right: -6px; bottom: -18px; margin: 0; }
  .hero-city .city-motion-toggle { width: 44px; height: 44px; border-color: transparent; background: var(--paper); }
  .hero-city .city-motion-toggle svg { width: 14px; height: 14px; }
  .search-redesign { padding: 18px 16px; scroll-margin-top: 14px; }
  .search-title { font-size: 22px; margin-bottom: 18px; }
  .search-redesign .search-label { font-size: 13px; margin-bottom: 8px; }
  .search-redesign .city-entry { position: relative; display: block; }
  .search-redesign .city-entry .search-input { width: 100%; min-height: 52px; padding: 12px 56px 12px 12px; }
  .search-redesign #city-search { position: absolute; right: 4px; top: 4px; display: grid; place-items: center; width: 44px; height: 44px; min-height: 44px; padding: 10px; border-radius: 9px; }
  .city-search-icon { display: block; width: 22px; height: 22px; }
  .city-search-label { position: absolute; clip: rect(0, 0, 0, 0); width: 1px; height: 1px; overflow: hidden; }
  .search-redesign .location-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }
  .search-redesign #locate-me { gap: 7px; padding: 9px 10px; font-size: 12px; }
  .search-redesign .radius-field { width: auto; margin-left: auto; }
  .search-redesign .radius-field > span { display: none; }
  .search-redesign #radius-select { padding: 9px 30px 9px 10px; background-position: right 9px center; font-size: 13px; }
  .search-redesign #clear-location { flex-basis: auto; padding: 5px; font-size: 12px; }
  .search-redesign .city-help { margin-top: 8px; font-size: 11px; }
  .search-redesign .city-attribution { font-size: 9px; line-height: 1.5; }
  .search-time { margin-block: 20px; }
  .search-redesign .filter-chip span { padding: 9px 11px; font-size: 12px; }
  .search-filters { margin-top: 18px; }
  .search-actions { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding-top: 16px; }
  .search-actions .search-submit { font-size: 14px; padding-inline: 12px; }
  .search-actions .search-reset { padding: 8px 4px; font-size: 12px; }
  .search-redesign:not([data-dirty]) #search-pending { display: none; }
  .mobile-results-toolbar { position: sticky; top: 10px; z-index: 850; display: flex; align-items: center; gap: 10px; min-height: 64px; margin-bottom: 22px; padding: 9px 12px; border: 1px solid #dce2d6; border-radius: 16px; background: #fafbf7; box-shadow: 0 3px 14px #183c320a; }
  .mobile-results-toolbar > svg { width: 20px; height: 20px; flex-shrink: 0; }
  .mobile-results-toolbar > div { flex: 1; min-width: 0; }
  .mobile-results-toolbar strong, .mobile-results-toolbar span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .mobile-results-toolbar strong { font-size: 13px; font-weight: 650; }
  .mobile-results-toolbar span { font-size: 11px; color: var(--muted); }
  .mobile-results-toolbar a { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 8px; border-radius: 10px; background: #edf2e4; font-size: 12px; font-weight: 650; }
  .mobile-results-toolbar a svg { width: 17px; height: 17px; }
  .android-app body { padding-bottom: 0; }
  .android-app .site-header { min-height: 68px; }
  .android-app .mobile-language { margin-left: 0; flex-shrink: 0; }
  .android-app .hero { display: none; }
  .android-app #discover { padding-top: 10px; }
  .android-app .search-redesign { scroll-margin-top: 84px; }
  .android-app .mobile-results-toolbar { top: 78px; }
  .android-app .toast { bottom: 20px; }
}
@media (max-width: 359px) {
  .hero, .hero:has(.hero-city) { grid-template-columns: minmax(0, 1fr) 94px; }
  .hero-city .city-scene { width: 94px; }
  .hero h1 { font-size: 23px; }
  .search-redesign .location-controls > #locate-me { flex-basis: auto; }
  .search-redesign #locate-me { padding-inline: 8px; font-size: 11px; }
  .search-redesign #radius-select { font-size: 12px; }
  .search-redesign .radius-field { max-width: 122px; }
  .search-redesign #radius-select { width: 122px; }
  .search-redesign .filter-chip span { padding-inline: 8px; font-size: 11px; }
  .android-app .mobile-language { width: 68px; }
}
