:root{
      --bg:#0a0a0f;
      --bg-soft:#101019;
      --panel:rgba(255,255,255,0.05);
      --panel-strong:rgba(255,255,255,0.08);
      --line:rgba(255,255,255,0.12);
      --text:#f5f4ef;
      --muted:#b8b5c7;
      --accent:#a6ff7b;
      --accent-2:#77e6ff;
      --accent-3:#ff8bd8;
      --shadow:0 20px 70px rgba(0,0,0,0.35);
      --radius:28px;
      --max:1280px;
      --ease:cubic-bezier(.22,1,.36,1);
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:1;
      font-family:"Manrope", sans-serif;
      background:
        radial-gradient(circle at 15% 20%, rgba(166,255,123,0.12), transparent 25%),
        radial-gradient(circle at 85% 12%, rgba(119,230,255,0.14), transparent 26%),
        radial-gradient(circle at 60% 80%, rgba(255,139,216,0.10), transparent 24%),
        linear-gradient(180deg, #07070b 0%, #0a0a0f 40%, #0d0d14 100%);
      color:var(--text);
      overflow-x:reveal;
    }

    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background:
        linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
      background-size:48px 48px;
      mask-image:radial-gradient(circle at center, black 30%, transparent 85%);
      opacity:.35;
    }

    ::selection{
      background:var(--accent);
      color:#071005;
    }

    a{text-decoration:none;color:inherit}
    img,svg{display:block;max-width:100%}

    .container{
      width:min(calc(100% - 2rem), var(--max));
      margin-inline:auto;
    }

    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:.65rem;
      padding:.55rem .85rem;
      border:1px solid var(--line);
      border-radius:999px;
      background:rgba(255,255,255,0.04);
      backdrop-filter:blur(14px);
      color:var(--muted);
      font-size:.9rem;
      letter-spacing:.12em;
      text-transform:uppercase;
    }

    .eyebrow::before{
      content:"";
      width:.5rem;
      height:.5rem;
      border-radius:50%;
      background:linear-gradient(135deg, var(--accent), var(--accent-2));
      box-shadow:0 0 0 6px rgba(166,255,123,0.08);
    }

    h1,h2,h3{
      margin:0;
      font-family:"Syne", sans-serif;
      line-height:.99;
      letter-spacing:-0.04em;
    }

    p{
      margin:0;
      color:var(--muted);
      line-height:1.7;
      font-size:clamp(1rem, 0.95rem + 0.25vw, 1.1rem);
    }

    .section{
      padding:clamp(4.5rem, 7vw, 8rem) 0;
      position:relative;
    }

    .section-title{
      font-size:clamp(2.4rem, 5vw, 5.5rem);
      max-width:12ch;
    }

    .section-head{
      display:grid;
      gap:1.5rem;
      margin-bottom:3rem;
    }

    .muted-block{
      max-width:62ch;
    }

    .reveal{
      opacity:0;
      transform:translateY(24px) scale(.985);
      transition:
        opacity .9s var(--ease),
        transform .9s var(--ease);
    }

    .reveal.visible{
      opacity:1;
      transform:translateY(0) scale(1);
    }

    .stagger > *{
      opacity:0;
      transform:translateY(22px);
      animation:rise .9s var(--ease) forwards;
    }

    .stagger > *:nth-child(1){animation-delay:.08s}
    .stagger > *:nth-child(2){animation-delay:.16s}
    .stagger > *:nth-child(3){animation-delay:.24s}
    .stagger > *:nth-child(4){animation-delay:.32s}
    .stagger > *:nth-child(5){animation-delay:.40s}
    .stagger > *:nth-child(6){animation-delay:.48s}

    @keyframes rise{
      to{
        opacity:1;
        transform:translateY(0);
      }
    }

    .site-header{
      position:sticky;
      top:0;
      z-index:100;
      padding:1rem 0;
      backdrop-filter:blur(16px);
      background:linear-gradient(180deg, rgba(10,10,15,0.75), rgba(10,10,15,0.28));
      border-bottom:1px solid transparent;
      transition:border-color .35s ease, background .35s ease;
    }

    .site-header.scrolled{
      border-color:var(--line);
      background:rgba(10,10,15,0.68);
    }

    .nav{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
    }

    .brand{
      display:flex;
      align-items:center;
      gap:.9rem;
      font-family:"Syne", sans-serif;
      font-weight:700;
      letter-spacing:-0.03em;
    }

    .brand-mark{
      width:2.4rem;
      height:2.4rem;
      border-radius:14px;
      position:relative;
      overflow:hidden;
      background:
        linear-gradient(135deg, rgba(166,255,123,0.2), rgba(119,230,255,0.18)),
        rgba(255,255,255,0.05);
      border:1px solid rgba(255,255,255,0.14);
      box-shadow:inset 0 1px 0 rgba(255,255,255,0.15), 0 10px 25px rgba(0,0,0,.22);
    }

    .brand-mark::before,
    .brand-mark::after{
      content:"";
      position:absolute;
      inset:18%;
      border-radius:12px;
      border:2px solid rgba(255,255,255,0.9);
      transform:rotate(45deg);
      opacity:.85;
    }

    .brand-mark::after{
      inset:34%;
      border-color:var(--accent);
    }

    .nav-links{
      display:none;
      align-items:center;
      gap:1.5rem;
      color:#d9d6e8;
      font-size:.95rem;
    }

    .nav-links a{
      position:relative;
      padding:.4rem 0;
    }

    .nav-links a::after{
      content:"";
      position:absolute;
      left:0;
      bottom:0;
      width:100%;
      height:1px;
      background:linear-gradient(90deg, var(--accent), var(--accent-2));
      transform:scaleX(0);
      transform-origin:left;
      transition:transform .35s var(--ease);
    }

    .nav-links a:hover::after{transform:scaleX(1)}

    .nav-cta{
      display:flex;
      align-items:center;
      gap:.75rem;
    }

    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.7rem;
      min-height:3.2rem;
      padding:0 1.15rem;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,0.04);
      color:var(--text);
      font-weight:700;
      font-size:.95rem;
      transition:
        transform .35s var(--ease),
        background .35s ease,
        border-color .35s ease,
        box-shadow .35s ease,
        color .35s ease;
      cursor:pointer;
      backdrop-filter:blur(14px);
    }

    .btn:hover{
      transform:translateY(-2px) scale(1.01);
      border-color:rgba(255,255,255,0.22);
      box-shadow:0 12px 30px rgba(0,0,0,.22);
    }

    .btn:active{
      transform:translateY(0) scale(.98);
    }

    .btn-primary{
      color:#081006;
      background:linear-gradient(135deg, var(--accent), #0000FF);
      border-color:transparent;
      box-shadow:0 12px 34px rgba(84, 82, 227, 0.18);
    }

    .btn-primary:hover{
      box-shadow:0 18px 44px rgba(84, 82, 227, 0.18);
      filter:saturate(1.08);
    }

    .btn-ghost:hover{
      background:rgba(84, 82, 227, 0.18);
    }

    .menu-btn{
      width:3.2rem;
      height:3.2rem;
      border-radius:50%;
      border:1px solid var(--line);
      background:rgba(255,255,255,0.04);
      color:var(--text);
      display:grid;
      place-items:center;
      backdrop-filter:blur(14px);
    }

    .menu-btn svg{
      width:1.2rem;
      height:1.2rem;
    }

    .mobile-menu{
      display:grid;
      gap:.5rem;
      padding-top:1rem;
      max-height:0;
      overflow:hidden;
      transition:max-height .45s var(--ease);
    }

    .mobile-menu.open{
      max-height:320px;
    }

    .mobile-menu a{
      padding:1rem 0;
      border-bottom:1px solid var(--line);
      color:#d9d6e8;
    }

    .hero{
      padding:clamp(2rem, 3vw, 3rem) 0 clamp(4.5rem, 8vw, 8rem);
      min-height:100svh;
      display:flex;
      align-items:center;
      position:relative;
      overflow:hidden;
    }

    .hero-grid{
      display:grid;
      gap:2rem;
      align-items:end;
    }

    .hero-copy{
      display:grid;
      gap:1.4rem;
      position:relative;
      z-index:2;
    }

    .hero-title{
      font-size:clamp(3.5rem, 10vw, 9.5rem);
      max-width:15.2ch;
      text-wrap:balance;
    }

    .hero-title .line{
      display:block;
      overflow:hidden;
    }

    .hero-title .line > span{
      display:block;
      transform:translateY(105%);
      animation:titleUp .95s var(--ease) forwards;
    }

    .hero-title .line:nth-child(1) > span{animation-delay:.12s}
    .hero-title .line:nth-child(2) > span{animation-delay:.24s}
    .hero-title .line:nth-child(3) > span{animation-delay:.36s}

    @keyframes titleUp{
      to{transform:translateY(0)}
    }

    .hero-title .accent{
      color:var(--accent);
      text-shadow:0 0 22px rgba(166,255,123,.15);
    }

    .hero-meta{
      display:grid;
      grid-template-columns:1fr;
      gap:1.2rem;
      max-width:44rem;
    }

    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:.9rem;
      padding-top:.4rem;
    }

    .hero-stage{
      position:relative;
      min-height:320px;
      display:grid;
      place-items:center;
      isolation:isolate;
    }

    .orbital{
      width:min(92vw, 620px);
      aspect-ratio:1/1;
      border-radius:50%;
      position:relative;
      display:grid;
      place-items:center;
      margin-inline:auto;
      background:
        radial-gradient(circle at center, rgba(255,255,255,0.06), rgba(255,255,255,0.01) 44%, transparent 60%);
      filter:drop-shadow(0 25px 70px rgba(0,0,0,0.45));
      animation:floaty 8s ease-in-out infinite;
    }

    @keyframes floaty{
      0%,100%{transform:translateY(0)}
      50%{transform:translateY(-12px)}
    }

    .ring{
      position:absolute;
      border-radius:50%;
      border:1px solid rgba(255,255,255,0.14);
      backdrop-filter:blur(10px);
    }

    .ring.one{inset:6%; transform:rotate(12deg)}
    .ring.two{inset:18%; transform:rotate(-15deg)}
    .ring.three{inset:32%; transform:rotate(24deg)}

    .ring::after{
      content:"";
      position:absolute;
      width:14px;
      height:14px;
      border-radius:50%;
      background:linear-gradient(135deg, var(--accent), var(--accent-2));
      top:50%;
      left:-7px;
      box-shadow:0 0 25px rgba(119,230,255,0.45);
    }

    .ring.one::after{animation:orbit 10s linear infinite}
    .ring.two::after{animation:orbit 14s linear infinite reverse}
    .ring.three::after{animation:orbit 8s linear infinite}

    @keyframes orbit{
      from{transform:rotate(0deg) translateX(0)}
      to{transform:rotate(360deg) translateX(0)}
    }

    .core{
      position:relative;
      width:56%;
      aspect-ratio:1/1;
      border-radius:34px;
      background:
        linear-gradient(135deg, rgba(255,255,255,0.13), rgba(255,255,255,0.04)),
        linear-gradient(145deg, rgba(166,255,123,.18), rgba(119,230,255,.12) 55%, rgba(255,139,216,.12));
      border:1px solid rgba(255,255,255,0.14);
      backdrop-filter:blur(24px);
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,.18),
        0 25px 80px rgba(0,0,0,.35);
      overflow:hidden;
      transform:rotate(-8deg);
    }

    .core::before{
      content:"";
      position:absolute;
      inset:10%;
      border-radius:24px;
      border:1px solid rgba(255,255,255,0.12);
      background:
        linear-gradient(180deg, rgba(255,255,255,.05), transparent 35%),
        radial-gradient(circle at 80% 20%, rgba(166,255,123,.22), transparent 26%),
        radial-gradient(circle at 20% 75%, rgba(119,230,255,.18), transparent 30%);
    }

    .core::after{
      content:"WEBSITE / MOBILE APP / SOCIAL MEDIA PLATFORM  / ENTERPRISE SOLUTION";
      position:absolute;
      inset:auto 8% 10% 8%;
      color:rgba(255,255,255,.88);
      font-family:"Syne", sans-serif;
      font-weight:700;
      letter-spacing:.12em;
      font-size:clamp(.7rem, .6rem + .3vw, .95rem);
    }

    .ticker{
      margin-top:3rem;
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
      background:rgba(255,255,255,0.03);
      overflow:hidden;
    }

    .ticker-track{
      display:flex;
      gap:2rem;
      min-width:max-content;
      padding:1rem 0;
      animation:ticker 22s linear infinite;
      color:#d8d4e9;
      font-family:"Syne", sans-serif;
      text-transform:uppercase;
      letter-spacing:.16em;
      font-size:.9rem;
    }

    .ticker-track span{
      display:inline-flex;
      align-items:center;
      gap:2rem;
    }

    .ticker-track span::after{
      content:"✦";
      color:var(--accent);
    }

    @keyframes ticker{
      from{transform:translateX(0)}
      to{transform:translateX(-50%)}
    }

    .services-layout{
      display:grid;
      gap:1.25rem;
    }

    .service-panel{
      position:relative;
      padding:1.5rem;
      border-radius:var(--radius);
      background:
        linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
      border:1px solid var(--line);
      overflow:hidden;
      min-height:220px;
      display:grid;
      align-content:space-between;
      transition:transform .45s var(--ease), border-color .35s ease, background .35s ease;
    }

    .service-panel:hover{
      transform:translateY(-6px);
      border-color:rgba(255,255,255,0.2);
      background:
        linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
    }

    .service-panel::before{
      content:"";
      position:absolute;
      inset:auto -10% -25% auto;
      width:180px;
      height:180px;
      border-radius:50%;
      background:radial-gradient(circle, rgba(166,255,123,.18), transparent 65%);
      filter:blur(6px);
    }

    .service-index{
      font-family:"Syne", sans-serif;
      font-size:.9rem;
      color:var(--accent);
      letter-spacing:.1em;
      text-transform:uppercase;
    }

    .service-panel h3{
      font-size:clamp(1.6rem, 1.2rem + 1vw, 2.4rem);
      margin-bottom:.8rem;
    }

    .service-bottom{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:1rem;
    }

    .service-icon{
      width:58px;
      height:58px;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.12);
      display:grid;
      place-items:center;
      background:rgba(255,255,255,.04);
      backdrop-filter:blur(10px);
    }

    .service-icon svg{
      width:28px;
      height:28px;
      stroke:var(--text);
    }

    .split-showcase{
      display:grid;
      gap:1.5rem;
      align-items:stretch;
    }

    .showcase-art{
      position:relative;
      min-height:500px;
      border-radius:34px;
      overflow:hidden;
      border:1px solid var(--line);
      background:
        linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
        radial-gradient(circle at 20% 20%, rgba(166,255,123,.14), transparent 24%),
        radial-gradient(circle at 80% 40%, rgba(119,230,255,.16), transparent 26%),
        radial-gradient(circle at 40% 80%, rgba(255,139,216,.12), transparent 30%);
      box-shadow:var(--shadow);
    }

    .showcase-grid{
      position:absolute;
      inset:0;
      display:grid;
      grid-template-columns:1.2fr .8fr;
      grid-template-rows:1fr 1fr;
      gap:1rem;
      padding:1rem;
    }

    .window{
      position:relative;
      border-radius:24px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(6,6,10,.42);
      backdrop-filter:blur(18px);
      overflow:hidden;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
      animation:windowFloat 7s ease-in-out infinite;
    }

    .window:nth-child(2){animation-delay:-2s}
    .window:nth-child(3){animation-delay:-3.5s}
    .window:nth-child(4){animation-delay:-1.25s}

    @keyframes windowFloat{
      0%,100%{transform:translateY(0)}
      50%{transform:translateY(-10px)}
    }

    .window.large{
      grid-row:1 / span 2;
      padding:1.2rem;
    }

    .window .bar{
      display:flex;
      align-items:center;
      gap:.45rem;
      padding-bottom:1rem;
    }

    .dot{
      width:.6rem;
      height:.6rem;
      border-radius:50%;
      background:rgba(255,255,255,.24);
    }

    .window-content{
      display:grid;
      gap:.9rem;
    }

    .line-ui,
    .pill-ui,
    .stat-ui{
      border-radius:999px;
      background:linear-gradient(90deg, rgba(255,255,255,.12), rgba(255,255,255,.03));
      border:1px solid rgba(255,255,255,.08);
    }

    .line-ui{height:14px}
    .line-ui.short{width:48%}
    .line-ui.med{width:72%}
    .line-ui.long{width:100%}
    .pill-ui{
      height:36px;
      width:fit-content;
      padding:0 1rem;
      display:inline-flex;
      align-items:center;
      color:#f0eef9;
      font-size:.85rem;
      letter-spacing:.08em;
      text-transform:uppercase;
    }

    .stat-ui{
      height:90px;
      border-radius:20px;
    }

    .showcase-copy{
      display:grid;
      gap:1.2rem;
      align-content:center;
    }

    .metrics{
      display:grid;
      gap:1rem;
      padding-top:.5rem;
    }

    .metric{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:1rem;
      padding:1rem 0;
      border-bottom:1px solid var(--line);
    }

    .metric strong{
      font-family:"Syne", sans-serif;
      font-size:clamp(2rem, 1.6rem + 1.2vw, 3.3rem);
      line-height:1;
      color:var(--text);
    }

    .process{
      display:grid;
      gap:1rem;
    }

    .process-row{
      display:grid;
      gap:1rem;
      padding:1.3rem 0;
      border-bottom:1px solid var(--line);
      transition:transform .35s var(--ease);
    }

    .process-row:hover{
      transform:translateX(8px);
    }

    .process-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
    }

    .process-row h3{
      font-size:clamp(1.5rem, 1.1rem + 1vw, 2.4rem);
    }

    .process-num{
      color:var(--accent);
      font-family:"Syne", sans-serif;
      font-size:.95rem;
      letter-spacing:.1em;
    }

    .cta-band{
      position:relative;
      padding:clamp(2rem, 4vw, 3rem);
      border-radius:36px;
      overflow:hidden;
      border:1px solid rgba(255,255,255,.14);
      background:
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.03)),
        radial-gradient(circle at 15% 20%, rgba(166,255,123,.18), transparent 26%),
        radial-gradient(circle at 85% 30%, rgba(119,230,255,.18), transparent 30%);
      box-shadow:var(--shadow);
    }

    .cta-band-inner{
      display:grid;
      gap:1.2rem;
      align-items:center;
    }

    .cta-band h2{
      font-size:clamp(2.2rem, 4vw, 4.8rem);
      max-width:10ch;
    }



    .faq{
      display:grid;
      gap:1rem;
      max-width:860px;
      margin-inline:auto;
    }

    .faq details{
      border:1px solid var(--line);
      border-radius:22px;
      background:rgba(255,255,255,.04);
      overflow:hidden;
    }

    .faq summary{
      cursor:pointer;
      list-style:none;
      padding:1.2rem 1.25rem;
      font-weight:700;
      color:var(--text);
    }

    .faq summary::-webkit-details-marker{display:none}
    .faq details p{
      padding:0 1.25rem 1.2rem;
    }







    .footer{
      padding:1rem 0 3rem;
      color:#cdc8de;
    }

    .footer-grid{
      display:grid;
      gap:1.5rem;
      padding-top:1.5rem;
      border-top:1px solid var(--line);
    }

    .footer small{
      color:#9e99b4;
      font-size:.92rem;
    }

    .cursor-glow{
      position:fixed;
      width:240px;
      height:240px;
      border-radius:50%;
      pointer-events:none;
      z-index:0;
      background:radial-gradient(circle, rgba(166,255,123,.10), rgba(119,230,255,.06), transparent 65%);
      filter:blur(18px);
      transform:translate(-50%, -50%);
      opacity:.6;
      transition:opacity .25s ease;
    }

    @media (prefers-reduced-motion: reduce){
      *,
      *::before,
      *::after{
        animation:none !important;
        transition:none !important;
        scroll-behavior:auto !important;
      }
      .reveal{
        opacity:1 !important;
        transform:none !important;
      }
    }

    @media (min-width: 820px){
      .nav-links{display:flex}
      .menu-btn,.mobile-menu{display:none}
      .hero-grid{
        grid-template-columns:1.05fr .95fr;
      }
      .hero-meta{
        grid-template-columns:1.2fr auto;
        align-items:end;
      }
      .services-layout{
        grid-template-columns:1.2fr .8fr;
      }
      .services-layout .service-panel:nth-child(1){
        min-height:300px;
      }
      .services-layout .service-panel:nth-child(2),
      .services-layout .service-panel:nth-child(3){
        min-height:240px;
      }
      .services-layout .service-panel:nth-child(1){
        grid-row:1 / span 2;
      }
      .split-showcase{
        grid-template-columns:1fr .9fr;
      }
      .section-head{
        grid-template-columns:1.15fr .85fr;
        align-items:end;
      }
      .metrics{
        grid-template-columns:1fr 1fr;
      }
      .cta-band-inner{
        grid-template-columns:1.1fr .9fr;
      }
      .footer-grid{
        grid-template-columns:1.2fr .8fr .8fr;
        align-items:end;
      }
    }

    @media (min-width: 1100px){
      .services-layout{
        grid-template-columns:1.1fr .9fr .9fr;
        grid-template-rows:1fr 1fr;
      }
      .services-layout .service-panel:nth-child(1){
        grid-row:1 / span 2;
      }
    }