/* ── desktop / tablet ────────────────────────────────────────────── */
@media (min-width: 769px) {
  header { padding: 2rem 7% 3rem; }
  .logo { font-size: 4rem; text-align: left; }
  .tagline { font-size: 0.9rem; text-align: left; }
  main { padding: 2rem 7% 3rem; }
  .section-title { font-size: 1.7rem; letter-spacing: 0.12em; }
  .card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); flex-direction: row; }
  .tier-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); flex-direction: row; }
}
@media (min-width: 481px) and (max-width: 768px) {
  .logo { font-size: 3.5rem; }
  .card-grid { display: grid; grid-template-columns: repeat(2, 1fr); flex-direction: row; }
  .tier-grid { display: grid; grid-template-columns: repeat(2, 1fr); flex-direction: row; }
}
@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}

