:root{--navy:#111b22;--navy-2:#192830;--copper:#b9855d;--cream:#f5f1ea;--paper:#ebe5da;--ink:#1c282d;--muted:#626b6c;--line:#d3c8b9;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.65 var(--sans)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13}h2{font-size:clamp(2.5rem,5vw,5.1rem);letter-spacing:-.055em}h2 em,h1 em{font-weight:400}p{line-height:1.75}a:focus-visible,button:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.container{width:min(100% - 80px,1320px);margin-inline:auto}.section{padding-block:clamp(80px,10vw,150px)}.skip-link{position:absolute;top:-100px;left:12px;background:white;padding:8px 16px;z-index:100}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.top-note{height:33px;background:var(--navy);color:#d9cbbd;display:flex;align-items:center;justify-content:space-between;padding:0 4%;font-size:.65rem;font-weight:700;letter-spacing:.19em}.site-header{height:92px;background:var(--cream);display:flex;align-items:center;gap:30px;padding:0 4%;position:relative;z-index:20}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand-mark{width:39px;height:39px;border:1px solid var(--copper);display:grid;place-items:center;color:var(--copper);font:600 25px/1 var(--serif);position:relative}.brand-mark span{font:10px var(--sans);position:absolute;top:2px;right:2px}.brand-word{font:700 15px/1 var(--sans);letter-spacing:.23em;white-space:nowrap}.brand-word small{display:block;font:600 9px/1.4 var(--sans);letter-spacing:.42em;text-align:center;margin-top:6px;color:var(--copper)}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.5vw,39px);flex:1}.nav a{font-size:.83rem;font-weight:600;white-space:nowrap}.nav a:hover,.footer-links a:hover{color:var(--copper)}.header-link{font-size:.7rem;font-weight:700;letter-spacing:.12em;border-bottom:1px solid var(--copper);padding:10px 0;white-space:nowrap}.header-link span{color:var(--copper);margin-left:14px}.menu-toggle{display:none}
.hero{min-height:min(760px,calc(100svh - 125px));height:700px;position:relative;background:#263039;color:white;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,17,22,.82) 0%,rgba(8,17,22,.52) 48%,rgba(8,17,22,.16) 100%),linear-gradient(0deg,rgba(9,18,23,.40),transparent 30%)}.hero-content{position:relative;z-index:1;padding-top:clamp(110px,13vw,180px)}.hero-kicker,.eyebrow,.small-cap,.section-index,.hero-foot,.card-number{font-size:.72rem;letter-spacing:.22em;font-weight:700}.hero-kicker{display:flex;align-items:center;gap:15px;color:#e6be96}.hero-kicker .line{width:34px;height:1px;background:var(--copper)}.hero h1{font-size:clamp(3.7rem,7.8vw,8rem);letter-spacing:-.065em;margin:23px 0 27px;line-height:1.08}.hero h1 em{color:#ddb899}.hero-content>p{font-size:1.1rem;max-width:440px;color:#f0ece8}.hero-actions{display:flex;align-items:center;gap:38px;margin-top:37px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:17px 22px;font-weight:700;font-size:.78rem;letter-spacing:.06em;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-3px)}.button-light{background:var(--cream);color:var(--navy)}.button-light:hover{background:#e4bb96}.button span,.text-link span,.underlined-link span{font-size:1.15rem;font-weight:400}.text-link{font-size:.8rem;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.light-link{color:#f3efeb}.hero-foot{position:absolute;left:0;right:0;bottom:27px;z-index:1;display:flex;justify-content:space-between;color:#e0d7ce;font-size:.65rem}.hero-foot span span{margin-left:13px}.intro-ribbon{min-height:90px;background:var(--navy);color:#e5d6c6;display:flex;align-items:center;justify-content:center;gap:clamp(20px,5vw,80px);padding:20px;font-size:.71rem;letter-spacing:.19em;font-weight:700;text-align:center}.intro-ribbon .asterisk{color:var(--copper);font-size:1.3rem}
.section-index{display:flex;gap:22px;align-items:center;white-space:nowrap;color:var(--copper);margin-bottom:55px}.index-line{width:55px;height:1px;background:currentColor}.eyebrow{color:#ad7852;margin-bottom:21px}.story-grid{display:grid;grid-template-columns:1.05fr .75fr;gap:12%;align-items:start}.story h2{margin-bottom:0}.story-copy{padding-top:45px;max-width:455px}.story-copy .lead{font:400 clamp(1.32rem,2vw,1.75rem)/1.55 var(--serif);color:var(--ink);margin-bottom:23px}.story-copy>p:not(.lead),.dining-copy>p:not(.eyebrow),.casino-grid>div>p:not(.eyebrow){color:var(--muted)}.underlined-link{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;border-bottom:1px solid var(--copper);padding-bottom:9px;margin-top:20px;font-size:.81rem;font-weight:700}.underlined-link span{color:var(--copper)}.facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:105px}.facts>div{padding-top:22px;display:grid;gap:4px;border-right:1px solid var(--line);padding-left:26px}.facts>div:first-child{padding-left:0}.facts>div:last-child{border:0}.facts strong{font-size:.76rem;letter-spacing:.15em}.facts span{color:var(--muted);font-size:.88rem}
.rooms{background:var(--paper)}.heading-row{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:45px}.heading-row h2{margin:0}.heading-row>p{max-width:330px;color:var(--muted);margin-bottom:10px}.room-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:25px;align-items:start}.room-photo{height:430px;overflow:hidden;background:#c4bbae}.room-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.room-card:hover img{transform:scale(1.035)}.room-card-small{margin-top:90px}.room-card-small .room-photo{height:330px}.room-photo-detail img{object-position:center}.room-info{padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:15px}.card-number{color:#a7714f;font-size:.62rem}.room-info h3{font-size:clamp(1.5rem,2.5vw,2.45rem);letter-spacing:-.04em;margin:9px 0 5px}.room-info p{color:var(--muted);font-size:.9rem;margin:0}.card-arrow{border:1px solid #b6aa9b;width:40px;height:40px;display:grid;place-items:center;flex-shrink:0}
.dining{background:var(--cream)}.dining-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,9vw,145px);align-items:center}.dining-visual{aspect-ratio:1.05;background:radial-gradient(circle at 55% 45%,#b78a68 0%,#805339 35%,#342c28 78%);padding:23px;color:#ffe6c7;box-shadow:20px 20px 0 #e9ded0}.dining-visual-inner{height:100%;border:1px solid rgba(255,226,194,.55);display:flex;flex-direction:column;align-items:center;justify-content:space-around;text-align:center}.visual-star{font-size:5rem;line-height:1;color:#e5b88e}.visual-name{font:400 clamp(3.3rem,5vw,5.8rem)/1.05 var(--serif);letter-spacing:-.06em}.dining-copy .section-index{margin-bottom:60px}.dining-copy h2{margin-bottom:28px}.dining-copy>p:not(.eyebrow){max-width:460px}.dining-copy .underlined-link{margin-top:28px}
.casino{background:var(--navy);color:var(--cream)}.casino-grid{display:grid;grid-template-columns:1fr .85fr;gap:12%;align-items:center}.casino .section-index{margin-bottom:75px}.casino h2{margin-bottom:27px}.casino-grid>div>p:not(.eyebrow){color:#bdc5c3;max-width:500px}.copper{color:#d5a276}.button-outline{border:1px solid var(--copper);color:#efdfcf;margin-top:30px}.button-outline:hover{background:var(--copper);color:var(--navy)}.casino-art{min-height:520px;padding:30px;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 31px,rgba(200,144,94,.12) 32px 33px),radial-gradient(circle at 50% 50%,#36454a,#1c292d 60%,#111b22);border:1px solid #73583e}.art-border{min-height:460px;height:100%;border:1px solid rgba(208,153,107,.55);display:flex;flex-direction:column;align-items:center;justify-content:space-around;color:#dcb48b;font-size:.7rem;letter-spacing:.25em}.art-border strong{font:400 14rem/.8 var(--serif);letter-spacing:-.08em;position:relative;color:#bf8a61}.art-border strong span{font:2.5rem var(--sans);position:absolute;top:0;right:-23px}
.responsible{background:#e6ded2}.responsible-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.responsible h2{margin:0}.responsible-grid>div:last-child{padding-top:40px}.responsible-grid p{color:#455153}.responsible a{text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:4px;font-weight:700}.responsible small{display:block;color:#586162;font-size:.78rem;line-height:1.7;border-top:1px solid #c8bbab;padding-top:20px;margin-top:35px}
.footer{background:#0c151b;color:#eee7de;padding:75px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:60px;padding-bottom:80px}.footer-brand .brand-word{color:#eee7de}.footer-top p{max-width:320px;color:#b7b6b1;margin-top:25px}.footer-links{display:grid;grid-template-columns:repeat(2,auto);column-gap:60px;row-gap:14px;align-content:start;font-size:.9rem}.footer-bottom{border-top:1px solid #334048;display:flex;justify-content:space-between;gap:25px;padding-top:24px;color:#aaaead;font-size:.69rem;letter-spacing:.1em}.footer-bottom a{color:#e0b184}

@media(max-width:1100px){.nav{gap:15px}.nav a{font-size:.74rem}.header-link{display:none}.site-header{justify-content:space-between}.dining-grid{gap:70px}}
@media(max-width:760px){.container{width:min(100% - 36px,620px)}.top-note{justify-content:center;height:30px;font-size:.58rem}.top-note span:not(:first-child){display:none}.site-header{height:72px;padding:0 18px}.brand-mark{width:34px;height:34px;font-size:22px}.brand-word{font-size:12px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;width:44px;height:44px;align-items:center;cursor:pointer}.menu-toggle span{display:block;width:23px;height:2px;background:var(--ink)}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:15px 25px 30px;box-shadow:0 18px 25px rgba(0,0,0,.12);flex-direction:column;align-items:stretch;gap:0}.nav.is-open{display:flex}.nav a{font-size:1rem;padding:13px 0;border-bottom:1px solid var(--line)}.hero{height:660px;min-height:0}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,rgba(8,17,22,.83),rgba(8,17,22,.46)),linear-gradient(0deg,rgba(8,17,22,.4),transparent 40%)}.hero-content{padding-top:125px}.hero h1{font-size:clamp(3.4rem,12vw,5.4rem)}.hero-content>p{font-size:1rem;max-width:365px}.hero-actions{flex-wrap:wrap;gap:25px}.hero-foot{bottom:22px}.hero-foot>span:last-child{display:none}.intro-ribbon{gap:20px;min-height:75px}.intro-ribbon span:nth-of-type(n+4){display:none}.intro-ribbon span{font-size:.58rem}.section{padding-block:85px}.section-index{margin-bottom:38px}.story-grid,.dining-grid,.casino-grid,.responsible-grid{grid-template-columns:1fr;gap:42px}.story-copy{padding:0}.story h2{margin-bottom:0}.facts{margin-top:70px;gap:18px}.facts>div{padding-left:0;border:0}.heading-row{display:block}.heading-row>p{margin:25px 0 0}.room-grid{grid-template-columns:1fr}.room-card-small{margin-top:35px}.room-photo,.room-card-small .room-photo{height:clamp(270px,60vw,430px)}.dining-visual{max-width:550px}.dining-copy .section-index,.casino .section-index{margin-bottom:38px}.casino-art{min-height:400px}.art-border{min-height:340px}.art-border strong{font-size:10rem}.responsible-grid>div:last-child{padding:0}.footer-top{display:block;padding-bottom:55px}.footer-links{margin-top:45px;justify-content:start}.footer-bottom{flex-wrap:wrap;line-height:1.5}}
@media(max-width:430px){.hero{height:620px}.hero h1{font-size:3.45rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.intro-ribbon{gap:12px}.intro-ribbon span:nth-of-type(3){display:none}.intro-ribbon .asterisk{display:none}.facts{grid-template-columns:1fr;gap:24px}.facts>div{border-bottom:1px solid var(--line);padding-bottom:17px}.dining-visual{aspect-ratio:.92}.casino-art{min-height:310px;padding:17px}.art-border{min-height:275px}.art-border strong{font-size:7rem}.footer-links{column-gap:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.age-overlay {
  position: fixed;
  inset: 0;

  background: #0a0a0f;

  display: flex;
  align-items: center;
  justify-content: center;

  z-index: 2147483647;

  padding: 20px;
  box-sizing: border-box;
}

/* =========================
   MODAL
========================= */

.age-modal {
  background: #1c1c24;
  color: #fff;

  padding: 42px 32px;

  border-radius: 20px;

  max-width: 420px;
  width: 100%;

  text-align: center;
  box-sizing: border-box;

  border: 1px solid rgba(255, 255, 255, 0.1);

  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);

  transition: opacity 0.15s ease;
}

/* =========================
   CONTENT
========================= */

.age-modal h2 {
  font-size: 26px;
  font-weight: 700;

  margin: 0 0 16px;

  letter-spacing: -0.5px;
}

.age-modal p {
  font-size: 15px;

  line-height: 1.6;

  color: #aaaab5;

  margin: 0 0 28px;
}

/* =========================
   BUTTONS
========================= */

.age-modal button {
  display: block;

  width: 100%;

  border: none;

  padding: 15px 20px;
  margin: 10px 0;

  border-radius: 10px;

  cursor: pointer;

  font-size: 15px;
  font-weight: 600;

  transition:
    background 0.15s ease,
    transform 0.15s ease;
}

.confirm-btn {
  background: #fff;
  color: #111;
}

.confirm-btn:hover {
  background: #e5e5e5;
}

.confirm-btn:active {
  transform: scale(0.98);
}

.decline-btn {
  background: #30303b;
  color: #fff;
}

.decline-btn:hover {
  background: #41414e;
}

/* =========================
   LOADING SCREEN
========================= */

#loadingContent {
  display: none;
  flex-direction: column;

  align-items: center;
  justify-content: center;

  min-height: 180px;
}

.age-modal.is-loading #ageContent {
  display: none;
}

.age-modal.is-loading #loadingContent {
  display: flex;
}

/* =========================
   SPINNER
========================= */

.loading-spinner {
  width: 42px;
  height: 42px;

  border: 3px solid rgba(255, 255, 255, 0.12);

  border-top-color: #fff;

  border-radius: 50%;

  animation: loadingSpin 0.65s linear infinite;

  margin-bottom: 25px;
}

@keyframes loadingSpin {
  to {
    transform: rotate(360deg);
  }
}

/* =========================
   LOADING TEXT
========================= */

#loadingContent h2 {
  font-size: 22px;

  margin: 0 0 10px;
}

#loadingContent p {
  font-size: 14px;

  color: #aaaab5;

  margin: 0;
}

/* =========================
   MOBILE
========================= */

@media (max-width: 480px) {
  .age-modal {
    padding: 32px 22px;

    border-radius: 16px;
  }

  .age-modal h2 {
    font-size: 23px;
  }

  .age-modal button {
    padding: 14px 18px;

    font-size: 14px;
  }

  .loading-spinner {
    width: 36px;
    height: 36px;
  }
}