
* { margin:0; padding:0; box-sizing:border-box; }
:root {
  --bg:#0a050d; --card:#2b1c33; --text:#f0e6f4; --muted:#7a5a7a;
  --accent:#d4af37; --on-acc:#141414; --border:rgba(240,230,244,0.13); --soft:rgba(240,230,244,0.06);
  --accsoft:rgba(212,175,55,0.16); --thread:rgba(212,175,55,0.30); --shadow:rgba(0,0,0,0.36); --shadow2:rgba(212,175,55,0.32);
  --rad:24px; --pad:22px;
}
html { scroll-behavior:smooth; }
body { margin:0; color:var(--text); font-family:Garamond, 'EB Garamond', 'Times New Roman', serif; line-height:1.6;
  background:radial-gradient(90% 60% at 70% 30%, var(--accsoft), transparent 55%), var(--bg);
  -webkit-font-smoothing:antialiased; overflow-x:hidden; }
h1,h2 { font-family:Optima, Candara, 'Segoe UI', sans-serif; line-height:1.1; letter-spacing:-.02em; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.hx-page { max-width:1160px; margin:0 auto; padding:0 20px 40px; }

.hxnav { display:flex; align-items:center; justify-content:space-between; padding:18px 4px; }
.brand { font-family:Optima, Candara, 'Segoe UI', sans-serif; font-weight:800; font-size:20px;
  display:flex; align-items:center; gap:10px; }
.brand-helix { width:12px; height:16px; background:linear-gradient(var(--accent) 40%, transparent 40%),
  linear-gradient(transparent 60%, var(--accent) 60%); border-radius:6px; }
.hxnav-hint { font-size:13px; color:var(--muted); }

.hx-hero { text-align:center; padding:34px 0 10px; }
.kicker { display:inline-block; font-size:13px; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--accent); margin-bottom:12px; }
.hx-hero h1 { font-size:clamp(34px,5.4vw,60px); margin-bottom:14px; }
.hx-hero p { color:var(--muted); font-size:18px; max-width:52ch; margin:0 auto 16px; }
.scroll-cue { display:inline-block; color:var(--accent); font-weight:700; font-size:14px;
  letter-spacing:.06em; }

.hx-wrap { position:relative; }
.hx-track { position:relative; height:calc(var(--n) * 70vh + 60vh); }
.hx-view { position:sticky; top:0; height:100vh; display:grid;
  grid-template-columns:.9fr 1.1fr; align-items:center; gap:20px; }
.hx-readout { padding-left:6px; }
.tag { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:var(--accent); background:var(--accsoft);
  padding:6px 12px; border-radius:999px; margin-bottom:12px; }
.hx-readout h2 { font-size:clamp(26px,3.6vw,44px); margin-bottom:12px; }
.hx-readout p { color:var(--muted); font-size:17px; max-width:44ch; margin-bottom:16px; }
.hx-index { font-family:Optima, Candara, 'Segoe UI', sans-serif; font-size:15px; color:var(--muted); }
.hx-index i { font-style:normal; color:var(--accent); font-size:22px; font-weight:800; }

.hx-stage { position:relative; height:100%; perspective:1200px;
  display:flex; align-items:center; justify-content:center; }
.hx-spiral { position:relative; width:340px; height:230px; transform-style:preserve-3d; }
.hx-card { position:absolute; inset:0; width:340px; height:230px; margin:auto;
  border-radius:var(--rad); overflow:hidden; background:var(--card);
  border:1px solid var(--border); box-shadow:0 24px 54px var(--shadow);
  will-change:transform,opacity; backface-visibility:hidden; }
