#casino-nights-page {
  overflow: hidden;
}

#casino-nights-page .cn-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(360px, 1fr);
  align-items: center;
  gap: var(--space-6);
}

#casino-nights-page .cn-hero__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-5);
  max-width: 38.125rem;
}

#casino-nights-page .cn-hero__content .eyebrow,
#casino-nights-page .cn-hero__content h1,
#casino-nights-page .cn-hero__content p,
#casino-nights-page .cn-hero__content .actions {
  margin: 0;
}

#casino-nights-page .cn-hero__content h1 {
  max-width: 37rem;
}

#casino-nights-page .cn-hero__content .intro {
  max-width: 35rem;
}

#casino-nights-page .cn-hero__rule,
#casino-nights-page .cn-final__rule {
  width: 5rem;
  height: 1px;
  background: var(--color-platinum);
}

#casino-nights-page .cn-hero__tags,
#casino-nights-page .cn-quote__markers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-width: 0;
  gap: var(--space-3);
}

#casino-nights-page .cn-hero__tags > *,
#casino-nights-page .cn-quote__markers > * {
  min-width: 0;
}

#casino-nights-page .cn-hero__actions {
  align-items: stretch;
}

#casino-nights-page .cn-hero__actions .button {
  min-width: 0;
}

#casino-nights-page .cn-hero__media {
  width: 100%;
  min-width: 0;
  margin: 0;
}

#casino-nights-page .cn-hero__media img {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 1.15 / 1;
  object-fit: cover;
}

#casino-nights-page .cn-hero__media-badge {
  position: absolute;
  right: var(--space-4);
  bottom: var(--space-4);
  max-width: calc(100% - 2rem);
}

#casino-nights-page .cn-framework__heading,
#casino-nights-page .cn-tables__heading,
#casino-nights-page .cn-process__heading,
#casino-nights-page .cn-brief__heading {
  max-width: 40.625rem;
}

#casino-nights-page .cn-framework__heading .eyebrow,
#casino-nights-page .cn-framework__heading h2,
#casino-nights-page .cn-framework__heading p,
#casino-nights-page .cn-tables__heading .eyebrow,
#casino-nights-page .cn-tables__heading h2,
#casino-nights-page .cn-tables__heading p,
#casino-nights-page .cn-process__heading .eyebrow,
#casino-nights-page .cn-process__heading h2,
#casino-nights-page .cn-process__heading p,
#casino-nights-page .cn-brief__heading .eyebrow,
#casino-nights-page .cn-brief__heading h2,
#casino-nights-page .cn-brief__heading p {
  margin-block-start: 0;
}

#casino-nights-page .cn-framework__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: var(--space-7);
}

#casino-nights-page .cn-framework__item {
  display: grid;
  grid-template-columns: minmax(2.5rem, auto) minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-4);
  padding: 0 var(--space-5);
  border-inline-start: var(--border-default);
}

#casino-nights-page .cn-framework__item:first-child {
  padding-inline-start: 0;
  border-inline-start: 0;
}

#casino-nights-page .cn-framework__item--important {
  border-color: var(--color-platinum);
}

#casino-nights-page .cn-framework__item--important::before {
  position: absolute;
  width: 2rem;
  height: 1px;
  background: var(--color-gold);
  content: "";
}

#casino-nights-page .cn-framework__number,
#casino-nights-page .cn-design-step__letter,
#casino-nights-page .cn-dealer-role > span,
#casino-nights-page .cn-brief-row__title > span,
#casino-nights-page .cn-process-step__number {
  color: var(--color-platinum);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}

#casino-nights-page .cn-framework__copy {
  min-width: 0;
  max-width: 21.25rem;
}

#casino-nights-page .cn-framework__copy h3,
#casino-nights-page .cn-framework__copy p {
  margin-block-start: 0;
}

#casino-nights-page .cn-tables__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

