.home-page { overflow: hidden; }
.home-page .home-hero { position: relative; display: flex; min-height: 620px; isolation: isolate; align-items: flex-end; padding-block: 64px; background: var(--color-obsidian); }
.home-page .home-hero__image, .home-page .home-hero__overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-page .home-hero__image { z-index: -2; object-fit: cover; object-position: 66% center; filter: saturate(.94) contrast(1.04); }
.home-page .home-hero__overlay { z-index: -1; background: linear-gradient(0deg, rgba(11,10,12,.97) 3%, rgba(11,10,12,.84) 48%, rgba(11,10,12,.24) 100%), linear-gradient(90deg, rgba(11,10,12,.95) 0%, rgba(11,10,12,.68) 50%, rgba(11,10,12,.08) 100%); }
.home-page .home-hero__container { display: flex; width: 100%; align-items: flex-end; }
.home-page .home-hero__content { display: flex; width: 100%; min-width: 0; max-width: 600px; flex-direction: column; align-items: flex-start; gap: var(--space-5); padding-left: var(--space-5); border-left: 1px solid var(--color-champagne); }
.home-page .home-hero__content > * { min-width: 0; margin: 0; }
.home-page .home-hero__content h1 { font-size: clamp(2.75rem, 8vw, 5rem); }
.home-page .home-hero__content .lead { max-width: 590px; }
.home-page .home-hero__actions { width: 100%; flex-direction: column; align-items: stretch; }
.home-page .home-hero__actions > * { width: 100%; min-width: 0; min-height: 3rem; }
.home-page .home-hero__notice { color: var(--color-ivory); font-size: var(--text-sm); }
.home-page .home-concept { position: relative; background: radial-gradient(circle at 85% 15%, rgba(100,31,50,.22), transparent 35%); }
.home-page .home-concept__intro { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); align-items: start; }
.home-page .home-concept__intro > *, .home-page .home-concept__cards > *, .home-page .home-attractions__lists > *, .home-page .home-flavours__layout > *, .home-page .home-flavours__content > *, .home-page .home-bridge__panels > *, .home-page .home-games__main > *, .home-page .home-audience__cards > *, .home-page .home-private__layout > * { min-width: 0; }
.home-page .home-concept__copy { max-width: 670px; padding-top: var(--space-4); border-top: 1px solid var(--color-border); }
.home-page .home-concept__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); margin-top: var(--space-7); }
.home-page .home-concept__card { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); }
.home-page .home-concept__card > * { margin: 0; }
.home-page .home-card-number, .home-page .home-concept__card > .home-card-number { color: var(--color-champagne); font-size: var(--text-sm); letter-spacing: .12em; }
.home-page .home-concept__card--food { border-top: 2px solid var(--color-burgundy-light); }
.home-page .home-concept__card--games { border-top: 2px solid var(--color-emerald); }
.home-page .home-section-heading { display: flex; max-width: 600px; min-width: 0; flex-direction: column; gap: var(--space-4); }
.home-page .home-section-heading > * { margin: 0; }
.home-page .home-attractions__lists { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-7); margin-top: var(--space-7); }
.home-page .home-attractions__group { display: flex; min-width: 0; flex-direction: column; }
.home-page .home-attractions__group > h3 { margin-bottom: var(--space-4); }
.home-page .home-attractions__group--games h3 { color: var(--color-champagne); }
.home-page .home-attractions__group small { color: var(--color-emerald); font-family: var(--font-body); font-size: var(--text-xs); letter-spacing: .12em; }
.home-page .home-attraction { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: var(--space-3); min-width: 0; padding-block: var(--space-4); border-top: 1px solid var(--color-border-subtle); }
.home-page .home-attraction > * { min-width: 0; }
.home-page .home-attraction > span { color: var(--color-champagne); font-size: var(--text-xs); letter-spacing: .12em; }
.home-page .home-attraction h4, .home-page .home-attraction p { margin: 0; }
.home-page .home-attraction h4 { margin-bottom: var(--space-2); }
.home-page .home-flavours { background: radial-gradient(circle at 88% 50%, rgba(100,31,50,.2), transparent 32%); }
.home-page .home-flavours__layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-7); }
.home-page .home-flavours__intro { max-width: 560px; }
.home-page .home-flavours__intro > * { margin-bottom: var(--space-4); }
.home-page .home-flavours__content { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
.home-page .home-flavours__media { width: 100%; aspect-ratio: 4 / 5; }
.home-page .home-flavours__media img { filter: saturate(.95) contrast(1.03); transition: transform var(--transition-slow); }
.home-page .home-flavours__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 var(--space-4); }
.home-page .home-flavours__cards > article { min-width: 0; padding: var(--space-5) 0; border-top: 1px solid var(--color-border-subtle); }
.home-page .home-flavours__cards > article > * { margin-top: 0; }
.home-page .home-flavours__cards > article > span, .home-page .home-games__cards > article > span, .home-page .home-audience__card > span { color: var(--color-champagne); font-size: var(--text-xs); font-weight: var(--weight-bold); letter-spacing: .14em; }
.home-page .home-bridge__heading { margin-bottom: var(--space-7); }
.home-page .home-bridge__panels { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
.home-page .home-bridge__panel { display: flex; min-width: 0; min-height: 300px; flex-direction: column; gap: var(--space-4); }
.home-page .home-bridge__panel > * { margin: 0; }
.home-page .home-bridge__panel > span { color: var(--color-champagne); font-family: var(--font-heading); font-size: 3rem; line-height: 1; }
.home-page .home-bridge__panel--menu { background: linear-gradient(145deg, rgba(100,31,50,.62), rgba(34,33,38,.68)); }
.home-page .home-bridge__panel--games { border-color: rgba(15,107,88,.8); background: radial-gradient(circle at 80% 20%, rgba(15,107,88,.34), transparent 42%), rgba(34,33,38,.68); }
.home-page .home-bridge__cta { display: flex; min-width: 0; flex-direction: column; gap: var(--space-5); margin-top: var(--space-5); }
.home-page .home-bridge__cta > * { min-width: 0; margin: 0; }
.home-page .home-bridge__cta > div { max-width: 520px; }
.home-page .home-bridge__cta h3 { margin-bottom: var(--space-3); }
.home-page .home-bridge__cta .button { width: 100%; min-height: 3rem; }
.home-page .home-games { background: radial-gradient(circle at 12% 47%, rgba(15,107,88,.27), transparent 31%); }
.home-page .home-games__heading { display: flex; max-width: 600px; flex-direction: column; gap: var(--space-4); }
.home-page .home-games__heading > * { margin: 0; }
.home-page .home-games__main { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); margin-top: var(--space-7); }
.home-page .home-games__media { width: 100%; aspect-ratio: 4 / 5; }
.home-page .home-games__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
.home-page .home-games__cards > article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); }
.home-page .home-games__cards > article > * { margin: 0; }
.home-page .home-games__cards > article:hover { border-color: rgba(15,107,88,.95); }
.home-page .home-games__vip { margin-top: var(--space-5); }
.home-page .home-games__vip > * { max-width: 500px; }
.home-page .home-games__vip h3 { margin-bottom: var(--space-3); }
.home-page .home-games__cta { display: flex; min-width: 0; flex-direction: column; align-items: stretch; gap: var(--space-5); margin-top: var(--space-5); padding-top: var(--space-5); border-top: 1px solid var(--color-border); }
.home-page .home-games__cta > * { min-width: 0; margin: 0; }
.home-page .home-games__cta p { max-width: 620px; }
.home-page .home-games__cta .button { width: 100%; min-height: 3rem; }
.home-page .home-gallery__heading { max-width: 580px; }
.home-page .home-gallery__heading > * { margin-bottom: var(--space-4); }
.home-page .home-gallery__grid { display: flex; width: calc(100% + var(--container-padding)); gap: var(--space-4); margin-top: var(--space-7); padding-right: var(--container-padding); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.home-page .home-gallery__item { position: relative; display: block; flex: 0 0 82vw; min-width: 0; aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--radius-media); scroll-snap-align: start; color: var(--color-ivory); text-decoration: none; }
.home-page .home-gallery__item img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.94); transition: transform var(--transition-slow); }
.home-page .home-gallery__item span { position: absolute; right: 0; bottom: 0; left: 0; padding: var(--space-4); background: linear-gradient(transparent, rgba(11,10,12,.88)); color: var(--color-ivory); font-size: var(--text-sm); }
.home-page .home-gallery__item:hover img { transform: scale(1.03); }
.home-page .home-text-link { display: inline-flex; min-height: 44px; align-items: center; gap: var(--space-2); margin-top: var(--space-5); font-weight: var(--weight-semibold); }
.home-page .home-audience__heading { max-width: 460px; }
.home-page .home-audience__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); margin-top: var(--space-7); }
.home-page .home-audience__card { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); }
.home-page .home-audience__card > * { margin: 0; }
.home-page .home-audience__card--food { border-top: 2px solid var(--color-burgundy-light); }
.home-page .home-audience__card--games { border-top: 2px solid var(--color-emerald); }
.home-page .home-private__layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
.home-page .home-private__copy { max-width: 540px; }
.home-page .home-private__copy > * { margin-bottom: var(--space-4); }
.home-page .home-private__media { width: 100%; aspect-ratio: 4 / 5; }
.home-page .home-private__media img { width: 100%; height: 100%; object-fit: cover; }
.home-page .home-faq__container { max-width: 860px; }
.home-page .home-faq__intro { max-width: 600px; }
.home-page .home-faq__intro > * { margin-bottom: var(--space-4); }
.home-page .home-faq__list { display: flex; min-width: 0; flex-direction: column; margin-top: var(--space-7); border-top: 1px solid var(--color-border-subtle); }
.home-page .home-faq__item { min-width: 0; border-bottom: 1px solid var(--color-border-subtle); }
.home-page .home-faq__item h3 { margin: 0; }
.home-page .home-faq__item button { display: flex; width: 100%; min-width: 0; min-height: 56px; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) 0; border: 0; background: transparent; color: var(--color-ivory); font-family: var(--font-body); font-size: var(--text-base); font-weight: var(--weight-semibold); line-height: 1.4; text-align: left; }
.home-page .home-faq__item button span { flex: 0 0 auto; color: var(--color-champagne); font-size: 1.5rem; transition: transform var(--transition-fast); }
.home-page .home-faq__item button[aria-expanded="true"] span { transform: rotate(45deg); }
.home-page .home-faq__answer { max-width: 680px; padding-bottom: var(--space-5); }
.home-page .home-faq__answer p { margin: 0; }
.home-page .home-final { padding-top: var(--space-8); }
.home-page .home-final__panel { display: flex; max-width: 1040px; min-width: 0; flex-direction: column; align-items: center; gap: var(--space-5); margin-inline: auto; padding: var(--space-7) var(--space-5); border: 1px solid var(--color-border); border-radius: var(--radius-panel); background: radial-gradient(circle at 15% 20%, rgba(100,31,50,.36), transparent 42%), radial-gradient(circle at 86% 80%, rgba(15,107,88,.28), transparent 42%), var(--color-graphite); text-align: center; }
.home-page .home-final__panel > * { min-width: 0; margin: 0; }
.home-page .home-final__panel h2 { max-width: 700px; font-size: clamp(2.25rem, 5vw, 3.75rem); }
.home-page .home-final__panel p { max-width: 520px; }
.home-page .home-final__panel .button { width: 100%; min-height: 3.25rem; }
.home-page .home-final__panel small { color: var(--color-mist); }
@media (min-width: 30rem) { .home-page .home-final__panel .button { width: auto; min-width: 300px; } }
@media (min-width: 40rem) { .home-page .home-concept__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-concept__card--night { grid-column: 1 / -1; } .home-page .home-flavours__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-flavours__cards-last { grid-column: 1 / -1; } .home-page .home-audience__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-audience__card:last-child { grid-column: 1 / -1; } }
@media (min-width: 48rem) { .home-page .home-hero { min-height: 700px; align-items: center; } .home-page .home-hero__actions { width: auto; flex-direction: row; align-items: center; } .home-page .home-hero__actions > * { width: auto; } .home-page .home-concept__intro { grid-template-columns: minmax(0, .35fr) minmax(0, .55fr); gap: 10%; } .home-page .home-attractions__lists { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); } .home-page .home-bridge__cta { flex-direction: row; align-items: center; justify-content: space-between; } .home-page .home-bridge__cta .button { width: auto; flex: 0 1 40%; } .home-page .home-games__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } .home-page .home-games__cta { flex-direction: row; align-items: center; justify-content: space-between; } .home-page .home-games__cta .button { width: auto; flex: 0 1 40%; } .home-page .home-gallery__grid { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; overflow: visible; } .home-page .home-gallery__item { width: 100%; min-width: 0; } }
@media (min-width: 51.25rem) { .home-page .home-bridge__panels { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 56.25rem) { .home-page .home-hero__content { max-width: 52%; } .home-page .home-private__layout { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: center; } .home-page .home-private__media { aspect-ratio: 3 / 2; } }
@media (min-width: 61.25rem) { .home-page .home-flavours__layout { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: start; } .home-page .home-flavours__content { grid-column: 2; } .home-page .home-flavours__media { aspect-ratio: 3 / 2; } }
@media (min-width: 64rem) { .home-page .home-games__main { grid-template-columns: minmax(0, 45fr) minmax(0, 55fr); align-items: stretch; } .home-page .home-games__media { aspect-ratio: 3 / 2; } .home-page .home-games__cards { grid-template-columns: minmax(0, 1fr); } .home-page .home-games__cards > article { min-height: 0; } .home-page .home-gallery__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: 230px 230px; } .home-page .home-gallery__item--dish { grid-column: 1 / span 5; grid-row: 1 / span 2; } .home-page .home-gallery__item--cocktail { grid-column: 6 / span 3; grid-row: 1; } .home-page .home-gallery__item--poker { grid-column: 9 / span 4; grid-row: 1; } .home-page .home-gallery__item--roulette { grid-column: 6 / span 7; grid-row: 2; } }
@media (min-width: 80rem) { .home-page .home-hero { min-height: 760px; } .home-page .home-concept__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } .home-page .home-concept__card--night { grid-column: auto; } .home-page .home-audience__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } .home-page .home-audience__card:last-child { grid-column: auto; } .home-page .home-final__panel { padding: var(--space-9) var(--space-8); } }
@media (hover: hover) and (pointer: fine) { .home-page .home-flavours__media:hover img { transform: scale(1.03); } }
@media (prefers-reduced-motion: reduce) { .home-page .home-gallery__item img, .home-page .home-flavours__media img, .home-page .home-faq__item button span { transition: none; } }