.home-page { overflow: clip; }
.home-page .section { padding-block: var(--section-space); }
.home-page img { width: 100%; max-width: 100%; object-fit: cover; }

.home-hero { position: relative; min-height: 45rem; display: grid; isolation: isolate; background: var(--color-charcoal); color: var(--color-limestone-100); }
.home-hero__media, .home-hero__scrim, .home-hero__grid { grid-area: 1 / 1; }
.home-hero__media { z-index: -2; min-width: 0; width: 100%; height:100vh; }
.home-hero__media img { height: 100%; min-height: 45rem; object-position: 68% center; }
.home-hero__scrim { z-index: -1; background: linear-gradient(90deg, rgb(245 241 232 / 96%) 0%, rgb(245 241 232 / 83%) 36%, rgb(245 241 232 / 18%) 63%, transparent 78%); }
.home-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 1.5rem; align-content: space-between; width: min(100% - (var(--gutter) * 2), var(--container-max)); margin-inline: auto; padding-block: clamp(5rem, 10vw, 8rem) 2rem; }
.home-hero__copy { grid-column: 1 / span 5; min-width: 0; max-width: 35rem; align-self: center; }
.home-hero__copy h1 { max-width: 34rem; }
.home-hero__copy .lead { max-width: 35rem; color: var(--color-charcoal); }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.home-hero__labels { grid-column: 1 / -1; min-width: 0; padding-top: var(--space-4); border-top: 1px solid var(--color-champagne-silver); color: var(--color-charcoal); font-size: var(--font-size-utility); font-weight: var(--weight-semibold); letter-spacing: var(--tracking-label); line-height: var(--line-height-label); }
.home-hero__labels span { color: var(--color-paprika-red); padding-inline: .35rem; }

.home-dining__grid, .home-holdem__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: center; }
.home-dining__copy { grid-column: 1 / span 5; min-width: 0; max-width: 37.5rem; }
.home-dining__copy .lead { max-width: 37.5rem; }
.home-dining__callout { max-width: 26.25rem; padding-left: var(--space-4); border-left: 3px solid var(--color-olive-leaf); }
.home-dining__image { grid-column: 7 / span 6; min-width: 0; width: 100%; margin-right: calc((100vw - min(100vw, var(--container-max))) / -2); }
.home-dining__image img { min-height: 36rem; border-radius: var(--radius-feature) 0 0 var(--radius-feature); object-position: center; }
.home-reveal { opacity: 0; transform: translateY(12px); transition: opacity var(--transition-base), transform var(--transition-base); }
.home-reveal.is-visible { opacity: 1; transform: none; }

.home-offline { position: relative; background: var(--color-lagoon-blue); color: var(--color-limestone-100); overflow: hidden; }
.home-offline::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .18; background-image: radial-gradient(rgb(255 255 255 / .32) .5px, transparent .5px); background-size: 6px 6px; }
.home-offline__grid { position: relative; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; }
.home-offline__statement { grid-column: 1 / span 9; min-width: 0; }
.home-offline__statement h2 { max-width: 64rem; font-size: clamp(3rem, 7vw, 4.5rem); color: var(--color-limestone-100); }
.home-offline__detail { grid-column: 1 / span 6; min-width: 0; max-width: 38.75rem; }
.home-offline__cues { display: grid; gap: var(--space-4); padding: 0; list-style: none; }
.home-offline__cues li { min-width: 0; padding-top: var(--space-3); border-top: 1px solid rgb(255 253 248 / .42); }
.home-offline__edge { grid-column: 8 / span 5; align-self: end; min-height: 7rem; border-top: 1px solid var(--color-champagne-silver); border-right: 1px solid var(--color-champagne-silver); border-radius: 0 7rem 0 0; }

.home-holdem__copy { grid-column: 1 / span 5; min-width: 0; max-width: 38.75rem; }
.home-holdem__image { grid-column: 7 / span 6; min-width: 0; width: 100%; }
.home-holdem__image img { min-height: 31rem; border-radius: var(--radius-feature); object-position: center; }
.home-holdem__mini-copy { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.home-holdem__mini-copy > * { min-width: 0; }
.home-holdem__notice { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; margin-top: var(--space-5); padding: var(--space-5); border: var(--border-subtle); border-radius: var(--radius-card); background: var(--color-limestone-100); }
.home-holdem__notice p { margin: 0; }
.home-holdem__notice .button { align-self: flex-start; }

.home-cardroom { background: var(--color-limestone-100); }
.home-cardroom__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: start; }
.home-cardroom__copy { grid-column: 1 / span 6; grid-row: 1; min-width: 0; max-width: 38.75rem; }
.home-cardroom__image { grid-column: 8 / span 5; grid-row: 1 / span 2; min-width: 0; width: 100%; }
.home-cardroom__image img { min-height: 31rem; border-radius: var(--radius-feature); object-position: center; }
.home-cardroom__room-note { max-width: 26.25rem; padding-left: var(--space-4); border-left: 1px solid var(--color-champagne-silver); }
.home-cardroom__high { grid-column: 5 / span 4; grid-row: 2; min-width: 0; margin-top: -7rem; padding: var(--space-5); border: var(--border-subtle); border-radius: var(--radius-card); background: var(--color-limestone-25); box-shadow: var(--shadow-floating); }
.home-cardroom__high p:last-child { margin-bottom: 0; }