#casino-nights-page .cn-table-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  gap: var(--space-4);
  padding: var(--space-6);
  border: var(--border-default);
  background: var(--color-surface);
  transition: border-color var(--transition-fast);
}

#casino-nights-page .cn-table-card:hover {
  border-color: var(--color-platinum);
}

#casino-nights-page .cn-table-card--featured {
  border-color: var(--color-platinum);
}

#casino-nights-page .cn-table-card .micro-label,
#casino-nights-page .cn-table-card h3,
#casino-nights-page .cn-table-card p {
  margin: 0;
}

#casino-nights-page .cn-table-card p {
  max-width: 18.75rem;
}

#casino-nights-page .cn-table-card__footer {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-3);
  margin-top: auto;
  padding-top: var(--space-4);
  border-top: var(--border-platinum);
}

#casino-nights-page .cn-table-card__footer span {
  color: var(--color-platinum);
  font-size: var(--text-micro);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

#casino-nights-page .cn-table-card__footer a,
#casino-nights-page .cn-dealer-role a,
#casino-nights-page .cn-brief__link {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  color: var(--color-primary-hover);
  font-size: var(--text-meta);
  font-weight: 700;
  text-decoration: none;
}

#casino-nights-page .cn-tables__caption {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--space-6);
  margin-top: var(--space-6);
  padding-top: var(--space-6);
  border-top: var(--border-default);
}

#casino-nights-page .cn-tables__caption > * {
  min-width: 0;
}

#casino-nights-page .cn-tables__image {
  width: 100%;
  margin: 0;
}

#casino-nights-page .cn-tables__image img {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

#casino-nights-page .cn-tables__caption > p {
  max-width: 31.25rem;
  margin: 0;
}

#casino-nights-page .cn-scenography__grid {
  display: grid;
  grid-template-columns: minmax(400px, 5fr) minmax(0, 7fr);
  grid-template-areas: "intro content" "media content";
  align-items: start;
  gap: var(--space-6) var(--space-7);
}

#casino-nights-page .cn-scenography__intro {
  grid-area: intro;
  min-width: 0;
}

#casino-nights-page .cn-scenography__intro .eyebrow,
#casino-nights-page .cn-scenography__intro h2,
#casino-nights-page .cn-scenography__intro p {
  margin-block-start: 0;
}

#casino-nights-page .cn-scenography__intro .intro {
  max-width: 30rem;
}

#casino-nights-page .cn-scenography__media {
  grid-area: media;
  width: 100%;
  min-width: 0;
  margin: 0;
}

#casino-nights-page .cn-scenography__media img {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

#casino-nights-page .cn-scenography__media figcaption {
  max-width: 15rem;
}

#casino-nights-page .cn-scenography__content {
  display: flex;
  grid-area: content;
  flex-direction: column;
  align-self: center;
  min-width: 0;
  gap: var(--space-5);
  max-width: 32.5rem;
}

#casino-nights-page .cn-design-step {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-4);
  padding-bottom: var(--space-5);
  border-bottom: var(--border-default);
}

#casino-nights-page .cn-design-step--gold {
  border-bottom-color: var(--color-gold);
}

#casino-nights-page .cn-design-step h3,
#casino-nights-page .cn-design-step p {
  margin-block-start: 0;
}

#casino-nights-page .cn-design-step p {
  max-width: 30rem;
}

#casino-nights-page .cn-dealers__heading {
  max-width: 42.5rem;
  margin-inline: auto;
  text-align: center;
}

#casino-nights-page .cn-dealers__heading .eyebrow,
#casino-nights-page .cn-dealers__heading h2,
#casino-nights-page .cn-dealers__heading p {
  margin-inline: auto;
}

#casino-nights-page .cn-dealers__heading .intro {
  max-width: 42.5rem;
}

#casino-nights-page .cn-dealers__panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: var(--space-7);
  border: var(--border-default);
  background: var(--color-surface);
}

