

:root {
  --color-creme-fume: #F5F0E8;
  --color-jaune-luciole: #F7E9A0;
  --color-argile: #C4A484;
  --color-vert-bouteille: #2E4A3A;
  --color-prune-sombre: #3B2A3B;
  --color-anthracite: #2A2A2A;
  --color-creme-fume-80: rgba(245, 240, 232, 0.8);
  --color-anthracite-20: rgba(42, 42, 42, 0.2);
  --color-anthracite-08: rgba(42, 42, 42, 0.08);

  --font-heading: "Cormorant Garamond", "Times New Roman", serif;
  --font-body: "Inter", "Helvetica Neue", Arial, sans-serif;

  --text-display-size: clamp(2.5rem, 5vw + 1rem, 3.5rem);
  --text-display-leading: 1.1;
  --text-display-weight: 600;

  --text-h1-size: clamp(2rem, 3.5vw + 0.75rem, 2.5rem);
  --text-h1-leading: 1.15;
  --text-h1-weight: 600;

  --text-h2-size: 1.75rem;
  --text-h2-leading: 1.2;
  --text-h2-weight: 600;

  --text-h3-size: 1.25rem;
  --text-h3-leading: 1.3;
  --text-h3-weight: 600;

  --text-body-size: 1rem;
  --text-body-leading: 1.6;
  --text-body-weight: 400;

  --text-small-size: 0.875rem;
  --text-small-leading: 1.5;
  --text-small-weight: 400;

  --text-caption-size: 0.75rem;
  --text-caption-leading: 1.4;
  --text-caption-weight: 500;
  --text-caption-tracking: 0.05em;

  --space-2: 2px;
  --space-4: 4px;
  --space-8: 8px;
  --space-16: 16px;
  --space-24: 24px;
  --space-32: 32px;
  --space-48: 48px;
  --space-64: 64px;
  --space-96: 96px;
  --space-128: 128px;

  --container-max: 1200px;
  --container-gutter-mobile: 24px;
  --container-gutter-desktop: 48px;

  --surface-overlay-prune: rgba(59, 42, 59, 0.95);

  --border-thin: 1px;
  --border-color-argile: var(--color-argile);
  --border-color-anthracite-20: var(--color-anthracite-20);

  --shadow-diffuse: 0 4px 20px var(--color-anthracite-08);

  --radius-0: 0;
  --radius-2: 2px;
  --radius-4: 4px;

  --transition-slow: 200ms ease-out;
  --transition-medium: 250ms ease-out;
  --transition-fast: 300ms ease-out;

  --pulse-duration: 3s;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  font-family: var(--font-body);
  font-size: var(--text-body-size);
  font-weight: var(--text-body-weight);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
  background-color: var(--color-creme-fume);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

img,
picture,
svg,
video,
canvas {
  display: block;
  max-width: 100%;
  height: auto;
}

input,
button,
textarea,
select {
  font: inherit;
  color: inherit;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

a {
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-heading);
  font-weight: var(--text-h1-weight);
  color: inherit;
}

h1 {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  margin-block-end: var(--space-24);
}

h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-16);
}

h3 {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  margin-block-end: var(--space-8);
}

p {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  margin-block-end: var(--space-24);
}

p:last-child {
  margin-block-end: 0;
}

.display {
  font-family: var(--font-heading);
  font-size: var(--text-display-size);
  line-height: var(--text-display-leading);
  font-weight: var(--text-display-weight);
  margin-block-end: var(--space-24);
}

.small {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  font-weight: var(--text-small-weight);
}

.caption {
  font-size: var(--text-caption-size);
  line-height: var(--text-caption-leading);
  font-weight: var(--text-caption-weight);
  letter-spacing: var(--text-caption-tracking);
  text-transform: uppercase;
}

blockquote {
  margin-block-end: var(--space-24);
  padding-inline-start: var(--space-16);
  border-inline-start: 2px solid var(--color-argile);
  font-style: italic;
}

blockquote:last-child {
  margin-block-end: 0;
}

figure {
  margin-block-end: var(--space-24);
}

figure:last-child {
  margin-block-end: 0;
}

figcaption {
  font-size: var(--text-caption-size);
  line-height: var(--text-caption-leading);
  font-weight: var(--text-caption-weight);
  letter-spacing: var(--text-caption-tracking);
  text-transform: uppercase;
  margin-block-start: var(--space-8);
  color: var(--color-anthracite);
}

address {
  font-style: normal;
}

.container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .container {
    padding-inline: var(--container-gutter-desktop);
  }
}

.surface-dark {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.surface-prune {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
}

.surface-anthracite {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
}

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

.surface-creme {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.card {
  background: none;
  border-radius: var(--radius-4);
  padding: var(--space-32);
}

.card > :last-child {
  margin-block-end: 0;
}

.panel {
  background: none;
  border-radius: var(--radius-0);
  padding: var(--space-48);
}

.panel > :last-child {
  margin-block-end: 0;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-8);
  padding: 12px 24px;
  border-radius: var(--radius-2);
  font-family: var(--font-body);
  font-size: var(--text-small-size);
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  transition: background-color var(--transition-slow), color var(--transition-slow), border-color var(--transition-slow);
  border: 1px solid transparent;
}

.btn-primary {
  background-color: var(--color-jaune-luciole);
  color: var(--color-anthracite);
}

.btn-primary:hover {
  background-color: #e8d98a;
}

.btn-secondary {
  background-color: transparent;
  border-color: var(--color-anthracite);
  color: var(--color-anthracite);
}

.btn-secondary:hover {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
}

.btn-dark {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
}

.btn-dark:hover {
  background-color: #3a3a3a;
}

.btn-outline-light {
  background-color: transparent;
  border-color: var(--color-creme-fume);
  color: var(--color-creme-fume);
}

.btn-outline-light:hover {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.link-accent {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--space-8);
  font-weight: 500;
  border-bottom: 1px solid var(--color-argile);
  transition: border-color var(--transition-slow);
}

.link-accent::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  opacity: 0.8;
  transition: opacity var(--transition-slow);
  flex-shrink: 0;
}

.link-accent:hover {
  border-bottom-width: 2px;
}

.link-accent:hover::before {
  opacity: 1;
}

.link-accent-dark {
  color: var(--color-creme-fume);
  border-bottom-color: var(--color-argile);
}

.link-accent-dark::before {
  background-color: var(--color-jaune-luciole);
}

.dot {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  flex-shrink: 0;
}

.dot-sm {
  width: 3px;
  height: 3px;
}

.dot-lg {
  width: 6px;
  height: 6px;
}

.pulse {
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

@keyframes luciole-pulse {
  0%, 100% {
    opacity: 0.7;
  }
  50% {
    opacity: 1;
  }
}

.content-list {
  list-style: none;
}

.content-list li {
  position: relative;
  padding-inline-start: var(--space-16);
  margin-block-end: var(--space-8);
}

.content-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
}

.content-list li:last-child {
  margin-block-end: 0;
}

.flex {
  display: flex;
}

.flex-col {
  display: flex;
  flex-direction: column;
}

.flex-wrap {
  display: flex;
  flex-wrap: wrap;
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-between {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-16);
}

.flex-start {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--space-16);
}

.flex-end {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: var(--space-16);
}

.flex-col-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-16);
}

.flex-col-start {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--space-16);
}

.flex-col-end {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  gap: var(--space-16);
}

.flex > *,
.flex-col > *,
.flex-wrap > *,
.flex-center > *,
.flex-between > *,
.flex-start > *,
.flex-end > *,
.flex-col-center > *,
.flex-col-start > *,
.flex-col-end > * {
  min-width: 0;
}

.flex-1 {
  flex: 1 1 0%;
  min-width: 0;
}

.flex-auto {
  flex: 0 0 auto;
}

.flex-grow {
  flex: 1 0 auto;
  min-width: 0;
}

.flex-shrink {
  flex: 0 1 auto;
  min-width: 0;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: absolute;
  top: -100%;
  left: var(--space-16);
  z-index: 9999;
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
  padding: var(--space-8) var(--space-16);
  border-radius: var(--radius-2);
  transition: top var(--transition-fast);
}

.skip-link:focus {
  top: var(--space-16);
}

input,
textarea,
select {
  width: 100%;
  padding: var(--space-8) var(--space-16);
  border: 1px solid var(--color-argile);
  border-radius: var(--radius-2);
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  font-family: var(--font-body);
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  transition: border-color var(--transition-slow);
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--color-vert-bouteille);
}

textarea {
  min-height: 120px;
  resize: vertical;
}

label {
  display: block;
  font-size: var(--text-small-size);
  font-weight: 500;
  margin-block-end: var(--space-4);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  .pulse {
    animation: none;
    opacity: 1;
  }
}


.site-header {
  position: relative;
  z-index: 1000;
  background-color: var(--color-creme-fume);
  border-bottom: 1px solid var(--color-anthracite-20);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-16);
  min-height: 64px;
  padding-block: var(--space-8);
}

.site-header__brand {
  display: inline-flex;
  align-items: center;
  gap: var(--space-8);
  flex-shrink: 0;
  min-width: 0;
}

.site-header__logo {
  width: 40px;
  height: 40px;
  object-fit: contain;
  flex-shrink: 0;
}

.site-header__brand-text {
  font-family: var(--font-heading);
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 600;
  color: var(--color-anthracite);
  white-space: nowrap;
}

.site-header__toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  padding: 0;
  background: transparent;
  border: 1px solid var(--color-anthracite-20);
  border-radius: var(--radius-2);
  cursor: pointer;
  flex-shrink: 0;
}

.site-header__toggle-line {
  display: block;
  width: 20px;
  height: 2px;
  background-color: var(--color-anthracite);
  transition: transform var(--transition-slow), opacity var(--transition-slow);
}

.site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(2) {
  opacity: 0;
}

.site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.site-header__toggle:focus-visible {
  outline: 2px solid var(--color-jaune-luciole);
  outline-offset: 2px;
}

.site-header__nav {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.site-header__nav-list {
  display: flex;
  align-items: center;
  gap: var(--space-24);
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-header__nav-item {
  margin: 0;
  padding: 0;
}

.site-header__nav-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-8);
  font-family: var(--font-body);
  font-size: var(--text-small-size);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--color-anthracite);
  text-decoration: none;
  padding-block: var(--space-8);
  border-bottom: 1px solid transparent;
  transition: border-color var(--transition-slow), color var(--transition-slow);
  white-space: nowrap;
}

.site-header__nav-link::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  opacity: 0;
  transition: opacity var(--transition-slow);
  flex-shrink: 0;
}

.site-header__nav-link:hover {
  border-bottom-color: var(--color-argile);
  color: var(--color-vert-bouteille);
}

.site-header__nav-link:hover::before {
  opacity: 0.8;
}

.site-header__nav-link[aria-current="page"] {
  border-bottom-color: var(--color-argile);
  color: var(--color-vert-bouteille);
}

.site-header__nav-link[aria-current="page"]::before {
  opacity: 1;
}

@media (max-width: 767px) {
  .site-header__inner {
    min-height: 56px;
  }

  .site-header__logo {
    width: 32px;
    height: 32px;
  }

  .site-header__brand-text {
    font-size: 1.125rem;
  }

  .site-header__toggle {
    display: flex;
  }

  .site-header__nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: var(--color-prune-sombre);
    border-bottom: 1px solid var(--color-anthracite-20);
    box-shadow: var(--shadow-diffuse);
    max-height: calc(100vh - 100%);
    overflow-y: auto;
    display: none;
    padding: var(--space-16);
    z-index: 1001;
  }

  .site-header__nav.is-open {
    display: block;
  }

  .site-header__nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-8);
  }

  .site-header__nav-link {
    display: flex;
    align-items: center;
    gap: var(--space-8);
    padding: var(--space-8) var(--space-16);
    color: var(--color-creme-fume);
    border-bottom: none;
    border-radius: var(--radius-2);
    font-size: 1rem;
  }

  .site-header__nav-link::before {
    background-color: var(--color-jaune-luciole);
    opacity: 0.8;
  }

  .site-header__nav-link:hover,
  .site-header__nav-link[aria-current="page"] {
    background-color: rgba(245, 240, 232, 0.1);
    color: var(--color-creme-fume);
    border-bottom: none;
  }

  .site-header__nav-link:hover::before,
  .site-header__nav-link[aria-current="page"]::before {
    opacity: 1;
  }
}

@media (min-width: 768px) {
  .site-header__inner {
    min-height: 72px;
  }

  .site-header__logo {
    width: 40px;
    height: 40px;
  }

  .site-header__brand-text {
    font-size: 1.375rem;
  }
}


.site-footer {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
  padding-block: var(--space-48) var(--space-32);
  margin-top: var(--space-96);
}

.site-footer__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
}

.site-footer__brand {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.site-footer__brand-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-8);
  color: inherit;
  text-decoration: none;
}

.site-footer__logo {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.site-footer__brand-text {
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--color-creme-fume);
}

.site-footer__tagline {
  font-size: var(--text-small-size);
  color: var(--color-creme-fume-80);
  margin: 0;
}

.site-footer__nav-list,
.site-footer__legal-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-16) var(--space-24);
}

.site-footer__nav a,
.site-footer__legal a {
  color: var(--color-creme-fume);
  text-decoration: none;
  font-size: var(--text-small-size);
  transition: color var(--transition-slow);
}

.site-footer__nav a:hover,
.site-footer__legal a:hover {
  color: var(--color-jaune-luciole);
}

.site-footer__legal {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.site-footer__address {
  font-size: var(--text-small-size);
  color: var(--color-creme-fume-80);
  margin: 0;
}

.site-footer__copyright {
  font-size: var(--text-caption-size);
  letter-spacing: var(--text-caption-tracking);
  text-transform: uppercase;
  color: var(--color-creme-fume-80);
  margin: 0;
}

@media (min-width: 768px) {
  .site-footer__inner {
    grid-template-columns: 1fr 2fr 1fr;
    align-items: start;
  }

  .site-footer__brand {
    grid-column: 1;
  }

  .site-footer__nav {
    grid-column: 2;
  }

  .site-footer__legal {
    grid-column: 3;
    align-items: flex-end;
    text-align: right;
  }

  .site-footer__legal-list {
    justify-content: flex-end;
  }
}

.consent-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1100;
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
  padding: var(--space-16);
  box-shadow: 0 -4px 20px var(--color-anthracite-08);
}

.consent-banner[hidden] {
  display: none !important;
}

.consent-banner__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  max-width: var(--container-max);
  margin-inline: auto;
}

.consent-banner__text {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-creme-fume-80);
  margin: 0;
}

.consent-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
}

