:root{
    --bg:#03050B;
    --glass:rgba(255,255,255,0.035);
    --glass-strong:rgba(255,255,255,0.07);
    --line:rgba(148,180,255,0.16);
    --line-bright:rgba(148,180,255,0.4);
    --ink:#F3F6FF;
    --silver:#C9D3EC;
    --dim:rgba(243,246,255,0.66);
    --blue:#3B7BFF;
    --cyan:#7CC7FF;
    --gold:#E8B25A;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  html{ background-color:#03050B; }
  body{
    background-color:#03050B;
    background-image:
      radial-gradient(ellipse 70% 50% at 22% 0%, rgba(59,123,255,0.16) 0%, transparent 60%),
      radial-gradient(ellipse 60% 45% at 85% 15%, rgba(124,199,255,0.10) 0%, transparent 60%),
      linear-gradient(rgba(3,5,11,0.93), rgba(3,5,11,0.93)),
      url('images/africa-real.jpg?v=1');
    background-size:140% 140%, 140% 140%, cover, cover;
    background-position:0% 0%, 0% 0%, center 35%, center 35%;
    background-attachment:scroll, scroll, fixed, fixed;
    background-repeat:no-repeat;
    animation:bgDrift 42s ease-in-out infinite alternate;
    color:var(--ink);
    font-family:'Inter',sans-serif;
    font-weight:300;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  @keyframes bgDrift{ 0%{ background-position:0% 0%; } 100%{ background-position:8% 6%; } }
  @media (prefers-reduced-motion: reduce){ body{ animation:none; } }
  h1,h2,h3,.display{ font-family:'Space Grotesk',sans-serif; letter-spacing:-0.01em; font-weight:600; }
  a{ color:inherit; text-decoration:none; }
  .wrap{ max-width:1200px; margin:0 auto; padding:0 32px; }
  @media (max-width:640px){ .wrap{ padding:0 20px; } }
  @media (max-width:380px){ .wrap{ padding:0 16px; } }

  .glass{ background:var(--glass); border:1px solid var(--line); border-radius:20px; backdrop-filter:blur(18px); position:relative; }

  header{ position:sticky; top:0; z-index:50; background:transparent; padding:16px 20px 0; }
  nav{
    display:flex; align-items:center; justify-content:space-between;
    padding:12px 22px; max-width:1080px; margin:0 auto;
    background:rgba(3,5,11,0.6); backdrop-filter:blur(18px);
    border:1px solid var(--line); border-radius:100px;
    box-shadow:0 8px 32px rgba(0,0,0,0.35);
    transition:box-shadow .4s ease, border-color .4s ease;
  }
  nav:hover{ border-color:var(--line-bright); box-shadow:0 8px 40px rgba(59,123,255,0.18); }
  .logo-mark{ display:flex; align-items:center; gap:12px; }
  .logo-mark img.wordmark-logo{ height:42px; width:auto; display:block; }
  footer img.footer-logo{ height:30px; width:auto; opacity:0.9; }
  .navlinks{ display:flex; gap:36px; font-size:13.5px; font-weight:400; }
  .navlinks a{ color:var(--dim); transition:color .2s; }
  .navlinks a:hover{ color:var(--cyan); }
  .nav-cta{ background:var(--blue); color:white; padding:11px 22px; border-radius:100px; font-size:13px; font-weight:500; box-shadow:0 0 24px rgba(59,123,255,0.4); transition:transform .25s, box-shadow .25s; white-space:nowrap; }
  .nav-cta:hover{ transform:translateY(-2px); box-shadow:0 0 34px rgba(59,123,255,0.6); }
  @media (max-width:1024px){ .navlinks{ display:none; } }
  @media (max-width:640px){
    header{ padding:12px 14px 0; }
    nav{ padding:10px 14px; gap:10px; }
    .logo-mark img.wordmark-logo{ height:34px; }
    .nav-cta{ padding:9px 16px; font-size:12px; }
  }
  @media (max-width:380px){
    .logo-mark img.wordmark-logo{ height:30px; }
    .nav-cta{ padding:8px 13px; font-size:11px; }
  }

  .eyebrow{ display:inline-flex; align-items:center; gap:9px; font-size:11.5px; font-weight:500; color:var(--cyan); letter-spacing:0.16em; text-transform:uppercase; margin-bottom:20px; }
  .eyebrow .ln{ width:28px; height:1px; background:var(--cyan); }

  /* HERO */
  .hero{ padding:78px 0 48px; position:relative; overflow:hidden; }
  .hero-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; width:100%; }
  @media (max-width:1024px){ .hero-grid{ grid-template-columns:1fr; gap:40px; } }
  h1.hero-title{ font-size:54px; line-height:1.08; margin-bottom:22px; color:var(--silver); }
  h1.hero-title .hl{ background:linear-gradient(90deg,var(--cyan),var(--blue)); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .hero-sub{ font-size:16.5px; color:var(--dim); max-width:440px; margin-bottom:36px; font-weight:300; }
  .hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }
  @media (max-width:640px){
    .hero{ padding:20px 0 44px; }
    h1.hero-title{ font-size:38px; margin-bottom:18px; }
    .hero-sub{ font-size:15px; max-width:none; margin-bottom:28px; }
  }
  @media (max-width:380px){
    h1.hero-title{ font-size:32px; }
  }

  @keyframes heroRise{ from{ opacity:0; transform:translateY(16px); } to{ opacity:1; transform:translateY(0); } }
  .hero .eyebrow, .hero-title, .hero-sub, .hero-ctas, .hero .stat-row{
    animation:heroRise .8s cubic-bezier(.16,.8,.3,1) both;
  }
  .hero .eyebrow{ animation-delay:.05s; }
  .hero-title{ animation-delay:.15s; }
  .hero-sub{ animation-delay:.28s; }
  .hero-ctas{ animation-delay:.4s; }
  .hero .stat-row{ animation-delay:.52s; }
  .hero-bg-photo{
    position:absolute; inset:-16px; z-index:0;
    background-image:
      linear-gradient(100deg, rgba(3,5,11,0.9) 0%, rgba(3,5,11,0.7) 38%, rgba(3,5,11,0.3) 68%, rgba(3,5,11,0.55) 100%),
      url('/images/jhb-skyline-day.jpeg?v=1');
    background-size:cover; background-position:center 48%;
  }
  .hero-grid{ position:relative; z-index:1; }
  @media (max-width:1024px){ .hero-bg-photo{ background-position:center 40%; } }
  @media (max-width:640px){
    .hero-bg-photo{
      display:block !important; visibility:visible !important; opacity:1 !important;
      position:absolute !important; top:-16px !important; left:-16px !important; right:-16px !important;
      height:400px !important; z-index:0 !important;
      background-image:
        linear-gradient(180deg, rgba(3,5,11,0.1) 0%, rgba(3,5,11,0.3) 45%, rgba(3,5,11,0.82) 85%, rgba(3,5,11,0.98) 100%),
        url('/images/jhb-skyline-day.jpeg?v=1') !important;
      background-size:cover !important; background-position:center 38% !important;
    }
  }
  .hero-mobile-bg{ display:none; }
  .africa-panel{ animation:heroRise .9s cubic-bezier(.16,.8,.3,1) .5s both; }
  @media (prefers-reduced-motion: reduce){
    .hero .eyebrow, .hero-title, .hero-sub, .hero-ctas, .hero .stat-row, .africa-panel{ animation:none; opacity:1; transform:none; }
  }
  .btn-primary{ background:var(--blue); color:white; padding:15px 28px; border-radius:100px; font-weight:500; font-size:14px; display:inline-flex; align-items:center; gap:8px; box-shadow:0 0 30px rgba(59,123,255,0.45); transition:transform .25s, box-shadow .25s; }
  .btn-primary:hover{ transform:translateY(-2px); box-shadow:0 0 44px rgba(59,123,255,0.7); }
  .btn-secondary{ border:1px solid var(--line-bright); padding:15px 28px; border-radius:100px; font-weight:500; font-size:14px; color:var(--silver); transition:transform .25s, box-shadow .25s, border-color .25s; }
  .btn-secondary:hover{ transform:translateY(-2px); box-shadow:0 0 24px rgba(124,199,255,0.22); border-color:var(--cyan); }
  a:focus-visible, .cta:focus-visible, button:focus-visible{ outline:2px solid var(--cyan); outline-offset:3px; border-radius:8px; }
  .stat-row{ display:flex; gap:0; margin-top:52px; }
  .stat-row div{ flex:1; min-width:0; padding-right:20px; margin-right:20px; border-right:1px solid var(--line); }
  .stat-row div:last-child{ border-right:none; padding-right:0; margin-right:0; }
  .stat-row strong{ display:block; font-family:'Space Grotesk',sans-serif; font-size:24px; color:var(--cyan); font-weight:600; }
  .stat-row span{ font-size:11.5px; color:var(--dim); letter-spacing:0.04em; }
  @media (max-width:640px){
    .stat-row{ margin-top:34px; flex-wrap:wrap; gap:16px 0; }
    .stat-row div{ flex:1 1 40%; padding-right:14px; margin-right:14px; }
    .stat-row strong{ font-size:20px; }
  }
  @media (max-width:380px){
    .stat-row div{ flex:1 1 100%; border-right:none; padding-right:0; margin-right:0; padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid var(--line); }
    .stat-row div:last-child{ padding-bottom:0; margin-bottom:0; border-bottom:none; }
  }

  /* Africa panel */
  .africa-panel{ padding:0; overflow:hidden; height:460px; background:#03050B; }
  @media (max-width:1024px){ .africa-panel{ height:360px; } }
  @media (max-width:640px){ .africa-panel{ height:280px; border-radius:16px; } }
  @media (max-width:380px){ .africa-panel{ height:220px; } }
  .africa-panel-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; display:block; }
  .africa-panel .node, .africa-panel .node-label, .africa-panel .network-lines, .africa-panel .africa-map-bg, .africa-panel .africa-logo-mark, .africa-panel .scan-line{ display:none; }
  .africa-panel .africa-caption{ display:none; }
  .africa-map-bg{ position:absolute; inset:0; background-image:url('../images/africa-globe.jpg?v=4'); background-size:cover; background-position:center; opacity:0.6; filter:saturate(1.15) brightness(1.05); animation:drift 14s ease-in-out infinite alternate; }
  @keyframes drift{ 0%{ background-position:78% 42%; } 100%{ background-position:74% 46%; } }
  .africa-panel::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(3,5,11,0.1) 0%, rgba(3,5,11,0.92) 100%); }
  .scan-line{ position:absolute; left:0; right:0; height:1.5px; background:linear-gradient(90deg, transparent, var(--cyan), transparent); box-shadow:0 0 14px var(--cyan); animation:scan 5s linear infinite; opacity:0.55; z-index:3; }
  @keyframes scan{ 0%{ top:4%; } 100%{ top:96%; } }
  .node{ position:absolute; z-index:4; width:8px; height:8px; border-radius:50%; }
  .node.major{ width:12px; height:12px; background:var(--gold); box-shadow:0 0 18px 4px rgba(232,178,90,0.7); animation:corepulse 2.2s ease-in-out infinite; }
  .node.minor{ background:var(--cyan); box-shadow:0 0 10px 2px rgba(124,199,255,0.6); animation:corepulse 2.6s ease-in-out infinite; }
  @keyframes corepulse{ 0%,100%{ transform:scale(1); opacity:1; } 50%{ transform:scale(1.4); opacity:0.6; } }
  .node-label{ position:absolute; z-index:4; font-size:10px; letter-spacing:0.08em; color:var(--dim); font-weight:400; white-space:nowrap; }
  .node-label.major{ color:var(--gold); font-weight:500; }
  .n-jhb{ top:77.9%; left:72.4%; } .nl-jhb{ top:80.4%; left:75.4%; }
  .n-cpt{ top:86.6%; left:65.3%; } .nl-cpt{ top:88.6%; left:60.3%; }
  .n-dbn{ top:82.1%; left:74.6%; } .nl-dbn{ top:84.1%; left:77.6%; }
  .n-nbo{ top:49.5%; left:78.8%; } .nl-nbo{ top:46%; left:78.8%; }
  .n-los{ top:40.6%; left:54.3%; } .nl-los{ top:43.1%; left:46.3%; }
  .n-cai{ top:13.8%; left:74.7%; } .nl-cai{ top:9.8%; left:71.7%; }
  .africa-caption{ position:absolute; bottom:20px; left:24px; z-index:4; font-size:11px; letter-spacing:0.1em; color:var(--dim); text-transform:uppercase; }
  .africa-caption strong{ color:var(--silver); }
  .africa-logo-mark{ position:absolute; top:18px; left:20px; z-index:4; opacity:0.9; }
  .africa-logo-mark img{ height:22px; width:auto; }

  /* Holographic browser carousel — removed (dead code); corresponding HTML no longer exists */


  .cinematic-panel{ position:relative; height:520px; overflow:hidden; padding:0; }
  .cinematic-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 30%; }
  .cinematic-overlay{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(3,5,11,0.92) 0%, rgba(3,5,11,0.55) 42%, rgba(3,5,11,0.05) 75%); }
  .cinematic-caption{ position:absolute; left:44px; right:44px; bottom:44px; z-index:2; max-width:480px; }
  @media (max-width:1024px){ .cinematic-panel{ height:440px; } }
  @media (max-width:640px){
    .cinematic-panel{ height:340px; }
    .cinematic-overlay{ background:linear-gradient(180deg, rgba(3,5,11,0.35) 0%, rgba(3,5,11,0.75) 55%, rgba(3,5,11,0.95) 100%); }
    .cinematic-caption{ left:20px; right:20px; bottom:24px; max-width:none; }
    .cinematic-caption h2{ font-size:22px !important; }
  }
  .cinematic-panel--short{ height:420px; }
  @media (max-width:1024px){ .cinematic-panel--short{ height:380px; } }
  @media (max-width:640px){ .cinematic-panel--short{ height:300px; } }

  section{ padding:100px 0; position:relative; }
  @media (max-width:1024px){ section{ padding:80px 0; } }
  @media (max-width:640px){ section{ padding:64px 0; } }

  .section-head{ max-width:600px; margin-bottom:52px; position:relative; padding-top:8px; }
  .section-head h2{ font-size:34px; margin-bottom:14px; color:var(--silver); }
  .section-head p{ color:var(--dim); font-size:15.5px; font-weight:300; }
  @media (max-width:640px){
    .section-head{ margin-bottom:36px; }
    .section-head h2{ font-size:26px; }
  }

  .big-num{
    font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:120px;
    color:rgba(148,180,255,0.06); position:absolute; top:-10px; left:-6px; line-height:1;
    user-select:none; pointer-events:none;
  }
  @media (max-width:640px){ .big-num{ font-size:64px; top:-4px; } }

  .cards-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
  @media (max-width:1024px){ .cards-4{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:640px){ .cards-4{ grid-template-columns:1fr; } }

  .price-card{ padding:28px 24px; display:flex; flex-direction:column; transition:transform .25s, box-shadow .25s, border-color .25s; }
  .price-card:hover{ transform:translateY(-5px); box-shadow:0 0 44px rgba(59,123,255,0.2); border-color:var(--line-bright); }
  .price-card.featured{ border-color:rgba(124,199,255,0.5); background:rgba(124,199,255,0.045); }
  .price-card.featured::before{ content:'MOST POPULAR'; position:absolute; top:-11px; left:22px; background:var(--cyan); color:#04121F; font-size:10px; font-weight:600; padding:4px 12px; border-radius:100px; letter-spacing:0.06em; }
  .price-card h3{ font-size:17px; margin-bottom:4px; color:var(--silver); font-weight:500; }
  .price-card .tier-desc{ font-size:12.5px; color:var(--dim); margin-bottom:14px; min-height:32px; }
  .price-card .price{ font-family:'Space Grotesk',sans-serif; font-size:27px; font-weight:600; margin:4px 0 4px; color:var(--ink); }
  .price-card .price small{ font-size:11.5px; font-weight:400; color:var(--dim); }
  .price-card ul{ list-style:none; margin:16px 0 24px; flex:1; }
  .price-card li{ font-size:12.5px; padding:5px 0; padding-left:18px; position:relative; color:var(--dim); }
  .price-card li::before{ content:''; position:absolute; left:0; top:11px; width:5px; height:5px; border-radius:50%; background:var(--cyan); }
  .price-card .ideal{ font-size:11px; color:var(--dim); margin-bottom:16px; line-height:1.5; }
  .price-card .ideal strong{ display:block; color:var(--cyan); font-weight:500; margin-bottom:3px; font-size:10.5px; text-transform:uppercase; letter-spacing:0.06em; }
  .price-card .cta{ text-align:center; padding:11px; border-radius:100px; font-weight:500; font-size:12.5px; border:1px solid var(--line-bright); display:block; transition:transform .22s, box-shadow .22s, border-color .22s; }
  .price-card .cta:hover{ transform:translateY(-2px); box-shadow:0 0 22px rgba(124,199,255,0.22); border-color:var(--cyan); }
  .price-card.featured .cta{ background:var(--blue); border-color:var(--blue); }
  .price-card.featured .cta:hover{ box-shadow:0 0 28px rgba(59,123,255,0.55); }

  .trust-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
  @media (max-width:1024px){ .trust-grid{ grid-template-columns:repeat(3,1fr); } }
  @media (max-width:640px){ .trust-grid{ grid-template-columns:repeat(2,1fr); } }
  .trust-badge{ display:flex; align-items:center; gap:10px; padding:16px 18px; font-size:13px; color:var(--silver); font-weight:400; transition:border-color .3s, transform .3s; }
  .trust-badge:hover{ border-color:var(--line-bright); transform:translateY(-2px); }
  .trust-dot{ width:7px; height:7px; border-radius:50%; background:var(--cyan); flex:none; box-shadow:0 0 8px 1px rgba(124,199,255,0.5); animation:trustPulse 3.4s ease-in-out infinite; }
  @keyframes trustPulse{ 0%,100%{ opacity:0.6; transform:scale(1); } 50%{ opacity:1; transform:scale(1.25); } }
  @media (prefers-reduced-motion: reduce){ .trust-dot{ animation:none; } }

  .includes-strip{ padding:34px 40px; }
  @media (max-width:640px){ .includes-strip{ padding:26px 20px; } }
  .swipe-hint{ display:none; }
  @media (max-width:640px){
    .swipe-hint{ display:block; margin-top:20px; font-size:12.5px; color:var(--dim); letter-spacing:0.02em; }
  }
  .portfolio-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; margin-top:28px; }
  @media (max-width:1024px){ .portfolio-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:640px){
    .portfolio-grid{
      display:flex !important; grid-template-columns:unset !important; gap:14px !important;
      overflow-x:auto !important; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
      margin:28px -32px 0 !important; padding:0 32px 10px !important;
      scrollbar-width:none;
    }
    .portfolio-grid::-webkit-scrollbar{ display:none; }
    .portfolio-grid .portfolio-card{ flex:0 0 80% !important; scroll-snap-align:center; aspect-ratio:4/3.4 !important; }
  }
  /* Touch devices can't hover — keep the live-demo badge and hint visible without it */
  @media (hover:none){
    .portfolio-live-badge{ opacity:1; transform:translate(-50%,-50%) scale(1); position:absolute; top:auto; bottom:44px; background:rgba(59,123,255,0.85); }
    .portfolio-card-live .device-frame{ transform:none !important; }
  }
  .portfolio-card{ position:relative; border-radius:14px; overflow:hidden; border:1px solid var(--line-bright); aspect-ratio:4/3; transition:transform .3s ease, box-shadow .3s ease; background:#070a14; }
  .portfolio-card{
    background-image:
      linear-gradient(180deg, rgba(3,5,11,0.72) 0%, rgba(3,5,11,0.55) 45%, rgba(3,5,11,0.85) 100%),
      radial-gradient(ellipse 75% 60% at 50% 40%, rgba(59,123,255,0.10) 0%, transparent 70%),
      linear-gradient(rgba(148,180,255,0.04) 1px, transparent 1px),
      linear-gradient(90deg, rgba(148,180,255,0.04) 1px, transparent 1px),
      url('/images/soweto-office.jpeg?v=1');
    background-size: cover, auto, 26px 26px, 26px 26px, cover;
    background-position: center, center, center, center, center 25%;
  }
  .portfolio-card:hover{ transform:translateY(-4px); box-shadow:0 20px 50px -16px rgba(59,123,255,0.35); }
  .portfolio-card::after{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(0deg, rgba(3,5,11,0.82) 0%, rgba(3,5,11,0.05) 42%, transparent 65%); }
  .portfolio-label{ position:absolute; left:14px; right:14px; bottom:12px; z-index:3; font-size:13px; font-weight:500; color:#fff; }
  .portfolio-card-live{ display:block; text-decoration:none; color:inherit; cursor:pointer; }
  .portfolio-card-live::before{ content:""; position:absolute; inset:0; z-index:2; background:rgba(3,5,11,0); transition:background .3s ease; }
  .portfolio-card-live:hover::before{ background:rgba(3,5,11,0.2); }
  .portfolio-live-badge{
    position:absolute; z-index:4; left:50%; top:44%; transform:translate(-50%,-50%) scale(0.92);
    font-size:12.5px; font-weight:600; color:#fff; background:rgba(59,123,255,0.92);
    padding:9px 16px; border-radius:100px; white-space:nowrap;
    opacity:0; transition:opacity .3s ease, transform .3s ease; pointer-events:none;
  }
  .portfolio-card-live:hover .portfolio-live-badge{ opacity:1; transform:translate(-50%,-50%) scale(1); }

  /* --- Live device-frame mockups --- */
  .device-stage{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:6% 4% 4%; }
  .device-frame{ position:absolute; transition:transform .4s cubic-bezier(.16,.8,.24,1); }
  .device-laptop{
    width:104%; aspect-ratio:16/10; left:50%; top:50%; transform:translate(-50%,-50%);
    background:linear-gradient(155deg,#e8ebf2,#b9c0d1); border-radius:10px 10px 3px 3px; padding:3.2% 3.2% 0;
  }
  .portfolio-card-live:hover .device-laptop{ transform:translate(-50%,-53%); }
  .device-laptop .device-screen{ width:100%; height:100%; background:#070a14; border-radius:3px; overflow:hidden; position:relative; }
  .device-laptop-base{ position:absolute; left:-4%; right:-4%; bottom:-4.5%; height:4.5%; background:linear-gradient(180deg,#c7cddc,#98a0b6); border-radius:0 0 6px 6px; }
  .device-phone{
    width:23%; aspect-ratio:9/19; right:3%; bottom:2%;
    background:#12141c; border-radius:14%/7%; padding:4% 3%;
    box-shadow:0 14px 30px -10px rgba(0,0,0,0.6);
  }
  .portfolio-card-live:hover .device-phone{ transform:translateY(-6%); }
  .device-phone .device-screen{ width:100%; height:100%; background:#070a14; border-radius:11%/5.5%; overflow:hidden; position:relative; }
  .device-screen iframe{
    position:absolute; top:0; left:0; width:100%; height:100%; border:0; pointer-events:none;
    background:#070a14; transform-origin:top left;
  }
  @media (max-width:1024px){ .device-phone{ display:none; } }
  @media (max-width:640px){ .device-stage{ padding:5% 3% 3%; } .device-laptop{ width:106%; } }

  .includes-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:14px; margin-top:20px; }
  @media (max-width:1024px){ .includes-grid{ grid-template-columns:repeat(3,1fr); } }
  @media (max-width:640px){ .includes-grid{ grid-template-columns:repeat(2,1fr); } }
  .includes-grid div{ font-size:12px; color:var(--dim); text-align:center; padding:10px 6px; border-radius:10px; background:rgba(255,255,255,0.02); border:1px solid var(--line); }

  .process{ display:flex; gap:20px; }
  @media (max-width:1024px){ .process{ flex-direction:column; } }
  .process .step{ flex:1; padding:26px; }
  .process .step .num{ font-family:'Space Grotesk',sans-serif; color:var(--cyan); font-weight:600; font-size:13px; margin-bottom:12px; display:block; }
  .process .step h3{ font-size:17px; margin-bottom:8px; color:var(--silver); font-weight:500; }
  .process .step p{ font-size:13.5px; color:var(--dim); font-weight:300; }

  .contact-band{ padding:56px; display:flex; justify-content:space-between; align-items:center; gap:32px; flex-wrap:wrap; }
  .contact-band h2{ font-size:30px; margin-bottom:10px; color:var(--silver); }
  .contact-band p{ color:var(--dim); font-size:14.5px; max-width:360px; font-weight:300; }
  .contact-links{ display:flex; flex-direction:column; gap:10px; font-size:14px; }
  .contact-links a{ color:var(--cyan); }
  @media (max-width:1024px){ .contact-band{ padding:40px; } }
  @media (max-width:640px){
    .contact-band{ padding:32px 24px; flex-direction:column; text-align:center; }
    .contact-band p{ max-width:none; margin:0 auto; }
    .contact-links{ align-items:center; }
  }

  footer{ padding:46px 24px; text-align:center; font-size:12px; color:var(--dim); display:flex; align-items:center; justify-content:center; gap:10px; border-top:1px solid var(--line); margin-top:20px; }
  footer img{ height:20px; opacity:0.85; }
  /* ===== PREMIUM MOTION SYSTEM ===== */
  #particle-field{ position:fixed; inset:0; z-index:0; pointer-events:none; opacity:0.55; }
  body > *:not(#particle-field){ position:relative; z-index:1; }

  @keyframes floatY{ 0%,100%{ transform:translateY(0px); } 50%{ transform:translateY(-6px); } }
  .float-panel{ animation:floatY 6s ease-in-out infinite; }
  .float-panel.delay1{ animation-delay:1.2s; }
  .float-panel.delay2{ animation-delay:2.4s; }

  @keyframes glowPulse{
    0%,100%{ box-shadow:0 0 0px rgba(124,199,255,0); border-color:var(--line); }
    50%{ box-shadow:0 0 30px rgba(124,199,255,0.22); border-color:rgba(124,199,255,0.55); }
  }
  .glow-border{ animation:glowPulse 4.5s ease-in-out infinite; }

  .sweep{ position:relative; overflow:hidden; }
  .sweep::after{
    content:''; position:absolute; top:0; left:-60%; width:40%; height:100%;
    background:linear-gradient(100deg, transparent, rgba(124,199,255,0.13), transparent);
    transform:skewX(-20deg); animation:sweepMove 6s ease-in-out infinite; pointer-events:none;
  }
  @keyframes sweepMove{ 0%{ left:-60%; } 45%{ left:120%; } 100%{ left:120%; } }

  @keyframes radarSpin{ 0%{ transform:rotate(0deg); } 100%{ transform:rotate(360deg); } }
  .radar-sweep{
    position:absolute; inset:0; z-index:2; pointer-events:none;
    background:conic-gradient(from 0deg, rgba(124,199,255,0.16) 0deg, transparent 40deg, transparent 360deg);
    animation:radarSpin 6s linear infinite;
    mix-blend-mode:screen;
  }

  .network-lines{ position:absolute; inset:0; z-index:3; pointer-events:none; }
  .network-lines path{ stroke:rgba(124,199,255,0.45); stroke-width:1; fill:none; stroke-dasharray:6 5; animation:dashFlow 3s linear infinite; }
  @keyframes dashFlow{ to{ stroke-dashoffset:-100; } }

  .stat-counter{ font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:38px; color:var(--cyan); }
  .stats-band{ position:relative; padding:44px 40px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; overflow:hidden; }
  @media (max-width:640px){ .stats-band{ padding:32px 24px; gap:28px 20px; } }
  .stats-bg{ position:absolute; inset:0; background-image:url('/images/boardroom-team.jpg?v=1'); background-size:cover; background-position:center 30%; opacity:0.24; filter:saturate(1.1); z-index:0; }
  .stats-band::before{ content:''; position:absolute; inset:0; background:linear-gradient(120deg, rgba(3,5,11,0.85), rgba(3,5,11,0.55)); z-index:0; }
  .stats-band .stat-item{ position:relative; z-index:1; }
  .stat-item{ flex:1; min-width:140px; text-align:center; }
  .stat-item .stat-label{ display:block; margin-top:6px; font-size:12px; color:var(--dim); letter-spacing:0.04em; }

  .type-cursor{ color:var(--cyan); animation:blink 0.9s step-end infinite; margin-left:2px; }
  @keyframes blink{ 0%,100%{ opacity:1; } 50%{ opacity:0; } }

  .reveal{ opacity:1; transform:none; transition:opacity .7s ease, transform .7s ease; }
  html.js-ready .reveal{ opacity:0; transform:translateY(24px); }
  html.js-ready .reveal.in-view{ opacity:1; transform:translateY(0); }
  .reveal-stagger > *{ opacity:1; transform:none; transition:opacity .6s ease, transform .6s ease; }
  html.js-ready .reveal-stagger > *{ opacity:0; transform:translateY(20px); }
  html.js-ready .reveal-stagger.in-view > *{ opacity:1; transform:translateY(0); }
  .reveal-stagger.in-view > *:nth-child(1){ transition-delay:0.05s; }
  .reveal-stagger.in-view > *:nth-child(2){ transition-delay:0.15s; }
  .reveal-stagger.in-view > *:nth-child(3){ transition-delay:0.25s; }
  .reveal-stagger.in-view > *:nth-child(4){ transition-delay:0.35s; }

  .parallax-target{ transition:transform .15s ease-out; will-change:transform; }
  /* ===== END MOTION SYSTEM ===== */