#etlap-main {
  overflow: clip;
}

#etlap-main .etlap-hero {
  position: relative;
  display: grid;
  min-height: 45rem;
  isolation: isolate;
  background: var(--color-canvas);
}

#etlap-main .etlap-hero__image,
#etlap-main .etlap-hero__veil,
#etlap-main .etlap-hero__content {
  grid-area: 1 / 1;
}

#etlap-main .etlap-hero__image {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}

#etlap-main .etlap-hero__veil {
  z-index: 1;
  background: linear-gradient(90deg, rgba(5, 6, 11, 0.96) 0%, rgba(9, 10, 18, 0.82) 35%, rgba(9, 10, 18, 0.28) 73%, rgba(9, 10, 18, 0.42) 100%);
}

#etlap-main .etlap-hero__content {
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: 1fr auto;
  gap: var(--space-8) var(--space-6);
  width: min(100% - (var(--container-padding) * 2), var(--container-max));
  padding-block: var(--space-20) var(--space-6);
}

#etlap-main .etlap-hero__panel {
  grid-column: 1 / span 5;
  align-self: center;
  min-width: 0;
  max-width: 37.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
}

#etlap-main .etlap-hero__panel h1,
#etlap-main .etlap-hero__panel p {
  margin: 0;
}

#etlap-main .etlap-hero__eyebrow::after {
  display: block;
  width: 4rem;
  height: 1px;
  margin-top: var(--space-3);
  background: var(--color-cyan);
  content: "";
}

#etlap-main .etlap-hero__lead {
  max-width: 29.4rem;
  color: var(--color-text-secondary);
}

#etlap-main .etlap-hero__actions,
#etlap-main .etlap-closing__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
}

#etlap-main .etlap-direction-link {
  display: inline-flex;
  min-height: 2.75rem;
  min-width: 0;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-cyan);
  font-size: var(--text-13);
  font-weight: 600;
  letter-spacing: 0.09em;
  line-height: var(--leading-ui);
  text-decoration: none;
  text-transform: uppercase;
}

#etlap-main .etlap-direction-link::after {
  width: 1.6rem;
  height: 1px;
  background: currentColor;
  content: "";
  transition: width var(--transition-fast);
}

#etlap-main .etlap-direction-link:hover::after {
  width: 2.4rem;
}

#etlap-main .etlap-hero__meta {
  grid-column: 1 / -1;
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3) var(--space-6);
  padding-top: var(--space-4);
  border-top: var(--border-default);
  color: var(--color-text-muted);
  font-size: var(--text-12);
  letter-spacing: 0.08em;
  line-height: var(--leading-ui);
}

#etlap-main .etlap-pillars {
  background: radial-gradient(circle at 75% 20%, rgba(61, 37, 103, 0.25), transparent 35%), var(--color-canvas-violet);
}

#etlap-main .etlap-pillars__layout,
#etlap-main .etlap-browser__content,
#etlap-main .etlap-shared__layout,
#etlap-main .etlap-service__layout,
#etlap-main .etlap-closing__layout,
#etlap-main .etlap-allergy__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
}

#etlap-main .etlap-pillars__intro {
  grid-column: 1 / span 6;
  min-width: 0;
  max-width: 40rem;
}

#etlap-main .etlap-pillars__cards {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 3fr 4fr 5fr;
  gap: var(--space-6);
  align-items: start;
}

#etlap-main .etlap-pillar {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  min-height: 16.25rem;
  padding: var(--space-6);
  border: var(--border-default);
  background: rgba(25, 24, 43, 0.82);
  backdrop-filter: blur(12px);
}

#etlap-main .etlap-pillar > * { margin: 0; }
#etlap-main .etlap-pillar h3 { font-size: var(--text-28); }
#etlap-main .etlap-pillar--lounge { margin-top: var(--space-6); border-top-color: var(--color-fuchsia); }
#etlap-main .etlap-pillar--service { min-height: 20rem; border-inline-start-color: var(--color-cyan); }
#etlap-main .etlap-pillar .etlap-direction-link { margin-top: auto; }

