.nav {
  height: var(--nav-h-scrolled);
  background: var(--nav-bg-scrolled);
  box-shadow: var(--shadow-nav);
  border-color: var(--nav-border-scrolled);
  backdrop-filter: blur(10px);
}

.nav__link {
  color: var(--nav-text-dark);
  text-shadow: none;
  font-weight: 500;
}

.nav__link::after {
  opacity: 0.55;
}

.lang {
  color: var(--nav-text-dark-muted);
}

.lang__link {
  text-shadow: none;
  font-weight: 500;
}

.lang__link.is-active {
  color: var(--nav-text-dark);
}

.nav__icon {
  color: var(--nav-text-dark);
  border-color: rgba(27, 27, 27, 0.14);
  background: rgba(27, 27, 27, 0.02);
}

.btn--reserve {
  background: var(--color-gold);
  color: var(--color-white);
  box-shadow: 0 14px 40px rgba(27, 27, 27, 0.12);
}

.nav__burger {
  border-color: rgba(27, 27, 27, 0.14);
  background: rgba(27, 27, 27, 0.02);
  color: var(--nav-text-dark);
}

.nav__logo {
  height: 40px;
  filter: none;
  transform: translateY(-1px);
}

.nav__brand {
  transform: translateY(-1px);
}

.error404__hero {
  position: relative;
  min-height: 88vh;
  padding: 160px 15% 100px;
  background-color: var(--color-white);
  display: flex;
  align-items: center;
}

.error404__content {
  position: relative;
  z-index: 1;
  max-width: 780px;
  color: var(--color-white);
}

.error404__content h1 {
  margin: 10px 0 18px;
  color: var(--color-black);
}

.error404__lead {
  max-width: 60ch;
  color: var(--color-black);
}

.error404__actions {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
}

.error404__link {
  color: var(--color-white);
}

.error404__sections {
  padding: 100px 15%;
  background: var(--color-white);
}

.error404__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

.error404__card {
  display: block;
  padding: 34px 30px;
  border: 1px solid var(--color-light-gray);
  background: rgba(245, 242, 238, 0.4);
  transition:
    transform var(--t-base),
    border-color var(--t-base),
    box-shadow var(--t-base),
    background-color var(--t-base);
}

.error404__card:hover {
  transform: translateY(-3px);
  border-color: rgba(170, 132, 84, 0.45);
  box-shadow: var(--shadow-1);
  background: rgba(245, 242, 238, 0.7);
}

.error404__card h2 {
  margin: 8px 0 14px;
}

.error404__card p:last-child {
  color: rgba(27, 27, 27, 0.78);
}

@media (max-width: 1600px) {
  .error404__hero,
  .error404__sections {
    padding-left: 10%;
    padding-right: 10%;
  }
}

@media (max-width: 1200px) {
  .error404__hero,
  .error404__sections {
    padding-left: 8%;
    padding-right: 8%;
  }

  .error404__hero {
    min-height: 78vh;
  }
}

@media (max-width: 1024px) {
  .error404__hero,
  .error404__sections {
    padding-left: 7%;
    padding-right: 7%;
  }

  .error404__hero {
    min-height: 72vh;
    padding-top: 140px;
    padding-bottom: 80px;
  }

  .error404__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .error404__hero,
  .error404__sections {
    padding-left: 6%;
    padding-right: 6%;
  }

  .error404__hero {
    min-height: 68vh;
    padding-top: 130px;
    padding-bottom: 70px;
  }

  .error404__card {
    padding: 28px 22px;
  }
}

@media (max-width: 480px) {
  .error404__hero,
  .error404__sections {
    padding-left: 5%;
    padding-right: 5%;
  }

  .error404__hero {
    min-height: 62vh;
    padding-top: 120px;
    padding-bottom: 60px;
  }

  .error404__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .error404__actions .btn {
    width: 100%;
  }
}