.hx-card img { width:100%; height:100%; object-fit:cover; }
.hx-card.is-front { box-shadow:0 30px 66px var(--shadow2); border-color:var(--accent); }
.hx-cap { position:absolute; left:0; right:0; bottom:0; padding:14px 16px;
  background:linear-gradient(to top, rgba(0,0,0,.66), transparent);
  color:#fff; display:flex; align-items:center; gap:10px; }
.hx-no { font-family:Optima, Candara, 'Segoe UI', sans-serif; font-weight:800; color:var(--accent);
  background:#fff; border-radius:8px; padding:2px 8px; font-size:13px; }
.hx-cap b { font-family:Optima, Candara, 'Segoe UI', sans-serif; font-size:17px; }

.hx-contact { padding:30px 0 10px; }
.hxc-inner { background:var(--card); border:1px solid var(--border);
  border-radius:calc(var(--rad) + 6px); padding:var(--pad); text-align:center;
  box-shadow:0 22px 54px var(--shadow); }
.hxc-inner h2 { font-size:clamp(24px,3vw,36px); margin:8px 0 20px; }
.hxc-info { list-style:none; display:inline-flex; gap:26px; flex-wrap:wrap; font-size:14px;
  margin-bottom:22px; }
.hxc-info li span { color:var(--muted); margin-right:6px; }
.btn { display:inline-block; border-radius:999px; padding:13px 26px; font-weight:600;
  font-size:15px; cursor:pointer; border:1px solid transparent; font-family:inherit;
  transition:transform .14s, filter .14s; }
.primary { background:var(--accent); color:var(--on-acc); box-shadow:0 12px 26px var(--shadow2); }
.primary:hover { transform:translateY(-3px); filter:brightness(1.05); }

.hxfoot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;
  padding:30px 4px 0; margin-top:30px; border-top:1px solid var(--border); font-size:14px; }
.muted { color:var(--muted); }

@media (max-width:820px) {
  .hx-view { grid-template-columns:1fr; grid-template-rows:auto 1fr; gap:8px;
    padding-top:70px; }
  .hx-readout { text-align:center; }
  .hx-readout p { margin-left:auto; margin-right:auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .hx-track { height:auto; }
  .hx-view { position:static; height:auto; grid-template-columns:1fr; gap:16px; padding:20px 0; }
  .hx-stage { perspective:none; height:auto; display:block; }
  .hx-spiral { position:static; width:auto; height:auto; transform-style:flat;
    display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
  .hx-card { position:relative; inset:auto; width:auto; height:200px; margin:0;
    transform:none !important; opacity:1 !important; }
  .btn:hover { transform:none; }
}
@media (prefers-reduced-motion: reduce) and (max-width:600px) {
  .hx-spiral { grid-template-columns:1fr; }
}


.xq{box-sizing:border-box;font-family:Garamond, 'EB Garamond', 'Times New Roman', serif;color:#f0e6f4;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#d4af37;margin-bottom:10px;font-weight:700}

.xq-stats{background:rgba(240,230,244,0.05);border-top:1px solid rgba(240,230,244,0.14);border-bottom:1px solid rgba(240,230,244,0.14)}
.xq-statrow{display:flex;flex-wrap:wrap;gap:14px}
.xq-stat{flex:1 1 140px;background:#201028;border:1px solid rgba(240,230,244,0.14);border-radius:20px;padding:20px 18px;text-align:center}
.xq-stat dt{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:2rem;color:#d4af37;font-weight:800}
.xq-stat dd{margin-top:6px;font-size:.85rem;color:#7a5a7a}


.xq-cta{background:#d4af37;color:#141414}
.xq-cta h2,.xq-cta p{color:#141414}
.xq-cta p{opacity:.85;max-width:52ch}
.xq-cta-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.xq-btn{display:inline-block;background:#100814;color:#f0e6f4;text-decoration:none;font-weight:700;padding:14px 30px;border-radius:20px;font-family:Optima, Candara, 'Segoe UI', sans-serif}
.xq-btn:hover{transform:translateY(-2px)}


.xq-tl-list{list-style:none;padding:0;margin-top:24px;position:relative;border-left:2px solid rgba(240,230,244,0.14)}
.xq-tl-item{position:relative;padding:0 0 26px 26px}
.xq-tl-item::before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#d4af37;box-shadow:0 0 0 4px rgba(240,230,244,0.05)}
.xq-tl-item time{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-weight:800;color:#d4af37;display:block;margin-bottom:4px}
.xq-tl-item p{color:#7a5a7a;max-width:58ch}


/* =====================================================
   DESIGN DNA: neon-grid
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.55) 0 1px,transparent 1px 4px);opacity:.14;}
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:1px solid rgba(212,175,55,.7);background:none;box-shadow:inset 0 0 60px rgba(212,175,55,.18)}
h1,h2,h3{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif !important;text-transform:uppercase !important;letter-spacing:.14em !important;text-shadow:0 0 14px rgba(212,175,55,.85)}
img{filter:saturate(1.45) contrast(1.08);border-radius:4px !important;box-shadow:0 0 22px rgba(212,175,55,.5) !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:3px !important;box-shadow:0 0 16px rgba(212,175,55,.6) !important;text-transform:uppercase;letter-spacing:.14em}
