/* ============================================================
   THE ZANA RESERVE — Crimson Velvet
   prefix: eoxw
   ============================================================ */

:root{
  --eoxw-bg:#120708;
  --eoxw-c1:#e0a96d;
  --eoxw-c2:#8b1e2d;
  --eoxw-cta:#e0a96d;
  --eoxw-cta-text:#190a05;
  --eoxw-text:#efe0d6;
  --eoxw-muted:#ab8f83;
  --eoxw-card:#1b0d0f;
  --eoxw-border:rgba(224,169,109,.2);

  --eoxw-c1-soft:rgba(224,169,109,.09);
  --eoxw-c2-soft:rgba(139,30,45,.28);
  --eoxw-ink:#0b0405;

  --eoxw-hdr:74px;
  --eoxw-shell:1180px;
  --eoxw-gut:clamp(16px,4vw,44px);
  --eoxw-slab:clamp(64px,9vw,124px);

  --eoxw-serif:Georgia,'Times New Roman',Times,serif;
  --eoxw-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;

  --eoxw-r:18px;
  --eoxw-ease:cubic-bezier(.22,.61,.36,1);

  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box;}

html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--eoxw-hdr) + 16px);
  -webkit-text-size-adjust:100%;
}

html,body{
  overflow-x:hidden;
  max-width:100%;
}

body{
  margin:0;
  background:var(--eoxw-bg);
  color:var(--eoxw-text);
  font-family:var(--eoxw-sans);
  font-size:clamp(.9rem,2.5vw,1.05rem);
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
}

img,svg,video{max-width:100%;}
svg{display:block;}

a{color:inherit;text-decoration:none;}

::selection{background:var(--eoxw-c2);color:#fff;}

:focus-visible{
  outline:2px solid var(--eoxw-c1);
  outline-offset:3px;
  border-radius:4px;
}

.eoxw-shell{
  width:100%;
  max-width:var(--eoxw-shell);
  margin-inline:auto;
  padding-inline:var(--eoxw-gut);
}

.eoxw-slab{
  position:relative;
  padding-block:var(--eoxw-slab);
}

/* ── shared type ─────────────────────────────────────────── */

.eoxw-brow{
  margin:0 0 18px;
  font-size:clamp(.62rem,1.7vw,.72rem);
  font-weight:700;
  letter-spacing:3px;
  text-transform:uppercase;
  color:var(--eoxw-c1);
}
.eoxw-brow span{opacity:.5;margin-inline:6px;}

.eoxw-h2{
  margin:0 0 20px;
  font-family:var(--eoxw-serif);
  font-weight:400;
  font-size:clamp(1.5rem,5vw,3rem);
  line-height:1.14;
  letter-spacing:-.01em;
  max-width:18ch;
}
.eoxw-h2 em{
  font-style:italic;
  color:var(--eoxw-c1);
}

.eoxw-copy{
  margin:0 0 22px;
  color:var(--eoxw-muted);
  max-width:56ch;
}

.eoxw-beads{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:11px;
}
.eoxw-beads li{
  position:relative;
  padding-left:22px;
  font-size:clamp(.86rem,2.3vw,.98rem);
  line-height:1.55;
}
.eoxw-beads li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--eoxw-c1);
  box-shadow:0 0 10px rgba(224,169,109,.55);
}

.eoxw-head{max-width:640px;margin-bottom:clamp(34px,5vw,56px);}
.eoxw-head .eoxw-h2{max-width:16ch;}

/* drawn rule (stroke-dashoffset) */
.eoxw-rule{
  width:min(240px,60%);
  height:auto;
  margin-top:26px;
  color:var(--eoxw-c1);
  opacity:.75;
}
.eoxw-rule path{
  stroke-dasharray:120;
  stroke-dashoffset:120;
  transition:stroke-dashoffset 1.1s var(--eoxw-ease) .18s;
}
.eoxw-lift.eoxw-shown .eoxw-rule path{stroke-dashoffset:0;}
.eoxw-rule-tight{
  width:min(200px,55%);
  margin:0 0 20px;
  opacity:.6;
}

