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

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: #fff;
  color: #000;
  font: 400 16px/1.5 Poppins, sans-serif;
}

img, video { display: block; max-width: 100%; }
a { color: inherit; }
a:focus-visible { outline: 3px solid #000; outline-offset: 4px; }

.page { max-width: 1140px; margin: 0 auto; }

.intro { padding: 80px 8px 0; }
.intro h1 { margin: 0; }
.intro__logo { width: min(500px, 100%); height: auto; margin: 0 auto; }
.intro p { margin: 20px 0 0; }

.film { margin: 50px 10px 85px; }
.film video { width: 100%; height: auto; aspect-ratio: 16 / 9; background: #000; }

.products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 5.3%;
  row-gap: 38px;
  padding: 0 10px;
}
.product { text-align: center; }
.product img { width: 100%; height: auto; }
.product h2 { margin: 14px 0 14px; font-size: 34px; line-height: 1.25; font-weight: 500; }
.product p { margin: 0; }

.wallpapers {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-top: 70px;
  padding: 0 8px;
}
.wallpaper img { width: 100%; height: auto; }

.footer { display: flex; justify-content: center; padding: 90px 16px 70px; }
.discover {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 57px;
  padding: 14px 40px;
  border-radius: 5px;
  background: #000;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  text-decoration: none;
}
.discover:hover { background: #222; }

@media (max-width: 767px) {
  .intro { padding: 70px 20px 0; }
  .intro p { margin-top: 24px; }
  .film { margin: 55px 10px 80px; }
  .products { grid-template-columns: 1fr; gap: 28px; padding: 0 16px; }
  .product:nth-child(3) { order: 4; }
  .product:nth-child(4) { order: 3; }
  .wallpapers { grid-template-columns: 1fr; margin-top: 60px; padding: 0 16px; }
  .footer { padding-top: 70px; }
}
