/**
 * Landing layout fallback — plain CSS, no build step.
 * Loaded on every page; keeps the marketing home usable if a /_next/static
 * stylesheet is blocked (Apache/WAF rejects ".." or "~" in Turbopack chunk names).
 */
.landing-page {
  min-height: 100vh;
  box-sizing: border-box;
}

.landing-page *,
.landing-page *::before,
.landing-page *::after {
  box-sizing: border-box;
}

#home {
  padding-top: 80px;
}

#home .relative.h-screen,
.landing-page #home > div {
  position: relative;
  min-height: calc(100vh - 80px);
  overflow: hidden;
  background: #000;
}

#home .relative.z-10.flex {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 80px);
  padding: 0 1.5rem;
}

#home .max-w-6xl {
  max-width: 72rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: #fff;
}

#home .flex.flex-col.sm\:flex-row,
#home .flex.flex-col {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  justify-content: center;
  align-items: center;
  margin-bottom: 3rem;
}

@media (min-width: 640px) {
  #home .flex.flex-col.sm\:flex-row {
    flex-direction: row;
  }
}

#features .grid,
.landing-page #features .grid {
  display: grid;
  gap: 2rem;
}

@media (min-width: 768px) {
  #features .grid.md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  #features .grid.lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

#features .max-w-7xl,
#stats .max-w-7xl,
.landing-page .max-w-7xl {
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

#features .text-center,
#stats .text-center {
  text-align: center;
}

#cta .flex.flex-col.sm\:flex-row {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  justify-content: center;
  align-items: center;
}

@media (min-width: 640px) {
  #cta .flex.flex-col.sm\:flex-row {
    flex-direction: row;
  }
}

#cta .max-w-4xl {
  max-width: 56rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