#casino-nights-page .cn-dealer-role {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
  padding: var(--space-6);
  border-inline-start: var(--border-default);
}

#casino-nights-page .cn-dealer-role:first-child {
  border-inline-start: 0;
}

#casino-nights-page .cn-dealer-role h3,
#casino-nights-page .cn-dealer-role p,
#casino-nights-page .cn-dealer-role a {
  margin: 0;
}

#casino-nights-page .cn-dealer-role p {
  max-width: 20rem;
}

#casino-nights-page .cn-dealer-role a {
  margin-top: auto;
}

#casino-nights-page .cn-contexts__heading {
  max-width: 43rem;
}

#casino-nights-page .cn-contexts__heading .eyebrow,
#casino-nights-page .cn-contexts__heading h2,
#casino-nights-page .cn-contexts__heading p {
  margin-block-start: 0;
}

#casino-nights-page .cn-contexts__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

#casino-nights-page .cn-context-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
  padding: var(--space-6);
  background: var(--color-surface);
  border: var(--border-default);
}

#casino-nights-page .cn-context-card--premium {
  border-color: var(--color-platinum);
}

#casino-nights-page .cn-context-card .micro-label,
#casino-nights-page .cn-context-card h3,
#casino-nights-page .cn-context-card p {
  margin: 0;
}

#casino-nights-page .cn-context-card p {
  max-width: 28rem;
}

#casino-nights-page .cn-contexts__conclusion {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-3);
  max-width: 43.75rem;
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: var(--border-platinum);
}

#casino-nights-page .cn-contexts__conclusion h3,
#casino-nights-page .cn-contexts__conclusion p,
#casino-nights-page .cn-contexts__conclusion a {
  margin: 0;
}

#casino-nights-page .cn-process__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  position: relative;
  gap: var(--space-5);
  margin-top: var(--space-7);
}

#casino-nights-page .cn-process__steps::before {
  position: absolute;
  top: 1.25rem;
  right: 10%;
  left: 10%;
  z-index: 0;
  height: 1px;
  background: var(--color-platinum);
  content: "";
}

#casino-nights-page .cn-process-step {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  position: relative;
  z-index: 1;
  min-width: 0;
  gap: var(--space-4);
}

#casino-nights-page .cn-process-step__number {
  width: max-content;
  padding-right: var(--space-3);
  background: var(--color-surface);
}

#casino-nights-page .cn-process-step--final::after {
  width: 2rem;
  height: 1px;
  margin-top: var(--space-4);
  background: var(--color-gold);
  content: "";
}

#casino-nights-page .cn-process-step h3,
#casino-nights-page .cn-process-step p {
  margin-block-start: 0;
}

#casino-nights-page .cn-process-step p {
  max-width: 17.5rem;
}

#casino-nights-page .cn-process__notice {
  max-width: 47.5rem;
  margin-top: var(--space-7);
}

#casino-nights-page .cn-process__notice .micro-label,
#casino-nights-page .cn-process__notice p {
  margin-block-start: 0;
}

#casino-nights-page .cn-brief__panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 0;
  max-width: 57.5rem;
  margin: var(--space-7) auto 0;
  border: var(--border-default);
  background: var(--color-surface);
}

#casino-nights-page .cn-brief-row {
  display: grid;
  grid-template-columns: minmax(0, 28fr) minmax(0, 72fr);
  min-width: 0;
  gap: var(--space-5);
  padding: var(--space-5);
  border-bottom: var(--border-default);
}

#casino-nights-page .cn-brief-row:nth-child(even) {
  background: var(--color-surface-alt);
}

#casino-nights-page .cn-brief-row__title {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  align-items: start;
  min-width: 0;
  gap: var(--space-3);
}

#casino-nights-page .cn-brief-row__title > span {
  font-size: 1.25rem;
}

#casino-nights-page .cn-brief-row h3,
#casino-nights-page .cn-brief-row p {
  margin: 0;
}

