:root {
  --bg: #07080d;
  --bg2: #101018;
  --card: rgba(18, 18, 28, .82);
  --card2: rgba(27, 24, 35, .72);
  --line: rgba(255,255,255,.12);
  --text: #fff7ed;
  --muted: #c8bdad;
  --red: #f12b22;
  --red2: #a90f17;
  --gold: #ffd166;
  --gold2: #ff9d15;
  --green: #63df63;
  --dark: #07070b;
  --shadow: 0 24px 80px rgba(0,0,0,.45);
  --radius: 28px;
  --max: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  background:
    radial-gradient(circle at 10% 0%, rgba(241,43,34,.23), transparent 34rem),
    radial-gradient(circle at 86% 10%, rgba(255,157,21,.18), transparent 34rem),
    radial-gradient(circle at 52% 44%, rgba(99,223,99,.08), transparent 30rem),
    linear-gradient(180deg, #08080d 0%, #111018 45%, #07080d 100%);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
  overflow-x: hidden;
  padding-bottom: 104px;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .46;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, black, transparent 78%);
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 25%, rgba(255,209,102,.1), transparent 18rem),
    radial-gradient(circle at 80% 70%, rgba(241,43,34,.09), transparent 20rem);
  filter: blur(2px);
}
a { color: inherit; }
img { max-width: 100%; display: block; }
button { font: inherit; }
.container { width: min(var(--max), calc(100% - 32px)); margin: 0 auto; position: relative; z-index: 2; }
.header {
  position: sticky;
  top: 0;
  z-index: 20;
  backdrop-filter: blur(18px);
  background: linear-gradient(180deg, rgba(7,8,13,.92), rgba(7,8,13,.64));
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.nav {
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.logo-wrap {
  display: inline-flex;
  align-items: center;
  min-width: 185px;
  max-width: 294px;
  height: 64px;
}
.logo-wrap img { width: 100%; max-height: 58px; height: auto; object-fit: contain; filter: drop-shadow(0 8px 18px rgba(241,43,34,.28)); }
.nav-links { display: flex; align-items: center; gap: 14px; color: #e9dac5; font-size: 14px; }
.nav-links a { text-decoration: none; padding: 9px 10px; border-radius: 999px; transition: .2s ease; }
.nav-links a:hover { background: rgba(255,255,255,.08); color: white; }
.btn {
  position: relative;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 900;
  letter-spacing: .02em;
  text-decoration: none;
  color: #120602;
  background: linear-gradient(135deg, #fff2a7, var(--gold), var(--gold2));
  box-shadow: 0 14px 34px rgba(255,157,21,.28), inset 0 -3px 0 rgba(91,39,0,.26);
  overflow: hidden;
  transform: translateZ(0);
}
.btn::before {
  content: "";
  position: absolute;
  inset: -60% auto -60% -25%;
  width: 34%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.75), transparent);
  animation: shine 3.8s ease-in-out infinite;
}
.btn:hover { transform: translateY(-1px); filter: saturate(1.08); }
.btn:active { transform: translateY(1px); }
.btn.btn-red {
  color: #fff;
  background: linear-gradient(135deg, #ff6b43, var(--red), #a80f19);
  box-shadow: 0 14px 34px rgba(241,43,34,.3), inset 0 -3px 0 rgba(78,0,0,.32);
}
.btn.btn-ghost {
  color: #fff3dc;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  box-shadow: inset 0 0 0 1px rgba(255,209,102,.08);
}
.hero {
  padding: 54px 0 36px;
  position: relative;
  overflow: hidden;
}
.float-layer { position: absolute; inset: 0; pointer-events: none; z-index: 1; }
.float-layer span {
  position: absolute;
  border-radius: 14px;
  opacity: .75;
  filter: drop-shadow(0 0 18px rgba(255,209,102,.25));
  animation: floaty 8s ease-in-out infinite;
}
.float-layer .coin { width: 26px; height: 26px; background: radial-gradient(circle at 32% 24%, #fff5a9, #ffc342 42%, #b95a00 100%); border: 2px solid rgba(255,255,255,.35); border-radius: 50%; }
.float-layer .bill { width: 56px; height: 28px; background: linear-gradient(135deg, #8cf372, #2fae3e); transform: rotate(-12deg); box-shadow: inset 0 0 0 2px rgba(0,0,0,.12); }
.float-layer .spark { width: 6px; height: 24px; background: linear-gradient(#fff0a0, #ff4822); border-radius: 999px; }
.f1 { top: 12%; left: 5%; animation-delay: -1s; }
.f2 { top: 21%; right: 8%; animation-delay: -3s; }
.f3 { top: 63%; left: 9%; animation-delay: -5s; }
.f4 { top: 70%; right: 13%; animation-delay: -2s; }
.f5 { top: 35%; left: 48%; animation-delay: -6s; }
.f6 { top: 8%; right: 34%; animation-delay: -4s; }
.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .86fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: center;
}
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 13px;
  margin-bottom: 18px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  color: #ffe7b8;
  background: linear-gradient(135deg, rgba(241,43,34,.16), rgba(255,209,102,.08));
  box-shadow: inset 0 0 30px rgba(255,209,102,.04);
  font-size: 14px;
  font-weight: 800;
}
.eyebrow b { color: var(--gold); }
h1, h2, h3 { line-height: 1.05; margin: 0; letter-spacing: -.04em; }
h1 {
  font-family: "Arial Black", Impact, Inter, sans-serif;
  font-size: clamp(46px, 8vw, 92px);
  text-transform: uppercase;
  max-width: 840px;
  text-shadow: 0 6px 0 rgba(0,0,0,.35), 0 0 36px rgba(241,43,34,.24);
}
.accent { color: var(--gold); }
.lead {
  margin: 22px 0 0;
  max-width: 720px;
  color: #efdfc9;
  font-size: clamp(18px, 2vw, 22px);
}
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 28px; }
.chips { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-top: 30px; max-width: 740px; }
.chip {
  padding: 13px 14px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,.045));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(0,0,0,.22);
}
.chip span { display: block; color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.chip strong { display: block; color: #fff; font-size: 17px; margin-top: 4px; }
.poster-shell {
  justify-self: end;
  position: relative;
  top: -18px;
  width: min(100%, 500px);
  aspect-ratio: 4 / 5;
  max-height: clamp(420px, 68vh, 680px);
  overflow: visible;
}
.poster-shell::before {
  content: "";
  position: absolute;
  inset: -14px;
  border-radius: 34px;
  background: conic-gradient(from 90deg, #ffdd72, #f12b22, #111018, #62df63, #ffdd72);
  filter: blur(.1px) drop-shadow(0 24px 70px rgba(241,43,34,.24));
  animation: spinBorder 9s linear infinite;
  z-index: -2;
}
.poster-shell::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(12,12,18,.94), rgba(34,17,18,.9));
  z-index: -1;
}
.poster-frame {
  width: 100%;
  height: 100%;
  border-radius: 26px;
  overflow: visible;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
}
.poster-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 24px;
  filter: drop-shadow(0 30px 46px rgba(0,0,0,.42));
}

.card {
  position: relative;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.036));
  box-shadow: var(--shadow);
  overflow: hidden;
}
.card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 0%, rgba(255,209,102,.09), transparent 20rem), radial-gradient(circle at 80% 10%, rgba(241,43,34,.09), transparent 20rem);
  pointer-events: none;
}
.card > * { position: relative; z-index: 1; }
.grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.mini-card {
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(10,10,16,.58);
  padding: 20px;
  min-height: 100%;
}
.mini-card .icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #1b0804;
  background: linear-gradient(135deg, #fff5a7, #ffc44d, #ff7a18);
  box-shadow: 0 12px 28px rgba(255,157,21,.22);
  margin-bottom: 14px;
}
.visual-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 280px);
  gap: 24px;
  align-items: center;
}
.visual-card .art { display: flex; align-items: center; justify-content: center; justify-self: center; width: min(100%, 280px); min-height: 220px; filter: drop-shadow(0 22px 40px rgba(0,0,0,.34)); }
.visual-card .art img { width: auto; max-width: 100%; height: auto; max-height: 300px; object-fit: contain; }
.table-wrap { overflow-x: auto; border-radius: 22px; border: 1px solid rgba(255,255,255,.1); background: rgba(7,8,13,.5); }
table { width: 100%; border-collapse: collapse; min-width: 660px; }
th, td { padding: 16px 18px; border-bottom: 1px solid rgba(255,255,255,.09); text-align: left; vertical-align: top; }
th { color: #fff1c7; background: rgba(255,209,102,.08); font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
td { color: #ded2c1; }
tr:last-child td { border-bottom: 0; }
.note {
  padding: 16px 18px;
  border-radius: 20px;
  background: rgba(255,209,102,.09);
  border: 1px solid rgba(255,209,102,.18);
  color: #ffe8b3;
}
.steps { counter-reset: step; display: grid; gap: 14px; }
.step {
  counter-increment: step;
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  align-items: start;
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.1);
}
.step::before {
  content: counter(step);
  width: 48px;
  height: 48px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  color: #170704;
  font-weight: 1000;
  background: linear-gradient(135deg, #fff2a7, var(--gold2));
}
.split-list { columns: 2; column-gap: 30px; padding-left: 20px; color: var(--muted); }
.split-list li { margin-bottom: 10px; break-inside: avoid; }
.faq { display: grid; gap: 12px; }
details {
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 20px;
  background: rgba(255,255,255,.055);
  overflow: hidden;
}
summary {
  cursor: pointer;
  padding: 18px 20px;
  font-weight: 900;
  color: #fff;
  list-style: none;
}
summary::-webkit-details-marker { display: none; }
details p { padding: 0 20px 18px; }
.tip-box {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: center;
  margin-top: 22px;
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(241,43,34,.16), rgba(255,209,102,.1));
  border: 1px solid rgba(255,255,255,.13);
}
.tip-box p { margin: 0; color: #ffe8c2; }
.footer { padding: 44px 0 86px; border-top: 1px solid rgba(255,255,255,.08); background: rgba(0,0,0,.18); }
.footer-grid { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: center; }
.footer-logo { width: min(100%, 180px); height: auto; object-fit: contain; }
.footer p { max-width: 780px; font-size: 14px; }
.sticky-dock {
  position: fixed;
  left: 50%;
  bottom: 18px;
  transform: translateX(-50%);
  z-index: 30;
  width: min(720px, calc(100% - 24px));
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(7,8,13,.76);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 55px rgba(0,0,0,.45);
  transition: opacity .25s ease, transform .25s ease;
}
.sticky-dock.is-hidden { opacity: 0; pointer-events: none; transform: translate(-50%, 22px); }
.sticky-dock .btn { min-height: 48px; padding: 12px 16px; font-size: 14px; }
.to-top {
  position: fixed;
  right: 18px;
  bottom: 108px;
  z-index: 29;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,209,102,.14);
  color: #fff2c8;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition: .2s ease;
}
.to-top.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
@keyframes shine { 0%, 62% { transform: translateX(-90%) rotate(18deg); } 100% { transform: translateX(460%) rotate(18deg); } }
@keyframes floaty { 0%,100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-18px) rotate(10deg); } }
@keyframes spinBorder { to { transform: rotate(360deg); } }
@media (max-width: 980px) {
  .nav-links { display: none; }
  .hero-grid { grid-template-columns: 1fr; }
  .poster-shell { justify-self: center; top: 0; width: min(100%, 430px); max-height: none; }
  .chips { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .grid-3, .grid-2 { grid-template-columns: 1fr; }
  .visual-card { grid-template-columns: 1fr; }
  .visual-card .art { width: min(100%, 240px); min-height: 190px; }
  .visual-card .art img { max-height: 250px; }
}
@media (max-width: 640px) {
  body { padding-bottom: 94px; }
  .container { width: min(100% - 22px, var(--max)); }
  .header { position: relative; }
  .nav { min-height: 70px; }
  .logo-wrap { max-width: 220px; height: 56px; }
  .logo-wrap img { max-height: 50px; }
  .hero { padding-top: 28px; }
  .hero-actions { display: grid; grid-template-columns: 1fr; }
  .hero-actions .btn { width: 100%; }
  .chips { grid-template-columns: 1fr; }
  .poster-shell { width: min(100%, 360px); }
  .card { border-radius: 22px; padding: 20px; }
  .split-list { columns: 1; }
  .tip-box { grid-template-columns: 1fr; }
  .sticky-dock { border-radius: 24px; grid-template-columns: repeat(3, minmax(0,1fr)); bottom: 10px; padding: 8px; gap: 7px; }
  .sticky-dock .btn { min-height: 46px; padding: 9px 8px; font-size: 12px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-logo { width: min(100%, 170px); }
  .to-top { right: 12px; bottom: 104px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; scroll-behavior: auto !important; transition: none !important; }
}
