/* Comfortable touch-first layout for the home page. */
@media (max-width: 700px) {
  body#top { padding-bottom: 98px !important; }
  body#top .page { width: min(calc(100% - 28px), var(--content)) !important; }
  body#top .brandbar { min-height: 68px !important; gap: 10px; }
  body#top .home-brand-image { width: 138px !important; height: 54px !important; }
  body#top .site-nav { gap: 3px !important; }
  body#top .site-nav a { padding: 9px 8px !important; font-size: 14px !important; line-height: 1.25 !important; }
  body#top .hero-art { border-radius: 16px !important; box-shadow: 0 10px 25px rgba(21, 54, 76, .14) !important; }
  body#top .section { margin-top: 22px !important; }
  body#top .section-heading { margin-bottom: 12px !important; }
  body#top .section-title { font-size: 21px !important; line-height: 1.35 !important; }
  body#top .section-description { margin-top: 4px !important; font-size: 13px !important; line-height: 1.55 !important; }
  body#top .home-channel-grid { gap: 12px !important; }
  body#top .home-channel-card { grid-template-columns: 100px minmax(0, 1fr) !important; grid-template-rows: minmax(108px, auto) auto !important; border-radius: 14px !important; }
  body#top .home-channel-image { min-height: 108px !important; padding: 8px !important; }
  body#top .home-channel-image img, body#top .home-channel-mark { min-height: 92px !important; border-radius: 10px !important; }
  body#top .home-channel-copy { gap: 5px !important; padding: 12px 11px !important; }
  body#top .home-channel-copy h2 { font-size: 17px !important; line-height: 1.25 !important; }
  body#top .home-channel-copy p { font-size: 12px !important; line-height: 1.45 !important; }
  body#top .home-channel-actions { gap: 7px !important; padding: 9px 10px 11px !important; }
  body#top .home-channel-action { min-height: 40px !important; padding: 6px 4px !important; border-radius: 9px !important; font-size: 12px !important; }
  body#top .home-download-grid { gap: 11px !important; }
  body#top .home-download-card { min-height: 92px !important; padding: 14px !important; border-radius: 12px !important; }
  body#top .home-download-card strong { font-size: 15px !important; }
}
@media (max-width: 380px) {
  body#top .home-brand-image { width: 122px !important; }
  body#top .site-nav a { padding-inline: 6px !important; font-size: 13px !important; }
  body#top .home-channel-card { grid-template-columns: 88px minmax(0, 1fr) !important; }
}