#etlap-main .etlap-browser { background: var(--color-canvas); }
#etlap-main .etlap-browser__shell { padding: var(--space-8); border: var(--border-default); background: var(--color-surface-raised); box-shadow: var(--shadow-raised); }
#etlap-main .etlap-browser__intro { max-width: 43.75rem; }
#etlap-main .etlap-browser__controls { margin-block: var(--space-8); }
#etlap-main .etlap-tabs { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-2); border-bottom: var(--border-default); }
#etlap-main .etlap-tab { min-height: 2.75rem; min-width: 0; padding: var(--space-3) var(--space-4); border: 1px solid transparent; border-bottom: 2px solid transparent; background: transparent; color: var(--color-text-secondary); font-size: var(--text-13); font-weight: 600; letter-spacing: 0.09em; line-height: 1.2; text-align: left; }
#etlap-main .etlap-tab[aria-selected="true"] { border-color: var(--color-line); border-bottom-color: var(--color-cyan); background: rgba(39, 216, 232, 0.08); color: var(--color-text-primary); }
#etlap-main .etlap-select-label,
#etlap-main .etlap-select { display: none; }
#etlap-main .etlap-menu-panels { grid-column: 1 / span 8; min-width: 0; }
#etlap-main .etlap-menu-panel { min-width: 0; }
#etlap-main .etlap-menu-panel h3 { font-size: var(--text-40); }
#etlap-main .etlap-menu-list { display: flex; min-width: 0; flex-direction: column; }
#etlap-main .etlap-menu-item { min-width: 0; padding-block: var(--space-6); border-bottom: var(--border-default); }
#etlap-main .etlap-menu-item h4 { margin-bottom: var(--space-2); font-size: var(--text-20); overflow-wrap: anywhere; }
#etlap-main .etlap-menu-item p { max-width: 42rem; margin: 0; overflow-wrap: anywhere; }
#etlap-main .etlap-browser__aside { grid-column: 9 / span 4; align-self: start; min-width: 0; max-width: 22.5rem; padding: var(--space-6); border: var(--border-default); border-top-color: var(--color-cyan); background: var(--color-surface); }

#etlap-main .etlap-shared__copy { grid-column: 1 / span 5; align-self: center; min-width: 0; max-width: 35rem; }
#etlap-main .etlap-shared__copy p { max-width: 33.75rem; }
#etlap-main .etlap-shared__markers { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-2); margin-block: var(--space-6); color: var(--color-text-primary); font-size: var(--text-13); letter-spacing: 0.09em; }
#etlap-main .etlap-shared__markers span { color: var(--color-cyan); }
#etlap-main .etlap-shared__links { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-4); }
#etlap-main .etlap-shared__media { grid-column: 7 / span 6; align-self: start; min-width: 0; margin-top: calc(var(--space-12) * -1); }
#etlap-main .etlap-shared__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border: var(--border-default); }

#etlap-main .etlap-previews { background: linear-gradient(135deg, var(--color-canvas-violet), var(--color-canvas) 72%); }
#etlap-main .etlap-previews__intro { max-width: 40.625rem; }
#etlap-main .etlap-previews__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-8); }
#etlap-main .etlap-preview-card { min-width: 0; min-height: 18.75rem; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); border: var(--border-default); background: var(--color-surface); color: var(--color-text-secondary); text-decoration: none; transition: border-color var(--transition-base), transform var(--transition-base); }
#etlap-main .etlap-preview-card:hover { transform: translateY(-2px); border-color: var(--color-cyan); color: var(--color-text-secondary); }
#etlap-main .etlap-preview-card > * { margin: 0; }
#etlap-main .etlap-preview-card h3 { color: var(--color-text-primary); font-size: var(--text-28); }
#etlap-main .etlap-preview-card__link { margin-top: auto; color: var(--color-cyan); font-size: var(--text-13); font-weight: 600; letter-spacing: .09em; }
#etlap-main .etlap-preview-card--three { padding-top: 0; overflow: hidden; }
#etlap-main .etlap-preview-card--three img { width: calc(100% + var(--space-12)); max-width: none; margin-inline: calc(var(--space-6) * -1); aspect-ratio: 4 / 3; object-fit: cover; }
#etlap-main .etlap-previews__action { display: flex; margin-top: var(--space-8); }