/* ── buttons ─────────────────────────────────────────────── */

.eoxw-btn-fill,
.eoxw-btn-line{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 30px;
  border-radius:999px;
  font-family:var(--eoxw-sans);
  font-size:clamp(.82rem,2.2vw,.92rem);
  font-weight:700;
  letter-spacing:1.4px;
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .3s var(--eoxw-ease),box-shadow .3s var(--eoxw-ease),
             background-color .3s var(--eoxw-ease),color .3s var(--eoxw-ease),
             border-color .3s var(--eoxw-ease);
}

.eoxw-btn-fill{
  background:var(--eoxw-cta);
  color:var(--eoxw-cta-text);
  border:1px solid var(--eoxw-cta);
  box-shadow:0 14px 34px rgba(224,169,109,.16);
}
.eoxw-btn-fill:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 44px rgba(224,169,109,.32);
}

.eoxw-btn-line{
  background:transparent;
  color:var(--eoxw-text);
  border:1px solid var(--eoxw-border);
}
.eoxw-btn-line:hover{
  transform:translateY(-3px);
  border-color:var(--eoxw-c1);
  color:var(--eoxw-c1);
  box-shadow:0 16px 34px rgba(139,30,45,.28);
}

.eoxw-btn-wide{width:100%;}

/* ── header ──────────────────────────────────────────────── */

.eoxw-crest{
  position:fixed;
  inset:0 0 auto 0;
  z-index:90;
  background:transparent;
  border-bottom:1px solid transparent;
  transition:background-color .35s var(--eoxw-ease),border-color .35s var(--eoxw-ease),
             backdrop-filter .35s var(--eoxw-ease);
}
.eoxw-crest.eoxw-crest-shade{
  background:rgba(11,4,5,.82);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  border-bottom-color:var(--eoxw-border);
}

.eoxw-crest-in{
  width:100%;
  max-width:var(--eoxw-shell);
  margin-inline:auto;
  min-height:var(--eoxw-hdr);
  padding-inline:var(--eoxw-gut);
  display:flex;
  align-items:center;
  gap:18px;
}

.eoxw-mark{
  display:inline-flex;
  align-items:center;
  gap:11px;
  min-height:44px;
  color:var(--eoxw-c1);
  flex:0 0 auto;
}
.eoxw-mark-sig{width:30px;height:30px;flex:0 0 auto;}
.eoxw-mark-word{
  font-family:var(--eoxw-serif);
  font-size:clamp(1rem,2.6vw,1.2rem);
  letter-spacing:.09em;
  color:var(--eoxw-text);
  white-space:nowrap;
}
.eoxw-mark-the{color:var(--eoxw-muted);font-style:italic;}
.eoxw-mark:hover .eoxw-mark-word{color:var(--eoxw-c1);}

.eoxw-rail{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:clamp(14px,2.3vw,30px);
}
.eoxw-rail a{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--eoxw-muted);
  transition:color .28s var(--eoxw-ease);
  white-space:nowrap;
}
.eoxw-rail a::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:11px;
  height:1px;
  background:var(--eoxw-c1);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .32s var(--eoxw-ease);
}
.eoxw-rail a:hover{color:var(--eoxw-text);}
.eoxw-rail a:hover::after{transform:scaleX(1);}

.eoxw-key{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:10px 22px;
  border:1px solid var(--eoxw-border);
  border-radius:999px;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--eoxw-c1);
  transition:border-color .3s var(--eoxw-ease),background-color .3s var(--eoxw-ease),color .3s var(--eoxw-ease);
}
.eoxw-key:hover{
  border-color:var(--eoxw-c1);
  background:var(--eoxw-c1);
  color:var(--eoxw-cta-text);
}