.consent-banner__button {
  padding: var(--space-8) var(--space-16);
  border-radius: var(--radius-2);
  font-size: var(--text-small-size);
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color var(--transition-slow), color var(--transition-slow), border-color var(--transition-slow);
  border: 1px solid transparent;
}

.consent-banner__button--accept {
  background-color: var(--color-jaune-luciole);
  color: var(--color-anthracite);
}

.consent-banner__button--accept:hover {
  background-color: #e8d98a;
}

.consent-banner__button--reject {
  background-color: transparent;
  border-color: var(--color-creme-fume);
  color: var(--color-creme-fume);
}

.consent-banner__button--reject:hover {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.consent-banner__button:focus-visible {
  outline: 2px solid var(--color-jaune-luciole);
  outline-offset: 2px;
}

@media (min-width: 768px) {
  .consent-banner__content {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

  .consent-banner__actions {
    flex-shrink: 0;
  }
}

.age-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-16);
}

.age-modal[hidden] {
  display: none !important;
}

.age-modal__overlay {
  position: absolute;
  inset: 0;
  background-color: var(--surface-overlay-prune);
  backdrop-filter: blur(2px);
}

.age-modal__dialog {
  position: relative;
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  border-radius: var(--radius-4);
  padding: var(--space-32);
  max-width: 480px;
  width: 100%;
  box-shadow: var(--shadow-diffuse);
  border: 1px solid var(--color-jaune-luciole);
  text-align: center;
}

.age-modal__title {
  font-family: var(--font-heading);
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: 600;
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
}

.age-modal__description {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-creme-fume-80);
  margin-block-end: var(--space-24);
  max-width: 36ch;
  margin-inline: auto;
}

.age-modal__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.age-modal__button {
  padding: 12px 24px;
  border-radius: var(--radius-2);
  font-size: var(--text-small-size);
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color var(--transition-slow), color var(--transition-slow), border-color var(--transition-slow);
  border: 1px solid transparent;
}

.age-modal__button--confirm {
  background-color: var(--color-jaune-luciole);
  color: var(--color-anthracite);
}

.age-modal__button--confirm:hover {
  background-color: #e8d98a;
}

.age-modal__button--decline {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
  border-color: var(--color-creme-fume);
}

.age-modal__button--decline:hover {
  background-color: #3a3a3a;
}

.age-modal__button:focus-visible {
  outline: 2px solid var(--color-jaune-luciole);
  outline-offset: 2px;
}

@media (min-width: 768px) {
  .age-modal__actions {
    flex-direction: row;
    justify-content: center;
  }
}


/* Page-owned styles for confidentialite */
.confidentialite-main {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  padding-block: var(--space-64) var(--space-96);
}

@media (min-width: 768px) {
  .confidentialite-main {
    padding-inline: var(--container-gutter-desktop);
    padding-block: var(--space-96) var(--space-128);
  }
}

.confidentialite-section {
  margin-block-end: var(--space-64);
}

@media (min-width: 768px) {
  .confidentialite-section {
    margin-block-end: var(--space-96);
  }
}

.confidentialite-section:last-child {
  margin-block-end: 0;
}

/* Introduction */
.confidentialite-intro__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.confidentialite-dot--intro {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

.confidentialite-intro__titre {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  margin-block-end: 0;
  margin-inline-start: 0;
}

@media (min-width: 768px) {
  .confidentialite-intro__titre {
    margin-inline-start: var(--space-24);
  }
}

.confidentialite-intro__contenu {
  width: 100%;
  max-width: 70ch;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
  align-items: flex-start;
}

.confidentialite-intro__date {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

.confidentialite-liste {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  width: 100%;
}

.confidentialite-liste li {
  position: relative;
  padding-inline-start: var(--space-16);
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
}

.confidentialite-liste li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
}

/* Données collectées */
.confidentialite-donnees__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-32);
}

.confidentialite-donnees__titre {
  margin-block-end: 0;
  margin-inline-start: 0;
}

@media (min-width: 768px) {
  .confidentialite-donnees__titre {
    margin-inline-start: var(--space-16);
  }
}

.confidentialite-donnees__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
  width: 100%;
}

@media (min-width: 768px) {
  .confidentialite-donnees__grille {
    grid-template-columns: 3fr 2fr;
    gap: var(--space-48);
  }
}

.confidentialite-donnees__bloc {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.confidentialite-donnees__bloc h3 {
  margin-block-end: 0;
}

.confidentialite-donnees__bloc p,
.confidentialite-donnees__bloc ul {
  max-width: 65ch;
}

.confidentialite-donnees__note {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  border-left: 2px solid var(--color-argile);
  padding-inline-start: var(--space-16);
  margin-block-end: 0;
}

/* Destinataires */
.confidentialite-destinataires {
  background-color: var(--color-argile);
  padding-block: var(--space-64);
  margin-inline: calc(-1 * var(--container-gutter-mobile));
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .confidentialite-destinataires {
    margin-inline: calc(-1 * var(--container-gutter-desktop));
    padding-inline: var(--container-gutter-desktop);
    padding-block: var(--space-96);
  }
}

.confidentialite-destinataires__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-32);
  align-items: center;
}

.confidentialite-destinataires__titre {
  margin-block-end: 0;
  text-align: center;
  width: 100%;
}

@media (min-width: 768px) {
  .confidentialite-destinataires__titre {
    margin-inline-end: var(--space-24);
  }
}

.confidentialite-destinataires__contenu {
  width: 100%;
  max-width: 60%;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
  align-items: center;
  text-align: center;
}

.confidentialite-destinataires__contenu p,
.confidentialite-destinataires__contenu ul {
  max-width: 70ch;
}

.confidentialite-destinataires__contenu .confidentialite-liste {
  text-align: left;
  align-items: flex-start;
}

.confidentialite-destinataires__note {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

/* Conservation */
.confidentialite-conservation__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-32);
}

.confidentialite-conservation__titre {
  margin-block-end: 0;
  margin-inline-start: 0;
}

@media (min-width: 768px) {
  .confidentialite-conservation__titre {
    margin-inline-start: var(--space-16);
  }
}

.confidentialite-conservation__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
  width: 100%;
}

@media (min-width: 768px) {
  .confidentialite-conservation__grille {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-48);
  }
}

.confidentialite-conservation__bloc {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.confidentialite-conservation__bloc h3 {
  margin-block-end: 0;
}

.confidentialite-conservation__bloc p,
.confidentialite-conservation__bloc ul {
  max-width: 65ch;
}

/* Droits */
.confidentialite-droits {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-64);
  margin-inline: calc(-1 * var(--container-gutter-mobile));
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .confidentialite-droits {
    margin-inline: calc(-1 * var(--container-gutter-desktop));
    padding-inline: var(--container-gutter-desktop);
    padding-block: var(--space-96);
  }
}

.confidentialite-droits__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-32);
  align-items: flex-start;
}

.confidentialite-droits__titre {
  margin-block-end: 0;
  margin-inline-start: 0;
}

@media (min-width: 768px) {
  .confidentialite-droits__titre {
    margin-inline-start: var(--space-24);
  }
}

.confidentialite-droits__contenu {
  width: 100%;
  max-width: 60%;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
  align-items: flex-start;
  margin-inline-start: auto;
}

.confidentialite-droits__contenu p,
.confidentialite-droits__contenu ul {
  max-width: 70ch;
}

.confidentialite-droits__contenu .confidentialite-liste {
  color: var(--color-creme-fume);
}

.confidentialite-droits__contenu .confidentialite-liste li::before {
  background-color: var(--color-jaune-luciole);
}

.confidentialite-droits__contact {
  font-style: normal;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  margin-block-start: var(--space-16);
}

.confidentialite-droits__contact p {
  margin-block-end: 0;
  color: var(--color-creme-fume-80);
}

.confidentialite-droits__contact a {
  color: var(--color-creme-fume);
  border-bottom: 1px solid var(--color-argile);
  transition: border-color var(--transition-slow);
}

.confidentialite-droits__contact a:hover {
  border-bottom-width: 2px;
}

/* Modifications */
.confidentialite-modifications__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-32);
  align-items: center;
}

.confidentialite-modifications__titre {
  margin-block-end: 0;
  text-align: center;
  width: 100%;
}

@media (min-width: 768px) {
  .confidentialite-modifications__titre {
    margin-inline-end: var(--space-24);
  }
}

.confidentialite-modifications__contenu {
  width: 100%;
  max-width: 50%;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
  align-items: center;
  text-align: center;
}

.confidentialite-modifications__contenu p,
.confidentialite-modifications__contenu ul {
  max-width: 65ch;
}

.confidentialite-modifications__contenu .confidentialite-liste {
  text-align: left;
  align-items: flex-start;
}

.confidentialite-modifications__date {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

/* Responsive adjustments */
@media (max-width: 767px) {
  .confidentialite-destinataires__contenu,
  .confidentialite-droits__contenu,
  .confidentialite-modifications__contenu {
    max-width: 100%;
    margin-inline-start: 0;
  }

  .confidentialite-droits__contenu {
    align-items: flex-start;
  }

  .confidentialite-destinataires__contenu,
  .confidentialite-modifications__contenu {
    align-items: flex-start;
    text-align: left;
  }

  .confidentialite-destinataires__contenu .confidentialite-liste,
  .confidentialite-modifications__contenu .confidentialite-liste {
    align-items: flex-start;
    text-align: left;
  }

  .confidentialite-destinataires__titre,
  .confidentialite-modifications__titre {
    text-align: left;
    margin-inline-end: 0;
  }

  .confidentialite-intro__contenu,
  .confidentialite-donnees__bloc p,
  .confidentialite-donnees__bloc ul,
  .confidentialite-conservation__bloc p,
  .confidentialite-conservation__bloc ul,
  .confidentialite-droits__contenu p,
  .confidentialite-droits__contenu ul,
  .confidentialite-modifications__contenu p,
  .confidentialite-modifications__contenu ul {
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .confidentialite-dot--intro {
    animation: none;
    opacity: 1;
  }
}


/* Page-owned styles for La Carte */

.la-carte-intro {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.la-carte-intro__inner {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-48);
  align-items: start;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.la-carte-intro__text {
  min-width: 0;
}

.la-carte-intro__text .caption {
  margin-block-end: var(--space-16);
}

.la-carte-intro__text h2 {
  margin-block-end: var(--space-24);
  max-width: 22ch;
  margin-inline-start: 0;
}

.la-carte-intro__text > p {
  margin-block-end: var(--space-24);
}

.la-carte-intro__list {
  margin-block-start: var(--space-8);
}

.la-carte-intro__figure {
  margin: 0;
  min-width: 0;
  align-self: start;
}

.la-carte-intro__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.la-carte-intro__figure figcaption {
  margin-block-start: var(--space-8);
}

.la-carte-section {
  padding-block: var(--space-64);
}

.la-carte-section--entrees {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.la-carte-section--plats {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
}

.la-carte-section--desserts {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.la-carte-section--boissons {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.la-carte-section__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.la-carte-section__inner h3 {
  margin-block-end: var(--space-16);
  max-width: 22ch;
}

.la-carte-section__inner > p {
  margin-block-end: var(--space-24);
}

.la-carte-section__list {
  margin-block-start: var(--space-8);
}

.la-carte-section--entrees .la-carte-section__inner h3 {
  margin-inline-start: auto;
  margin-inline-end: 0;
}

.la-carte-section--plats .la-carte-section__inner h3 {
  margin-inline-start: 0;
  margin-inline-end: auto;
}

.la-carte-section--desserts .la-carte-section__inner h3 {
  margin-inline-start: auto;
  margin-inline-end: 0;
}

.la-carte-section--boissons .la-carte-section__inner h3 {
  margin-inline-start: 0;
  margin-inline-end: auto;
}

.la-carte-suggestions {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.la-carte-suggestions__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--space-48);
  align-items: start;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.la-carte-suggestions__text {
  min-width: 0;
}

.la-carte-suggestions__text h3 {
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
  max-width: 22ch;
}

.la-carte-suggestions__text > p {
  color: var(--color-creme-fume-80);
  margin-block-end: var(--space-24);
}

.la-carte-suggestions__list {
  margin-block-start: var(--space-8);
}

.la-carte-suggestions__list li {
  color: var(--color-creme-fume-80);
}

.la-carte-suggestions__list li::before {
  background-color: var(--color-jaune-luciole);
}

.la-carte-suggestions__figure {
  margin: 0;
  min-width: 0;
  align-self: start;
}

.la-carte-suggestions__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.la-carte-suggestions__figure figcaption {
  color: var(--color-creme-fume-80);
  margin-block-start: var(--space-8);
}

.la-carte-poker {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.la-carte-poker__inner {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-48);
  align-items: start;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.la-carte-poker__text {
  min-width: 0;
}

.la-carte-poker__text h3 {
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
  max-width: 22ch;
}

.la-carte-poker__text > p {
  color: var(--color-creme-fume-80);
  margin-block-end: var(--space-24);
}

.la-carte-poker__list {
  margin-block-start: var(--space-8);
}

.la-carte-poker__list li {
  color: var(--color-creme-fume-80);
}

.la-carte-poker__list li::before {
  background-color: var(--color-jaune-luciole);
}

.la-carte-poker__figure {
  margin: 0;
  min-width: 0;
  align-self: start;
}

.la-carte-poker__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.la-carte-poker__figure figcaption {
  color: var(--color-creme-fume-80);
  margin-block-start: var(--space-8);
}

.la-carte-infos {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-64);
}

.la-carte-infos__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  text-align: center;
}

.la-carte-infos__inner h3 {
  margin-block-end: var(--space-16);
}

.la-carte-infos__inner > p {
  margin-inline: auto;
  margin-block-end: var(--space-24);
}

.la-carte-infos__inner address {
  font-family: var(--font-heading);
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-16);
}

.la-carte-infos__note {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

@media (min-width: 768px) {
  .la-carte-intro__inner,
  .la-carte-section__inner,
  .la-carte-suggestions__inner,
  .la-carte-poker__inner,
  .la-carte-infos__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

@media (max-width: 900px) {
  .la-carte-intro__inner,
  .la-carte-poker__inner {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }

  .la-carte-intro__figure,
  .la-carte-poker__figure {
    order: 2;
  }

  .la-carte-suggestions__inner {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }

  .la-carte-suggestions__figure {
    order: 2;
  }
}

@media (max-width: 600px) {
  .la-carte-intro,
  .la-carte-suggestions,
  .la-carte-poker {
    padding-block: var(--space-64);
  }

  .la-carte-section,
  .la-carte-infos {
    padding-block: var(--space-48);
  }

  .la-carte-intro__text h2,
  .la-carte-section__inner h3,
  .la-carte-suggestions__text h3,
  .la-carte-poker__text h3,
  .la-carte-infos__inner h3 {
    font-size: var(--text-h2-size);
    line-height: var(--text-h2-leading);
  }

  .la-carte-intro__text h2 {
    margin-inline-start: var(--space-16);
  }

  .la-carte-section--entrees .la-carte-section__inner h3,
  .la-carte-section--desserts .la-carte-section__inner h3 {
    margin-inline-start: var(--space-16);
    margin-inline-end: 0;
  }

  .la-carte-section--plats .la-carte-section__inner h3,
  .la-carte-section--boissons .la-carte-section__inner h3 {
    margin-inline-start: 0;
    margin-inline-end: var(--space-16);
  }

  .la-carte-intro__figure img,
  .la-carte-suggestions__figure img,
  .la-carte-poker__figure img {
    aspect-ratio: 4 / 3;
  }
}

@media (prefers-reduced-motion: reduce) {
  .la-carte-intro,
  .la-carte-section,
  .la-carte-suggestions,
  .la-carte-poker,
  .la-carte-infos {
    transition: none;
  }
}


.contact-page {
  overflow-x: hidden;
}

.contact-intro {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.contact-intro__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.contact-intro__title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  margin-block-end: 0;
  margin-inline-start: -16px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 100%;
}

.contact-intro__title .dot {
  flex-shrink: 0;
}

.contact-intro__lead {
  max-width: 65ch;
  margin-block-end: 0;
}

.contact-coordinates {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.contact-coordinates__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-32);
}

.contact-coordinates__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  display: flex;
  align-items: center;
  gap: var(--space-8);
}

.contact-coordinates__grid {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-24);
}

.contact-coordinate {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  min-width: 0;
}

.contact-coordinate__title {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: 0;
}

.contact-coordinate__text {
  max-width: 60ch;
  margin-block-end: 0;
}

.contact-coordinate__link {
  color: var(--color-anthracite);
  border-bottom: 1px solid var(--color-argile);
  transition: border-color var(--transition-slow);
  font-weight: 500;
}

.contact-coordinate__link:hover {
  border-bottom-width: 2px;
}

.contact-bistro {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.contact-bistro__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-24);
}

.contact-bistro__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  margin-inline-end: -16px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 100%;
}

.contact-bistro__content {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
}

.contact-bistro__paragraph {
  max-width: 70ch;
  margin-block-end: 0;
}

.contact-poker {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.contact-poker__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.contact-poker__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  margin-inline-start: -16px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 100%;
}

.contact-poker__content {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
}

.contact-poker__paragraph {
  max-width: 70ch;
  margin-block-end: 0;
  color: var(--color-creme-fume-80);
}

.contact-reasons {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.contact-reasons__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-24);
}

