body {
  background-color: var(--color-bg-dark);
}

.hero {
  position: relative;
  color: var(--color-text-on-dark);
}

.hero__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.1) contrast(1.1);
}

.hero__content {
  position: relative;
  z-index: 1;
}

.hero__inner {
  max-width: 640px;
  padding-block: var(--space-16);
}

.hero__cta-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-5);
}

.hero__meta {
  margin-top: var(--space-4);
  font-size: var(--font-size-sm);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  color: rgba(245, 241, 232, 0.82);
}

.hero__meta-separator {
  opacity: 0.6;
}

.hero__scroll-hint {
  position: absolute;
  right: var(--space-4);
  bottom: var(--space-10);
  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;
  opacity: 0.8;
}

.hero__scroll-line {
  width: 1px;
  height: 64px;
  background: linear-gradient(to bottom, var(--color-primary), transparent);
}

.hero__scroll-text {
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

.section-kicker {
  font-size: var(--font-size-sm);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-accent-emerald);
  margin-bottom: var(--space-2);
}

.section-header {
  margin-bottom: var(--space-8);
}

.section-header__top {
  max-width: 720px;
}

.section-about__grid {
  align-items: center;
  gap: var(--space-8);
}

.section-about__panel {
  border: 1px solid var(--color-gray-200);
}

.section-about__highlights {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-4);
}

.section-about__chip {
  padding-inline: var(--space-3);
  padding-block: 0.45rem;
  border-radius: var(--radius-pill);
  background-color: var(--color-gray-100);
  color: var(--color-heading-navy);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
}

.section-about__list {
  margin-top: var(--space-4);
  padding-left: 1.1rem;
}

.section-about__list li {
  margin-bottom: var(--space-2);
  position: relative;
}

.section-about__list li::before {
  content: "";
  position: absolute;
  left: -0.9rem;
  top: 0.55rem;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background-color: var(--color-accent-emerald);
}

.section-about__cta {
  margin-top: var(--space-4);
}

.section-formats {
  background: radial-gradient(circle at top left, rgba(200, 164, 90, 0.12), transparent 55%), var(--color-bg-dark);
}

.section-formats__grid {
  align-items: stretch;
  gap: var(--space-8);
}

.section-formats__media {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.section-formats__cards {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.section-formats__card h3 {
  color: var(--color-text-on-dark);
}

.section-formats__card-top {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--space-2);
}

.section-formats__link {
  display: inline-flex;
  margin-top: var(--space-2);
  font-size: var(--font-size-sm);
}

.section-formats__cta {
  margin-top: var(--space-2);
}

.section-header--night h2,
.section-header--night p {
  color: var(--color-text-on-dark);
}

.section-casino__grid {
  align-items: center;
  gap: var(--space-8);
}

.section-casino__media picture,
.section-casino__media img {
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-medium);
}

.section-casino__list {
  margin-top: var(--space-4);
  padding-left: 1.1rem;
}

.section-casino__list li {
  margin-bottom: var(--space-2);
  position: relative;
}

.section-casino__list li::before {
  content: "";
  position: absolute;
  left: -0.9rem;
  top: 0.55rem;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background-color: var(--color-primary);
}

.section-casino__cta {
  margin-top: var(--space-4);
}

.section-poker__grid {
  gap: var(--space-8);
  align-items: center;
}

.section-poker__media picture,
.section-poker__media img {
  border-radius: var(--radius-lg);
}

.section-poker__cta {
  margin-top: var(--space-4);
}

.section-corporate__grid {
  gap: var(--space-4);
}

.section-corporate__card {
  min-height: 100%;
}

.section-header--corporate h2 {
  color: var(--color-heading-navy);
}

.section-corporate__cta {
  margin-top: var(--space-6);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

.section-corporate__link {
  font-size: var(--font-size-sm);
}

.section-private__grid {
  align-items: center;
  gap: var(--space-8);
}

.section-private__media picture,
.section-private__media img {
  border-radius: var(--radius-lg);
}

.section-private__cta {
  margin-top: var(--space-4);
}

.section-steps__timeline {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  row-gap: var(--space-4);
}

.section-steps__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: var(--space-4);
  align-items: flex-start;
}

.section-steps__marker {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  border: 1px solid var(--color-accent-emerald);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  background: #ffffff;
  color: var(--color-heading-navy);
  box-shadow: var(--shadow-soft);
}

.section-steps__body h3 {
  margin-bottom: var(--space-1);
}

.section-cta-final {
  background: radial-gradient(circle at bottom right, rgba(30, 94, 79, 0.35), transparent 60%), var(--color-bg-dark);
}

.section-cta-final__inner {
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.section-cta-final__content {
  max-width: 760px;
}

.section-cta-final__points {
  margin-top: var(--space-4);
  padding-left: 1.1rem;
}

.section-cta-final__points li {
  margin-bottom: var(--space-2);
  position: relative;
}

.section-cta-final__points li::before {
  content: "";
  position: absolute;
  left: -0.9rem;
  top: 0.55rem;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background-color: var(--color-accent-emerald);
}

.section-cta-final__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-5);
}

.section-cta-final__note {
  margin-top: var(--space-4);
  font-size: var(--font-size-sm);
  color: var(--color-gray-300);
}

@media (max-width: 900px) {
  .hero__inner {
    max-width: 100%;
    padding-block: var(--space-14);
  }

  .hero__scroll-hint {
    display: none;
  }
}

@media (max-width: 768px) {
  .hero-fullscreen {
    min-height: 80vh;
  }

  .section-corporate__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .section-steps__item {
    grid-template-columns: auto minmax(0, 1fr);
  }
}

@media (max-width: 600px) {
  .section-cta-final__inner {
    padding: var(--space-5);
  }

  .section-about__grid,
  .section-casino__grid,
  .section-poker__grid,
  .section-private__grid {
    gap: var(--space-6);
  }
}
