.cuisine-page {
  overflow: clip;
}

.cuisine-page .eyebrow {
  margin-block-end: 0;
}

.cuisine-page .button {
  min-height: 48px;
}

.cuisine-page .cuisine-text-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  font-weight: var(--weight-medium);
}

.cuisine-hero {
  padding-block-start: clamp(5rem, 10vw, 9rem);
}

.cuisine-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: center;
  column-gap: var(--space-5);
  row-gap: var(--space-7);
}

.cuisine-hero__content {
  display: flex;
  grid-column: 1 / span 6;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.cuisine-hero__content h1,
.cuisine-hero__content p {
  margin: 0;
}

.cuisine-hero__content h1 {
  max-width: 700px;
}

.cuisine-hero__lead {
  max-width: 600px;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.cuisine-hero__support {
  max-width: 550px;
}

.cuisine-hero__actions {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.cuisine-hero__actions > * {
  min-width: 0;
}

.cuisine-hero__note {
  max-width: 250px;
  border-inline-start: 2px solid var(--color-sun-baked-ochre);
  padding-inline-start: var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.cuisine-hero__media {
  grid-column: 7 / span 6;
  width: 100%;
  min-width: 0;
  align-self: start;
  aspect-ratio: 4 / 5;
  margin: var(--space-8) 0 0;
}

.cuisine-season__intro,
.cuisine-menu__intro,
.cuisine-drinks__intro,
.cuisine-occasions__intro {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.cuisine-season__intro {
  width: min(100%, 680px);
}

.cuisine-season__intro h2,
.cuisine-season__intro p,
.cuisine-menu__intro h2,
.cuisine-menu__intro p,
.cuisine-drinks__intro h2,
.cuisine-drinks__intro p,
.cuisine-occasions__intro h2,
.cuisine-occasions__intro p {
  margin: 0;
}

.cuisine-season__fragments {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: var(--space-5);
  margin-block-start: var(--space-8);
}

.cuisine-season__fragment {
  width: 100%;
  min-width: 0;
  border-block-start: 1px solid color-mix(in srgb, var(--color-charcoal-olive) 30%, transparent);
  padding-block-start: var(--space-4);
}

.cuisine-season__fragment--offset {
  margin-block-start: var(--space-7);
}

.cuisine-season__fragment h3 {
  margin-block-end: var(--space-4);
}

.cuisine-season__fragment p {
  max-width: 370px;
}

.cuisine-menu__intro {
  width: min(100%, 620px);
}

.cuisine-menu__panels {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-8);
}

.cuisine-menu__panel {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 310px;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  border: 1px solid var(--color-line-warm);
  padding: var(--space-6);
}

.cuisine-menu__panel > * {
  margin: 0;
}

.cuisine-menu__panel p {
  max-width: 38ch;
}

.cuisine-menu__panel a {
  margin-block-start: auto;
  font-size: var(--text-small);
}

.cuisine-menu__number {
  color: var(--color-clay-red);
  font-size: var(--text-small);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-label);
}

.cuisine-menu__panel--entrees {
  grid-column: 1 / span 5;
  background: var(--color-plaster-ivory);
}

.cuisine-menu__panel--plats {
  grid-column: 7 / span 5;
  margin-block-start: var(--space-7);
  border-color: transparent;
  background: var(--color-charcoal-olive);
  color: var(--color-chalk-white);
}

.cuisine-menu__panel--plats h3,
.cuisine-menu__panel--plats .cuisine-menu__number {
  color: inherit;
}

.cuisine-menu__panel--saison {
  grid-column: 2 / span 4;
  background: var(--color-travertine);
}

.cuisine-menu__panel--desserts {
  grid-column: 7 / span 6;
  background: var(--color-chalk-white);
}

.cuisine-materials__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: center;
  gap: var(--space-5);
}

.cuisine-materials__visual {
  position: relative;
  grid-column: 1 / span 7;
  width: 100%;
  min-width: 0;
}

.cuisine-materials__media {
  width: 100%;
  aspect-ratio: 3 / 2;
}

.cuisine-materials__quote {
  width: min(86%, 440px);
  margin: calc(var(--space-6) * -1) 0 0 auto;
  border: 1px solid var(--color-border);
  border-inline-start: 2px solid var(--color-sun-baked-ochre);
  padding: var(--space-5);
  background: var(--color-plaster-ivory);
}

.cuisine-materials__quote p {
  margin: 0;
}

.cuisine-materials__content {
  display: flex;
  grid-column: 9 / span 4;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.cuisine-materials__content h2,
.cuisine-materials__content p {
  margin: 0;
}

.cuisine-materials__content p {
  max-width: 440px;
}

.cuisine-drinks__intro {
  width: min(100%, 560px);
}

.cuisine-drinks__columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
  gap: var(--space-5);
  margin-block-start: var(--space-8);
  border-block-end: 1px solid var(--color-line-warm);
}

.cuisine-drinks__column {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 290px;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--space-4);
  padding: var(--space-6);
}

.cuisine-drinks__column h3,
.cuisine-drinks__column p {
  margin: 0;
}

.cuisine-drinks__column p {
  max-width: 330px;
}

.cuisine-drinks__column--vins {
  border-block-start: 3px solid var(--color-olive);
  background: var(--color-plaster-ivory);
}

.cuisine-drinks__column--cocktails {
  transform: translateY(calc(var(--space-5) * -1));
  background: var(--color-ultramarine);
  color: var(--color-chalk-white);
}

.cuisine-drinks__column--cocktails h3 {
  color: inherit;
}

.cuisine-drinks__column--sans-alcool {
  border-block-start: 3px solid var(--color-clay-red);
  background: var(--color-travertine);
}

.cuisine-sharing__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: start;
  gap: var(--space-5);
}