/* HBG-4 : the word Menu / Close */
.eoxw-veil-btn{
  display:none;
  margin-left:auto;
  min-width:64px;
  min-height:44px;
  padding:10px 6px;
  background:none;
  border:0;
  color:var(--eoxw-c1);
  font-family:var(--eoxw-sans);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  cursor:pointer;
  text-align:right;
}
.eoxw-veil-btn-shut{display:none;}
.eoxw-veil-open .eoxw-veil-btn-open{display:none;}
.eoxw-veil-open .eoxw-veil-btn-shut{display:inline;}

/* fullscreen overlay */
.eoxw-veil{
  position:fixed;
  inset:0;
  z-index:80;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:28px;
  padding:calc(var(--eoxw-hdr) + 24px) var(--eoxw-gut) 40px;
  background:linear-gradient(180deg,#170a0c 0%,var(--eoxw-ink) 100%);
  opacity:0;
  transition:opacity .34s var(--eoxw-ease);
}
.eoxw-veil[hidden]{display:none;}
.eoxw-veil.eoxw-veil-lit{opacity:1;}

.eoxw-veil-rail{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  width:100%;
}
.eoxw-veil-rail a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  width:100%;
  font-family:var(--eoxw-serif);
  font-size:clamp(1.5rem,7vw,2.3rem);
  letter-spacing:.02em;
  color:var(--eoxw-text);
  transition:color .26s var(--eoxw-ease);
}
.eoxw-veil-rail a:hover{color:var(--eoxw-c1);}
.eoxw-veil-key{
  margin-top:18px;
  max-width:320px;
  border:1px solid var(--eoxw-border);
  border-radius:999px;
  color:var(--eoxw-c1)!important;
  font-size:clamp(1.1rem,5vw,1.4rem)!important;
}
.eoxw-veil-foot{
  margin:0;
  font-size:.68rem;
  letter-spacing:3px;
  text-transform:uppercase;
  color:var(--eoxw-muted);
}

/* ── hero (gradient field + embers + mini stats) ─────────── */

.eoxw-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:calc(var(--eoxw-hdr) + 40px) var(--eoxw-gut) clamp(96px,14vh,140px);
  background:
    radial-gradient(120% 78% at 50% 6%,rgba(139,30,45,.42) 0%,rgba(139,30,45,0) 62%),
    radial-gradient(78% 58% at 50% 108%,rgba(224,169,109,.2) 0%,rgba(224,169,109,0) 70%),
    linear-gradient(180deg,#1a0a0c 0%,var(--eoxw-bg) 48%,#0d0506 100%);
}

.eoxw-hero-glow{
  position:absolute;
  z-index:-1;
  left:50%;
  top:34%;
  width:min(1100px,150vw);
  aspect-ratio:1/1;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(224,169,109,.13) 0%,rgba(139,30,45,.1) 42%,transparent 68%);
  filter:blur(20px);
  animation:eoxw-breathe 11s ease-in-out infinite;
}
@keyframes eoxw-breathe{
  0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(1);}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.1);}
}

.eoxw-embers{position:absolute;inset:0;z-index:-1;pointer-events:none;}
.eoxw-ember{
  position:absolute;
  width:2px;
  height:2px;
  border-radius:50%;
  background:var(--eoxw-c1);
  opacity:0;
  animation:eoxw-flicker linear infinite;
}
@keyframes eoxw-flicker{
  0%{opacity:0;transform:translateY(0) scale(.6);}
  20%{opacity:.85;}
  60%{opacity:.35;}
  100%{opacity:0;transform:translateY(-46px) scale(1.15);}
}

