main {
  background-color: var(--color-bg);
}

.hero {
  min-height: 88vh;
}

.hero__content {
  max-width: 640px;
}

.hero__actions .btn {
  min-width: 190px;
}

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

.accueil-intro__cards {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.accueil-intro__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-top: var(--space-6);
}

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

.venue-apercu__figure {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
}

.venue-apercu__highlights {
  gap: var(--space-6);
  margin-top: var(--space-6);
}

.venue-apercu__title {
  margin-bottom: var(--space-2);
}

.experiences-grid__item {
  height: 100%;
}

.experiences-grid__item .badge {
  margin-bottom: var(--space-3);
}

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

.events-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.events-list__title {
  margin-bottom: var(--space-2);
}

.events-list__item {
  padding-bottom: var(--space-3);
  border-bottom: 1px solid rgba(0,0,0,0.04);
}

.events-reservation__cta {
  position: sticky;
  top: 6rem;
}

.reservation-form__submit {
  width: 100%;
  margin-top: var(--space-3);
}

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

.testimonials-grid {
  gap: var(--space-6);
}

.testimonials-grid__item blockquote {
  font-style: italic;
}

.testimonials-grid__author {
  margin-top: var(--space-4);
  font-size: var(--font-size-sm);
  color: var(--gray-600);
}

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

.news-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.news-list__title {
  margin-bottom: var(--space-2);
}

.actualites-community__community {
  align-self: stretch;
}

.community-links {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.community-cta {
  margin-top: var(--space-6);
}

.section-header--center {
  max-width: 720px;
}

.section--cta-final {
  padding-top: var(--space-12);
  padding-bottom: var(--space-20);
}

.cta-final {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  background: radial-gradient(circle at top left, var(--color-primary-soft), transparent 55%), var(--color-surface);
}

.cta-final__content {
  max-width: 520px;
}

.cta-final__content h2 {
  margin-bottom: var(--space-3);
}

.cta-final__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}

@media (max-width: 1024px) {
  .events-reservation__cta {
    position: static;
  }
}

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

  .accueil-intro,
  .venue-apercu,
  .events-reservation,
  .actualites-community {
    gap: var(--space-8);
  }

  .hero__content {
    max-width: 100%;
  }

  .hero__actions .btn {
    width: 100%;
  }

  .cta-final {
    padding: var(--space-6);
  }

  .cta-final__actions .btn {
    width: 100%;
  }
}
