/* Brand tokens aligned to the ZingBills mobile app (indigo #4F46E5 primary,
   cyan #06B6D4 secondary, Poppins). Kept as the same --violet/--lime var names
   so every existing rule inherits the new palette with no other edits. */
:root{
  --ink:#111827;          /* app textDark  */
  --ink-2:#4B5563;        /* app textMid   */
  --paper:#FFFFFF;
  --wash:#EEF2FF;         /* indigo wash   */
  --violet:#4F46E5;       /* app primary   */
  --violet-dk:#3730A3;
  --violet-lt:#818CF8;
  --lime:#06B6D4;         /* app secondary (cyan) — accents, checks, gradients */
  --success:#10B981;      /* app success   */
  --amber:#F59E0B;        /* app warning   */
  --danger:#EF4444;       /* app danger    */
  --line:#E5E7EB;         /* app border    */
  --radius:18px;
  --max:1200px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Poppins',system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,.display{font-family:'Poppins',sans-serif;line-height:1.08;letter-spacing:-.02em;font-weight:700}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px;position:relative;z-index:2}
a{color:inherit;text-decoration:none}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--violet);font-weight:500;display:inline-block}
section{padding:120px 0;position:relative}
@media(max-width:760px){section{padding:72px 0}}

/* ---------- CUSTOM CURSOR ---------- */
.cur{position:fixed;top:0;left:0;width:8px;height:8px;border-radius:50%;background:var(--violet);pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}
.cur-r{position:fixed;top:0;left:0;width:38px;height:38px;border:1.5px solid rgba(91,61,245,.45);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .3s var(--ease),height .3s var(--ease),background .3s,border-color .3s}
.cur-r.big{width:70px;height:70px;background:rgba(91,61,245,.09);border-color:transparent}
@media(hover:none),(max-width:900px){.cur,.cur-r{display:none}}

/* ---------- SCROLL PROGRESS ---------- */
.prog{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--violet),var(--lime));z-index:200;transition:width .08s linear}

/* ---------- REVEAL ---------- */
.rev{opacity:0;transform:translateY(38px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rev.in{opacity:1;transform:none}
.rev[data-d="1"]{transition-delay:.09s}.rev[data-d="2"]{transition-delay:.18s}
.rev[data-d="3"]{transition-delay:.27s}.rev[data-d="4"]{transition-delay:.36s}
.rev[data-d="5"]{transition-delay:.45s}.rev[data-d="6"]{transition-delay:.54s}
.rev[data-d="7"]{transition-delay:.63s}.rev[data-d="8"]{transition-delay:.72s}

/* char-by-char headline */
.split-line{display:block;overflow:hidden}
.split-line span{display:inline-block;transform:translateY(105%);transition:transform 1s var(--ease)}
.loaded .split-line span{transform:none}
.split-line:nth-child(2) span{transition-delay:.1s}
.split-line:nth-child(3) span{transition-delay:.2s}

