.hero {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
  color: var(--color-text);
}

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

.hero__media-frame {
  height: 100%;
  border-radius: 0;
}

.hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: radial-gradient(circle at top, rgba(0, 0, 0, 0.25), transparent 55%),
              linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(15, 15, 18, 0.98));
}

.hero__content {
  position: relative;
  z-index: 2;
}

.hero__inner {
  max-width: 640px;
}

.hero__inner h1 {
  margin-top: var(--space-4);
  margin-bottom: var(--space-4);
}

.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.intro__grid {
  align-items: flex-start;
  gap: var(--space-10);
}

.intro__details {
  align-self: stretch;
}

.intro__list {
  margin-bottom: var(--space-4);
}

.intro__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.seasonal__grid {
  align-items: center;
  gap: var(--space-10);
}

.seasonal__highlights {
  margin-top: var(--space-4);
}

.seasonal__cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.drinks__grid {
  align-items: center;
  gap: var(--space-10);
}

.drinks__columns {
  margin-top: var(--space-4);
}

.evenings__grid {
  align-items: center;
  gap: var(--space-10);
}

.evenings__list {
  margin-bottom: var(--space-3);
}

.evenings__badges {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}

.evenings__cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.features__header {
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}

.features__grid {
  align-items: stretch;
}

.spotlight__grid {
  align-items: stretch;
  gap: var(--space-10);
}

.spotlight__list {
  margin-bottom: var(--space-4);
}

.gallery-teaser__grid {
  align-items: center;
  gap: var(--space-10);
}

.cta-reservations__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--space-8);
  align-items: center;
}

.cta-reservations__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.cta-reservations__note {
  font-size: var(--font-size-xs);
  color: rgba(245, 241, 232, 0.7);
}

@media (max-width: 900px) {
  .hero__inner {
    max-width: 100%;
  }

  .cta-reservations__inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .section {
    padding-top: var(--space-12);
    padding-bottom: var(--space-12);
  }

  .hero.full-height-section {
    min-height: 80vh;
  }
}