.contact-reasons__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  margin-inline-end: -16px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 100%;
}

.contact-reasons__intro {
  max-width: 65ch;
  margin-block-end: 0;
}

.contact-reasons__list {
  max-width: 65ch;
  margin-block-end: 0;
}

.contact-access {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.contact-access__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.contact-access__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  margin-inline-start: -16px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 100%;
}

.contact-access__paragraph {
  max-width: 70ch;
  margin-block-end: 0;
}

.contact-hours {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.contact-hours__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-24);
}

.contact-hours__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  margin-inline-end: -16px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 100%;
}

.contact-hours__paragraph {
  max-width: 70ch;
  margin-block-end: 0;
  color: var(--color-creme-fume-80);
}

.contact-hours__link {
  color: var(--color-creme-fume);
  border-bottom: 1px solid var(--color-argile);
  transition: border-color var(--transition-slow);
  font-weight: 500;
}

.contact-hours__link:hover {
  border-bottom-width: 2px;
}

.contact-cta {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.contact-cta__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-24);
  text-align: center;
}

.contact-cta__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  max-width: 100%;
}

.contact-cta__text {
  max-width: 65ch;
  margin-block-end: 0;
  margin-inline: auto;
}

.contact-cta__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-16);
}

.contact-cta__actions .btn {
  flex: 0 0 auto;
  min-width: 0;
}

@media (min-width: 768px) {
  .contact-intro__inner,
  .contact-coordinates__inner,
  .contact-bistro__inner,
  .contact-poker__inner,
  .contact-reasons__inner,
  .contact-access__inner,
  .contact-hours__inner,
  .contact-cta__inner {
    padding-inline: var(--container-gutter-desktop);
  }

  .contact-coordinates__grid {
    grid-template-columns: 2fr 1.5fr 1.5fr;
    gap: var(--space-32);
  }

  .contact-coordinate--address {
    grid-column: 1;
  }

  .contact-coordinate--phone {
    grid-column: 2;
  }

  .contact-coordinate--email {
    grid-column: 3;
  }

  .contact-bistro__content,
  .contact-poker__content {
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--space-24);
  }

  .contact-bistro__paragraph,
  .contact-poker__paragraph {
    flex: 1 1 45%;
    min-width: 0;
  }

  .contact-cta__actions {
    flex-wrap: nowrap;
  }
}

@media (max-width: 767px) {
  .contact-intro,
  .contact-coordinates,
  .contact-bistro,
  .contact-poker,
  .contact-reasons,
  .contact-access,
  .contact-hours,
  .contact-cta {
    padding-block: var(--space-64);
  }

  .contact-intro__title,
  .contact-bistro__title,
  .contact-poker__title,
  .contact-reasons__title,
  .contact-access__title,
  .contact-hours__title {
    margin-inline-start: 0;
    margin-inline-end: 0;
  }

  .contact-intro__title {
    font-size: 2rem;
  }

  .contact-coordinates__grid {
    grid-template-columns: 1fr;
    gap: var(--space-24);
  }

  .contact-coordinate {
    width: 100%;
  }

  .contact-bistro__content,
  .contact-poker__content {
    flex-direction: column;
    gap: var(--space-24);
  }

  .contact-bistro__paragraph,
  .contact-poker__paragraph {
    width: 100%;
    max-width: 100%;
  }

  .contact-cta__actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  .contact-cta__actions .btn {
    width: 100%;
  }
}


/* ===== Page Cookies - Bistro Luciole ===== */
/* Styles spécifiques à la page Cookies, conformes au concept Points de Lumière */

.cookies-page {
  width: 100%;
  overflow-x: hidden;
}

.cookies-container {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: 24px;
}

@media (min-width: 768px) {
  .cookies-container {
    padding-inline: 48px;
  }
}

/* Sections alternées : crème fumé et argile */
.cookies-section {
  padding-block: 64px;
}

@media (min-width: 768px) {
  .cookies-section {
    padding-block: 96px;
  }
}

.cookies-intro,
.cookies-management,
.cookies-third-party,
.cookies-update {
  background-color: var(--color-creme-fume);
}

.cookies-types,
.cookies-duration,
.cookies-rights,
.cookies-contact {
  background-color: var(--color-argile);
}

/* Titres */
.cookies-h1 {
  font-family: var(--font-heading);
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-24);
  max-width: 8ch;
  margin-left: -16px;
}

@media (min-width: 768px) {
  .cookies-h1 {
    max-width: 66.666%; /* 8 colonnes sur 12 */
    margin-left: 0;
  }
}

.cookies-h2 {
  font-family: var(--font-heading);
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-16);
}

.cookies-h3 {
  font-family: var(--font-heading);
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-8);
}

/* Décalages des titres H2 selon les sections */
.cookies-intro-h2 {
  margin-left: -16px;
}

.cookies-types-h2 {
  margin-left: 8px;
}

.cookies-management-h2 {
  margin-left: -16px;
}

.cookies-duration-h2 {
  margin-left: 8px;
}

.cookies-third-party-h2 {
  margin-left: -16px;
}

.cookies-rights-h2 {
  margin-left: 8px;
}

.cookies-update-h2 {
  margin-left: -16px;
}

.cookies-contact-h2 {
  margin-left: 8px;
}

@media (min-width: 768px) {
  .cookies-intro-h2,
  .cookies-management-h2,
  .cookies-third-party-h2,
  .cookies-update-h2 {
    margin-left: 0;
  }
  .cookies-types-h2,
  .cookies-duration-h2,
  .cookies-rights-h2,
  .cookies-contact-h2 {
    margin-left: 0;
  }
}

/* Points lumineux */
.cookies-dot {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  margin-right: 8px;
  vertical-align: middle;
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

/* Listes à puces lumineuses */
.cookies-list {
  list-style: none;
  margin-block-start: var(--space-16);
  margin-block-end: var(--space-24);
}

.cookies-list li {
  position: relative;
  padding-inline-start: var(--space-16);
  margin-block-end: var(--space-8);
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
}

.cookies-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  transition: opacity var(--transition-slow);
}

.cookies-list li:hover::before {
  opacity: 1;
}

/* Paragraphes généraux */
.cookies-page p {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
  margin-block-end: var(--space-24);
}

.cookies-page p:last-child {
  margin-block-end: 0;
}

/* Introduction */
.cookies-intro-copy {
  max-width: 65ch;
  margin-left: 16px;
}

@media (min-width: 768px) {
  .cookies-intro-copy {
    max-width: 58.333%; /* 7 colonnes sur 12 */
    margin-left: 0;
  }
}

/* Types de cookies : grille asymétrique 7/5 */
.cookies-types-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
}

@media (min-width: 768px) {
  .cookies-types-grid {
    grid-template-columns: 7fr 5fr;
    gap: var(--space-48);
  }
}

.cookies-type-block {
  min-width: 0;
}

.cookies-type-block p {
  }

.cookies-type-block .cookies-list {
  max-width: 60ch;
}

/* Gestion des cookies : grille 8/6 */
.cookies-management-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
}

@media (min-width: 768px) {
  .cookies-management-grid {
    grid-template-columns: 8fr 6fr;
    gap: var(--space-48);
  }
}

.cookies-management-text,
.cookies-management-browsers {
  min-width: 0;
}

.cookies-management-text p {
  }

.cookies-management-browsers .cookies-list {
  max-width: 65ch;
}

/* Durée de conservation : grille 5/7 */
.cookies-duration-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
}

@media (min-width: 768px) {
  .cookies-duration-grid {
    grid-template-columns: 5fr 7fr;
    gap: var(--space-48);
  }
}

.cookies-duration-list,
.cookies-duration-renewal {
  min-width: 0;
}

.cookies-duration-list p {
  }

.cookies-duration-list .cookies-list {
  max-width: 60ch;
}

.cookies-duration-renewal p {
  }

/* Cookies tiers */
.cookies-third-party-copy {
  max-width: 66.666%; /* 8 colonnes sur 12 */
  margin-left: 16px;
}

@media (min-width: 768px) {
  .cookies-third-party-copy {
    margin-left: 0;
  }
}

.cookies-third-party-copy p {
  }

/* Vos droits : grille 7/5 */
.cookies-rights-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
}

@media (min-width: 768px) {
  .cookies-rights-grid {
    grid-template-columns: 7fr 5fr;
    gap: var(--space-48);
  }
}

.cookies-rights-list,
.cookies-rights-contact {
  min-width: 0;
}

.cookies-rights-list p {
  }

.cookies-rights-list .cookies-list {
  max-width: 60ch;
}

.cookies-rights-contact p {
  }

/* Mise à jour */
.cookies-update-copy {
  max-width: 66.666%; /* 8 colonnes sur 12 */
}

.cookies-update-copy p {
  }

/* Contact */
.cookies-contact-copy {
  max-width: 58.333%; /* 7 colonnes sur 12 */
  margin-left: 16px;
}

@media (min-width: 768px) {
  .cookies-contact-copy {
    margin-left: 0;
  }
}

.cookies-contact-copy p {
  }

/* Responsive mobile */
@media (max-width: 767px) {
  .cookies-h1 {
    font-size: 2rem;
    margin-left: -16px;
  }
  .cookies-h2 {
    font-size: 1.5rem;
  }
  .cookies-types-grid,
  .cookies-management-grid,
  .cookies-duration-grid,
  .cookies-rights-grid {
    grid-template-columns: 1fr;
  }
  .cookies-intro-copy,
  .cookies-third-party-copy,
  .cookies-contact-copy {
    max-width: 100%;
    margin-left: 0;
  }
  .cookies-management-text p,
  .cookies-management-browsers .cookies-list,
  .cookies-duration-list p,
  .cookies-duration-list .cookies-list,
  .cookies-duration-renewal p,
  .cookies-third-party-copy p,
  .cookies-rights-list p,
  .cookies-rights-list .cookies-list,
  .cookies-rights-contact p,
  .cookies-update-copy p,
  .cookies-contact-copy p {
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookies-dot {
    animation: none;
    opacity: 1;
  }
}


/* Page-owned styles for poker-offline */

.poker-offline-main {
  width: 100%;
  overflow-x: hidden;
}

/* Introduction */
.poker-intro {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96) var(--space-64);
}

.poker-intro-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-24);
}

.poker-intro-title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  text-align: center;
  max-width: 720px;
  margin-inline: auto;
  transform: translateX(-20px);
}

.poker-intro-text {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  max-width: 720px;
  margin-inline: auto;
  text-align: center;
  transform: translateX(40px);
}

.poker-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  flex-shrink: 0;
}

.poker-dot-pulse {
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

/* Philosophy */
.poker-philosophy {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-64);
}

.poker-philosophy-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.poker-philosophy-title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-32);
  transform: translateX(-30px);
}

.poker-philosophy-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.poker-philosophy-col {
  min-width: 0;
}

.poker-philosophy-col p {
  margin-block-end: var(--space-24);
}

.poker-philosophy-col p:last-child {
  margin-block-end: 0;
}

.poker-list {
  list-style: none;
  margin-block-start: var(--space-16);
}

.poker-list li {
  position: relative;
  padding-inline-start: var(--space-16);
  margin-block-end: var(--space-8);
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
}

.poker-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  transition: opacity var(--transition-slow);
  opacity: 0.8;
}

.poker-list li:hover::before {
  opacity: 1;
}

.poker-list li:last-child {
  margin-block-end: 0;
}

/* Poker Room */
.poker-room {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.poker-room-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
  align-items: center;
}

.poker-room-text {
  min-width: 0;
}

.poker-room-text h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-24);
}

.poker-room-text p {
  color: var(--color-creme-fume-80);
  }

.poker-room-media {
  min-width: 0;
  overflow: hidden;
}

.poker-room-media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform var(--transition-fast);
}

.poker-room-media img:hover {
  transform: scale(1.02);
}

/* Card Lounge */
.poker-card-lounge {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.poker-card-lounge-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
  align-items: center;
}

.poker-card-lounge-media {
  min-width: 0;
  overflow: hidden;
}

.poker-card-lounge-media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform var(--transition-fast);
}

.poker-card-lounge-media img:hover {
  transform: scale(1.02);
}

.poker-card-lounge-text {
  min-width: 0;
}