.eoxw-hero-in{
  position:relative;
  z-index:1;
  width:100%;
  max-width:900px;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.eoxw-hero-brow{
  margin-bottom:clamp(18px,3vw,28px);
  color:var(--eoxw-c1);
  letter-spacing:3px;
}

.eoxw-hero-title{
  margin:0 0 clamp(22px,3.4vw,34px);
  font-family:var(--eoxw-serif);
  font-weight:400;
  font-size:min(clamp(1.9rem,7vw,5.5rem),11vh);
  line-height:1.06;
  letter-spacing:-.015em;
  max-width:14ch;
  text-wrap:balance;
}
.eoxw-hero-title em{
  font-style:italic;
  color:var(--eoxw-c1);
}
/* per-letter reveal (ANIM-SET-3) — words stay whole, glyphs stagger */
.eoxw-word{
  display:inline-block;
  white-space:nowrap;
}
.eoxw-glyph{
  display:inline-block;
  opacity:0;
  transform:translateY(.36em);
  animation:eoxw-glyph-in .62s var(--eoxw-ease) forwards;
}
@keyframes eoxw-glyph-in{to{opacity:1;transform:translateY(0);}}

.eoxw-stats{
  margin:0 0 clamp(22px,3.4vw,32px);
  padding:0;
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:clamp(14px,3.4vw,42px);
}
.eoxw-stats li{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  min-width:0;
  padding-inline:clamp(8px,2vw,18px);
  border-left:1px solid var(--eoxw-border);
}
.eoxw-stats li:first-child{border-left:0;}
.eoxw-stats strong{
  font-family:var(--eoxw-serif);
  font-weight:400;
  font-size:clamp(1.2rem,4vw,1.9rem);
  color:var(--eoxw-c1);
  line-height:1;
}
.eoxw-stats span{
  font-size:clamp(.58rem,1.9vw,.68rem);
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--eoxw-muted);
}

.eoxw-hero-lead{
  margin:0 0 clamp(26px,4vw,38px);
  max-width:60ch;
  color:var(--eoxw-muted);
}

.eoxw-cta-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  width:100%;
}

.eoxw-scroll-cue{
  position:absolute;
  left:50%;
  bottom:clamp(24px,4vh,44px);
  transform:translateX(-50%);
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:52px;
}
.eoxw-scroll-capsule{
  display:block;
  width:24px;
  height:40px;
  border:1px solid var(--eoxw-border);
  border-radius:999px;
  position:relative;
}
.eoxw-scroll-bead{
  position:absolute;
  left:50%;
  top:8px;
  width:4px;
  height:4px;
  margin-left:-2px;
  border-radius:50%;
  background:var(--eoxw-c1);
  animation:eoxw-bead 2.1s ease-in-out infinite;
}
@keyframes eoxw-bead{
  0%{transform:translateY(0);opacity:0;}
  25%{opacity:1;}
  75%{transform:translateY(18px);opacity:0;}
  100%{transform:translateY(18px);opacity:0;}
}
.eoxw-scroll-cue:hover .eoxw-scroll-capsule{border-color:var(--eoxw-c1);}

/* ── ticker (italic serif, diamond separators) ───────────── */