#etlap-main .etlap-service__media { grid-column: 1 / span 6; min-width: 0; }
#etlap-main .etlap-service__media img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border: var(--border-default); }
#etlap-main .etlap-service__copy { grid-column: 8 / span 5; min-width: 0; max-width: 33.75rem; }
#etlap-main .etlap-service__copy > p { max-width: 32.5rem; }
#etlap-main .etlap-service__steps { display: flex; flex-direction: column; min-width: 0; margin-top: var(--space-6); border-top: var(--border-default); }
#etlap-main .etlap-service-step { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-4); min-width: 0; padding-block: var(--space-4); border-bottom: var(--border-default); }
#etlap-main .etlap-service-step > span { color: var(--color-cyan); font-size: var(--text-13); letter-spacing: .1em; }
#etlap-main .etlap-service-step h3 { margin-bottom: var(--space-2); font-size: var(--text-20); }
#etlap-main .etlap-service-step p { margin-bottom: var(--space-3); }

#etlap-main .etlap-drinks { background: var(--color-canvas-violet); }
#etlap-main .etlap-drinks__intro { max-width: 40rem; }
#etlap-main .etlap-drinks__rail { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-block: var(--space-8); border-block: var(--border-default); }
#etlap-main .etlap-drinks__rail article { min-width: 0; padding: var(--space-6) 0; }
#etlap-main .etlap-drinks__rail article:not(:last-child) { border-inline-end: var(--border-default); padding-inline-end: var(--space-6); }
#etlap-main .etlap-drinks__rail span { color: var(--color-cyan); font-size: var(--text-13); }
#etlap-main .etlap-drinks__rail h3 { margin-top: var(--space-2); font-size: var(--text-20); }
#etlap-main .etlap-drinks__rail p { margin: 0; max-width: 21rem; }
#etlap-main .etlap-drinks__story { display: grid; grid-template-columns: 5fr 2fr 5fr; gap: var(--space-6); align-items: center; }
#etlap-main .etlap-drinks__copy { grid-column: 1; min-width: 0; max-width: 31.875rem; }
#etlap-main .etlap-drinks__copy p { max-width: 30rem; }
#etlap-main .etlap-drinks__media-group { grid-column: 3; position: relative; min-width: 0; }
#etlap-main .etlap-drinks__media { min-width: 0; margin: 0; }
#etlap-main .etlap-drinks__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border: var(--border-default); }
#etlap-main .etlap-drinks__inset { position: absolute; width: 42%; right: -7%; bottom: -12%; min-width: 0; margin: 0; border: var(--border-default); }
#etlap-main .etlap-drinks__inset img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }

#etlap-main .etlap-allergy { background: radial-gradient(circle at 20% 80%, rgba(39, 216, 232, .08), transparent 30%), var(--color-canvas-violet); }
#etlap-main .etlap-allergy__panel { grid-column: 1 / span 7; min-width: 0; max-width: 43.75rem; display: flex; flex-direction: column; align-items: stretch; gap: var(--space-4); padding: var(--space-8); border: var(--border-default); background: var(--color-surface); }
#etlap-main .etlap-allergy__panel > * { margin: 0; }
#etlap-main .etlap-allergy__panel > p { max-width: 38.125rem; }
#etlap-main .etlap-allergy__cta { grid-column: 9 / span 4; align-self: start; min-width: 0; max-width: 22.5rem; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); border: var(--border-default); border-top-color: var(--color-fuchsia); background: var(--color-surface-raised); box-shadow: var(--shadow-raised); }
#etlap-main .etlap-allergy__cta > * { margin: 0; }
#etlap-main .etlap-allergy__cta h3 { font-size: var(--text-28); }
#etlap-main .etlap-disclosure { margin-top: var(--space-2); border: var(--border-default); }
#etlap-main .etlap-disclosure__button { display: flex; width: 100%; min-height: 2.75rem; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-3) var(--space-4); background: rgba(9, 10, 18, .4); color: var(--color-text-primary); font-size: var(--text-13); font-weight: 600; letter-spacing: .08em; text-align: left; }
#etlap-main .etlap-disclosure__button span { color: var(--color-cyan); font-size: var(--text-20); }
#etlap-main .etlap-disclosure__content { padding: var(--space-4); border-top: var(--border-default); }
#etlap-main .etlap-disclosure__content ul { display: flex; flex-direction: column; gap: var(--space-3); margin: 0; }