.poker-card-lounge-text h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-24);
}

.poker-card-lounge-text p {
  color: var(--color-creme-fume-80);
  }

/* Experience */
.poker-experience {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.poker-experience-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.poker-experience-title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-32);
  transform: translateX(40px);
}

.poker-experience-content {
  max-width: 70%;
  margin-inline-start: 0;
}

.poker-experience-content p {
  margin-block-end: var(--space-24);
}

.poker-experience-content .poker-list {
  margin-inline-start: var(--space-16);
}

/* Atmosphere */
.poker-atmosphere {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.poker-atmosphere-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.poker-atmosphere-title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-32);
  transform: translateX(-30px);
}

.poker-atmosphere-text {
  max-width: 60%;
}

.poker-atmosphere-text p {
  margin-block-end: var(--space-24);
}

.poker-atmosphere-text p:last-child {
  margin-block-end: 0;
}

/* Why */
.poker-why {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.poker-why-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.poker-why-title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-block-end: var(--space-32);
  transform: translateX(40px);
}

.poker-why-content {
  max-width: 70%;
}

.poker-why-content p {
  color: var(--color-creme-fume-80);
  margin-block-end: var(--space-24);
}

.poker-why-content .poker-list {
  margin-inline-start: var(--space-16);
}

.poker-why-content .poker-list li {
  color: var(--color-creme-fume);
}

/* Invitation */
.poker-invitation {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.poker-invitation-inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-32);
  text-align: center;
}

.poker-invitation-title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  transform: translateX(-20px);
}

.poker-invitation-text {
  color: var(--color-creme-fume-80);
  max-width: 60%;
  margin-inline: auto;
}

.poker-invitation-btn {
  flex-shrink: 0;
}

/* Tablet and desktop */
@media (min-width: 768px) {
  .poker-intro-inner,
  .poker-philosophy-inner,
  .poker-room-inner,
  .poker-card-lounge-inner,
  .poker-experience-inner,
  .poker-atmosphere-inner,
  .poker-why-inner,
  .poker-invitation-inner {
    padding-inline: var(--container-gutter-desktop);
  }

  .poker-philosophy-grid {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    gap: var(--space-48);
  }

  .poker-room-inner {
    grid-template-columns: minmax(0, 11fr) minmax(0, 9fr);
    gap: var(--space-64);
  }

  .poker-room-media {
    transform: translateX(20px);
  }

  .poker-card-lounge-inner {
    grid-template-columns: minmax(0, 9fr) minmax(0, 11fr);
    gap: var(--space-64);
  }

  .poker-card-lounge-media {
    transform: translateX(-20px);
  }
}

@media (max-width: 767px) {
  .poker-intro-title {
    transform: translateX(-16px);
  }

  .poker-intro-text {
    transform: none;
  }

  .poker-philosophy-title,
  .poker-atmosphere-title {
    transform: translateX(-16px);
  }

  .poker-experience-title,
  .poker-why-title {
    transform: translateX(16px);
  }

  .poker-experience-content,
  .poker-why-content {
    max-width: 100%;
  }

  .poker-atmosphere-text {
    max-width: 100%;
  }

  .poker-invitation-title {
    transform: translateX(-16px);
  }

  .poker-invitation-text {
    max-width: 100%;
  }

  .poker-invitation-btn {
    width: 100%;
  }
}


/* Conditions page styles */

.conditions-page {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.conditions-section {
  padding-block: var(--space-96);
}

@media (max-width: 767px) {
  .conditions-section {
    padding-block: var(--space-64);
  }
}

/* Introduction */
.conditions-intro {
  background-color: var(--color-creme-fume);
}

.conditions-intro__inner {
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-intro__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-intro__title {
  font-size: clamp(2rem, 3.5vw + 0.75rem, 2.5rem);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  margin-block-end: var(--space-32);
  transform: translateX(-8px);
}

@media (max-width: 767px) {
  .conditions-intro__title {
    transform: translateX(-4px);
    font-size: 2rem;
  }
}

.conditions-intro__content {
  max-width: 70ch;
}

.conditions-intro__subtitle {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-16);
  margin-block-start: var(--space-32);
}

.conditions-intro__subtitle:first-of-type {
  margin-block-start: 0;
}

.conditions-intro__list {
  margin-block-end: var(--space-24);
}

/* Mentions légales */
.conditions-legal {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
}

.conditions-legal__grid {
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: var(--space-48);
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-legal__grid {
    padding-inline: var(--container-gutter-desktop);
  }
}

@media (max-width: 991px) {
  .conditions-legal__grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }
}

.conditions-legal__main {
  min-width: 0;
}

.conditions-legal__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
}

.conditions-legal__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-legal__subtitle:first-of-type {
  margin-block-start: 0;
}

.conditions-legal__aside {
  background-color: rgba(245, 240, 232, 0.6);
  border: 1px solid var(--color-anthracite-20);
  border-radius: var(--radius-4);
  padding: var(--space-32);
  min-width: 0;
}

.conditions-legal__aside-title {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-16);
}

.conditions-legal__contact-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.conditions-legal__contact-item {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.conditions-legal__contact-item dt {
  font-weight: 500;
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
}

.conditions-legal__contact-item dd {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
}

.conditions-legal__contact-item a {
  color: var(--color-anthracite);
  border-bottom: 1px solid var(--color-argile);
  transition: border-color var(--transition-slow);
}

.conditions-legal__contact-item a:hover {
  border-bottom-color: var(--color-vert-bouteille);
}

/* Accès au site */
.conditions-access {
  background-color: var(--color-creme-fume);
}

.conditions-access__inner {
  max-width: 680px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-access__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-access__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
  transform: translateX(8px);
}

@media (max-width: 767px) {
  .conditions-access__title {
    transform: translateX(0);
  }
}

.conditions-access__content {
  max-width: 70ch;
}

.conditions-access__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-access__subtitle:first-of-type {
  margin-block-start: 0;
}

/* Propriété intellectuelle */
.conditions-ip {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.conditions-ip__grid {
  display: grid;
  grid-template-columns: 4fr 8fr;
  gap: var(--space-48);
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-ip__grid {
    padding-inline: var(--container-gutter-desktop);
  }
}

@media (max-width: 991px) {
  .conditions-ip__grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }
}

.conditions-ip__intro {
  min-width: 0;
}

.conditions-ip__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
}

.conditions-ip__lead {
  color: var(--color-creme-fume-80);
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  max-width: 65ch;
}

.conditions-ip__details {
  min-width: 0;
}

.conditions-ip__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-ip__subtitle:first-of-type {
  margin-block-start: 0;
}

.conditions-ip__list {
  margin-block-end: var(--space-24);
}

.conditions-ip__list li {
  color: var(--color-creme-fume);
}

.conditions-ip__list li::before {
  background-color: var(--color-jaune-luciole);
}

/* Poker offline */
.conditions-poker {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
}

.conditions-poker__grid {
  display: grid;
  grid-template-columns: 8fr 4fr;
  gap: var(--space-48);
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-poker__grid {
    padding-inline: var(--container-gutter-desktop);
  }
}

@media (max-width: 991px) {
  .conditions-poker__grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }
}

.conditions-poker__main {
  min-width: 0;
}

.conditions-poker__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-24);
  transform: translateX(-8px);
}

@media (max-width: 767px) {
  .conditions-poker__title {
    transform: translateX(0);
  }
}

.conditions-poker__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-poker__subtitle:first-of-type {
  margin-block-start: 0;
}

.conditions-poker__list {
  margin-block-end: var(--space-24);
}

.conditions-poker__list li {
  color: var(--color-creme-fume);
}

.conditions-poker__list li::before {
  background-color: var(--color-jaune-luciole);
}

.conditions-poker__aside {
  background-color: rgba(245, 240, 232, 0.08);
  border: 1px solid rgba(245, 240, 232, 0.2);
  border-radius: var(--radius-4);
  padding: var(--space-32);
  min-width: 0;
}

.conditions-poker__aside-title {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
}

.conditions-poker__aside p {
  color: var(--color-creme-fume-80);
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
}

/* Réservation */
.conditions-booking {
  background-color: var(--color-creme-fume);
}

.conditions-booking__inner {
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-booking__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-booking__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
}

.conditions-booking__content {
  max-width: 70ch;
}

.conditions-booking__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-booking__subtitle:first-of-type {
  margin-block-start: 0;
}

/* Responsabilité */
.conditions-liability {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
}

.conditions-liability__grid {
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: var(--space-48);
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-liability__grid {
    padding-inline: var(--container-gutter-desktop);
  }
}

@media (max-width: 991px) {
  .conditions-liability__grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }
}

.conditions-liability__block {
  min-width: 0;
}

.conditions-liability__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
}

.conditions-liability__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-liability__subtitle:first-of-type {
  margin-block-start: 0;
}

/* Données personnelles */
.conditions-data {
  background-color: var(--color-creme-fume);
}

.conditions-data__inner {
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-data__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-data__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
}

.conditions-data__content {
  max-width: 70ch;
}

.conditions-data__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
  margin-block-start: var(--space-24);
}

.conditions-data__subtitle:first-of-type {
  margin-block-start: 0;
}

.conditions-data__list {
  margin-block-end: var(--space-24);
}

/* Modification */
.conditions-modification {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.conditions-modification__inner {
  max-width: 680px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-modification__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-modification__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-24);
}

.conditions-modification__content {
  max-width: 65ch;
}

.conditions-modification__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-8);
}

/* Droit applicable */
.conditions-law {
  background-color: var(--color-creme-fume);
}

.conditions-law__inner {
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-law__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-law__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
}

.conditions-law__content {
  max-width: 70ch;
}

.conditions-law__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
}

/* Contact */
.conditions-contact {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
}

.conditions-contact__grid {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: var(--space-48);
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-contact__grid {
    padding-inline: var(--container-gutter-desktop);
  }
}

@media (max-width: 991px) {
  .conditions-contact__grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }
}

.conditions-contact__coordinates {
  min-width: 0;
}

.conditions-contact__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: var(--space-24);
}

.conditions-contact__subtitle {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-16);
}

.conditions-contact__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

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

.conditions-contact__item dt {
  font-weight: 500;
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
}

.conditions-contact__item dd {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
}

.conditions-contact__item a {
  color: var(--color-anthracite);
  border-bottom: 1px solid var(--color-argile);
  transition: border-color var(--transition-slow);
}

.conditions-contact__item a:hover {
  border-bottom-color: var(--color-vert-bouteille);
}

.conditions-contact__explanation {
  min-width: 0;
  display: flex;
  align-items: flex-start;
}

.conditions-contact__explanation p {
  }

/* Date de mise à jour */
.conditions-date {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-48);
}

.conditions-date__inner {
  max-width: 400px;
  margin-inline: auto;
  text-align: center;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .conditions-date__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.conditions-date__title {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  margin-block-end: var(--space-8);
}

.conditions-date__text {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  max-width: 70ch;
  margin-inline: auto;
}

.conditions-date__text strong {
  font-weight: 500;
}


/* ===== Bistro Luciole page styles ===== */

.bistro-page {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

/* ----- Ouverture éditoriale ----- */
.bistro-ouverture {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.bistro-ouverture__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-ouverture__titre-col {
  display: flex;
  align-items: flex-start;
  gap: var(--space-16);
  min-width: 0;
}

.bistro-ouverture__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  flex-shrink: 0;
  margin-top: 0.45em;
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

.bistro-ouverture__titre {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  color: var(--color-anthracite);
  margin-block-end: 0;
  min-width: 0;
}

.bistro-ouverture__texte-col {
  min-width: 0;
}

.bistro-ouverture__texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
  max-width: 65ch;
  margin-block-end: var(--space-16);
}

.bistro-ouverture__adresse {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

/* ----- La cuisine, cœur du bistrot ----- */
.bistro-cuisine {
  background-color: var(--color-argile);
  padding-block: var(--space-96);
}

.bistro-cuisine__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.bistro-cuisine__titre {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-48);
}

.bistro-cuisine__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-cuisine__bloc {
  min-width: 0;
}

.bistro-cuisine__bloc-titre {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-16);
  position: relative;
  padding-inline-start: var(--space-16);
}

.bistro-cuisine__bloc-titre::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

.bistro-cuisine__bloc-texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
  max-width: 70ch;
  margin-block-end: 0;
}

/* ----- Assiettes signature ----- */
.bistro-assiettes {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.bistro-assiettes__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.bistro-assiettes__titre {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-48);
}

.bistro-assiettes__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-assiettes__carte {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.bistro-assiettes__figure {
  margin-block-end: 0;
  width: 100%;
}

.bistro-assiettes__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
  border-radius: var(--radius-0);
}

.bistro-assiettes__carte-titre {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

.bistro-assiettes__carte-texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
  max-width: 65ch;
  margin-block-end: 0;
}

.bistro-assiettes__renvoi {
  margin-block-start: var(--space-48);
  margin-block-end: 0;
}

/* ----- Présentation et dressage ----- */
.bistro-dressage {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.bistro-dressage__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.bistro-dressage__titre {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-48);
}

.bistro-dressage__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-dressage__bloc {
  min-width: 0;
}

.bistro-dressage__bloc-titre {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
  position: relative;
  padding-inline-start: var(--space-16);
}

.bistro-dressage__bloc-titre::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

.bistro-dressage__bloc-texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-creme-fume-80);
  max-width: 70ch;
  margin-block-end: 0;
}

/* ----- La salle et l'éclairage ----- */
.bistro-salle {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.bistro-salle__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.bistro-salle__titre {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-48);
}

.bistro-salle__contenu {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-salle__blocs {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
  min-width: 0;
}

.bistro-salle__bloc {
  min-width: 0;
}

.bistro-salle__bloc-titre {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
  position: relative;
  padding-inline-start: var(--space-16);
}

.bistro-salle__bloc-titre::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

.bistro-salle__bloc-texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-creme-fume-80);
  max-width: 65ch;
  margin-block-end: 0;
}

.bistro-salle__figure {
  margin-block-end: 0;
  width: 100%;
  min-width: 0;
}

.bistro-salle__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
  border-radius: var(--radius-0);
}

/* ----- Le lien discret avec le poker ----- */
.bistro-poker {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.bistro-poker__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.bistro-poker__titre {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-48);
}

.bistro-poker__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-poker__bloc {
  min-width: 0;
}

.bistro-poker__bloc-titre {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-creme-fume);
  margin-block-end: var(--space-16);
  position: relative;
  padding-inline-start: var(--space-16);
}

.bistro-poker__bloc-titre::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  animation: luciole-pulse var(--pulse-duration) ease-in-out infinite;
}

.bistro-poker__bloc-texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-creme-fume-80);
  max-width: 70ch;
  margin-block-end: 0;
}