.cuisine-sharing__content {
  display: flex;
  grid-column: 1 / span 5;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.cuisine-sharing__content h2,
.cuisine-sharing__content p {
  margin: 0;
}

.cuisine-sharing__content > p:not(.cuisine-sharing__aside) {
  max-width: 460px;
}

.cuisine-sharing__aside {
  max-width: 230px;
  color: var(--color-ultramarine);
  font-family: var(--font-heading);
  font-size: var(--text-heading-small);
  line-height: var(--leading-heading-small);
}

.cuisine-sharing__right {
  display: flex;
  grid-column: 6 / span 7;
  min-width: 0;
  flex-direction: column;
  align-items: flex-end;
}

.cuisine-sharing__media {
  width: 100%;
  aspect-ratio: 4 / 5;
}

.cuisine-sharing__poker {
  display: flex;
  width: min(100%, 500px);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  margin: calc(var(--space-5) * -1) 0 0 auto;
  padding: var(--space-6);
}

.cuisine-sharing__poker h3,
.cuisine-sharing__poker p {
  margin: 0;
}

.cuisine-sharing__poker h3 {
  color: inherit;
}

.cuisine-sharing__poker a {
  color: var(--color-chalk-white);
}

.cuisine-occasions__intro {
  width: min(100%, 600px);
}

.cuisine-occasions__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: var(--space-5);
  margin-block-start: var(--space-8);
}

.cuisine-occasions__card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  border-block-start: 1px solid var(--color-line-warm);
  padding: var(--space-6);
}

.cuisine-occasions__card h3,
.cuisine-occasions__card p,
.cuisine-occasions__card span {
  margin: 0;
}

.cuisine-occasions__card p {
  max-width: 360px;
}

.cuisine-occasions__card span {
  color: var(--color-clay-red);
  font-size: var(--text-small);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-label);
}

.cuisine-occasions__card--friends {
  background: var(--color-chalk-white);
}

.cuisine-occasions__card--group {
  background: var(--color-plaster-ivory);
}

.cuisine-occasions__card--event {
  background: var(--color-travertine);
}