#etlap-main .etlap-closing__copy { grid-column: 1 / span 5; align-self: center; min-width: 0; max-width: 33.75rem; }
#etlap-main .etlap-closing__copy p { max-width: 33.75rem; }
#etlap-main .etlap-closing__actions { margin-top: var(--space-6); }
#etlap-main .etlap-closing__media { grid-column: 7 / span 6; position: relative; min-width: 0; margin: 0; }
#etlap-main .etlap-closing__media img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: var(--border-default); }
#etlap-main .etlap-closing__media figcaption { position: absolute; inset: auto 0 0; display: flex; align-items: center; gap: var(--space-2); margin: 0; padding: var(--space-4); background: linear-gradient(90deg, rgba(5,6,11,.9), rgba(5,6,11,.42)); color: var(--color-text-primary); font-size: var(--text-12); letter-spacing: .06em; }
#etlap-main .etlap-closing__media figcaption span { width: .5rem; height: .5rem; background: var(--color-cyan); }

#etlap-main .etlap-reminder { padding-block: var(--space-20); border-top: var(--border-default); background: var(--color-canvas); }
#etlap-main .etlap-reminder__content { max-width: 38.75rem; margin-inline: auto; text-align: center; }
#etlap-main .etlap-reminder__content .eyebrow { text-align: left; }
#etlap-main .etlap-reminder__content p { max-width: 36.25rem; margin-inline: auto; }

@media (max-width: 899px) {
  #etlap-main .etlap-hero { min-height: 39rem; }
  #etlap-main .etlap-hero__content { grid-template-columns: repeat(8, minmax(0, 1fr)); padding-block: var(--space-16) var(--space-6); }
  #etlap-main .etlap-hero__panel { grid-column: 1 / span 6; }
  #etlap-main .etlap-hero__veil { background: linear-gradient(90deg, rgba(5,6,11,.92), rgba(9,10,18,.64) 62%, rgba(9,10,18,.38)); }
  #etlap-main .etlap-pillars__layout,
  #etlap-main .etlap-browser__content,
  #etlap-main .etlap-shared__layout,
  #etlap-main .etlap-service__layout,
  #etlap-main .etlap-closing__layout,
  #etlap-main .etlap-allergy__layout { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  #etlap-main .etlap-pillars__intro { grid-column: 1 / span 6; }
  #etlap-main .etlap-pillars__cards { grid-template-columns: 1fr; }
  #etlap-main .etlap-pillar,
  #etlap-main .etlap-pillar--service { min-height: 0; }
  #etlap-main .etlap-pillar--lounge { margin-top: 0; }
  #etlap-main .etlap-menu-panels { grid-column: 1 / -1; }
  #etlap-main .etlap-browser__aside { grid-column: 1 / -1; max-width: none; }
  #etlap-main .etlap-shared__media { grid-column: 1 / -1; grid-row: 1; margin-top: 0; }
  #etlap-main .etlap-shared__copy { grid-column: 1 / span 6; grid-row: 2; }
  #etlap-main .etlap-previews__grid { grid-template-columns: 1fr; }
  #etlap-main .etlap-preview-card { min-height: 0; }
  #etlap-main .etlap-service__media { grid-column: 1 / -1; }
  #etlap-main .etlap-service__copy { grid-column: 1 / span 6; }
  #etlap-main .etlap-drinks__story { grid-template-columns: 1fr; }
  #etlap-main .etlap-drinks__copy,
  #etlap-main .etlap-drinks__media-group { grid-column: 1; }
  #etlap-main .etlap-allergy__panel { grid-column: 1 / -1; max-width: none; }
  #etlap-main .etlap-allergy__cta { grid-column: 1 / span 5; max-width: none; }
  #etlap-main .etlap-closing__media { grid-column: 1 / -1; grid-row: 1; }
  #etlap-main .etlap-closing__copy { grid-column: 1 / span 6; grid-row: 2; }
}