.bistro-poker__renvoi {
  margin-block-start: var(--space-48);
  margin-block-end: 0;
}

/* ----- Invitation à explorer ----- */
.bistro-invitation {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.bistro-invitation__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.bistro-invitation__titre {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  color: var(--color-anthracite);
  margin-block-end: var(--space-48);
  text-align: center;
}

.bistro-invitation__grille {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.bistro-invitation__carte {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-24);
  padding: var(--space-32);
  border-radius: var(--radius-4);
  background: none;
}

.bistro-invitation__carte-titre {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  font-weight: var(--text-h3-weight);
  color: var(--color-anthracite);
  margin-block-end: 0;
}

.bistro-invitation__carte-texte {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  color: var(--color-anthracite);
  max-width: 50ch;
  margin-block-end: 0;
}

.bistro-invitation__carte .btn {
  margin-block-start: var(--space-8);
}

/* ----- Responsive : tablette ----- */
@media (min-width: 768px) {
  .bistro-ouverture__inner,
  .bistro-cuisine__inner,
  .bistro-assiettes__inner,
  .bistro-dressage__inner,
  .bistro-salle__inner,
  .bistro-poker__inner,
  .bistro-invitation__inner {
    padding-inline: var(--container-gutter-desktop);
  }

  .bistro-ouverture__inner {
    grid-template-columns: 7fr 5fr;
    gap: var(--space-64);
    align-items: start;
  }

  .bistro-ouverture__titre-col {
    grid-column: 1;
  }

  .bistro-ouverture__texte-col {
    grid-column: 2;
    margin-top: var(--space-48);
  }

  .bistro-cuisine__grille {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-48);
  }

  .bistro-cuisine__bloc--preparation {
    margin-top: var(--space-48);
  }

  .bistro-assiettes__grille {
    grid-template-columns: 3fr 6fr 3fr;
    gap: var(--space-48);
    align-items: start;
  }

  .bistro-assiettes__carte--vegetarien {
    margin-top: calc(-1 * var(--space-48));
  }

  .bistro-dressage__grille {
    grid-template-columns: 5fr 7fr;
    gap: var(--space-64);
    align-items: start;
  }

  .bistro-dressage__bloc--service {
    margin-top: var(--space-48);
  }

  .bistro-salle__contenu {
    grid-template-columns: 8fr 4fr;
    gap: var(--space-64);
    align-items: start;
  }

  .bistro-salle__blocs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-48);
  }

  .bistro-salle__bloc--ambiance {
    grid-column: 1 / -1;
  }

  .bistro-salle__figure {
    grid-column: 2;
    grid-row: 1;
  }

  .bistro-poker__grille {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-64);
    align-items: start;
  }

  .bistro-poker__bloc--complementaire {
    margin-top: var(--space-48);
  }

  .bistro-invitation__grille {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-64);
  }
}

/* ----- Responsive : desktop large ----- */
@media (min-width: 1024px) {
  .bistro-ouverture__titre {
    font-size: var(--text-display-size);
  }

  .bistro-salle__figure img {
    aspect-ratio: 16 / 9;
  }
}

/* ----- Mobile : ajustements fins ----- */
@media (max-width: 767px) {
  .bistro-ouverture {
    padding-block: var(--space-64);
  }

  .bistro-cuisine,
  .bistro-assiettes,
  .bistro-dressage,
  .bistro-salle,
  .bistro-poker,
  .bistro-invitation {
    padding-block: var(--space-64);
  }

  .bistro-ouverture__titre {
    margin-left: var(--space-16);
  }

  .bistro-ouverture__texte {
    margin-left: var(--space-8);
  }

  .bistro-assiettes__figure img {
    aspect-ratio: 4 / 3;
  }

  .bistro-salle__figure img {
    aspect-ratio: 4 / 3;
  }

  .bistro-invitation__carte {
    align-items: stretch;
    text-align: left;
  }

  .bistro-invitation__carte .btn {
    align-self: stretch;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bistro-ouverture__dot,
  .bistro-cuisine__bloc-titre::before,
  .bistro-dressage__bloc-titre::before,
  .bistro-salle__bloc-titre::before,
  .bistro-poker__bloc-titre::before {
    animation: none;
    opacity: 1;
  }
}


/* Page-owned styles for Cuisine page */
.cuisine-page {
  width: 100%;
}

/* Section spacing */
.cuisine-page > section {
  padding-block: var(--space-96);
}

@media (max-width: 767px) {
  .cuisine-page > section {
    padding-block: var(--space-64);
  }
}

/* Introduction */
.cuisine-intro {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.cuisine-intro__inner {
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .cuisine-intro__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.cuisine-intro__title-wrap {
  display: flex;
  align-items: center;
  gap: var(--space-8);
  margin-block-end: var(--space-24);
}

.cuisine-intro__dot {
  flex-shrink: 0;
}

.cuisine-intro__title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  margin-block-end: 0;
  max-width: 70%;
}

.cuisine-intro__text {
  max-width: 65ch;
  margin-inline-start: 8px;
  margin-block-end: 0;
}

@media (max-width: 767px) {
  .cuisine-intro__title {
    max-width: 100%;
    font-size: 2rem;
  }
  .cuisine-intro__text {
    max-width: 100%;
    margin-inline-start: 8px;
  }
}

/* Philosophie */
.cuisine-philosophie {
  background-color: #F2EBE2; /* crème fumé with 10% argile */
  color: var(--color-anthracite);
}

.cuisine-philosophie__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-48);
}

@media (min-width: 768px) {
  .cuisine-philosophie__inner {
    padding-inline: var(--container-gutter-desktop);
    flex-direction: row;
    align-items: flex-start;
    gap: var(--space-48);
  }
}

.cuisine-philosophie__title {
  flex: 0 0 30%;
  max-width: 30%;
  margin-block-end: 0;
  text-align: right;
}

.cuisine-philosophie__content {
  flex: 1 1 70%;
  max-width: 70%;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
  min-width: 0;
}

.cuisine-philosophie__content p {
  margin-block-end: 0;
}

.cuisine-philosophie__content p:last-child {
  margin-inline-start: 16px;
}

@media (max-width: 767px) {
  .cuisine-philosophie__inner {
    gap: var(--space-24);
  }
  .cuisine-philosophie__title {
    flex: 1 1 100%;
    max-width: 100%;
    text-align: left;
  }
  .cuisine-philosophie__content {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .cuisine-philosophie__content p {
  }
  .cuisine-philosophie__content p:last-child {
    margin-inline-start: 8px;
  }
}

/* Sélection */
.cuisine-selection {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.cuisine-selection__inner {
  max-width: 720px;
  margin-inline: auto;
  margin-inline-start: 20px;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .cuisine-selection__inner {
    padding-inline: var(--container-gutter-desktop);
    margin-inline-start: calc((100% - var(--container-max)) / 2 + 20px);
  }
}

.cuisine-selection__title {
  max-width: 60%;
  margin-block-end: var(--space-24);
}

.cuisine-selection__intro {
  max-width: 65ch;
  margin-block-end: var(--space-24);
}

.cuisine-selection__list {
  max-width: 70ch;
  margin-inline-start: 24px;
  margin-block-end: 0;
}

@media (max-width: 767px) {
  .cuisine-selection__inner {
    margin-inline-start: 0;
  }
  .cuisine-selection__title,
  .cuisine-selection__intro {
    max-width: 100%;
  }
  .cuisine-selection__list {
    max-width: 100%;
    margin-inline-start: 16px;
  }
}

/* Techniques */
.cuisine-techniques {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.cuisine-techniques__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .cuisine-techniques__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.cuisine-techniques__title {
  margin-block-end: var(--space-48);
}

.cuisine-techniques__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-24);
}

@media (min-width: 768px) {
  .cuisine-techniques__grid {
    grid-template-columns: 35% 30% 35%;
    gap: var(--space-24);
  }
}

.cuisine-techniques__block {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.cuisine-techniques__block p {
  margin-block-end: 0;
  color: var(--color-creme-fume-80);
}

.cuisine-techniques__block .dot {
  background-color: var(--color-jaune-luciole);
}

.cuisine-techniques__block--1 {
  margin-inline-start: 0;
}

.cuisine-techniques__block--2 {
  margin-inline-start: 16px;
  margin-block-start: 24px;
}

.cuisine-techniques__block--3 {
  margin-inline-start: 32px;
  margin-block-start: 48px;
}

@media (max-width: 767px) {
  .cuisine-techniques__grid {
    grid-template-columns: 1fr;
    gap: var(--space-16);
  }
  .cuisine-techniques__block--1 {
    margin-inline-start: 0;
    margin-block-start: 0;
  }
  .cuisine-techniques__block--2 {
    margin-inline-start: 8px;
    margin-block-start: 0;
  }
  .cuisine-techniques__block--3 {
    margin-inline-start: 16px;
    margin-block-start: 0;
  }
  .cuisine-techniques__block p {
  }
}

/* Signatures */
.cuisine-signatures {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.cuisine-signatures__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-48);
}

@media (min-width: 768px) {
  .cuisine-signatures__inner {
    padding-inline: var(--container-gutter-desktop);
    flex-direction: row;
    align-items: flex-start;
    gap: var(--space-48);
  }
}

.cuisine-signatures__text {
  flex: 0 0 55%;
  max-width: 55%;
  min-width: 0;
}

.cuisine-signatures__title {
  max-width: 55%;
  margin-block-end: var(--space-24);
}

.cuisine-signatures__text p {
  margin-block-end: var(--space-24);
}

.cuisine-signatures__list {
  max-width: 65ch;
  margin-block-end: 0;
}

.cuisine-signatures__figure {
  flex: 0 0 45%;
  max-width: 45%;
  margin-block-end: 0;
  margin-inline-end: -24px;
}

.cuisine-signatures__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.cuisine-signatures__figure figcaption {
  margin-block-start: var(--space-8);
  color: var(--color-anthracite);
}

@media (max-width: 767px) {
  .cuisine-signatures__inner {
    gap: var(--space-24);
  }
  .cuisine-signatures__text,
  .cuisine-signatures__figure {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .cuisine-signatures__figure {
    margin-inline-end: 0;
  }
  .cuisine-signatures__title,
  .cuisine-signatures__text p,
  .cuisine-signatures__list {
    max-width: 100%;
  }
}

/* Poker */
.cuisine-poker {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
}

.cuisine-poker__inner {
  max-width: 840px;
  margin-inline: auto;
  margin-inline-start: -20px;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .cuisine-poker__inner {
    padding-inline: var(--container-gutter-desktop);
    margin-inline-start: calc((100% - var(--container-max)) / 2 - 20px);
  }
}

.cuisine-poker__title {
  max-width: 70%;
  margin-block-end: var(--space-24);
}

.cuisine-poker__inner p {
  margin-block-end: var(--space-24);
  color: var(--color-creme-fume-80);
}

.cuisine-poker__inner p:last-of-type {
  margin-inline-start: 16px;
  margin-block-end: 0;
}

@media (max-width: 767px) {
  .cuisine-poker__inner {
    margin-inline-start: 0;
  }
  .cuisine-poker__title,
  .cuisine-poker__inner p {
  }
  .cuisine-poker__inner p:last-of-type {
    margin-inline-start: 8px;
  }
}

/* Pâtisserie */
.cuisine-patisserie {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
}

.cuisine-patisserie__inner {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-48);
}

@media (min-width: 768px) {
  .cuisine-patisserie__inner {
    padding-inline: var(--container-gutter-desktop);
    flex-direction: row;
    align-items: flex-start;
    gap: var(--space-48);
  }
}

.cuisine-patisserie__figure {
  flex: 0 0 40%;
  max-width: 40%;
  margin-block-end: 0;
  margin-inline-start: -16px;
}

.cuisine-patisserie__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.cuisine-patisserie__figure figcaption {
  margin-block-start: var(--space-8);
  color: var(--color-anthracite);
}

.cuisine-patisserie__text {
  flex: 1 1 60%;
  max-width: 60%;
  min-width: 0;
}

.cuisine-patisserie__title {
  max-width: 60%;
  margin-block-end: var(--space-24);
}

.cuisine-patisserie__text p {
  margin-block-end: var(--space-24);
}

.cuisine-patisserie__list {
  max-width: 65ch;
  margin-block-end: 0;
}

@media (max-width: 767px) {
  .cuisine-patisserie__inner {
    gap: var(--space-24);
  }
  .cuisine-patisserie__figure,
  .cuisine-patisserie__text {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .cuisine-patisserie__figure {
    margin-inline-start: 0;
  }
  .cuisine-patisserie__title,
  .cuisine-patisserie__text p,
  .cuisine-patisserie__list {
    max-width: 100%;
  }
}

/* Salle */
.cuisine-salle {
  background-color: #F2EBE2; /* argile clair */
  color: var(--color-anthracite);
}

.cuisine-salle__inner {
  max-width: 780px;
  margin-inline: auto;
  margin-inline-end: -20px;
  padding-inline: var(--container-gutter-mobile);
}

@media (min-width: 768px) {
  .cuisine-salle__inner {
    padding-inline: var(--container-gutter-desktop);
    margin-inline-end: calc((100% - var(--container-max)) / 2 - 20px);
  }
}

.cuisine-salle__title {
  max-width: 65%;
  margin-block-end: var(--space-24);
}

.cuisine-salle__inner p {
  margin-block-end: var(--space-24);
}

.cuisine-salle__inner p:last-of-type {
  margin-inline-start: 16px;
  margin-block-end: 0;
}

@media (max-width: 767px) {
  .cuisine-salle__inner {
    margin-inline-end: 0;
  }
  .cuisine-salle__title,
  .cuisine-salle__inner p {
  }
  .cuisine-salle__inner p:last-of-type {
    margin-inline-start: 8px;
  }
}

/* Réservation */
.cuisine-reservation {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.cuisine-reservation__inner {
  max-width: 600px;
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

@media (min-width: 768px) {
  .cuisine-reservation__inner {
    padding-inline: var(--container-gutter-desktop);
  }
}

.cuisine-reservation__title {
  max-width: 50%;
  margin-block-end: 0;
}

.cuisine-reservation__inner p {
  margin-block-end: 0;
  color: var(--color-creme-fume-80);
}

.cuisine-reservation__address {
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
}

.cuisine-reservation__btn {
  margin-inline-start: 24px;
  margin-block-start: var(--space-8);
}

@media (max-width: 767px) {
  .cuisine-reservation__inner {
    gap: var(--space-16);
  }
  .cuisine-reservation__title,
  .cuisine-reservation__inner p {
  }
  .cuisine-reservation__btn {
    width: 80%;
    margin-inline-start: 0;
  }
}


/* Poker Room page styles */
.poker-room-main {
  overflow-x: hidden;
}

/* Section 1 — Introduction immersive */
.pr-intro {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96) var(--space-64);
}

.pr-intro-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.pr-intro-copy {
  width: 100%;
  max-width: 720px;
  margin-left: 0;
}

.pr-intro h1 {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  margin-bottom: var(--space-24);
  max-width: 60%;
  margin-left: 0;
}

.pr-intro-paragraph {
  max-width: 50%;
  margin-left: 24px;
  color: var(--color-creme-fume-80);
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  margin-bottom: 0;
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
}

.pr-intro-paragraph .dot {
  margin-top: 0.6em;
  flex-shrink: 0;
}

/* Section 2 — L'entrée dans la salle */
.pr-entree {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96) var(--space-96);
}

.pr-entree-grid {
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: var(--space-48);
  align-items: start;
}

.pr-entree-copy {
  min-width: 0;
}

.pr-entree-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-24);
  margin-left: 48px;
}