.eoxw-tick{
  position:relative;
  overflow:hidden;
  padding-block:clamp(14px,2.4vw,20px);
  border-block:1px solid var(--eoxw-border);
  background:linear-gradient(90deg,rgba(139,30,45,.3) 0%,rgba(27,13,15,.85) 42%,rgba(139,30,45,.3) 100%);
}
.eoxw-tick-track{
  display:flex;
  width:max-content;
  animation:eoxw-slide 46s linear infinite;
}
.eoxw-tick-run{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  padding-right:0;
}
.eoxw-tick-run span{
  font-family:var(--eoxw-serif);
  font-style:italic;
  font-size:clamp(.9rem,2.6vw,1.28rem);
  color:var(--eoxw-text);
  white-space:nowrap;
  padding-inline:clamp(14px,2.4vw,26px);
}
.eoxw-tick-run i{
  font-style:normal;
  color:var(--eoxw-c1);
  font-size:clamp(.6rem,1.6vw,.78rem);
  opacity:.85;
}
@keyframes eoxw-slide{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
.eoxw-tick:hover .eoxw-tick-track{animation-play-state:paused;}

/* ── amenities grid (3x2 bordered cards) ─────────────────── */

.eoxw-amen{
  background:
    radial-gradient(90% 60% at 12% 0%,rgba(139,30,45,.16) 0%,transparent 60%),
    var(--eoxw-bg);
}

.eoxw-cards{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,2vw,24px);
}
.eoxw-card{
  min-width:0;
  padding:clamp(22px,2.8vw,32px);
  background:var(--eoxw-card);
  border:1px solid var(--eoxw-border);
  border-radius:var(--eoxw-r);
  transition:transform .38s var(--eoxw-ease),box-shadow .38s var(--eoxw-ease),
             border-color .38s var(--eoxw-ease),background-color .38s var(--eoxw-ease);
}
.eoxw-card:hover{
  transform:translateY(-7px);
  border-color:rgba(224,169,109,.45);
  background:#221114;
  box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 34px rgba(224,169,109,.14);
}
.eoxw-card-sig{
  display:flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  margin-bottom:20px;
  border:1px solid var(--eoxw-border);
  border-radius:12px;
  background:var(--eoxw-c1-soft);
  color:var(--eoxw-c1);
}
.eoxw-card-sig svg{width:26px;height:26px;}
.eoxw-card h3{
  margin:0 0 10px;
  font-family:var(--eoxw-serif);
  font-weight:400;
  font-size:clamp(1.08rem,2.6vw,1.32rem);
  letter-spacing:.01em;
}
.eoxw-card p{
  margin:0;
  color:var(--eoxw-muted);
  font-size:clamp(.84rem,2.2vw,.94rem);
  line-height:1.6;
}

/* ── feature sections (FEAT-4: glass panel on the image) ─── */

.eoxw-feat{padding-block:clamp(40px,6vw,72px);}

.eoxw-plate{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  border:1px solid var(--eoxw-border);
  box-shadow:0 34px 70px rgba(0,0,0,.55),0 0 60px rgba(224,169,109,.07);
  margin:0;
}

