.home-page { overflow: clip; }
.home-page .container { width: min(100% - (var(--container-gutter) * 2), var(--container-max)); }
.home-page .home-hero { position: relative; min-height: 47.5rem; display: grid; isolation: isolate; background: var(--color-tilleul-deep); }
.home-page .home-hero__image, .home-page .home-hero__veil { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-page .home-hero__image { object-fit: cover; object-position: center; z-index: -2; }
.home-page .home-hero__veil { background: linear-gradient(90deg, rgba(16,36,31,.76) 0%, rgba(16,36,31,.54) 47%, rgba(16,36,31,.26) 100%); z-index: -1; }
.home-page .home-hero__inner { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: end; padding-block: 7.5rem 5.5rem; }
.home-page .home-hero__copy { grid-column: 2 / span 5; min-width: 0; max-width: 36.25rem; display: flex; flex-direction: column; gap: var(--space-5); }
.home-page .home-hero__copy > * { margin: 0; min-width: 0; }
.home-page .home-hero h1 { font-size: clamp(3.4rem, 5.5vw, 5.3rem); }
.home-page .home-hero__actions { align-items: stretch; }
.home-page .home-hero__line { margin-top: var(--space-2); }
.home-page .home-introduction { background: var(--color-tilleul-dark); }
.home-page .home-introduction__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 3rem; padding: clamp(2rem, 5vw, 4rem); }
.home-page .home-introduction__lead, .home-page .home-introduction__proofs, .home-page .home-proof { min-width: 0; }
.home-page .home-introduction__lead .intro { max-width: 42.5rem; }
.home-page .home-introduction__proofs { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; align-content: start; }
.home-page .home-proof { padding-top: var(--space-4); border-top: 1px solid var(--border-bronze); }
.home-page .home-proof p:not(.eyebrow) { max-width: 19.4rem; }
.home-page .home-text-link { display: inline-flex; align-items: center; min-height: 2.75rem; color: var(--color-bronze); font-size: var(--text-micro); font-weight: 600; letter-spacing: .12em; line-height: 1.2; text-decoration: none; text-transform: uppercase; }
.home-page .home-text-link::after { width: .45rem; height: 1px; margin-left: .6rem; background: currentColor; content: ""; transition: width var(--transition-fast); }
.home-page .home-text-link:hover::after { width: 1.2rem; }
.home-page .home-menu__heading { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; }
.home-page .home-menu__heading > * { grid-column: 1 / span 6; min-width: 0; }
.home-page .home-menu__heading .intro { max-width: 38.75rem; }
.home-page .home-menu__line { margin-block: 3rem; }
.home-page .home-menu__cards { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 1.5rem; }
.home-page .home-tasting-card { min-width: 0; display: grid; border: 1px solid var(--border-bronze); background: rgba(245,239,227,.3); }
.home-page .home-tasting-card--plate { grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); }
.home-page .home-tasting-card--cocktail { grid-template-columns: minmax(0, 1fr); align-content: start; }
.home-page .home-tasting-card .media-frame { width: 100%; max-width: 100%; border: 0; border-radius: 0; }
.home-page .home-tasting-card--plate .media-frame { height: 100%; min-height: 23rem; }
.home-page .home-tasting-card--cocktail .media-frame { height: 20rem; }
.home-page .home-tasting-card .media-frame img { width: 100%; height: 100%; object-fit: cover; }
.home-page .home-tasting-card__content { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6); }
.home-page .home-tasting-card__content > * { margin: 0; }
.home-page .home-tasting-card__content p:not(.eyebrow) { max-width: 21rem; }
.home-page .home-menu__action { margin-top: 2rem; }
.home-page .home-counter__scene { position: relative; min-height: 38.75rem; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: end; overflow: hidden; border: 1px solid var(--border-bronze); border-radius: var(--radius-sm); isolation: isolate; padding: 3rem; }
.home-page .home-counter__scene > img, .home-page .home-counter__veil { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-page .home-counter__scene > img { object-fit: cover; z-index: -2; }
.home-page .home-counter__veil { background: linear-gradient(90deg, rgba(16,36,31,.75), rgba(16,36,31,.25)); z-index: -1; }
.home-page .home-counter__primary { grid-column: 1 / span 5; min-width: 0; max-width: 32.5rem; }
.home-page .home-counter__fragment { grid-column: 10 / span 3; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-5); border: 1px solid var(--border-light); background: rgba(16,36,31,.82); }
.home-page .home-counter__fragment > * { margin: 0; }
.home-page .home-transition__lead { max-width: 41.25rem; margin-inline: auto; text-align: center; }
.home-page .home-transition__lead .intro { max-width: 41.25rem; margin-inline: auto; }
.home-page .home-ribbon { display: flex; justify-content: center; gap: .75rem 1.2rem; margin-bottom: 4rem; overflow: hidden; color: var(--color-bronze); font-size: var(--text-micro); font-weight: 600; letter-spacing: .12em; line-height: 1.4; text-align: center; text-transform: uppercase; white-space: nowrap; }
.home-page .home-ribbon span + span::before { margin-right: 1.2rem; color: var(--color-hazelnut); content: "•"; }
.home-page .home-transition__milestones { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-top: 4rem; }
.home-page .home-milestone { min-width: 0; padding: var(--space-5); border-top: 1px solid var(--border-bronze); }
.home-page .home-milestone:nth-child(2) { border: 1px solid var(--border-bronze); background: var(--color-tilleul-deep); }
.home-page .home-milestone span { color: var(--color-bronze); font-size: var(--text-micro); font-weight: 600; letter-spacing: .12em; }
.home-page .home-milestone h3 { margin-top: var(--space-3); }
.home-page .home-poker__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 3rem; align-items: start; }
.home-page .home-poker__media { width: 100%; max-width: 100%; height: 100%; min-height: 40rem; }
.home-page .home-poker__media img { width: 100%; height: 100%; object-fit: cover; }
.home-page .home-poker__content { min-width: 0; }
.home-page .home-poker__content > .intro { max-width: 37.5rem; }
.home-page .home-poker__panels { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
.home-page .home-poker-panel { min-width: 0; padding: var(--space-5); border: 1px solid var(--border-bronze); }
.home-page .home-poker-panel--contrast { background: var(--color-tilleul-deep); }
.home-page .home-poker-panel h3 { font-size: clamp(1.7rem, 2.4vw, 2rem); }
.home-page .home-poker__action { margin-top: 1.5rem; }
.home-page .home-holdem { background: var(--color-tilleul-dark); }
.home-page .home-holdem__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 3rem; }
.home-page .home-holdem__lead, .home-page .home-holdem__details { min-width: 0; }
.home-page .home-holdem__lead .intro { max-width: 42.5rem; }
.home-page .home-holdem h2 em { color: var(--color-bronze); font-style: normal; }
.home-page .home-holdem__details { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; align-content: start; }
.home-page .home-holdem__details > article { min-width: 0; padding-bottom: var(--space-5); border-bottom: 1px solid var(--border-bronze); }
.home-page .home-holdem__card { padding: var(--space-5); border: 1px solid var(--border-bronze) !important; background: var(--color-slate); }
.home-page .home-holdem__evening { justify-self: start; }
.home-page .home-scenes__heading { max-width: 38.75rem; }
.home-page .home-scenes__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; align-items: start; }
.home-page .home-scene { min-width: 0; }
.home-page .home-scene--poker { margin-top: 3rem; }
.home-page .home-scene .media-frame { width: 100%; max-width: 100%; }
.home-page .home-scene:first-child .media-frame { height: 25rem; }
.home-page .home-scene--poker .media-frame { height: 29rem; }
.home-page .home-scene .media-frame img { width: 100%; height: 100%; object-fit: cover; }
.home-page .home-scene__copy { min-width: 0; padding-top: var(--space-5); }
.home-page .home-scene__copy p { max-width: 22.5rem; }
.home-page .home-scenes__closing { max-width: 32.5rem; margin: 3rem auto 0; color: var(--color-ivory); font-family: var(--font-heading); font-size: var(--text-intro); line-height: 1.35; text-align: center; }
.home-page .home-paths { background: var(--color-tilleul-dark); }
.home-page .home-paths__heading { max-width: 38rem; }
.home-page .home-paths__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.home-page .home-path { min-width: 0; min-height: 20rem; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6); border: 1px solid var(--border-bronze); text-decoration: none; transition: transform var(--transition-fast), border-color var(--transition-fast); }
.home-page .home-path > * { margin: 0; min-width: 0; }
.home-page .home-path p:not(.eyebrow) { max-width: 18.75rem; }
.home-page .home-path span { margin-top: auto; color: var(--color-bronze); font-size: var(--text-micro); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.home-page .home-path--dinner { background: var(--color-hazelnut); color: var(--color-tilleul-deep); }
.home-page .home-path--dinner :is(h3, .eyebrow) { color: var(--color-tilleul-deep); }
.home-page .home-path--mood { background: var(--color-tilleul-deep); }
.home-page .home-path--cards { background: var(--color-slate); }
.home-page .home-path:hover { border-color: var(--color-hazelnut); transform: translateY(-2px); }
.home-page .home-paths__final { display: flex; justify-content: space-between; gap: 2rem; align-items: end; margin-top: 3rem; padding-top: 2rem; border-top: 1px solid var(--border-bronze); }
.home-page .home-paths__final > * { min-width: 0; }
.home-page .home-paths__final > div:first-child { max-width: 35rem; }
.home-page .home-paths__final .button-group { align-items: center; }
.home-page .home-location { padding-block: 5.5rem; background: var(--color-tilleul-deep); }
.home-page .home-location__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: center; }
.home-page .home-location__content { grid-column: 1 / span 6; min-width: 0; max-width: 35rem; }
.home-page .home-location__address { margin-bottom: var(--space-5); padding: var(--space-4); border: 1px solid var(--border-bronze); color: var(--color-ivory); font-weight: 600; line-height: var(--leading-meta); }
.home-page .home-location__links { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; }
.home-page .home-location__links > * { min-width: 0; }
.home-page .home-location__line { grid-column: 7 / -1; min-width: 0; }
.home-page a:focus-visible { outline: 2px solid var(--color-ivory); outline-offset: 3px; }
.home-page .home-path--dinner:focus-visible { outline-color: var(--color-tilleul-deep); }
@media (max-width: 960px) { .home-page .home-hero { min-height: 43rem; } .home-page .home-hero__copy { grid-column: 1 / span 7; padding: var(--space-6); background: rgba(16,36,31,.78); } .home-page .home-hero h1 { font-size: clamp(3rem, 6vw, 4.6rem); } }
@media (max-width: 900px) { .home-page .home-introduction__grid, .home-page .home-poker__grid, .home-page .home-holdem__grid { grid-template-columns: minmax(0, 1fr); } .home-page .home-introduction__proofs { grid-template-columns: repeat(3, minmax(0, 1fr)); } .home-page .home-menu__cards { grid-template-columns: minmax(0, 1fr); } .home-page .home-tasting-card--cocktail { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); } .home-page .home-tasting-card--cocktail .media-frame { height: 100%; min-height: 19rem; } .home-page .home-poker__media { min-height: 32rem; } .home-page .home-counter__fragment { grid-column: 7 / span 6; } .home-page .home-paths__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-path--cards { grid-column: 1 / -1; } .home-page .home-location__content { grid-column: 1 / span 8; } .home-page .home-location__line { grid-column: 9 / -1; } }
@media (max-width: 820px) { .home-page .home-scenes__grid { grid-template-columns: minmax(0, 1fr); } .home-page .home-scene--poker { margin-top: 0; } .home-page .home-scene:first-child .media-frame, .home-page .home-scene--poker .media-frame { height: 26rem; } }
@media (max-width: 680px) { .home-page .home-hero { min-height: auto; display: flex; flex-direction: column; } .home-page .home-hero__image { position: relative; height: min(125vw, 31rem); object-position: 58% center; } .home-page .home-hero__veil { display: none; } .home-page .home-hero__inner { display: block; width: 100%; padding: 0; } .home-page .home-hero__copy { max-width: none; padding: 2rem var(--container-gutter-mobile) 3rem; background: var(--color-tilleul-deep); } .home-page .home-hero h1 { font-size: clamp(2.75rem, 12vw, 3.875rem); } .home-page .home-introduction__grid { gap: 2rem; padding: 1.5rem; } .home-page .home-introduction__proofs { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; } .home-page .home-proof p:not(.eyebrow) { max-width: none; } .home-page .home-menu__heading { display: block; } .home-page .home-tasting-card--plate, .home-page .home-tasting-card--cocktail { grid-template-columns: minmax(0, 1fr); } .home-page .home-tasting-card--plate .media-frame, .home-page .home-tasting-card--cocktail .media-frame { height: auto; min-height: 0; aspect-ratio: 4 / 3; } .home-page .home-tasting-card__content { padding: 1.5rem; } .home-page .home-counter__scene { min-height: 0; display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 0; overflow: visible; border: 0; } .home-page .home-counter__scene > img { position: relative; height: min(125vw, 31rem); object-position: 54% center; } .home-page .home-counter__veil { display: none; } .home-page .home-counter__primary, .home-page .home-counter__fragment { max-width: none; background: var(--color-tilleul-deep); } .home-page .home-counter__primary { padding: 2rem 1.5rem 1.5rem; } .home-page .home-counter__fragment { padding: 1.5rem; border: 1px solid var(--border-bronze); } .home-page .home-ribbon { flex-wrap: wrap; margin-bottom: 3rem; white-space: normal; } .home-page .home-ribbon span + span::before { display: none; } .home-page .home-transition__lead { margin-inline: 0; text-align: left; } .home-page .home-transition__lead .intro { margin-inline: 0; } .home-page .home-transition__milestones { grid-template-columns: minmax(0, 1fr); margin-top: 3rem; } .home-page .home-poker__media { min-height: 0; aspect-ratio: 4 / 5; } .home-page .home-poker__panels { gap: 1rem; } .home-page .home-holdem__grid { gap: 2rem; } .home-page .home-scenes__heading { max-width: none; } .home-page .home-scene:first-child .media-frame { height: auto; aspect-ratio: 4 / 3; } .home-page .home-scene--poker .media-frame { height: auto; aspect-ratio: 4 / 5; } .home-page .home-scenes__closing { margin-inline: 0; text-align: left; } .home-page .home-paths__grid { grid-template-columns: minmax(0, 1fr); } .home-page .home-path--cards { grid-column: auto; } .home-page .home-paths__final { flex-direction: column; align-items: stretch; } .home-page .home-paths__final .button-group { align-items: stretch; } .home-page .home-location { padding-block: 4rem; } .home-page .home-location__grid { grid-template-columns: minmax(0, 1fr); } .home-page .home-location__content, .home-page .home-location__line { grid-column: auto; max-width: none; } .home-page .home-location__line { margin-top: 1rem; } }
@media (prefers-reduced-motion: reduce) { .home-page .home-path { transition: none; } }