.pr-entree-copy p {
  margin-left: 32px;
  margin-bottom: var(--space-24);
  color: var(--color-creme-fume);
}

.pr-entree-figure {
  margin: 0;
  transform: translateY(-32px);
  min-width: 0;
}

.pr-entree-figure img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
  display: block;
}

.pr-entree-figure figcaption {
  color: var(--color-creme-fume-80);
  margin-top: var(--space-8);
}

/* Section 3 — La table de poker */
.pr-table {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96) var(--space-96);
}

.pr-table-grid {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: var(--space-48);
  align-items: start;
}

.pr-table-figure {
  margin: 0;
  transform: translateY(24px);
  min-width: 0;
}

.pr-table-figure img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-0);
  display: block;
}

.pr-table-figure figcaption {
  color: var(--color-anthracite);
  margin-top: var(--space-8);
}

.pr-table-copy {
  min-width: 0;
}

.pr-table-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-24);
  margin-left: -32px;
}

.pr-table-copy p {
  margin-bottom: var(--space-24);
}

/* Section 4 — Le feutre, les cartes et les jetons */
.pr-objects {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96) var(--space-96);
}

.pr-objects-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-48);
  align-items: start;
}

.pr-objects-copy {
  min-width: 0;
}

.pr-objects-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-32);
  margin-left: 0;
}

.pr-object-item {
  margin-bottom: var(--space-24);
}

.pr-object-item:last-child {
  margin-bottom: 0;
}

.pr-object-item h3 {
  font-size: var(--text-h3-size);
  line-height: var(--text-h3-leading);
  margin-bottom: var(--space-8);
  color: var(--color-creme-fume);
}

.pr-object-item p {
  margin-left: 16px;
  margin-bottom: 0;
  color: var(--color-creme-fume-80);
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
}

.pr-object-item p .dot {
  margin-top: 0.6em;
  flex-shrink: 0;
}

.pr-objects-figure {
  margin: 0;
  transform: translateY(-48px);
  min-width: 0;
}

.pr-objects-figure img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
  display: block;
}

.pr-objects-figure figcaption {
  color: var(--color-creme-fume-80);
  margin-top: var(--space-8);
}

/* Section 5 — Les participants et le face-à-face */
.pr-face {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96) var(--space-96);
}

.pr-face-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.pr-face-copy {
  width: 100%;
  max-width: 720px;
}

.pr-face-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-24);
  max-width: 50%;
  margin-left: 48px;
}

.pr-face-copy p {
  margin-left: 24px;
  margin-bottom: var(--space-24);
}

.pr-face-list {
  margin-left: 48px;
  max-width: 60%;
}

/* Section 6 — Vue générale de la salle */
.pr-view {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96) var(--space-96);
}

.pr-view-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.pr-view-copy {
  width: 100%;
  max-width: 720px;
  margin-bottom: var(--space-48);
}

.pr-view-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-24);
  max-width: 40%;
  margin-left: 48px;
}

.pr-view-copy p {
  margin-left: 24px;
  margin-bottom: 0;
  color: var(--color-creme-fume);
}

.pr-view-figure {
  width: 100%;
  margin: 0;
  min-width: 0;
}

.pr-view-figure img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  object-position: center;
  border-radius: var(--radius-0);
  display: block;
}

.pr-view-figure figcaption {
  color: var(--color-creme-fume-80);
  margin-top: var(--space-8);
}

/* Section 7 — L'expérience bistrot et poker */
.pr-bistro {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96) var(--space-96);
}

.pr-bistro-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.pr-bistro-copy {
  width: 100%;
  max-width: 720px;
}

.pr-bistro-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-24);
  max-width: 50%;
  margin-left: 48px;
}

.pr-bistro-copy p {
  margin-left: 24px;
  margin-bottom: var(--space-24);
}

.pr-bistro-copy .content-list {
  max-width: 60%;
  margin-left: 24px;
}

/* Section 8 — Réservation et contact */
.pr-contact {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96) var(--space-96);
}

.pr-contact-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.pr-contact-copy {
  width: 100%;
  max-width: 720px;
}

.pr-contact-copy h2 {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  margin-bottom: var(--space-24);
  max-width: 40%;
  margin-left: 48px;
}

.pr-contact-copy p {
  margin-left: 24px;
  margin-bottom: var(--space-24);
  color: var(--color-creme-fume-80);
}

.pr-contact-list {
  list-style: none;
  margin-left: 24px;
  margin-bottom: var(--space-32);
  max-width: 50%;
}

.pr-contact-list li {
  margin-bottom: var(--space-8);
  color: var(--color-creme-fume-80);
}

.pr-contact-list a {
  color: var(--color-creme-fume);
  text-decoration: underline;
  text-decoration-color: var(--color-argile);
  text-underline-offset: 2px;
  transition: color var(--transition-slow);
}

.pr-contact-list a:hover {
  color: var(--color-jaune-luciole);
}

.pr-contact-btn {
  margin-left: 24px;
  align-self: flex-start;
}

/* Section 9 — Note légale 18+ */
.pr-legal {
  background-color: var(--color-anthracite);
  color: var(--color-creme-fume-80);
  padding-block: var(--space-48) var(--space-48);
}

.pr-legal-container {
  display: flex;
  justify-content: center;
}

.pr-legal-copy {
  max-width: 50%;
  margin: 0 auto;
  text-align: left;
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
}

.pr-legal-copy .dot {
  margin-top: 0.5em;
  flex-shrink: 0;
}

/* Tablet breakpoint */
@media (min-width: 768px) and (max-width: 1023px) {
  .pr-intro h1 {
    max-width: 70%;
    margin-left: 0;
  }

  .pr-intro-paragraph {
    max-width: 70%;
    margin-left: 16px;
  }

  .pr-entree-grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }

  .pr-entree-copy h2 {
    margin-left: 0;
  }

  .pr-entree-copy p {
  margin-left: 0;
  }

  .pr-entree-figure {
    transform: none;
  }

  .pr-table-grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }

  .pr-table-figure {
    transform: none;
    order: 2;
  }

  .pr-table-copy {
    order: 1;
  }

  .pr-table-copy h2 {
    margin-left: 0;
  }

  .pr-objects-grid {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }

  .pr-objects-figure {
    transform: none;
  }

  .pr-face-copy h2,
  .pr-bistro-copy h2,
  .pr-view-copy h2,
  .pr-contact-copy h2 {
    max-width: 100%;
    margin-left: 0;
  }

  .pr-face-copy p,
  .pr-bistro-copy p,
  .pr-view-copy p,
  .pr-contact-copy p {
  margin-left: 0;
  }

  .pr-face-list,
  .pr-bistro-copy .content-list,
  .pr-contact-list {
    max-width: 100%;
    margin-left: 0;
  }

  .pr-view-figure img {
    height: 320px;
  }

  .pr-legal-copy {
    max-width: 80%;
  }
}

/* Mobile breakpoint */
@media (max-width: 767px) {
  .pr-intro,
  .pr-entree,
  .pr-table,
  .pr-objects,
  .pr-face,
  .pr-view,
  .pr-bistro,
  .pr-contact {
    padding-block: var(--space-64) var(--space-64);
  }

  .pr-intro h1 {
    font-size: 2rem;
    max-width: 100%;
    margin-left: 16px;
    margin-bottom: var(--space-16);
  }

  .pr-intro-paragraph {
    max-width: 100%;
    margin-left: 0;
    padding-inline: var(--space-24);
  }

  .pr-entree-grid,
  .pr-table-grid,
  .pr-objects-grid {
    grid-template-columns: 1fr;
    gap: var(--space-24);
  }

  .pr-entree-copy h2,
  .pr-table-copy h2,
  .pr-objects-copy h2,
  .pr-face-copy h2,
  .pr-view-copy h2,
  .pr-bistro-copy h2,
  .pr-contact-copy h2 {
    font-size: 1.75rem;
    max-width: 100%;
    margin-left: 16px;
    margin-right: 0;
  }

  .pr-entree-copy p,
  .pr-table-copy p,
  .pr-object-item p,
  .pr-face-copy p,
  .pr-view-copy p,
  .pr-bistro-copy p,
  .pr-contact-copy p {
  margin-left: 0;
    padding-inline: var(--space-24);
  }

  .pr-entree-figure,
  .pr-table-figure,
  .pr-objects-figure {
    transform: none;
    order: 0;
  }

  .pr-entree-figure img,
  .pr-objects-figure img {
    aspect-ratio: 4 / 3;
  }

  .pr-table-figure img {
    aspect-ratio: 1 / 1;
  }

  .pr-face-list,
  .pr-bistro-copy .content-list {
    max-width: 100%;
    margin-left: 16px;
    padding-inline-end: var(--space-24);
  }

  .pr-view-figure img {
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .pr-contact-list {
    max-width: 100%;
    margin-left: 0;
    padding-inline: var(--space-24);
  }

  .pr-contact-btn {
    width: calc(100% - 48px);
    margin-left: var(--space-24);
    margin-right: var(--space-24);
    justify-content: center;
  }

  .pr-legal-copy {
    max-width: 100%;
    padding-inline: var(--space-24);
    margin-left: 0;
    margin-right: 0;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .pr-entree-figure,
  .pr-table-figure,
  .pr-objects-figure {
    transform: none;
  }
}


/* ===== Assiettes page — Points de Lumière ===== */

.assiettes-intro {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96) var(--space-48);
}

.assiettes-intro__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.assiettes-intro__title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  margin-block-end: 0;
  display: flex;
  align-items: center;
  gap: var(--space-8);
  max-width: 7ch;
  width: 100%;
}

.assiettes-intro__title .dot {
  flex-shrink: 0;
}

.assiettes-intro__text {
  max-width: 65ch;
  margin-block-end: 0;
}

.assiettes-intro__text + .assiettes-intro__text {
  margin-block-start: var(--space-16);
}

/* Assiettes signature — 7/5 grid */
.assiettes-signature {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-48) var(--space-96);
}

.assiettes-signature__grid {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.assiettes-signature__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
}

.assiettes-signature__content > * {
  margin-block-end: 0;
}

.assiettes-signature__title {
  margin-block-end: 0;
}

.assiettes-signature__subtitle {
  margin-block-end: 0;
}

.assiettes-signature__list {
  margin-block-end: 0;
}

.assiettes-signature__figure {
  margin-block-end: 0;
  min-width: 0;
}

.assiettes-signature__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-0);
}

/* Desserts — 4/8 grid */
.assiettes-desserts {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.assiettes-desserts__grid {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.assiettes-desserts__figure {
  margin-block-end: 0;
  min-width: 0;
}

.assiettes-desserts__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-0);
  filter: sepia(0.15) contrast(0.95) brightness(0.95);
}

.assiettes-desserts__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
}

.assiettes-desserts__content > * {
  margin-block-end: 0;
}

.assiettes-desserts__title {
  margin-block-end: 0;
}

.assiettes-desserts__subtitle {
  margin-block-end: 0;
}

.assiettes-desserts__list {
  margin-block-end: 0;
}

/* Présentation et esthétique de la table — 5/7 grid */
.assiettes-table {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.assiettes-table__grid {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.assiettes-table__figure {
  margin-block-end: 0;
  min-width: 0;
}

.assiettes-table__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.assiettes-table__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
}

.assiettes-table__content > * {
  margin-block-end: 0;
}

.assiettes-table__title {
  margin-block-end: 0;
}

.assiettes-table__subtitle {
  margin-block-end: 0;
}

.assiettes-table__list {
  margin-block-end: 0;
}

/* Lien avec le poker offline — prune sombre */
.assiettes-poker {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.assiettes-poker__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.assiettes-poker__title {
  color: var(--color-creme-fume);
  margin-block-end: 0;
  display: flex;
  align-items: center;
  gap: var(--space-8);
}

.assiettes-poker__title .dot {
  flex-shrink: 0;
}

.assiettes-poker__subtitle {
  color: var(--color-creme-fume);
  margin-block-end: 0;
}

.assiettes-poker__list {
  margin-block-end: 0;
}

.assiettes-poker__list li::before {
  background-color: var(--color-jaune-luciole);
}

.assiettes-poker__inner p {
  margin-block-end: 0;
}

/* L'expérience du repas — 7/5 grid */
.assiettes-experience {
  background-color: var(--color-creme-fume);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.assiettes-experience__grid {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-48);
}

.assiettes-experience__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
}

.assiettes-experience__content > * {
  margin-block-end: 0;
}

.assiettes-experience__title {
  margin-block-end: 0;
}

.assiettes-experience__subtitle {
  margin-block-end: 0;
}

.assiettes-experience__list {
  margin-block-end: 0;
}

.assiettes-experience__figure {
  margin-block-end: 0;
  min-width: 0;
}

.assiettes-experience__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-0);
}

/* La carte des assiettes — argile */
.assiettes-carte {
  background-color: var(--color-argile);
  color: var(--color-anthracite);
  padding-block: var(--space-96);
}

.assiettes-carte__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.assiettes-carte__title {
  margin-block-end: 0;
  display: flex;
  align-items: center;
  gap: var(--space-8);
}

.assiettes-carte__title .dot {
  flex-shrink: 0;
}

.assiettes-carte__subtitle {
  margin-block-end: 0;
}

.assiettes-carte__list {
  margin-block-end: 0;
}

.assiettes-carte__inner p {
  margin-block-end: 0;
}

