/* The interior pages continue the same red lacquer, gold and circular rhythm.
   Photographs are environments or shaped fragments, never framed photo cards. */
body[data-page]:not([data-page="home"]) {
  background: #480619;
}
body[data-page]:not([data-page="home"]) .eyebrow {
  letter-spacing: .2em;
}
body[data-page]:not([data-page="home"]) main {
  overflow: clip;
}
body[data-page]:not([data-page="home"]) .gold-button {
  border-radius: 100px;
  padding-inline: 31px;
}
body[data-page]:not([data-page="home"]) .invitation {
  position: relative;
  min-height: 790px;
  padding: 115px 12%;
  border: 0;
  background: radial-gradient(ellipse at 70% 51%, #b42a40 0%, #6f1028 38%, #480619 77%);
  gap: 11%;
  isolation: isolate;
}
body[data-page]:not([data-page="home"]) .invitation::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 760px;
  height: 760px;
  border: 1px solid #edc07523;
  border-radius: 50%;
  right: -9%;
  top: 3%;
}
body[data-page]:not([data-page="home"]) .invitation-heading h2 {
  font-size: clamp(54px, 5.9vw, 100px);
  line-height: .96;
}
body[data-page]:not([data-page="home"]) .invitation-heading > p:not(.eyebrow) {
  max-width: 380px;
  line-height: 1.9;
}
body[data-page]:not([data-page="home"]) .mini-pass {
  width: 307px;
  height: 424px;
  transform: rotate(-12deg);
  box-shadow: 24px 45px 80px #1d000b75;
}
body[data-page]:not([data-page="home"]) .pass-foil > img {
  height: 232px;
}
body[data-page]:not([data-page="home"]) .invitation-coin {
  width: 160px;
  bottom: -44px;
  right: -24px;
}

