    :root{
      --bg:#FFFFFF;--bg2:#F8FAFF;--bg3:#EEF2FF;
      --ink:#0F172A;
      /* A11Y FIX WCAG 1.4.3: --ink2 raised from .62 to .70 opacity → effective #565D72 on #FFF ≈ 5.0:1 (was ~3.9:1, failing 4.5:1) */
      --ink2:rgba(15,23,42,.70);
      /* A11Y TODO WCAG 1.4.3: --ink3 at .55 opacity → effective color ~3.4:1 on #FFF. Used on meta labels/tags (small text).
         Raise to .65+ or switch to #5E6577 for AA compliance on normal-size text. */
      --ink3:rgba(15,23,42,.55);
      --ink3-deco:rgba(15,23,42,.12);
      --v:#1D4ED8;--vd:#1E40AF;--vl:#3B82F6;
      --c:#6366F1;--cd:#4F46E5;
      --border:rgba(15,23,42,.08);--borderh:rgba(15,23,42,.16);
      --card:rgba(15,23,42,.03);--cardhov:rgba(15,23,42,.06);
      --gv:linear-gradient(135deg,#1D4ED8,#6366F1);
      --fh:'Space Grotesk',system-ui,sans-serif;--fb:'Inter',system-ui,sans-serif;
      --ease:cubic-bezier(.16,1,.3,1);
    }
    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
    html{font-size:16px}
    @media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
    body{background:var(--bg);color:var(--ink);font-family:var(--fb);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;font-feature-settings:'kern' 1,'liga' 1}
    a,button{text-decoration:none;color:inherit}
    ul,ol{list-style:none}
    img{display:block;width:100%;object-fit:cover}

    /* ── SKIP LINK ── */
    .skip-link{position:absolute;top:-100%;left:1rem;background:var(--v);color:#fff;padding:.75rem 1.25rem;border-radius:0 0 8px 8px;font-weight:600;font-size:.9375rem;z-index:10000;transition:top .2s}
    .skip-link:focus{top:0;outline:3px solid var(--c);outline-offset:2px}

    /* ── SCREEN READER ONLY ── */
    .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

    /* ── FOCUS VISIBLE ── */
    :focus-visible{outline:2px solid var(--v);outline-offset:3px;border-radius:3px}
    .nav-links a:focus-visible,.m-nav a:focus-visible{outline:2px solid var(--c);outline-offset:4px;border-radius:3px;color:#fff}
    .btn-primary:focus-visible,.btn-secondary:focus-visible,.nav-cta:focus-visible,.bsub:focus-visible{outline:3px solid var(--c);outline-offset:4px}
    .burger:focus-visible{outline:2px solid var(--c);outline-offset:4px;border-radius:4px}
    .fi:focus-visible,.fsel:focus-visible,.fta:focus-visible{outline:2px solid var(--v);outline-offset:2px;border-color:var(--v)}
    .fl-soc:focus-visible,.testi-dot:focus-visible{outline:2px solid var(--c);outline-offset:3px}

    /* ── CURSOR ── */
    #cur{position:fixed;width:10px;height:10px;background:var(--v);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);mix-blend-mode:multiply;box-shadow:0 0 12px var(--v),0 0 24px rgba(29,78,216,.4);transition:width .2s var(--ease),height .2s var(--ease)}
    #cur-r{position:fixed;width:38px;height:38px;border:1.5px solid rgba(29,78,216,.35);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .3s var(--ease),height .3s var(--ease)}
    .cur-big #cur{width:18px;height:18px;background:var(--c);box-shadow:0 0 20px var(--c),0 0 40px rgba(99,102,241,.5)}
    .cur-big #cur-r{width:56px;height:56px;border-color:rgba(99,102,241,.35)}
    @media(max-width:900px){#cur,#cur-r{display:none}}

    /* ── PROGRESS ── */
    #prog{position:fixed;top:0;left:0;height:2px;background:var(--gv);z-index:300;width:0%;box-shadow:0 0 8px var(--v),0 0 16px rgba(99,102,241,.5);transform-origin:left}

    /* ── LOADER ── */
    #loader{position:fixed;inset:0;background:var(--bg);z-index:600;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.75rem}
    .ld-orb{width:80px;height:80px;border-radius:50%;background:var(--gv);animation:ldpulse 1.4s ease-in-out infinite}
    @keyframes ldpulse{0%,100%{transform:scale(.85);opacity:.7}50%{transform:scale(1.1);opacity:1;box-shadow:0 0 40px rgba(29,78,216,.6),0 0 80px rgba(99,102,241,.4)}}
    .ld-logo{font-family:var(--fh);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
    .ld-logo .ai{background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .ld-bar{width:180px;height:1px;background:rgba(255,255,255,.1);overflow:hidden;border-radius:2px}
    #ld-fill{height:100%;background:var(--gv);width:0;border-radius:2px;box-shadow:0 0 8px var(--v)}

    /* ── CONTAINER ── */
    .c{width:100%;max-width:1360px;margin:0 auto;padding:0 2.5rem}

    /* ── NAV ── */
    .nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:1.5rem 0;transition:background .4s ease,backdrop-filter .4s ease,border-color .4s ease,padding .4s ease}
    .nav.s{background:rgba(255,255,255,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border);padding:.9rem 0;box-shadow:0 1px 20px rgba(15,23,42,.06)}
    .nav-row{display:flex;align-items:center;justify-content:space-between}
    .logo{font-family:var(--fh);font-size:1.3rem;font-weight:700;letter-spacing:-.025em;cursor:pointer}
    .logo .ai{background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .nav-links{display:flex;gap:2.25rem}
    .nav-links a{font-size:.875rem;font-weight:500;color:var(--ink2);transition:color .25s;position:relative}
    .nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:1px;background:var(--gv);transform:scaleX(0);transform-origin:right;transition:transform .28s}
    .nav-links a:hover,.nav-links a.active{color:var(--ink)}
    .nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1);transform-origin:left}
    .nav-cta{font-size:.875rem;font-weight:600;background:var(--gv);color:#fff;border-radius:100px;padding:.5rem 1.5rem;box-shadow:0 0 20px rgba(29,78,216,.35);transition:all .28s;cursor:pointer}
    .nav-cta:hover{opacity:.85;box-shadow:0 0 32px rgba(29,78,216,.5);transform:translateY(-1px)}
    .nav-cta:active{transform:scale(.97)}
    .burger{display:none;flex-direction:column;gap:5px;padding:.4rem;background:none;border:none;cursor:pointer}
    .burger span{display:block;width:22px;height:1.5px;background:var(--ink2);transition:all .3s}
    .burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
    .burger.open span:nth-child(2){opacity:0}
    .burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
    .m-nav{position:fixed;inset:0;z-index:199;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 2rem;gap:clamp(1.25rem,3vh,2.5rem);transform:translateX(100%);transition:transform .45s cubic-bezier(.4,0,.2,1);overflow-y:auto}
    .m-nav.open{transform:translateX(0)}
    .m-nav a{font-family:var(--fh);font-size:clamp(1.5rem,5vw,2.25rem);font-weight:700;color:var(--ink2);transition:color .25s;cursor:pointer}
    .m-nav a:hover{color:var(--v)}
    .m-nav .btn-primary{border-radius:100px;text-align:center;cursor:pointer;margin-top:1rem}
    .m-close{position:absolute;top:1.75rem;right:2rem;font-size:1.5rem;background:none;border:none;color:var(--ink2);cursor:pointer}

    /* ── ORBS ── */
    .orbs{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3}
    .orb{position:absolute;border-radius:50%;filter:blur(90px);will-change:transform}
    .orb-a{width:800px;height:800px;background:radial-gradient(circle,rgba(29,78,216,.45) 0%,transparent 70%);top:-200px;left:-150px;opacity:1}
    .orb-b{width:650px;height:650px;background:radial-gradient(circle,rgba(99,102,241,.35) 0%,transparent 70%);top:40px;right:-120px;opacity:1}
    .orb-c{width:500px;height:500px;background:radial-gradient(circle,rgba(29,78,216,.28) 0%,transparent 70%);bottom:0;left:38%;opacity:1}
    .orb-d{width:380px;height:380px;background:radial-gradient(circle,rgba(99,102,241,.22) 0%,transparent 70%);bottom:22%;left:18%;opacity:1}
    .grid-pat{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;z-index:3;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 0%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 0%,transparent 100%)}

    /* ── HERO ── */
    .hero{min-height:100vh;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden;background:#020817}
    .hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden}
    .hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.1);will-change:transform}
    .hero-bg-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(105deg,rgba(2,8,23,.93) 0%,rgba(5,12,40,.82) 38%,rgba(8,16,50,.55) 65%,rgba(5,10,32,.85) 100%)}
    .hero-grid-3d{position:absolute;bottom:-3%;left:-25%;right:-25%;height:54%;z-index:2;background-image:linear-gradient(rgba(29,78,216,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(29,78,216,.25) 1px,transparent 1px);background-size:80px 80px;transform:perspective(900px) rotateX(72deg);transform-origin:bottom center;mask-image:linear-gradient(to top,rgba(0,0,0,.5) 0%,transparent 62%);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,.5) 0%,transparent 62%);pointer-events:none;animation:gridpulse 4s ease-in-out infinite}
    @keyframes gridpulse{0%,100%{opacity:.55}50%{opacity:.95}}
    .hero-left{display:flex;flex-direction:column;justify-content:center;padding:9rem clamp(2rem,5vw,5rem) 6rem;position:relative;z-index:5;max-width:680px;width:55%}
    .hero-tag{font-size:.6875rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:2rem;display:flex;align-items:center;gap:.75rem}
    .hero-tag::before{content:'';display:inline-block;width:24px;height:1px;background:var(--gv)}
    .hero-title{font-family:var(--fh);font-size:clamp(2.5rem,5.5vw,6.75rem);font-weight:700;line-height:1.02;letter-spacing:-.03em;color:#fff;margin-bottom:2.25rem}
    .hero-title .grad{background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .lw{overflow:hidden;display:block}
    .li{display:block;transform-origin:bottom}
    .hero-sub{font-size:1.0625rem;color:rgba(255,255,255,.68);line-height:1.8;max-width:480px;margin-bottom:2.5rem}
    .hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:4rem}
    .btn-primary{display:inline-flex;align-items:center;gap:.75rem;background:var(--gv);color:#fff;font-size:.9375rem;font-weight:600;padding:.95rem 2rem;border-radius:100px;box-shadow:0 4px 32px rgba(29,78,216,.55);transition:all .3s var(--ease);cursor:pointer}
    .btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 60px rgba(29,78,216,.8)}
    .btn-primary:active{transform:translateY(-1px) scale(.97);box-shadow:0 4px 24px rgba(29,78,216,.5)}
    .btn-secondary{display:inline-flex;align-items:center;gap:.625rem;font-size:.9375rem;font-weight:500;color:rgba(255,255,255,.75);padding:.9rem 1.5rem;border:1px solid rgba(255,255,255,.22);border-radius:100px;transition:all .25s;backdrop-filter:blur(10px);cursor:pointer}
    .btn-secondary:hover{color:#fff;border-color:rgba(99,102,241,.65);box-shadow:0 0 28px rgba(99,102,241,.35)}
    .btn-secondary:active{transform:scale(.97)}
    .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.1)}
    .hstat{padding:1.75rem 0}
    .hstat:not(:last-child){border-right:1px solid rgba(255,255,255,.1);padding-right:2rem}
    .hstat:not(:first-child){padding-left:2rem}
    .hstat-val{font-family:var(--fh);font-size:2.25rem;font-weight:700;letter-spacing:-.04em;line-height:1;margin-bottom:.25rem;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    /* A11Y TODO WCAG 1.4.3: .hstat-lbl at rgba(255,255,255,.48) on the hero dark overlay.
       Blended effective color ~#797979 on #020817 ≈ borderline at 13px text. Raise to .65 minimum for small text. */
    .hstat-lbl{font-size:.8125rem;color:rgba(255,255,255,.65)}
    .hero-notif{position:absolute;top:18%;right:clamp(2rem,8vw,9rem);z-index:6;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);border:1px solid rgba(29,78,216,.22);border-radius:14px;padding:.9rem 1.2rem;max-width:230px;box-shadow:0 12px 50px rgba(15,23,42,.35),0 0 0 1px rgba(29,78,216,.1);display:flex;align-items:center;gap:.875rem;animation:notiffloat 6s ease-in-out infinite 2s}
    @keyframes notiffloat{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-10px) rotate(.5deg)}}
    .notif-icon{font-size:1.375rem;flex-shrink:0;line-height:1}
    .notif-title{font-family:var(--fh);font-size:.75rem;font-weight:700;color:var(--ink);margin-bottom:.15rem;line-height:1.2}
    /* A11Y TODO WCAG 1.4.3: .notif-meta is 10px text with --ink3 on white. At this size WCAG requires 4.5:1.
       Consider increasing font-size to 14px+ or bumping color to rgba(15,23,42,.70). */
    .notif-meta{font-size:.6375rem;color:var(--ink3);line-height:1.4}
    .notif-bar{height:3px;background:var(--border);border-radius:100px;margin-top:.6rem;overflow:hidden}
    .notif-prog{height:100%;width:73%;background:var(--gv);border-radius:100px;animation:progpulse 3s ease-in-out infinite}
    @keyframes progpulse{0%,100%{opacity:.7}50%{opacity:1}}
    .hero-badge{position:absolute;bottom:4rem;right:clamp(2rem,8vw,9rem);opacity:0;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);border:1px solid rgba(29,78,216,.2);border-radius:18px;padding:1.25rem 1.5rem;max-width:230px;z-index:6;box-shadow:0 12px 50px rgba(15,23,42,.35),0 0 0 1px rgba(29,78,216,.1);animation:badfloat 8s ease-in-out infinite 3s}
    @keyframes badfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
    .badge-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;display:inline-block;margin-right:.5rem;box-shadow:0 0 8px rgba(34,197,94,.8);animation:bpulse 2s ease infinite}
    @keyframes bpulse{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.6)}50%{box-shadow:0 0 0 6px rgba(34,197,94,0)}}
    .badge-label{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:.5rem}
    .badge-val{font-family:var(--fh);font-size:1.875rem;font-weight:700;letter-spacing:-.04em;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
    .badge-sub{font-size:.75rem;color:var(--ink3);margin-top:.25rem}
    .badge-source{font-size:.625rem;color:var(--ink3);margin-top:.25rem;letter-spacing:.04em}

    /* ── LOGOS ── */
    .logos{padding:2rem 0;border-bottom:1px solid var(--border);background:var(--bg2);overflow:hidden;border-top:1px solid var(--border)}
    .logos-inner{display:flex;align-items:center;gap:3rem}
    .logos-label{font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);flex-shrink:0}
    .logos-wrap{flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent)}
    .logos-track{display:flex;gap:0;min-width:max-content;animation:marquee 28s linear infinite}
    .logos-track:hover{animation-play-state:paused}
    @keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    .logo-co{font-size:.875rem;font-weight:600;color:var(--ink3);letter-spacing:.04em;white-space:nowrap;padding:.375rem 2.5rem;border-right:1px solid var(--border);transition:color .25s}
    .logo-co:hover{color:var(--ink2)}

    /* ── SECTIONS ── */
    .sec{padding:8rem 0;position:relative}
    .sec-label{font-size:.6875rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.25rem;display:inline-flex;align-items:center;gap:.75rem}
    .sec-label::before{content:'';display:inline-block;width:20px;height:1px;background:var(--gv)}
    .sec-label-v{color:var(--vl)}
    .sec-label-c{color:var(--c)}
    .sec-heading{font-family:var(--fh);font-size:clamp(1.875rem,3.2vw,3.25rem);font-weight:700;line-height:1.1;letter-spacing:-.025em}
    .sec-heading .grad{background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .sec-sub{font-size:1rem;color:var(--ink2);line-height:1.8}
    .sec-header{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end;padding-bottom:4rem;border-bottom:1px solid var(--border)}

    /* ── WORD REVEAL ── */
    .word-wrap{overflow:hidden;display:inline-block;vertical-align:bottom;line-height:inherit}
    .word-inner{display:inline-block;will-change:transform}

    /* ── SERVICES ── */
    #servicios{background:var(--bg);overflow:visible}
    .svc-h-outer{overflow:hidden;width:100%;padding:3.5rem 0 5rem}
    .svc-grid{display:flex;gap:0;border:none;width:max-content;padding-left:clamp(1.5rem,5vw,5rem);will-change:transform}
    .svc-grid .svc-card{width:clamp(320px,36vw,460px);flex-shrink:0;border:1px solid var(--border)}
    .svc-card{display:block;padding:3.25rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);position:relative;overflow:hidden;background:#fff;transition:background .35s,box-shadow .35s,transform .3s}
    .svc-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(29,78,216,.05) 0%,rgba(99,102,241,.03) 100%);opacity:0;transition:opacity .4s}
    .svc-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gv);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
    .svc-card:hover{background:#F8FAFF;box-shadow:0 8px 40px rgba(29,78,216,.08);will-change:transform}
    .svc-card:hover::before{opacity:1}
    .svc-card:hover::after{transform:scaleX(1)}
    .svc-img{width:100%;height:190px;border-radius:10px;margin-bottom:2rem;overflow:hidden;position:relative}
    .svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
    .svc-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,rgba(6,6,6,.6))}
    .svc-card:hover .svc-img img{transform:scale(1.06)}
    .svc-num{font-family:var(--fh);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}
    .svc-name{font-family:var(--fh);font-size:1.4rem;font-weight:700;color:var(--ink);margin-bottom:.875rem;letter-spacing:-.015em}
    .svc-desc{font-size:.9375rem;color:var(--ink2);line-height:1.75;margin-bottom:1.375rem}
    .svc-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
    .svc-tag{font-size:.6875rem;font-weight:500;color:var(--ink3);border:1px solid var(--border);border-radius:100px;padding:.2rem .875rem;letter-spacing:.03em;transition:all .25s;background:rgba(255,255,255,.03)}
    .svc-card:hover .svc-tag{border-color:rgba(29,78,216,.3);color:var(--v);background:rgba(29,78,216,.06)}
    .svc-arr{position:absolute;top:3.25rem;right:3.25rem;width:36px;height:36px;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--ink3);transition:all .35s var(--ease)}
    .svc-card:hover .svc-arr{background:var(--gv);color:#fff;border-color:transparent;box-shadow:0 4px 20px rgba(29,78,216,.35);transform:rotate(-45deg)}
    .svc-card:focus-visible{background:#F8FAFF;box-shadow:0 8px 40px rgba(29,78,216,.08);outline-offset:3px}

    /* ── PROCESS ── */
    .process{padding:8rem 0;background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:relative;overflow:hidden}
    .process-split{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;margin-top:5rem}
    .process-img{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 20px 80px rgba(29,78,216,.15),0 4px 20px rgba(15,23,42,.08)}
    .process-img img{width:100%;height:100%;object-fit:cover}
    .process-img-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(29,78,216,.3) 0%,transparent 60%)}
    .proc-counter{position:absolute;top:2rem;left:2rem;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border:1px solid rgba(29,78,216,.2);border-radius:14px;padding:1rem 1.5rem;z-index:2;box-shadow:0 4px 20px rgba(15,23,42,.1)}
    .proc-counter-val{font-family:var(--fh);font-size:2rem;font-weight:700;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
    .proc-counter-lbl{font-size:.6875rem;color:var(--ink3);margin-top:.15rem}
    .process-steps{display:flex;flex-direction:column;gap:0}
    .proc-step{padding:2rem 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:60px 1fr;gap:2rem;align-items:start;transition:all .35s var(--ease);position:relative;cursor:default}
    .proc-step::before{content:'';position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(to right,rgba(29,78,216,.06),transparent);transition:width .4s var(--ease);border-radius:4px}
    .proc-step:hover::before{width:100%}
    .proc-step:hover{padding-left:.75rem}
    .proc-step:first-child{padding-top:0}
    .proc-step:last-child{border-bottom:none}
    .proc-n{font-family:var(--fh);font-size:2.5rem;font-weight:700;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:-.04em}
    .proc-h{font-family:var(--fh);font-size:1.2rem;font-weight:700;color:var(--ink);margin-bottom:.5rem}
    .proc-p{font-size:.9375rem;color:var(--ink2);line-height:1.72}

    /* ── KPIs ── */
    .results{padding:0;border-bottom:1px solid var(--border);position:relative}
    .results-top{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end;padding:6rem 0 4rem;border-bottom:1px solid var(--border)}
    .kpis{display:grid;grid-template-columns:repeat(3,1fr)}
    .kpi{padding:4rem 0;position:relative;overflow:hidden;transition:background .3s}
    .kpi:not(:last-child){border-right:1px solid var(--border);padding-right:3rem}
    .kpi:not(:first-child){padding-left:3rem}
    .kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:0;background:var(--gv);transition:height .5s var(--ease);opacity:.5}
    .kpi:hover::before{height:2px}
    .kpi-num{font-family:var(--fh);font-size:clamp(3rem,5.5vw,6rem);font-weight:700;letter-spacing:-.055em;line-height:1;margin-bottom:.75rem;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .kpi-desc{font-size:1rem;color:var(--ink2);line-height:1.6;margin-bottom:.625rem}
    .kpi-client{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}

    /* ── IMAGE STRIP ── */
    .img-strip{display:grid;grid-template-columns:repeat(3,1fr);height:420px;border-bottom:1px solid var(--border);overflow:hidden}
    .img-strip-item{position:relative;overflow:hidden}
    .img-strip-item img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
    .img-strip-item:hover img{transform:scale(1.07)}
    .img-strip-item::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(6,6,6,.8) 0%,rgba(6,6,6,.2) 50%,transparent 100%);opacity:.6;transition:opacity .4s}
    .img-strip-item:hover::after{opacity:1}
    .img-strip-label{position:absolute;bottom:2rem;left:2rem;right:2rem;font-family:var(--fh);font-size:1.125rem;font-weight:700;color:#fff;z-index:2;transform:translateY(6px);transition:transform .4s var(--ease)}
    .img-strip-badge{font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block;margin-bottom:.25rem}
    .img-strip-item:hover .img-strip-label{transform:translateY(0)}

    /* ── MID-FUNNEL CTA ── */
    .mid-cta{padding:5rem 0;background:linear-gradient(135deg,#1D4ED8,#4F46E5);border-top:none;border-bottom:none}
    .mid-cta .c{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
    .mid-cta-txt{font-family:var(--fh);font-size:clamp(1.125rem,2vw,1.5rem);font-weight:600;color:#fff;max-width:500px}
    .mid-cta-link{display:inline-flex;align-items:center;gap:.75rem;background:#fff;color:#1D4ED8;font-size:.9375rem;font-weight:700;padding:.95rem 2rem;border-radius:100px;box-shadow:0 4px 30px rgba(0,0,0,.15);transition:all .3s;cursor:pointer}
    .mid-cta-link:hover{transform:translateY(-2px);box-shadow:0 8px 40px rgba(0,0,0,.2)}
    .mid-cta-link:active{transform:scale(.97)}

    /* ── TESTIMONIALS ── */
    .testimonials{padding:8rem 0;border-bottom:1px solid var(--border);background:var(--bg)}
    .testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}
    .testi-img-wrap{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:3/4;box-shadow:0 20px 60px rgba(29,78,216,.12),0 4px 20px rgba(15,23,42,.08)}
    .testi-img-wrap img{width:100%;height:100%;object-fit:cover}
    .testi-img-ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(29,78,216,.2) 0%,rgba(99,102,241,.1) 100%)}
    .testi-rating{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}
    .testi-stars{color:var(--c);font-size:1.125rem;letter-spacing:.05em}
    .testi-count{font-size:.8125rem;color:var(--ink2);font-weight:500}
    .testi-qm{font-size:6rem;font-weight:700;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:.5;margin-bottom:2rem;opacity:.5}
    .testi-text{font-family:var(--fh);font-size:clamp(1.125rem,2vw,1.625rem);font-weight:500;color:var(--ink);line-height:1.55;margin-bottom:2.5rem;opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}
    .testi-text.show{opacity:1;transform:none}
    .testi-author{display:flex;align-items:center;gap:1.25rem}
    .testi-av{width:50px;height:50px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid rgba(29,78,216,.4);opacity:0;transition:opacity .5s ease .1s}
    .testi-av img{width:100%;height:100%;object-fit:cover}
    .testi-av.show{opacity:1}
    .testi-info{opacity:0;transition:opacity .5s ease .2s}
    .testi-info.show{opacity:1}
    .testi-name{font-weight:600;font-size:.9375rem;color:var(--ink)}
    .testi-role{font-size:.8125rem;color:var(--ink2)}
    .testi-nav{display:flex;gap:.75rem;margin-top:2rem;align-items:center}
    .testi-dot{width:30px;min-height:44px;display:flex;align-items:center;background:transparent;border:none;cursor:pointer;padding:0;transition:width .35s;flex-shrink:0}
    .testi-dot::after{content:'';display:block;width:100%;height:2px;border-radius:2px;background:var(--border);transition:all .35s}
    .testi-dot.active{width:48px}
    .testi-dot.active::after{background:var(--gv);box-shadow:0 0 8px rgba(29,78,216,.4)}
    .testi-pause-btn{background:none;border:1px solid var(--border);color:var(--ink3);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:.75rem;cursor:pointer;transition:all .25s;margin-left:.5rem;flex-shrink:0}
    .testi-pause-btn:hover{border-color:var(--vl);color:var(--vl)}

    /* ── CONTACT ── */
    .contact{padding:8rem 0;background:var(--bg);border-top:1px solid var(--border)}
    .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem}
    .contact-h{font-family:var(--fh);font-size:clamp(1.875rem,3vw,3rem);font-weight:700;line-height:1.1;letter-spacing:-.025em;margin-bottom:1.5rem}
    .contact-h .grad{background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .contact-sub{font-size:1rem;color:var(--ink2);line-height:1.8;margin-bottom:2rem}
    .c-items{display:flex;flex-direction:column;gap:1.5rem}
    .c-item{display:flex;gap:1rem;align-items:flex-start}
    .c-icon{width:42px;height:42px;border-radius:12px;background:var(--card);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.125rem}
    .c-lbl{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:.2rem}
    .c-val{font-size:.9375rem;color:var(--ink2)}
    .trust-row{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}
    .trust-item{font-size:.8125rem;color:var(--ink2);display:flex;align-items:center;gap:.375rem}
    .cform{display:flex;flex-direction:column;gap:2rem}
    .req-note{font-size:.8125rem;color:var(--ink3);margin-bottom:.5rem}
    .fg{display:flex;flex-direction:column;gap:.375rem}
    .fl{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2)}
    .req-mark{color:#ff6b6b;margin-left:2px}
    .fi,.fsel,.fta{background:transparent;border:none;border-bottom:1px solid var(--border);padding:.8rem 0;font-family:var(--fb);font-size:.9375rem;color:var(--ink);width:100%;outline:none;transition:border-color .25s;-webkit-appearance:none;appearance:none}
    .fi.error,.fsel.error,.fta.error{border-bottom-color:#EF4444}
    .fi::placeholder,.fta::placeholder{color:var(--ink3)}
    .fsel{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%230F172A' stroke-opacity='.42' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center}
    .fsel option{background:var(--bg2);color:var(--ink)}
    .fta{resize:vertical;min-height:100px}
    .fr{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
    .fsub{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;gap:1rem;flex-wrap:wrap}
    .fsub-left{display:flex;flex-direction:column;gap:.25rem}
    .fnote{font-size:.8125rem;color:var(--ink3)}
    .fsub-cap{font-size:.75rem;color:var(--c);font-weight:600;letter-spacing:.02em}
    .bsub{background:var(--gv);color:#fff;border:none;padding:.9rem 2rem;font-family:var(--fb);font-size:.9375rem;font-weight:600;border-radius:100px;transition:all .28s;display:flex;align-items:center;gap:.75rem;box-shadow:0 4px 24px rgba(29,78,216,.35);cursor:pointer}
    .bsub:hover{opacity:.85;transform:translateY(-2px);box-shadow:0 8px 40px rgba(29,78,216,.45)}
    .bsub:active{transform:translateY(0) scale(.97)}
    .fok{display:none;font-family:var(--fh);font-size:1.375rem;font-weight:600;background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;padding-top:1rem;line-height:1.5}

    /* ── FOOTER ── */
    .footer{background:#0F172A;color:rgba(255,255,255,.70);padding:5rem 0 2.5rem;border-top:1px solid var(--border)}
    .footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;margin-bottom:4rem}
    .fl-logo{font-family:var(--fh);font-size:1.3rem;font-weight:700;color:#fff;letter-spacing:-.025em;margin-bottom:1rem}
    .fl-logo .ai{background:var(--gv);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .fl-tag{font-size:.875rem;line-height:1.75;max-width:240px;color:rgba(255,255,255,.60)}
    .fl-socials{display:flex;gap:1rem;margin-top:1.5rem}
    .fl-soc{width:44px;height:44px;border:1px solid rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.60);transition:all .25s;cursor:pointer}
    .fl-soc:hover{color:#fff;border-color:rgba(99,102,241,.6);box-shadow:0 0 16px rgba(29,78,216,.3)}
    .fl-soc svg{width:16px;height:16px}
    .fc-h{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:1.25rem}
    .fc-links{display:flex;flex-direction:column;gap:.875rem}
    .fc-links a{font-size:.875rem;color:rgba(255,255,255,.60);transition:color .25s;cursor:pointer}
    .fc-links a:hover{color:rgba(255,255,255,.90)}
    .footer-bot{display:flex;align-items:center;justify-content:space-between;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.06)}
    .footer-copy{font-size:.8125rem;color:rgba(255,255,255,.55)}
    .footer-legal{display:flex;gap:2rem}
    .footer-legal a{font-size:.8125rem;color:rgba(255,255,255,.65);transition:color .25s;cursor:pointer}
    .footer-legal a:hover{color:rgba(255,255,255,.90)}

    /* ── 3D TILT ── */
    .svc-card,.kpi{transform-style:preserve-3d;will-change:transform}

    /* ── 3D FLOATING SHAPES ── */
    .hero-shapes{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
    .shape{position:absolute;transform-style:preserve-3d}
    .shape-cube{width:60px;height:60px;transform-style:preserve-3d}
    .cube-face{position:absolute;width:100%;height:100%;border:1.5px solid rgba(99,102,241,.55);background:rgba(99,102,241,.1);backdrop-filter:blur(4px);box-shadow:inset 0 0 8px rgba(29,78,216,.2)}
    .cube-face.front {transform:translateZ(30px)}
    .cube-face.back  {transform:rotateY(180deg) translateZ(30px)}
    .cube-face.right {transform:rotateY(90deg)  translateZ(30px)}
    .cube-face.left  {transform:rotateY(-90deg) translateZ(30px)}
    .cube-face.top   {transform:rotateX(90deg)  translateZ(30px)}
    .cube-face.bottom{transform:rotateX(-90deg) translateZ(30px)}
    @keyframes cube-spin-a{0%{transform:perspective(600px) rotateX(0deg) rotateY(0deg)}100%{transform:perspective(600px) rotateX(360deg) rotateY(240deg)}}
    @keyframes cube-spin-b{0%{transform:perspective(600px) rotateX(0deg) rotateY(0deg)}100%{transform:perspective(600px) rotateX(-240deg) rotateY(360deg)}}
    @keyframes cube-spin-c{0%{transform:perspective(600px) rotateX(0deg) rotateY(0deg)}100%{transform:perspective(600px) rotateX(180deg) rotateY(-360deg)}}
    @keyframes shapefloat-a{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-20px) translateX(8px)}}
    @keyframes shapefloat-b{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(16px) translateX(-10px)}}
    @keyframes shapefloat-c{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-12px) translateX(14px)}}
    .s1{top:12%;right:8%;animation:shapefloat-a 7s ease-in-out infinite}
    .s1 .shape-cube{animation:cube-spin-a 12s linear infinite}
    .s2{top:55%;right:20%;animation:shapefloat-b 9s ease-in-out infinite}
    .s2 .shape-cube{width:36px;height:36px;animation:cube-spin-b 16s linear infinite}
    .s2 .cube-face{transform-origin:center}
    .s2 .cube-face.front {transform:translateZ(18px)}
    .s2 .cube-face.back  {transform:rotateY(180deg) translateZ(18px)}
    .s2 .cube-face.right {transform:rotateY(90deg)  translateZ(18px)}
    .s2 .cube-face.left  {transform:rotateY(-90deg) translateZ(18px)}
    .s2 .cube-face.top   {transform:rotateX(90deg)  translateZ(18px)}
    .s2 .cube-face.bottom{transform:rotateX(-90deg) translateZ(18px)}
    .s3{bottom:20%;right:12%;animation:shapefloat-c 11s ease-in-out infinite}
    .s3 .shape-cube{width:80px;height:80px;animation:cube-spin-c 20s linear infinite}
    .s3 .cube-face.front {transform:translateZ(40px)}
    .s3 .cube-face.back  {transform:rotateY(180deg) translateZ(40px)}
    .s3 .cube-face.right {transform:rotateY(90deg)  translateZ(40px)}
    .s3 .cube-face.left  {transform:rotateY(-90deg) translateZ(40px)}
    .s3 .cube-face.top   {transform:rotateX(90deg)  translateZ(40px)}
    .s3 .cube-face.bottom{transform:rotateX(-90deg) translateZ(40px)}
    /* ring shape */
    @keyframes ring-spin{0%{transform:perspective(400px) rotateX(70deg) rotateZ(0deg)}100%{transform:perspective(400px) rotateX(70deg) rotateZ(360deg)}}
    .shape-ring{width:90px;height:90px;border-radius:50%;border:2px solid rgba(99,102,241,.65);box-shadow:0 0 30px rgba(99,102,241,.4),inset 0 0 20px rgba(29,78,216,.2),0 0 60px rgba(99,102,241,.15);animation:ring-spin 8s linear infinite}
    .s4{top:35%;left:4%;animation:shapefloat-b 10s ease-in-out infinite 2s}
    .s5{bottom:30%;left:8%;animation:shapefloat-a 8s ease-in-out infinite 1s}
    .s5 .shape-ring{width:50px;height:50px;border-color:rgba(29,78,216,.25);animation:ring-spin 6s linear infinite reverse}

    /* ── 3D HERO BG PARALLAX ── */
    .hero-bg img{transform-style:preserve-3d;will-change:transform}

    /* ── 3D PROCESS IMAGE ── */
    .process-img{box-shadow:30px 40px 80px rgba(29,78,216,.15),-10px -10px 40px rgba(99,102,241,.05)}

    /* ── 3D SVC IMAGE HOVER ── */
    .svc-img{perspective:800px;overflow:visible}
    .svc-img img{transform-origin:center;transition:transform .6s var(--ease)}
    .svc-card:hover .svc-img img{transform:scale(1.06) perspective(800px) rotateY(4deg)}

    /* ── 3D TESTI IMAGE ── */
    .testi-img-wrap{will-change:transform}

    /* ── 3D KPI NUMBERS ── */
    @keyframes kpi3d{0%,100%{transform:perspective(500px) rotateX(0deg)}50%{transform:perspective(500px) rotateX(8deg)}}
    .kpi-num{transform-style:preserve-3d;transition:transform .4s var(--ease)}
    .kpi:hover .kpi-num{animation:kpi3d .6s ease-out forwards}

    /* ── 3D STAT CARDS ── */
    .hstat{transition:transform .4s var(--ease);transform-style:preserve-3d}
    .hstat:hover{transform:perspective(600px) rotateY(-5deg) rotateX(3deg) translateZ(10px)}

    /* ── 3D CANVAS ── */
    #particles-canvas{position:absolute;inset:0;pointer-events:none;z-index:3;width:100%!important;height:100%!important}

    /* ── SHIMMER TEXT ── */
    @keyframes shimmer{0%{background-position:200% center}100%{background-position:-200% center}}
    .hero-title .grad{background:linear-gradient(90deg,#1D4ED8,#6366F1,#818CF8,#6366F1,#1D4ED8);background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite}

    /* ── GLOW PULSE HERO STAT ── */
    @keyframes statglow{0%,100%{text-shadow:none}50%{text-shadow:0 0 20px rgba(29,78,216,.3)}}
    .hstat-val{animation:statglow 3s ease-in-out infinite}

    /* ── HERO BADGE FLOAT ── */
    @keyframes badgefloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
    .hero-badge{animation:badgefloat 4s ease-in-out infinite}

    /* ── BUTTON SHINE ── */
    .btn-primary{position:relative;overflow:hidden}
    .btn-primary::before{content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transform:skewX(-20deg);transition:left .6s ease}
    .btn-primary:hover::before{left:150%}

    /* ── ORB EXTRA GLOW ── */
    @keyframes orbglow{0%,100%{opacity:.7}50%{opacity:1;filter:blur(80px) brightness(1.2)}}
    .orb-a{animation:orbglow 6s ease-in-out infinite}
    .orb-b{animation:orbglow 8s ease-in-out infinite 2s}

    /* ── SECTION DIVIDER GLOW ── */
    .sec::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--v),var(--c),var(--v),transparent);opacity:.5}

    /* ── KPI HOVER GLOW ── */
    .kpi:hover .kpi-num{filter:drop-shadow(0 0 20px rgba(29,78,216,.25))}
    .kpi:hover{background:rgba(29,78,216,.03)}

    /* ── RESPONSIVE ── */
    @media(max-width:1100px){
      .hero{grid-template-columns:1fr;min-height:auto}
      .hero-right{height:60vh}
      .hero-left{padding:8rem 2.5rem 4rem}
      .hero-sub{max-width:100%}
      .process-split{grid-template-columns:1fr;gap:4rem}
      .process-img{aspect-ratio:16/9}
      .svc-grid{grid-template-columns:1fr}
    }
    @media(max-width:900px){
      .sec-header,.results-top,.contact-grid,.testi-grid{grid-template-columns:1fr;gap:2.5rem}
      .kpis{grid-template-columns:1fr}
      .kpi{padding:3rem 0;border-right:none!important;border-bottom:1px solid var(--border)}
      .kpi:not(:last-child){padding-right:0}
      .kpi:not(:first-child){padding-left:0}
      .img-strip{grid-template-columns:1fr;height:auto}
      .img-strip-item{height:260px}
      .footer-top{grid-template-columns:1fr 1fr}
      .footer-bot{flex-direction:column;gap:1rem;align-items:flex-start}
      .hero-stats{grid-template-columns:1fr}
      .hstat:not(:last-child){border-right:none;border-bottom:1px solid var(--border);padding-right:0}
      .hstat:not(:first-child){padding-left:0}
      .hstat:first-child{padding-top:1.75rem}
      .burger{display:flex}
      .nav-links,.nav-cta{display:none}
      .fr{grid-template-columns:1fr;gap:1.5rem}
      .contact{padding:5rem 0}
      .contact-grid{gap:4rem}
      .mid-cta .c{flex-direction:column;text-align:center}
      .logos-inner{flex-direction:column;gap:1rem}
      .logos-label{text-align:center}
      .logos-wrap{width:100%}
    }
    @media(max-width:768px){
      .sec{padding:6rem 0}
      .process{padding:6rem 0}
      .svc-grid{display:grid!important;grid-template-columns:1fr!important;width:100%!important;padding-left:0!important}
      .svc-h-outer{padding:2rem 0 3rem}
      .svc-grid .svc-card{width:100%!important}
      .hero-left{width:100%!important;max-width:100%!important}
      .hero-notif,.hero-badge{display:none}
    }
    @media(max-width:600px){
      .c{padding:0 1.25rem}
      .hero-left{padding:8rem 1.25rem 3rem}
      .footer-top{grid-template-columns:1fr}
      .svc-card{padding:2.25rem 1.5rem}
      .sec{padding:4rem 0}
      .process{padding:4rem 0}
      .fta{resize:none;min-height:120px}
    }
    @media(prefers-reduced-motion:reduce){
      *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
      .logos-track{animation:none!important}
    }

    /* ══ SECTION 3D DECO SYSTEM ══ */
    .sec-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
    .contact{position:relative}
    .sd{position:absolute;transform-style:preserve-3d}
    /* cube faces — light-bg edition */
    .sdc{transform-style:preserve-3d}
    .sdf{position:absolute;width:100%;height:100%}
    .sdf.fr{transform:translateZ(var(--hz,28px))}.sdf.bk{transform:rotateY(180deg) translateZ(var(--hz,28px))}
    .sdf.ri{transform:rotateY(90deg) translateZ(var(--hz,28px))}.sdf.le{transform:rotateY(-90deg) translateZ(var(--hz,28px))}
    .sdf.to{transform:rotateX(90deg) translateZ(var(--hz,28px))}.sdf.bt{transform:rotateX(-90deg) translateZ(var(--hz,28px))}
    .sdf-v{border:1.5px solid rgba(29,78,216,.28);background:rgba(29,78,216,.05)}
    .sdf-c{border:1.5px solid rgba(99,102,241,.32);background:rgba(99,102,241,.06)}
    .sdr{border-radius:50%;border:2px solid rgba(99,102,241,.45);box-shadow:0 0 28px rgba(99,102,241,.25),inset 0 0 14px rgba(29,78,216,.12)}
    /* float/spin keyframes */
    @keyframes sdflt1{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-22px) translateX(9px)}}
    @keyframes sdflt2{0%,100%{transform:translateY(0)}50%{transform:translateY(18px) translateX(-11px)}}
    @keyframes sdflt3{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-14px) translateX(13px)}}
    @keyframes sdflt4{0%,100%{transform:translateY(0)}50%{transform:translateY(12px) translateX(-7px)}}
    @keyframes sdsp1{0%{transform:perspective(600px) rotateX(0) rotateY(0)}100%{transform:perspective(600px) rotateX(360deg) rotateY(260deg)}}
    @keyframes sdsp2{0%{transform:perspective(600px) rotateX(0) rotateY(0)}100%{transform:perspective(600px) rotateX(-260deg) rotateY(360deg)}}
    @keyframes sdsp3{0%{transform:perspective(600px) rotateX(0) rotateY(0)}100%{transform:perspective(600px) rotateX(200deg) rotateY(-360deg)}}
    @keyframes sdrsp{0%{transform:perspective(440px) rotateX(68deg) rotateZ(0)}100%{transform:perspective(440px) rotateX(68deg) rotateZ(360deg)}}

    /* ══ 3D DEVICE MOCKUP ══ */
    .mock-col{display:flex;align-items:center;justify-content:center}
    @keyframes mockfl{0%,100%{transform:perspective(1100px) rotateX(7deg) rotateY(-13deg)}50%{transform:perspective(1100px) rotateX(4deg) rotateY(-9deg) translateY(-14px)}}
    .mock-3d{animation:mockfl 8s ease-in-out infinite;transform:perspective(1100px) rotateX(7deg) rotateY(-13deg);transform-style:preserve-3d;width:100%}
    .mock-shell{background:#0F172A;border-radius:16px;border:1.5px solid rgba(99,102,241,.55);overflow:hidden;box-shadow:0 40px 100px rgba(29,78,216,.45),0 0 0 1px rgba(99,102,241,.15),0 0 80px rgba(99,102,241,.18),inset 0 0 50px rgba(29,78,216,.08)}
    .mock-tbar{background:#1E293B;padding:.5rem .9rem;display:flex;align-items:center;gap:.4rem;border-bottom:1px solid rgba(255,255,255,.06)}
    .mock-mdot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
    .mock-murl{flex:1;background:rgba(255,255,255,.05);border-radius:4px;height:15px;margin:0 .6rem;display:flex;align-items:center;padding:0 .5rem}
    .mock-murl span{font-size:.48rem;color:rgba(255,255,255,.22);font-family:monospace}
    .mock-mbody{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.6rem}
    .mock-mstats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
    .mock-mstat{background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.22);border-radius:10px;padding:.65rem .5rem;text-align:center}
    .mock-mstat-v{font-family:var(--fh);font-size:.9rem;font-weight:700;color:#818CF8;line-height:1}
    .mock-mstat-l{font-size:.44rem;color:rgba(255,255,255,.3);margin-top:.2rem;line-height:1.3}
    .mock-mchart{background:rgba(29,78,216,.07);border:1px solid rgba(29,78,216,.14);border-radius:10px;padding:.65rem .75rem}
    .mock-mbars{display:flex;align-items:flex-end;gap:4px;height:60px}
    .mock-mbar{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(to top,#1D4ED8,#6366F1);animation:mbanim 2.5s ease-in-out infinite}
    @keyframes mbanim{0%,100%{opacity:.45}50%{opacity:.9}}
    .mock-mlines{display:flex;flex-direction:column;gap:.35rem;margin-top:.625rem}
    .mock-ml{height:5px;border-radius:3px;background:linear-gradient(90deg,rgba(99,102,241,.45),rgba(29,78,216,.12));animation:mlanim 3s ease-in-out infinite}
    @keyframes mlanim{0%,100%{opacity:.25}50%{opacity:.7}}
    .mock-mtags{display:flex;gap:.35rem;flex-wrap:wrap}
    .mock-mtag{font-size:.44rem;color:rgba(255,255,255,.32);background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.18);border-radius:100px;padding:.2rem .55rem}
    /* results-top 3-col on desktop */
    @media(min-width:901px){.results-top{grid-template-columns:1fr 1fr 1.15fr!important;gap:3.5rem!important;align-items:center!important}}

