.etlap-page {
  background: var(--color-cream-50);
}

.etlap-page [id] {
  scroll-margin-top: var(--etlap-scroll-offset, 7rem);
}

.etlap-hero__grid,
.etlap-seasonal__grid,
.etlap-desserts__grid,
.etlap-cardroom__grid {
  display: grid;
  grid-template-columns: minmax(23.75rem, 5fr) minmax(0, 7fr);
  gap: clamp(var(--space-6), 5vw, var(--space-8));
  align-items: center;
}

.etlap-hero__copy,
.etlap-hero__media,
.etlap-seasonal__copy,
.etlap-seasonal__media,
.etlap-desserts__copy,
.etlap-desserts__media,
.etlap-cardroom__copy,
.etlap-cardroom__media {
  min-width: 0;
  width: 100%;
}

.etlap-hero__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.etlap-hero__copy > * {
  margin: 0;
}

.etlap-hero__copy h1 {
  font-size: clamp(3.5rem, 5.5vw, 4.25rem);
  line-height: 0.98;
}

.etlap-hero__intro {
  width: 100%;
  max-width: 35rem;
}

.etlap-hero__intro p:last-child {
  margin-bottom: 0;
}

.etlap-hero__actions {
  width: 100%;
}

.etlap-hero__media,
.etlap-seasonal__media,
.etlap-desserts__media,
.etlap-cardroom__media,
.etlap-smallplates__media {
  margin: 0;
  overflow: hidden;
  width: 100%;
}

.etlap-hero__media {
  aspect-ratio: 3 / 4;
}

.etlap-hero__media img,
.etlap-seasonal__media img,
.etlap-desserts__media img,
.etlap-cardroom__media img,
.etlap-smallplates__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.etlap-hero__media img {
  object-position: center;
}

.etlap-index {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  border-block: 1px solid var(--color-line);
}

.etlap-index > a {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 2.75rem;
  padding: var(--space-2) var(--space-3);
  color: var(--color-tobacco);
  font-size: var(--text-meta);
  font-weight: 700;
  line-height: var(--leading-meta);
  text-decoration: none;
}

.etlap-index > a:hover {
  color: var(--color-petrol);
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

.etlap-smallplates__header {
  width: 100%;
  max-width: 40rem;
}

.etlap-smallplates__header p:last-child,
.etlap-mains__header p:last-child,
.etlap-drinks__header p:last-child,
.etlap-booking__header p:last-child {
  margin-bottom: 0;
}

.etlap-smallplates__content {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 5fr);
  gap: var(--space-6);
  margin-top: var(--space-7);
  align-items: start;
}

.etlap-smallplates__course {
  grid-column: 1 / span 1;
  min-width: 0;
}

.etlap-smallplates__course--share {
  grid-column: 3 / span 1;
  padding: var(--space-5);
  background: color-mix(in srgb, var(--color-dusty-rose) 34%, var(--color-cream-50));
}

.etlap-smallplates__course-copy {
  max-width: 31rem;
}

.etlap-smallplates__course-copy p:last-child,
.etlap-mains__main-copy p:last-child,
.etlap-mains__grill-copy p:last-child,
.etlap-drink-card__copy p:last-child {
  margin-bottom: 0;
}

.etlap-smallplates__media {
  grid-column: 3 / span 1;
  justify-self: end;
  width: min(100%, 13rem);
  aspect-ratio: 3 / 2;
  margin-top: var(--space-7);
}

.etlap-smallplates__media img {
  object-position: center;
}

.etlap-smallplates__link-note {
  max-width: 30rem;
  margin-bottom: 0;
  color: var(--color-tobacco);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-smallplates__editor-note {
  max-width: 42rem;
  margin: var(--space-6) 0 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-line);
  color: var(--color-tobacco);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-menu-lines {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  margin-top: var(--space-5);
  border-top: 1px solid var(--color-line);
}

.etlap-menu-lines > span {
  min-width: 0;
  min-height: 2.75rem;
  padding-block: var(--space-3);
  border-bottom: 1px solid var(--color-line);
  color: var(--color-tobacco);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-seasonal {
  padding-block: var(--section-space);
}

.etlap-seasonal__grid {
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
}

.etlap-seasonal__copy {
  grid-column: 1 / span 1;
}

.etlap-seasonal__copy > .lead,
.etlap-seasonal__copy > p:not(.eyebrow):not(.etlap-seasonal__closing) {
  max-width: 33rem;
}

.etlap-seasonal__media {
  grid-column: 3 / span 1;
  aspect-ratio: 4 / 5;
}

.etlap-seasonal__media img {
  object-position: center;
}

.etlap-seasonal__panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: 40rem;
  margin-top: var(--space-5);
  border-top: 1px solid var(--border-light-on-dark);
}

.etlap-seasonal__panel > span {
  min-width: 0;
  min-height: 2.75rem;
  padding-block: var(--space-3);
  border-bottom: 1px solid var(--border-light-on-dark);
  color: var(--color-cream-100);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-seasonal__closing {
  max-width: 33rem;
  margin-top: var(--space-5);
  margin-bottom: 0;
  font-family: var(--font-heading);
  font-size: var(--text-h4);
  font-style: italic;
  line-height: 1.3;
}

.etlap-mains__header {
  width: 100%;
  max-width: 42rem;
}

.etlap-mains__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr);
  gap: var(--space-6);
  margin-top: var(--space-7);
  align-items: start;
}