/* Invitation à découvrir — vert bouteille */
.assiettes-invitation {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.assiettes-invitation__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.assiettes-invitation__title {
  color: var(--color-creme-fume);
  margin-block-end: 0;
  display: flex;
  align-items: center;
  gap: var(--space-8);
}

.assiettes-invitation__title .dot {
  flex-shrink: 0;
}

.assiettes-invitation__inner p {
  margin-block-end: 0;
}

.assiettes-invitation__address {
  font-style: normal;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  margin-block-start: var(--space-8);
}

.assiettes-invitation__address p {
  margin-block-end: 0;
}

.assiettes-invitation__address a {
  color: var(--color-jaune-luciole);
  border-bottom: 1px solid var(--color-jaune-luciole);
  transition: border-color var(--transition-slow), color var(--transition-slow);
}

.assiettes-invitation__address a:hover {
  color: var(--color-creme-fume);
  border-bottom-color: var(--color-creme-fume);
}

/* ===== Tablet (768px+) ===== */
@media (min-width: 768px) {
  .assiettes-intro__inner,
  .assiettes-signature__grid,
  .assiettes-desserts__grid,
  .assiettes-table__grid,
  .assiettes-poker__inner,
  .assiettes-experience__grid,
  .assiettes-carte__inner,
  .assiettes-invitation__inner {
    padding-inline: var(--container-gutter-desktop);
  }

  .assiettes-intro__title {
    max-width: 7ch;
  }

  .assiettes-signature__grid {
    grid-template-columns: 7fr 5fr;
    align-items: start;
  }

  .assiettes-signature__content {
    grid-column: 1;
    grid-row: 1;
  }

  .assiettes-signature__figure {
    grid-column: 2;
    grid-row: 1;
  }

  .assiettes-desserts__grid {
    grid-template-columns: 4fr 8fr;
    align-items: start;
  }

  .assiettes-desserts__figure {
    grid-column: 1;
    grid-row: 1;
  }

  .assiettes-desserts__content {
    grid-column: 2;
    grid-row: 1;
  }

  .assiettes-table__grid {
    grid-template-columns: 5fr 7fr;
    align-items: start;
  }

  .assiettes-table__figure {
    grid-column: 1;
    grid-row: 1;
  }

  .assiettes-table__content {
    grid-column: 2;
    grid-row: 1;
  }

  .assiettes-experience__grid {
    grid-template-columns: 7fr 5fr;
    align-items: start;
  }

  .assiettes-experience__content {
    grid-column: 1;
    grid-row: 1;
  }

  .assiettes-experience__figure {
    grid-column: 2;
    grid-row: 1;
  }
}

/* ===== Desktop (1024px+) ===== */
@media (min-width: 1024px) {
  .assiettes-intro {
    padding-block: var(--space-128) var(--space-64);
  }

  .assiettes-signature {
    padding-block: var(--space-64) var(--space-128);
  }

  .assiettes-desserts,
  .assiettes-table,
  .assiettes-poker,
  .assiettes-experience,
  .assiettes-carte,
  .assiettes-invitation {
    padding-block: var(--space-128);
  }

  .assiettes-intro__title {
    max-width: 7ch;
    margin-inline-start: -24px;
  }

  .assiettes-signature__title {
    margin-inline-start: -24px;
  }

  .assiettes-desserts__title {
    margin-inline-start: 16px;
  }

  .assiettes-table__title {
    margin-inline-start: 24px;
  }

  .assiettes-experience__title {
    margin-inline-start: -16px;
  }

  .assiettes-poker__inner,
  .assiettes-carte__inner,
  .assiettes-invitation__inner {
    align-items: flex-start;
  }

  .assiettes-poker__title,
  .assiettes-carte__title,
  .assiettes-invitation__title {
    margin-inline-start: -24px;
  }

  .assiettes-poker__inner p,
  .assiettes-carte__inner p,
  .assiettes-invitation__inner p {
    margin-inline-start: 0;
  }
}

/* ===== Mobile adjustments (max-width: 767px) ===== */
@media (max-width: 767px) {
  .assiettes-intro,
  .assiettes-signature,
  .assiettes-desserts,
  .assiettes-table,
  .assiettes-poker,
  .assiettes-experience,
  .assiettes-carte,
  .assiettes-invitation {
    padding-block: var(--space-64);
  }

  .assiettes-intro__inner,
  .assiettes-signature__grid,
  .assiettes-desserts__grid,
  .assiettes-table__grid,
  .assiettes-poker__inner,
  .assiettes-experience__grid,
  .assiettes-carte__inner,
  .assiettes-invitation__inner {
    padding-inline: var(--container-gutter-mobile);
  }

  .assiettes-intro__title {
    font-size: 2rem;
    max-width: 100%;
    margin-inline-start: -16px;
  }

  .assiettes-signature__title,
  .assiettes-desserts__title,
  .assiettes-table__title,
  .assiettes-experience__title {
    margin-inline-start: 0;
  }

  .assiettes-signature__figure img,
  .assiettes-experience__figure img {
    margin-inline-start: 8px;
  }

  .assiettes-desserts__figure img,
  .assiettes-table__figure img {
    margin-inline-start: -8px;
  }

  .assiettes-poker__inner,
  .assiettes-carte__inner,
  .assiettes-invitation__inner {
    align-items: flex-start;
  }

  .assiettes-poker__title,
  .assiettes-carte__title,
  .assiettes-invitation__title {
    margin-inline-start: -8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .assiettes-invitation__address a {
    transition: none;
  }
}


/* Page-specific styles for /interieur/ */

.interieur-page {
  overflow-x: hidden;
}

/* Introduction lumineuse */
.interieur-intro {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.interieur-intro__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.interieur-intro__title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  font-weight: var(--text-h1-weight);
  margin-block-end: 0;
  max-width: 60%;
  align-self: flex-end;
  margin-inline-start: auto;
}

.interieur-intro__lead {
  max-width: 70ch;
  margin-block-end: 0;
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
}

.interieur-intro__dot {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  margin-block-start: 0.6em;
}

.interieur-intro__details {
  max-width: 70ch;
  margin-block-end: 0;
  color: var(--color-anthracite);
}

/* La lumière comme signature */
.interieur-lumiere {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.interieur-lumiere__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
}

.interieur-lumiere__main {
  min-width: 0;
}

.interieur-lumiere__title {
  margin-block-end: var(--space-16);
}

.interieur-lumiere__main p {
  margin-block-end: var(--space-24);
}

.interieur-lumiere__list {
  margin-block-start: var(--space-8);
}

.interieur-lumiere__aside {
  min-width: 0;
  margin-inline-start: auto;
  max-width: 55ch;
}

.interieur-lumiere__aside-title {
  margin-block-end: var(--space-8);
}

.interieur-lumiere__aside p {
  margin-block-end: var(--space-16);
}

.interieur-lumiere__aside-list {
  margin-block-start: var(--space-8);
}

/* La salle de bistrot */
.interieur-salle {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.interieur-salle__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
  align-items: start;
}

.interieur-salle__text {
  min-width: 0;
}

.interieur-salle__title {
  margin-block-end: var(--space-16);
}

.interieur-salle__text p {
  margin-block-end: var(--space-16);
}

.interieur-salle__subtitle {
  margin-block-start: var(--space-24);
  margin-block-end: var(--space-8);
}

.interieur-salle__figure {
  margin-block-end: 0;
  width: 100%;
  max-width: 100%;
}

.interieur-salle__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.interieur-salle__figure figcaption {
  margin-block-start: var(--space-8);
}

/* Le Card Lounge */
.interieur-card-lounge {
  padding-block: var(--space-96);
}

.interieur-card-lounge__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
}

.interieur-card-lounge__main {
  min-width: 0;
}

.interieur-card-lounge__title {
  margin-block-end: var(--space-16);
}

.interieur-card-lounge__main p {
  margin-block-end: var(--space-24);
}

.interieur-card-lounge__list {
  margin-block-start: var(--space-8);
}

.interieur-card-lounge__aside {
  min-width: 0;
  margin-inline-start: auto;
  max-width: 55ch;
}

.interieur-card-lounge__aside-title {
  margin-block-end: var(--space-8);
}

.interieur-card-lounge__aside p {
  margin-block-end: var(--space-16);
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
}

.interieur-card-lounge__dot {
  flex-shrink: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  margin-block-start: 0.6em;
}

.interieur-card-lounge__aside-list {
  margin-block-start: var(--space-8);
}

/* Le Poker Room */
.interieur-poker-room {
  padding-block: var(--space-96);
}

.interieur-poker-room__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
  align-items: start;
}

.interieur-poker-room__figure {
  margin-block-end: 0;
  width: 100%;
  max-width: 100%;
}

.interieur-poker-room__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.interieur-poker-room__figure figcaption {
  margin-block-start: var(--space-8);
}

.interieur-poker-room__text {
  min-width: 0;
}

.interieur-poker-room__title {
  margin-block-end: var(--space-16);
}

.interieur-poker-room__text p {
  margin-block-end: var(--space-16);
}

.interieur-poker-room__subtitle {
  margin-block-start: var(--space-24);
  margin-block-end: var(--space-8);
}

/* Détails sensoriels du poker physique */
.interieur-details {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.interieur-details__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
}

.interieur-details__main {
  min-width: 0;
}

.interieur-details__title {
  margin-block-end: var(--space-16);
}

.interieur-details__main p {
  margin-block-end: var(--space-24);
}

.interieur-details__list {
  margin-block-start: var(--space-8);
}

.interieur-details__aside {
  min-width: 0;
  margin-inline-start: auto;
  max-width: 55ch;
}

.interieur-details__aside-title {
  margin-block-end: var(--space-8);
}

.interieur-details__aside p {
  margin-block-end: var(--space-16);
}

.interieur-details__aside-list {
  margin-block-start: var(--space-8);
}

/* Continuité spatiale et parcours */
.interieur-continuite {
  padding-block: var(--space-96);
}

.interieur-continuite__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
  align-items: start;
}

.interieur-continuite__text {
  min-width: 0;
}

.interieur-continuite__title {
  margin-block-end: var(--space-16);
}

.interieur-continuite__text p {
  margin-block-end: var(--space-16);
}

.interieur-continuite__subtitle {
  margin-block-start: var(--space-24);
  margin-block-end: var(--space-8);
}

.interieur-continuite__figure {
  margin-block-end: 0;
  width: 100%;
  max-width: 100%;
}

.interieur-continuite__figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-0);
}

.interieur-continuite__figure figcaption {
  margin-block-start: var(--space-8);
}

/* L’expérience du soir */
.interieur-soir {
  padding-block: var(--space-96);
}

.interieur-soir__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-48);
}

.interieur-soir__main {
  min-width: 0;
}

.interieur-soir__title {
  margin-block-end: var(--space-16);
}

.interieur-soir__main p {
  margin-block-end: var(--space-24);
}

.interieur-soir__list {
  margin-block-start: var(--space-8);
}

.interieur-soir__aside {
  min-width: 0;
  margin-inline-start: auto;
  max-width: 55ch;
}

.interieur-soir__aside-title {
  margin-block-end: var(--space-8);
}

.interieur-soir__aside p {
  margin-block-end: var(--space-16);
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
}

.interieur-soir__dot {
  flex-shrink: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  margin-block-start: 0.6em;
}

.interieur-soir__aside-list {
  margin-block-start: var(--space-8);
}

/* Invitation à découvrir */
.interieur-invitation {
  background-color: var(--color-creme-fume);
  padding-block: var(--space-96);
}

.interieur-invitation__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.interieur-invitation__title {
  font-size: var(--text-h2-size);
  line-height: var(--text-h2-leading);
  font-weight: var(--text-h2-weight);
  margin-block-end: 0;
  max-width: 60%;
  align-self: flex-end;
  margin-inline-start: auto;
}

.interieur-invitation__inner p {
  margin-block-end: 0;
}

.interieur-invitation__btn {
  margin-block-start: var(--space-24);
}

/* Tablet and desktop adjustments */
@media (min-width: 768px) {
  .interieur-intro__inner,
  .interieur-lumiere__inner,
  .interieur-salle__inner,
  .interieur-card-lounge__inner,
  .interieur-poker-room__inner,
  .interieur-details__inner,
  .interieur-continuite__inner,
  .interieur-soir__inner,
  .interieur-invitation__inner {
    padding-inline: var(--container-gutter-desktop);
  }

  .interieur-intro__title {
    font-size: var(--text-h1-size);
  }

  .interieur-intro__lead,
  .interieur-intro__details {
    max-width: 70ch;
  }

  .interieur-lumiere__inner {
    grid-template-columns: minmax(0, 55fr) minmax(0, 35fr);
    gap: var(--space-64);
  }

  .interieur-lumiere__aside {
    margin-inline-start: 0;
    max-width: none;
  }

  .interieur-salle__inner {
    grid-template-columns: minmax(0, 50fr) minmax(0, 45fr);
    gap: var(--space-64);
  }

  .interieur-salle__figure {
    transform: translateX(var(--space-24));
  }

  .interieur-card-lounge__inner {
    grid-template-columns: minmax(0, 55fr) minmax(0, 35fr);
    gap: var(--space-64);
  }

  .interieur-card-lounge__aside {
    margin-inline-start: 0;
    max-width: none;
  }

  .interieur-poker-room__inner {
    grid-template-columns: minmax(0, 45fr) minmax(0, 50fr);
    gap: var(--space-64);
  }

  .interieur-poker-room__figure {
    transform: translateX(calc(-1 * var(--space-24)));
  }

  .interieur-details__inner {
    grid-template-columns: minmax(0, 55fr) minmax(0, 35fr);
    gap: var(--space-64);
  }

  .interieur-details__aside {
    margin-inline-start: 0;
    max-width: none;
  }

  .interieur-continuite__inner {
    grid-template-columns: minmax(0, 50fr) minmax(0, 45fr);
    gap: var(--space-64);
  }

  .interieur-continuite__figure {
    transform: translateX(var(--space-24));
  }

  .interieur-soir__inner {
    grid-template-columns: minmax(0, 55fr) minmax(0, 35fr);
    gap: var(--space-64);
  }

  .interieur-soir__aside {
    margin-inline-start: 0;
    max-width: none;
  }

  .interieur-invitation__title {
    font-size: var(--text-h2-size);
  }

  .interieur-invitation__inner p {
  }
}

@media (min-width: 1024px) {
  .interieur-intro__title {
    font-size: var(--text-h1-size);
  }

  .interieur-intro__lead,
  .interieur-intro__details {
    max-width: 70ch;
  }

  .interieur-lumiere__main p,
  .interieur-salle__text p,
  .interieur-card-lounge__main p,
  .interieur-poker-room__text p,
  .interieur-details__main p,
  .interieur-continuite__text p,
  .interieur-soir__main p {
  }

  .interieur-lumiere__aside p,
  .interieur-card-lounge__aside p,
  .interieur-details__aside p,
  .interieur-soir__aside p {
  }
}

