:root {
  --ink: #050919;
  --ink-2: #0b1230;
  --surface: #101a3d;
  --cream: #fff4d2;
  --white: #fffaf0;
  --violet: #123f62;
  --electric: #1fe2e3;
  --coral: #ff4b55;
  --lime: #f6c85a;
  --aqua: #27e2df;
  --muted: #b9c5d7;
  --line: rgba(39, 226, 223, .22);
  --vegas-gold: #e9b949;
  --vegas-night: #050919;
  --vegas-blue: #0a2443;
  --vegas-teal: #18cdd0;
  --vegas-coral: #ff4c53;
}

body {
  color: #f8f2df;
  background:
    radial-gradient(circle at 84% 2%, rgba(23, 215, 213, .13), transparent 24%),
    radial-gradient(circle at 8% 32%, rgba(255, 71, 82, .11), transparent 22%),
    linear-gradient(180deg, #050817, #08152b 48%, #040712);
}

main { display: block; }
.site-header {
  height: 104px;
  padding: 0 clamp(18px, 4vw, 68px);
  background: rgba(4, 8, 24, .94);
  border-bottom: 1px solid rgba(31, 225, 222, .28);
  box-shadow: 0 12px 45px rgba(0, 0, 0, .36), inset 0 -2px rgba(255, 77, 84, .2);
}
.site-header .juwa-brand { width: clamp(245px, 25vw, 385px); height: 96px; overflow: visible; }
.site-header .juwa-brand img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 0 14px rgba(27, 224, 221, .22)); }
.nav-links { gap: 10px; margin-left: clamp(20px, 4vw, 55px); }
.nav-links a {
  padding: 9px 14px;
  border-left: 2px solid rgba(239, 187, 70, .5);
  color: #dcebef;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.nav-links a:hover { color: #26e5e1; }
.header-actions .btn { min-height: 42px; border-radius: 7px 18px 7px 18px; }
.header-actions .btn-support,
.header-actions .btn-ghost { color: #c9fbf7; border-color: rgba(36, 222, 219, .36); background: rgba(19, 96, 115, .14); }
.header-actions .btn-primary,
.btn-primary { color: #06121d; background: linear-gradient(110deg, #20e2df, #f1c24f 61%, #ff5156); box-shadow: 0 0 26px rgba(27, 218, 216, .2); }

.trust-strip.casino-status {
  min-height: 56px;
  gap: 11px;
  padding: 8px clamp(14px, 4vw, 65px);
  color: #eafafa;
  background: linear-gradient(90deg, #071a32, #0b3150 50%, #08162c);
  border-bottom: 1px solid rgba(237, 184, 67, .28);
  justify-content: flex-start;
}
.trust-strip.casino-status > strong,
.trust-strip.casino-status > span:not(.live-dot) {
  padding: 7px 13px;
  color: #e8fafa;
  background: rgba(4, 10, 27, .62);
  border: 1px solid rgba(39, 226, 223, .2);
  border-radius: 6px 14px 6px 14px;
  box-shadow: none;
  text-shadow: none;
}
.live-dot { background: #27e2df; box-shadow: 0 0 0 5px rgba(39, 226, 223, .12), 0 0 16px #27e2df; }

.hero {
  width: min(1480px, calc(100% - 28px));
  min-height: 570px;
  margin: 18px auto 24px;
  padding: clamp(58px, 7vw, 104px);
  grid-template-columns: 1fr;
  align-items: center;
  overflow: hidden;
  border: 1px solid rgba(37, 224, 220, .3);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(3, 8, 25, .98) 0%, rgba(4, 12, 34, .92) 35%, rgba(5, 12, 28, .34) 63%, rgba(4, 8, 21, .08) 100%),
    url("assets/brand/vegasz-hero-art.png") 67% center / cover no-repeat;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .48), inset 0 0 0 4px rgba(31, 222, 220, .05);
  clip-path: polygon(0 0, 96% 0, 100% 10%, 100% 100%, 4% 100%, 0 90%);
}
.hero::before { display: none; }
.hero::after {
  content: "VEGASZ · LIGHTS ON · ALL NIGHT";
  position: absolute;
  left: clamp(58px, 7vw, 104px);
  bottom: 38px;
  color: #f0c65d;
  font: 900 10px/1.2 "Segoe UI", Arial, sans-serif;
  letter-spacing: .25em;
}
.hero-art { display: none !important; }
.hero-copy { max-width: 650px; position: relative; z-index: 2; }
.hero-copy .eyebrow { color: #23dfdc; }
.hero h1,
.hero h1 em { font-family: "Arial Black", Impact, sans-serif; text-transform: uppercase; }
.hero h1 { color: #fff6db; font-size: clamp(54px, 7vw, 98px); line-height: .86; letter-spacing: -.07em; text-shadow: 0 8px 30px #000; }
.hero h1 em { color: #ff5158; font-style: italic; text-shadow: 3px 3px 0 #e4b341, 0 0 30px rgba(255, 72, 79, .35); }
.hero-copy > p:not(.eyebrow) { max-width: 560px; color: #d5dfeb; font-size: 17px; }
.mini-proof { display: flex; color: #8ff8f0; }
.hero-game-showcase { display: none; }
.hero .signup-card { display: none; }

.vegasz-stage {
  width: min(1440px, calc(100% - 38px));
  margin: 0 auto 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 390px);
  gap: 22px;
  align-items: start;
}
.vegasz-stage .top-game-marquee {
  width: auto;
  margin: 0;
  padding: 30px 26px 28px;
  color: #f7f2df;
  border: 1px solid rgba(39, 226, 223, .27);
  border-radius: 34px 8px 34px 8px;
  background:
    linear-gradient(145deg, rgba(13, 33, 69, .97), rgba(5, 12, 32, .98)),
    repeating-linear-gradient(90deg, transparent 0 70px, rgba(39, 226, 223, .03) 71px 72px);
  box-shadow: 0 24px 58px rgba(0, 0, 0, .38);
}
.top-games-heading h2,
.platform-lanes-intro h2,
.scrolling-platform-intro h3 { color: #fff4d3; }
.top-games-heading .eyebrow,
.platform-lanes-intro p,
.scrolling-platform-intro p { color: #29e4df; }
.platform-lanes-intro span,
.scrolling-platform-intro span,
.top-games-hint { color: #9eb9ca; }
.top-games-heading a { color: #f0c257; }

.juwa-platform-lanes { grid-template-columns: 1fr 1fr; gap: 14px; }
.juwa-platform-lane {
  min-height: 0;
  padding: 20px;
  border-radius: 24px 7px 24px 7px;
  border: 1px solid rgba(233, 185, 73, .38);
  box-shadow: inset 0 1px rgba(255, 255, 255, .06);
}
.juwa-platform-lane.lane-two { background: linear-gradient(145deg, #0d5062, #071b35 75%); }
.juwa-platform-lane.lane-classic { color: #f9f2d9; background: linear-gradient(145deg, #561b35, #190d2d 76%); }
.lane-heading small,
.lane-classic .lane-heading small { color: #f0c35a; }
.lane-heading h3,
.lane-classic .lane-heading h3 { color: #fff7df; }
.lane-two .lane-game-grid,
.lane-classic .lane-game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; max-height: 465px; overflow-y: auto; scrollbar-color: #22d7d4 #071226; }
.lane-icon-game { max-width: 175px; padding: 3px; background: #071228; border-color: rgba(39, 226, 223, .27); }
.lane-icon-game:hover { border-color: #28e5e1; box-shadow: 0 0 0 3px rgba(39, 226, 223, .1), 0 15px 30px rgba(0, 0, 0, .38); }
.lane-cta,
.choice-button { color: #05111c; background: linear-gradient(110deg, #26e4df, #e9ba4c 63%, #ff5157); border-color: #f3ca6d; box-shadow: 0 8px 24px rgba(0, 0, 0, .28); }

.vegasz-signup {
  display: block !important;
  position: sticky;
  top: 124px;
  transform: none;
  padding: 30px;
  border: 1px solid rgba(238, 188, 72, .55);
  border-radius: 8px 34px 8px 34px;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 78, 84, .23), transparent 32%),
    linear-gradient(150deg, #0d3550, #081128 62%, #170c2a);
  box-shadow: 0 25px 64px rgba(0, 0, 0, .42), inset 0 0 0 3px rgba(39, 226, 223, .05);
}
.vegasz-signup h2 { color: #fff4d4; font-family: "Arial Black", Impact, sans-serif; text-transform: uppercase; }
.vegasz-signup h2 span,
.vegasz-signup .kicker { color: #25e2de; }
.vegasz-signup label,
.vegasz-signup small { color: #cedbe6; }
.vegasz-signup input { color: #f9f5e9; background: rgba(3, 9, 24, .78); border-color: rgba(39, 226, 223, .28); }
.vegasz-signup input:focus { border-color: #23dfdc; box-shadow: 0 0 0 3px rgba(35, 223, 220, .12); }

.reviews {
  margin: 0 auto 45px;
  width: min(1440px, calc(100% - 38px));
  padding: 72px clamp(24px, 5vw, 72px);
  color: #eaf3f4;
  border: 1px solid rgba(255, 77, 84, .22);
  border-radius: 8px 42px 8px 42px;
  background: linear-gradient(120deg, #07142e, #121542 58%, #35142d);
}
.reviews .eyebrow { color: #25e2df; }
.review-card { color: #f5f4e7; background: rgba(6, 15, 36, .74); border-color: rgba(37, 225, 222, .2); }
.review-card.featured { background: linear-gradient(145deg, #0b5665, #0a2443); border-color: #e9b94a; }
.review-card small,
.review-card.featured small { color: #9fb5c4; }
.avatar { color: #06131e; background: linear-gradient(145deg, #25e3df, #edbe53); }

.site-footer { padding-top: 58px; background: #030612; border-top: 3px solid #e3b348; }
.footer-top .juwa-brand { width: 290px; height: 90px; }
.site-footer .juwa-brand img { width: 100%; height: 100%; object-fit: contain; }
.socials a { color: #23dfdc; border-color: rgba(35, 223, 220, .28); }

.login-dialog {
  color: #eef7f4;
  border-color: rgba(235, 185, 70, .55);
  background: radial-gradient(circle at 50% 0, rgba(33, 223, 220, .17), transparent 40%), linear-gradient(145deg, #0b2a49, #060a1c 72%);
}
.login-choice,
.contact-choice { border-color: rgba(35, 223, 220, .24); background: linear-gradient(145deg, rgba(17, 57, 86, .9), rgba(6, 13, 31, .98)); }
.login-choice:hover,
.contact-choice:hover { border-color: #29e5e0; box-shadow: 0 0 28px rgba(35, 223, 220, .17); }
#xyz-support-root .support-launcher { color: #06131e; border-color: #efc35f; background: linear-gradient(110deg, #26e4df, #e9ba4b 65%, #ff5157); }
#xyz-support-root .support-panel { border-color: rgba(35, 224, 221, .45); background: linear-gradient(160deg, #0d3553, #050a1b); }

body::before { background: radial-gradient(circle at 50% 42%, rgba(32, 226, 222, .2), transparent 34%), linear-gradient(145deg, #040817, #0b2443 70%, #190c29); }
body::after {
  border-color: rgba(235, 185, 70, .65);
  background:
    url("assets/brand/vegasz-logo.png?v=1") center 43% / 94% auto no-repeat,
    radial-gradient(circle at 50% 34%, rgba(36, 226, 222, .16), transparent 49%),
    linear-gradient(145deg, rgba(7, 28, 52, .98), rgba(4, 7, 19, .99));
  color: #f0c55c;
}

@media (max-width: 1120px) {
  .nav-links { display: none; }
  .vegasz-stage { grid-template-columns: 1fr; }
  .vegasz-signup { position: static; width: 100%; max-width: none; }
}

@media (max-width: 760px) {
  .site-header { height: 78px; padding: 0 12px; }
  .site-header .juwa-brand { width: 205px; height: 72px; }
  .header-actions { gap: 6px; }
  .header-actions .btn { min-height: 36px; padding: 8px 10px; font-size: 10px; }
  .trust-strip.casino-status { overflow-x: auto; white-space: nowrap; }
  .hero { min-height: 500px; width: calc(100% - 18px); padding: 52px 25px 76px; background-position: 70% center; }
  .hero h1 { font-size: clamp(48px, 16vw, 68px); }
  .hero-copy > p:not(.eyebrow) { font-size: 14px; }
  .hero::after { left: 25px; bottom: 28px; font-size: 8px; letter-spacing: .14em; }
  .vegasz-stage,
  .reviews { width: calc(100% - 18px); }
  .vegasz-stage .top-game-marquee { padding: 23px 14px; }
  .juwa-platform-lanes { grid-template-columns: 1fr; }
  .lane-two .lane-game-grid,
  .lane-classic .lane-game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 420px; }
  .vegasz-signup { padding: 26px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .site-header *, .lane-icon-game, #xyz-support-root * { animation: none !important; transition: none !important; }
}
