@media (max-width: 940px) {
  .header-inner { grid-template-columns: 1fr auto; }
  .header-inner nav { grid-column: 1 / -1; grid-row: 2; order: 3; justify-content: flex-start; padding: 0 0 13px; overflow-x: auto; }
  .hero-grid, .page-hero-grid, .section-heading, .app-grid, .process-grid, .compact-grid, .release-card, .legal-layout, .deletion-grid { grid-template-columns: 1fr; gap: 55px; }
  .company-hero-grid, .product-heading, .principles-grid { grid-template-columns: 1fr; gap: 55px; }
  .hero-grid { min-height: auto; }
  .dashboard-preview { width: min(620px, 100%); margin: 0 auto; }
  .feature-grid--four { grid-template-columns: repeat(2, 1fr); }
  .process-grid > div:first-child, .legal-aside { position: static; }
  .phone-stack { width: min(590px, 100%); margin-inline: auto; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .container { width: min(100% - 28px, 1160px); }
  .site-header { position: relative; }
  .header-inner { min-height: 72px; gap: 10px; }
  .brand span { font-size: .85rem; }
  .brand img { width: 40px; height: 40px; }
  .header-inner > .button { min-height: 38px; padding-inline: 13px; }
  .header-inner nav { gap: 22px; }
  .header-inner nav a { white-space: nowrap; font-size: .76rem; }
  .hero, .page-hero, .compact-hero { padding: 64px 0; }
  .company-hero { padding: 68px 0; }
  .hero--poster { padding: 20px 0 42px; }
  .hero-poster { border-radius: 18px; }
  .hero-actions { align-items: stretch; flex-direction: column; gap: 18px; padding: 22px 0 0; }
  .hero-actions .button-row { display: grid; grid-template-columns: 1fr; width: 100%; }
  .section { padding: 78px 0; }
  h1 { font-size: clamp(2.8rem, 14vw, 4.3rem); }
  h2 { font-size: clamp(2rem, 10vw, 3rem); }
  .feature-grid, .feature-grid--four, .contact-grid, .support-detail-grid { grid-template-columns: 1fr; }
  .feature-card { min-height: 210px; }
  .family-demo { padding: 22px; box-shadow: 12px 12px 0 rgba(17,83,135,.35); }
  .family-people { grid-template-columns: 1fr 26px 1fr; }
  .support-banner, .branch-card { grid-template-columns: 1fr; align-items: start; padding: 28px; }
  .support-banner .button, .branch-card .button { width: 100%; }
  .phone-stack { min-height: 390px; }
  .phone-card { width: 235px; min-height: 320px; padding: 24px; }
  .phone-card--back { right: 0; }
  .phone-card--front { left: 0; }
  .release-card { padding: 30px; }
  .brand-system-card { padding: 18px; }
  .company-lockup, .product-lockup { padding: 17px; }
  .services-mark--large { width: 60px; height: 60px; }
  .app-mark--medium { flex-basis: 60px; width: 60px; height: 60px; font-size: 1.1rem; }
  .featured-product { padding: 10px; border-radius: 22px; }
  .featured-product__image { border-radius: 15px; }
  .featured-product__actions { grid-template-columns: 1fr; gap: 22px; padding: 22px 12px 12px; }
  .featured-product__actions .button { width: 100%; }
  .legal-layout { gap: 20px; }
  .policy-content { padding-inline: 24px; }
  .footer-grid { grid-template-columns: 1fr; gap: 30px; }
  .legal-row { flex-direction: column; gap: 5px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
