.home-page { overflow: hidden; }
.home-page .button { width: auto; }
.felt-room-hero { position: relative; min-height: clamp(38.75rem, 78vh, 51.25rem); isolation: isolate; }
.felt-room-hero__media, .felt-room-hero__media::after { position: absolute; inset: 0; }
.felt-room-hero__media { z-index: -1; overflow: hidden; background: var(--color-linen); }
.felt-room-hero__media::after { content: ""; background: linear-gradient(90deg, rgb(246 241 232 / 26%), transparent 62%); }
.felt-room-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: filter var(--transition-base), transform var(--transition-base); }
.felt-room-hero__container { min-height: inherit; display: grid; grid-template-columns: minmax(0, 1fr); align-items: end; }
.felt-room-hero__panel { width: min(100%, 35rem); min-width: 0; margin-block: auto var(--space-8); padding: var(--space-7); background: rgb(246 241 232 / 92%); box-shadow: var(--shadow-float); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.felt-room-hero__panel > * { min-width: 0; margin: 0; }
.felt-room-hero h1 { font-size: clamp(2.625rem, 5.5vw, 4.25rem); }
.felt-room-hero__brand { font-family: var(--font-heading); font-size: var(--text-intro); line-height: 1; }
.felt-room-hero__brand span { display: block; margin-top: var(--space-2); font-family: var(--font-body); font-size: var(--text-utility); font-weight: 600; letter-spacing: var(--tracking-utility); text-transform: uppercase; }
.felt-room-hero__lead { max-width: 34rem; font-size: var(--text-lead); line-height: 1.5; }
.felt-room-hero__location { color: rgb(53 37 31 / 72%); font-size: var(--text-small); }
.two-rooms { background: var(--color-warm-ivory); }
.two-rooms__title { max-width: 42rem; }
.two-rooms__split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: var(--space-7); }
.two-rooms__room { min-width: 0; padding: var(--space-8) clamp(var(--space-6), 6vw, var(--space-9)); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.two-rooms__room > * { min-width: 0; margin: 0; }
.two-rooms__room--restaurant { background: var(--color-warm-ivory); border-right: 1px solid var(--color-brass); }
.two-rooms__room--lounge { background: var(--color-linen); }
.two-rooms__room p:not(.eyebrow) { max-width: 29rem; }
.two-rooms__room .rule { margin: 0; }
.two-rooms__bridge { width: min(100%, 38.75rem); margin: var(--space-7) auto 0; font-family: var(--font-heading); font-size: var(--text-intro); font-style: italic; line-height: 1.18; text-align: center; }
.daylight-to-felt__intro { padding-block: var(--space-9) var(--space-6); }
.daylight-to-felt__intro h2 { max-width: 43.75rem; }
.restaurant-poker-journey { display: flex; min-width: 0; align-items: center; gap: 0; margin-top: var(--space-6); overflow-x: auto; scrollbar-color: var(--color-brass) transparent; }
.restaurant-poker-journey a { flex: 0 0 auto; min-width: max-content; padding: var(--space-3) var(--space-4); color: var(--color-espresso); font-size: var(--text-utility); font-weight: 600; letter-spacing: var(--tracking-utility); text-decoration: none; text-transform: uppercase; }
.restaurant-poker-journey a + a::before { content: ""; display: inline-block; width: 1.75rem; height: 1px; margin-right: var(--space-4); vertical-align: middle; background: var(--color-brass); }
.daylight-to-felt__chapter { min-width: 0; }
.daylight-to-felt__chapter-grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: stretch; }
.daylight-to-felt__copy { min-width: 0; padding: clamp(var(--space-7), 8vw, var(--space-10)); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.daylight-to-felt__copy > * { min-width: 0; margin: 0; }
.daylight-to-felt__copy > p:not(.eyebrow) { max-width: 32.5rem; }
.daylight-to-felt__daylight-note { min-width: 0; padding: clamp(var(--space-7), 8vw, var(--space-10)); display: flex; align-items: end; background: var(--color-linen); font-family: var(--font-heading); font-size: var(--text-intro); line-height: 1.18; }
.daylight-to-felt__chapter--golden { background: var(--color-pale-sage); }
.daylight-to-felt__chapter--golden .daylight-to-felt__chapter-grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
.daylight-to-felt__chapter--golden .daylight-to-felt__media { grid-column: 1; grid-row: 1; }
.daylight-to-felt__chapter--golden .daylight-to-felt__copy { grid-column: 2; grid-row: 1; background: var(--color-sand); }
.daylight-to-felt__chapter--felt { background: var(--color-deep-felt); color: var(--color-soft-white); }
.daylight-to-felt__chapter--felt .daylight-to-felt__chapter-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.daylight-to-felt__media { min-width: 0; margin: 0; overflow: hidden; }
.daylight-to-felt__media img { width: 100%; height: 100%; min-height: 28rem; object-fit: cover; }
.daylight-to-felt__media figcaption { padding: var(--space-3) var(--space-4); margin: 0; }
.restaurant-feature__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(var(--space-6), 6vw, var(--space-9)); align-items: start; }
.restaurant-feature__content { min-width: 0; }
.restaurant-feature__content h2 { max-width: 38.75rem; }
.restaurant-feature__intro { max-width: 38.75rem; font-size: var(--text-lead); }
.restaurant-feature__notes { width: min(100%, 47.5rem); display: flex; flex-direction: column; align-items: stretch; }
.restaurant-feature__notes article { min-width: 0; padding-block: var(--space-5); border-top: 1px solid var(--color-border); display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(0, 3fr); gap: var(--space-5); }
.restaurant-feature__notes article > * { min-width: 0; margin: 0; }
.restaurant-feature__quote { width: min(100%, 38.75rem); margin-top: var(--space-6); padding: var(--space-5); background: var(--color-pale-sage); }
.restaurant-feature__quote p { font-family: var(--font-heading); font-size: var(--text-intro); line-height: 1.18; }
.restaurant-feature__media { min-width: 0; margin: 0; }
.restaurant-feature__media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.salon { background: var(--color-deep-felt); color: var(--color-soft-white); }
.salon__top { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(var(--space-6), 6vw, var(--space-9)); align-items: start; }
.salon__copy { min-width: 0; padding-top: var(--space-4); }
.salon__copy h2, .salon__copy p:not(.eyebrow) { max-width: 33.75rem; }
.salon__copy .rule { margin: var(--space-6) 0 0; }
.salon__media { min-width: 0; margin: 0; overflow: hidden; }
.salon__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: right center; transition: transform var(--transition-base); }
.salon__details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: var(--space-8); }
.salon__details article { min-width: 0; padding: var(--space-5); border-top: 1px solid var(--color-border-inverse); }
.salon__details article + article { border-left: 1px solid var(--color-border-inverse); }
.salon__details span { color: var(--color-brass); font-size: var(--text-intro); }
.salon__details h3 { margin-top: var(--space-4); }
.learn { background: var(--color-pale-sage); }
.learn__top { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(var(--space-6), 6vw, var(--space-9)); align-items: start; }
.learn__intro { min-width: 0; }
.learn__intro h2, .learn__intro p:not(.eyebrow) { max-width: 38.75rem; }
.learn__media { min-width: 0; margin: 0; }
.learn__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.learn__principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: var(--space-8); }
.learn__principles article { min-width: 0; padding: var(--space-5); border-top: 1px solid var(--color-border); display: grid; grid-template-columns: 2.25rem minmax(0, 1fr); gap: var(--space-3); }
.learn__principles article + article { border-left: 1px solid var(--color-border); }
.learn__principles article > * { min-width: 0; }
.learn__principles span { color: var(--color-brass); font-size: var(--text-small); font-weight: 600; letter-spacing: var(--tracking-utility); }
.learn__actions { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-5); }
.learn__actions > * { min-width: 0; }
.tables { background: var(--color-linen); }
.tables__title { max-width: 42.5rem; }
.tables__strip { height: 10rem; margin-block: var(--space-6) calc(var(--space-8) * -1); background: url('/assets/images/felt-room-poker-salon-evening.webp') center / cover no-repeat; opacity: .22; }
.tables__vignettes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; }
.tables__vignettes article { min-width: 0; padding: var(--space-5); background: var(--color-linen); }
.tables__vignettes article:nth-child(2) { margin-top: var(--space-8); }
.tables__vignettes article:nth-child(3) { margin-top: var(--space-10); background: var(--color-warm-ivory); }
.tables__vignettes article + article { border-left: 1px solid var(--color-border); }
.tables__vignettes article:nth-child(2)::before, .tables__vignettes article:nth-child(3)::before { content: ""; display: block; height: 1px; margin-bottom: var(--space-5); background: var(--color-brass); }
.tables__vignettes h3 { max-width: 25rem; }
.tables__vignettes p:not(.eyebrow) { max-width: 25rem; }
.next-seat { background: var(--color-warm-ivory); }
.next-seat__intro { width: min(100%, 35rem); margin-inline: auto; text-align: center; }
.next-seat__index { margin-top: var(--space-8); border-top: 1px solid var(--color-border); }
.next-seat__index a { display: grid; grid-template-columns: 8.75rem minmax(0, 1fr) 3rem; align-items: center; gap: var(--space-5); min-width: 0; padding-block: var(--space-5); border-bottom: 1px solid var(--color-border); text-decoration: none; }
.next-seat__index a > * { min-width: 0; }
.next-seat__index span { color: var(--color-brass); font-size: var(--text-utility); font-weight: 600; letter-spacing: var(--tracking-utility); text-transform: uppercase; }
.next-seat__index h3, .next-seat__index p { margin: 0; }
.next-seat__index p { max-width: 38.75rem; margin-top: var(--space-2); }
.next-seat__index b { font-size: var(--text-intro); font-weight: 400; text-align: right; transition: color var(--transition-base), transform var(--transition-fast); }
.next-seat__index a:hover h3 { color: var(--color-brass); text-decoration: underline; text-decoration-color: var(--color-brass); text-decoration-thickness: 2px; text-underline-offset: .2em; }
.next-seat__index a:hover b { color: var(--color-brass); transform: translateX(.25rem); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) { .felt-room-hero:hover .felt-room-hero__media img { filter: contrast(1.03) sepia(.06); } .salon__media:hover img { transform: scale(1.03); } }
@media (max-width: 61.24rem) { .felt-room-hero__panel { margin-bottom: var(--space-6); } .felt-room-hero__media::after { background: linear-gradient(0deg, rgb(53 37 31 / 42%), transparent 60%); } .daylight-to-felt__chapter-grid, .daylight-to-felt__chapter--golden .daylight-to-felt__chapter-grid, .daylight-to-felt__chapter--felt .daylight-to-felt__chapter-grid, .salon__top { grid-template-columns: minmax(0, 1fr); } .daylight-to-felt__chapter--golden .daylight-to-felt__media, .daylight-to-felt__chapter--golden .daylight-to-felt__copy { grid-column: auto; grid-row: auto; } .daylight-to-felt__media img { min-height: 0; aspect-ratio: 3 / 2; } .salon__media { order: 2; } .salon__details { grid-template-columns: repeat(2, minmax(0, 1fr)); } .salon__details article:nth-child(3) { grid-column: 1 / -1; } .salon__details article:nth-child(3) { border-left: 0; } .learn__top { grid-template-columns: minmax(0, 1fr); } .learn__media { order: 2; } .restaurant-feature__grid { grid-template-columns: minmax(0, 1fr); } .restaurant-feature__media { order: 0; width: min(100%, 42rem); } }
@media (max-width: 56.24rem) { .two-rooms__split { grid-template-columns: minmax(0, 1fr); } .two-rooms__room--restaurant { border-right: 0; border-bottom: 1px solid var(--color-brass); } }
@media (max-width: 57.49rem) { .learn__principles { grid-template-columns: repeat(2, minmax(0, 1fr)); } .learn__principles article:nth-child(3) { grid-column: 1 / -1; } .learn__principles article:nth-child(3) { border-left: 0; } }
@media (max-width: 47.49rem) { .felt-room-hero { min-height: 0; display: flex; flex-direction: column; } .felt-room-hero__media { position: relative; inset: auto; width: 100%; height: auto; } .felt-room-hero__media::after { display: none; } .felt-room-hero__media img { aspect-ratio: 4 / 3; object-position: 65% center; } .felt-room-hero__container { min-height: 0; width: 100%; } .felt-room-hero__panel { width: 100%; margin: 0; padding: var(--space-7) 0; background: var(--color-warm-ivory); box-shadow: none; } .two-rooms__room { padding: var(--space-7) var(--space-5); } .restaurant-poker-journey { margin-inline: calc(var(--gutter) * -1); padding-inline: var(--gutter); scroll-snap-type: x proximity; } .restaurant-poker-journey a { scroll-snap-align: start; } .daylight-to-felt__intro { padding-block: var(--space-7) var(--space-5); } .daylight-to-felt__copy, .daylight-to-felt__daylight-note { padding: var(--space-7) var(--gutter); } .daylight-to-felt__chapter .container { width: 100%; } .daylight-to-felt__chapter-grid { width: 100%; } .daylight-to-felt__media img { aspect-ratio: 4 / 3; } .restaurant-feature__notes article { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); } .restaurant-feature__media img { aspect-ratio: 4 / 3; } .salon__details, .learn__principles, .tables__vignettes { grid-template-columns: minmax(0, 1fr); } .salon__details article + article, .learn__principles article + article, .tables__vignettes article + article { border-left: 0; } .salon__details article:nth-child(3), .learn__principles article:nth-child(3) { grid-column: auto; } .salon__media img { aspect-ratio: 1 / 1; } .learn__principles article { padding-inline: 0; } .tables__strip { margin-bottom: var(--space-6); } .tables__vignettes article, .tables__vignettes article:nth-child(2), .tables__vignettes article:nth-child(3) { margin-top: 0; padding-inline: 0; background: transparent; } .tables__vignettes article + article { margin-top: var(--space-6); padding-top: var(--space-6); border-top: 1px solid var(--color-brass); } .tables__vignettes article:nth-child(2)::before, .tables__vignettes article:nth-child(3)::before { display: none; } .next-seat__index a { grid-template-columns: minmax(0, 1fr) 2rem; gap: var(--space-3); } .next-seat__index span { grid-column: 1 / -1; } .next-seat__index a > div { grid-column: 1; } .next-seat__index b { grid-column: 2; grid-row: 2; } }
@media (max-width: 23.75rem) { .home-page .button { width: 100%; } .learn__actions { flex-direction: column; align-items: stretch; } }
@media (prefers-reduced-motion: reduce) { .felt-room-hero__media img, .salon__media img, .next-seat__index b { transition: none; } }