.home-pathways__plaques { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin-top: var(--space-7); }
.home-plaque { display: flex; flex-direction: column; min-width: 0; min-height: 18rem; gap: var(--space-4); padding: var(--space-6); border: var(--border-subtle); border-radius: var(--radius-card); text-decoration: none; transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast); }
.home-plaque:hover { transform: scale(1.02); border-color: var(--color-champagne-silver); box-shadow: var(--shadow-floating); text-decoration: none; }
.home-plaque--stone { background: var(--color-limestone-100); }
.home-plaque--blue { background: var(--color-lagoon-blue); color: var(--color-limestone-100); border-color: var(--color-lagoon-deep); }
.home-plaque__number { color: var(--color-paprika-red); font-family: var(--font-heading); font-size: 3rem; letter-spacing: var(--tracking-heading); line-height: 1; }
.home-plaque--blue .home-plaque__number { color: var(--color-champagne-silver); }
.home-plaque__label, .home-plaque__action { font-size: var(--font-size-label); font-weight: var(--weight-semibold); letter-spacing: var(--tracking-label); line-height: var(--line-height-label); text-transform: uppercase; }
.home-plaque__action { margin-top: auto; color: var(--color-paprika-red); }
.home-plaque--blue .home-plaque__action { color: var(--color-limestone-100); }

.home-occasions { background: var(--color-limestone-100); }
.home-occasions__stories { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-top: var(--space-7); }
.home-occasions__stories article { min-width: 0; max-width: 20rem; padding-right: var(--space-5); border-right: 1px solid var(--color-champagne-silver); }
.home-occasions__stories article:last-child { border-right: 0; }
.home-occasions__stories article:nth-child(2) { border-top: 3px solid var(--color-lagoon-blue); padding-top: var(--space-3); }
.home-occasions__stories a { color: var(--color-paprika-red); font-weight: var(--weight-semibold); }

.home-courtyard { position: relative; min-height: 38.75rem; display: grid; isolation: isolate; background: var(--color-charcoal); }
.home-courtyard__media, .home-courtyard__content { grid-area: 1 / 1; }
.home-courtyard__media { z-index: -1; min-width: 0; }
.home-courtyard__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(36 50 56 / .45), transparent 65%); }
.home-courtyard__media img { height: 38.75rem; object-position: center; }
.home-courtyard__content { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-content: space-between; width: min(100% - (var(--gutter) * 2), var(--container-max)); margin-inline: auto; padding-block: var(--space-8); }
.home-courtyard__content h2 { grid-column: 1 / span 7; min-width: 0; max-width: 47.5rem; color: var(--color-limestone-100); }
.home-courtyard__caption { grid-column: 9 / span 4; min-width: 0; max-width: 26.25rem; align-self: end; padding: var(--space-5); border-top: 1px solid var(--color-champagne-silver); background: rgb(245 241 232 / .93); }
.home-courtyard__caption p { margin: 0; }

.home-final { background: var(--color-limestone-100); border-top: 4px solid var(--color-lagoon-blue); }
.home-final__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: center; }
.home-final__copy { grid-column: 3 / span 8; min-width: 0; max-width: 37.5rem; }
.home-final__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.home-final__details { max-width: 47.5rem; margin-top: var(--space-5); color: var(--color-slate-muted); font-size: var(--font-size-label); }
.home-final__marker { grid-column: 11 / span 2; min-width: 0; padding: var(--space-4); border: 1px solid var(--color-champagne-silver); border-radius: var(--radius-card); color: var(--color-spotted-gum); font-family: var(--font-heading); line-height: 1; transform: rotate(4deg); }
.home-final__marker span { display: block; margin-bottom: var(--space-3); font-family: var(--font-body); font-size: var(--font-size-utility); font-weight: var(--weight-semibold); letter-spacing: var(--tracking-label); }
.home-note { padding-block: var(--section-space-compact); }
.home-note__copy { max-width: 38.75rem; padding-top: var(--space-4); border-top: 1px solid var(--color-champagne-silver); }
.home-note__copy p:last-child { margin-bottom: 0; }

