.wrap {
  width: min(1400px, 93vw);
  margin: 0 auto;
}

main {
  position: relative;
  padding: 2.1rem 0 3.4rem;
}

.content-section {
  margin-bottom: 1.72rem;
}

.feature-grid {
  margin-top: 1rem;
}

.grid {
  display: grid;
  gap: 1rem;
}

.grid.layers {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.grid.dual {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.grid.quad {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

@media (max-width: 920px) {
  main {
    padding: 1.78rem 0 3rem;
  }

  .content-section {
    margin-bottom: 1.38rem;
  }
}

@media (max-width: 620px) {
  main {
    padding: 1.46rem 0 2.6rem;
  }

  .grid {
    gap: 0.84rem;
  }

  .content-section {
    margin-bottom: 1.1rem;
  }
}
