  :root{
    --bg:#fff;
    --bg-soft:#f5f5f7;
    --black:#000;
    --ink:#1d1d1f;
    --ink-soft:#6e6e73;
    --ink-inv:#f5f5f7;
    --ink-inv-soft:#a1a1a6;
    --accent:#3457ff;
    --accent2:#7d92ff;
    --coral:#ff6b4a;
    --mint:#30d158;
    --gold:#ffb020;
    --line:#d2d2d7;
    --sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Helvetica,Arial,sans-serif;
    --mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:var(--sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1040px;margin:0 auto;padding:0 22px;}
  .center{text-align:center;}

  /* ---------- type ---------- */
  .t-hero{font-size:clamp(42px,11vw,96px);line-height:1.02;font-weight:700;letter-spacing:-.035em;}
  .t-xl{font-size:clamp(32px,8vw,72px);line-height:1.04;font-weight:700;letter-spacing:-.03em;}
  .t-lg{font-size:clamp(26px,6.4vw,52px);line-height:1.08;font-weight:700;letter-spacing:-.025em;}
  .t-md{font-size:clamp(20px,4.6vw,30px);line-height:1.2;font-weight:600;letter-spacing:-.015em;}
  .t-sub{font-size:clamp(16px,4.2vw,21px);line-height:1.45;color:var(--ink-soft);font-weight:400;}
  .dark .t-sub{color:var(--ink-inv-soft);}
  .t-eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
  .shimmer{background-size:200% 100%;animation:shimmer 5s ease-in-out infinite alternate;}
  @keyframes shimmer{from{background-position:0% 50%;}to{background-position:100% 50%;}}
  .grad-blue{background-image:linear-gradient(95deg,#3457ff,#8a5cff 45%,#b96bff 70%,#3457ff);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .grad-warm{background-image:linear-gradient(95deg,#ff6b4a,#ff9d3f 45%,#ffd60a 70%,#ff6b4a);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .grad-mint{background-image:linear-gradient(95deg,#30d158,#5be3a0 55%,#30d158);-webkit-background-clip:text;background-clip:text;color:transparent;}

  /* ---------- header + progress ---------- */
  header{position:fixed;top:0;left:0;right:0;z-index:500;background:rgba(255,255,255,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.07);transition:background .3s,border-color .3s;}
  header.on-dark{background:rgba(0,0,0,.65);border-bottom:1px solid rgba(255,255,255,.1);}
  .navbar{display:flex;align-items:center;justify-content:space-between;max-width:1040px;margin:0 auto;padding:0 22px;height:50px;}
  .brand-logo{height:20px;}
  .logo{font-size:16px;font-weight:700;letter-spacing:-.02em;display:flex;align-items:center;gap:8px;}
  .logo svg{width:21px;height:21px;flex:0 0 auto;}
  header.on-dark .logo{color:var(--ink-inv);}
  header.on-dark .logo img{filter:brightness(0) invert(1);}
  .nav-right{display:flex;align-items:center;gap:4px;}
  .nav-cta{font-size:12.5px;font-weight:600;background:var(--accent);color:#fff;padding:6px 10px;border-radius:980px;transition:background .15s;}
  .nav-cta:hover{background:#2540d1;}
  .burger{width:34px;height:34px;border:none;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;}
  .burger span{display:block;width:17px;height:1.6px;background:var(--ink);border-radius:2px;transition:transform .3s,opacity .3s;}
  header.on-dark .burger span{background:#fff;}
  body.menu-open .burger span:nth-child(1){transform:translateY(6.6px) rotate(45deg);}
  body.menu-open .burger span:nth-child(2){opacity:0;}
  body.menu-open .burger span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg);}
  #progress{position:fixed;top:50px;left:0;height:2.5px;width:0;z-index:501;background:linear-gradient(90deg,#3457ff,#b96bff,#ff6b4a);border-radius:0 3px 3px 0;}
  .menu{position:fixed;inset:0;z-index:490;background:rgba(255,255,255,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;flex-direction:column;justify-content:center;padding:0 34px;gap:8px;opacity:0;pointer-events:none;transition:opacity .3s;}
  body.menu-open .menu{opacity:1;pointer-events:auto;}
  .menu a{font-size:clamp(26px,7vw,40px);font-weight:700;letter-spacing:-.025em;padding:8px 0;opacity:0;transform:translateY(14px);transition:opacity .4s,transform .4s;}
  body.menu-open .menu a{opacity:1;transform:none;}
  .menu a:nth-child(2){transition-delay:.05s;} .menu a:nth-child(3){transition-delay:.1s;} .menu a:nth-child(4){transition-delay:.15s;} .menu a:nth-child(5){transition-delay:.2s;}
  .menu a span{color:var(--ink-soft);font-size:14px;display:block;font-weight:500;letter-spacing:0;}

  /* ---------- placeholders (ratio always matches label) ---------- */
  .ph{position:relative;border-radius:18px;overflow:hidden;min-height:0;background:
      repeating-linear-gradient(45deg,rgba(52,87,255,.05) 0 14px,rgba(52,87,255,.1) 14px 28px),
      linear-gradient(160deg,#eef1ff,#f7f8ff);
      border:1.5px dashed #aab6ff;display:flex;align-items:end;justify-content:end;}
  .dark .ph,.gcard .ph{background:repeating-linear-gradient(45deg,rgba(125,146,255,.06) 0 14px,rgba(125,146,255,.12) 14px 28px),linear-gradient(160deg,#101223,#171a30);border-color:#3b4470;}
  .ph .ph-tag{background:rgba(255,255,255,.93);border:1px solid #c9d2ff;color:#2c3cb8;font-family:var(--mono);font-size:10.5px;line-height:1.5;padding:9px 13px;border-radius:10px;max-width:88%;text-align:center;box-shadow:0 8px 24px -10px rgba(20,30,120,.25);}
  .dark .ph .ph-tag,.gcard .ph .ph-tag{background:rgba(10,12,26,.9);border-color:#3b4470;color:#9fb0ff;}
  .ph .ph-tag b{display:block;font-size:11.5px;margin-bottom:2px;letter-spacing:.04em;}
  .ph-1610{aspect-ratio:16/10;}
  .ph-149{aspect-ratio:14/9;}
  .ph-43{aspect-ratio:4/3;}
  .ph-phone{aspect-ratio:1080/2200;}
  .ph-bg{background-color:#FFFFFF !important;background-size:cover !important;background-repeat:no-repeat !important;border:2px dashed #F3EAFF !important;}

  .frame-browser{background:#0d0d10;border-radius:16px;padding:10px 10px 0;box-shadow:0 40px 90px -30px rgba(0,0,0,.4);}
  .frame-browser .fb-bar{display:flex;gap:6px;padding:2px 4px 10px;}
  .frame-browser .fb-bar i{width:9px;height:9px;border-radius:50%;background:#3a3a40;}
  .frame-browser .fb-bar i:nth-child(1){background:#ff5f57;} .frame-browser .fb-bar i:nth-child(2){background:#febc2e;} .frame-browser .fb-bar i:nth-child(3){background:#28c840;}
  .frame-browser .ph{border-radius:8px 8px 0 0;border-bottom:none;}
  .frame-phone{width:min(250px,64vw);margin:0 auto;background:#0d0d10;border-radius:44px;padding:9px;box-shadow:0 40px 90px -30px rgba(0,0,0,.45);position:relative;}
  .frame-phone:after{content:"";position:absolute;top:15px;left:50%;transform:translateX(-50%);width:30%;height:18px;background:#0d0d10;border-radius:14px;z-index:3;}
  .frame-phone .ph{border-radius:36px;}

  /* ---------- reveals ---------- */
  .rv{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
  .rv.in{opacity:1;transform:none;}
  .rv-d1{transition-delay:.08s;} .rv-d2{transition-delay:.16s;}

  /* ---------- hero ---------- */
  .hero{padding:118px 22px 0;text-align:center;position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f2f4ff 100%);}
  .aurora{position:absolute;inset:-20% -10%;pointer-events:none;filter:blur(70px);opacity:.55;z-index:0;}
  .aur{position:absolute;border-radius:50%;will-change:transform;}
  .aur1{width:46vw;min-width:300px;aspect-ratio:1;background:radial-gradient(circle at 35% 35%,#5b74ff,transparent 65%);top:0;left:-6%;animation:drift1 16s ease-in-out infinite alternate;}
  .aur2{width:38vw;min-width:260px;aspect-ratio:1;background:radial-gradient(circle at 60% 40%,#ff8a66,transparent 65%);top:12%;right:-8%;animation:drift2 20s ease-in-out infinite alternate;}
  .aur3{width:30vw;min-width:220px;aspect-ratio:1;background:radial-gradient(circle,#5be3a066,transparent 65%);bottom:-6%;left:30%;animation:drift1 24s ease-in-out infinite alternate-reverse;}
  @keyframes drift1{from{transform:translate(0,0) scale(1);}to{transform:translate(5vw,4vh) scale(1.12);}}
  @keyframes drift2{from{transform:translate(0,0) scale(1);}to{transform:translate(-4vw,6vh) scale(.9);}}
  .hero-inner{position:relative;z-index:2;}
  .hero .t-eyebrow{color:var(--accent);margin-bottom:14px;}
  .hero .t-sub{max-width:560px;margin:18px auto 0;}
  .hero-ctas{display:flex;gap:12px;justify-content:center;margin-top:28px;flex-wrap:wrap;}
  .btn{display:inline-block;font-size:16px;font-weight:500;padding:13px 26px;border-radius:980px;transition:transform .15s,background .15s,box-shadow .15s;}
  .btn-fill{background:var(--accent);color:#fff;box-shadow:0 10px 28px -10px rgba(52,87,255,.55);animation:btnGlow 3.4s ease-in-out infinite;}
  .btn-fill:hover{background:#2540d1;transform:translateY(-1px);}
  @keyframes btnGlow{0%,100%{box-shadow:0 10px 28px -10px rgba(52,87,255,.5);}50%{box-shadow:0 12px 36px -8px rgba(52,87,255,.85);}}
  .btn-line{color:var(--accent);}
  .btn-line:hover{text-decoration:underline;}
  .btn-white{background:#fff;color:#000;}
  .btn-white:hover{transform:translateY(-1px);}
  .trust-line{margin-top:22px;font-size:12.5px;color:var(--ink-soft);letter-spacing:.02em;}
  .trust-line b{color:var(--ink);font-weight:600;}
  .hero-shot{max-width:940px;margin:44px auto -2px;position:relative;z-index:2;will-change:transform;}

  /* ---------- sections ---------- */
  section{padding:86px 0;}
  .dark{background:var(--black);color:var(--ink-inv);}
  .soft{background:var(--bg-soft);}
  .sec-head{max-width:720px;margin:0 auto 40px;padding:0 22px;text-align:center;}
  .sec-head .t-eyebrow{margin-bottom:12px;display:block;}
  .sec-head.left{max-width:1040px;text-align:left;margin-bottom:10px;}

  /* ---------- NEET ---------- */
  .neet{padding:110px 0 96px;position:relative;overflow:hidden;}
  .neet .halo{position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:120vw;height:70vh;background:radial-gradient(50% 60% at 50% 40%,rgba(255,120,70,.3),transparent 70%);pointer-events:none;animation:haloPulse 5s ease-in-out infinite;}
  @keyframes haloPulse{0%,100%{opacity:.75;transform:translateX(-50%) scale(1);}50%{opacity:1;transform:translateX(-50%) scale(1.08);}}
  .live-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,107,74,.12);border:1px solid rgba(255,107,74,.4);color:#ff9d84;font-size:12.5px;font-weight:700;letter-spacing:.08em;padding:7px 15px;border-radius:980px;margin-bottom:18px;}
  .live-badge .pulse{width:8px;height:8px;border-radius:50%;background:var(--coral);position:relative;}
  .live-badge .pulse:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--coral);animation:ring 1.6s ease-out infinite;}
  @keyframes ring{from{transform:scale(.5);opacity:1;}to{transform:scale(1.8);opacity:0;}}
  .neet-count{display:flex;justify-content:center;gap:clamp(14px,5vw,40px);margin:34px 0 8px;}
  .neet-count .nc b{font-size:clamp(34px,9vw,64px);font-weight:800;letter-spacing:-.03em;display:block;font-variant-numeric:tabular-nums;}
  .neet-count .nc span{font-size:11px;color:var(--ink-inv-soft);letter-spacing:.1em;text-transform:uppercase;}
  .neet-shot{max-width:880px;margin:40px auto 0;padding:0 22px;}
  .neet .cta-row{margin-top:34px;display:flex;justify-content:center;gap:14px;flex-wrap:wrap;}

  /* ---------- marquee ---------- */
  .marquee{background:var(--black);color:#3f3f48;padding:0 0 74px;overflow:hidden;white-space:nowrap;}
  .mq-track{display:inline-block;animation:mq 28s linear infinite;font-size:clamp(20px,3.2vw,34px);font-weight:700;letter-spacing:-.02em;}
  .mq-track span{margin:0 22px;}
  .mq-track .hl{color:#fff;}
  @keyframes mq{from{transform:translateX(0);}to{transform:translateX(-50%);}}

  /* ---------- mascot icon system ---------- */
  .mi{width:52px;height:52px;flex:0 0 auto;position:relative;}
  .mi svg{width:100%;height:100%;overflow:visible;}
  .bot .eyeL,.bot .eyeR{transition:transform .25s;transform-box:fill-box;transform-origin:50% 50%;}
  .blink .eyeL,.blink .eyeR{transform:scaleY(.15);}
  .mi .badge{transform:scale(0);transform-box:fill-box;transform-origin:50% 50%;}
  .rv.in .mi .badge{animation:pop .5s cubic-bezier(.34,1.56,.64,1) .2s forwards;}
  @keyframes pop{to{transform:scale(1);}}
  .mi .antenna-ball,.aud-bot .antenna-ball,.cta-bot .antenna-ball{animation:antennaPulse 2.4s ease-in-out infinite;}
  @keyframes antennaPulse{0%,100%{opacity:1;}50%{opacity:.4;}}

  /* ---------- audience ---------- */
  .aud-block{max-width:1040px;margin:0 auto;padding:0 22px;}
  .aud-block + .aud-block{margin-top:74px;}
  .aud-head{display:flex;align-items:center;gap:16px;margin-bottom:26px;}
  .aud-head .aud-bot{width:64px;flex:0 0 auto;animation:botFloat 4.5s ease-in-out infinite;}
  .aud-head .t-eyebrow{display:block;margin-bottom:4px;}
  .aud-head h2{font-size:clamp(24px,5.6vw,40px);font-weight:700;letter-spacing:-.022em;line-height:1.08;}
  .aud-head-top {margin-bottom:26px;margin-right:26px;}
  .flist{display:flex;flex-direction:column;gap:16px;}
  .frow{background:#fff;border:1px solid #ebebf0;border-radius:22px;padding:26px 22px;display:flex;flex-direction:column;gap:14px;box-shadow:0 14px 40px -24px rgba(0,0,0,.12);transition:transform .3s,box-shadow .3s;}
  .frow:hover{transform:translateY(-4px);box-shadow:0 24px 50px -24px rgba(0,0,0,.18);}
  .frow:active{transform:scale(.985);}
  .frow .fhead{display:flex;align-items:center;gap:14px;}
  .frow h3{font-size:19px;font-weight:600;letter-spacing:-.012em;}
  .frow p{font-size:15px;color:var(--ink-soft);line-height:1.5;}
  @media(min-width:760px){
    .flist{display:grid;grid-template-columns:1fr 1fr;}
    .frow.wide{grid-column:span 2;flex-direction:row;align-items:center;gap:28px;}
    .frow.wide .fcopy{flex:1;}
    .frow.wide .fmedia{flex:1.1;}
    .frow.wide .fmedia.fmedia-phone{flex:0 0 auto;}
  }

  /* ---------- Apple-style paddle slider (native scroll = perfect touch) ---------- */
  .slider-sec{padding:86px 0 72px;}
  .slider{
    /* fallback values; JS sets exact px from the scrollport's real width */
    --gutter:22px;--edge:6px;
    overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;
    /* NOTE: deliberately NOT scroll-padding — Safari folds scroll-padding into the
       scrollable area, which doubled the space after the last card. scroll-margin on
       the snap targets shifts the snap position without touching scrollWidth. */
    scroll-behavior:smooth;
    overscroll-behavior-x:contain;
    scrollbar-width:none;-ms-overflow-style:none;
    padding:20px 0 24px;
    cursor:grab;
  }
  .slider::-webkit-scrollbar{display:none;}
  .slider.grabbing{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;}
  /* No padding + no max-content: Safari double-counts padding under max-content sizing
     with border-box, which added a phantom gutter of dead space after the last card.
     Identical spacer elements at both ends give exact symmetry in every browser. */
  .slider-track{display:flex;gap:16px;}
  .slider-edge{flex:0 0 var(--edge);}       /* --edge + the 16px gap == --gutter */
  .slider-edge.is-end{scroll-snap-align:end;}
  .gcard{flex:0 0 min(84vw,400px);scroll-snap-align:start;scroll-margin-left:var(--gutter);background:#101014;color:var(--ink-inv);border-radius:26px;overflow:hidden;display:flex;flex-direction:column;border:1px solid #232329;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,background .35s;}
  /* Hover stays entirely INSIDE the card's own box. An outward drop shadow is always
     at the mercy of the scroll container's clip, and in Safari it bled onto the
     paddles. An inset highlight + lighter surface reads as raised with nothing to clip. */
  .gcard:hover{transform:translateY(-4px);background:#16161d;border-color:#3a3a46;box-shadow:inset 0 1px 0 rgba(255,255,255,.09);}
  .gcard .ph{border-radius:0;border:none;border-bottom:1.5px dashed #3b4470;}
  .gcard .gtxt{padding:22px;display:flex;flex-direction:column;gap:8px;}
  .gcard .gk{font-size:12px;font-weight:700;letter-spacing:.1em;}
  .gcard h3{font-size:21px;font-weight:700;letter-spacing:-.015em;}
  .gcard p{font-size:14.5px;color:var(--ink-inv-soft);line-height:1.5;}
  /* sits above the slider box so a hover shadow can never bleed onto the paddles */
  .slider-nav{position:relative;z-index:3;max-width:1040px;margin:22px auto 0;padding:0 22px;display:flex;align-items:center;justify-content:flex-end;}
  .paddles{display:flex;gap:10px;}
  .paddle{width:42px;height:42px;border-radius:50%;border:none;background:#e8e8ed;cursor:pointer;color:var(--ink);display:flex;align-items:center;justify-content:center;transition:background .2s,transform .15s,opacity .2s;}
  .paddle svg{width:15px;height:15px;}
  .paddle:hover{background:#dcdce2;transform:scale(1.06);}
  .paddle:disabled{opacity:.35;cursor:default;transform:none;background:#e8e8ed;}

  /* ---------- offline spotlight ---------- */
  .offline .t-eyebrow{color:var(--mint);}
  .offline-shot{max-width:880px;margin:40px auto 0;padding:0 22px;}
  .india-first{display:inline-flex;align-items:center;gap:8px;background:rgba(48,209,88,.12);border:1px solid rgba(48,209,88,.35);color:#5be3a0;font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:980px;margin-bottom:18px;position:relative;}
  .india-first:after{content:"";position:absolute;inset:-3px;border-radius:980px;border:1px solid rgba(48,209,88,.4);animation:ringSoft 2.4s ease-out infinite;}
  @keyframes ringSoft{from{transform:scale(.98);opacity:1;}to{transform:scale(1.12);opacity:0;}}

  /* ---------- stats ---------- */
  .stats{padding:90px 22px;}
  .stat-grid{display:grid;grid-template-columns:1fr;gap:34px;max-width:900px;margin:0 auto;text-align:center;}
  @media(min-width:640px){.stat-grid{grid-template-columns:repeat(2,1fr);}}
  .stat .n{font-size:clamp(44px,10vw,76px);font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;background-image:linear-gradient(180deg,#fff,#9aa8ff);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .stat .l{font-size:14px;color:var(--ink-inv-soft);margin-top:4px;}

  /* ---------- clients ---------- */
  .clients{padding:70px 0;}
  .logo-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:900px;margin:0 auto;padding:0 22px;}
  @media(min-width:640px){.logo-row{grid-template-columns:repeat(3,1fr);}}
  .logo-ph{aspect-ratio:5/2;border-radius:14px;background:#fff;border:1.5px dashed #c9c9d4;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;color:#8a8a94;text-align:center;padding:8px;line-height:1.5;}
  .logo-ph-bg{background-size: contain;background-repeat: no-repeat;background-position: center;}

  /* ---------- founders ---------- */
  .founders .fgrid{display:grid;grid-template-columns:1fr;gap:16px;max-width:820px;margin:0 auto;padding:0 22px;}
  @media(min-width:640px){.founders .fgrid{grid-template-columns:1fr 1fr;}}
  .fcard{background:#fff;border:1px solid #ebebf0;border-radius:22px;padding:24px;display:flex;gap:16px;align-items:flex-start;transition:transform .3s,box-shadow .3s;}
  .fcard:hover{transform:translateY(-4px);box-shadow:0 24px 50px -24px rgba(0,0,0,.16);}
  .fcard .fph{width:74px;height:74px;border-radius:50%;flex:0 0 auto;border:1.5px dashed #aab6ff;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:8.5px;color:#2c3cb8;text-align:center;line-height:1.35;}
  .fph-bg{background-size: cover;background-repeat: no-repeat;background-position: center;}
  .fcard h3{font-size:17px;font-weight:700;letter-spacing:-.01em;}
  .fcard .fr{font-size:12.5px;color:var(--accent);font-weight:600;margin:2px 0 6px;}
  .fcard p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;}

  /* ---------- CTA ---------- */
  .cta{padding:100px 22px;text-align:center;background:radial-gradient(120% 100% at 50% 0%,#141a3f 0%,#000 62%);color:var(--ink-inv);position:relative;overflow:hidden;}
  .cta .aurora{opacity:.3;}
  .cta .t-sub{max-width:460px;margin:16px auto 0;}
  .cta-inner{position:relative;z-index:2;}
  form.contact{max-width:400px;margin:36px auto 0;display:flex;flex-direction:column;gap:11px;}
  form.contact input{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff;padding:14px 16px;border-radius:13px;font-size:15px;font-family:var(--sans);outline:none;transition:border-color .15s;}
  form.contact input::placeholder{color:var(--ink-inv-soft);}
  form.contact input:focus{border-color:var(--accent);}
  form.contact button{margin-top:4px;background:var(--accent);color:#fff;border:none;padding:15px 16px;border-radius:13px;font-size:15px;font-weight:600;cursor:pointer;font-family:var(--sans);transition:background .15s;}
  form.contact button:hover{background:#2540d1;}
  form.contact button:disabled{opacity:.6;cursor:default;}
  .form-msg{font-size:13.5px;line-height:1.5;min-height:1px;}
  .form-msg-success{color:#5be3a0;}
  .form-msg-error{color:#ff9d84;}
  .wa-row{margin-top:16px;font-size:14px;color:var(--ink-inv-soft);}
  .wa-btn{display:inline-flex;align-items:center;gap:9px;background:#1fb355;color:#fff;font-weight:600;font-size:15px;padding:13px 24px;border-radius:980px;margin-top:10px;transition:transform .15s,background .15s;}
  .wa-btn svg{width:19px;height:19px;}
  .wa-btn:hover{background:#189a48;transform:translateY(-1px);}
  .cta-bot{width:104px;margin:0 auto 22px;animation:botFloat 4.5s ease-in-out infinite;}
  @keyframes botFloat{0%,100%{transform:translateY(0) rotate(-1.5deg);}50%{transform:translateY(-12px) rotate(1.5deg);}}
  .bot .armL{transform-box:fill-box;transform-origin:95% 15%;} .bot .armR{transform-box:fill-box;transform-origin:5% 15%;}
  .pose-wave .armR{transform:rotate(-55deg);} .pose-wave .armL{transform:rotate(-8deg);}

  footer{padding:44px 22px 104px;background:#000;color:var(--ink-inv-soft);font-size:12.5px;border-top:1px solid rgba(255,255,255,.08);}
  footer .wrap{display:flex;flex-direction:column;gap:14px;padding:0;}
  footer .flinks{display:flex;gap:16px;flex-wrap:wrap;}
  footer .flinks a:hover{color:#fff;}
  footer .fbottom{display:flex;flex-direction:column;gap:8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);}

  /* ---------- mobile bottom bar ---------- */
  .bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:480;background:rgba(255,255,255,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -10px 30px rgba(0,0,0,.07);padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:flex;gap:10px;transform:translateY(110%);transition:transform .35s ease;}
  .bottom-bar.show{transform:none;}
  .bottom-bar a{height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:15.5px;font-weight:600;letter-spacing:-.01em;}
  .bottom-bar svg{width:21px;height:21px;flex:0 0 auto;}
  .bb-demo{flex:1;gap:9px;background:var(--accent);color:#fff;box-shadow:0 8px 20px -8px rgba(52,87,255,.5);}
  .bb-demo:active{transform:scale(.97);}
  .bb-wa{width:50px;flex:0 0 auto;background:#22c15e;color:#fff;box-shadow:0 8px 20px -8px rgba(34,193,94,.5);}
  .bb-wa:active{transform:scale(.97);}
  @media(min-width:760px){.bottom-bar{display:none;}}

  /* ---------- legal / static content pages ---------- */
  .general-content{padding:130px 22px 100px;}
  .general-content .container{max-width:820px;margin:0 auto;padding:0;}
  .general-content .row{display:block;}
  .general-content h2{font-size:clamp(28px,5vw,40px);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin-bottom:8px;}
  .general-content h3{font-size:19px;font-weight:600;letter-spacing:-.01em;margin:28px 0 6px;}
  .general-content p{font-size:15.5px;line-height:1.7;color:var(--ink-soft);margin:0 0 14px;}
  .general-content p b{color:var(--ink);font-weight:600;}
  .general-content .num{font-weight:700;color:var(--ink);}
  .general-content ul{margin:0 0 14px 22px;padding:0;}
  .general-content li{font-size:15.5px;line-height:1.7;color:var(--ink-soft);margin-bottom:6px;}
  .general-content a.footer-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px;}
  .general-content a.footer-link:hover{color:#2540d1;}
  .general-content .pb-4{padding-bottom:1.5rem;}
  .general-content .mb-4{margin-bottom:1.5rem;}
  .general-content .mb-5{margin-bottom:3rem;}
  .general-content .pt-5{padding-top:3rem;}

  @media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
    *{animation:none!important;}
    .rv{opacity:1;transform:none;transition:none;}
    .rv.in .mi .badge{animation:none!important;transform:scale(1);}
    .mi .badge{transform:scale(1);}
    .slider{scroll-behavior:auto;}
    .bottom-bar{transition:none;}
    .hero-shot{transform:none!important;}
  }
  :focus-visible{outline:2px solid var(--accent);outline-offset:2px;}