/* What's on: the calendar is the navigation, the selected occasion fills the room. */
body[data-page="offers"] .offers-intro {
  padding: 92px 9vw 60px;
  text-align: left;
  position: relative;
  background: radial-gradient(ellipse at 74% 20%, #8e1933, #480619 77%);
  isolation: isolate;
}
body[data-page="offers"] .offers-intro::after {
  content: "";
  width: min(53vw, 850px);
  aspect-ratio: 1;
  position: absolute;
  border: 1px solid #e6ba7530;
  border-radius: 50%;
  right: -18vw;
  top: -140px;
  z-index: -1;
}
body[data-page="offers"] .offers-intro h1 {
  font-size: clamp(75px, 8vw, 137px);
  line-height: .91;
  max-width: 1100px;
}
body[data-page="offers"] .offers-intro > p:last-child {
  max-width: 440px;
  margin: 36px 0 0 50%;
  font-size: 14px;
  line-height: 1.9;
}
body[data-page="offers"] .offers-browser {
  padding: 0;
  background: #480619;
}
body[data-page="offers"] .cadence-tabs {
  max-width: none;
  width: 70%;
  margin: 0 auto 26px;
  padding-bottom: 19px;
  border-bottom-color: #d5ac6833;
  z-index: 2;
}
body[data-page="offers"] .cadence-tabs button {
  padding: 26px 8px;
  font-size: clamp(28px, 3.1vw, 49px);
  transition: color .4s, letter-spacing .4s;
}
body[data-page="offers"] .cadence-tabs button[aria-selected="true"] {
  letter-spacing: .02em;
}
body[data-page="offers"] .tab-coin {
  width: 47px;
  height: 47px;
  bottom: -23px;
  left: calc((var(--tab) + .5)*100%/3 - 23.5px);
  filter: drop-shadow(0 5px 8px #23030b80);
}
body[data-page="offers"] .featured-offer {
  position: relative;
  display: flex;
  min-height: 690px;
  align-items: center;
  border: 0;
  box-shadow: none;
  background: #480619;
  isolation: isolate;
  animation: interior-arrive .65s ease-out both;
}
body[data-page="offers"] .featured-offer-photo {
  position: absolute;
  inset: 0;
  min-height: 0;
  z-index: -1;
  mask-image: linear-gradient(to bottom, transparent, #000 14%, #000 83%, transparent);
  -webkit-mask-image: linear-gradient(to bottom, transparent, #000 14%, #000 83%, transparent);
}
body[data-page="offers"] .featured-offer-photo img {
  object-position: 68% 55%;
  opacity: .88;
}
body[data-page="offers"] .featured-offer-photo::after {
  background: linear-gradient(90deg, #480619f5 0%, #480619e8 23%, #48061983 49%, #48061912 77%), linear-gradient(0deg, #4806197a, transparent 50%);
}
body[data-page="offers"] .featured-offer-photo .cadence {
  top: 85px;
  left: auto;
  right: 9vw;
  transform: none;
  border-radius: 0;
  background: none;
  backdrop-filter: none;
  border: 0;
  border-bottom: 1px solid var(--gold);
  padding: 9px 0;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .16em;
}
body[data-page="offers"] .featured-offer-copy {
  padding: 100px 0 115px 13%;
  max-width: 64%;
}
body[data-page="offers"] .featured-offer-copy h2 {
  font-size: clamp(70px, 8.2vw, 135px);
  line-height: .9;
  margin: 28px 0 30px;
  text-wrap: balance;
}
body[data-page="offers"] .featured-offer-copy > p:not(.eyebrow) {
  max-width: 325px;
  line-height: 1.9;
  color: #f4d3cd;
  margin-bottom: 31px;
}
body[data-page="offers"] .offer-disclaimer {
  color: #e7bbb3;
  font-size: 10px;
}
body[data-page="offers"] .account-nudge {
  padding: 100px 13% 115px;
  border: 0;
  background: radial-gradient(ellipse at 20% 90%, #7e102e, #480619 68%);
}
body[data-page="offers"] .account-nudge h2 {
  font-size: clamp(65px, 6.6vw, 105px);
}

/* Games: an oversized circular glimpse, turning into open editorial space. */
body[data-page="games"] .game-page {
  position: relative;
  min-height: min(900px, 95svh);
  display: flex;
  align-items: center;
  isolation: isolate;
  background: radial-gradient(ellipse at 24% 51%, #8e1731, #480619 65%);
}
body[data-page="games"] .game-page::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 72vw;
  height: 72vw;
  right: -24vw;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid #f4ce883d;
  border-radius: 50%;
}
body[data-page="games"] .game-page-photo {
  position: absolute;
  inset: 0 0 0 33%;
  height: auto;
  z-index: -1;
  clip-path: ellipse(76% 71% at 84% 50%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 35%, #000 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 35%, #000 100%);
}
body[data-page="games"] .game-page-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #480619ce, #48061920 63%), linear-gradient(0deg, #480619d9, transparent 29%, transparent 77%, #48061944);
}
body[data-page="games"] .game-page-photo img {
  object-position: 72% center;
  transform: scale(1.035);
  animation: game-breath 15s ease-in-out infinite alternate;
}
body[data-page="games"] .game-page-copy {
  padding: 72px 0 90px 9vw;
  width: 60%;
  max-width: 1040px;
}
body[data-page="games"] .game-nav {
  gap: 32px;
  margin: 31px 0 55px;
  font-size: 12px;
  letter-spacing: .04em;
}
body[data-page="games"] .game-nav a {
  color: #d8aaa6;
  transition: color .3s, border-color .3s;
}
body[data-page="games"] .game-nav a:hover,
body[data-page="games"] .game-nav [aria-current="page"] {
  color: #ffe3a8;
}
body[data-page="games"] .game-page h1 {
  font-size: clamp(65px, 7.4vw, 122px);
  line-height: .91;
  text-shadow: 0 4px 50px #28000d50;
}
body[data-page="games"] .game-page-copy > p:not(.eyebrow):not(.game-footnote) {
  max-width: 350px;
  font-size: 14px;
  color: #f1cfc8;
  line-height: 1.9;
  margin: 35px 0;
}
body[data-page="games"] .game-footnote {
  max-width: 340px;
  color: #d7a7a0;
  line-height: 1.7;
}

/* Experience: a full room, one soft-edged detail, and an open list of occasions. */
body[data-page="experience"] .experience-hero {
  height: 86svh;
  min-height: 610px;
  max-height: 1000px;
  background: #480619;
}
body[data-page="experience"] .experience-hero > img {
  object-position: center 56%;
  filter: brightness(.72) saturate(.95);
}
body[data-page="experience"] .experience-hero::after {
  background: linear-gradient(90deg, #300311b8, transparent 80%), linear-gradient(0deg, #480619, transparent 49%);
}
body[data-page="experience"] .experience-hero > div {
  left: 9%;
  bottom: 12%;
}
body[data-page="experience"] .experience-hero h1 {
  font-size: clamp(78px, 9.3vw, 155px);
  line-height: .9;
  margin: 30px 0;
}
body[data-page="experience"] .experience-editorial {
  position: relative;
  min-height: 800px;
  grid-template-columns: 1fr 1fr;
  gap: 7%;
  padding: 115px 9%;
  background: radial-gradient(ellipse at 85% 45%, #79112c, #480619 74%);
  isolation: isolate;
}
body[data-page="experience"] .experience-editorial::after {
  content: "";
  width: 45vw;
  height: 45vw;
  max-width: 790px;
  max-height: 790px;
  position: absolute;
  right: -8vw;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid #ecc7812d;
  border-radius: 50%;
  z-index: -1;
}
body[data-page="experience"] .experience-editorial h2 {
  font-size: clamp(65px, 6.5vw, 105px);
  line-height: .94;
}
body[data-page="experience"] .experience-editorial p:not(.eyebrow) {
  max-width: 350px;
  font-size: 14px;
  line-height: 1.95;
}
body[data-page="experience"] .experience-editorial > img {
  width: 49vw;
  height: 49vw;
  max-width: 720px;
  max-height: 720px;
  border-radius: 50%;
  border: 0;
  object-position: 55% center;
  clip-path: circle(48%);
  mask-image: radial-gradient(circle, #000 46%, #000d 57%, transparent 71%);
  -webkit-mask-image: radial-gradient(circle, #000 46%, #000d 57%, transparent 71%);
  transform: rotate(-6deg);
  transition: transform 1.8s cubic-bezier(.2,.8,.2,1);
}
body[data-page="experience"] .experience-editorial:hover > img {
  transform: rotate(0deg) scale(1.035);
}
body[data-page="experience"] .offers-section {
  border: 0;
  background: linear-gradient(#480619, #58081f, #480619);
  padding: 45px 9% 90px;
}
body[data-page="experience"] .offers-section .section-top {
  align-items: end;
  margin-bottom: 50px;
}
body[data-page="experience"] .offers-section h2 {
  font-size: clamp(66px, 6.8vw, 111px);
}
body[data-page="experience"] .offer-grid {
  display: block;
}
body[data-page="experience"] .offer-card {
  display: block;
  width: 100%;
  max-width: none;
  min-height: 315px;
  border: 0;
  border-top: 1px solid #e4bd762f;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  margin: 0;
  padding: 25px 0;
  transform: none;
}
body[data-page="experience"] .offer-card:last-child {
  border-bottom: 1px solid #e4bd762f;
}
body[data-page="experience"] .offer-card:hover {
  box-shadow: none;
  transform: none;
}
body[data-page="experience"] .offer-image {
  position: absolute;
  width: 31%;
  height: 255px;
  top: 30px;
  right: 4%;
  border-radius: 50%;
  overflow: visible;
  transform: rotate(7deg);
  transition: transform .9s cubic-bezier(.2,.8,.2,1);
}
body[data-page="experience"] .offer-image img {
  object-fit: cover;
  clip-path: ellipse(48% 49%);
  mask-image: radial-gradient(ellipse, #000 47%, transparent 74%);
  -webkit-mask-image: radial-gradient(ellipse, #000 47%, transparent 74%);
  filter: saturate(.85) brightness(.85);
}
body[data-page="experience"] .offer-image::after {
  display: none;
}
body[data-page="experience"] .offer-card:hover .offer-image {
  transform: translateX(-15px) rotate(-3deg) scale(1.06);
}
body[data-page="experience"] .offer-image .cadence {
  top: 5px;
  left: auto;
  right: 0;
  transform: rotate(-7deg);
  background: none;
  backdrop-filter: none;
  border: 0;
  border-bottom: 1px solid #e4bd7666;
  border-radius: 0;
  padding: 7px 0;
  font-size: 10px;
  letter-spacing: .08em;
}
body[data-page="experience"] .card-serial {
  right: -2%;
  left: auto;
  bottom: 10px;
  font-size: 64px;
  color: #f0c8867a;
  transform: rotate(-7deg);
}
body[data-page="experience"] .offer-body {
  padding: 22px 0;
  width: 62%;
  position: relative;
  z-index: 1;
}
body[data-page="experience"] .offer-body .eyebrow {
  margin-bottom: 17px;
}
body[data-page="experience"] .offer-body h3 {
  font-size: clamp(44px, 4.7vw, 75px);
  min-height: 0;
}
body[data-page="experience"] .offer-body h3 br {
  display: none;
}
body[data-page="experience"] .offer-body > p:not(.eyebrow) {
  font-size: 13px;
  max-width: 390px;
  min-height: 0;
  margin: 18px 0 13px;
}
body[data-page="experience"] .section-note {
  text-align: left;
  padding-top: 28px;
  font-size: 11px;
}

/* The pass remains a tactile object. Its surrounding space is open and continuous. */
body[data-page="pass"] .pass-page {
  min-height: 830px;
  position: relative;
  padding: 85px 11% 105px;
  gap: 11%;
  background: radial-gradient(ellipse at 77% 44%, #af233c, #6f0d2a 45%, #480619 80%);
  isolation: isolate;
}
body[data-page="pass"] .pass-page::after {
  content: "";
  position: absolute;
  width: 650px;
  height: 650px;
  border: 1px solid #e4bd7629;
  border-radius: 50%;
  right: -10%;
  top: 8%;
  z-index: -1;
}
body[data-page="pass"] .pass-story h1 {
  font-size: clamp(67px, 6.1vw, 104px);
  line-height: .93;
}
body[data-page="pass"] .pass-benefits {
  margin-block: 32px;
  gap: 12px;
}
body[data-page="pass"] .pass-benefits b {
  font-size: 23px;
}
body[data-page="pass"] .how-it-works {
  padding: 75px 11% 115px;
  border: 0;
  background: #480619;
}
body[data-page="pass"] .how-it-works article > span {
  font-size: 52px;
  color: #e5ba7488;
}
body[data-page="pass"] .how-it-works article {
  padding-top: 30px;
}
body[data-page="pass"] .how-it-works h3 {
  font-size: 38px;
}
body[data-page="join"] .join-page {
  min-height: 800px;
  background: radial-gradient(ellipse at 20% 10%, #a5223b, #480619 74%);
  padding: 100px 12%;
  align-items: center;
}
body[data-page="join"] .join-form {
  border: 0;
  border-left: 1px solid #e4bd7638;
  background: transparent;
  box-shadow: none;
  padding: 20px 0 20px 60px;
}
body[data-page="join"] .join-chip {
  width: 210px;
  margin: 40px 0 0 15%;
}
body[data-page="join"] .join-form input {
  border: 0;
  border-bottom: 1px solid #edc78770;
  padding: 14px 0;
  background: transparent;
  border-radius: 0;
}

/* The account keeps its practical hierarchy, with objects floating in the red space. */
body[data-page="account"] .account-page {
  background: radial-gradient(ellipse at 78% 15%, #8b1933, #480619 68%);
  padding-top: 65px;
}
body[data-page="account"] .account-heading {
  padding-bottom: 15px;
}
body[data-page="account"] .account-heading h1 {
  font-size: clamp(59px, 6vw, 92px);
}
body[data-page="account"] .account-main-grid {
  gap: 5%;
}
body[data-page="account"] .account-pass-box,
body[data-page="account"] .welcome-gift {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 25px 5px;
  overflow: visible;
}
body[data-page="account"] .account-pass-box {
  border-top: 1px solid #e4bd7645;
}
body[data-page="account"] .welcome-gift {
  border-top: 1px solid #e4bd7645;
  border-left: 1px solid #e4bd7624;
  padding-left: 30px;
}
body[data-page="account"] .welcome-gift > h2 {
  font-size: clamp(34px, 3.1vw, 51px);
}
body[data-page="account"] .gift-chip {
  width: 190px;
  margin-top: 28px;
}
body[data-page="account"] .welcome-gift.is-revealed .gift-chip {
  width: 80px;
}
body[data-page="account"] .account-pass-box > .gold-button {
  width: auto;
  display: flex;
  margin: 0 auto;
  min-height: 48px;
}
body[data-page="account"] .account-lower-grid {
  gap: 5%;
  margin-top: 35px;
}
body[data-page="account"] .visit-tile {
  border: 0;
  border-radius: 0;
  min-height: 320px;
  overflow: visible;
}
body[data-page="account"] .visit-tile img {
  clip-path: ellipse(64% 50% at 31% 50%);
  mask-image: linear-gradient(90deg, #000, transparent 95%);
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 95%);
  opacity: .7;
}
body[data-page="account"] .visit-tile::after {
  background: linear-gradient(0deg, #480619, #48061900 75%);
}
body[data-page="account"] .visit-tile > div {
  bottom: 30px;
  left: 0;
}
body[data-page="account"] .account-reminder {
  border: 0;
  border-top: 1px solid #e4bd7635;
  border-radius: 0;
  padding: 28px 0;
}
body[data-page="account"] .account-reminder h3 {
  font-size: 43px;
}
body[data-page="visit"] .visit-page {
  padding: 90px 10% 110px;
  min-height: 850px;
  gap: 8%;
  background: radial-gradient(ellipse at 75% 47%, #a8253b, #6c0c27 40%, #480619 80%);
  align-items: center;
}
body[data-page="visit"] .visit-copy h1 {
  font-size: clamp(66px, 6.5vw, 109px);
  line-height: .91;
}
body[data-page="visit"] .visit-arch img {
  height: min(74svh, 750px);
}
body[data-page="visit"] .visit-facts {
  grid-template-columns: 1fr 1fr;
  gap: 26px;
  margin-top: 45px;
}
body[data-page="visit"] .visit-facts p {
  border-top: 1px solid #e4bd762f;
  padding-top: 18px;
}
body[data-page="visit"] .visit-facts p:last-child {
  grid-column: 1 / -1;
}

@keyframes interior-arrive {
  from { opacity: 0; transform: translateY(9px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes game-breath {
  from { transform: scale(1.035) translateX(0); }
  to { transform: scale(1.07) translateX(-.8%); }
}

@media (min-width: 1800px) {
  body[data-page="offers"] .featured-offer,
  body[data-page="games"] .game-page {
    min-height: 830px;
  }
}
@media (max-width: 1100px) {
  body[data-page]:not([data-page="home"]) .invitation {
    min-height: 650px;
    padding: 85px 8%;
    gap: 8%;
  }
  body[data-page]:not([data-page="home"]) .invitation-heading h2 {
    font-size: 60px;
  }
  body[data-page]:not([data-page="home"]) .mini-pass {
    width: 255px;
    height: 365px;
  }
  body[data-page]:not([data-page="home"]) .pass-foil > img {
    height: 193px;
  }
  body[data-page]:not([data-page="home"]) .invitation-coin {
    width: 125px;
    right: -8px;
  }
  body[data-page="offers"] .featured-offer-copy {
    padding-left: 9%;
    max-width: 70%;
  }
  body[data-page="games"] .game-page {
    min-height: 750px;
  }
  body[data-page="games"] .game-page-copy {
    width: 67%;
    padding-left: 7%;
  }
  body[data-page="games"] .game-page h1 {
    font-size: 8.4vw;
  }
  body[data-page="experience"] .experience-editorial {
    min-height: 680px;
    padding-inline: 8%;
  }
  body[data-page="experience"] .experience-editorial h2 {
    font-size: 7.2vw;
  }
  body[data-page="experience"] .offer-image {
    width: 34%;
    right: 0;
  }
  body[data-page="experience"] .offer-body h3 {
    font-size: 51px;
  }
  body[data-page="pass"] .pass-page {
    padding-inline: 8%;
    gap: 6%;
  }
  body[data-page="pass"] .pass-story h1 {
    font-size: 7vw;
  }
  body[data-page="join"] .join-page {
    padding-inline: 9%;
    gap: 7%;
  }
  body[data-page="join"] .join-form {
    padding-left: 35px;
  }
  body[data-page="account"] .welcome-gift {
    padding-left: 20px;
  }
  body[data-page="account"] .gift-chip {
    width: 155px;
  }
  body[data-page="visit"] .visit-page {
    padding-inline: 8%;
  }
  body[data-page="visit"] .visit-copy h1 {
    font-size: 7vw;
  }
}
@media (max-width: 800px) {
  body[data-page]:not([data-page="home"]) .eyebrow {
    letter-spacing: .15em;
  }
  body[data-page]:not([data-page="home"]) .invitation {
    min-height: 0;
    padding: 75px 8% 95px;
    gap: 70px;
    background: radial-gradient(ellipse at 70% 75%, #a42640, #480619 73%);
  }
  body[data-page]:not([data-page="home"]) .invitation::before {
    width: 500px;
    height: 500px;
    right: -230px;
    top: 46%;
  }
  body[data-page]:not([data-page="home"]) .invitation-heading h2 {
    font-size: clamp(49px, 12vw, 80px);
  }
  body[data-page]:not([data-page="home"]) .mini-pass {
    width: 260px;
    height: 370px;
  }
  body[data-page]:not([data-page="home"]) .invitation-coin {
    right: 0;
    bottom: -35px;
    width: 120px;
  }
  body[data-page="offers"] .offers-intro {
    padding: 65px 8% 50px;
  }
  body[data-page="offers"] .offers-intro::after {
    width: 80vw;
    right: -49vw;
    top: 10px;
  }
  body[data-page="offers"] .offers-intro h1 {
    font-size: clamp(56px, 12vw, 93px);
    line-height: .93;
  }
  body[data-page="offers"] .offers-intro > p:last-child {
    margin: 30px 0 0;
    font-size: 12px;
  }
  body[data-page="offers"] .cadence-tabs {
    width: 84%;
    margin-bottom: 10px;
    padding-bottom: 15px;
  }
  body[data-page="offers"] .cadence-tabs button {
    font-size: 27px;
    padding: 16px 4px;
  }
  body[data-page="offers"] .tab-coin {
    width: 38px;
    height: 38px;
    bottom: -19px;
    left: calc((var(--tab) + .5)*100%/3 - 19px);
  }
  body[data-page="offers"] .featured-offer {
    min-height: 650px;
    align-items: flex-end;
  }
  body[data-page="offers"] .featured-offer-photo {
    mask-image: linear-gradient(to bottom, transparent, #000 8%, #000 65%, transparent);
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 8%, #000 65%, transparent);
  }
  body[data-page="offers"] .featured-offer-photo img {
    object-position: 63% center;
    opacity: .8;
  }
  body[data-page="offers"] .featured-offer-photo::after {
    background: linear-gradient(0deg, #480619 0%, #480619e3 33%, #4806197a 65%, transparent 93%);
  }
  body[data-page="offers"] .featured-offer-photo .cadence {
    top: 50px;
    right: 8%;
    font-size: 9px;
  }
  body[data-page="offers"] .featured-offer-copy {
    padding: 175px 8% 60px;
    max-width: 100%;
  }
  body[data-page="offers"] .featured-offer-copy h2 {
    font-size: clamp(66px, 14vw, 102px);
    margin: 24px 0;
  }
  body[data-page="offers"] .featured-offer-copy > p:not(.eyebrow) {
    font-size: 13px;
    max-width: 310px;
  }
  body[data-page="offers"] .account-nudge {
    padding: 55px 8% 85px;
  }
  body[data-page="offers"] .account-nudge h2 {
    font-size: 64px;
  }
  body[data-page="games"] .game-page {
    min-height: 820px;
    min-height: max(820px, calc(100svh - 106px));
    align-items: flex-end;
  }
  body[data-page="games"] .game-page::before {
    width: 130vw;
    height: 130vw;
    top: 230px;
    right: -46vw;
  }
  body[data-page="games"] .game-page-photo {
    inset: 0 0 auto 0;
    height: 470px;
    clip-path: ellipse(91% 70% at 79% 26%);
    mask-image: linear-gradient(0deg, transparent, #000 31%, #000 100%);
    -webkit-mask-image: linear-gradient(0deg, transparent, #000 31%, #000 100%);
  }
  body[data-page="games"] .game-page-photo img {
    object-position: 60% center;
  }
  body[data-page="games"] .game-page-photo::after {
    background: linear-gradient(0deg, #480619, #48061900 70%);
  }
  body[data-page="games"] .game-page-copy {
    width: 100%;
    padding: 310px 8% 70px;
  }
  body[data-page="games"] .game-page-copy > .eyebrow {
    font-size: 9px;
  }
  body[data-page="games"] .game-nav {
    gap: 25px;
    font-size: 12px;
    margin: 18px 0 28px;
  }
  body[data-page="games"] .game-page h1 {
    font-size: clamp(57px, 12.9vw, 92px);
  }
  body[data-page="games"] .game-page-copy > p:not(.eyebrow):not(.game-footnote) {
    font-size: 13px;
    margin: 28px 0;
  }
  body[data-page="games"] .game-footnote {
    font-size: 9px;
  }
  body[data-page="experience"] .experience-hero {
    height: 78svh;
    min-height: 560px;
    max-height: 780px;
  }
  body[data-page="experience"] .experience-hero > img {
    object-position: 66% center;
  }
  body[data-page="experience"] .experience-hero > div {
    left: 8%;
    bottom: 12%;
    right: 7%;
  }
  body[data-page="experience"] .experience-hero h1 {
    font-size: clamp(66px, 14vw, 102px);
  }
  body[data-page="experience"] .experience-hero p:last-child {
    max-width: 290px;
    font-size: 12px;
  }
  body[data-page="experience"] .experience-editorial {
    min-height: 0;
    padding: 60px 8% 0;
    grid-template-columns: 1fr;
    gap: 20px;
  }
  body[data-page="experience"] .experience-editorial h2 {
    font-size: clamp(62px, 13vw, 92px);
  }
  body[data-page="experience"] .experience-editorial p:not(.eyebrow) {
    font-size: 13px;
    max-width: 420px;
  }
  body[data-page="experience"] .experience-editorial > img {
    width: 104vw;
    height: 104vw;
    max-width: none;
    max-height: 580px;
    margin: 0 0 0 -9vw;
    transform: rotate(-6deg);
  }
  body[data-page="experience"] .experience-editorial::after {
    width: 92vw;
    height: 92vw;
    right: -40vw;
    top: auto;
    bottom: 0;
    transform: none;
  }
  body[data-page="experience"] .offers-section {
    padding: 50px 8% 55px;
  }
  body[data-page="experience"] .offers-section .section-top {
    align-items: start;
    margin-bottom: 35px;
  }
  body[data-page="experience"] .offers-section h2 {
    font-size: clamp(62px, 13vw, 92px);
  }
  body[data-page="experience"] .offer-card {
    min-height: 0;
    padding: 28px 0;
  }
  body[data-page="experience"] .offer-body {
    padding: 16px 0;
    width: 100%;
  }
  body[data-page="experience"] .offer-body .eyebrow {
    padding-right: 28%;
    font-size: 9px;
  }
  body[data-page="experience"] .offer-body h3 {
    font-size: clamp(40px, 9.5vw, 62px);
    max-width: 77%;
  }
  body[data-page="experience"] .offer-body h3 br {
    display: block;
  }
  body[data-page="experience"] .offer-body > p:not(.eyebrow) {
    max-width: 72%;
    font-size: 12px;
    margin-block: 22px 17px;
  }
  body[data-page="experience"] .offer-image {
    width: 56%;
    height: 210px;
    right: -22%;
    top: 58px;
    opacity: .8;
  }
  body[data-page="experience"] .offer-image img {
    mask-image: linear-gradient(90deg, transparent, #000 70%);
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 70%);
  }
  body[data-page="experience"] .offer-image .cadence {
    top: -40px;
    right: 43%;
    font-size: 8px;
    opacity: 1;
  }
  body[data-page="experience"] .card-serial {
    display: none;
  }
  body[data-page="experience"] .offer-card:hover .offer-image {
    transform: rotate(2deg);
  }
  body[data-page="experience"] .section-note {
    font-size: 9px;
    line-height: 1.9;
  }
  body[data-page="pass"] .pass-page {
    padding: 65px 8% 75px;
    gap: 75px;
  }
  body[data-page="pass"] .pass-page::after {
    width: 560px;
    height: 560px;
    top: auto;
    bottom: 20px;
    right: -320px;
  }
  body[data-page="pass"] .pass-story h1 {
    font-size: clamp(67px, 14vw, 100px);
  }
  body[data-page="pass"] .pass-benefits {
    font-size: 11px;
  }
  body[data-page="pass"] .how-it-works {
    padding: 55px 8% 85px;
  }
  body[data-page="pass"] .how-it-works > div {
    gap: 32px;
  }
  body[data-page="pass"] .how-it-works article > span {
    font-size: 45px;
  }
  body[data-page="pass"] .how-it-works h3 {
    font-size: 36px;
  }
  body[data-page="join"] .join-page {
    min-height: 0;
    padding: 65px 8% 85px;
    gap: 48px;
  }
  body[data-page="join"] .join-form {
    border-left: 0;
    border-top: 1px solid #e4bd7638;
    padding: 40px 0 0;
  }
  body[data-page="account"] .account-page {
    padding-top: 25px;
  }
  body[data-page="account"] .account-heading h1 {
    font-size: 55px;
  }
  body[data-page="account"] .account-heading {
    padding-bottom: 10px;
  }
  body[data-page="account"] .account-main-grid {
    gap: 20px;
  }
  body[data-page="account"] .account-pass-box {
    padding: 28px 0 35px;
  }
  body[data-page="account"] .account-pass-box > .gold-button {
    width: 100%;
  }
  body[data-page="account"] .welcome-gift {
    border-left: 0;
    padding: 35px 0;
    min-height: 460px;
  }
  body[data-page="account"] .welcome-gift > h2 {
    font-size: 48px;
  }
  body[data-page="account"] .gift-chip {
    width: 177px;
  }
  body[data-page="account"] .account-lower-grid {
    gap: 20px;
  }
  body[data-page="account"] .visit-tile {
    min-height: 320px;
  }
  body[data-page="account"] .visit-tile img {
    clip-path: ellipse(83% 50% at 27% 50%);
  }
  body[data-page="account"] .account-reminder h3 {
    font-size: 43px;
  }
  body[data-page="visit"] .visit-page {
    padding: 65px 8% 80px;
    gap: 48px;
    min-height: 0;
  }
  body[data-page="visit"] .visit-copy h1 {
    font-size: clamp(57px, 12vw, 89px);
  }
  body[data-page="visit"] .visit-arch img {
    height: 600px;
    max-height: 82svh;
  }
  body[data-page="visit"] .visit-facts {
    gap: 25px 18px;
    font-size: 11px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body[data-page]:not([data-page="home"]) *,
  body[data-page]:not([data-page="home"]) *::before,
  body[data-page]:not([data-page="home"]) *::after {
    animation: none !important;
    transition: none !important;
  }
}