@media (max-width: 599px) {
  #etlap-main .etlap-hero { min-height: 37rem; }
  #etlap-main .etlap-hero__image { object-position: 58% center; }
  #etlap-main .etlap-hero__veil { background: linear-gradient(180deg, rgba(9,10,18,.48), rgba(9,10,18,.82) 54%, rgba(5,6,11,.98)); }
  #etlap-main .etlap-hero__content { grid-template-columns: 1fr; gap: var(--space-6); padding-block: var(--space-12) var(--space-4); }
  #etlap-main .etlap-hero__panel { grid-column: 1; align-self: end; width: 100%; max-width: none; gap: var(--space-4); }
  #etlap-main .etlap-hero__panel h1 { font-size: clamp(2.625rem, 12vw, 3.5rem); }
  #etlap-main .etlap-hero__lead { max-width: 34ch; }
  #etlap-main .etlap-hero__actions { width: 100%; align-items: stretch; }
  #etlap-main .etlap-hero__actions .button { width: 100%; }
  #etlap-main .etlap-hero__meta { grid-column: 1; gap: var(--space-2); }
  #etlap-main .etlap-pillars__layout,
  #etlap-main .etlap-browser__content,
  #etlap-main .etlap-shared__layout,
  #etlap-main .etlap-service__layout,
  #etlap-main .etlap-closing__layout,
  #etlap-main .etlap-allergy__layout { grid-template-columns: 1fr; }
  #etlap-main .etlap-pillars__intro,
  #etlap-main .etlap-shared__copy,
  #etlap-main .etlap-service__media,
  #etlap-main .etlap-service__copy,
  #etlap-main .etlap-allergy__panel,
  #etlap-main .etlap-allergy__cta,
  #etlap-main .etlap-closing__copy,
  #etlap-main .etlap-closing__media { grid-column: 1; }
  #etlap-main .etlap-shared__media { grid-column: 1; }
  #etlap-main .etlap-browser__shell { padding: var(--space-4); }
  #etlap-main .etlap-tabs { display: none; }
  #etlap-main .etlap-select-label { display: block; margin-bottom: var(--space-2); color: var(--color-cyan); font-size: var(--text-13); letter-spacing: .09em; }
  #etlap-main .etlap-select { display: block; }
  #etlap-main .etlap-menu-panel h3 { font-size: var(--text-28); }
  #etlap-main .etlap-shared__media,
  #etlap-main .etlap-service__media,
  #etlap-main .etlap-closing__media { width: calc(100% + (var(--container-padding) * 2)); margin-inline: calc(var(--container-padding) * -1); }
  #etlap-main .etlap-shared__media img,
  #etlap-main .etlap-service__media img,
  #etlap-main .etlap-closing__media img { border-inline: 0; }
  #etlap-main .etlap-drinks__rail { grid-template-columns: 1fr; gap: 0; }
  #etlap-main .etlap-drinks__rail article:not(:last-child) { padding-inline-end: 0; border-inline-end: 0; border-bottom: var(--border-default); }
  #etlap-main .etlap-drinks__inset { display: none; }
  #etlap-main .etlap-allergy__panel { padding: var(--space-6); }
  #etlap-main .etlap-allergy__cta { max-width: none; }
  #etlap-main .etlap-closing__actions { align-items: stretch; }
  #etlap-main .etlap-closing__actions .button { width: 100%; }
  #etlap-main .etlap-reminder { padding-block: var(--space-12); }
  #etlap-main .etlap-reminder__content { margin-inline: 0; text-align: left; }
  #etlap-main .etlap-reminder__content p { margin-inline: 0; }
}

@media (prefers-reduced-motion: reduce) {
  #etlap-main .etlap-preview-card:hover { transform: none; }
}