#casino-nights-page .cn-brief-row p {
  max-width: 32.5rem;
}

#casino-nights-page .cn-brief__link {
  width: max-content;
  max-width: 100%;
  margin: var(--space-3) var(--space-5);
}

#casino-nights-page .cn-quote__panel {
  display: grid;
  grid-template-columns: minmax(320px, 4fr) minmax(0, 8fr);
  gap: var(--space-7);
  padding: var(--space-7);
}

#casino-nights-page .cn-quote__intro {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
  max-width: 24.375rem;
}

#casino-nights-page .cn-quote__intro .eyebrow,
#casino-nights-page .cn-quote__intro h2,
#casino-nights-page .cn-quote__intro p {
  margin: 0;
}

#casino-nights-page .cn-quote__markers span {
  color: var(--color-platinum);
  font-size: var(--text-micro);
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

#casino-nights-page .cn-quote__form-area,
#casino-nights-page .cn-quote__form-area form {
  min-width: 0;
}

#casino-nights-page .cn-quote__form-area form {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

#casino-nights-page .cn-form__short-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  gap: var(--space-4);
}

#casino-nights-page .cn-form__short-fields > *,
#casino-nights-page .cn-form__long-fields > * {
  min-width: 0;
}

#casino-nights-page .cn-form__long-fields {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
}

#casino-nights-page .cn-form__checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  gap: var(--space-3);
}

#casino-nights-page .cn-form__checks > * {
  min-width: 0;
}

#casino-nights-page .cn-form__submission {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
  padding-top: var(--space-5);
  border-top: var(--border-default);
}

#casino-nights-page .cn-form__submission p {
  max-width: 38.75rem;
  margin: 0;
}

#casino-nights-page .cn-form__submission .button {
  align-self: flex-start;
}

#casino-nights-page .cn-form-success {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
}

#casino-nights-page .cn-form-success h3,
#casino-nights-page .cn-form-success p,
#casino-nights-page .cn-form-success button {
  margin: 0;
}

#casino-nights-page .cn-form-success button {
  align-self: flex-start;
}

#casino-nights-page .cn-final__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  gap: var(--space-4);
  max-width: 45rem;
  margin-inline: auto;
  padding: var(--space-8);
  text-align: center;
}

#casino-nights-page .cn-final__panel .eyebrow,
#casino-nights-page .cn-final__panel h2,
#casino-nights-page .cn-final__panel p,
#casino-nights-page .cn-final__panel a {
  margin: 0;
}

#casino-nights-page .cn-final__panel h2 {
  max-width: 40rem;
}

#casino-nights-page .cn-final__panel > p:not(.cn-final__note) {
  max-width: 37.5rem;
}

#casino-nights-page .cn-final__note {
  max-width: 35rem;
  color: var(--color-platinum);
}

@media (max-width: 900px) {
  #casino-nights-page .cn-hero__grid,
  #casino-nights-page .cn-scenography__grid,
  #casino-nights-page .cn-quote__panel {
    grid-template-columns: minmax(0, 1fr);
  }

  #casino-nights-page .cn-hero__content {
    max-width: none;
  }

  #casino-nights-page .cn-hero__content h1,
  #casino-nights-page .cn-hero__content .intro {
    max-width: 38.125rem;
  }

  #casino-nights-page .cn-scenography__grid {
    grid-template-areas: "intro" "media" "content";
  }

  #casino-nights-page .cn-scenography__media {
    max-width: 45rem;
  }

  #casino-nights-page .cn-scenography__content {
    max-width: none;
  }

  #casino-nights-page .cn-quote__panel {
    padding: var(--space-6);
  }

  #casino-nights-page .cn-quote__intro {
    max-width: 35rem;
  }
}

