@layer pages {
  .home__categories { display: grid; gap: var(--space-6); }
  @media (min-width: 48rem) { .home__categories { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 80rem) { .home__categories { grid-template-columns: repeat(3, 1fr); } }

  .home__products { display: grid; gap: var(--space-5); grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--card-min)), 1fr)); }

  .home__why { display: grid; gap: var(--space-8); align-items: start; }
  @media (min-width: 80rem) { .home__why { grid-template-columns: 1fr 1.4fr; gap: var(--space-16); } .home__why-heading { position: sticky; inset-block-start: calc(var(--header-height) + var(--space-6)); } }
  .home__why-heading .ds-section-heading { margin-block-end: 0; }
  .home__features { display: grid; gap: var(--space-5); }
  @media (min-width: 48rem) { .home__features { grid-template-columns: repeat(2, 1fr); } }

  .home__buy { position: relative; isolation: isolate; overflow: hidden; }
  .home__buy-dots { position: absolute; inset: 0; z-index: -1; mask-image: linear-gradient(to right, black, transparent 60%); }
  .home__buy-inner { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-6); }
  .home__buy .ds-section-heading { margin-block-end: 0; }
  .home__regions { display: flex; flex-wrap: wrap; gap: var(--space-2); max-inline-size: var(--measure-regions); }

  .home__request { display: grid; gap: var(--space-10); align-items: start; }
  @media (min-width: 80rem) { .home__request { grid-template-columns: 1fr 1.25fr; gap: var(--space-16); } }
  .home__request-intro { display: flex; flex-direction: column; gap: var(--space-4); }
  .home__contacts { display: grid; gap: var(--space-3); margin-block-start: var(--space-4); font-weight: var(--font-weight-semibold); }
  .home__contacts li { display: flex; align-items: center; gap: var(--space-3); }
  .home__contacts .ds-icon { color: var(--color-accent); }
  .home__contacts a:hover { color: var(--color-accent); }
  .home__request-form { padding: var(--space-6); border-radius: var(--radius-panel); background: var(--color-surface); border: var(--border-width) solid var(--color-border); box-shadow: var(--shadow-2); }
  @media (min-width: 48rem) { .home__request-form { padding: var(--space-10); } }
}
