.etlap-page {
  position: relative;
  overflow: hidden;
  background: var(--color-ink-950);
}

.etlap-page ul { list-style: none !important; }
.etlap-page .nav-toggle { flex-direction: column; }
.etlap-page section { position: relative; }
.etlap-page a:focus-visible { outline: none; box-shadow: var(--focus-ring); }

.etlap-hero__layout,
.etlap-menu__split,
.etlap-contact__layout,
.etlap-poker__layout {
  display: grid;
  min-width: 0;
}

.etlap-hero__layout {
  grid-template-columns: minmax(0, 46fr) minmax(520px, 54fr);
  align-items: center;
  gap: clamp(var(--space-8), 5vw, var(--space-16));
}

.etlap-hero__copy { min-width: 0; max-width: 38.75rem; }
.etlap-hero__copy h1 span { color: var(--color-warm-copper); }
.etlap-hero__lead { display: flex; flex-direction: column; gap: var(--space-3); }
.etlap-hero__lead p { margin: 0; }
.etlap-hero__actions { margin-top: var(--space-6); }
.etlap-hero__note { margin-top: var(--space-4); color: var(--color-text-muted); font-size: var(--text-meta); }

.etlap-hero__media,
.etlap-menu__media,
.etlap-feature__image,
.etlap-poker__media { position: relative; min-width: 0; width: 100%; overflow: hidden; margin: 0; }
.etlap-hero__media { aspect-ratio: 16 / 9; border: var(--border-accent); border-radius: var(--radius-xl); box-shadow: var(--shadow-deep); }
.etlap-hero__media::after,
.etlap-poker__media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(9,10,15,.52), rgba(9,10,15,.08) 62%), radial-gradient(circle at 92% 8%, rgba(139,92,246,.42), transparent 30%); }
.etlap-hero__media img,
.etlap-menu__media img,
.etlap-feature__image img,
.etlap-poker__media img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--transition-slow); }

.etlap-kitchen__inner { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-8); }
.etlap-kitchen__heading { grid-column: 1 / span 8; min-width: 0; max-width: 45rem; }
.etlap-kitchen__first { grid-column: 1 / span 7; min-width: 0; padding-left: var(--space-6); border-left: 2px solid var(--color-warm-copper); max-width: 42.5rem; }
.etlap-kitchen__second { grid-column: 7 / span 5; min-width: 0; padding: var(--space-6); }
.etlap-kitchen__second > :last-child,
.etlap-kitchen__third > :last-child { margin-bottom: 0; }
.etlap-kitchen__third { grid-column: 8 / span 5; min-width: 0; max-width: 29.375rem; justify-self: end; }

.etlap-highlights__heading { max-width: 38.75rem; }
.etlap-highlights__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-8); }
.etlap-feature { display: grid; min-width: 0; overflow: hidden; border: var(--border-subtle); border-radius: var(--radius-lg); background: var(--color-surface); text-decoration: none; box-shadow: var(--shadow-deep); transition: border-color var(--transition-base), background-color var(--transition-base); }
.etlap-feature--large { grid-column: 1 / span 7; grid-row: 1 / span 2; }
.etlap-feature--duck { grid-column: 8 / span 5; }
.etlap-feature--dessert { grid-column: 8 / span 5; }
.etlap-feature__image { aspect-ratio: 4 / 3; }
.etlap-feature--duck .etlap-feature__image { aspect-ratio: 16 / 10; }
.etlap-feature__body { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-6); }
.etlap-feature__body h3,
.etlap-feature__body p { margin: 0; }
.etlap-price { display: block; color: var(--color-warm-copper); font-family: var(--font-heading); font-size: var(--text-body); font-weight: 600; line-height: var(--leading-body); }

.etlap-category-nav__panel { padding: var(--space-6); }
.etlap-category-nav__layout { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); gap: var(--space-6); align-items: center; }
.etlap-category-nav__title,
.etlap-category-nav__links { min-width: 0; }
.etlap-category-nav__title h2 { margin-bottom: 0; }
.etlap-category-nav__links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-3); }
.etlap-category-nav__links a { display: flex; min-width: 0; min-height: 44px; align-items: center; justify-content: center; padding: var(--space-3) var(--space-4); border: var(--border-subtle); border-radius: var(--radius-sm); background: rgba(14,16,23,.72); color: var(--color-text-primary); font-weight: 600; text-align: center; text-decoration: none; transition: border-color var(--transition-fast), background-color var(--transition-fast); }
.etlap-category-nav__links a:hover,
.etlap-category-nav__links a.is-active { border-color: rgba(139,92,246,.62); background: rgba(139,92,246,.14); }
.etlap-category-nav__note { max-width: 45rem; margin-top: var(--space-6); padding-left: var(--space-4); border-left: 2px solid var(--color-warm-copper); color: var(--color-text-secondary); }

