.section--surface {
  background-color: var(--color-surface);
}

.hero--restaurant .hero__overlay {
  background: linear-gradient(
      to bottom,
      rgba(10, 24, 48, 0.82),
      rgba(15, 23, 42, 0.7)
    ),
    radial-gradient(circle at top left, rgba(59, 130, 246, 0.45), transparent 60%);
}

.concept-grid,
.signature-grid,
.drinks-grid,
.interior-grid,
.dining-grid,
.social-grid,
.details-grid,
.reservation-grid {
  align-items: center;
  gap: var(--space-40);
}

.concept-list,
.drinks-list,
.reservation-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.concept-list li,
.drinks-list li,
.reservation-list li {
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: var(--space-12);
  font-size: 0.95rem;
  color: var(--color-text-muted);
}

.concept-list li::before,
.drinks-list li::before,
.reservation-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #38bdf8, #3b82f6);
}

.signature-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
  margin-top: var(--space-24);
}

.overlay-card__title {
  font-size: 1.15rem;
  margin-bottom: 0.35rem;
}

.overlay-card__text {
  font-size: 0.9rem;
  color: rgba(241, 245, 249, 0.9);
}

.reservation-cta {
  background: linear-gradient(135deg, #e0f2fe 0%, #f9fafb 45%, #ffffff 100%);
}

.reservation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-12);
  margin-top: var(--space-24);
}

.invitation-block {
  padding-block: var(--space-64);
}

.invitation-actions {
  justify-content: center;
  margin-top: var(--space-24);
}

@media (max-width: 767px) {
  .concept-grid,
  .signature-grid,
  .drinks-grid,
  .interior-grid,
  .dining-grid,
  .social-grid,
  .details-grid,
  .reservation-grid {
    gap: var(--space-32);
  }

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