.mobile-app-nav { display: none; }
@media (max-width: 760px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  html { scroll-padding-top: 78px; scroll-padding-bottom: calc(86px + env(safe-area-inset-bottom)); }
  body.has-mobile-shell { padding-bottom: calc(72px + env(safe-area-inset-bottom)); background: #f6f8fc; }
  .first-screen-shell, .page-shell { padding-inline: 16px; }
  body > .first-screen-shell { position: sticky; top: 0; z-index: 120; padding-top: env(safe-area-inset-top); background: #fffffff5; border-bottom: 1px solid #e1e7f0; }
  .main-site-header { min-height: 64px; height: auto; padding-block: 10px; gap: 8px; }
  .main-site-header .site-logo { width: min(42vw,170px); }
  .main-site-header .site-logo img { width: 100%; height: auto; }
  .main-site-header .header-actions { gap: 4px; }
  .main-site-header .language-picker select { width: 100px; min-height: 44px; padding: 8px 6px; font-size: 16px; border-radius: 12px; background: #f5f7fc; }
  .main-site-header #menu-toggle { width: 44px; height: 44px; border-radius: 12px; background: #f0f4fc; }
  .main-site-header .header-menu { position: fixed; top: auto; right: 12px; left: 12px; bottom: calc(84px + env(safe-area-inset-bottom)); width: auto; max-height: calc(100dvh - 174px); overflow-y: auto; padding: 12px; gap: 6px; border-radius: 20px; background: #fff; box-shadow: 0 4px 50px #122b4a40; overscroll-behavior: contain; }
  .main-site-header .header-menu a { display: flex; align-items: center; min-height: 48px; padding: 10px 12px; font-size: 15px; line-height: 1.45; border-radius: 12px; background: #f5f7fc; }
  .mobile-app-nav { position: fixed; z-index: 130; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 2px; padding: 7px 8px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid #dce4f1; background: #fffffff5; backdrop-filter: blur(16px); box-shadow: 0 -4px 24px #172e5010; }
  .mobile-app-nav a, .mobile-app-nav button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; min-width: 0; min-height: 56px; padding: 5px 2px; border: 0; border-radius: 12px; background: transparent; color: #61738f; font: inherit; font-size: 11px; font-weight: 650; line-height: 1.3; text-align: center; text-decoration: none; }
  .mobile-app-nav svg { width: 23px; height: 23px; flex-shrink: 0; }
  .mobile-app-nav [aria-current='page'], .mobile-app-nav [aria-expanded='true'] { color: #103d91; background: #eaf0fc; }
  .mobile-app-nav :focus-visible { outline: 2px solid #103d91; outline-offset: -2px; }
  .has-mobile-shell .location-sale-bar { display: none; }
  .mobile-keyboard-open .mobile-app-nav { visibility: hidden; pointer-events: none; }
  .mobile-keyboard-open .header-menu { bottom: 12px; }
  .advertising-section { padding-top: 20px; padding-bottom: 24px; }
  .campaigns { border-radius: 18px; }
  .campaign-card { height: 176px; }
  .campaign-copy { padding: 18px; }
  .campaign-copy small { font-size: 11px; margin-bottom: 10px; }
  .campaign-copy strong { font-size: 22px; }
  .campaign-copy span { font-size: 12px; line-height: 1.55; }
  .campaign-controls { gap: 8px; margin-top: 8px; font-size: 12px; }
  .campaign-track-line { font-size: 12px; }
  .campaign-controls button { width: 44px; height: 44px; }
  .sale-section { padding-bottom: 36px; }
  .trade-section { padding-block: 32px; }
  .trade-shell { padding-inline: 16px; }
  .trade-board-top { margin-bottom: 18px; gap: 12px; }
  .trade-board-top h2 { font-size: 28px; }
  .trade-live { font-size: 18px; }
  .trade-flow-track .trade-watch-name { font-size: 15px; line-height: 1.45; }
  .trade-flow-track .trade-details, .trade-flow-track .trade-part { font-size: 12px; line-height: 1.5; }
  .trade-flow-track .trade-countdown { font-size: 14px; }
  .trade-status-badge { font-size: 11px; }
  .trade-flow-track .trade-row { text-align: left; }
  .comparison-band #comparison { padding: 40px 20px; }
  .home-reviews-band { padding-block: 40px; }
  .home-reviews-section { padding-inline: 16px; }
  .home-review-hero { margin-bottom: 24px; }
  .home-review-hero h2 { font-size: 34px; }
  .home-review-hero-desc { margin-top: 14px; font-size: 14px; }
  .journal-band #journal { padding: 40px 16px; }
  .journal-label-row { margin-bottom: 24px; gap: 14px; }
  .journal-label-row h2 { font-size: 30px; }
  .magazine-copy { padding: 18px; min-height: 212px; }
  .magazine-title { font-size: 19px; line-height: 1.5; }
  .categorized-faq { padding-block: 40px; }
  .categorized-faq .story-shell { padding-inline: 16px; }
  .faq-section-heading { margin-bottom: 20px; }
  .faq-section-heading h2 { font-size: 30px; }
  .faq-section-heading p { font-size: 15px; }
  .faq-category-tabs { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 8px; margin-inline: -16px; padding: 0 16px 18px; margin-bottom: 24px; scroll-padding-inline: 16px; overscroll-behavior-x: contain; scrollbar-width: none; }
  .faq-category-tabs button { flex: 0 0 auto; min-height: 48px; padding: 10px 14px; border-radius: 12px; font-size: 15px; }
  .faq-category-intro h3 { font-size: 23px; margin-block: 10px; }
  .faq-category-intro .faq-category-art { height: 180px; aspect-ratio: auto; margin-block: 14px; }
  .faq-category-intro p { font-size: 14px; margin-bottom: 18px; }
  .faq-category-caption { font-size: 13px; }
  .faq-category-actions { gap: 8px; }
  .faq-topic-action { min-height: 48px; font-size: 14px; padding: 10px 14px; }
  .categorized-faq .story-faq-list summary { font-size: 15px; min-height: 64px; }
  .categorized-faq .story-answer p { font-size: 14px; }
  .compact-location .story-shell { padding-inline: 16px; }
  .location-address-button { min-height: 48px; }
  .location-direct-phone { display: block; padding-block: 10px; min-height: 48px; }
  .location-map-toolbar button { min-height: 44px; font-size: 13px; }
  .location-real-map .leaflet-control-zoom a { width: 44px; height: 44px; line-height: 44px; }
  .location-quick-contacts a { min-height: 68px; }
  .location-quick-contacts strong { font-size: 14px; }
  .refined-footer { padding-block: 32px 24px; }
  .refined-footer .story-shell { padding-inline: 20px; }
  .footer-overview { gap: 22px 16px; padding-bottom: 24px; }
  .footer-identity img { width: 220px; }
  .footer-identity p { font-size: 13px; }
  .refined-footer nav a { display: flex; align-items: center; min-height: 44px; }
  .footer-store > a { min-height: 44px; }
  .footer-policy a { display: flex; align-items: center; min-height: 44px; }
  .trade-dialog-close { min-width: 44px; min-height: 44px; }
  .trade-access { max-width: calc(100vw - 32px); }
}
@media (max-width: 359px) {
  .main-site-header .site-logo { width: 132px; }
  .main-site-header .language-picker select { width: 96px; }
  .mobile-app-nav { padding-inline: 4px; }
  .mobile-app-nav a, .mobile-app-nav button { font-size: 10px; }
  .trade-board-top h2 { font-size: 25px; }
  .footer-overview { grid-template-columns: 1fr; }
}

