:root{
    --bg:#0A0B0D;
    --bg-2:#0D0F12;
    --surface:#131417;
    --surface-2:#1A1C20;
    --border:#24262B;
    --gold:#C6FF3D;
    --gold-bright:#DFFF8A;
    --gold-soft:rgba(198,255,61,0.14);
    --green:#34D399;
    --red:#F87171;
    --text:#EDEDEF;
    --text-muted:#9298A3;
    --text-faint:#5B5F68;
    --radius:12px;
    --maxw:1180px;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  .mono{font-family:'IBM Plex Mono',monospace; font-variant-numeric:tabular-nums;}
  .display{font-family:'Space Grotesk',sans-serif;}
  a{color:inherit; text-decoration:none;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px;}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important;}
  }

  /* ---------- ambient background ---------- */
  #bgChartCanvas{
    position:fixed; inset:0; z-index:-3; width:100%; height:100%;
    opacity:.16; pointer-events:none;
    mask-image:radial-gradient(ellipse 75% 55% at 50% 15%, black 35%, transparent 88%);
    -webkit-mask-image:radial-gradient(ellipse 75% 55% at 50% 15%, black 35%, transparent 88%);
  }
  .ambient{
    position:fixed; inset:0; z-index:-2; pointer-events:none;
    background:
      radial-gradient(ellipse 900px 500px at 15% -5%, rgba(198,255,61,0.10), transparent 60%),
      radial-gradient(ellipse 700px 500px at 100% 10%, rgba(52,211,153,0.05), transparent 55%);
    transition:transform .1s linear;
    will-change:transform;
  }

  /* ---------- cursor spotlight ---------- */
  .spotlight{
    position:fixed; inset:0; z-index:-1; pointer-events:none;
    background:radial-gradient(480px circle at var(--sx,50%) var(--sy,30%), rgba(198,255,61,0.06), transparent 70%);
    transition:opacity .3s ease;
  }

  /* ---------- particle network canvas (hero) ---------- */
  #particleCanvas{
    position:absolute; inset:0; width:100%; height:100%;
    pointer-events:none; opacity:.55;
  }

  /* ---------- reveal (upgraded: blur + rise) ---------- */
  .reveal{
    opacity:0; transform:translateY(26px); filter:blur(6px);
    transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1), filter .8s cubic-bezier(.16,1,.3,1);
  }
  .reveal.in-view{opacity:1; transform:translateY(0); filter:blur(0);}

  /* ---------- tilt (3D card hover) ---------- */
  .tilt{transform-style:preserve-3d; transition:transform .35s cubic-bezier(.16,1,.3,1), border-color .2s ease;}
  .tilt-inner{transform:translateZ(24px);}

  /* ---------- magnetic buttons ---------- */
  .btn{will-change:transform;}

  /* ---------- animated gradient text ---------- */
  .accent-flow{
    background:linear-gradient(90deg, var(--gold), var(--gold-bright), var(--green), var(--gold));
    background-size:300% 100%;
    -webkit-background-clip:text; background-clip:text; color:transparent;
    animation:flow 6s ease infinite;
  }
  @keyframes flow{0%{background-position:0% 50%;} 50%{background-position:100% 50%;} 100%{background-position:0% 50%;}}

  /* ---------- equity curve draw-in ---------- */
  #equityPath{
    stroke-dasharray:400; stroke-dashoffset:400;
    animation:drawLine 1.8s cubic-bezier(.16,1,.3,1) .5s forwards;
  }
  @keyframes drawLine{to{stroke-dashoffset:0;}}
  #equityDot{
    opacity:0; animation:dotIn .4s ease 2.1s forwards;
  }
  @keyframes dotIn{to{opacity:1;}}

  /* ---------- Nav ---------- */
  nav{
    position:sticky; top:0; z-index:50;
    border-bottom:1px solid transparent;
    transition:background .25s ease, border-color .25s ease, backdrop-filter .25s ease;
  }
  nav.scrolled{
    background:rgba(10,11,13,0.72);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom-color:var(--border);
  }
  .nav-inner{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 28px; max-width:var(--maxw); margin:0 auto;}
  .brand{display:flex; align-items:center; gap:9px; min-width:0;}
  .brand .mark{
    width:38px; height:38px; object-fit:contain;
    flex-shrink:0;
    filter:drop-shadow(0 0 5px rgba(106,255,89,.22));
  }
  .brand .wordmark{
    height:16px; width:auto; max-width:130px; display:block;
    filter:drop-shadow(0 0 4px rgba(255,255,255,.30));
  }
  @media (max-width:420px){ .brand .wordmark{max-width:110px;} }
  .nav-links{display:flex; align-items:center; gap:30px;}
  .nav-links a{font-size:13.5px; color:var(--text-muted); transition:color .15s ease;}
  .nav-links a:hover{color:var(--text);}
  .nav-cta{display:flex; align-items:center; gap:14px;}
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    padding:10px 20px; border-radius:8px; font-size:13.5px; font-weight:600;
    cursor:pointer; border:1px solid transparent; transition:transform .15s ease, box-shadow .2s ease, background .15s ease, border-color .15s ease;
    white-space:nowrap;
  }
  .btn-gold{background:var(--gold); color:#0B0F02;}
  .btn-gold:hover{background:var(--gold-bright); transform:translateY(-1px); box-shadow:0 8px 24px rgba(198,255,61,0.25);}
  .btn-ghost{border-color:var(--border); color:var(--text);}
  .btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
  .btn-sm{padding:8px 15px; font-size:12.5px;}
  @media (max-width:820px){ .nav-links{display:none;} }

  /* ---------- Hero ---------- */
  .hero{padding:88px 0 70px;}
  .hero-grid{display:grid; grid-template-columns:1.05fr 0.95fr; gap:56px; align-items:center;}
  @media (max-width:980px){ .hero-grid{grid-template-columns:1fr;} }

  .eyebrow{
    display:inline-flex; align-items:center; gap:7px;
    font-family:'IBM Plex Mono'; font-size:11.5px; color:var(--gold);
    background:var(--gold-soft); border:1px solid rgba(198,255,61,0.3);
    padding:5px 12px; border-radius:20px; margin-bottom:22px;
  }
  .eyebrow .dot{width:5px; height:5px; border-radius:50%; background:var(--gold);}

  h1.hero-title{
    font-family:'Space Grotesk'; font-weight:600; letter-spacing:-0.02em;
    font-size:clamp(34px, 4.6vw, 54px); line-height:1.06; margin-bottom:20px;
  }
  h1.hero-title .accent{color:var(--gold);}
  .hero-sub{font-size:16.5px; line-height:1.6; color:var(--text-muted); max-width:480px; margin-bottom:34px;}
  .hero-actions{display:flex; align-items:center; gap:14px; margin-bottom:36px; flex-wrap:wrap;}
  .hero-note{font-size:12px; color:var(--text-faint);}

  .trust-row{display:flex; gap:26px; flex-wrap:wrap; font-size:12px; color:var(--text-faint);}
  .trust-row span{display:flex; align-items:center; gap:7px;}
  .trust-row .check{color:var(--green); font-size:13px;}

  /* ---------- Hero preview panel (signature element) ---------- */
  .preview-panel{
    background:var(--surface); border:1px solid var(--border); border-radius:16px;
    padding:20px; box-shadow:0 30px 80px -20px rgba(0,0,0,0.6);
    opacity:0; transform:translateY(16px) scale(.98);
    animation:panelIn .8s cubic-bezier(.22,1,.36,1) .25s forwards;
  }
  @keyframes panelIn{to{opacity:1; transform:translateY(0) scale(1);}}
  .preview-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:14px;}
  .preview-head .dots{display:flex; gap:6px;}
  .preview-head .dots span{width:8px; height:8px; border-radius:50%; background:var(--border);}
  .live-pill{
    display:inline-flex; align-items:center; gap:6px; font-family:'IBM Plex Mono'; font-size:10.5px; color:var(--green);
    background:rgba(52,211,153,0.1); border:1px solid rgba(52,211,153,0.28); padding:3px 9px; border-radius:20px;
  }
  .live-pill .dot{width:5px; height:5px; border-radius:50%; background:var(--green); animation:pulse 2s infinite;}
  .live-pill.down{color:var(--text-faint); background:rgba(91,95,104,0.12); border-color:var(--border);}
  .live-pill.down .dot{background:var(--text-faint); animation:none;}
  @keyframes pulse{0%,100%{opacity:1;} 50%{opacity:.35;}}

  .p-ticker{
    border:1px solid var(--border); border-radius:9px; overflow:hidden; margin-bottom:14px;
    background:var(--bg-2);
  }
  .p-ticker-track{display:flex; gap:22px; padding:8px 14px; white-space:nowrap; width:max-content; animation:tick 22s linear infinite;}
  @keyframes tick{from{transform:translateX(0);} to{transform:translateX(-50%);}}
  .p-ticker-item{font-family:'IBM Plex Mono'; font-size:11px; color:var(--text-muted);}
  .p-ticker-item b{color:var(--text); font-weight:500;}
  .up{color:var(--green);} .down{color:var(--red);}

  .p-stats{display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-bottom:14px;}
  .p-stat{background:var(--bg-2); border:1px solid var(--border); border-radius:9px; padding:12px 14px;}
  .p-stat .l{font-size:10.5px; color:var(--text-faint); margin-bottom:5px;}
  .p-stat .v{font-family:'IBM Plex Mono'; font-size:18px; font-weight:600;}

  .p-gauge-row{display:flex; align-items:center; gap:16px; background:var(--bg-2); border:1px solid var(--border); border-radius:9px; padding:12px 16px;}
  .p-gauge-legend{font-size:11px; color:var(--text-muted); display:flex; flex-direction:column; gap:4px;}
  .p-gauge-legend b{color:var(--text); font-family:'IBM Plex Mono'; font-weight:500;}

  #gaugeNeedleArc{stroke-dasharray:157; stroke-dashoffset:157; animation:sweep 1.4s cubic-bezier(.22,1,.36,1) .9s forwards;}
  @keyframes sweep{to{stroke-dashoffset:94;}}

  /* ---------- Section scaffolding ---------- */
  section{padding:90px 0; scroll-margin-top:88px;}
  .section-eyebrow{
    font-family:'IBM Plex Mono'; font-size:11.5px; color:var(--gold); letter-spacing:.04em; text-transform:uppercase;
    margin-bottom:12px;
  }
  .section-title{font-family:'Space Grotesk'; font-weight:600; font-size:clamp(24px,3vw,34px); letter-spacing:-0.015em; margin-bottom:14px; position:relative; display:inline-block; background-clip:text;}
  .section-title.shine{
    background-image:linear-gradient(100deg, var(--text) 40%, var(--gold) 50%, var(--text) 60%);
    background-size:250% 100%; background-position:100% 0; -webkit-background-clip:text; color:transparent;
    animation:titleShine 1.4s ease .1s 1;
  }
  @keyframes titleShine{from{background-position:160% 0;} to{background-position:-40% 0;}}
  .section-sub{color:var(--text-muted); font-size:15px; max-width:560px; line-height:1.6;}
  .section-head{margin-bottom:48px;}

  .reveal-delay-1{transition-delay:.08s;} .reveal-delay-2{transition-delay:.16s;} .reveal-delay-3{transition-delay:.24s;}
  .reveal-delay-4{transition-delay:.32s;} .reveal-delay-5{transition-delay:.4s;} .reveal-delay-6{transition-delay:.48s;}

  /* ---------- Features ---------- */
  .feature-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
  @media (max-width:900px){ .feature-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:620px){ .feature-grid{grid-template-columns:1fr;} }
  .feature-card{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
    padding:24px; transition:border-color .2s ease, transform .2s ease;
  }
  .feature-card:hover{border-color:rgba(198,255,61,0.4); transform:translateY(-3px);}
  .feature-icon{
    width:38px; height:38px; border-radius:9px; background:var(--gold-soft); border:1px solid rgba(198,255,61,0.3);
    display:flex; align-items:center; justify-content:center; font-size:16px; color:var(--gold); margin-bottom:16px;
  }
  .feature-card h3{font-family:'Space Grotesk'; font-size:16px; font-weight:600; margin-bottom:8px;}
  .feature-card p{font-size:13.5px; color:var(--text-muted); line-height:1.6;}

  /* ---------- How it works ---------- */
  .steps{display:grid; grid-template-columns:repeat(3,1fr); gap:0; position:relative;}
  @media (max-width:820px){ .steps{grid-template-columns:1fr; gap:28px;} }
  .step{position:relative; padding:0 22px;}
  .step:first-child{padding-left:0;}
  .step:last-child{padding-right:0;}
  .step-num{font-family:'IBM Plex Mono'; font-size:12px; color:var(--gold); margin-bottom:14px;}
  .step h3{font-family:'Space Grotesk'; font-size:17px; font-weight:600; margin-bottom:10px;}
  .step p{font-size:13.5px; color:var(--text-muted); line-height:1.6;}
  .step-line{
    position:absolute; top:8px; left:0; right:0; height:1px; background:var(--border); z-index:-1;
  }

  /* ---------- Comparison ---------- */
  .compare{
    background:var(--surface); border:1px solid var(--border); border-radius:16px; overflow:hidden;
  }
  .compare-row{display:grid; grid-template-columns:1.4fr 1fr 1fr; border-bottom:1px solid var(--border);}
  .compare-row:last-child{border-bottom:none;}
  .compare-row.head{background:var(--bg-2);}
  .compare-cell{padding:16px 20px; font-size:13.5px; display:flex; align-items:center; gap:8px;}
  .compare-row.head .compare-cell{font-family:'Space Grotesk'; font-weight:600; font-size:13px; color:var(--text-muted);}
  .compare-cell.label{color:var(--text-muted);}
  .compare-cell.yes{color:var(--green);}
  .compare-cell.no{color:var(--text-faint);}
  .compare-row.head .compare-cell.highlight{color:var(--gold);}

  /* ---------- Language callout ---------- */
  .lang-card{
    background:linear-gradient(135deg, var(--surface), var(--bg-2));
    border:1px solid var(--border); border-radius:16px; padding:40px; display:grid;
    grid-template-columns:1.1fr 0.9fr; gap:36px; align-items:center;
  }
  @media (max-width:820px){ .lang-card{grid-template-columns:1fr;} }
  .lang-chips{display:flex; flex-wrap:wrap; gap:8px;}
  .lang-chip{
    font-family:'IBM Plex Mono'; font-size:11.5px; color:var(--text-muted);
    border:1px solid var(--border); border-radius:20px; padding:6px 12px; background:var(--bg-2);
  }
  .lang-chip.he, .lang-chip.ar{color:var(--gold); border-color:rgba(198,255,61,0.35);}

  /* ---------- Pricing ---------- */
  .pricing-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
  .pricing-grid.two{grid-template-columns:repeat(2,1fr); gap:22px; max-width:840px; margin:0 auto;}
  @media (max-width:980px){ .pricing-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:560px){ .pricing-grid, .pricing-grid.two{grid-template-columns:1fr;} }

  .price-card{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:26px 22px;
    display:flex; flex-direction:column; transition:border-color .2s ease, transform .2s ease;
  }
  .price-card:hover{transform:translateY(-3px);}
  .price-card.featured{border-color:var(--gold); background:linear-gradient(180deg, rgba(198,255,61,0.06), var(--surface) 40%); position:relative;}
  .pricing-note{margin:22px auto 0; text-align:center; color:var(--muted); font-size:13px;}
  .price-badge{
    position:absolute; top:-11px; left:22px; background:var(--gold); color:#0B0F02;
    font-size:10.5px; font-weight:700; padding:3px 10px; border-radius:20px; font-family:'Space Grotesk';
  }
  .price-name{font-family:'Space Grotesk'; font-weight:600; font-size:15px; margin-bottom:6px;}
  .price-amount{font-family:'IBM Plex Mono'; font-size:28px; font-weight:600; margin-bottom:2px;}
  .price-amount span{font-size:13px; color:var(--text-faint); font-weight:400;}
  .price-accounts{font-size:12px; color:var(--text-faint); margin-bottom:18px;}
  .price-feats{list-style:none; font-size:12.5px; color:var(--text-muted); display:flex; flex-direction:column; gap:9px; margin-bottom:22px; flex:1;}
  .price-feats li{display:flex; gap:8px; align-items:flex-start;}
  .price-feats li:before{content:"✓"; color:var(--green); flex-shrink:0;}

  /* ---------- FAQ ---------- */
  .faq{max-width:760px;}
  .faq-item{border-bottom:1px solid var(--border); padding:22px 0;}
  .faq-q{
    display:flex; justify-content:space-between; align-items:center; cursor:pointer;
    font-family:'Space Grotesk'; font-size:15px; font-weight:600;
  }
  .faq-q .plus{color:var(--gold); font-size:18px; transition:transform .25s ease; flex-shrink:0; margin-left:20px;}
  .faq-item.open .faq-q .plus{transform:rotate(45deg);}
  .faq-a{
    max-height:0; overflow:hidden; transition:max-height .3s ease, margin-top .3s ease;
    font-size:13.5px; color:var(--text-muted); line-height:1.6;
  }
  .faq-item.open .faq-a{max-height:200px; margin-top:12px;}

  /* ---------- CTA ---------- */
  .cta-band{
    background:var(--surface); border:1px solid var(--border); border-radius:20px;
    padding:56px 44px; text-align:center; position:relative; overflow:hidden;
  }
  .cta-band:before{
    content:''; position:absolute; inset:0;
    background:radial-gradient(ellipse 500px 260px at 50% 0%, rgba(198,255,61,0.12), transparent 70%);
  }
  .cta-band h2{font-family:'Space Grotesk'; font-size:clamp(24px,3.4vw,34px); font-weight:600; margin-bottom:14px; position:relative;}
  .cta-band p{color:var(--text-muted); margin-bottom:28px; position:relative;}
  .cta-band .hero-actions{justify-content:center; position:relative;}

  /* ---------- Footer ---------- */
  footer{border-top:1px solid var(--border); padding:44px 0 34px;}
  .footer-inner{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px;}
  .footer-links{display:flex; gap:24px; font-size:12.5px; color:var(--text-faint); flex-wrap:wrap; justify-content:center;}
  .footer-links a:hover{color:var(--text-muted);}
  .footer-legal{gap:16px; font-size:12px;}
  .footer-risk{max-width:920px; margin:4px auto 0; text-align:center; font-size:11px; line-height:1.7; color:var(--text-faint); opacity:.85;}
  .footer-contact{width:100%; text-align:center; font-size:12px; color:var(--text-faint); margin-top:4px;}
  .footer-contact a{color:var(--text-muted); text-decoration:underline; text-underline-offset:2px;}
  .footer-contact a:hover{color:var(--text);}
  .footer-copy{font-size:12px; color:var(--text-faint);}


  /* ---------- Nav language switcher ---------- */
  .lang-switch{position:relative;}
  .lang-btn{
    display:flex; align-items:center; gap:6px; background:transparent; border:1px solid var(--border);
    color:var(--text-muted); font-family:'IBM Plex Mono'; font-size:12px; padding:7px 11px; border-radius:8px;
    cursor:pointer; transition:border-color .15s ease, color .15s ease;
  }
  .lang-btn:hover{border-color:var(--gold); color:var(--gold);}
  .lang-btn .caret{font-size:9px; opacity:.7;}
  .lang-menu{
    position:absolute; top:calc(100% + 8px); left:0; min-width:190px; max-height:320px; overflow-y:auto;
    background:var(--surface); border:1px solid var(--border); border-radius:10px; padding:6px;
    box-shadow:0 20px 50px -12px rgba(0,0,0,0.6);
    opacity:0; pointer-events:none; transform:translateY(-6px);
    transition:opacity .15s ease, transform .15s ease;
    z-index:60;
  }
  html[dir="rtl"] .lang-menu{left:auto; right:0;}
  .lang-menu.open{opacity:1; pointer-events:auto; transform:translateY(0);}
  .lang-option{
    display:block; width:100%; text-align:left; background:none; border:none; color:var(--text-muted);
    font-size:13px; padding:8px 10px; border-radius:6px; cursor:pointer;
  }
  html[dir="rtl"] .lang-option{text-align:right;}
  .lang-option:hover{background:var(--surface-2); color:var(--text);}
  .lang-option.active{color:var(--gold);}

  @media (max-width:560px){
    .nav-inner{padding:14px 18px; gap:10px;}
    .nav-cta{gap:8px;}
    .lang-switch{margin-left:2px;}
    .lang-btn{padding:6px 9px; font-size:11px;}
    .lang-menu{left:0; right:auto; min-width:150px;}
    html[dir="rtl"] .lang-menu{left:auto; right:0;}
  }

  /* ---------- Modal ---------- */
  .modal-overlay{
    position:fixed; inset:0; z-index:100; background:rgba(5,6,7,0.7);
    backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
    display:flex; align-items:center; justify-content:center; padding:20px;
    opacity:0; pointer-events:none; transition:opacity .2s ease;
  }
  .modal-overlay.open{opacity:1; pointer-events:auto;}
  .modal-box{
    background:var(--surface); border:1px solid var(--border); border-radius:16px;
    width:100%; max-width:400px; padding:30px 28px;
    transform:translateY(14px) scale(.97); transition:transform .25s cubic-bezier(.16,1,.3,1);
    box-shadow:0 40px 100px -20px rgba(0,0,0,0.7);
  }
  .modal-overlay.open .modal-box{transform:translateY(0) scale(1);}
  .modal-head{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:6px;}
  .modal-title{font-family:'Space Grotesk'; font-size:19px; font-weight:600;}
  .modal-close{background:none; border:none; color:var(--text-faint); font-size:20px; cursor:pointer; line-height:1; padding:2px;}
  .modal-close:hover{color:var(--text);}
  .modal-sub{font-size:13px; color:var(--text-muted); margin-bottom:22px;}
  .modal-field{margin-bottom:14px;}
  .modal-field label{display:block; font-size:12.5px; color:var(--text-muted); margin-bottom:6px;}
  .modal-field input{
    width:100%; background:var(--bg-2); border:1px solid var(--border); border-radius:8px;
    padding:10px 12px; color:var(--text); font-size:13.5px; font-family:'Inter';
  }
  .modal-field input:focus{outline:none; border-color:var(--gold);}
  .modal-plan-note{
    font-size:12px; color:var(--gold); background:var(--gold-soft); border:1px solid rgba(198,255,61,0.3);
    border-radius:8px; padding:8px 12px; margin-bottom:16px;
  }
  .modal-submit{width:100%; margin-top:6px;}
  .modal-switch{text-align:center; font-size:12.5px; color:var(--text-faint); margin-top:18px;}
  .modal-switch button{background:none; border:none; color:var(--gold); cursor:pointer; font-size:12.5px; padding:0;}
  .modal-success{text-align:center; padding:10px 0 4px;}
  .modal-success .icon{
    width:44px; height:44px; border-radius:50%; background:rgba(52,211,153,0.12); border:1px solid rgba(52,211,153,0.35);
    display:flex; align-items:center; justify-content:center; margin:0 auto 16px; font-size:20px; color:var(--green);
  }
  .modal-success h3{font-family:'Space Grotesk'; font-size:16px; margin-bottom:8px;}
  .modal-success p{font-size:13px; color:var(--text-muted); line-height:1.6;}
  .modal-error{font-size:12px; color:var(--red); margin-top:-6px; margin-bottom:12px; display:none;}
  .modal-error.show{display:block;}

  /* ---------- Live-price key popover ---------- */
  .key-popover{
    position:absolute; z-index:70; width:270px;
    background:var(--surface); border:1px solid var(--border); border-radius:12px;
    padding:16px; box-shadow:0 20px 50px -12px rgba(0,0,0,0.6);
    opacity:0; pointer-events:none; transform:translateY(-6px);
    transition:opacity .15s ease, transform .15s ease;
  }
  .key-popover.open{opacity:1; pointer-events:auto; transform:translateY(0);}
  .key-popover h4{font-family:'Space Grotesk'; font-size:13.5px; margin-bottom:6px;}
  .key-popover p{font-size:11.5px; color:var(--text-muted); line-height:1.5; margin-bottom:10px;}
  .key-popover a{color:var(--gold); text-decoration:underline;}
  .key-popover input{
    width:100%; background:var(--bg-2); border:1px solid var(--border); border-radius:7px;
    padding:8px 10px; color:var(--text); font-size:12.5px; font-family:'IBM Plex Mono'; margin-bottom:10px;
  }
  .key-popover input:focus{outline:none; border-color:var(--gold);}
  .key-popover .row{display:flex; gap:8px;}
  .key-popover .row .btn{flex:1; padding:7px 10px; font-size:12px;}
  .key-popover .remove-key{
    display:block; margin-top:9px; font-size:11px; color:var(--text-faint); background:none; border:none; cursor:pointer; text-decoration:underline;
  }

  /* ---------- Custom cursor glow ---------- */
  #cursorDot{
    position:fixed; top:0; left:0; width:8px; height:8px; border-radius:50%;
    background:var(--gold); pointer-events:none; z-index:150; mix-blend-mode:difference;
    transform:translate(-50%,-50%); transition:width .2s ease, height .2s ease, opacity .2s ease;
  }
  #cursorRing{
    position:fixed; top:0; left:0; width:34px; height:34px; border-radius:50%;
    border:1px solid rgba(198,255,61,0.5); pointer-events:none; z-index:150;
    transform:translate(-50%,-50%); transition:width .25s ease, height .25s ease, border-color .25s ease, opacity .3s ease;
  }
  body.has-cursor{cursor:none;}
  body.has-cursor a, body.has-cursor button{cursor:none;}
  @media (hover:none){ #cursorDot, #cursorRing{display:none;} }

  /* ---------- Featured pricing card glow pulse ---------- */
  .price-card.featured{position:relative;}
  .price-card.featured::before{
    content:''; position:absolute; inset:-1px; border-radius:inherit; z-index:-1;
    background:linear-gradient(135deg, var(--gold), transparent 40%, transparent 60%, var(--gold));
    opacity:0; transition:opacity .4s ease; animation:borderPulse 3.5s ease-in-out infinite;
  }
  @keyframes borderPulse{0%,100%{opacity:.35;} 50%{opacity:.75;}}

  /* ---------- Split-text word reveal ---------- */
  .split-word{display:inline-block; opacity:0; transform:translateY(0.4em) rotate(2deg); filter:blur(4px);
    transition:opacity .6s cubic-bezier(.16,1,.3,1), transform .6s cubic-bezier(.16,1,.3,1), filter .6s cubic-bezier(.16,1,.3,1);}
  .split-word.in{opacity:1; transform:translateY(0) rotate(0deg); filter:blur(0);}

  /* ---------- Hero parallax layers ---------- */
  .parallax-slow{will-change:transform;}

  /* ---------- Live Markets section ---------- */
  .markets-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
  @media (max-width:900px){ .markets-grid{grid-template-columns:repeat(2,1fr);} }
  .market-card{
    background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:20px;
    position:relative; overflow:hidden; transition:border-color .2s ease, transform .2s ease;
  }
  .market-card:hover{transform:translateY(-3px);}
  .market-card.up:hover{border-color:rgba(52,211,153,0.4);}
  .market-card.down:hover{border-color:rgba(248,113,113,0.35);}
  .market-icon{
    width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    font-family:'Space Grotesk'; font-weight:700; font-size:14px; margin-bottom:14px; position:relative; z-index:1;
  }
  .market-icon.btc{background:radial-gradient(circle at 30% 30%, #FFC876, #E8830A); color:#3A1E00;}
  .market-icon.xau{background:radial-gradient(circle at 30% 30%, #FFE28A, #C6971A); color:#3A2A00;}
  .market-icon.eth{background:radial-gradient(circle at 30% 30%, #C9BBFF, #6B5CE0); color:#fff;}
  .market-icon.fx{background:radial-gradient(circle at 30% 30%, #9BDEFF, #2563EB); color:#fff;}
  .market-name{font-size:12.5px; color:var(--text-muted); position:relative; z-index:1;}
  .market-price{font-family:'IBM Plex Mono'; font-size:19px; font-weight:600; margin-top:3px; position:relative; z-index:1;}
  .market-change{font-family:'IBM Plex Mono'; font-size:12px; margin-top:2px; position:relative; z-index:1;}
  .market-change.up{color:var(--green);}
  .market-change.down{color:var(--red);}
  .market-spark{width:100%; height:44px; margin-top:12px; display:block; position:relative; z-index:1;}
  .market-glow{position:absolute; inset:0; opacity:0; transition:opacity .3s ease; pointer-events:none;}
  .market-card.up .market-glow{background:radial-gradient(circle at 50% 120%, rgba(52,211,153,0.16), transparent 70%);}
  .market-card.down .market-glow{background:radial-gradient(circle at 50% 120%, rgba(248,113,113,0.13), transparent 70%);}
  .market-card:hover .market-glow{opacity:1;}