* {
  box-sizing: border-box;
}

body {
  margin: 0;
  letter-spacing: 0;
}

img {
  display: block;
  max-width: 100%;
}

.hero-bg {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-image: linear-gradient(90deg, rgba(7, 19, 18, 0.96), rgba(7, 19, 18, 0.78) 52%, rgba(7, 19, 18, 0.38)), var(--hero-image);
}

.hero-bg::before,
.tech-grid {
  background-image:
    linear-gradient(rgba(126, 226, 184, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(126, 226, 184, 0.08) 1px, transparent 1px);
  background-size: 42px 42px;
}

.hero-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0.42;
  pointer-events: none;
}

.hero-bg::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  z-index: 0;
  height: 32%;
  background: linear-gradient(180deg, rgba(7, 19, 18, 0), rgba(7, 19, 18, 0.74));
  pointer-events: none;
}

@media (max-width: 860px) {
  .hero-bg {
    background-image: linear-gradient(90deg, rgba(7, 19, 18, 0.94), rgba(7, 19, 18, 0.78)), var(--hero-image);
  }
}