@media (max-width: 767px) {
  .interieur-intro,
  .interieur-lumiere,
  .interieur-salle,
  .interieur-card-lounge,
  .interieur-poker-room,
  .interieur-details,
  .interieur-continuite,
  .interieur-soir,
  .interieur-invitation {
    padding-block: var(--space-64);
  }

  .interieur-intro__title {
    font-size: 2rem;
    max-width: 100%;
    align-self: flex-start;
    margin-inline-start: 0;
    transform: translateX(-16px);
  }

  .interieur-intro__lead,
  .interieur-intro__details {
    max-width: 100%;
  }

  .interieur-lumiere__inner,
  .interieur-salle__inner,
  .interieur-card-lounge__inner,
  .interieur-poker-room__inner,
  .interieur-details__inner,
  .interieur-continuite__inner,
  .interieur-soir__inner,
  .interieur-invitation__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-32);
  }

  .interieur-lumiere__aside,
  .interieur-card-lounge__aside,
  .interieur-details__aside,
  .interieur-soir__aside {
    margin-inline-start: 0;
    max-width: 100%;
  }

  .interieur-salle__figure,
  .interieur-poker-room__figure,
  .interieur-continuite__figure {
    transform: none;
  }

  .interieur-invitation__title {
    max-width: 100%;
    align-self: flex-start;
    margin-inline-start: 0;
    transform: translateX(-16px);
  }

  .interieur-invitation__inner p {
  }

  .interieur-invitation__btn {
    width: 100%;
  }
}


/* Page-owned styles for Accueil — Bistro Luciole */

.home-main {
  display: block;
}

/* Shared section rhythm */
.home-section {
  padding-block: var(--space-96);
}

.home-section__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
}

.home-section__copy {
  min-width: 0;
}

.home-section__copy h2 {
  margin-block-end: var(--space-16);
}

.home-section__copy p {
  margin-block-end: var(--space-24);
}

.home-section__copy .content-list {
  margin-block-start: var(--space-16);
}

.home-section__dot {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  margin-block-end: var(--space-16);
}

/* Hero */
.home-hero {
  padding-block: var(--space-96) var(--space-128);
  background-color: var(--color-creme-fume);
}

.home-hero__inner {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-gutter-mobile);
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: var(--space-48);
  align-items: start;
}

.home-hero__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-24);
}

.home-hero__title {
  font-size: var(--text-display-size);
  line-height: var(--text-display-leading);
  font-weight: var(--text-display-weight);
  margin-block-end: 0;
  margin-inline-start: -16px;
  max-width: 12ch;
}

.home-hero__lead {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
  max-width: 55ch;
  margin-block-end: 0;
}

.home-hero__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-8);
  margin-block-start: var(--space-8);
}

.home-hero__meta-item {
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
  font-size: var(--text-small-size);
  line-height: var(--text-small-leading);
  color: var(--color-anthracite);
}

.home-hero__meta-item .dot {
  margin-block-start: 0.5em;
}

.home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-16);
  margin-block-start: var(--space-16);
}

.home-hero__visuals {
  position: relative;
  min-width: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  gap: var(--space-24);
  align-items: start;
}

.home-hero__figure {
  margin: 0;
  min-width: 0;
}

.home-hero__figure img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius-0);
}

.home-hero__figure--assiette {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  transform: translateY(0);
}

.home-hero__figure--table {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  transform: translateY(48px);
}

.home-hero__figure--cartes {
  grid-column: 1 / 3;
  grid-row: 2 / 3;
  width: 70%;
  justify-self: end;
  transform: translateY(16px);
}

.home-hero__dot {
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-jaune-luciole);
  z-index: 2;
}

.home-hero__dot--one {
  top: 20%;
  left: -12px;
}

.home-hero__dot--two {
  bottom: 12%;
  right: -12px;
}

/* Bistro */
.home-section--bistro {
  background-color: var(--color-creme-fume);
}

.home-section__copy--bistro {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--bistro h2 {
  margin-inline-start: 8px;
}

.home-section__copy--bistro p {
  }

/* Cuisine */
.home-section--cuisine {
  background-color: var(--color-argile);
}

.home-section__copy--cuisine {
  max-width: 58.333%;
  margin-inline: auto 0;
  text-align: left;
}

.home-section__copy--cuisine h2 {
  margin-inline-end: 8px;
}

.home-section__copy--cuisine p {
  }

/* La Carte */
.home-section--carte {
  background-color: var(--color-creme-fume);
}

.home-section__copy--carte {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--carte h2 {
  margin-inline-start: 8px;
}

.home-section__copy--carte p {
  }

/* Assiettes */
.home-section--assiettes {
  background-color: var(--color-argile);
}

.home-section__grid--assiettes {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: var(--space-48);
  align-items: start;
}

.home-section__copy--assiettes {
  min-width: 0;
}

.home-section__copy--assiettes h2 {
  margin-inline-start: 8px;
}

.home-section__copy--assiettes p {
  }

.home-section__figure {
  margin: 0;
  min-width: 0;
}

.home-section__figure img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius-0);
}

.home-section__figure figcaption {
  margin-block-start: var(--space-8);
}

.home-section__figure--assiettes {
  margin-inline-end: -24px;
}

/* Intérieur */
.home-section--interieur {
  background-color: var(--color-creme-fume);
}

.home-section__copy--interieur {
  max-width: 58.333%;
  margin-inline: auto 0;
  text-align: left;
}

.home-section__copy--interieur h2 {
  margin-inline-end: 8px;
}

.home-section__copy--interieur p {
  }

/* Après le Dîner */
.home-section--apres {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.home-section__copy--apres {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--apres h2 {
  color: var(--color-creme-fume);
  margin-inline-start: 8px;
}

.home-section__copy--apres p {
  color: var(--color-creme-fume-80);
  }

/* Poker Offline */
.home-section--poker-offline {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
}

.home-section__copy--poker-offline {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--poker-offline h2 {
  color: var(--color-creme-fume);
  margin-inline-start: 8px;
}

.home-section__copy--poker-offline p {
  color: var(--color-creme-fume-80);
  }

.home-section__copy--poker-offline .content-list li {
  color: var(--color-creme-fume);
}

.home-section__copy--poker-offline .content-list li::before {
  background-color: var(--color-jaune-luciole);
}

/* Poker Room */
.home-section--poker-room {
  background-color: var(--color-creme-fume);
}

.home-section__grid--poker-room {
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: var(--space-48);
  align-items: start;
}

.home-section__copy--poker-room {
  min-width: 0;
}

.home-section__copy--poker-room h2 {
  margin-inline-start: 8px;
}

.home-section__copy--poker-room p {
  }

.home-section__figure--poker-room {
  margin-inline-end: -24px;
}

/* Card Lounge */
.home-section--card-lounge {
  background-color: var(--color-argile);
}

.home-section__copy--card-lounge {
  max-width: 58.333%;
  margin-inline: auto 0;
  text-align: left;
}

.home-section__copy--card-lounge h2 {
  margin-inline-end: 8px;
}

.home-section__copy--card-lounge p {
  }

/* Tables de Poker */
.home-section--tables {
  background-color: var(--color-creme-fume);
}

.home-section__copy--tables {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--tables h2 {
  margin-inline-start: 8px;
}

.home-section__copy--tables p {
  }

/* Restaurant & Poker */
.home-section--restaurant-poker {
  background-color: var(--color-vert-bouteille);
  color: var(--color-creme-fume);
}

.home-section__copy--restaurant-poker {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--restaurant-poker h2 {
  color: var(--color-creme-fume);
  margin-inline-start: 8px;
}

.home-section__copy--restaurant-poker p {
  color: var(--color-creme-fume-80);
  }

.home-section__copy--restaurant-poker .content-list li {
  color: var(--color-creme-fume);
}

.home-section__copy--restaurant-poker .content-list li::before {
  background-color: var(--color-jaune-luciole);
}

/* Galerie */
.home-section--galerie {
  background-color: var(--color-creme-fume);
}

.home-section__copy--galerie-intro {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
  margin-block-end: var(--space-48);
}

.home-section__copy--galerie-intro h2 {
  margin-inline-start: 8px;
}

.home-section__copy--galerie-intro p {
  }

.home-galerie {
  display: grid;
  grid-template-columns: 7fr 5fr;
  grid-template-rows: auto auto;
  gap: var(--space-24);
  align-items: start;
}

.home-galerie__item {
  margin: 0;
  min-width: 0;
}

.home-galerie__item img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius-0);
}

.home-galerie__item figcaption {
  margin-block-start: var(--space-8);
}

.home-galerie__item--assiette {
  grid-column: 1 / 2;
  grid-row: 1 / 3;
}

.home-galerie__item--table {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  transform: translateY(24px);
}

.home-galerie__item--cartes {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  transform: translateY(48px);
}

/* Réservation */
.home-section--reservation {
  background-color: var(--color-prune-sombre);
  color: var(--color-creme-fume);
  text-align: center;
}

.home-section__copy--reservation {
  max-width: 50%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-24);
  text-align: center;
}

.home-section__copy--reservation h2 {
  color: var(--color-creme-fume);
  margin-inline-start: -8px;
  margin-block-end: 0;
}

.home-section__copy--reservation p {
  color: var(--color-creme-fume-80);
  margin-block-end: 0;
}

.home-section__actions {
  display: flex;
  justify-content: center;
}

/* Contact */
.home-section--contact {
  background-color: var(--color-creme-fume);
}

.home-section__copy--contact {
  max-width: 66.666%;
  margin-inline-start: auto;
  margin-inline-end: 0;
  text-align: left;
}

.home-section__copy--contact h2 {
  margin-inline-start: 8px;
}

.home-section__copy--contact p {
  }

.home-contact-list li {
  margin-block-end: var(--space-8);
}

.home-contact-list a {
  color: var(--color-anthracite);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: var(--color-argile);
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {
  .home-section {
    padding-block: var(--space-64);
  }

  .home-hero {
    padding-block: var(--space-64) var(--space-96);
  }

  .home-hero__inner {
    grid-template-columns: 1fr;
    gap: var(--space-48);
  }

  .home-hero__title {
    margin-inline-start: 0;
    max-width: 14ch;
  }

  .home-hero__visuals {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
  }

  .home-hero__figure--assiette {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    transform: none;
  }

  .home-hero__figure--table {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    transform: translateY(24px);
  }

  .home-hero__figure--cartes {
    grid-column: 1 / 3;
    grid-row: 2 / 3;
    width: 70%;
    justify-self: end;
    transform: none;
  }

  .home-section__copy--bistro,
  .home-section__copy--carte,
  .home-section__copy--apres,
  .home-section__copy--poker-offline,
  .home-section__copy--tables,
  .home-section__copy--restaurant-poker,
  .home-section__copy--galerie-intro,
  .home-section__copy--contact {
    max-width: 100%;
    margin-inline: 0;
  }

  .home-section__copy--cuisine,
  .home-section__copy--interieur,
  .home-section__copy--card-lounge {
    max-width: 100%;
    margin-inline: 0;
  }

  .home-section__grid--assiettes,
  .home-section__grid--poker-room {
    grid-template-columns: 1fr;
    gap: var(--space-32);
  }

  .home-section__figure--assiettes,
  .home-section__figure--poker-room {
    margin-inline-end: 0;
  }

  .home-galerie {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: var(--space-32);
  }

  .home-galerie__item--assiette,
  .home-galerie__item--table,
  .home-galerie__item--cartes {
    grid-column: 1 / 2;
    grid-row: auto;
    transform: none;
  }

  .home-section__copy--reservation {
    max-width: 75%;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .home-section {
    padding-block: var(--space-64);
  }

  .home-section__inner {
    padding-inline: var(--container-gutter-mobile);
  }

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

  .home-hero__inner {
    grid-template-columns: 1fr;
    gap: var(--space-32);
    padding-inline: var(--container-gutter-mobile);
  }

  .home-hero__content {
    gap: var(--space-16);
  }

  .home-hero__title {
    font-size: var(--text-h1-size);
    line-height: var(--text-h1-leading);
    margin-inline-start: -16px;
    max-width: 14ch;
  }

  .home-hero__lead {
    max-width: 100%;
  }

  .home-hero__meta {
    gap: var(--space-8);
  }

  .home-hero__actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  .home-hero__actions .btn {
    width: 100%;
  }

  .home-hero__visuals {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: var(--space-16);
  }

  .home-hero__figure--assiette,
  .home-hero__figure--table,
  .home-hero__figure--cartes {
    grid-column: 1 / 2;
    grid-row: auto;
    width: 100%;
    justify-self: stretch;
    transform: none;
  }

  .home-hero__dot {
    display: none;
  }

  .home-section__copy--bistro,
  .home-section__copy--cuisine,
  .home-section__copy--carte,
  .home-section__copy--interieur,
  .home-section__copy--apres,
  .home-section__copy--poker-offline,
  .home-section__copy--card-lounge,
  .home-section__copy--tables,
  .home-section__copy--restaurant-poker,
  .home-section__copy--galerie-intro,
  .home-section__copy--contact {
    max-width: 100%;
    margin-inline: 0;
  }

  .home-section__copy--bistro h2,
  .home-section__copy--carte h2,
  .home-section__copy--apres h2,
  .home-section__copy--poker-offline h2,
  .home-section__copy--tables h2,
  .home-section__copy--restaurant-poker h2,
  .home-section__copy--galerie-intro h2,
  .home-section__copy--contact h2 {
    margin-inline-start: 8px;
  }

  .home-section__copy--cuisine h2,
  .home-section__copy--interieur h2,
  .home-section__copy--card-lounge h2 {
    margin-inline-end: 8px;
  }

  .home-section__grid--assiettes,
  .home-section__grid--poker-room {
    grid-template-columns: 1fr;
    gap: var(--space-24);
  }

  .home-section__figure--assiettes,
  .home-section__figure--poker-room {
    margin-inline-end: 0;
  }

  .home-galerie {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: var(--space-24);
  }

  .home-galerie__item--assiette,
  .home-galerie__item--table,
  .home-galerie__item--cartes {
    grid-column: 1 / 2;
    grid-row: auto;
    transform: none;
  }

  .home-section__copy--reservation {
    max-width: 100%;
    padding-inline: var(--space-16);
  }

  .home-section__copy--reservation h2 {
    margin-inline-start: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pulse {
    animation: none;
    opacity: 1;
  }
}


/* Styles spécifiques à la page de remerciement */
.thank-you-main {
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-64) var(--container-gutter-mobile);
}

.thank-you-content {
  max-width: 640px;
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-24);
}

.thank-you-title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-leading);
  margin-block-end: 0;
}

.thank-you-message,
.thank-you-next {
  margin-block-end: 0;
  max-width: 520px;
  margin-inline: auto;
}

.thank-you-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-16);
  margin-block-start: var(--space-8);
}

@media (min-width: 768px) {
  .thank-you-main {
    padding: var(--space-96) var(--container-gutter-desktop);
  }
}