/* KZ Trading Academy V13 — Gold globe luxury theme. Visual-only design changes.
   Existing JS, authentication, purchases and Stripe remain unchanged. */
:root { --gold:#f1c46b; --white:#f8f9fb; --muted:#b8b9be; --panel:#101012; --line:#55411f; }
body.kz-site-v13 {color:#f8f9fb; background:#060709!important; background-image:radial-gradient(ellipse at 70% 2%,rgba(136,90,30,.12),transparent 43%),linear-gradient(180deg,#050607,#0b0b0e)!important;}
body.kz-site-v13 :focus-visible { outline:2px solid #f5cb78;outline-offset:4px; }
body.kz-site-v13 .card,body.kz-site-v13 .tile,body.kz-site-v13 .course,body.kz-site-v13 .sandbox-card {background-color:#101115; border-color:rgba(237,185,91,.25)!important;}
body.kz-site-v13 .pill { color:#f4c66b;border-color:rgba(237,185,91,.45); }
body.kz-site-v13 .btn:not(.secondary),body.kz-site-v13 button.primary {background:linear-gradient(135deg,#ffe09a 0%,#e6aa47 95%);color:#17100a;}
body.kz-site-v13 .kz-user-trigger {background:rgba(7,8,10,.75)!important; border:1px solid #c99c4b!important; color:#f4c66b!important;}
body.kz-site-v13 .kz-user-dropdown {background:#0c0e13;border-color:#906f36;}
body.kz-site-v13 .kz-user-dropdown a:hover,body.kz-site-v13 .kz-user-dropdown button:hover {background:#272014;color:#ffd17d;}
body.kz-site-v13:not(.kz-homepage) header {border-color:rgba(238,185,85,.25)!important;background:rgba(5,6,8,.95)!important;}
body.kz-site-v13:not(.kz-homepage) .logo {color:#f8f8f8;font-weight:900;letter-spacing:.025em;}
body.kz-site-v13:not(.kz-homepage) .logo span,body.kz-site-v13:not(.kz-homepage) .logo b {color:#edba63;}
body.kz-site-v13:not(.kz-homepage) .hero {background-image:linear-gradient(90deg,rgba(5,6,8,.96),rgba(5,6,8,.83)),url("kz-gold-globe.webp")!important;background-size:cover!important;background-position:center,right 40%!important;}
body.kz-site-v13:not(.kz-homepage) .hero::after {content:none;}
body.kz-site-v13:not(.kz-homepage) a:not(.btn):hover {color:#f4c66b;}

/* Homepage header */
body.kz-homepage .wrap {width:min(1450px,90%);}
body.kz-homepage .kz-lux-header {position:absolute!important;left:0;right:0;top:0;z-index:20; background:linear-gradient(180deg,rgba(0,0,0,.81),rgba(0,0,0,.13))!important;border-bottom:1px solid rgba(244,191,91,.16);}
body.kz-homepage .kz-lux-nav {min-height:107px;padding:11px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.kz-lux-brand {display:inline-flex;flex-direction:column;align-items:center;flex:0 0 auto;line-height:1;min-width:155px;text-decoration:none;color:#f5cd77!important;}
.kz-lux-monogram {font-size:clamp(41px,3.9vw,59px);font-weight:1000;line-height:.87;letter-spacing:-.105em;padding-right:.11em;text-shadow:0 1px 20px rgba(244,174,61,.22);}
.kz-lux-brand-sub {font-size:10px;font-weight:850;letter-spacing:.23em;margin-top:8px;color:#e8c07a;}
.kz-lux-navlinks {display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.2vw,36px);font-size:15px;color:#e8e7e6;}
.kz-lux-navlinks a {position:relative;padding:12px 0;white-space:nowrap;transition:color .2s;}
.kz-lux-navlinks a:hover,.kz-lux-navlinks a.is-current {color:#f4c16b;}
.kz-lux-navlinks a.is-current::after {content:"";position:absolute;left:0;right:0;bottom:5px;height:2px;background:#f5ca72;}
body.kz-homepage .kz-user-trigger {width:auto!important;height:46px!important;border-radius:100px!important;padding:0 18px!important;gap:10px!important;font-weight:650;color:#fff!important;white-space:nowrap;}
body.kz-homepage .kz-user-trigger svg {width:20px;height:20px;color:#eebd64;}
.kz-account-label {font-size:14px;letter-spacing:0;}

/* Hero design: decorative illustration is isolated from real text and links. */
.kz-lux-hero {position:relative;isolation:isolate;overflow:hidden;min-height:785px;background:#050609;border-bottom:1px solid rgba(244,196,103,.17);}
.kz-lux-hero::before {content:"";z-index:-1;position:absolute;inset:0;background:radial-gradient(ellipse 45% 75% at 79% 35%,rgba(183,107,29,.16),transparent 83%),radial-gradient(ellipse 47% 40% at 45% 82%,rgba(210,130,28,.10),transparent 83%);}
.kz-lux-hero-art {position:absolute;z-index:-2;right:0;top:0;width:min(73%,1240px);height:790px;background:url("kz-gold-globe.webp") center 43%/cover no-repeat;opacity:.97;filter:saturate(1.12) contrast(1.02);}
.kz-lux-hero-art::before {content:"";position:absolute;inset:-2px;background:linear-gradient(90deg,#050609 0%,rgba(5,6,9,.93) 6%,rgba(5,6,9,.26) 45%,transparent 70%),linear-gradient(0deg,#050609 0%,rgba(5,6,9,.08) 35%,rgba(5,6,9,.04) 76%,rgba(5,6,9,.35) 100%);}
.kz-lux-gridfx {position:absolute;inset:0;z-index:-3;background-image:linear-gradient(rgba(245,196,109,.035) 1px, transparent 1px),linear-gradient(90deg,rgba(245,196,109,.035) 1px,transparent 1px);background-size:100px 100px;mask-image:linear-gradient(90deg,transparent 10%,black 100%);}
.kz-lux-hero-content {position:relative;padding-top:175px;padding-bottom:57px;}
.kz-lux-hero-copy {position:relative;z-index:2;max-width:740px;}
.kz-lux-tag {display:inline-flex;align-items:center;gap:12px;padding:8px 17px;border:1px solid rgba(255,200,105,.65);border-radius:99px;color:#ffe1a0;background:rgba(10,9,6,.73);box-shadow:0 0 19px rgba(244,164,37,.20),inset 0 0 12px rgba(221,161,49,.07);font-size:12px;font-weight:750;letter-spacing:.055em;}
.kz-lux-tag svg {width:19px;height:19px;}
.kz-lux-hero h1 {margin:26px 0 19px!important;letter-spacing:-.055em!important;max-width:none!important;font-size:clamp(59px,6vw,100px)!important;font-weight:900;line-height:.94!important;color:#fdfdff;text-shadow:0 4px 30px rgba(0,0,0,.60);}
.kz-lux-hero h1 span {display:block;width:fit-content;max-width:100%;background:linear-gradient(145deg,#ffe5a2 0%,#f0c36a 48%,#c88e38 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f0c36a;}
.kz-lux-hero-rule {width:63px;height:2px;background:#eac477;margin:25px 0 17px;}
.kz-lux-hero-copy p {margin:0;max-width:650px;color:#e3e3e7;font-size:clamp(16px,1.35vw,20px);line-height:1.65;text-shadow:0 2px 13px #000;}
.kz-lux-hero-copy p strong {font-weight:650;color:#f9f5ee;}
.kz-lux-actions {display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:26px;}
.kz-lux-actions a {display:inline-flex;align-items:center;gap:10px;text-decoration:none;border-radius:999px;padding:15px 23px;font-size:15px;font-weight:780;min-height:54px;box-shadow:0 8px 32px rgba(0,0,0,.38);transition:transform .15s,filter .15s,border-color .15s;}
.kz-lux-actions a:hover {transform:translateY(-2px);}
.kz-lux-primary {color:#100e08!important;background:linear-gradient(130deg,#ffe7a3,#e1a541);border:1px solid #f8d187;box-shadow:0 0 28px rgba(246,172,44,.29)!important;}
.kz-lux-primary:hover {filter:brightness(1.09);}
.kz-lux-outline {color:#f7f7f7;border:1px solid #dbaf56;background:rgba(3,5,9,.78);}
.kz-lux-outline:hover {border-color:#ffe6a0;color:#ffe6a0;}
.kz-lux-actions svg {width:22px;height:22px;flex:none;}
.kz-lux-highlights {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:62px;position:relative;z-index:2;}
.kz-lux-feature {min-width:0;padding:23px 22px 26px;border:1px solid rgba(232,177,76,.6);background:linear-gradient(135deg,rgba(21,18,16,.94),rgba(9,10,13,.91));backdrop-filter:blur(8px);border-radius:17px;box-shadow:0 15px 50px rgba(0,0,0,.43),inset 0 1px rgba(255,226,155,.06);min-height:182px;}
.kz-lux-feature-icon {width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(237,185,92,.75);border-radius:50%;color:#f4c671;background:#17120a;}
.kz-lux-feature-icon svg {width:27px;height:27px;}
.kz-lux-feature h2 {font-size:clamp(15px,1.2vw,19px)!important;line-height:1.3;margin:14px 0 6px!important;letter-spacing:-.03em;color:#f7f7f7;}
.kz-lux-feature p {font-size:14px;line-height:1.55;color:#bfc0c6;margin:0;}
/* Continue the established gold-and-black identity below the hero. */
body.kz-homepage #courses {padding-top:86px;}
body.kz-homepage #courses .eyebrow,body.kz-homepage #about .eyebrow {color:#edba63;}
body.kz-homepage #courses .course {background:#101116;border-color:rgba(234,179,76,.25)!important;box-shadow:0 8px 32px rgba(0,0,0,.16);}
body.kz-homepage #courses .art {background:#10151d;}
body.kz-homepage .about {background:#0a0b0e!important;border-color:rgba(232,184,91,.20);}
body.kz-homepage footer {border-top:1px solid rgba(236,185,95,.16);}
@media (max-width:1160px) {
 .kz-lux-navlinks {gap:16px;font-size:13px;}
 .kz-lux-highlights {grid-template-columns:repeat(2,minmax(0,1fr));margin-top:58px;}
 .kz-lux-hero {min-height:840px;}
 .kz-lux-hero-art {width:82%;height:860px;}
 .kz-lux-hero h1 {font-size:clamp(58px,7.6vw,89px)!important;}
}
@media (max-width:700px) {
 body.kz-homepage .wrap {width:min(100% - 32px,560px);}
 body.kz-homepage .kz-lux-nav {padding:12px 0 10px;min-height:90px;gap:8px;flex-wrap:wrap;}
 .kz-lux-brand {min-width:110px;align-items:flex-start;}
 .kz-lux-monogram {font-size:39px;}
 .kz-lux-brand-sub {font-size:7.5px;letter-spacing:.16em;}
 .kz-lux-navlinks {order:3;flex-basis:100%;overflow-x:auto;justify-content:flex-start;gap:20px;white-space:nowrap;padding-bottom:2px;font-size:12px;scrollbar-width:none;}
 .kz-lux-navlinks::-webkit-scrollbar {display:none;}
 body.kz-homepage .kz-user-trigger {height:38px!important;padding:0 12px!important;}
 .kz-account-label {font-size:12px;}
 .kz-lux-hero {min-height:0;}
 .kz-lux-hero-art {top:65px;width:125%;right:-40%;height:510px;opacity:.71;}
 .kz-lux-hero-art::before {background:linear-gradient(90deg,#050609 0%,rgba(5,6,9,.8) 29%,rgba(5,6,9,.2) 100%),linear-gradient(0deg,#050609,transparent 40%);}
 .kz-lux-hero-content {padding-top:186px;padding-bottom:34px;}
 .kz-lux-hero-copy {max-width:100%;}
 .kz-lux-tag {font-size:10px;padding:7px 11px;letter-spacing:0;}
 .kz-lux-tag svg {width:15px;height:15px;}
 .kz-lux-hero h1 {font-size:clamp(42px,10vw,66px)!important;margin:22px 0 15px!important;}
 .kz-lux-hero-rule {margin:19px 0 14px;}
 .kz-lux-hero-copy p {font-size:15px;line-height:1.65;}
 .kz-break-desktop {display:none;}
 .kz-lux-actions {gap:10px;}
 .kz-lux-actions a {min-height:47px;font-size:13px;padding:12px 15px;}
 .kz-lux-actions svg {width:17px;height:17px;}
 .kz-lux-highlights {margin-top:44px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));}
 .kz-lux-feature {padding:15px 13px 18px;min-height:185px;border-radius:12px;}
 .kz-lux-feature-icon {width:37px;height:37px;}
 .kz-lux-feature-icon svg {width:22px;height:22px;}
 .kz-lux-feature h2 {font-size:14px!important;}
 .kz-lux-feature p {font-size:12px;}
 body.kz-homepage #courses {padding-top:48px;}
}
@media (max-width:360px) {.kz-lux-highlights{grid-template-columns:1fr}.kz-lux-hero h1{font-size:39px!important}}
@media (prefers-reduced-motion: reduce) {.kz-lux-actions a {transition:none;} }


/* KZ V14 - subtle ambient movement of the EXISTING gold hero illustration.
   Visual effect only: no changes to interactions, authentication or payment logic. */
@keyframes kzGoldHeroAmbientPan {
  from { transform: translate3d(0, 0, 0) scale(1.02); }
  to { transform: translate3d(-10px, 5px, 0) scale(1.055); }
}
body.kz-homepage .kz-lux-hero-art {
  transform-origin: 62% 45%;
  animation: kzGoldHeroAmbientPan 24s ease-in-out infinite alternate;
}
@media (max-width: 700px) {
  body.kz-homepage .kz-lux-hero-art {
    animation-duration: 30s;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.kz-homepage .kz-lux-hero-art {
    animation: none !important;
    transform: none !important;
  }
}



/* KZ V15 — stronger GOLD MOTION (home hero only).
   Same background and content; only decorative image, glow and grid animate.
   GPU-friendly CSS transforms; no JavaScript or dependencies. */
@keyframes kzV15HeroTravel {
  0%   { transform:translate3d(13px,-7px,0) scale(1.045); }
  50%  { transform:translate3d(-12px,7px,0) scale(1.105); }
  100% { transform:translate3d(-46px,-13px,0) scale(1.17); }
}
@keyframes kzV15GoldGlint {
  0%   { transform:translate3d(-18%,0,0);opacity:.16; }
  50%  { opacity:.53; }
  100% { transform:translate3d(20%,0,0);opacity:.14; }
}
@keyframes kzV15GoldBreath {
  0%   { opacity:.45; transform:scale(1); }
  100% { opacity:1; transform:scale(1.045); }
}
@keyframes kzV15GridFlow {
  0%   { transform:translate3d(0,0,0);opacity:.42; }
  100% { transform:translate3d(-27px,11px,0);opacity:.84; }
}
body.kz-homepage .kz-lux-hero-art {
  transform-origin:61% 44%;
  animation:kzV15HeroTravel 12s ease-in-out infinite alternate !important;
  will-change:transform;
}
/* Light sweeps across the SAME gold chart art, behind real text/buttons. */
body.kz-homepage .kz-lux-hero-art::after {
  content:"";
  position:absolute;
  inset:-12%;
  pointer-events:none;
  background:
    radial-gradient(ellipse 20% 56% at 72% 48%,rgba(255,214,117,.64) 0%,rgba(246,164,37,.21) 37%,transparent 75%),
    linear-gradient(111deg,transparent 39%,rgba(255,227,161,.11) 52%,transparent 65%);
  mix-blend-mode:screen;
  animation:kzV15GoldGlint 8s ease-in-out infinite alternate;
  will-change:transform,opacity;
}
body.kz-homepage .kz-lux-hero::before {
  animation:kzV15GoldBreath 6.5s ease-in-out infinite alternate;
  will-change:transform,opacity;
}
body.kz-homepage .kz-lux-gridfx {
  animation:kzV15GridFlow 11s ease-in-out infinite alternate;
  will-change:transform,opacity;
}
/* Smaller, cheaper movement on mobile; same overall aesthetic. */
@media(max-width:700px) {
  @keyframes kzV15MobileHeroTravel {
    from { transform:translate3d(8px,0,0) scale(1.04); }
    to   { transform:translate3d(-20px,9px,0) scale(1.12); }
  }
  body.kz-homepage .kz-lux-hero-art {
    animation:kzV15MobileHeroTravel 12s ease-in-out infinite alternate !important;
  }
  body.kz-homepage .kz-lux-gridfx { animation:none!important; }
}
/* Respect users who request a still experience. */
@media(prefers-reduced-motion:reduce) {
  body.kz-homepage .kz-lux-hero-art,
  body.kz-homepage .kz-lux-hero-art::after,
  body.kz-homepage .kz-lux-hero::before,
  body.kz-homepage .kz-lux-gridfx {
    animation:none!important;
    transform:none!important;
    will-change:auto!important;
  }
  body.kz-homepage .kz-lux-hero-art::after { opacity:.18; }
}
