/* Small screens and reduced motion */

@media (max-width: 820px) {
  .wrap { padding: 24px 20px 72px; }
  .topbar { margin-bottom: 48px; }
  h1 { font-size: 34px; }
  .greet { display: block; width: auto !important; }
  .lede { margin-top: 28px; }
  section { margin-top: 56px; padding-top: 48px; }
  .wrap { --gap: 10px; }
  /* contact: smaller on phones so the full email fits */
  .contact li { font-size: 15px; gap: 12px; align-items: baseline; }
  .contact li > span { font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .progress { animation: none; }
  .js .rv { opacity: 1; transform: none; transition: none; }
  .pin, .tag > span, .greet, .greet .w { transition: none; }
  .theme svg, .copy.done svg, .hello:hover .wave { animation: none; }
}
