.soirees-poker-page {
  --soirees-hero-max-width: 800px;
  --soirees-text-measure-wide: 70%;
  --soirees-text-measure-mid: 60%;
  --soirees-text-measure-narrow: 50%;
  --soirees-gap: var(--space-5);
  --soirees-grid-gap: var(--space-5);
}

/* Héro */
.soirees-hero {
  background: linear-gradient(135deg, var(--color-moss) 0%, var(--color-night-blue) 100%);
  padding-block: var(--space-8);
}

.soirees-hero__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  max-width: var(--soirees-hero-max-width);
  margin-inline: auto;
  text-align: center;
}

.soirees-hero__inner h1 {
  color: var(--color-ivory);
  margin-block-end: 0;
}

.soirees-hero__lead {
  width: 60%;
  margin-inline: auto;
  color: var(--color-ivory);
}

.soirees-hero__cta {
  margin-block-start: var(--space-3);
}

/* L'esprit */
.soirees-esprit__grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: var(--soirees-grid-gap);
  align-items: start;
}

.soirees-esprit__text {
  min-width: 0;
}

.soirees-esprit__text h2 {
  margin-block-end: var(--space-4);
}

.soirees-esprit__text h3 {
  margin-block-start: var(--space-4);
  margin-block-end: var(--space-2);
}

.soirees-esprit__text p {
  width: var(--soirees-text-measure-wide);
  margin-block-end: var(--space-3);
}

.soirees-esprit__values {
  width: var(--soirees-text-measure-wide);
  margin-block-start: var(--space-3);
}

.soirees-esprit__media {
  min-width: 0;
}

.soirees-esprit__media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-image);
}

.soirees-esprit__media figcaption,
.soirees-ambiance__media figcaption,
.soirees-gastronomie__media figcaption {
  font-size: var(--text-small-size);
  color: var(--color-moss-dark);
  margin-block-start: var(--space-2);
}

/* Formats */
.soirees-formats {
  padding-block: var(--space-8);
}

.soirees-formats h2 {
  color: var(--color-ivory);
  margin-block-end: var(--space-3);
}

.soirees-formats__intro {
  color: var(--color-ivory);
  width: var(--soirees-text-measure-wide);
  margin-block-end: var(--space-5);
}

.soirees-formats__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--soirees-grid-gap);
}

.soirees-format-card {
  min-width: 0;
  background-color: var(--color-ivory-dark);
  border: var(--border-thin) solid var(--color-burnt-orange);
  border-radius: var(--radius-card);
  padding: var(--card-padding);
  box-shadow: var(--shadow-soft);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.soirees-format-card:hover {
  transform: scale(1.02);
  box-shadow: var(--shadow-soft-hover);
}

.soirees-format-card h3 {
  color: var(--color-moss-dark);
  margin-block-end: var(--space-3);
}

.soirees-format-card p {
  color: var(--color-night-blue);
  margin-block-end: var(--space-3);
}

.soirees-format-card ul {
  margin-block-start: var(--space-3);
  padding-inline-start: var(--space-4);
  color: var(--color-night-blue);
}

/* Ambiance poker room */
.soirees-ambiance {
  background-color: var(--color-night-blue);
  padding-block: var(--space-8);
}

.soirees-ambiance__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--soirees-grid-gap);
  align-items: start;
}

.soirees-ambiance__text {
  min-width: 0;
}

.soirees-ambiance__text h2,
.soirees-ambiance__text h3 {
  color: var(--color-ivory);
}

.soirees-ambiance__text h2 {
  margin-block-end: var(--space-4);
}

.soirees-ambiance__text h3 {
  margin-block-start: var(--space-4);
  margin-block-end: var(--space-2);
}

.soirees-ambiance__text p {
  color: var(--color-ivory);
  width: var(--soirees-text-measure-wide);
  margin-block-end: var(--space-3);
}

.soirees-ambiance__media {
  min-width: 0;
}

.soirees-ambiance__media img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: var(--radius-image);
}

.soirees-ambiance__media figcaption {
  color: var(--color-ivory);
}

/* Déroulement */
.soirees-deroulement__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
}

.soirees-deroulement__inner h2 {
  margin-block-end: 0;
}

.soirees-deroulement__intro {
  width: var(--soirees-text-measure-mid);
  margin-inline: auto;
}

.soirees-deroulement__steps {
  list-style: none;
  counter-reset: soirees-step;
  width: 100%;
  text-align: left;
  margin-block-start: var(--space-4);
}

