@media (prefers-reduced-motion: reduce) {
  #intro { display: none !important; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

@media (max-width: 760px) {
  .wrap { padding: 0 16px 56px; }
  .top { justify-content: center; }
  .hero { grid-template-columns: 1fr; padding-top: 28px; }
  .photo { width: 110px; height: 140px; order: -1; }
  .feature, .row { grid-template-columns: 1fr; gap: 14px; }
  .timeline { grid-template-columns: 1fr; }
}