@media (max-width: 1040px) {
  .home-hero { min-height: 41rem; }
  .home-hero__media img { min-height: 41rem; }
  .home-hero__grid { padding-top: var(--space-8); }
  .home-cardroom__high { grid-column: 1 / span 6; grid-row: 2; margin-top: 0; }
  .home-courtyard__caption { grid-column: 1 / span 5; grid-row: 2; }
}

@media (max-width: 899px) {
  .home-page .section { padding-block: 4rem; }
  .home-hero { display: block; min-height: 0; background: var(--color-limestone-25); }
  .home-hero__media img { min-height: 0; height: auto; aspect-ratio: 4 / 5; object-position: 62% center; }
  .home-hero__scrim { display: none; }
  .home-hero__grid { display: block; width: 100%; padding: 0; }
  .home-hero__copy { max-width: none; padding: var(--space-7) var(--gutter) var(--space-5); }
  .home-hero__copy h1, .home-hero__copy .lead { max-width: none; }
  .home-hero__actions { flex-direction: column; }
  .home-hero__actions .button { width: 100%; }
  .home-hero__labels { margin: 0 var(--gutter); padding: var(--space-4) 0 var(--space-7); }
  .home-dining__grid, .home-holdem__grid, .home-cardroom__grid { grid-template-columns: 1fr; gap: var(--space-5); }
  .home-dining__image, .home-holdem__image, .home-cardroom__image { grid-column: 1; grid-row: 1; margin: 0; width: 100%; }
  .home-dining__image img, .home-holdem__image img, .home-cardroom__image img { min-height: 0; height: auto; aspect-ratio: 4 / 5; border-radius: var(--radius-feature); object-position: center; }
  .home-dining__copy, .home-holdem__copy, .home-cardroom__copy { grid-column: 1; grid-row: auto; max-width: none; }
  .home-cardroom__high { grid-column: 1; grid-row: auto; margin: 0; }
  .home-offline__grid { grid-template-columns: 1fr; gap: var(--space-5); }
  .home-offline__statement, .home-offline__detail { grid-column: 1; max-width: none; }
  .home-offline__statement h2 { font-size: 2.625rem; }
  .home-offline__edge { display: none; }
  .home-pathways__intro { max-width: none; }
  .home-pathways__plaques { grid-template-columns: 1fr; gap: var(--space-5); margin-top: var(--space-6); }
  .home-plaque { min-height: 13.75rem; }
  .home-occasions__intro { max-width: none; }
  .home-occasions__stories { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-occasions__stories article { max-width: none; }
  .home-occasions__stories article:nth-child(3) { grid-column: 1 / -1; border-right: 0; }
  .home-courtyard { display: block; min-height: 0; background: var(--color-limestone-25); }
  .home-courtyard__media::after { display: none; }
  .home-courtyard__media img { height: auto; aspect-ratio: 4 / 5; object-position: center; }
  .home-courtyard__content { display: block; width: 100%; padding: var(--space-7) var(--gutter); }
  .home-courtyard__content h2 { max-width: none; color: var(--color-charcoal); }
  .home-courtyard__caption { max-width: none; margin-top: var(--space-5); padding: var(--space-4) 0 0; background: transparent; }
  .home-final__grid { grid-template-columns: 1fr; }
  .home-final__copy { grid-column: 1; max-width: none; }
  .home-final__marker { display: none; }
}

@media (max-width: 699px) {
  .home-holdem__mini-copy { grid-template-columns: 1fr; gap: 0; }
  .home-occasions__stories { grid-template-columns: 1fr; gap: var(--space-5); }
  .home-occasions__stories article, .home-occasions__stories article:nth-child(3) { grid-column: 1; padding: 0 0 var(--space-5); border-right: 0; border-bottom: 1px solid var(--color-champagne-silver); }
  .home-occasions__stories article:last-child { padding-bottom: 0; border-bottom: 0; }
}

@media (max-width: 559px) {
  .home-page .section { padding-block: 4rem; }
  .home-hero__copy { padding-top: var(--space-6); }
  .home-hero__copy h1 { font-size: 2.625rem; }
  .home-hero__labels span { padding-inline: .2rem; }
  .home-dining__callout { max-width: none; }
  .home-holdem__notice .button { width: 100%; }
  .home-final__actions { flex-direction: column; }
  .home-final__actions .button { width: 100%; }
  .home-final__details { font-size: var(--font-size-label); }
}

@media (prefers-reduced-motion: reduce) {
  .home-reveal { opacity: 1; transform: none; }
  .home-plaque:hover { transform: none; }
}