.soirees-deroulement__steps li {
  counter-increment: soirees-step;
  position: relative;
  padding-inline-start: var(--space-6);
  margin-block-end: var(--space-3);
  min-height: var(--space-6);
}

.soirees-deroulement__steps li::before {
  content: counter(soirees-step);
  position: absolute;
  left: 0;
  top: 0;
  width: var(--space-5);
  height: var(--space-5);
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-burnt-orange);
  color: var(--color-ivory);
  border-radius: 50%;
  font-weight: 600;
}

.soirees-deroulement__steps li span {
  font-weight: 600;
  color: var(--color-moss-dark);
}

/* Gastronomie */
.soirees-gastronomie {
  padding-block: var(--space-8);
}

.soirees-gastronomie__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: var(--soirees-grid-gap);
  align-items: start;
}

.soirees-gastronomie__media {
  min-width: 0;
}

.soirees-gastronomie__media img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-image);
}

.soirees-gastronomie__media figcaption {
  color: var(--color-ivory);
}

.soirees-gastronomie__text {
  min-width: 0;
}

.soirees-gastronomie__text h2,
.soirees-gastronomie__text h3 {
  color: var(--color-ivory);
}

.soirees-gastronomie__text h2 {
  margin-block-end: var(--space-4);
}

.soirees-gastronomie__text h3 {
  margin-block-start: var(--space-4);
  margin-block-end: var(--space-2);
}

.soirees-gastronomie__text p {
  color: var(--color-ivory);
  width: var(--soirees-text-measure-wide);
  margin-block-end: var(--space-3);
}

/* Réservation */
.soirees-reservation {
  background-color: var(--color-night-blue);
  padding-block: var(--space-8);
}

.soirees-reservation__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
}

.soirees-reservation__inner h2,
.soirees-reservation__inner h3 {
  color: var(--color-ivory);
  margin-block-end: 0;
}

.soirees-reservation__inner p {
  color: var(--color-ivory);
  width: var(--soirees-text-measure-mid);
  margin-inline: auto;
}

.soirees-reservation__contacts,
.soirees-reservation__dates {
  list-style: none;
  padding-inline-start: 0;
  color: var(--color-ivory);
  width: 100%;
  text-align: left;
}

.soirees-reservation__contacts li,
.soirees-reservation__dates li {
  margin-block-end: var(--space-2);
}

.soirees-reservation__contacts a {
  color: var(--color-burnt-orange);
}

.soirees-reservation__cta {
  margin-block-start: var(--space-3);
}

/* Mentions */
.soirees-mentions__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  max-width: 500px;
  margin-inline: auto;
  text-align: center;
}

.soirees-mentions__inner h2 {
  margin-block-end: 0;
}

.soirees-mentions__inner p {
  font-size: var(--text-small-size);
  color: var(--color-night-blue);
  width: 100%;
}

/* Responsive */
@media (max-width: 1024px) {
  .soirees-esprit__grid,
  .soirees-ambiance__grid,
  .soirees-gastronomie__grid {
    grid-template-columns: 1fr;
  }

  .soirees-esprit__media,
  .soirees-ambiance__media,
  .soirees-gastronomie__media {
    order: -1;
  }

  .soirees-esprit__text p,
  .soirees-esprit__values,
  .soirees-ambiance__text p,
  .soirees-gastronomie__text p,
  .soirees-formats__intro {
    width: 100%;
  }

  .soirees-formats__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .soirees-hero__lead {
    width: 100%;
  }

  .soirees-formats__cards {
    grid-template-columns: 1fr;
  }

  .soirees-deroulement__intro,
  .soirees-reservation__inner p {
    width: 100%;
  }

  .soirees-deroulement__inner,
  .soirees-reservation__inner,
  .soirees-mentions__inner {
    text-align: left;
    align-items: flex-start;
  }

  .soirees-deroulement__steps {
    text-align: left;
  }

  .soirees-hero__cta,
  .soirees-reservation__cta {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .soirees-hero {
    padding-block: var(--space-6);
  }

  .soirees-formats,
  .soirees-ambiance,
  .soirees-gastronomie,
  .soirees-reservation {
    padding-block: var(--space-6);
  }

  .soirees-esprit__media img,
  .soirees-ambiance__media img,
  .soirees-gastronomie__media img {
    aspect-ratio: auto;
  }
}