.cuisine-evenings__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: end;
  gap: var(--space-5);
}

.cuisine-evenings__manifesto {
  display: flex;
  grid-column: 1 / span 7;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.cuisine-evenings__manifesto h2,
.cuisine-evenings__manifesto p {
  margin: 0;
}

.cuisine-evenings__manifesto > p {
  max-width: 580px;
}

.cuisine-evenings__statement {
  font-family: var(--font-heading);
  font-size: clamp(1.875rem, 3vw, 2.5rem);
  line-height: 1.08;
  letter-spacing: -0.03em;
}

.cuisine-evenings .eyebrow {
  color: var(--color-chalk-white);
}

.cuisine-evenings .eyebrow::before {
  background: var(--color-sun-baked-ochre);
}

.cuisine-evenings__actions {
  display: grid;
  grid-column: 8 / span 5;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: var(--space-3);
}

.cuisine-evenings__actions article {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  border-block-start: 1px solid color-mix(in srgb, var(--color-chalk-white) 35%, transparent);
  padding-block-start: var(--space-4);
}

.cuisine-evenings__actions h3,
.cuisine-evenings__actions p {
  margin: 0;
}

.cuisine-evenings__actions h3 {
  color: inherit;
}

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

.cuisine-evenings__actions .button {
  width: 100%;
}

.cuisine-cta__wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.cuisine-cta__accent {
  grid-column: 3 / span 7;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  height: 100%;
  transform: translate(16px, 16px);
  background: var(--color-sun-baked-ochre);
}

.cuisine-cta__panel {
  position: relative;
  z-index: 1;
  display: flex;
  grid-column: 3 / span 7;
  grid-row: 1;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-7);
  border: 1px solid var(--color-line-warm);
  background: var(--color-plaster-ivory);
}

.cuisine-cta__panel h2,
.cuisine-cta__panel p {
  margin: 0;
}

.cuisine-cta__panel h2 {
  color: var(--color-ultramarine);
}

.cuisine-cta__panel p {
  max-width: 540px;
}

.cuisine-cta__links {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-block-start: var(--space-2);
  padding-block-start: var(--space-4);
  border-block-start: 1px solid var(--color-line-warm);
}

.cuisine-cta__links a {
  display: inline-flex;
  min-height: 44px;
  min-width: 0;
  align-items: center;
  font-weight: var(--weight-medium);
}

