.etlap-page { background: var(--color-petrol-950); padding-bottom: calc(var(--space-9) + 3.5rem); }
.etlap-page section { min-width: 0; }
.etlap-hero { position: relative; min-height: 45rem; display: grid; isolation: isolate; overflow: hidden; color: var(--color-warm-white); }
.etlap-hero__image, .etlap-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.etlap-hero__image { object-fit: cover; object-position: 62% center; z-index: -2; }
.etlap-hero__shade { z-index: -1; background: linear-gradient(90deg, rgba(7,24,26,.79) 0%, rgba(7,24,26,.54) 42%, rgba(7,24,26,.22) 72%), linear-gradient(0deg, rgba(7,24,26,.63), transparent 54%); }
.etlap-hero__container { display: flex; min-width: 0; align-items: end; padding-block: var(--space-10); }
.etlap-hero__content { display: flex; width: min(100%, 31.875rem); min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.etlap-hero__content > * { margin: 0; }
.etlap-hero__content h1 { font-size: clamp(3.25rem, 5vw, 4rem); }
.etlap-hero__content .lead { max-width: 29rem; }
.etlap-hero__actions { display: flex; width: 100%; min-width: 0; flex-wrap: wrap; gap: var(--space-3); }
.etlap-hero__actions > * { min-width: 0; }
.etlap-rhythm__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-8); }
.etlap-rhythm__intro, .etlap-rhythm__steps, .etlap-rhythm__step > div { min-width: 0; }
.etlap-rhythm__intro { width: 100%; max-width: 35rem; }
.etlap-rhythm__steps { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
.etlap-rhythm__step { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-4); padding-bottom: var(--space-5); border-bottom: 1px solid var(--color-divider-light); }
.etlap-rhythm__step:last-child { padding-bottom: 0; border-bottom: 0; }
.etlap-rhythm__number { color: var(--color-sage-500); font-size: var(--text-meta); font-weight: 700; letter-spacing: .1em; }
.etlap-rhythm__step h3 { margin-bottom: var(--space-2); }
.etlap-rhythm__step p { margin-bottom: 0; }
.etlap-dishes { background: var(--color-cream-200); color: var(--color-ink); }
.etlap-dishes__grid { display: grid; grid-template-columns: minmax(26.25rem, 5fr) minmax(0, 7fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.etlap-dishes__media { width: 100%; min-width: 0; margin: 0; overflow: hidden; border-radius: var(--radius-lg); }
.etlap-dishes__media img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; transition: transform var(--transition-fast); }
.etlap-dishes__content { width: 100%; min-width: 0; max-width: 31.25rem; }
.etlap-dishes__category { padding-block: var(--space-5); border-top: 1px solid var(--color-divider-light); }
.etlap-dishes__category h3 { margin-bottom: var(--space-3); }
.etlap-dishes__category p:last-child { margin-bottom: 0; }
.etlap-dishes__note { display: flex; width: min(100%, 35rem); min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-6); padding: var(--space-5); background: var(--color-sage-200); }
.etlap-dishes__note > * { margin: 0; }
.etlap-dishes__note h3 { font-size: 1.5rem; }
.etlap-overview { padding-block: var(--section-space-compact); background: var(--color-petrol-900); }
.etlap-overview__heading { width: min(100%, 28.75rem); min-width: 0; }
.etlap-overview__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); margin-top: var(--space-6); }
.etlap-overview__item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: var(--space-2) var(--space-3); min-width: 0; min-height: 10rem; padding: var(--space-5); border: 1px solid var(--color-divider-dark); color: var(--color-warm-white); text-decoration: none; }
.etlap-overview__item > * { min-width: 0; }
.etlap-overview__item span { grid-row: span 2; color: var(--color-sage-500); font-size: var(--text-meta); font-weight: 700; }
.etlap-overview__item strong { font-family: var(--font-heading); font-size: var(--text-card-title); font-weight: 400; line-height: var(--leading-card-title); }
.etlap-overview__item em { font-size: .875rem; font-style: normal; line-height: 1.5; }
.etlap-overview__item--wide { grid-column: span 2; border-bottom-color: var(--color-amber-500); }
.etlap-dessert { padding-block: var(--section-space); background: var(--color-petrol-950); }
.etlap-dessert__frame { position: relative; display: grid; min-height: 31rem; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr auto; gap: var(--space-6); overflow: hidden; padding: var(--space-7); border-radius: var(--radius-lg); isolation: isolate; }
.etlap-dessert__image, .etlap-dessert__shade { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; }
.etlap-dessert__image { object-fit: cover; }
.etlap-dessert__shade { z-index: -1; background: linear-gradient(90deg, rgba(7,24,26,.78), rgba(7,24,26,.28)), linear-gradient(0deg, rgba(7,24,26,.77), transparent 66%); }
.etlap-dessert__heading { width: min(100%, 31.25rem); min-width: 0; }
.etlap-dessert__heading p:last-child { margin-bottom: 0; }
.etlap-dessert__panels { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); gap: var(--space-5); align-self: end; }
.etlap-dessert__panel { grid-column: span 1; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); }
.etlap-dessert__panel > * { margin: 0; }
.etlap-dessert__panel--small { grid-column: 2 / span 1; }
.etlap-dessert__panel h3 { font-size: 1.5rem; }
.etlap-cocktails { background: var(--color-petrol-900); }
.etlap-cocktails__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); }
.etlap-cocktails__heading { grid-column: 1 / span 5; width: 100%; min-width: 0; max-width: 31.25rem; }
.etlap-cocktails__media { grid-column: 8 / span 5; grid-row: 1 / span 2; width: 100%; min-width: 0; margin: 0; overflow: hidden; border-radius: var(--radius-lg); }
.etlap-cocktails__media img { width: 100%; height: 100%; min-height: 28rem; object-fit: cover; object-position: right center; transition: transform var(--transition-fast); }
.etlap-cocktails__items { grid-column: 1 / span 7; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; }
.etlap-cocktails__item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: var(--space-3); min-width: 0; padding-top: var(--space-4); border-top: 1px solid var(--color-divider-dark); }
.etlap-cocktails__item > * { min-width: 0; }
.etlap-cocktails__item > span { color: var(--color-amber-300); font-size: var(--text-meta); font-weight: 700; }
.etlap-cocktails__item h3 { margin-bottom: var(--space-3); }
.etlap-cocktails__item p:last-child { margin-bottom: 0; }
.etlap-cocktails__item .meta { margin-bottom: var(--space-2); color: var(--color-sage-500); letter-spacing: .1em; }
.etlap-drinks__heading { width: min(100%, 32.5rem); min-width: 0; }
.etlap-drinks__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6) var(--space-8); margin-top: var(--space-7); }
.etlap-drinks__item { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-4); min-width: 0; }
.etlap-drinks__item > * { min-width: 0; }
.etlap-drinks__item > span { color: var(--color-sage-500); font-family: var(--font-heading); font-size: 2rem; line-height: 1; }
.etlap-drinks__item h3 { margin-bottom: var(--space-3); }
.etlap-drinks__item p:last-child { margin-bottom: 0; }
.etlap-drinks__callout { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr); gap: var(--space-5); width: min(100%, 48.75rem); min-width: 0; margin-top: var(--space-7); padding: var(--space-5); background: var(--color-sage-200); }
.etlap-drinks__callout > * { min-width: 0; }
.etlap-drinks__callout h3, .etlap-drinks__callout p { margin-bottom: var(--space-3); }
.etlap-drinks__callout p:last-child { margin-bottom: 0; }
.etlap-drinks__circle { display: grid; width: 3.5rem; height: 3.5rem; place-items: center; border: 1px solid var(--color-petrol-700); border-radius: 50%; font-size: var(--text-meta); font-weight: 700; }
.etlap-occasions { background: var(--color-petrol-950); }
.etlap-occasions__heading { width: min(100%, 32.5rem); min-width: 0; }
.etlap-occasions__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr); gap: var(--space-5); margin-top: var(--space-7); align-items: start; }
.etlap-occasion { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); }
.etlap-occasion > * { margin: 0; }
.etlap-occasion--date { min-height: 22rem; }
.etlap-occasion--friends { min-height: 17rem; border-color: rgba(135,155,120,.62); }
.etlap-occasion--program { min-height: 24rem; background: var(--color-petrol-700); border: 1px solid var(--color-glass-line); border-radius: var(--radius-md); }
.etlap-occasion .meta { color: var(--color-amber-300); letter-spacing: .1em; }
.etlap-occasions__contact { display: flex; width: min(100%, 38.75rem); min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-6); padding-bottom: var(--space-4); border-bottom: 1px solid var(--color-amber-500); }
.etlap-occasions__contact > * { margin: 0; }
.etlap-program-bridge { background: var(--color-petrol-900); }
.etlap-program-bridge__container { display: flex; min-width: 0; justify-content: center; }
.etlap-program-bridge__panel { position: relative; display: flex; width: min(100%, 38.75rem); min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-7); overflow: hidden; }
.etlap-program-bridge__panel > * { margin: 0; }
.etlap-program-bridge__mark { position: absolute; top: 1.5rem; right: 1.5rem; width: 4rem; height: 4rem; border: 1px solid rgba(240,194,118,.45); border-radius: 50%; }
.etlap-booking { padding-block: var(--section-space-compact); }
.etlap-booking__panel { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-6); padding: var(--space-8); overflow: hidden; border-radius: var(--radius-lg); background: var(--color-cream-200); }
.etlap-booking__content { display: flex; width: min(100%, 35rem); min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.etlap-booking__content > * { margin: 0; }
.etlap-booking__actions { display: flex; width: 100%; min-width: 0; flex-wrap: wrap; align-items: center; gap: var(--space-4); }
.etlap-booking__actions > * { min-width: 0; }
.etlap-booking__arch { justify-self: end; width: min(100%, 19rem); height: 15rem; align-self: center; border: 1px solid rgba(23,42,42,.22); border-bottom: 0; border-radius: 10rem 10rem 0 0; }
.etlap-page a:not(.button) { text-underline-offset: .2em; }
.etlap-overview__item:hover, .etlap-occasion:hover { border-color: var(--color-amber-300); color: var(--color-warm-white); }
@media (hover: hover) { .etlap-dishes__media:hover img, .etlap-cocktails__media:hover img { transform: scale(1.03); } }
@media (max-width: 1000px) { .etlap-occasions__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); } .etlap-occasion--program { grid-column: 1 / -1; min-height: auto; } }
@media (max-width: 980px) { .etlap-dishes__grid { grid-template-columns: minmax(0, 1fr); } .etlap-dishes__media { max-width: 36rem; } .etlap-dishes__content { max-width: 100%; } }
@media (max-width: 960px) { .etlap-rhythm__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .etlap-rhythm__intro { max-width: 100%; } }
@media (max-width: 920px) { .etlap-cocktails__layout { grid-template-columns: repeat(2, minmax(0, 1fr)); } .etlap-cocktails__heading { grid-column: 1 / -1; max-width: 100%; } .etlap-cocktails__media { grid-column: 2; grid-row: 2; } .etlap-cocktails__items { grid-column: 1; grid-template-columns: repeat(2, minmax(0, 1fr)); } .etlap-cocktails__items .etlap-cocktails__item:nth-child(3) { grid-column: 1 / -1; } }
@media (max-width: 900px) { .etlap-dessert__frame { min-height: 38rem; grid-template-rows: auto 1fr auto; } .etlap-dessert__panels { grid-template-columns: minmax(0, 1fr); width: min(100%, 31rem); } .etlap-dessert__panel--small { grid-column: auto; } }
@media (max-width: 840px) { .etlap-overview__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } .etlap-overview__item--wide { grid-column: span 2; } }
@media (max-width: 800px) { .etlap-drinks__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .etlap-booking__panel { grid-template-columns: minmax(0, 1fr); padding: var(--space-6); } .etlap-booking__arch { display: none; } }
@media (max-width: 720px) { .etlap-hero { min-height: 40rem; } .etlap-hero__container { padding-block: var(--space-8); } .etlap-cocktails__layout { grid-template-columns: minmax(0, 1fr); } .etlap-cocktails__media { grid-column: 1; grid-row: 2; } .etlap-cocktails__media img { min-height: 0; aspect-ratio: 16 / 10; object-position: center; } .etlap-cocktails__items { grid-column: 1; grid-template-columns: minmax(0, 1fr); } .etlap-cocktails__items .etlap-cocktails__item:nth-child(3) { grid-column: auto; } .etlap-occasions__grid { grid-template-columns: minmax(0, 1fr); } .etlap-occasion--program { grid-column: auto; } }
@media (max-width: 700px) { .etlap-occasions__grid { gap: var(--space-4); } .etlap-occasion--date, .etlap-occasion--friends, .etlap-occasion--program { min-height: auto; } }
@media (max-width: 639px) { .etlap-page { padding-bottom: calc(var(--space-8) + 4rem); } .etlap-hero { min-height: clamp(38.75rem, 170vw, 42.5rem); } .etlap-hero__image { object-position: 65% center; } .etlap-hero__shade { background: linear-gradient(0deg, rgba(7,24,26,.93) 0%, rgba(7,24,26,.73) 39%, rgba(7,24,26,.18) 77%); } .etlap-hero__content { width: 100%; gap: var(--space-3); } .etlap-hero__content h1 { font-size: clamp(2.625rem, 12vw, 3rem); } .etlap-hero__content .lead { max-width: 100%; font-size: 1rem; } .etlap-hero__actions { flex-direction: column; align-items: stretch; max-width: 22.5rem; } .etlap-rhythm__step { grid-template-columns: 2.25rem minmax(0, 1fr); gap: var(--space-3); } .etlap-dishes__media { max-width: 100%; } .etlap-dishes__note { width: 100%; } .etlap-overview__list { grid-template-columns: minmax(0, 1fr); } .etlap-overview__item, .etlap-overview__item--wide { grid-column: auto; min-height: 0; padding: var(--space-4); } .etlap-dessert { padding-block: var(--section-space-compact); } .etlap-dessert__frame { width: 100%; min-height: 0; padding: var(--space-5); border-radius: 0; } .etlap-dessert__image { height: 28rem; object-position: 62% center; } .etlap-dessert__shade { height: 28rem; background: linear-gradient(0deg, rgba(7,24,26,.77), rgba(7,24,26,.28)); } .etlap-dessert__heading { padding-bottom: 15rem; } .etlap-dessert__panels { width: 100%; } .etlap-dessert__panel { background: var(--color-petrol-900); } .etlap-drinks__callout { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); width: 100%; } .etlap-program-bridge__panel { width: 100%; padding: var(--space-5); } .etlap-booking__panel { padding: var(--space-5); } .etlap-booking__actions { flex-direction: column; align-items: stretch; } }
@media (prefers-reduced-motion: reduce) { .etlap-dishes__media img, .etlap-cocktails__media img { transition: none; transform: none; } }