.hero {
  position: relative;
}
.hero__grid {
  display: grid;
  gap: var(--space-10);
  align-items: center;
}
@media (min-width: 900px) {
  .hero__grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  }
}
.hero__content {
  max-width: 640px;
}
.hero__lead {
  font-size: var(--font-size-lg);
}
.hero__cta-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}
.hero__meta {
  margin-top: var(--space-4);
}
.hero__media {
  max-width: 520px;
  margin-left: auto;
}
.hero__image-frame {
  min-height: 260px;
}
@media (max-width: 768px) {
  .hero {
    padding-top: var(--space-12);
  }
}

.section--alt {
  background: radial-gradient(circle at top, rgba(21, 33, 58, 0.6), rgba(5, 6, 10, 0.98));
}

.gourmet__grid,
.atmosphere__grid,
.signature__grid,
.entertainment__grid,
.events__grid {
  align-items: center;
}
.gourmet__media,
.atmosphere__media,
.signature__media,
.entertainment__media {
  max-width: 520px;
}
.gourmet__list,
.signature__list,
.entertainment__list {
  margin-top: var(--space-3);
}
.gourmet__cta-group,
.signature__cta-group,
.entertainment__content a.btn,
.events__cta-group {
  margin-top: var(--space-4);
}
.gourmet__cta-group,
.signature__cta-group,
.events__cta-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.atmosphere__highlights {
  margin-top: var(--space-5);
}

.entertainment__list li::marker {
  color: var(--color-primary-strong);
}

.events__grid {
  gap: var(--space-10);
}
.events__cards {
  margin-top: var(--space-4);
}
.events__panel {
  max-width: 460px;
  margin-left: auto;
}
.events__form {
  margin-top: var(--space-4);
}
.events__form-grid {
  display: grid;
  gap: var(--space-4);
}
@media (min-width: 640px) {
  .events__form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.events__submit {
  width: 100%;
  margin-top: var(--space-4);
}

.testimonials__grid {
  margin-top: var(--space-6);
}
.testimonial__title {
  margin-bottom: var(--space-2);
}

.gallery__wrapper {
  text-align: center;
}
.gallery__preview {
  margin-top: var(--space-6);
}
.gallery__image-main {
  max-width: 900px;
  margin: 0 auto;
}

.cta-reservations__grid {
  display: flex;
  justify-content: center;
}
.cta-reservations__content {
  text-align: center;
}
.cta-reservations__links {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

@media (max-width: 768px) {
  .hero__media,
  .gourmet__media,
  .atmosphere__media,
  .signature__media,
  .entertainment__media,
  .events__panel {
    margin: 0 auto;
  }
}