.etlap-menu__split { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(var(--space-8), 5vw, var(--space-16)); align-items: start; }
.etlap-menu__split--reverse { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.etlap-menu__content,
.etlap-dish-list { min-width: 0; }
.etlap-menu__heading { max-width: 33.75rem; }
.etlap-menu__heading--wide { max-width: 40rem; margin-bottom: var(--space-8); }
.etlap-menu__media { border: var(--border-subtle); border-radius: var(--radius-lg); box-shadow: var(--shadow-deep); }
.etlap-menu__media--starters { aspect-ratio: 4 / 3; }
.etlap-menu__media--mains,
.etlap-menu__media--desserts { aspect-ratio: 4 / 5; }
.etlap-dish-list { display: flex; flex-direction: column; }
.etlap-dish { min-width: 0; padding: var(--space-6) var(--space-4); border-bottom: var(--border-subtle); transition: background-color var(--transition-fast), box-shadow var(--transition-fast); }
.etlap-dish:first-child { border-top: var(--border-subtle); }
.etlap-dish--featured { border-left: 2px solid var(--color-warm-copper); background: rgba(201,138,87,.045); }
.etlap-dish__top { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: var(--space-4); }
.etlap-dish__top h3 { min-width: 0; margin: 0; font-size: clamp(1.25rem, 2.2vw, 1.5rem); }
.etlap-dish__top .etlap-price { flex: 0 0 auto; text-align: right; }
.etlap-dish p { max-width: 40.625rem; margin: var(--space-3) 0 0; }

.etlap-drinks__heading { max-width: 39rem; }
.etlap-drinks__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: var(--space-6); margin-top: var(--space-8); }
.etlap-drink-panel { display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); padding: var(--space-6); border: var(--border-subtle); border-radius: var(--radius-lg); background: var(--color-surface); box-shadow: var(--shadow-deep); transition: border-color var(--transition-base), background-color var(--transition-base); }
.etlap-drink-panel h3,
.etlap-drink-panel p { margin: 0; }
.etlap-drink-panel--wine { min-height: 22rem; }
.etlap-drink-panel--cocktail { min-height: 24rem; border-color: rgba(139,92,246,.42); }
.etlap-drink-panel--coffee { min-height: 19rem; }
.etlap-drinks__note { max-width: 37.5rem; margin-top: var(--space-6); padding-left: var(--space-4); border-left: 2px solid var(--color-warm-copper); }

.etlap-poker__layout { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); overflow: hidden; border: var(--border-subtle); border-radius: var(--radius-xl); background: var(--color-ink-900); box-shadow: var(--shadow-deep); }
.etlap-poker__copy { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: clamp(var(--space-6), 4vw, var(--space-12)); z-index: 1; }
.etlap-poker__copy h2,
.etlap-poker__copy p { margin: 0; }
.etlap-poker__copy > .button-secondary { margin-top: var(--space-2); }
.etlap-poker__fact { display: flex; min-width: 0; flex-direction: column; gap: var(--space-2); padding: var(--space-4); border-left: 2px solid var(--color-warm-copper); background: rgba(201,138,87,.06); }
.etlap-poker__fact span { color: var(--color-text-secondary); }
.etlap-poker__media { aspect-ratio: 16 / 7; align-self: stretch; border-radius: 0; }

