*,
*::before,
*::after {
  box-sizing: border-box;
}

:root {
  color-scheme: dark;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100vh;
  background-color: #293646;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

.hero {
  isolation: isolate;
  overflow: hidden;
  position: relative;
}

.hero__video-wrapper {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.1) contrast(1.05);
}

.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
      120deg,
      rgba(41, 54, 70, 0.95),
      rgba(20, 28, 40, 0.7)
    ),
    radial-gradient(circle at 20% 20%, rgba(231, 156, 29, 0.25), transparent 45%),
    radial-gradient(circle at 80% 30%, rgba(203, 40, 45, 0.18), transparent 40%);
  z-index: 1;
}

.hero__overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  mix-blend-mode: multiply;
}

/* Product Cards */
.product-card {
  min-height: 120px;
  aspect-ratio: 1;
}

.product-card:focus {
  outline: 2px solid #e79c1d;
  outline-offset: 2px;
}

.product-card img {
  transition: transform 0.3s ease;
}

.product-card:hover img {
  transform: scale(1.05);
}

@media (max-width: 640px) {
  .product-card {
    min-height: 100px;
  }
}

/* Product Items */
.product-item {
  min-height: 200px;
}

@media (max-width: 640px) {
  .product-item {
    min-height: 150px;
  }
}