@media (max-width: 64rem) {
  .cuisine-hero__grid,
  .cuisine-materials__grid,
  .cuisine-sharing__grid,
  .cuisine-evenings__grid,
  .cuisine-cta__wrap {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .cuisine-hero__content {
    grid-column: 1 / span 4;
  }

  .cuisine-hero__media {
    grid-column: 5 / span 4;
  }

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

  .cuisine-menu__panel--entrees,
  .cuisine-menu__panel--plats,
  .cuisine-menu__panel--saison,
  .cuisine-menu__panel--desserts {
    grid-column: auto;
    margin-block-start: 0;
  }

  .cuisine-materials__visual {
    grid-column: 1 / span 5;
  }

  .cuisine-materials__content {
    grid-column: 6 / span 3;
  }

  .cuisine-sharing__content {
    grid-column: 1 / span 4;
  }

  .cuisine-sharing__right {
    grid-column: 5 / span 4;
  }

  .cuisine-evenings__manifesto {
    grid-column: 1 / span 8;
  }

  .cuisine-evenings__actions {
    grid-column: 1 / span 8;
    margin-block-start: var(--space-5);
  }

  .cuisine-cta__accent,
  .cuisine-cta__panel {
    grid-column: 2 / span 6;
  }
}

@media (max-width: 60rem) {
  .cuisine-hero__grid,
  .cuisine-sharing__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .cuisine-hero__content,
  .cuisine-hero__media,
  .cuisine-sharing__content,
  .cuisine-sharing__right {
    grid-column: 1 / span 8;
  }

  .cuisine-hero__media {
    margin: 0;
  }

  .cuisine-sharing__right {
    align-items: flex-start;
  }

  .cuisine-sharing__poker {
    margin: var(--space-4) 0 0 auto;
  }

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

  .cuisine-season__fragment--offset {
    margin-block-start: 0;
  }

  .cuisine-season__fragment:last-child {
    grid-column: 1 / span 2;
  }
}

@media (max-width: 56.25rem) {
  .cuisine-materials__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .cuisine-materials__visual,
  .cuisine-materials__content {
    grid-column: 1 / span 8;
  }

  .cuisine-materials__content {
    margin-block-start: var(--space-3);
  }

  .cuisine-drinks__columns,
  .cuisine-occasions__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cuisine-drinks__column--sans-alcool,
  .cuisine-occasions__card--event {
    grid-column: 1 / span 2;
  }
}

@media (max-width: 52.5rem) {
  .cuisine-evenings__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .cuisine-evenings__manifesto,
  .cuisine-evenings__actions {
    grid-column: 1 / span 8;
  }
}

@media (max-width: 48rem) {
  .cuisine-hero__grid,
  .cuisine-materials__grid,
  .cuisine-sharing__grid,
  .cuisine-evenings__grid,
  .cuisine-cta__wrap {
    grid-template-columns: minmax(0, 1fr);
  }

  .cuisine-hero__content,
  .cuisine-hero__media,
  .cuisine-materials__visual,
  .cuisine-materials__content,
  .cuisine-sharing__content,
  .cuisine-sharing__right,
  .cuisine-evenings__manifesto,
  .cuisine-evenings__actions,
  .cuisine-cta__accent,
  .cuisine-cta__panel {
    grid-column: 1;
  }

  .cuisine-hero {
    padding-block-start: var(--section-space-compact);
  }

  .cuisine-hero__content h1 {
    font-size: 2.625rem;
    line-height: 1.04;
  }

  .cuisine-hero__lead {
    font-size: 1.125rem;
  }

  .cuisine-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .cuisine-hero__actions .button {
    width: 100%;
  }

  .cuisine-season__fragments,
  .cuisine-menu__panels,
  .cuisine-drinks__columns,
  .cuisine-occasions__cards,
  .cuisine-evenings__actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .cuisine-season__fragment:last-child,
  .cuisine-drinks__column--sans-alcool,
  .cuisine-occasions__card--event {
    grid-column: auto;
  }

  .cuisine-season__fragments {
    gap: var(--space-6);
    margin-block-start: var(--space-7);
  }

  .cuisine-menu__panels,
  .cuisine-drinks__columns,
  .cuisine-occasions__cards {
    margin-block-start: var(--space-7);
  }

  .cuisine-menu__panel,
  .cuisine-drinks__column,
  .cuisine-occasions__card {
    min-height: 0;
    padding: var(--space-5);
  }

  .cuisine-drinks__column--cocktails {
    transform: none;
  }

  .cuisine-materials__quote {
    width: 100%;
    margin: var(--space-4) 0 0;
    padding: var(--space-5);
    font-size: 1.75rem;
    line-height: 1.14;
  }

  .cuisine-sharing__poker {
    width: 100%;
    margin: var(--space-4) 0 0;
    padding: var(--space-5);
  }

  .cuisine-evenings__actions {
    margin-block-start: var(--space-6);
  }

  .cuisine-evenings__actions .button {
    width: 100%;
  }

  .cuisine-cta__accent {
    display: none;
  }

  .cuisine-cta__panel {
    padding: var(--space-5);
  }

  .cuisine-cta__panel .button {
    width: 100%;
  }

  .cuisine-cta__links {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-2);
  }
}

@media (prefers-reduced-motion: reduce) {
  .cuisine-page .media-frame img,
  .cuisine-page .media-frame video,
  .cuisine-drinks__column--cocktails,
  .cuisine-cta__accent {
    transform: none !important;
  }
}