.etlap-contact__panel { padding: clamp(var(--space-6), 5vw, var(--space-12)); }
.etlap-contact__layout { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(var(--space-8), 6vw, var(--space-16)); align-items: center; }
.etlap-contact__copy { display: flex; min-width: 0; max-width: 32.5rem; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.etlap-contact__copy h2,
.etlap-contact__copy p { margin: 0; }
.etlap-contact__copy > .button { margin-top: var(--space-2); }
.etlap-contact__details { display: flex; min-width: 0; max-width: 26.25rem; flex-direction: column; gap: var(--space-4); justify-self: end; width: 100%; }
.etlap-contact__item { min-width: 0; padding: var(--space-5, 1.25rem); border: var(--border-subtle); border-radius: var(--radius-md); background: rgba(14,16,23,.7); }
.etlap-contact__item .eyebrow { margin-bottom: var(--space-2); }
.etlap-contact__item > a:not(.button-secondary) { color: var(--color-text-primary); font-family: var(--font-heading); font-size: 1.125rem; font-weight: 600; }
.etlap-contact__item > p:not(.eyebrow) { margin-bottom: var(--space-4); }

@media (hover: hover) and (pointer: fine) {
  .etlap-hero__media:hover img,
  .etlap-menu__media:hover img,
  .etlap-feature:hover img { transform: scale(1.03); }
  .etlap-feature:hover,
  .etlap-drink-panel:hover { border-color: rgba(139,92,246,.62); background-color: rgba(19,21,30,.96); }
  .etlap-dish:hover { background: rgba(139,92,246,.06); box-shadow: inset 2px 0 0 var(--color-aurora-violet); }
}

@media (max-width: 61.25rem) {
  .etlap-highlights__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .etlap-feature--large { grid-column: 1 / -1; grid-row: auto; }
  .etlap-feature--duck { grid-column: 1; }
  .etlap-feature--dessert { grid-column: 2; }
}

@media (max-width: 57.5rem) {
  .etlap-hero__layout { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .etlap-hero__copy { max-width: none; }
  .etlap-hero__media { aspect-ratio: 4 / 5; }
  .etlap-hero__media img { object-position: 62% center; }
  .etlap-menu__split,
  .etlap-menu__split--reverse { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .etlap-menu__media { grid-row: 1; }
  .etlap-menu__split--reverse .etlap-menu__media { grid-column: 1; }
  .etlap-menu__split--reverse .etlap-dish-list { grid-column: 1; }
  .etlap-menu__media--starters,
  .etlap-menu__media--mains { aspect-ratio: 4 / 5; }
}

@media (max-width: 56.25rem) {
  .etlap-drinks__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .etlap-drink-panel--coffee { grid-column: 1 / -1; }
  .etlap-drink-panel--wine,
  .etlap-drink-panel--cocktail,
  .etlap-drink-panel--coffee { min-height: 0; }
}

@media (max-width: 55rem) {
  .etlap-kitchen__inner { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .etlap-kitchen__heading,
  .etlap-kitchen__first,
  .etlap-kitchen__second,
  .etlap-kitchen__third { grid-column: 1; max-width: none; justify-self: stretch; }
  .etlap-category-nav__layout { grid-template-columns: minmax(0, 1fr); }
  .etlap-poker__layout { grid-template-columns: minmax(0, 1fr); }
  .etlap-poker__media { grid-row: 2; aspect-ratio: 4 / 5; }
  .etlap-contact__layout { grid-template-columns: minmax(0, 1fr); }
  .etlap-contact__copy,
  .etlap-contact__details { max-width: none; justify-self: stretch; }
}

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

@media (max-width: 45rem) {
  .etlap-highlights__grid { grid-template-columns: minmax(0, 1fr); }
  .etlap-feature--duck,
  .etlap-feature--dessert { grid-column: 1; }
  .etlap-feature--large .etlap-feature__image { aspect-ratio: 4 / 5; }
  .etlap-feature--duck .etlap-feature__image,
  .etlap-feature--dessert .etlap-feature__image { aspect-ratio: 4 / 3; }
}

@media (max-width: 42.5rem) {
  .etlap-dish__top { flex-direction: column; gap: var(--space-2); }
  .etlap-dish__top .etlap-price { text-align: left; }
}

@media (max-width: 38.75rem) {
  .etlap-drinks__grid,
  .etlap-category-nav__links { grid-template-columns: minmax(0, 1fr); }
  .etlap-drink-panel--coffee { grid-column: 1; }
}

@media (max-width: 40rem) {
  .etlap-hero__actions { width: 100%; }
  .etlap-kitchen__first { padding-left: var(--space-4); }
  .etlap-kitchen__second,
  .etlap-category-nav__panel,
  .etlap-drink-panel { padding: var(--space-4); }
  .etlap-feature__body { padding: var(--space-4); }
  .etlap-dish { padding: var(--space-6) 0; }
  .etlap-contact__panel { padding: var(--space-4); }
}

@media (prefers-reduced-motion: reduce) {
  .etlap-hero__media img,
  .etlap-menu__media img,
  .etlap-feature__image img { transform: none !important; }
}