@media (max-width: 880px) {
  #casino-nights-page .cn-process__steps {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  #casino-nights-page .cn-process__steps::before {
    top: 1rem;
    bottom: 1rem;
    left: 1.5rem;
    right: auto;
    width: 1px;
    height: auto;
  }

  #casino-nights-page .cn-process-step {
    grid-template-columns: 3rem minmax(0, 1fr);
    grid-template-rows: auto;
    padding-bottom: var(--space-5);
  }

  #casino-nights-page .cn-process-step__number {
    padding-right: 0;
  }

  #casino-nights-page .cn-process-step p {
    max-width: 34rem;
  }

  #casino-nights-page .cn-process-step--final::after {
    grid-column: 2;
  }
}

@media (max-width: 850px) {
  #casino-nights-page .cn-tables__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #casino-nights-page .cn-table-card:last-child {
    grid-column: 1 / -1;
  }

  #casino-nights-page .cn-table-card:last-child p {
    max-width: 35rem;
  }
}

@media (max-width: 840px) {
  #casino-nights-page .cn-framework__items {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin-top: var(--space-6);
    border-top: var(--border-default);
  }

  #casino-nights-page .cn-framework__item,
  #casino-nights-page .cn-framework__item:first-child {
    padding: var(--space-5) 0;
    border-inline-start: 0;
    border-bottom: var(--border-default);
  }

  #casino-nights-page .cn-framework__copy {
    max-width: 34rem;
  }
}

@media (max-width: 760px) {
  #casino-nights-page .cn-dealers__panel,
  #casino-nights-page .cn-contexts__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #casino-nights-page .cn-dealer-role,
  #casino-nights-page .cn-dealer-role:first-child {
    border-inline-start: 0;
    border-top: var(--border-default);
  }

  #casino-nights-page .cn-dealer-role:first-child {
    border-top: 0;
  }
}

@media (max-width: 700px) {
  #casino-nights-page .cn-tables__grid,
  #casino-nights-page .cn-tables__caption,
  #casino-nights-page .cn-form__short-fields,
  #casino-nights-page .cn-form__checks {
    grid-template-columns: minmax(0, 1fr);
  }

  #casino-nights-page .cn-table-card:last-child {
    grid-column: auto;
  }

  #casino-nights-page .cn-tables__caption {
    gap: var(--space-4);
  }

  #casino-nights-page .cn-brief-row {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
  }

  #casino-nights-page .cn-brief__panel {
    margin-top: var(--space-6);
  }

  #casino-nights-page .cn-form__submission .button,
  #casino-nights-page .cn-form-success button {
    width: 100%;
  }
}

@media (max-width: 560px) {
  #casino-nights-page .cn-hero__content h1 {
    font-size: clamp(2.7rem, 12vw, 4rem);
  }

  #casino-nights-page .cn-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  #casino-nights-page .cn-hero__actions .button {
    width: 100%;
  }

  #casino-nights-page .cn-hero__media-badge {
    position: static;
    width: max-content;
    max-width: 100%;
    margin: var(--space-3);
  }

  #casino-nights-page .cn-table-card,
  #casino-nights-page .cn-context-card {
    padding: var(--space-5);
  }

  #casino-nights-page .cn-quote__panel {
    padding: var(--space-5);
  }
}

@media (max-width: 480px) {
  #casino-nights-page .cn-framework__item,
  #casino-nights-page .cn-design-step,
  #casino-nights-page .cn-process-step {
    grid-template-columns: minmax(0, 1fr);
  }

  #casino-nights-page .cn-process__steps::before {
    display: none;
  }

  #casino-nights-page .cn-process-step--final::after {
    grid-column: auto;
  }

  #casino-nights-page .cn-brief-row__title {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  #casino-nights-page .cn-final__panel {
    padding: var(--space-6) var(--space-5);
  }
}

@media (max-width: 420px) {
  #casino-nights-page .cn-final__panel h2 {
    font-size: clamp(2.25rem, 10vw, 3.25rem);
  }

  #casino-nights-page .cn-final__panel .button {
    width: 100%;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }
