/* SpringNexa homepage — canonical full-width responsive structure.
   Prevents mobile rendering from collapsing the homepage into a narrow column. */
html,
body.home-page {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  overflow-x: hidden;
}

body.home-page,
body.home-page > header.site,
body.home-page > section,
body.home-page > footer.site,
body.home-page > main {
  width: 100%;
  max-width: none;
  min-width: 0;
}

body.home-page .wrap {
  width: 100%;
  max-width: var(--sn-max, 1180px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

body.home-page .reference-hero,
body.home-page .recognition-section,
body.home-page .reference-divisions,
body.home-page .reference-products,
body.home-page .reference-stats,
body.home-page .reference-footer {
  width: 100%;
  max-width: none;
}

body.home-page .hero-reference-grid,
body.home-page .recognition-cards,
body.home-page .compact-divisions,
body.home-page .product-grid,
body.home-page .stats,
body.home-page .footer-reference-grid {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 900px) {
  body.home-page .wrap {
    width: 100%;
    max-width: none;
    padding-left: 18px;
    padding-right: 18px;
  }

  body.home-page .hero-reference-grid {
    width: 100%;
    max-width: none;
  }

  body.home-page .recognition-cards,
  body.home-page .compact-divisions,
  body.home-page .reference-products .product-grid,
  body.home-page .reference-stats .stats {
    width: 100%;
    max-width: none;
  }

  body.home-page .recognition-cards {
    grid-template-columns: 1fr;
  }

  body.home-page .recognition-cards > div + div {
    border-left: 0 !important;
    border-top: 1px solid #dbe8ef !important;
  }

  body.home-page .compact-divisions {
    grid-template-columns: 1fr;
  }

  body.home-page .reference-products .product-grid {
    grid-template-columns: 1fr;
  }

  body.home-page .reference-stats .stats {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  body.home-page .reference-stats .stat-card:nth-child(odd) {
    border-left: 0 !important;
  }

  body.home-page .reference-stats .stat-card:nth-child(n + 3) {
    border-top: 1px solid #e2edf3 !important;
  }
}

@media (max-width: 560px) {
  body.home-page .wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  body.home-page .reference-hero,
  body.home-page .hero-reference-grid {
    width: 100%;
    max-width: none;
  }

  body.home-page .compact-divisions .division-card {
    width: 100%;
    min-width: 0;
  }

  body.home-page .reference-products .product-card {
    width: 100%;
    min-width: 0;
  }

  body.home-page .reference-stats .stats {
    grid-template-columns: 1fr !important;
  }

  body.home-page .reference-stats .stat-card,
  body.home-page .reference-stats .stat-card:nth-child(n + 3) {
    border-left: 0 !important;
    border-top: 1px solid #e2edf3 !important;
  }

  body.home-page .reference-stats .stat-card:first-child {
    border-top: 0 !important;
  }

  body.home-page .footer-reference-grid {
    grid-template-columns: 1fr !important;
  }
}