.etlap-mains__main-course {
  grid-column: 1 / span 1;
  min-width: 0;
}

.etlap-mains__main-copy {
  max-width: 40rem;
}

.etlap-mains__grill {
  grid-column: 3 / span 1;
  min-width: 0;
  padding: clamp(var(--space-5), 3vw, var(--space-6));
  border-radius: var(--radius-md);
}

.etlap-mains__grill-copy {
  max-width: 32rem;
}

.etlap-menu-lines--dark {
  border-color: var(--border-light-on-dark);
}

.etlap-menu-lines--dark > span {
  border-color: var(--border-light-on-dark);
  color: var(--color-cream-100);
}

.etlap-mains__choice-note {
  width: 100%;
  max-width: 65rem;
  margin: var(--space-6) 0 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-line);
  color: var(--color-tobacco);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-desserts__grid {
  grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr);
  align-items: end;
}

.etlap-desserts__copy {
  grid-column: 1 / span 1;
}

.etlap-desserts__copy > p:not(.eyebrow):not(.etlap-desserts__transition) {
  max-width: 30rem;
}

.etlap-desserts__media {
  grid-column: 3 / span 1;
  aspect-ratio: 3 / 2;
}

.etlap-desserts__media img {
  object-position: center;
}

.etlap-desserts__transition {
  max-width: 24rem;
  margin-top: var(--space-5);
  margin-bottom: 0;
  font-family: var(--font-heading);
  font-size: var(--text-h4);
  font-style: italic;
  line-height: 1.3;
}

.etlap-drinks__header {
  width: 100%;
  max-width: 41rem;
}

.etlap-drinks__rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.etlap-drink-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-line);
  background: var(--color-cream-50);
}

.etlap-drink-card--rose {
  background: var(--color-dusty-rose);
}

.etlap-drink-card--cream {
  background: var(--color-cream-100);
}

.etlap-drink-card > * {
  min-width: 0;
}

.etlap-drink-card__copy {
  max-width: 25rem;
}

.etlap-drink-card__placeholder {
  display: block;
  min-height: 2.75rem;
  margin-top: auto;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-line);
  color: var(--color-petrol);
  font-size: var(--text-small);
  font-weight: 700;
  line-height: var(--leading-small);
}

.etlap-drinks__note {
  max-width: 50rem;
  margin: var(--space-6) 0 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-line);
  color: var(--color-tobacco);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-cardroom {
  padding-block: var(--section-space);
}

.etlap-cardroom__grid {
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
}

.etlap-cardroom__copy {
  grid-column: 1 / span 1;
}

.etlap-cardroom__copy > .lead,
.etlap-cardroom__copy > p:not(.eyebrow) {
  max-width: 35rem;
}

.etlap-cardroom__media {
  grid-column: 3 / span 1;
  aspect-ratio: 4 / 5;
}

.etlap-cardroom__media img {
  object-position: center;
}

.etlap-cardroom__secondary {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  max-width: 31rem;
  margin-top: var(--space-5);
}

.etlap-cardroom__secondary > * {
  margin: 0;
}

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

.etlap-booking__header {
  width: 100%;
  max-width: 40rem;
}

.etlap-booking__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.etlap-booking__route {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  padding: var(--space-5);
  border-top: 1px solid var(--color-line);
}

.etlap-booking__route > * {
  min-width: 0;
}

.etlap-booking__route h3 {
  margin-bottom: var(--space-3);
}

