.home-page {
  color: var(--color-text);
}
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: stretch;
}
.hero__background {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.1) contrast(1.05) brightness(0.9);
  transform: scale(1.03);
}
.hero__gradient-layer {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 10% 0, rgba(216, 169, 90, 0.35) 0, transparent 45%), radial-gradient(circle at 90% 10%, rgba(32, 54, 40, 0.35) 0, transparent 55%), linear-gradient(to bottom, rgba(0, 0, 0, 0.75) 0, rgba(0, 0, 0, 0.96) 70%);
}
.hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.3fr);
  gap: var(--space-10);
  align-items: center;
  padding-top: var(--space-16);
  padding-bottom: var(--space-16);
}
.hero__content {
  max-width: 640px;
}
.hero__badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}
.hero h1 {
  margin-bottom: var(--space-4);
}
.hero__cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
  margin-top: var(--space-6);
  margin-bottom: var(--space-4);
}
.hero__text-link {
  font-size: var(--font-size-sm);
}
.hero__meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  font-size: var(--font-size-sm);
  color: var(--color-text-soft);
}
.hero__meta-item dt {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: var(--font-size-xs);
  margin-bottom: var(--space-1);
  color: var(--color-text-muted);
}
.hero__feature-card {
  align-self: stretch;
}
.hero__feature-eyebrow {
  font-size: var(--font-size-xs);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-text-soft);
  margin-bottom: var(--space-3);
}
.hero__feature-text {
  color: var(--color-text-soft);
}
.hero__feature-text + .hero__feature-text {
  margin-top: var(--space-3);
}
.hero__feature-link {
  display: inline-flex;
  margin-top: var(--space-4);
  font-size: var(--font-size-sm);
}
.hero__scroll-indicator {
  position: absolute;
  left: 50%;
  bottom: var(--space-4);
  transform: translateX(-50%);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}
.hero__scroll-line {
  width: 1px;
  height: 42px;
  background: linear-gradient(to bottom, rgba(216, 169, 90, 0.7), transparent);
  position: relative;
  overflow: hidden;
}
.hero__scroll-line::after {
  content: "";
  position: absolute;
  top: -40%;
  left: 0;
  right: 0;
  height: 40%;
  background: linear-gradient(to bottom, rgba(216, 169, 90, 0), rgba(216, 169, 90, 0.9));
  animation: scrollPulse 2.6s var(--transition-smooth) infinite;
}
@keyframes scrollPulse {
  0% {
    transform: translateY(0);
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  100% {
    transform: translateY(140%);
    opacity: 0;
  }
}
.section__grid {
  align-items: center;
  gap: var(--space-10);
}
.section__grid--reverse {
  grid-auto-flow: dense;
}
.section__grid--reverse .section__image {
  order: 2;
}
.experience-list,
.poker-list,
.updates-list,
.booking-list,
.booking-links,
.cuisine-tags {
  list-style: none;
  margin-top: var(--space-4);
  margin-bottom: var(--space-4);
  display: grid;
  gap: var(--space-2);
  color: var(--color-text-soft);
  font-size: var(--font-size-sm);
}
.experience-list li::before,
.poker-list li::before,
.updates-list li::before,
.booking-list li::before,
.cuisine-tags li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  margin-right: 0.5rem;
  background: radial-gradient(circle at center, var(--color-primary) 0, transparent 65%);
}
.booking-links li::before {
  display: none;
}
.booking-links a {
  font-size: var(--font-size-sm);
}
.experience__cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}
.experience__cards {
  display: grid;
  gap: var(--space-6);
}
.section-card h3 {
  margin-bottom: var(--space-3);
}
.section--gallery {
  position: relative;
}
.section--gallery::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 10% 0, rgba(216, 169, 90, 0.16) 0, transparent 55%);
}
.section--interior .section__header-full {
  grid-column: 1 / -1;
  margin-bottom: var(--space-6);
}
.section--updates {
  background: var(--color-bg-elevated);
}
.updates-card {
  align-self: stretch;
}
.newsletter-form {
  display: grid;
  gap: var(--space-4);
}
.newsletter-note {
  margin-top: var(--space-2);
  font-size: var(--font-size-xs);
}
.section--booking {
  position: relative;
}
.section__grid--booking {
  align-items: flex-start;
}
.booking-card {
  align-self: stretch;
}
.section-card__links {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-top: var(--space-2);
}
@media (max-width: 1024px) {
  .hero__inner {
    grid-template-columns: 1.2fr 1fr;
    padding-top: var(--space-12);
    padding-bottom: var(--space-12);
  }
  .hero__meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 768px) {
  .hero {
    min-height: 0;
  }
  .hero__inner {
    grid-template-columns: 1fr;
    padding-top: var(--space-10);
    padding-bottom: var(--space-10);
  }
  .hero__content {
    max-width: none;
  }
  .hero__meta {
    grid-template-columns: 1fr;
  }
  .hero__feature-card {
    margin-top: var(--space-4);
  }
  .hero__scroll-indicator {
    display: none;
  }
  .section__grid--reverse .section__image {
    order: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero__background img {
    transform: none;
  }
  .hero__scroll-line::after {
    animation: none;
  }
}
