.site-main { min-height: 60vh; width: 100%; overflow-x: clip; }
.container, .zm-shell, .site-header-inner, .site-footer-inner {
  width: min(var(--zm-wide), calc(100% - (2 * var(--zm-gutter))));
  margin-inline: auto;
}
.section, .zm-section { position: relative; padding-block: var(--zm-section-space); }
.section + .section, .zm-section + .zm-section { border-top: 1px solid rgba(255,255,255,.045); }
.section-title, .zm-section-title { max-width: 900px; margin: 0 0 12px; }
.section-subtitle, .zm-section-subtitle, .description {
  max-width: var(--zm-content); margin: 0 0 clamp(26px, 4vw, 40px); color: var(--zm-muted); font-size: clamp(16px, 1.5vw, 19px);
}
.grid-2, .grid-3, .grid-4, .news-archive-grid, .news-feed-grid, .news-topics-grid,
.news-promo-grid, .rules-sections-grid, .rules-overview-grid, .rules-sanctions-grid,
.server-feature-grid, .server-mode-grid, .server-compare-grid, .download-benefits-grid,
.download-options-grid, .reqs-grid, .launcher-highlight-grid, .feature-list-grid,
.testimonials-grid, .utility-grid, .zm-features-grid, .zm-servers-grid {
  display: grid; grid-template-columns: 1fr; gap: 16px;
}
.hero-grid, .launcher-grid, .pain-box { display: grid; grid-template-columns: 1fr; gap: 24px; align-items: center; }
@media (min-width: 640px) {
  .grid-2, .grid-3, .grid-4, .news-topics-grid, .news-promo-grid, .server-feature-grid,
  .download-benefits-grid, .download-options-grid, .launcher-highlight-grid,
  .feature-list-grid, .utility-grid, .zm-features-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .news-archive-grid, .news-feed-grid, .rules-sections-grid, .rules-overview-grid,
  .rules-sanctions-grid, .server-mode-grid, .server-compare-grid, .reqs-grid,
  .testimonials-grid, .zm-servers-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
}
@media (min-width: 900px) {
  .hero-grid, .launcher-grid { grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); gap: clamp(32px, 5vw, 72px); }
  .pain-box { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
  .grid-3, .news-archive-grid, .news-feed-grid, .news-topics-grid, .news-promo-grid,
  .rules-sections-grid, .server-mode-grid, .server-compare-grid, .testimonials-grid,
  .zm-servers-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .grid-4, .download-benefits-grid, .download-options-grid, .launcher-highlight-grid,
  .feature-list-grid, .rules-overview-grid, .rules-sanctions-grid, .server-feature-grid,
  .utility-grid, .zm-features-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
}
