html {
  scroll-behavior: smooth;
  scroll-padding: 30px;
}

body {
  padding: 20px 20px 60px 20px;
  max-width: 1000px;
  margin: 0 auto;
  background: #f1f1f1;
}

header {
  text-align: center;
  margin: 20px 0;
}

header h1 {
  font-size: 20px;  
  margin: 4px;
}

h1 {
  text-align: center;
  font-size: 34px;
  margin: 20px 0;
}

.grid {
  margin: 0 auto;
  display: grid;
  gap: 1rem;
}

.card {
  border-radius: 5px;
  padding: 10px 15px;
  background: #fff;
}

.card h2 {
  font-size: 20px;
  margin: 0;
}

@media (min-width: 600px) {
  .grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 900px) {
  .grid { grid-template-columns: repeat(3, 1fr); }
}