.etlap-booking__route p {
  max-width: 24rem;
  margin-bottom: var(--space-5);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.etlap-booking__route .button {
  margin-top: auto;
}

.etlap-booking__route--poker .button {
  background: var(--color-felt-green);
}

.etlap-booking__route--poker .button:hover {
  background: var(--color-tobacco);
}

.etlap-page .button,
.etlap-page .etlap-index > a {
  min-height: 2.75rem;
}

.etlap-page .button:focus-visible,
.etlap-page .text-link:focus-visible,
.etlap-page .etlap-index > a:focus-visible {
  outline: 3px solid var(--color-dusty-rose);
  outline-offset: 2px;
}

@media (max-width: 63.98rem) {
  .etlap-hero__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .etlap-hero__copy h1 {
    font-size: clamp(3rem, 6vw, 3.75rem);
  }
}

@media (max-width: 61.24rem) {
  .etlap-mains__grid {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    gap: var(--space-5);
  }

  .etlap-mains__main-course,
  .etlap-mains__grill {
    grid-column: auto;
  }
}

@media (max-width: 57.49rem) {
  .etlap-smallplates__content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-6);
  }

  .etlap-smallplates__course,
  .etlap-smallplates__course--share {
    grid-column: auto;
  }

  .etlap-smallplates__media {
    grid-column: 2 / span 1;
    width: min(100%, 16rem);
    margin-top: 0;
  }

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

  .etlap-drink-card--cream {
    grid-column: 1 / span 2;
  }

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

  .etlap-booking__route--poker {
    grid-column: 1 / span 2;
  }
}

@media (max-width: 57.49rem) {
  .etlap-seasonal__grid,
  .etlap-cardroom__grid {
    grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
    gap: var(--space-5);
  }

  .etlap-seasonal__copy,
  .etlap-cardroom__copy,
  .etlap-seasonal__media,
  .etlap-cardroom__media {
    grid-column: auto;
  }
}

@media (max-width: 54.99rem) {
  .etlap-desserts__grid {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: var(--space-5);
  }

  .etlap-desserts__copy,
  .etlap-desserts__media {
    grid-column: auto;
  }
}

@media (max-width: 48.74rem) {
  .etlap-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .etlap-hero__media {
    grid-row: 1;
    aspect-ratio: 4 / 3;
  }

  .etlap-hero__copy {
    grid-row: 2;
  }

  .etlap-hero__copy h1 {
    font-size: clamp(2.5rem, 10vw, 2.75rem);
  }

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

@media (max-width: 44.99rem) {
  .etlap-smallplates__content,
  .etlap-mains__grid,
  .etlap-seasonal__grid,
  .etlap-cardroom__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .etlap-smallplates__course,
  .etlap-smallplates__course--share,
  .etlap-smallplates__media,
  .etlap-mains__main-course,
  .etlap-mains__grill,
  .etlap-seasonal__copy,
  .etlap-seasonal__media,
  .etlap-cardroom__copy,
  .etlap-cardroom__media {
    grid-column: auto;
  }

  .etlap-smallplates__media {
    grid-row: auto;
    justify-self: stretch;
    width: 100%;
    aspect-ratio: 3 / 2;
  }

  .etlap-seasonal__media,
  .etlap-cardroom__media {
    grid-row: 1;
    aspect-ratio: 4 / 3;
  }

  .etlap-seasonal__copy,
  .etlap-cardroom__copy {
    grid-row: 2;
  }

  .etlap-mains__grill {
    padding: var(--space-5);
  }
}

@media (max-width: 42.49rem) {
  .etlap-desserts__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .etlap-desserts__copy,
  .etlap-desserts__media {
    grid-column: auto;
  }

  .etlap-desserts__media {
    grid-row: 1;
  }

  .etlap-desserts__copy {
    grid-row: 2;
  }
}

@media (max-width: 38.74rem) {
  .etlap-drinks__rail {
    display: flex;
    width: calc(100% + var(--container-padding));
    margin-right: calc(var(--container-padding) * -1);
    padding-right: var(--container-padding);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 0;
    scrollbar-color: var(--color-dusty-rose) transparent;
  }

  .etlap-drink-card,
  .etlap-drink-card--cream {
    flex: 0 0 clamp(78vw, 82vw, 86vw);
    grid-column: auto;
    scroll-snap-align: start;
  }

  .etlap-booking__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .etlap-booking__route--poker {
    grid-column: auto;
  }

  .etlap-booking__route {
    padding-inline: 0;
  }

  .etlap-booking__route .button {
    width: 100%;
  }
}

@media (max-width: 26.24rem) {
  .etlap-index {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .etlap-page * {
    scroll-behavior: auto;
    transition: none;
  }
}