.eoxw-shot{
  width:100%;
  min-height:clamp(460px,64vh,700px);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.eoxw-shot-tower{
  background-image:
    linear-gradient(180deg,rgba(18,7,8,.28) 0%,rgba(18,7,8,.55) 46%,rgba(11,4,5,.94) 100%),
    linear-gradient(140deg,#3a161c 0%,#1c0d10 46%,#2a1116 100%),
    url('../assets/img/tower.webp');
}
.eoxw-shot-suite{
  background-image:
    linear-gradient(180deg,rgba(18,7,8,.28) 0%,rgba(18,7,8,.55) 46%,rgba(11,4,5,.94) 100%),
    linear-gradient(140deg,#452019 0%,#1d0e0c 52%,#33161a 100%),
    url('../assets/img/suite.webp');
}
.eoxw-shot-casino{
  background-image:
    linear-gradient(180deg,rgba(18,7,8,.3) 0%,rgba(18,7,8,.56) 46%,rgba(11,4,5,.94) 100%),
    linear-gradient(140deg,#2b1218 0%,#160a0c 50%,#3d1a1f 100%),
    url('../assets/img/casino.webp');
}
.eoxw-shot-spa{
  background-image:
    linear-gradient(180deg,rgba(18,7,8,.26) 0%,rgba(18,7,8,.52) 46%,rgba(11,4,5,.94) 100%),
    linear-gradient(140deg,#241419 0%,#150b0d 48%,#3a2620 100%),
    url('../assets/img/spa.webp');
}

.eoxw-panel{
  position:absolute;
  left:clamp(16px,3vw,40px);
  right:clamp(16px,3vw,40px);
  bottom:clamp(16px,3vw,40px);
  max-width:640px;
  padding:clamp(22px,3vw,38px);
  border:1px solid var(--eoxw-border);
  border-radius:var(--eoxw-r);
  background:rgba(15,6,7,.72);
  -webkit-backdrop-filter:blur(16px) saturate(120%);
  backdrop-filter:blur(16px) saturate(120%);
}
.eoxw-panel-right{left:auto;}
.eoxw-panel .eoxw-h2{max-width:15ch;}
.eoxw-panel .eoxw-copy{margin-bottom:20px;}

/* ── reserve (FORM-1 split) ──────────────────────────────── */

.eoxw-book{
  background:
    radial-gradient(80% 70% at 100% 0%,rgba(139,30,45,.22) 0%,transparent 62%),
    var(--eoxw-bg);
}
.eoxw-book-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(24px,4vw,56px);
  align-items:start;
}

.eoxw-book-rows{
  margin:26px 0 0;
  display:grid;
  gap:0;
  border-top:1px solid var(--eoxw-border);
}
.eoxw-book-rows > div{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:8px 18px;
  padding:15px 0;
  border-bottom:1px solid var(--eoxw-border);
}
.eoxw-book-rows dt{
  font-size:.66rem;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--eoxw-muted);
}
.eoxw-book-rows dd{
  margin:0;
  font-family:var(--eoxw-serif);
  font-size:clamp(.98rem,2.6vw,1.15rem);
  color:var(--eoxw-text);
  text-align:right;
  min-width:0;
  overflow-wrap:anywhere;
}
.eoxw-book-rows dd a{transition:color .26s var(--eoxw-ease);}
.eoxw-book-rows dd a:hover{color:var(--eoxw-c1);}

.eoxw-book-form{
  min-width:0;
  padding:clamp(22px,3.2vw,38px);
  background:var(--eoxw-card);
  border:1px solid var(--eoxw-border);
  border-radius:var(--eoxw-r);
  box-shadow:0 26px 60px rgba(0,0,0,.45);
  display:grid;
  gap:16px;
}
.eoxw-field{display:grid;gap:7px;min-width:0;}
.eoxw-field label{
  font-size:.66rem;
  font-weight:700;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:var(--eoxw-muted);
}
.eoxw-field input,
.eoxw-field select,
.eoxw-field textarea{
  width:100%;
  min-width:0;
  max-width:100%;
  padding:13px 15px;
  background:rgba(11,4,5,.6);
  border:1px solid var(--eoxw-border);
  border-radius:11px;
  color:var(--eoxw-text);
  font-family:var(--eoxw-sans);
  font-size:16px;
  line-height:1.4;
  transition:border-color .28s var(--eoxw-ease),box-shadow .28s var(--eoxw-ease);
  -webkit-appearance:none;
  appearance:none;
}
.eoxw-field textarea{resize:vertical;min-height:88px;}
.eoxw-field select{
  background-image:linear-gradient(45deg,transparent 50%,var(--eoxw-c1) 50%),
                   linear-gradient(135deg,var(--eoxw-c1) 50%,transparent 50%);
  background-position:calc(100% - 20px) calc(1em + 3px),calc(100% - 15px) calc(1em + 3px);
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  padding-right:40px;
}
.eoxw-field select option{background:#1b0d0f;color:var(--eoxw-text);}
.eoxw-field input::placeholder,
.eoxw-field textarea::placeholder{color:rgba(171,143,131,.62);}
.eoxw-field input:focus,
.eoxw-field select:focus,
.eoxw-field textarea:focus{
  outline:none;
  border-color:var(--eoxw-c1);
  box-shadow:0 0 0 3px rgba(224,169,109,.14);
}
.eoxw-field input[type="date"]{min-height:50px;}
.eoxw-field-pair{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:16px;
}
.eoxw-book-note{
  margin:2px 0 0;
  padding:14px 16px;
  border:1px solid rgba(224,169,109,.45);
  border-radius:11px;
  background:var(--eoxw-c1-soft);
  color:var(--eoxw-c1);
  font-family:var(--eoxw-serif);
  font-size:clamp(.95rem,2.5vw,1.08rem);
  text-align:center;
}
.eoxw-book-note[hidden]{display:none;}

/* ── footer (2 columns) ──────────────────────────────────── */

.eoxw-base{
  padding-block:clamp(52px,7vw,84px) clamp(26px,3vw,34px);
  border-top:1px solid var(--eoxw-border);
  background:linear-gradient(180deg,#0f0506 0%,var(--eoxw-ink) 100%);
}
.eoxw-base-split{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:clamp(30px,5vw,64px);
}
.eoxw-mark-base{margin-bottom:18px;}
.eoxw-base-brand p{
  margin:0;
  max-width:46ch;
  color:var(--eoxw-muted);
  font-size:clamp(.86rem,2.3vw,.95rem);
}
.eoxw-base-mail{margin-top:16px!important;}
.eoxw-base-mail a{
  color:var(--eoxw-c1);
  border-bottom:1px solid var(--eoxw-border);
  padding-bottom:2px;
  overflow-wrap:anywhere;
}
.eoxw-base-mail a:hover{border-bottom-color:var(--eoxw-c1);}

.eoxw-base-lists{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(20px,3vw,40px);
}
.eoxw-base-lists h4{
  margin:0 0 12px;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--eoxw-c1);
}
.eoxw-base-lists ul{margin:0;padding:0;list-style:none;}
.eoxw-base-lists a{
  display:flex;
  align-items:center;
  min-height:44px;
  color:var(--eoxw-muted);
  font-size:clamp(.85rem,2.3vw,.93rem);
  transition:color .26s var(--eoxw-ease),padding-left .26s var(--eoxw-ease);
}
.eoxw-base-lists a:hover{color:var(--eoxw-c1);padding-left:5px;}

.eoxw-base-foot{
  margin-top:clamp(30px,4vw,52px);
  padding-top:22px;
  border-top:1px solid var(--eoxw-border);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px 24px;
}
.eoxw-base-foot p{
  margin:0;
  font-size:.78rem;
  color:var(--eoxw-muted);
  letter-spacing:.04em;
}
.eoxw-base-fine{display:flex;flex-wrap:wrap;gap:6px 22px;}
.eoxw-base-fine a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:.78rem;
  color:var(--eoxw-muted);
  transition:color .26s var(--eoxw-ease);
}
.eoxw-base-fine a:hover{color:var(--eoxw-c1);}

/* ── reveal ──────────────────────────────────────────────── */

.eoxw-lift{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s var(--eoxw-ease),transform .7s var(--eoxw-ease);
}
.eoxw-lift.eoxw-shown{opacity:1;transform:none;}

/* ── responsive ──────────────────────────────────────────── */

@media (max-width:1200px){
  .eoxw-shot{min-height:clamp(440px,60vh,620px);}
}

@media (max-width:992px){
  .eoxw-rail{gap:14px;}
  .eoxw-rail a{font-size:.72rem;letter-spacing:1.2px;}
  .eoxw-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .eoxw-panel{max-width:none;}
  .eoxw-book-split{grid-template-columns:minmax(0,1fr);gap:32px;}
}

@media (max-width:768px){
  :root{--eoxw-hdr:62px;}

  .eoxw-rail,
  .eoxw-key{display:none;}
  .eoxw-veil-btn{display:block;}
  .eoxw-crest{background:rgba(11,4,5,.78);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);}
  .eoxw-mark-tail{display:inline;}

  /* FEAT-4 unstacks on mobile: image on top, text below */
  .eoxw-plate{border-radius:20px;}
  .eoxw-shot{min-height:0;height:clamp(220px,50vw,360px);}
  .eoxw-shot-tower{
    background-image:
      linear-gradient(180deg,rgba(18,7,8,.18) 0%,rgba(18,7,8,.58) 100%),
      linear-gradient(140deg,#3a161c 0%,#1c0d10 46%,#2a1116 100%),
      url('../assets/img/tower.webp');
  }
  .eoxw-shot-suite{
    background-image:
      linear-gradient(180deg,rgba(18,7,8,.18) 0%,rgba(18,7,8,.58) 100%),
      linear-gradient(140deg,#452019 0%,#1d0e0c 52%,#33161a 100%),
      url('../assets/img/suite.webp');
  }
  .eoxw-shot-casino{
    background-image:
      linear-gradient(180deg,rgba(18,7,8,.2) 0%,rgba(18,7,8,.6) 100%),
      linear-gradient(140deg,#2b1218 0%,#160a0c 50%,#3d1a1f 100%),
      url('../assets/img/casino.webp');
  }
  .eoxw-shot-spa{
    background-image:
      linear-gradient(180deg,rgba(18,7,8,.16) 0%,rgba(18,7,8,.56) 100%),
      linear-gradient(140deg,#241419 0%,#150b0d 48%,#3a2620 100%),
      url('../assets/img/spa.webp');
  }

  .eoxw-panel,
  .eoxw-panel-right{
    position:static;
    left:auto;right:auto;bottom:auto;
    border:0;
    border-top:1px solid var(--eoxw-border);
    border-radius:0;
    background:var(--eoxw-card);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    padding:clamp(20px,5vw,30px);
  }

  .eoxw-embers{display:none;}
  .eoxw-hero-glow{animation:none;opacity:.7;}

  .eoxw-base-split{grid-template-columns:minmax(0,1fr);}
}

@media (max-width:640px){
  .eoxw-cards{grid-template-columns:minmax(0,1fr);}
}

@media (max-width:480px){
  :root{--eoxw-gut:16px;}

  .eoxw-brow{letter-spacing:1.5px;}
  .eoxw-h2{max-width:none;}

  .eoxw-hero{padding-bottom:clamp(84px,16vh,120px);}
  .eoxw-hero-title{max-width:none;}
  .eoxw-cta-row{flex-direction:column;gap:12px;}
  .eoxw-cta-row .eoxw-btn-fill,
  .eoxw-cta-row .eoxw-btn-line{width:100%;}

  .eoxw-stats{gap:10px 0;}
  .eoxw-stats li{
    flex:1 1 30%;
    padding-inline:6px;
  }
  .eoxw-stats span{letter-spacing:1px;}

  .eoxw-tick-run span{font-size:.86rem;padding-inline:12px;}
  .eoxw-tick-track{animation-duration:64s;}

  .eoxw-field-pair{grid-template-columns:minmax(0,1fr);}
  .eoxw-book-rows > div{flex-direction:column;align-items:flex-start;gap:4px;}
  .eoxw-book-rows dd{text-align:left;}

  .eoxw-base-lists{grid-template-columns:minmax(0,1fr);}
  .eoxw-base-foot{flex-direction:column;align-items:flex-start;}
}

@media (max-width:360px){
  :root{--eoxw-gut:12px;}
  .eoxw-mark-word{font-size:.95rem;}
  .eoxw-mark-sig{width:26px;height:26px;}
  .eoxw-btn-fill,.eoxw-btn-line{padding:13px 18px;letter-spacing:1px;}
  .eoxw-card-sig{width:44px;height:44px;}
  .eoxw-card-sig svg{width:22px;height:22px;}
  .eoxw-stats li{flex:1 1 100%;border-left:0;}
}

@media (max-width:330px){
  .eoxw-mark-tail{display:none;}
}

/* ── reduced motion ──────────────────────────────────────── */

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
  .eoxw-tick-track{animation:none;transform:none;}
  .eoxw-embers,
  .eoxw-scroll-bead{display:none;}
  .eoxw-hero-glow{animation:none;}
  .eoxw-lift{opacity:1;transform:none;}
  .eoxw-glyph{opacity:1;transform:none;animation:none;}
  .eoxw-rule path{stroke-dashoffset:0;}
}
