/*
Theme Name: GEXAUZ Studio
Theme URI: https://gexauz.com/
Author: GEXAUZ
Description: GEXAUZ creative studio theme with dynamic Clients, Services, Portfolio, Process, Team, Products, Gallery and Testimonials modules.
Version: 2.8.3
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: gexauz
*/


:root{
    /* ===== matched to the GEXAUZ site palette ===== */
    --lime:#6a2de8;
    --lime-dim:#8b5cf6;
    --black:#0b0b0b;
    --grey:#ece8e8;
    --ink:#111111;
    --gray-bg:#eeeeee;
    --gray-bg-2:#e6e6e6;
    --card:#ffffff;
    --muted:#7a7a7a;
    --muted-2:#9a9a9a;
    --radius:22px;
    --radius-sm:14px;
    --maxw:1320px;
    --line:rgba(0,0,0,0.08);
    /* process card palette — same set the site's services stack uses */
    --svc-1:#e9e2ff;
    --svc-2:#15111f;
    --svc-3:#f1f1f1;
    --svc-4:#f5f1ff;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth; background:var(--gray-bg);}
  body{
    font-family:'Inter', sans-serif;
    background:var(--gray-bg);
    color:var(--ink);
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit; text-decoration:none;}
  ::selection{background:var(--lime); color:#fff;}

  .eyebrow{
    display:inline-flex; align-items:center; gap:9px;
    font-family:'Inter',sans-serif; font-size:12.5px; font-weight:700;
    letter-spacing:.26em; text-transform:uppercase; color:var(--lime);
  }
  .eyebrow::before{  font-size:13px;}
  .eyebrow.on-dark{color:var(--lime-dim);}


  /* ============ 3D HERO ============ */

  .hero3d{
    position:relative;
    min-height:calc(100svh - 84px);
    overflow:hidden;
    background:
      radial-gradient(circle at 73% 46%, rgba(106,45,232,.10), transparent 31%),
      radial-gradient(circle at 88% 20%, rgba(106,45,232,.06), transparent 24%),
      linear-gradient(135deg,#f8f8f8 0%,#eeeeee 52%,#f5f5f5 100%);
    color:var(--ink);
    isolation:isolate;
  }

  .hero3d::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
      radial-gradient(rgba(106,45,232,.18) 1px, transparent 1px);
    background-size:22px 22px;
    mask-image:linear-gradient(90deg,transparent 55%,#000 78%,transparent 100%);
    opacity:.16;
    pointer-events:none;
  }

  .hero3d-inner{
    position:relative;
    z-index:3;
    width:min(var(--maxw),100%);
    min-height:calc(100svh - 84px);
    margin:0 auto;
    padding:70px 32px 60px;
    display:grid;
    grid-template-columns:minmax(420px,.88fr) minmax(560px,1.12fr);
    align-items:center;
    gap:20px;
  }

  .hero3d-copy{
    position:relative;
    z-index:8;
    max-width:650px;
  }

  .hero3d-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:22px;
    color:var(--lime);
    font-size:13px;
    font-weight:800;
    letter-spacing:.25em;
    text-transform:uppercase;
  }

  .hero3d-kicker::before{
    content:"";
    width:28px;
    height:2px;
    border-radius:2px;
    background:var(--lime);
  }

  .hero3d h1{
    max-width:720px;
    font-family:'Manrope',sans-serif;
    font-size:clamp(48px,6vw,88px);
    line-height:.98;
    letter-spacing:-.055em;
    font-weight:800;
  }

  .hero3d h1 .accent{
    color:var(--lime);
  }

  .hero3d-lead{
    max-width:520px;
    margin-top:26px;
    color:#686868;
    font-size:16px;
    line-height:1.7;
  }

  .hero3d-actions{
    display:flex;
    align-items:center;
    gap:26px;
    margin-top:34px;
  }

  .hero3d-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:14px;
    font-weight:700;
  }

  .hero3d-link::after{
    content:"→";
    color:var(--lime);
    font-size:20px;
    transition:transform .25s ease;
  }

  .hero3d-link:hover::after{
    transform:translateX(5px);
  }

  /* Three.js stage */

  .hero3d-stage{
    position:relative;
    min-height:650px;
    height:min(72vh,760px);
    cursor:grab;
  }

  .hero3d-stage:active{
    cursor:grabbing;
  }

  #hero3d-canvas{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    touch-action:none;
  }

  .hero-orbit{
    position:absolute;
    left:50%;
    top:50%;
    width:min(650px,82%);
    aspect-ratio:1;
    transform:translate(-50%,-50%);
    border:1px solid rgba(106,45,232,.18);
    border-radius:50%;
    pointer-events:none;
  }

  .hero-orbit::before,
  .hero-orbit::after{
    content:"";
    position:absolute;
    inset:9%;
    border:1px dashed rgba(106,45,232,.16);
    border-radius:50%;
    transform:rotate(58deg) scaleX(1.5);
  }

  .hero-orbit::after{
    transform:rotate(-25deg) scaleX(1.35);
  }

  /* Service cards: name only, no icons/descriptions */

  .hero-service{
    position:absolute;
    z-index:10;
    display:flex;
    align-items:center;
    min-height:62px;
    padding:0 24px;
    border:1px solid rgba(255,255,255,.78);
    border-radius:20px;
    background:rgba(255,255,255,.82);
    box-shadow:
      0 20px 50px rgba(57,32,120,.10),
      0 4px 14px rgba(0,0,0,.05);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    color:#151515;
    font-family:'Manrope',sans-serif;
    font-size:15px;
    font-weight:800;
    white-space:nowrap;
    pointer-events:none;
    will-change:transform;
  }

  .service-brand{
    left:8%;
    top:14%;
    transform:rotate(-4deg);
  }

  .service-web{
    left:0;
    top:43%;
    transform:rotate(4deg);
  }

  .service-design{
    right:0;
    top:38%;
    transform:rotate(-3deg);
  }

  .service-ai{
    left:12%;
    bottom:15%;
    transform:rotate(-5deg);
  }

  .service-app{
    right:4%;
    bottom:17%;
    transform:rotate(4deg);
  }

  .hero3d-hint{
    position:absolute;
    right:5%;
    top:8%;
    z-index:9;
    display:flex;
    align-items:center;
    gap:8px;
    color:#858585;
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
  }

  .hero3d-hint::before{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--lime);
    box-shadow:0 0 0 6px rgba(106,45,232,.10);
  }

  .hero3d-stats{
    display:flex;
    gap:0;
    margin-top:46px;
    border-top:1px solid rgba(0,0,0,.10);
    padding-top:22px;
    max-width:600px;
  }

  .hero3d-stat{
    min-width:150px;
    padding-right:28px;
    margin-right:28px;
    border-right:1px solid rgba(0,0,0,.10);
  }

  .hero3d-stat:last-child{
    border-right:0;
    margin-right:0;
  }

  .hero3d-stat strong{
    display:block;
    font-family:'Manrope',sans-serif;
    font-size:27px;
    font-weight:800;
    letter-spacing:-.04em;
  }

  .hero3d-stat span{
    display:block;
    margin-top:4px;
    color:#777;
    font-size:12px;
  }

  @media (max-width:980px){
    .hero3d-inner{
      grid-template-columns:1fr;
      padding-top:55px;
    }

    .hero3d-copy{
      max-width:720px;
    }

    .hero3d-stage{
      min-height:560px;
      height:62vh;
    }

    .hero3d h1{
      font-size:clamp(48px,9vw,76px);
    }

    .hero3d-stats{
      margin-top:32px;
    }
  }

  @media (max-width:560px){
    .hero3d{
      min-height:auto;
    }

    .hero3d-inner{
      min-height:auto;
      padding:48px 20px 30px;
      gap:0;
    }

    .hero3d h1{
      font-size:clamp(43px,13vw,64px);
    }

    .hero3d-lead{
      font-size:14px;
      margin-top:20px;
    }

    .hero3d-actions{
      margin-top:26px;
      gap:18px;
    }

    .hero3d-stats{
      gap:18px;
      flex-wrap:wrap;
    }

    .hero3d-stat{
      min-width:105px;
      padding-right:15px;
      margin-right:0;
    }

    .hero3d-stat strong{
      font-size:22px;
    }

    .hero3d-stage{
      min-height:470px;
      height:56vh;
      margin-top:0;
    }

    .hero-orbit{
      width:92%;
    }

    .hero-service{
      min-height:50px;
      padding:0 15px;
      border-radius:15px;
      font-size:12px;
    }

    .service-brand{left:2%;top:10%;}
    .service-web{left:-2%;top:39%;}
    .service-design{right:-2%;top:31%;}
    .service-ai{left:5%;bottom:13%;}
    .service-app{right:0;bottom:19%;}

    .hero3d-hint{
      right:3%;
      top:2%;
      font-size:9px;
    }
  }

  @media (prefers-reduced-motion:reduce){
    .hero-service{
      transition:none;
    }
  }

  /* ============ HANDOFF CURTAIN ============ */
  .curtain{
    position:relative; z-index:5; margin-top:-40px;
    background:var(--gray-bg);
    border-radius:40px 40px 0 0;
    box-shadow:0 -30px 60px rgba(0,0,0,.12);
  }

  /* ============ PROCESS SECTION ============ */
  #process{
    position:relative;
    padding:120px 0 150px;
  }
  .proc-wrap{max-width:1280px; margin:0 auto; padding:0 6%; position:relative; z-index:2;}
  .proc-head{
    max-width:640px; margin-bottom:70px;
    opacity:0; transform:translateY(24px);
  }
  .proc-head h3{
    font-family:'Manrope',sans-serif; font-weight:800; letter-spacing:-.01em;
    font-size:clamp(2rem, 4.4vw, 3.4rem); line-height:1.06; margin-top:16px;
  }
  .proc-head h3 .fade{color:var(--muted-2);}
  .proc-head p{color:var(--muted); font-size:15px; line-height:1.7; margin-top:18px;}

  .proc-grid{
    display:grid; grid-template-columns:repeat(4, 1fr); gap:22px;
  }
  .proc-card{
    position:relative;
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:32px 26px 34px;
    min-height:270px;
    display:flex; flex-direction:column; justify-content:space-between;
    opacity:0;
    will-change:transform, opacity;
    transform-origin:bottom center;
    box-shadow:0 1px 0 rgba(0,0,0,.02);
  }
  .proc-card.dark{ background:var(--svc-2); border-color:rgba(255,255,255,.08); }
  .proc-card .num{
    font-family:'Manrope',sans-serif; font-weight:800; font-size:14px;
    letter-spacing:.05em; color:var(--lime);
    display:flex; align-items:center; gap:10px;
  }
  .proc-card.dark .num{ color:var(--lime-dim); }
  .proc-card .num::before{
    content:""; width:26px; height:1px; background:currentColor; opacity:.6;
  }
  .proc-card h4{
    font-family:'Manrope',sans-serif; font-weight:800; font-size:21px;
    letter-spacing:-.01em; margin-top:38px; color:var(--ink);
  }
  .proc-card.dark h4{ color:#fff; }
  .proc-card p{
    color:var(--muted); font-size:13.5px; line-height:1.6; margin-top:10px;
  }
  .proc-card.dark p{ color:#c9c9c9; }
  .proc-card .glow{
    position:absolute; inset:0; border-radius:var(--radius); opacity:0; pointer-events:none;
    background:radial-gradient(220px 140px at 30% 0%, rgba(106,45,232,.18), transparent 70%);
    transition:opacity .4s ease;
  }
  .proc-card:hover .glow{opacity:1;}
  .proc-card:hover{ transform:translateY(-4px); }

  @media (max-width: 980px){
    .proc-grid{grid-template-columns:1fr 1fr; row-gap:56px;}
  }
  @media (max-width: 620px){
    #hero-pin{height:100svh;}
    .hero-rail{display:none;}
    .proc-grid{grid-template-columns:1fr; row-gap:40px;}
    #process{padding:90px 0 100px;}
    .curtain{border-radius:26px 26px 0 0;}
  }

  @media (prefers-reduced-motion: reduce){
    .hero-scrollcue .stem{animation:none;}
  }

*{box-sizing:border-box;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
.btn{
    display:inline-flex;align-items:center;justify-content:center;
    background:var(--lime);color:var(--grey);
    font-weight:700;font-size:14px;
    padding:14px 26px;border-radius:999px;
    border:none;cursor:pointer;
    transition:transform .25s ease, background .25s ease;
    white-space:nowrap;
  }
  .btn:hover{background:var(--lime-dim);transform:translateY(-2px);}

  /* ===== NAV ===== */
  header.nav{
    position:sticky;top:0;z-index:200;
    background:rgba(235, 233, 233, 0.453);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .nav-inner{
    display:flex;align-items:center;justify-content:space-between;
    padding:20px 32px;max-width:var(--maxw);margin:0 auto;
  }
  .logo-group{display:flex;align-items:center;gap:12px;}
  .logo{
    width:44px;height:44px;border-radius:12px;background:var(--lime);
    display:flex;align-items:center;justify-content:center;
    font-size:22px;font-weight:800;color:var(--black);
  }
  .wordmark{font-weight:800;font-size:17px;letter-spacing:.5px;color:var(--ink);}
  nav.links{display:flex;gap:34px;}
  nav.links a{font-size:14.5px;font-weight:600;color:#201f1f;opacity:.85;transition:opacity .2s;}
  nav.links a:hover{opacity:1;color:var(--lime);}
  .nav-cta{display:flex;align-items:center;gap:22px;}
  .burger{display:none;flex-direction:column;gap:5px;cursor:pointer;}
  .burger span{width:22px;height:2px;background:#fff;}

  /* ===== HERO ===== */
  .hero{
    background:var(--grey);color:#fff;position:relative;
    padding-top:70px;padding-bottom:110px;overflow:hidden;
  }
  .hero::before{
    content:"";position:absolute;inset:0;
    background:
      radial-gradient(ellipse 900px 420px at 50% 0%, rgba(106,45,232,0.14), transparent 60%),
      radial-gradient(ellipse 700px 500px at 85% 20%, rgba(255,255,255,0.06), transparent 60%);
    pointer-events:none;
  }
  .hero-badge{
    position:absolute;left:0;top:230px;
    background:var(--black);border:1px solid #2a2a2a;
    writing-mode:vertical-rl;
    padding:22px 14px;border-radius:0 16px 16px 0;
    font-size:13px;letter-spacing:.5px;color:#fff;
    display:flex;flex-direction:column;align-items:center;gap:14px;
  }
  .hero-badge b{writing-mode:horizontal-tb;font-size:20px;}
  .hero-inner{max-width:var(--maxw);margin:0 auto;padding:0 32px;position:relative;z-index:2;}
  .hero h1{
    font-family:'Manrope',sans-serif;
    font-weight:800;
    font-size:clamp(52px, 9vw, 128px);
    line-height:0.96;
    letter-spacing:-2px;
    margin:70px 0 0;
    text-align:right;
  }
  .hero h1 .accent{color:var(--lime);}
  .hero-foot{
    display:flex;justify-content:space-between;align-items:flex-end;
    margin-top:90px;
  }
  .scroll-down{
    display:flex;align-items:center;gap:10px;
    color:var(--lime);font-weight:700;font-size:14px;
  }
  .scroll-down .dot{width:8px;height:8px;border-radius:50%;background:var(--lime);}
    .hero-sub{max-width:340px;color:#b7b7b7;font-size:15px;line-height:1.5;text-align:right;}

  /* ===== SECTION generic ===== */
  section{padding:100px 0;}
  .section-head{margin-bottom:56px;}
  .section-title{
    font-size:clamp(34px,4.6vw,56px);
    font-weight:800;letter-spacing:-1px;line-height:1.02;margin:14px 0 0;
  }
  .section-title .fade{color:#9a9a9a;}

  /* ===== CLIENTS ===== */
  .clients{background:var(--gray-bg);}
  .client-row{
    display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px;
  }
  .client-card{
    background:var(--black);border-radius:var(--radius-sm);
    height:80px;display:flex;align-items:center;justify-content:center;
    padding:20px;transition:transform .3s ease;
  }
  .client-card:hover{transform:translateY(-6px);}
  .client-card img{filter:grayscale(1) brightness(0) invert(1);max-height:38px;object-fit:contain;opacity:.92;}

  /* ===== SERVICES (layered / overlapping stack on scroll) ===== */
  .services{background:var(--gray-bg);padding-bottom:40px;}
  .services .section-head{margin-bottom:64px;}
  .stack-list{
    max-width:var(--maxw);margin:0 auto;padding:0 32px;
    display:flex;flex-direction:column;
  }
  .stack-card{
    position:sticky;
    top: calc(90px + var(--i) * 28px);
    z-index: calc(var(--i) + 1);
    border-radius:var(--radius);
    min-height:460px;
    margin-bottom:28px;
    padding:48px 44px 40px;
    display:flex;flex-direction:column;justify-content:space-between;
    box-shadow:0 -18px 40px rgba(0,0,0,0.10);
    border:1px solid rgba(0,0,0,0.05);
  }
  .stack-card.dark{border:1px solid rgba(255,255,255,0.08);}
  .stack-head{display:flex;align-items:center;gap:18px;}
  .stack-icon{
    width:52px;height:52px;border-radius:14px;
    background:var(--black);display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .stack-card.dark .stack-icon{background:var(--lime);}
  .stack-icon svg{width:26px;height:26px;}
  .stack-title{font-size:clamp(26px,3.4vw,38px);font-weight:800;letter-spacing:-.5px;}
  .stack-body{
    margin-top:34px;
    display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;
  }
  .stack-desc{max-width:520px;font-size:15.5px;line-height:1.7;color:#3a3a3a;}
  .stack-card.dark .stack-desc{color:#c9c9c9;}
  .stack-tags{display:flex;flex-direction:column;gap:12px;align-items:flex-end;}
  .stack-tag{
    display:inline-flex;align-items:center;justify-content:center;
    padding:10px 22px;border-radius:999px;
    font-size:13.5px;font-weight:700;
    border:1.5px solid rgba(0,0,0,0.18);
    background:rgba(255,255,255,0.5);
    white-space:nowrap;
  }
  .stack-card.dark .stack-tag{
    border-color:rgba(255,255,255,0.22);
    background:rgba(255,255,255,0.06);color:#fff;
  }

  /* ===== PROJECTS ===== */
  .projects{background:var(--gray-bg-2);}
  .projects .section-head{
    display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;
  }
  .projects .section-head p{max-width:340px;color:var(--muted);font-size:14.5px;line-height:1.6;}
  .proj-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:22px;
  }
  .proj-card{
    background:var(--card);border-radius:var(--radius);
    padding:8px 8px 8px;
    display:flex;flex-direction:column;justify-content:space-between;
    min-height:220px;
    transition:transform .3s ease, box-shadow .3s ease;
  }
  .proj-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(0,0,0,0.08);}
  .proj-thumb{border-radius:12px;overflow:hidden;height:350px;}
  .proj-thumb img{width:100%;height:100%;object-fit:cover;}
  .proj-name{margin-top:18px;text-align:center;font-weight:700;font-size:14.5px;letter-spacing:.3px;}
  .proj-tag{display:block;margin-top:4px;text-align:center;font-size:12px;color:var(--muted);font-weight:500;}
  .load-more{display:flex;justify-content:center;margin-top:48px;}

  /* ===== WHY ===== */
  .why{background:var(--gray-bg);}
  .why-top{display:grid;grid-template-columns:200px 1fr;gap:40px;align-items:start;}
  .stat-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:56px;
  }
  .stat-card{
    background:var(--card);border-radius:var(--radius);
    padding:52px 40px;text-align:center;
  }
  .stat-num{font-size:clamp(38px,5vw,54px);font-weight:800;letter-spacing:-1px;}
  .stat-label{margin-top:14px;color:var(--muted);font-size:14.5px;max-width:320px;margin-left:auto;margin-right:auto;line-height:1.5;}

  /* ===== HOW WE WORK (flow) ===== */
  .flow{background:var(--gray-bg-2);}
  .flow-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:56px;
  }
  .flow-card{
    background:var(--card);border-radius:var(--radius);
    padding:34px 26px;position:relative;
    min-height:210px;display:flex;flex-direction:column;justify-content:space-between;
  }
  .flow-tag{
    font-size:13px;font-weight:700;color:#fff;
    background:var(--black);display:inline-flex;padding:6px 12px;border-radius:999px;width:max-content;
  }
  .flow-card h3{font-size:19px;font-weight:800;margin:20px 0 8px;letter-spacing:-.2px;}
  .flow-card p{color:var(--muted);font-size:13.5px;line-height:1.55;margin:0;}
  .flow-line{
    position:absolute;top:26px;right:-20px;width:20px;height:1px;background:#d5d5d5;
  }
  .flow-card:last-child .flow-line{display:none;}

  /* ===== ABOUT / TEAM ===== */
  .about{background:var(--gray-bg);}
  .about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:center;}
  .about h2{font-size:clamp(34px,4.6vw,54px);font-weight:800;letter-spacing:-1px;line-height:1.04;margin:0;}
  .about h2 .fade{color:#9a9a9a;}
  .about p{color:var(--muted);font-size:15px;line-height:1.7;margin-top:20px;}
  .about p b{color:var(--ink);}
  .team-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .team-card{
    position:relative;border-radius:var(--radius);overflow:hidden;height:250px;
    background:#000;
  }
  .team-card img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);opacity:.92;transition:transform .4s ease;}
  .team-card:hover img{transform:scale(1.05);}
  .team-role{
    position:absolute;top:16px;right:16px;
    background:rgba(0,0,0,0.55);color:#fff;font-size:11px;font-weight:700;
    padding:6px 12px;border-radius:999px;backdrop-filter:blur(4px);
  }
  .team-name{
    position:absolute;bottom:16px;left:16px;color:#fff;font-weight:800;font-size:19px;letter-spacing:-.3px;
  }

  /* ===== EXPERIENCES / TESTIMONIALS ===== */
  .experiences{background:var(--gray-bg-2);}
  .test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  .test-card{background:var(--card);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:16px;}
  .test-top{display:flex;align-items:center;gap:14px;}
  .test-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;}
  .test-name{font-weight:800;font-size:15px;}
  .test-role{color:var(--muted-2);font-size:12.5px;}
  .stars{color:var(--lime-dim);letter-spacing:2px;font-size:14px;}
  .test-quote{color:#333;font-size:14.5px;line-height:1.6;}
  .test-note{margin-top:8px;font-size:12.5px;color:var(--muted-2);}

  /* ===== CONTACT / FORM ===== */
  .contact{background:var(--black);color:#fff;position:relative;overflow:hidden;}
  .contact::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(ellipse 700px 400px at 15% 10%, rgba(106,45,232,0.20), transparent 60%);
    pointer-events:none;
  }
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;position:relative;z-index:2;align-items:flex-start;}
  .contact h2{font-size:clamp(34px,4.6vw,54px);font-weight:800;letter-spacing:-1px;line-height:1.04;margin:14px 0 0;}
  .contact h2 .accent{color:var(--lime);}
  .contact p.lead{color:#b7b7b7;margin-top:18px;font-size:15px;line-height:1.7;max-width:420px;}
  .contact-info{margin-top:44px;display:flex;flex-direction:column;gap:14px;}
  .contact-info a{font-size:15px;font-weight:600;color:#fff;border-bottom:1px solid #333;padding-bottom:10px;width:max-content;}
  .contact-info a:hover{color:var(--lime);border-color:var(--lime);}

  form.get-proposal{
    background:#151515;border:1px solid #262626;border-radius:var(--radius);
    padding:36px;display:flex;flex-direction:column;gap:16px;
  }
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .field label{font-size:12.5px;color:#9a9a9a;font-weight:600;display:block;margin-bottom:8px;}
  .field input, .field textarea, .field select{
    width:100%;background:#0e0e0e;border:1px solid #2c2c2c;border-radius:12px;
    padding:14px 16px;color:#fff;font-family:inherit;font-size:14px;outline:none;
    transition:border-color .2s ease;
  }
  .field input:focus, .field textarea:focus, .field select:focus{border-color:var(--lime);}
  .field textarea{resize:vertical;min-height:96px;}
  form.get-proposal .btn{margin-top:6px;width:100%;padding:16px;font-size:15px;}

  /* ===== FOOTER ===== */
  footer{background:var(--black);color:#8c8c8c;padding:36px 0;border-top:1px solid #1c1c1c;}
  .footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:13px;}
  .footer-inner a{color:#8c8c8c;}
  .footer-inner a:hover{color:var(--lime);}
  .footer-links{display:flex;gap:24px;}

  /* ===== RESPONSIVE ===== */
  @media (max-width: 980px){
    nav.links{display:none;}
    .burger{display:flex;}
    .hero h1{text-align:left;}
    .hero-foot{flex-direction:column;align-items:flex-start;gap:20px;}
    .hero-sub{text-align:left;}
    .client-row{grid-template-columns:repeat(2,1fr);}
    .proj-grid{grid-template-columns:repeat(2,1fr);}
    .why-top{grid-template-columns:1fr;}
    .stat-grid{grid-template-columns:1fr;}
    .flow-grid{grid-template-columns:1fr 1fr;}
    .about-grid{grid-template-columns:1fr;}
    .team-grid{grid-template-columns:1fr 1fr;}
    .test-grid{grid-template-columns:1fr;}
    .contact-grid{grid-template-columns:1fr;}
    .form-row{grid-template-columns:1fr;}
    .stack-card{top: calc(76px + var(--i) * 20px); min-height:auto; padding:32px 26px 28px;}
    .stack-body{flex-direction:column;align-items:flex-start;}
    .stack-tags{align-items:flex-start;flex-direction:row;flex-wrap:wrap;}
  }
  @media (max-width: 560px){
    .wrap{padding:0 20px;}
    .hero-inner{padding:0 20px;}
    .client-row{grid-template-columns:1fr 1fr;}
    .proj-grid{grid-template-columns:1fr;}
    .flow-grid{grid-template-columns:1fr;}
    .team-grid{grid-template-columns:1fr;}
    section{padding:70px 0;}
    .stack-list{padding:0 20px;}
    .stack-card{top: calc(70px + var(--i) * 16px);}
  }


  /* =========================================
   SEAMLESS INTEGRATION
========================================= */

.integration-section {
  position: relative;
  width: 100%;
  min-height: 560px;
  overflow: hidden;

  background: #f7f7f7;
  border-radius: 40px;

  padding: 70px 40px 65px;

  isolation: isolate;
}


/* =========================================
   CONTENT
========================================= */

.integration-content {
  position: relative;
  z-index: 10;

  max-width: 650px;
  margin: 0 auto;

  text-align: center;
}

.integration-label {
  display: inline-flex;
  align-items: center;

  padding: 5px 11px;

  border-radius: 30px;

  background: rgba(255,255,255,.55);

  color: #6a2de8;

  font-size: 11px;
  font-weight: 700;
}

.integration-content h2 {
  margin: 16px 0 10px;

  color: #111;

  font-size: clamp(38px, 5vw, 58px);
  line-height: 1;
  letter-spacing: -2px;
  font-weight: 500;
}

.integration-content p {
  max-width: 430px;

  margin: 0 auto;

  color: rgba(0,0,0,.52);

  font-size: 14px;
  line-height: 1.5;
}

.integration-button {
  display: inline-flex;
  align-items: center;
  gap: 12px;

  margin-top: 24px;

  padding: 14px 23px;

  border-radius: 40px;

  background: #6a2de8;
  color: white;

  font-size: 13px;
  font-weight: 700;

  text-decoration: none;

  transition:
    transform .3s ease,
    background .3s ease;
}

.integration-button:hover {
  transform: translateY(-3px);
  background: #5420c7;
}

.integration-button span {
  font-size: 17px;
}


/* =========================================
   CURVED DECORATIVE LINES
========================================= */

.integration-line {
  position: absolute;

  border: 9px solid rgba(0, 151, 180, .65);

  border-radius: 50%;

  pointer-events: none;

  z-index: 1;
}


/* Large diagonal curve */

.line-1 {
  width: 850px;
  height: 850px;

  left: -470px;
  top: -690px;

  transform: rotate(-18deg);
}


/* Right large curve */

.line-2 {
  width: 650px;
  height: 650px;

  right: -300px;
  top: -390px;

  border-color: rgba(0, 107, 112, .72);

  transform: rotate(15deg);
}


/* Lower curve */

.line-3 {
  width: 530px;
  height: 530px;

  right: -170px;
  top: 190px;

  border-color: rgba(0, 107, 112, .7);
}


/* Center crossing curve */

.line-4 {
  width: 720px;
  height: 300px;

  left: 40%;
  top: 140px;

  border-color: rgba(0, 151, 180, .55);

  transform: rotate(-25deg);
}


/* =========================================
   LOGO FIELD
========================================= */

.logo-field {
  position: absolute;

  left: 0;
  right: 0;
  bottom: 48px;

  z-index: 5;

  display: flex;
  flex-direction: column;

  gap: 12px;

  width: 100%;

  overflow: hidden;

  mask-image: linear-gradient(
    to right,
    transparent,
    black 7%,
    black 93%,
    transparent
  );
}


/* =========================================
   LOGO ROW
========================================= */

.logo-row {
  display: flex;

  gap: 14px;

  width: max-content;

  will-change: transform;
}


/* =========================================
   MULTI-DIRECTION MOTION
========================================= */

.row-1 {
  animation: moveRight 18s linear infinite;
}

.row-2 {
  animation: moveLeft 21s linear infinite;
}

.row-3 {
  animation: moveRightSlow 25s linear infinite;
}

.row-4 {
  animation: moveLeftFast 17s linear infinite;
}


/* Different directions */

@keyframes moveRight {

  0% {
    transform: translateX(-120px);
  }

  50% {
    transform: translateX(120px);
  }

  100% {
    transform: translateX(-120px);
  }

}


@keyframes moveLeft {

  0% {
    transform: translateX(120px);
  }

  50% {
    transform: translateX(-120px);
  }

  100% {
    transform: translateX(120px);
  }

}


@keyframes moveRightSlow {

  0% {
    transform: translateX(-80px);
  }

  50% {
    transform: translateX(160px);
  }

  100% {
    transform: translateX(-80px);
  }

}


@keyframes moveLeftFast {

  0% {
    transform: translateX(160px);
  }

  50% {
    transform: translateX(-160px);
  }

  100% {
    transform: translateX(160px);
  }

}


/* =========================================
   LOGO PILL
========================================= */

.integration-logo {
  flex: 0 0 auto;

  display: flex;
  align-items: center;
  gap: 9px;

  min-width: 118px;

  padding: 9px 16px 9px 8px;

  border-radius: 40px;

  background: rgba(255,255,255,.88);

  border: 1px solid rgba(255,255,255,.35);

  box-shadow:
    0 5px 15px rgba(35,20,60,.06);

  color: #17151c;

  font-size: 12px;
  font-weight: 500;

  backdrop-filter: blur(8px);

  transition:
    transform .3s ease,
    background .3s ease;
}


/* Hover individual logo */

.integration-logo:hover {
  transform: translateY(-5px) scale(1.04);

  background: rgba(255,255,255,.92);
}


/* =========================================
   LOGO ICON
========================================= */

.logo-icon {
  width: 30px;
  height: 30px;

  flex-shrink: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: white;

  font-size: 13px;
  font-weight: 800;

  box-shadow: 0 2px 6px rgba(0,0,0,.08);
}


/* Brand-style icon colors */

.snapchat {
  color: #111;
}

.soundcloud {
  color: #f65d1f;
}

.spotify {
  color: #6a2de8;
}

.stripe {
  color: #635bff;
}

.suno {
  color: #111;
}

.shopify {
  color: #6a2de8;
}

.twitch {
  color: #9146ff;
}

.viper {
  color: #6c5ce7;
}

.vimeo {
  color: #1ab7ea;
}

.whatsapp {
  color: #6a2de8;
}

.winds {
  color: #0caaa7;
}

.x {
  color: #111;
}

.qwen {
  color: #111;
}

.reddit {
  color: #ff4500;
}

.runway {
  color: #111;
}

.safari {
  color: #1683d8;
}

.adobe {
  color: #e22;
}

.zoom {
  color: #4285f4;
}

.paypal {
  color: #0070ba;
}

.pinterest {
  color: #e60023;
}

.perplexity {
  color: #1a9c9c;
}

.opera {
  color: #f11925;
}

.netflix {
  color: #e50914;
}

.mocha {
  color: #111;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

  .integration-section {
    min-height: 610px;

    border-radius: 26px;

    padding:55px 20px;
  }

  .integration-content h2 {
    font-size: 39px;
    letter-spacing: -1.5px;
  }

  .integration-content p {
    font-size: 13px;
  }

  .logo-field {
    bottom: 35px;

    gap: 9px;
  }

  .integration-logo {
    min-width: 105px;

    padding: 7px 13px 7px 6px;

    font-size: 11px;
  }

  .logo-icon {
    width: 27px;
    height: 27px;
  }

  .integration-line {
    border-width: 6px;
  }

  .line-1 {
    left: -550px;
  }

  .line-2 {
    right: -420px;
  }

  .line-3 {
    right: -350px;
  }
}


/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

  .logo-row {
    animation: none;
  }

  .integration-button,
  .integration-logo {
    transition: none;
  }

}


  /* =========================================
     GEXAUZ SECTION THEME
  ========================================= */

  .services{
    background:
      radial-gradient(circle at 85% 20%, rgba(106,45,232,.07), transparent 30%),
      linear-gradient(135deg,#f7f7f7,#ededed);
  }

  .services .section-head{
    position:relative;
    z-index:5;
  }

  .stack-card{
    box-shadow:0 20px 50px rgba(30,20,60,.08);
    border:1px solid rgba(106,45,232,.08);
  }

  .stack-card:nth-child(1){
    background:#e9e2ff !important;
  }

  .stack-card:nth-child(2){
    background:#15111f !important;
  }

  .stack-card:nth-child(3){
    background:#f1f1f1 !important;
  }

  .stack-card:nth-child(4){
    background:#f5f1ff !important;
  }

  .stack-card .stack-icon{
    background:#fff;
  }

  .stack-card.dark .stack-icon{
    background:var(--lime);
  }

  .stack-tag{
    border-color:rgba(106,45,232,.18);
    background:rgba(255,255,255,.65);
  }

  .stack-card.dark .stack-tag{
    border-color:rgba(255,255,255,.20);
    background:rgba(106,45,232,.12);
  }

  /* =========================================
     CONTACT — FULL TWO COLUMN FORM
  ========================================= */

  .contact{
    background:
      radial-gradient(circle at 10% 20%,rgba(106,45,232,.18),transparent 34%),
      radial-gradient(circle at 90% 80%,rgba(139,92,246,.10),transparent 30%),
      #0b0b0b;
  }

  .contact-grid{
    grid-template-columns:minmax(280px,.78fr) minmax(520px,1.22fr);
    gap:80px;
    align-items:stretch;
  }

  .contact-copy{
    padding-top:8px;
  }

  .contact-info a{
    transition:color .2s ease,border-color .2s ease;
  }

  .contact-priority-note{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-top:38px;
  }

  .contact-priority-note span{
    width:100%;
    margin-bottom:4px;
    color:#888;
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
  }

  .contact-priority-note strong{
    padding:8px 11px;
    border:1px solid #292929;
    border-radius:999px;
    color:#cfcfcf;
    background:#121212;
    font-size:11px;
    font-weight:700;
  }

  form.get-proposal{
    width:100%;
    background:rgba(20,20,20,.92);
    border:1px solid rgba(255,255,255,.08);
    border-radius:26px;
    padding:34px;
    box-shadow:0 30px 80px rgba(0,0,0,.20);
  }

  .form-row{
    grid-template-columns:1fr 1fr;
  }

  .field input,
  .field textarea,
  .field select{
    min-height:50px;
  }

  .field textarea{
    min-height:120px;
  }

  .check-label{
    display:flex !important;
    align-items:center;
    gap:10px;
    cursor:pointer;
    margin:0 !important;
    color:#bdbdbd !important;
  }

  .check-label input{
    width:17px !important;
    min-height:17px !important;
    accent-color:var(--lime);
  }

  /* Multi-select service dropdown */

  .service-multi{
    position:relative;
  }

  .service-multi summary{
    min-height:50px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:14px 16px;
    border:1px solid #2c2c2c;
    border-radius:12px;
    background:#0e0e0e;
    color:#bdbdbd;
    cursor:pointer;
    list-style:none;
    font-size:14px;
  }

  .service-multi summary::-webkit-details-marker{
    display:none;
  }

  .service-multi summary::after{
    content:"";
    color:#888;
    font-size:16px;
  }

  .service-multi[open] summary{
    border-color:var(--lime);
    border-radius:12px 12px 0 0;
  }

  .service-options{
    position:absolute;
    z-index:20;
    left:0;
    right:0;
    top:calc(100% - 1px);
    padding:10px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px;
    border:1px solid var(--lime);
    border-top:0;
    border-radius:0 0 12px 12px;
    background:#111;
    box-shadow:0 20px 40px rgba(0,0,0,.30);
  }

  .service-options label{
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px;
    border-radius:9px;
    color:#cfcfcf;
    font-size:12px;
    cursor:pointer;
  }

  .service-options label:hover{
    background:#1d1829;
    color:#fff;
  }

  .service-options input{
    width:16px !important;
    min-height:16px !important;
    accent-color:var(--lime);
  }

  /* Urgency */

  .urgency-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:8px;
  }

  .urgency-option{
    position:relative;
    margin:0 !important;
    cursor:pointer;
  }

  .urgency-option input{
    position:absolute;
    opacity:0;
    pointer-events:none;
  }

  .urgency-option span{
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:8px;
    border:1px solid #2c2c2c;
    border-radius:11px;
    background:#0e0e0e;
    color:#929292;
    font-size:11px;
    font-weight:700;
    text-align:center;
    transition:.2s ease;
  }

  .urgency-option input:checked + span{
    border-color:var(--lime);
    background:rgba(106,45,232,.16);
    color:#fff;
    box-shadow:inset 0 0 0 1px rgba(106,45,232,.18);
  }

  .urgency-option:first-child input:checked + span{
    background:#6a2de8;
  }

  /* =========================================
     TESTIMONIALS — MULTI ROW MOVEMENT
  ========================================= */

  .experiences{
    background:
      radial-gradient(circle at 50% 0%,rgba(106,45,232,.06),transparent 35%),
      #eeeeee;
    overflow:hidden;
  }

  .testimonials-stage{
    position:relative;
    width:100vw;
    margin-left:calc(50% - 50vw);
    overflow:hidden;
    padding:8px 0 28px;
    mask-image:linear-gradient(
      90deg,
      transparent,
      #000 7%,
      #000 93%,
      transparent
    );
  }

  .test-track{
    display:flex;
    width:max-content;
    gap:20px;
    padding:12px 0;
    will-change:transform;
  }

  .test-track-a{
    animation:testimonials-left 30s linear infinite;
  }

  .test-track-b{
    margin-left:-150px;
    animation:testimonials-right 34s linear infinite;
  }

  .test-card{
    flex:0 0 370px;
    min-height:245px;
    padding:28px;
    border:1px solid rgba(106,45,232,.10);
    border-radius:24px;
    background:rgba(255,255,255,.88);
    box-shadow:0 18px 45px rgba(40,25,80,.07);
  }

  .test-avatar{
    width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#e9e2ff;
    color:var(--lime);
    font-weight:800;
  }

  .test-quote{
    color:#4b4b4b;
  }

  @keyframes testimonials-left{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }

  @keyframes testimonials-right{
    from{transform:translateX(-50%);}
    to{transform:translateX(0);}
  }

  .test-card:hover{
    transform:translateY(-5px);
  }

  @media (prefers-reduced-motion:reduce){
    .test-track{
      animation:none;
    }

    .test-card{
      transition:none;
    }
  }

  @media (max-width:980px){
    .contact-grid{
      grid-template-columns:1fr;
      gap:42px;
    }

    .contact-copy{
      max-width:700px;
    }
  }

  @media (max-width:560px){
    .form-row{
      grid-template-columns:1fr;
    }

    form.get-proposal{
      padding:22px;
      border-radius:20px;
    }

    .service-options{
      grid-template-columns:1fr;
    }

    .urgency-grid{
      grid-template-columns:1fr 1fr;
    }

    .test-card{
      flex-basis:300px;
      min-height:225px;
      padding:22px;
    }

    .test-track{
      gap:14px;
    }

    .testimonials-stage{
      mask-image:none;
    }
  }



/* =========================================
   CONTINUOUS GREY + PURPLE CURVE
========================================= */

.page-curve-wrap{
  position:absolute;
  z-index:1;
  top:0;
  left:0;
  width:100%;
  height:100%;
  overflow:hidden;
  pointer-events:none;
}

.page-curve{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  overflow:visible;
}

.page-curve path{
  fill:none;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.curve-base{
  stroke:#858585;
  stroke-width:2.2;
  opacity:.55;
}

.curve-glow{
  stroke:#a98bff;
  stroke-width:15;
  opacity:.12;
  filter:url(#curveGlow);
}

.curve-light{
  stroke:url(#curvePurple);
  stroke-width:3;
  stroke-dasharray:12 120;
  stroke-dashoffset:0;
  opacity:.95;
  filter:url(#curveGlow);
  animation:curveLightTravel 7s linear infinite;
}

@keyframes curveLightTravel{
  to{
    stroke-dashoffset:-132;
  }
}

/* Make sure content remains above the line */
.nav,
.hero3d,
.curtain,
.clients,
.services,
.projects,
.experiences,
.contact,
.site-footer{
  position:relative;
  z-index:2;
}

@media (max-width:700px){
  .curve-base{
    stroke-width:1.7;
    opacity:.42;
  }

  .curve-glow{
    stroke-width:11;
    opacity:.10;
  }

  .curve-light{
    stroke-width:2.5;
  }
}

@media (prefers-reduced-motion:reduce){
  .curve-light{
    animation:none;
    stroke-dasharray:none;
    opacity:.55;
  }
}




  :root{
    --lime:#6a2de8;
    --lime-dim:#8b5cf6;
    --black:#0a0a0a;
    --ink:#eeeeee;
    --muted:#9a9a9a;
    --muted-2:#6f6f6f;
    --line:#222222;
    --maxw:1400px;
  }
  *{box-sizing:border-box;}
  body{
    margin:0;
    font-family:'Manrope', sans-serif;
    background:#f4f2f2;
    color:#111;
  }
  a{color:inherit;text-decoration:none;}
  img{display:block;max-width:100%;}
  ul{list-style:none;margin:0;padding:0;}

  /* just a spacer so the footer isn't glued to the top when previewed standalone */
  .page-spacer{
    max-width:var(--maxw);margin:0 auto;padding:60px 32px;
    color:#999;font-size:14px;
  }

  /* ===== FOOTER ===== */
  footer.mega-footer{
    background:var(--black);color:var(--ink);position:relative;overflow:hidden;
    padding:80px 0 0;
  }
  footer.mega-footer::before{
    content:"";position:absolute;top:-120px;left:-80px;width:560px;height:340px;
    background:linear-gradient(135deg, rgba(106,45,232,0.55), rgba(139,92,246,0.15) 55%, transparent 75%);
    filter:blur(60px);transform:rotate(-18deg);pointer-events:none;
  }
  .footer-wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px;position:relative;z-index:2;}

  .footer-grid{
    display:grid;grid-template-columns:0.9fr 1fr 1fr 1fr 1fr;gap:32px;
    padding-bottom:64px;
  }
  .f-col h4{font-size:16px;font-weight:800;margin:0 0 22px;letter-spacing:-.2px;}
  .f-col ul{display:flex;flex-direction:column;gap:15px;}
  .f-col a{
    font-size:14px;color:#cfcfcf;font-weight:500;transition:color .2s ease;
  }
  .f-col a:hover{color:var(--lime-dim);}
  .f-col .show-more{
    color:var(--muted-2);display:inline-flex;align-items:center;gap:5px;font-size:13.5px;
  }

  .contact-icons{display:flex;gap:14px;margin-top:6px;}
  .icon-box{
    width:60px;height:60px;border-radius:16px;background:#141414;border:1px solid #222;
    display:flex;align-items:center;justify-content:center;transition:transform .25s ease, border-color .25s ease;
  }
  .icon-box:hover{transform:translateY(-4px);border-color:var(--lime-dim);}
  .icon-box svg{width:24px;height:24px;}

  /* ===== BOTTOM BAR ===== */
  .footer-bar{
    border-top:1px solid var(--line);
    display:flex;justify-content:space-between;align-items:center;
    padding:24px 0;flex-wrap:wrap;gap:16px;
  }
  .lang-select{
    display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:#cfcfcf;
  }
  .socials{display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
  .socials .label{font-size:13px;font-weight:700;color:#cfcfcf;}
  .socials a{font-size:13.5px;color:#cfcfcf;font-weight:600;}
  .socials a:hover{color:var(--lime-dim);}

  /* ===== GIANT LOCKUP + letter-wave animation ===== */
  .lockup{
    display:flex;align-items:center;gap:0;padding:20px 0 6px;
    overflow:hidden;
  }
  .lockup-mark{
    width:clamp(70px,9vw,130px);height:clamp(70px,9vw,130px);flex-shrink:0;margin-right:6px;
    animation:markPulse 4.5s ease-in-out infinite;
    transform-origin:center;
  }
  @keyframes markPulse{
    0%,100%{ transform:rotate(0deg) scale(1); }
    50%{ transform:rotate(8deg) scale(1.05); }
  }
  .lockup h2{
    font-size:clamp(70px,15vw,220px);font-weight:800;letter-spacing:-5px;
    color:#fff;margin:0;line-height:1;white-space:nowrap;
    display:flex;
  }
  .lockup h2 .l{
    display:inline-block;
    animation:letterFloat 3.2s ease-in-out infinite;
    animation-delay:calc(var(--i) * 0.09s);
    will-change:transform, opacity;
  }
  @keyframes letterFloat{
    0%, 100%{ transform:translateY(0); opacity:1; }
    50%{ transform:translateY(-14px); opacity:.72; }
  }
  @media (prefers-reduced-motion: reduce){
    .lockup h2 .l, .lockup-mark{ animation:none; }
  }

  /* ===== COPYRIGHT ===== */
  .footer-copy{
    border-top:1px solid var(--line);
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
    padding:22px 0 30px;font-size:12.5px;color:var(--muted-2);
  }
  .footer-copy a{color:var(--muted-2);}
  .footer-copy a:hover{color:var(--lime-dim);}

  @media (max-width: 1100px){
    .footer-grid{grid-template-columns:1fr 1fr 1fr;}
  }
  @media (max-width: 720px){
    .footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px;}
    .footer-wrap{padding:0 24px;}
    .lockup h2{letter-spacing:-2px;}
    .socials{gap:16px;}
  }
  @media (max-width:480px){
    .footer-grid{grid-template-columns:1fr;}
  }



/* =========================================================
   GEXAUZ WORDPRESS DYNAMIC MODULES
========================================================= */

.admin-only-placeholder{display:none;}

.wp-section-note{
  color:#777;
  font-size:13px;
  line-height:1.6;
}

.client-row{
  display:flex;
  flex-wrap:nowrap;
  width:max-content;
  gap:12px;
  animation:clientMarquee 28s linear infinite;
}

.client-marquee{
  overflow:hidden;
  width:100%;
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
}

.client-card{
  flex:0 0 142px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:10px;
  background:#0b0b0b;
  color:#fff;
  border:1px solid #222;
  font-size:10px;
  font-weight:800;
  letter-spacing:.05em;
  text-align:center;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
}

.client-card img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:grayscale(1) brightness(0) invert(1);
}

.client-card span{
  max-width:120px;
}

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

.stack-list{
  position:relative;
  z-index:2;
}

.stack-card{
  transition:transform .35s ease,box-shadow .35s ease;
}

.stack-card:hover{
  box-shadow:0 28px 70px rgba(40,20,90,.13);
}

.dynamic-projects .proj-card,
.dynamic-team .team-card{
  cursor:pointer;
}

.project-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

.project-meta{
  margin-top:5px;
  color:#777;
  font-size:11px;
}

.project-content{
  padding:12px 2px 0;
}

.flow-card{
  transition:transform .35s ease,box-shadow .35s ease;
}

.flow-card:hover{
  transform:translateY(-7px);
  box-shadow:0 18px 45px rgba(50,30,100,.09);
}

.team-card img,
.proj-thumb img{
  object-fit:cover;
}

.test-card{
  transition:transform .3s ease;
}

.test-card:hover{
  transform:translateY(-6px);
}

.contact-status{
  display:none;
  margin-top:15px;
  padding:12px 14px;
  border-radius:12px;
  background:#e9e2ff;
  color:#24114f;
  font-size:13px;
}

.page-curve-wrap{
  z-index:1;
}

.nav,
.hero3d,
.curtain,
.clients,
.services,
.projects,
.flow,
.about,
.contact,
.why,
.integration-section,
.experiences,
.mega-footer{
  position:relative;
  z-index:2;
}

@media (prefers-reduced-motion:reduce){
  .client-row{animation:none;}
}


/* =========================================================
   DETAIL PAGES + RESPONSIVE NAV — source design adaptation
========================================================= */

header.nav{
  position:sticky;
  top:0;
  z-index:60;
  background:rgba(244,242,242,.78);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid #00000008;
}
.nav-inner{min-height:78px;}
nav.links .primary-menu{display:flex;align-items:center;gap:32px;margin:0;padding:0;list-style:none;}
nav.links .primary-menu > li{margin:0;padding:0;list-style:none;}
nav.links .primary-menu a{font-size:14px;font-weight:600;color:#201f1f;opacity:.75;transition:opacity .2s,color .2s;}
nav.links .primary-menu a:hover,
nav.links .primary-menu .current-menu-item > a{opacity:1;color:var(--lime);}

.burger{
  display:none;
  width:44px;height:44px;
  padding:0;border:1px solid #00000012;border-radius:12px;
  background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;
  cursor:pointer;
}
.burger span{display:block;width:20px;height:2px;background:var(--ink);transition:transform .25s,opacity .25s;}
.nav-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-open .burger span:nth-child(2){opacity:0;}
.nav-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.mobile-menu{
  display:none;
  position:absolute;left:16px;right:16px;top:calc(100% + 8px);
  padding:12px;background:rgba(255,255,255,.97);
  border:1px solid #00000010;border-radius:20px;
  box-shadow:0 24px 70px rgba(0,0,0,.14);
}
.mobile-menu-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;}
.mobile-menu-list li{list-style:none;}
.mobile-menu-list a{
  display:flex;padding:15px 14px;border-radius:12px;
  font-weight:700;font-size:15px;
}
.mobile-menu-list a:hover{background:var(--lime-soft,#efe6ff);color:var(--lime);}
.mobile-menu-cta{
  display:flex;align-items:center;justify-content:center;
  margin-top:8px;padding:14px;border-radius:999px;
  background:var(--lime);color:#fff!important;font-weight:800;
}

/* Source-inspired project detail */
.gex-detail{background:var(--gray-bg,#eeeeee);}
.gex-detail .proj-header{padding:56px 0 34px;}
.gex-detail .proj-header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;}
.gex-detail .proj-eyebrow{color:var(--muted);font-size:13.5px;font-weight:700;letter-spacing:.3px;}
.gex-detail .proj-title{font-size:clamp(38px,6vw,72px);font-weight:800;letter-spacing:-1.5px;margin:10px 0 0;line-height:1;}
.gex-detail .proj-hero-img{border-radius:var(--radius);overflow:hidden;height:520px;margin-top:36px;background:#ddd;}
.gex-detail .proj-hero-img img{width:100%;height:100%;object-fit:cover;}
.gex-detail .details-row{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;padding:76px 0;border-bottom:1px solid #00000010;}
.gex-detail .detail-list{display:flex;flex-direction:column;gap:22px;}
.gex-detail .detail-item{display:grid;grid-template-columns:110px 1fr;gap:16px;padding-bottom:18px;border-bottom:1px solid #00000010;}
.gex-detail .detail-label{font-size:13px;color:var(--muted);font-weight:600;}
.gex-detail .detail-value{font-size:14.5px;font-weight:700;}
.gex-detail .intro-label{font-size:13px;color:var(--muted);font-weight:600;margin-bottom:14px;}
.gex-detail .intro-text{font-size:clamp(20px,2.4vw,28px);font-weight:600;line-height:1.35;letter-spacing:-.3px;}
.gex-detail .dual-image{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 0 90px;}
.gex-detail .dual-image .img-box{border-radius:var(--radius);overflow:hidden;height:420px;background:#ddd;}
.gex-detail .dual-image img{width:100%;height:100%;object-fit:cover;}
.gex-detail .story-section{display:grid;grid-template-columns:140px 1fr;gap:40px;padding:64px 0 40px;position:relative;}
.gex-detail .story-num{font-size:48px;font-weight:800;color:#00000014;letter-spacing:-1px;}
.gex-detail .story-body h2{font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:-.6px;margin:0 0 18px;}
.gex-detail .story-body p{color:var(--muted);font-size:15.5px;line-height:1.75;max-width:640px;margin:0;}
.gex-detail .story-body .btn{margin-top:26px;}
.gex-detail .full-image{border-radius:var(--radius);overflow:hidden;height:480px;margin:0 0 26px;background:#ddd;}
.gex-detail .full-image.short{height:380px;}
.gex-detail .full-image img{width:100%;height:100%;object-fit:cover;}
.gex-detail .related{padding:110px 0 100px;}
.gex-detail .related-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px;flex-wrap:wrap;gap:16px;}
.gex-detail .related-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.gex-detail .related-card .thumb{border-radius:var(--radius);overflow:hidden;height:300px;background:#ddd;}
.gex-detail .related-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.gex-detail .related-card:hover .thumb img{transform:scale(1.04);}
.gex-detail .related-card h3{font-size:19px;font-weight:800;margin:18px 0 6px;}
.gex-detail .related-card p{color:var(--muted);font-size:13.5px;line-height:1.5;margin:0 0 14px;}
.gex-detail .tag-row{display:flex;gap:10px;flex-wrap:wrap;}
.gex-detail .tag{font-size:11.5px;font-weight:700;background:#fff;border:1px solid #00000014;padding:6px 12px;border-radius:999px;}

/* Source-inspired service detail */
.gex-service-detail .service-header{padding:56px 0 0;position:relative;}
.gex-service-detail .tag-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #00000012;border-radius:999px;padding:8px 16px;font-size:11.5px;font-weight:700;letter-spacing:1px;color:var(--muted);text-transform:uppercase;}
.gex-service-detail .tag-chip .dot{width:6px;height:6px;border-radius:50%;background:#ff5b3d;}
.gex-service-detail .service-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;margin-top:22px;}
.gex-service-detail .service-title{font-size:clamp(40px,5.6vw,66px);font-weight:800;letter-spacing:-1.5px;line-height:1.02;margin:0;}
.gex-service-detail .service-lead{max-width:340px;color:var(--muted);font-size:14.5px;line-height:1.65;padding-bottom:8px;}
.gex-service-detail .service-hero-img{border-radius:var(--radius);overflow:hidden;height:520px;margin-top:36px;background:#ddd;}
.gex-service-detail .service-hero-img img{width:100%;height:100%;object-fit:cover;}
.gex-service-detail .service-body{display:grid;grid-template-columns:.85fr 1.6fr;gap:64px;padding:80px 0 40px;align-items:start;}
.gex-service-detail .service-body h2{font-size:clamp(24px,2.6vw,32px);font-weight:800;letter-spacing:-.6px;margin:0 0 26px;}
.gex-service-detail .deliv-list{list-style:none;padding:0;margin:0;}
.gex-service-detail .deliv-list li{display:flex;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid #00000012;font-size:14.5px;font-weight:600;}
.gex-service-detail .deliv-num{color:var(--muted-2);font-size:12.5px;font-weight:700;width:22px;}
.gex-service-detail .overview p,.gex-service-detail .why-list li,.gex-service-detail .step-text{color:var(--muted);font-size:15px;line-height:1.75;}
.gex-service-detail .overview-img{border-radius:var(--radius);overflow:hidden;height:340px;margin-top:34px;background:#ddd;}
.gex-service-detail .overview-img img{width:100%;height:100%;object-fit:cover;}
.gex-service-detail .why-matters,.gex-service-detail .process{max-width:1000px;margin-left:auto;margin-right:0;border-top:1px solid #00000012;padding:56px 0 20px;}
.gex-service-detail .why-matters-inner{max-width:900px;margin-left:auto;}
.gex-service-detail .why-matters h2,.gex-service-detail .process h2{font-size:clamp(24px,2.6vw,32px);font-weight:800;margin:0 0 14px;}
.gex-service-detail .why-list{display:flex;flex-direction:column;gap:20px;list-style:none;padding:0;}
.gex-service-detail .why-list li{display:flex;gap:14px;line-height:1.65;}
.gex-service-detail .why-list li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime);margin-top:9px;flex-shrink:0;}
.gex-service-detail .process{padding-bottom:70px;}
.gex-service-detail .process-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 40px;}
.gex-service-detail .process-step{display:flex;gap:16px;}
.gex-service-detail .step-num{font-size:26px;font-weight:800;color:#00000018;line-height:1;}
.gex-service-detail .step-title{font-size:16.5px;font-weight:800;margin:0 0 8px;}

/* Dynamic product detail */
.gex-product-detail section{padding:100px 0;}
.gex-product-detail .product-hero{position:relative;padding:90px 0 70px;overflow:hidden;}
.gex-product-detail .product-hero-inner{text-align:center;position:relative;z-index:2;}
.gex-product-detail .product-hero h1{font-size:clamp(42px,7vw,88px);font-weight:800;letter-spacing:-2.5px;line-height:1.02;margin:20px auto;max-width:900px;}
.gex-product-detail .product-hero h1 .accent{color:var(--lime);font-style:italic;}
.gex-product-detail .product-sub{max-width:560px;margin:0 auto 34px;color:var(--muted);font-size:16px;line-height:1.6;}
.gex-product-detail .product-actions{display:flex;justify-content:center;gap:14px;margin-bottom:60px;flex-wrap:wrap;}
.gex-product-detail .product-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:960px;margin:0 auto;}
.gex-product-detail .product-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.18);}
.gex-product-detail .product-card:nth-child(2){transform:translateY(-20px);}
.gex-product-detail .product-card img{width:100%;height:210px;object-fit:cover;}
.gex-product-detail .product-card .card-tag{padding:14px 18px;font-size:12.5px;font-weight:700;color:var(--muted);display:flex;justify-content:space-between;gap:10px;}
.gex-product-detail .status{background:var(--lime-soft,#efe6ff);color:var(--lime-dim);padding:4px 10px;border-radius:999px;font-size:11px;}
.gex-product-detail .product-marquee{padding:70px 0;overflow:hidden;}
.gex-product-detail .marquee-head{text-align:center;margin-bottom:40px;}
.gex-product-detail .marquee-track{display:flex;gap:16px;width:max-content;animation:gexProductMarquee 32s linear infinite;}
.gex-product-detail .marquee-row{overflow:hidden;margin-bottom:16px;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.gex-product-detail .m-chip{flex-shrink:0;background:#fff;border:1px solid #00000010;padding:16px 30px;border-radius:999px;font-weight:800;font-size:14px;color:#3a3a3a;letter-spacing:.4px;}
@keyframes gexProductMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.gex-product-detail .product-video{position:relative;padding:120px 0;overflow:hidden;}
.gex-product-detail .product-video-card{position:relative;z-index:3;max-width:920px;margin:0 auto;border-radius:var(--radius);overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.35);background:#111;}
.gex-product-detail .product-video-card img{width:100%;height:520px;object-fit:cover;}
.gex-product-detail .feature-list{display:flex;flex-direction:column;}
.gex-product-detail .feature-item{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:start;padding:52px 0;border-top:1px solid #00000010;}
.gex-product-detail .feature-item:last-child{border-bottom:1px solid #00000010;}
.gex-product-detail .feature-kicker{font-size:12px;font-weight:700;color:var(--muted-2);letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;}
.gex-product-detail .feature-item h3{font-size:clamp(26px,3vw,38px);font-weight:800;letter-spacing:-.8px;margin:0 0 14px;}
.gex-product-detail .feature-item p{max-width:560px;color:var(--muted);font-size:14.5px;line-height:1.7;margin:0 0 18px;}
.gex-product-detail .feature-tags{display:flex;gap:10px;flex-wrap:wrap;}
.gex-product-detail .feature-tags span{font-size:11.5px;font-weight:700;background:#fff;border:1px solid #00000012;padding:6px 12px;border-radius:999px;}
.gex-product-detail .pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.gex-product-detail .price-card{background:#fff;border-radius:var(--radius);padding:38px 30px;display:flex;flex-direction:column;gap:22px;border:1px solid #00000010;}
.gex-product-detail .price-card.highlight{background:var(--black);color:#fff;border:none;transform:translateY(-14px);}
.gex-product-detail .price-name{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;}
.gex-product-detail .price-amount{font-size:40px;font-weight:800;letter-spacing:-1px;}
.gex-product-detail .price-amount span{font-size:14px;color:var(--muted);}
.gex-product-detail .price-list{display:flex;flex-direction:column;gap:12px;list-style:none;padding:0;}
.gex-product-detail .price-list li{font-size:13.5px;display:flex;gap:10px;color:#3a3a3a;}
.gex-product-detail .price-card.highlight .price-list li{color:#d6d6d6;}
.gex-product-detail .price-list li::before{content:"✓";color:var(--lime);font-weight:800;}
.gex-product-detail .price-card .btn{margin-top:auto;}
.gex-product-detail .voices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:56px;}
.gex-product-detail .voice-card{background:var(--black);border-radius:var(--radius);padding:32px;color:#fff;display:flex;flex-direction:column;gap:18px;min-height:280px;justify-content:space-between;}
.gex-product-detail .voice-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;font-weight:800;}
.gex-product-detail .voice-quote{font-size:15px;line-height:1.65;color:#e6e6e6;}
.gex-product-detail .voice-name{font-weight:700;font-size:14px;}
.gex-product-detail .voice-role{font-size:12px;color:#9a9a9a;}
.gex-product-detail .stats-row{display:flex;justify-content:center;gap:60px;flex-wrap:wrap;text-align:center;}
.gex-product-detail .stat-block .num{font-size:clamp(32px,4vw,48px);font-weight:800;color:var(--lime);}
.gex-product-detail .stat-block .lbl{font-size:12.5px;color:var(--muted);font-weight:600;margin-top:4px;}
.gex-product-detail .faq-wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;}
.gex-product-detail .faq-list{display:flex;flex-direction:column;}
.gex-product-detail .faq-item{border-top:1px solid #00000012;}
.gex-product-detail .faq-item:last-child{border-bottom:1px solid #00000012;}
.gex-product-detail .faq-q{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;font-weight:700;font-size:15.5px;}
.gex-product-detail .faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.gex-product-detail .faq-item.open .faq-a{max-height:300px;}
.gex-product-detail .faq-a p{color:var(--muted);font-size:14px;line-height:1.7;padding-bottom:22px;margin:0;}
.gex-product-detail .product-cta{background:var(--black);color:#fff;border-radius:var(--radius);margin:0 32px 60px;padding:64px 56px;max-width:calc(var(--maxw) - 64px);margin-left:auto;margin-right:auto;position:relative;overflow:hidden;}
.gex-product-detail .product-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 560px 320px at 85% 30%,rgba(106,45,232,.35),transparent 65%);pointer-events:none;}
.gex-product-detail .product-cta h2{font-size:clamp(30px,4vw,46px);font-weight:800;letter-spacing:-1px;line-height:1.12;margin:0 0 30px;max-width:520px;position:relative;z-index:2;}
.gex-product-detail .product-cta .btn{position:relative;z-index:2;}

@media (max-width:900px){
  .nav-inner{padding:14px 20px;}
  .nav-cta .btn{display:none;}
  nav.links{display:none!important;}
  .burger{display:flex;}
  .mobile-menu{display:block;}
  .mobile-menu[hidden]{display:none;}
  .gex-detail .details-row{grid-template-columns:1fr;gap:36px;}
  .gex-detail .dual-image{grid-template-columns:1fr;}
  .gex-detail .story-section{grid-template-columns:1fr;gap:16px;}
  .gex-detail .related-grid{grid-template-columns:1fr;}
  .gex-detail .proj-hero-img{height:320px;}
  .gex-detail .full-image{height:280px;}
  .gex-service-detail .service-body{grid-template-columns:1fr;gap:40px;}
  .gex-service-detail .why-matters,.gex-service-detail .process{max-width:100%;}
  .gex-service-detail .process-grid{grid-template-columns:1fr;}
  .gex-service-detail .service-hero-img{height:320px;}
  .gex-service-detail .overview-img{height:260px;}
  .gex-product-detail .product-cards{grid-template-columns:1fr;}
  .gex-product-detail .product-card:nth-child(2){transform:none;}
  .gex-product-detail .feature-item{grid-template-columns:1fr;}
  .gex-product-detail .pricing-grid{grid-template-columns:1fr;}
  .gex-product-detail .price-card.highlight{transform:none;}
  .gex-product-detail .voices-grid{grid-template-columns:1fr;}
  .gex-product-detail .faq-wrap{grid-template-columns:1fr;gap:24px;}
  .gex-product-detail .product-video-card img{height:340px;}
  .gex-product-detail .product-cta{margin:0 20px 50px;padding:48px 28px;}
}
@media (max-width:560px){
  .logo-group .custom-logo{max-height:34px;width:auto;}
  .gex-detail .detail-item{grid-template-columns:1fr;gap:4px;}
  .gex-detail .proj-title{font-size:clamp(38px,13vw,58px);}
  .gex-product-detail section{padding:72px 0;}
  .gex-product-detail .product-hero{padding:65px 0 40px;}
}


/* =========================================================
   GEXAUZ SOURCE-PAGE VISUAL SYSTEM — FINAL OVERRIDES
   Mirrors the supplied project / product / service HTML references.
========================================================= */
:root{
  --lime:#6a2de8;
  --lime-dim:#5a24c4;
  --lime-soft:#efe6ff;
  --black:#0b0b0b;
  --ink:#111111;
  --gray-bg:#eeeeee;
  --gray-bg-2:#e6e6e6;
  --card:#ffffff;
  --muted:#7a7a7a;
  --muted-2:#9a9a9a;
  --radius:22px;
  --radius-sm:14px;
  --maxw:1320px;
}
html{scroll-behavior:smooth;}
body{font-family:'Manrope',sans-serif;background:var(--gray-bg);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:32px;padding-right:32px;}
.btn{background:var(--lime);color:#fff;font-weight:700;font-size:14px;padding:15px 28px;border-radius:999px;transition:transform .25s ease,background .25s ease,box-shadow .25s ease;}
.btn:hover{background:var(--lime-dim);transform:translateY(-2px);box-shadow:0 12px 30px rgba(106,45,232,.18);}

/* Header: same proportions as reference pages */
header.nav{background:rgba(244,242,242,.78);border-bottom:1px solid #00000008;}
.nav-inner{max-width:var(--maxw);padding:18px 32px;min-height:78px;}
.logo-group{gap:11px;}
.logo{width:38px;height:38px;border-radius:11px;background:var(--lime);font-size:18px;}
.wordmark{font-weight:800;font-size:17px;letter-spacing:-.2px;}
nav.links .primary-menu{gap:32px;}
nav.links .primary-menu a{font-size:14px;font-weight:600;opacity:.75;}
.nav-cta{display:flex;align-items:center;gap:10px;}
.nav-cta .btn{padding:15px 25px;}
.burger{width:44px;height:44px;border-radius:12px;background:#fff;border:1px solid #00000012;}
.mobile-menu{background:rgba(255,255,255,.98);border:1px solid #00000010;border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.14);}
.mobile-menu-list a{font-size:15px;padding:15px 14px;}
.mobile-menu-cta{background:var(--lime);}

/* Project */
.gex-detail .proj-header{padding:56px 0 34px;}
.gex-detail .proj-title{font-size:clamp(38px,6vw,72px);}
.gex-detail .proj-hero-img{height:520px;border-radius:var(--radius);box-shadow:0 30px 70px -45px rgba(0,0,0,.3);}
.gex-detail .details-row{padding:76px 0;}
.gex-detail .story-section{padding:64px 0 40px;}
.gex-detail .story-badge{position:absolute;left:0;top:120px;background:var(--black);border:1px solid #2a2a2a;writing-mode:vertical-rl;padding:20px 12px;border-radius:0 14px 14px 0;font-size:12px;letter-spacing:.5px;color:#fff;display:flex;flex-direction:column;align-items:center;gap:10px;}
.gex-detail .story-badge b{writing-mode:horizontal-tb;font-size:16px;color:var(--lime);}
.gex-detail .story-section{position:relative;}
.gex-detail .related{padding:110px 0 100px;}
.gex-detail .related-card .thumb{box-shadow:0 20px 50px -35px rgba(0,0,0,.35);}

/* Service */
.gex-service-detail .service-header{padding:56px 0 0;position:relative;}
.gex-service-detail .hero-badge{position:absolute;left:0;top:390px;z-index:5;background:var(--black);border:1px solid #2a2a2a;writing-mode:vertical-rl;padding:20px 12px;border-radius:0 14px 14px 0;font-size:12px;letter-spacing:.5px;color:#fff;display:flex;flex-direction:column;align-items:center;gap:10px;}
.gex-service-detail .hero-badge b{writing-mode:horizontal-tb;font-size:16px;color:var(--lime);}
.gex-service-detail .service-title{font-size:clamp(40px,5.6vw,66px);}
.gex-service-detail .service-hero-img{height:520px;border-radius:var(--radius);box-shadow:0 30px 70px -45px rgba(0,0,0,.3);}
.gex-service-detail .service-body{padding:80px 0 40px;}
.gex-service-detail .why-matters,.gex-service-detail .process{border-top:1px solid #00000012;}
.gex-service-detail .process{padding-bottom:70px;}

/* Product */
.gex-product-detail .product-hero{padding:90px 0 60px;}
.gex-product-detail .product-hero h1{font-size:clamp(42px,7vw,88px);}
.gex-product-detail .product-cards{margin-top:0;}
.gex-product-detail .product-card{box-shadow:0 30px 60px -20px rgba(0,0,0,.18);}
.gex-product-detail .product-marquee{padding:70px 0;}
.gex-product-detail .product-video{padding:120px 0;}
.gex-product-detail .feature-item{padding:52px 0;}
.gex-product-detail .price-card{padding:38px 30px;}
.gex-product-detail .voice-card{min-height:280px;}
.gex-product-detail .product-cta{border-radius:var(--radius);}

@media (max-width:900px){
  .nav-inner{padding:14px 20px;min-height:68px;}
  .nav-cta .btn{display:none;}
  nav.links{display:none!important;}
  .burger{display:flex;}
  .mobile-menu{left:16px;right:16px;top:calc(100% + 8px);}
  .gex-detail .story-badge,.gex-service-detail .hero-badge{display:none;}
  .gex-detail .proj-hero-img,.gex-service-detail .service-hero-img{height:320px;}
  .gex-detail .details-row,.gex-service-detail .service-body{grid-template-columns:1fr;gap:36px;}
  .gex-detail .dual-image,.gex-detail .related-grid{grid-template-columns:1fr;}
  .gex-detail .story-section{grid-template-columns:1fr;gap:16px;}
  .gex-service-detail .process-grid{grid-template-columns:1fr;}
  .gex-service-detail .why-matters,.gex-service-detail .process{max-width:100%;}
  .gex-product-detail .product-cards,.gex-product-detail .pricing-grid,.gex-product-detail .voices-grid{grid-template-columns:1fr;}
  .gex-product-detail .product-card:nth-child(2),.gex-product-detail .price-card.highlight{transform:none;}
  .gex-product-detail .feature-item{grid-template-columns:1fr;}
  .gex-product-detail .faq-wrap{grid-template-columns:1fr;gap:24px;}
}
@media (max-width:560px){
  .wrap{padding-left:20px;padding-right:20px;}
  .gex-detail .proj-title{font-size:clamp(38px,13vw,58px);}
  .gex-detail .detail-item{grid-template-columns:1fr;gap:4px;}
  .gex-product-detail section{padding:72px 0;}
  .gex-product-detail .product-hero{padding:65px 0 40px;}
  .gex-product-detail .product-cta{margin-left:20px;margin-right:20px;padding:48px 28px;}
}

/* =========================================================
   FINAL RESPONSIVE NAVIGATION
========================================================= */
.mobile-menu-contact{display:flex;gap:8px;padding:8px 0 0}
.mobile-menu-contact a{flex:1;display:flex;justify-content:center;padding:11px;border:1px solid #00000010;border-radius:999px;font-size:12px;font-weight:800}
.mobile-menu[hidden]{display:none!important}
body.mobile-nav-open{overflow:hidden}
@media(max-width:900px){
  header.nav .nav-inner{min-height:72px;padding-left:18px;padding-right:18px}
  header.nav .nav-cta>.btn{display:none}
  nav.links{display:none!important}
  .burger{display:flex!important}
  .mobile-menu{display:block;max-height:calc(100vh - 96px);overflow:auto;background:var(--gex-mobile-bg,#fff)}
  .mobile-menu-list .menu-item-has-children>a:after{content:'+';margin-left:auto;font-size:18px}
  .mobile-menu-list .sub-menu{display:block;margin:0 0 4px;padding-left:14px;list-style:none}
  .mobile-menu-list .sub-menu a{font-size:13px;padding:10px 14px;color:#666}
}
@media(min-width:901px){.mobile-menu{display:none!important}}

/* =========================================================
   REFERENCE-PAGE IMAGE / MEDIA LIBRARY SUPPORT
========================================================= */
.gex-image-field .gex-media-preview{min-height:90px;margin:8px 0;padding:10px;border:1px dashed #ccd0d4;border-radius:8px;background:#f6f7f7;display:flex;align-items:center;justify-content:center;color:#777}
.gex-image-field .gex-media-preview img{max-width:220px;max-height:130px;object-fit:contain}

/* Exact reference detail footer */
.giant-footer{padding:20px 0 0;overflow:hidden;background:var(--gray-bg,#eeeeee)}
.giant-footer h2{font-size:clamp(90px,16vw,240px);font-weight:800;letter-spacing:-4px;color:#00000010;text-align:center;margin:0;line-height:1;-webkit-text-stroke:1px #00000018}
footer.site-footer{background:transparent;padding:22px 0 40px}
.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:12.5px;color:var(--muted-2)}
.footer-inner a{color:var(--muted-2)}
.footer-inner a:hover{color:var(--lime)}
.footer-detail-links{display:flex;gap:24px;flex-wrap:wrap}
@media(max-width:560px){.footer-detail-links{width:100%;gap:14px}}


/* Reference product marquee directions */
.gex-product-detail .marquee-track.right{animation-name:gexProductMarqueeRight}
.gex-product-detail .marquee-track.slow{animation-duration:44s}
@keyframes gexProductMarqueeRight{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.gex-product-detail .cta-tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#ff5b3d;letter-spacing:.4px;position:relative;z-index:2}
.gex-product-detail .cta-tag .dot{width:7px;height:7px;border-radius:50%;background:#ff5b3d}
.gex-service-detail .cta-banner{margin-top:20px}
.gex-service-detail .cta-banner p{position:relative;z-index:2;color:#c9c9c9;max-width:600px;line-height:1.6;margin:-10px 0 24px}

/* =========================================================
   GEXAUZ FINAL OVERRIDES — TECH STACK + CF7 CONTACT
========================================================= */

/* Seamless tool integration — GEXAUZ purple / grey system */
.integration-section{
  background:
    radial-gradient(circle at 18% 35%,rgba(106,45,232,.08),transparent 30%),
    radial-gradient(circle at 84% 70%,rgba(139,92,246,.07),transparent 28%),
    linear-gradient(135deg,#f7f7f8 0%,#ececec 55%,#f8f8f8 100%);
  border:1px solid rgba(106,45,232,.08);
  border-radius:30px;
  min-height:620px;
  padding:78px 0 55px;
  box-shadow:0 18px 70px rgba(15,15,20,.05);
}

.integration-content{max-width:720px;padding:0 24px;}
.integration-label{
  color:#6a2de8;
  background:#fff;
  border:1px solid rgba(106,45,232,.13);
  box-shadow:0 7px 24px rgba(106,45,232,.08);
}
.integration-content h2{
  color:#0b0b0b;
  font-weight:800;
  letter-spacing:-2.5px;
}
.integration-content p{color:#666;max-width:520px;}

.integration-line{
  border-color:rgba(106,45,232,.18);
  border-width:1px;
}
.integration-line.line-1{width:850px;height:850px;left:-470px;top:-330px;}
.integration-line.line-2{width:720px;height:720px;right:-390px;top:120px;}
.integration-line.line-3{width:560px;height:560px;right:70px;top:-250px;border-style:dashed;}

.tech-stack-field{
  position:relative;
  z-index:5;
  width:100%;
  margin-top:58px;
  overflow:hidden;
  cursor:grab;
  user-select:none;
  touch-action:pan-y;
}
.tech-stack-field.is-dragging{cursor:grabbing;}
.tech-row-wrap{
  width:100%;
  overflow:hidden;
  padding:8px 0;
  mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
}
.tech-row{
  display:flex;
  width:max-content;
  gap:12px;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.tech-row-wrap:first-child .tech-row{animation:techRowA 34s linear infinite;}
.tech-row-wrap:nth-child(2) .tech-row{animation:techRowB 38s linear infinite;}
.tech-stack-field.is-dragging .tech-row{animation-play-state:paused;}

@keyframes techRowA{
  from{transform:translate3d(0,0,0);}
  to{transform:translate3d(-50%,0,0);}
}
@keyframes techRowB{
  from{transform:translate3d(-50%,0,0);}
  to{transform:translate3d(0,0,0);}
}

.integration-logo{
  min-width:auto;
  padding:12px 19px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(106,45,232,.10);
  color:#17151c;
  box-shadow:0 8px 22px rgba(20,15,30,.06);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
  backdrop-filter:blur(12px);
}
.integration-logo:hover{
  color:#6a2de8;
  background:#fff;
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(106,45,232,.12);
}
.tech-stack-hint{
  margin-top:18px;
  text-align:center;
  color:#999;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Contact Form 7 / native fallback */
.get-proposal-shell{width:100%;min-width:0;}
.gexauz-cf7-wrap,.gexauz-cf7-wrap form.get-proposal{width:100%;}
.gexauz-cf7-wrap .wpcf7-form{margin:0;}
.gexauz-cf7-wrap .wpcf7-response-output{margin:18px 0 0;border-radius:12px;padding:12px 14px;color:#fff;border-color:#6a2de8;}
.gexauz-cf7-wrap .wpcf7-not-valid-tip{color:#ff9eaa;font-size:11px;margin-top:5px;}
.gexauz-cf7-wrap .wpcf7-spinner{margin:10px auto;}

.contact-grid{
  grid-template-columns:minmax(300px,.82fr) minmax(520px,1.18fr);
  gap:72px;
  align-items:start;
}
form.get-proposal,
.gexauz-cf7-wrap .get-proposal,
.gexauz-cf7-wrap .wpcf7-form{
  background:rgba(20,20,20,.94);
  border:1px solid rgba(255,255,255,.08);
  border-radius:26px;
  padding:34px;
  box-shadow:0 30px 90px rgba(0,0,0,.24);
}

/* CF7 utility classes users can paste into the Contact Form 7 editor */
.gexauz-cf7-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.gexauz-cf7-field{margin-bottom:16px;}
.gexauz-cf7-field label{display:block;color:#aaa;font-size:11px;font-weight:700;margin-bottom:7px;}
.gexauz-cf7-field input,
.gexauz-cf7-field textarea,
.gexauz-cf7-field select,
.gexauz-cf7-wrap input[type="text"],
.gexauz-cf7-wrap input[type="email"],
.gexauz-cf7-wrap input[type="tel"],
.gexauz-cf7-wrap textarea,
.gexauz-cf7-wrap select{
  width:100%;
  min-height:50px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  padding:13px 14px;
  background:#111;
  color:#fff;
  outline:none;
  font:inherit;
}
.gexauz-cf7-wrap textarea{min-height:130px;resize:vertical;}
.gexauz-cf7-wrap input:focus,
.gexauz-cf7-wrap textarea:focus,
.gexauz-cf7-wrap select:focus{border-color:#6a2de8;box-shadow:0 0 0 3px rgba(106,45,232,.12);}
.gexauz-cf7-wrap input[type="checkbox"],
.gexauz-cf7-wrap input[type="radio"]{accent-color:#6a2de8;}
.gexauz-cf7-wrap .wpcf7-submit{
  width:100%;
  border:0;
  border-radius:999px;
  padding:15px 22px;
  background:#6a2de8;
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  transition:transform .25s ease,box-shadow .25s ease;
}
.gexauz-cf7-wrap .wpcf7-submit:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(106,45,232,.3);}

@media (max-width:900px){
  .integration-section{min-height:590px;border-radius:24px;padding-top:60px;}
  .integration-content h2{font-size:clamp(34px,9vw,48px);}
  .tech-stack-field{margin-top:45px;}
  .contact-grid{grid-template-columns:1fr;gap:42px;}
  form.get-proposal,.gexauz-cf7-wrap .wpcf7-form{padding:24px;}
}
@media (max-width:620px){
  .gexauz-cf7-grid{grid-template-columns:1fr;gap:0;}
  .integration-logo{padding:10px 15px;font-size:11px;}
  .tech-row{gap:8px;}
  .integration-line.line-1{left:-620px;}
  .integration-line.line-2{right:-500px;}
}


/* GEXAUZ TECH STACK MARQUEE FINAL FIX */
.integration-section#tech-stack,
.integration-section{
  background:
    radial-gradient(ellipse at 8% 15%, rgba(106,45,232,.10), transparent 30%),
    radial-gradient(ellipse at 92% 80%, rgba(139,92,246,.10), transparent 32%),
    linear-gradient(135deg,#f8f8fa 0%,#eeeeef 52%,#f7f7f8 100%) !important;
  color:#0b0b0b !important;
  border:1px solid rgba(106,45,232,.10) !important;
  border-radius:32px !important;
  min-height:520px !important;
  padding:78px 0 52px !important;
}
.integration-section .integration-line{display:none !important;}
.integration-section .integration-content{max-width:760px !important;margin:0 auto !important;padding:0 24px !important;text-align:center !important;}
.integration-section .integration-label{
  color:#6a2de8 !important;
  background:#fff !important;
  border:1px solid rgba(106,45,232,.14) !important;
  box-shadow:0 8px 24px rgba(106,45,232,.08) !important;
}
.integration-section .integration-content h2{
  color:#0b0b0b !important;
  font-weight:800 !important;
  letter-spacing:-2.5px !important;
}
.integration-section .integration-content p{color:#666 !important;}

.integration-section .tech-stack-field{
  position:relative !important;
  width:100% !important;
  margin-top:52px !important;
  overflow:hidden !important;
  padding:0 !important;
  cursor:grab !important;
  user-select:none !important;
  touch-action:pan-y !important;
}
.integration-section .tech-stack-field.is-dragging{cursor:grabbing !important;}
.integration-section .tech-row-wrap{
  position:relative !important;
  display:block !important;
  width:100% !important;
  overflow:hidden !important;
  padding:8px 0 !important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%) !important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%) !important;
}
.integration-section .tech-row{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  width:max-content !important;
  max-width:none !important;
  gap:12px !important;
  padding:0 0 4px !important;
  margin:0 !important;
  will-change:transform !important;
}
.integration-section .tech-row-wrap:first-child .tech-row{
  animation:gexTechForward 34s linear infinite !important;
}
.integration-section .tech-row-wrap:nth-child(2) .tech-row{
  animation:gexTechReverse 38s linear infinite !important;
}
.integration-section .tech-stack-field.is-dragging .tech-row{
  animation-play-state:paused !important;
}
@keyframes gexTechForward{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@keyframes gexTechReverse{
  from{transform:translate3d(-50%,0,0)}
  to{transform:translate3d(0,0,0)}
}
.integration-section .integration-logo,
.integration-section .tech-row > .integration-logo{
  display:inline-flex !important;
  flex:0 0 auto !important;
  width:max-content !important;
  min-width:0 !important;
  max-width:none !important;
  height:44px !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 20px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(106,45,232,.12) !important;
  color:#17151c !important;
  box-shadow:0 7px 22px rgba(15,15,20,.06) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease !important;
}
.integration-section .integration-logo:hover{
  transform:translateY(-4px) !important;
  background:#6a2de8 !important;
  border-color:#6a2de8 !important;
  color:#fff !important;
  box-shadow:0 12px 30px rgba(106,45,232,.20) !important;
}
.integration-section .tech-stack-hint{
  margin-top:22px !important;
  color:#85858a !important;
  font-size:10px !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}
@media(max-width:900px){
  .integration-section#tech-stack{border-radius:24px !important;padding-top:58px !important;min-height:470px !important;}
  .integration-section .tech-stack-field{margin-top:38px !important;}
  .integration-section .integration-logo{height:40px !important;padding:0 16px !important;font-size:11px !important;}
}

/* =========================================================
   SITE-WIDE HOMEPAGE FOOTER
   Use the same homepage footer on every template/page.
========================================================= */
.site-wide-footer.mega-footer{
  display:block;
  width:100%;
}
.site-wide-footer .footer-wrap{
  width:min(1320px,calc(100% - 48px));
  margin:0 auto;
}
.site-wide-footer .footer-grid{display:grid;}
@media (max-width: 760px){
  .site-wide-footer .footer-wrap{width:min(100% - 28px,1320px);}
  .site-wide-footer .footer-grid{grid-template-columns:1fr 1fr;}
  .site-wide-footer .footer-bar{gap:20px;}
  .site-wide-footer .lockup h2{font-size:clamp(58px,18vw,120px);}
}


/* =========================================================
   GEXAUZ — CLEAN RESPONSIVE PRIMARY MENU
   WordPress Appearance > Menus is the single source of truth.
========================================================= */

.gexauz-site-nav{z-index:1000}
.gexauz-site-nav .nav-inner{position:relative;z-index:1002}
.desktop-nav{display:flex;align-items:center;margin-left:auto}
.gexauz-primary-menu,
.gexauz-primary-menu ul{
  list-style:none;
  margin:0;
  padding:0;
}
.gexauz-primary-menu{
  display:flex;
  align-items:center;
  gap:clamp(18px,2.2vw,32px);
}
.gexauz-primary-menu > li{position:relative}
.gexauz-primary-menu a{
  display:flex;
  align-items:center;
  gap:7px;
  padding:10px 0;
  color:inherit;
  text-decoration:none;
  white-space:nowrap;
  transition:opacity .2s ease,color .2s ease;
}
.gexauz-primary-menu a:hover{opacity:.72}
.gexauz-primary-menu .menu-item-has-children > a::after{
  content:"";
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .25s ease;
}
.gexauz-primary-menu .menu-item-has-children:hover > a::after,
.gexauz-primary-menu .menu-item-has-children:focus-within > a::after{
  transform:rotate(225deg) translate(-1px,-1px);
}

.gexauz-primary-menu .sub-menu{
  position:absolute;
  top:calc(100% + 12px);
  left:50%;
  min-width:235px;
  padding:8px;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(0,0,0,.08);
  border-radius:18px;
  box-shadow:0 24px 70px rgba(30,20,50,.16);
  backdrop-filter:blur(18px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,-8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  z-index:1010;
}
.gexauz-primary-menu .sub-menu .sub-menu{
  top:-8px;
  left:calc(100% + 8px);
  transform:translateX(-8px);
}
.gexauz-primary-menu li:hover > .sub-menu,
.gexauz-primary-menu li:focus-within > .sub-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.gexauz-primary-menu .sub-menu .sub-menu{
  transform:translateX(-8px);
}
.gexauz-primary-menu .sub-menu li:hover > .sub-menu,
.gexauz-primary-menu .sub-menu li:focus-within > .sub-menu{
  transform:translateX(0);
}
.gexauz-primary-menu .sub-menu a{
  width:100%;
  box-sizing:border-box;
  padding:11px 12px;
  border-radius:11px;
}
.gexauz-primary-menu .sub-menu a:hover{
  background:#eee8ff;
  opacity:1;
}

.gexauz-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  position:relative;
  z-index:1015;
}
.gexauz-menu-toggle span{
  width:23px;
  height:2px;
  background:currentColor;
  border-radius:999px;
  transition:transform .3s ease,opacity .2s ease;
}
.gexauz-menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.gexauz-menu-toggle.is-open span:nth-child(2){opacity:0}
.gexauz-menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.gexauz-mobile-menu{
  display:none;
  position:fixed;
  inset:0;
  z-index:999;
  background:rgba(247,247,247,.98);
  backdrop-filter:blur(22px);
  overflow-y:auto;
  opacity:0;
  visibility:hidden;
  transform:translateY(-10px);
  transition:opacity .3s ease,transform .3s ease,visibility .3s ease;
}
.gexauz-mobile-menu.is-open{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.gexauz-mobile-menu-inner{
  min-height:100%;
  box-sizing:border-box;
  max-width:720px;
  margin:0 auto;
  padding:90px 24px 32px;
}
.gexauz-mobile-menu-header{
  display:flex;
  align-items:center;
  margin-bottom:18px;
}
.gexauz-mobile-menu-header .custom-logo-link,
.gexauz-mobile-menu-header .custom-logo{
  max-height:35px;
  width:auto;
}
.gexauz-mobile-menu-list,
.gexauz-mobile-menu-list ul{
  list-style:none;
  margin:0;
  padding:0;
}
.gexauz-mobile-menu-list > li > a{
  font-size:clamp(25px,7vw,42px);
  font-weight:700;
  letter-spacing:-.045em;
}
.gexauz-mobile-menu-list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  box-sizing:border-box;
  padding:14px 4px;
  color:#111;
  text-decoration:none;
  border-bottom:1px solid rgba(0,0,0,.09);
}
.gexauz-mobile-menu-list .menu-item-has-children > a::after{
  content:"+";
  font-size:.7em;
  font-weight:400;
  transition:transform .25s ease;
}
.gexauz-mobile-menu-list .menu-item-has-children.is-submenu-open > a::after{
  transform:rotate(45deg);
}
.gexauz-mobile-menu-list .sub-menu{
  display:none;
  padding:5px 0 8px 10px;
}
.gexauz-mobile-menu-list .menu-item-has-children.is-submenu-open > .sub-menu{
  display:block;
}
.gexauz-mobile-menu-list .sub-menu a{
  padding:10px 12px;
  margin:3px 0;
  border:0;
  border-radius:11px;
  background:#ece8f8;
  font-size:16px;
  letter-spacing:0;
  font-weight:600;
}
.gexauz-mobile-actions{margin-top:22px}
.gexauz-mobile-cta{
  display:block;
  text-align:center;
}
.gexauz-mobile-contact{
  display:flex;
  gap:10px;
  margin-top:10px;
}
.gexauz-mobile-contact a{
  flex:1;
  padding:12px;
  text-align:center;
  text-decoration:none;
  color:#111;
  background:#fff;
  border:1px solid rgba(0,0,0,.12);
  border-radius:12px;
}

@media (max-width:980px){
  .desktop-nav{display:none}
  .nav-proposal{display:none}
  .gexauz-menu-toggle{display:flex}
  .gexauz-mobile-menu{display:block}
}
@media (min-width:981px){
  .gexauz-mobile-menu{display:none !important}
}
@media (max-width:480px){
  .gexauz-mobile-menu-inner{padding-left:18px;padding-right:18px}
  .gexauz-mobile-menu-list > li > a{font-size:28px}
}
@media (prefers-reduced-motion:reduce){
  .gexauz-menu-toggle span,
  .gexauz-mobile-menu,
  .gexauz-primary-menu .sub-menu{transition:none}
}
body.gexauz-menu-open{overflow:hidden}

/* ===== VISUAL FIXES: NAV + HERO ORBIT / PLANET ROTATION ===== */
.gexauz-site-nav .gexauz-primary-menu,
.gexauz-site-nav .gexauz-primary-menu > li{
  display:flex;
  align-items:center;
}
.gexauz-site-nav .gexauz-primary-menu{gap:clamp(20px,2.5vw,34px)}
.gexauz-site-nav .gexauz-primary-menu > li{position:relative}
.gexauz-site-nav .gexauz-primary-menu > li > a{
  display:flex!important;
  align-items:center;
  min-height:42px;
  padding:8px 0!important;
}
.gexauz-site-nav .gexauz-primary-menu .sub-menu{
  display:block;
}
.gexauz-site-nav .nav-actions{display:flex;align-items:center;gap:12px}

/* keep the hero behind the navigation */
.gexauz-site-nav{position:relative}
.hero{position:relative;overflow:hidden}
.gexauz-hero-visual{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
}
.gexauz-planet-family{
  position:absolute;
  width:min(620px,52vw);
  aspect-ratio:1;
  right:6%;
  top:50%;
  transform:translateY(-50%);
  pointer-events:none;
}
.gexauz-planet-family .planet-orbit{
  position:absolute;
  inset:4%;
  border:1px solid rgba(106,45,232,.20);
  border-radius:50%;
  transform:rotate(-18deg);
}
.gexauz-planet-family .planet-orbit.orbit-2{
  inset:11%;
  transform:rotate(62deg);
  border-style:dashed;
}
.gexauz-planet-family .planet-orbit.orbit-3{
  inset:20%;
  transform:rotate(112deg);
  border-color:rgba(106,45,232,.12);
}
.gexauz-planet-family .planet-sun{
  position:absolute;
  width:25%;
  aspect-ratio:1;
  left:37.5%;
  top:37.5%;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#ffffff 0 7%,#c9b9ff 23%,#7540ef 55%,#3b168f 100%);
  box-shadow:0 20px 70px rgba(106,45,232,.30),inset -15px -20px 35px rgba(22,8,70,.2);
}
.gexauz-planet-family .planet-moon{
  position:absolute;
  width:6%;
  aspect-ratio:1;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 20px rgba(106,45,232,.25);
}
.gexauz-planet-family .moon-1{left:8%;top:43%}
.gexauz-planet-family .moon-2{right:8%;top:28%;width:4%}
.gexauz-planet-family .moon-3{left:23%;bottom:8%;width:3.5%}
.gexauz-planet-family .planet-ring{
  position:absolute;
  width:62%;
  height:20%;
  left:19%;
  top:40%;
  border:12px solid rgba(255,255,255,.8);
  border-radius:50%;
  transform:rotate(-22deg);
  box-shadow:0 0 30px rgba(106,45,232,.08);
}
.gexauz-planet-family.is-rotating .planet-orbit{animation:planetFamilyRotate 18s linear infinite}
.gexauz-planet-family.is-rotating .orbit-2{animation-duration:24s;animation-direction:reverse}
.gexauz-planet-family.is-rotating .orbit-3{animation-duration:30s}
.gexauz-planet-family.is-rotating .planet-ring{animation:planetRingRotate 12s linear infinite}
@keyframes planetFamilyRotate{to{transform:rotate(342deg)}}
@keyframes planetRingRotate{to{transform:rotate(338deg)}}

.gexauz-form-success{
  margin:18px 0 0;
  padding:14px 18px;
  border:1px solid rgba(106,45,232,.18);
  border-radius:14px;
  background:#f2edff;
  color:#241044;
  font-weight:600;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .35s ease,transform .35s ease;
}
.gexauz-form-success.is-visible{opacity:1;transform:translateY(0)}
.gexauz-form-error{
  margin:18px 0 0;
  padding:14px 18px;
  border-radius:14px;
  background:#fff0f0;
  color:#8c2020;
}
@media(max-width:980px){
  .gexauz-planet-family{width:520px;right:-110px;top:56%;opacity:.55}
}
@media(max-width:600px){
  .gexauz-planet-family{width:420px;right:-135px;top:57%;opacity:.42}
}
@media(prefers-reduced-motion:reduce){
  .gexauz-planet-family.is-rotating .planet-orbit,
  .gexauz-planet-family.is-rotating .planet-ring{animation:none}
}

/* =========================================================
   FINAL NAV DISPLAY FIX
   Prevent mobile menu from rendering as normal page content.
========================================================= */

/* Desktop: primary menu MUST be one horizontal row */
@media (min-width:981px){
  .gexauz-site-nav .desktop-nav{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:1 1 auto !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .gexauz-site-nav #gexauz-primary-menu{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  .gexauz-site-nav #gexauz-primary-menu > li{
    display:flex !important;
    flex:0 0 auto !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  .gexauz-site-nav #gexauz-primary-menu > li > a{
    display:flex !important;
    width:auto !important;
    min-height:42px !important;
    padding:8px 0 !important;
    white-space:nowrap !important;
  }

  /* CRITICAL: mobile panel is completely removed on desktop */
  .gexauz-site-nav #gexauz-mobile-menu{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
}

/* Mobile: only the mobile panel is available */
@media (max-width:980px){
  .gexauz-site-nav .desktop-nav{
    display:none !important;
  }

  .gexauz-site-nav #gexauz-primary-menu{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
  }

  .gexauz-site-nav #gexauz-mobile-menu{
    display:block !important;
  }

  .gexauz-site-nav #gexauz-mobile-menu[aria-hidden="true"]{
    pointer-events:none;
  }
}

/* Footer should only contain its footer columns, never the mobile menu. */
.site-wide-footer{
  clear:both;
  position:relative;
  z-index:2;
}
.site-wide-footer .footer-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:start;
}
.site-wide-footer .f-col ul{
  list-style:none;
  margin:0;
  padding:0;
}
.site-wide-footer .f-col li{
  list-style:none;
  margin:0;
  padding:0;
}
@media(max-width:1100px){
  .site-wide-footer .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .site-wide-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .site-wide-footer .footer-grid{grid-template-columns:1fr}
}

/* =========================================================
   GEXAUZ HERO SERVICE RING
   Services continuously travel around the hero ring and can
   be dragged around the orbit with mouse/touch.
========================================================= */
.gexauz-service-ring{
  position:absolute;
  width:min(620px,52vw);
  aspect-ratio:1;
  right:6%;
  top:50%;
  transform:translateY(-50%);
  z-index:6;
  pointer-events:none;
}
.gexauz-service-ring .service-ring-track{
  position:absolute;
  inset:2%;
  border:1.5px solid rgba(106,45,232,.20);
  border-radius:50%;
  box-shadow:0 0 80px rgba(106,45,232,.07);
}
.gexauz-service-ring .service-ring-track.track-2{
  inset:12%;
  border-style:dashed;
  border-color:rgba(106,45,232,.13);
  transform:rotate(35deg);
}
.gexauz-service-ring .service-ring-center{
  position:absolute;
  left:50%;
  top:50%;
  width:27%;
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle at 32% 27%,#fff 0 6%,#c9b8ff 23%,#7138e9 58%,#35137d 100%);
  box-shadow:0 22px 70px rgba(106,45,232,.30);
}
.gexauz-service-item{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:8;
  pointer-events:auto;
  touch-action:none;
  user-select:none;
  cursor:grab;
  will-change:transform;
}
.gexauz-service-item.is-dragging{cursor:grabbing;z-index:20}
.gexauz-service-item a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:145px;
  min-height:46px;
  padding:11px 20px;
  box-sizing:border-box;
  border-radius:999px;
  border:1px solid rgba(106,45,232,.20);
  background:rgba(255,255,255,.94);
  color:#111;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
  box-shadow:0 14px 34px rgba(35,20,60,.12);
  backdrop-filter:blur(14px);
  transition:box-shadow .2s ease,background .2s ease,color .2s ease,scale .2s ease;
}
.gexauz-service-item:hover a{
  background:#6a2de8;
  color:#fff;
  box-shadow:0 18px 42px rgba(106,45,232,.28);
  scale:1.04;
}
.gexauz-service-item.is-dragging a{
  background:#6a2de8;
  color:#fff;
  box-shadow:0 22px 50px rgba(106,45,232,.34);
}
.gexauz-service-ring-hint{
  position:absolute;
  right:2%;
  top:4%;
  display:flex;
  align-items:center;
  gap:8px;
  color:rgba(17,17,17,.58);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  pointer-events:none;
}
.gexauz-service-ring-hint i{
  display:block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#6a2de8;
  box-shadow:0 0 0 5px rgba(106,45,232,.10);
}
@media(max-width:980px){
  .gexauz-service-ring{
    width:520px;
    right:-110px;
    top:57%;
    opacity:.72;
  }
}
@media(max-width:600px){
  .gexauz-service-ring{
    width:430px;
    right:-125px;
    top:58%;
    opacity:.58;
  }
  .gexauz-service-item a{
    min-width:112px;
    min-height:38px;
    padding:9px 13px;
    font-size:11px;
  }
  .gexauz-service-ring-hint{display:none}
}
@media(prefers-reduced-motion:reduce){
  .gexauz-service-item{transition:none}
}

/* =========================================================
   FINAL FOOTER LAYOUT
   Row 1 = 4 columns
   Row 2 = GEXAUZ full width + social icons only
========================================================= */
.gexauz-footer{
  width:100%;
  background:#0b0b0f;
  color:#fff;
  overflow:hidden;
}
.gexauz-footer .footer-inner{
  width:min(1400px,calc(100% - 48px));
  margin:0 auto;
  padding:72px 0 28px;
}
.gexauz-footer-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:42px;
  padding-bottom:64px;
}
.gexauz-footer .footer-column h3{
  margin:0 0 18px;
  color:#fff;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.gexauz-footer .footer-menu,
.gexauz-footer .footer-menu ul{
  list-style:none;
  padding:0;
  margin:0;
}
.gexauz-footer .footer-menu li{
  margin:0 0 10px;
  padding:0;
}
.gexauz-footer .footer-menu a{
  color:rgba(255,255,255,.66);
  text-decoration:none;
  font-size:14px;
  line-height:1.45;
  transition:color .2s ease,transform .2s ease;
}
.gexauz-footer .footer-menu a:hover{
  color:#fff;
  transform:translateX(3px);
}
.gexauz-footer-brand-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid rgba(255,255,255,.12);
  padding-top:28px;
}
.gexauz-footer-brand{
  width:100%;
  font-size:clamp(72px,15vw,230px);
  line-height:.78;
  font-weight:800;
  letter-spacing:-.075em;
  color:#fff;
  white-space:nowrap;
  transform-origin:left bottom;
  animation:gexauzFooterBrandFloat 6s ease-in-out infinite;
}
@keyframes gexauzFooterBrandFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
.gexauz-footer-socials{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  padding-bottom:4px;
}
.gexauz-footer-socials .social-icon{
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.20);
  border-radius:50%;
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.gexauz-footer-socials .social-icon:hover{
  background:#6a2de8;
  border-color:#6a2de8;
  color:#fff;
  transform:translateY(-3px);
}
.gexauz-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:22px;
  margin-top:22px;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.42);
  font-size:11px;
}
@media(max-width:800px){
  .gexauz-footer .footer-inner{width:min(100% - 32px,680px);padding-top:52px}
  .gexauz-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;padding-bottom:48px}
  .gexauz-footer-brand-row{display:block}
  .gexauz-footer-brand{font-size:clamp(60px,19vw,150px)}
  .gexauz-footer-socials{margin-top:28px}
}
@media(max-width:480px){
  .gexauz-footer-grid{grid-template-columns:1fr}
  .gexauz-footer-brand{font-size:22vw}
  .gexauz-footer-bottom{display:block}
  .gexauz-footer-bottom span{display:block;margin-top:7px}
}
@media(prefers-reduced-motion:reduce){
  .gexauz-footer-brand{animation:none}
}

/* ===== HOME SERVICE CARD EXTERNAL LINK INDICATOR ===== */
.home-service-card,
.service-card,
.gexauz-service-card,
.services-card{
  position:relative;
}
.home-service-card .service-external-link,
.service-card .service-external-link,
.gexauz-service-card .service-external-link,
.services-card .service-external-link{
  position:absolute;
  top:16px;
  right:16px;
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(106,45,232,.16);
  border-radius:50%;
  background:rgba(255,255,255,.80);
  color:#6a2de8;
  text-decoration:none;
  font-size:17px;
  line-height:1;
  z-index:5;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.home-service-card .service-external-link:hover,
.service-card .service-external-link:hover,
.gexauz-service-card .service-external-link:hover,
.services-card .service-external-link:hover{
  background:#6a2de8;
  color:#fff;
  transform:translate(2px,-2px);
}

/* ===== CONTACT DELIVERY STATUS ===== */
.get-proposal .contact-status,.gexauz-contact-form .contact-status{display:none;width:100%;box-sizing:border-box;margin-top:16px;padding:14px 16px;border-radius:14px;font-size:14px;line-height:1.5;font-weight:600}.get-proposal .contact-status.is-visible{display:block}.get-proposal .contact-status.is-sending{background:#f3efff;color:#4f25a9;border:1px solid #dfd2ff}.get-proposal .contact-status.is-success{background:#efe8ff;color:#4b20a4;border:1px solid #d9c9ff}.get-proposal .contact-status.is-error{background:#fff0f0;color:#9a2424;border:1px solid #f2caca}

/* =========================================================
   GET IN TOUCH — FULL-WIDTH TWO-COLUMN FORM
   Services / Budget / Project Type / Priority are radio pills.
========================================================= */
.contact-grid-full{
  display:block !important;
}
.contact-grid-full .contact-copy{
  max-width:760px;
  margin-bottom:42px;
}
.contact-grid-full .get-proposal-shell{
  width:100% !important;
  max-width:none !important;
}
.gexauz-contact-form-wide{
  width:100%;
  box-sizing:border-box;
}
.gexauz-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px 28px;
}
.gexauz-contact-form-wide .field{
  min-width:0;
}
.gexauz-contact-form-wide fieldset{
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}
.gexauz-contact-form-wide legend,
.gexauz-contact-form-wide label{
  display:block;
}
.gexauz-contact-form-wide legend{
  margin:0 0 10px;
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:600;
}
.radio-pills{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.choice-pill{
  position:relative;
  display:inline-flex !important;
  align-items:center;
  cursor:pointer;
}
.choice-pill input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.choice-pill span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:9px 16px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  background:#111;
  color:rgba(255,255,255,.72);
  font-size:12px;
  transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.choice-pill:hover span{
  border-color:rgba(106,45,232,.65);
  color:#fff;
}
.choice-pill input:checked + span{
  background:#6a2de8;
  border-color:#6a2de8;
  color:#fff;
  box-shadow:0 8px 24px rgba(106,45,232,.22);
}
.service-field{
  grid-column:1 / -1;
}
.service-radio-pills .choice-pill span{
  min-width:120px;
}
.gexauz-message-field{
  grid-column:1 / -1;
}
.gexauz-submit-field{
  grid-column:1 / -1;
}
.gexauz-submit-field .btn{
  width:100%;
  min-height:52px;
}
.gexauz-contact-form-wide select,
.gexauz-contact-form-wide details.service-multi,
.gexauz-contact-form-wide .whatsapp-field{
  display:none !important;
}
.gexauz-contact-form-wide .contact-status{
  margin-top:14px;
}
@media(max-width:760px){
  .gexauz-form-grid{
    grid-template-columns:1fr;
    gap:20px;
  }
  .service-field,
  .gexauz-message-field,
  .gexauz-submit-field{
    grid-column:auto;
  }
  .choice-pill span{
    min-height:40px;
    padding:8px 13px;
  }
}

/* =========================================================
   GEXAUZ TECH STACK — FINAL PURPLE/WHITE THEME OVERRIDE
   Removes the previous green treatment completely.
========================================================= */
.integration-section,
section.integration-section#tech-stack{
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 78% 42%, rgba(106,45,232,.10), transparent 34%),
    radial-gradient(circle at 20% 70%, rgba(139,92,246,.06), transparent 28%),
    #f7f7f7 !important;
  color:#111 !important;
  min-height:680px !important;
}
.integration-section .integration-line{
  background:rgba(106,45,232,.13) !important;
  border-color:rgba(106,45,232,.13) !important;
}
.integration-section .integration-content{
  position:relative !important;
  z-index:3 !important;
}
.integration-section .integration-label{
  color:#6a2de8 !important;
  background:#efe6ff !important;
  border-color:rgba(106,45,232,.16) !important;
}
.integration-section h2{
  color:#111 !important;
}
.integration-section p{
  color:rgba(17,17,17,.55) !important;
}
.integration-section .tech-stack-field{
  position:relative !important;
  z-index:4 !important;
  background:transparent !important;
}
.integration-section .tech-row-wrap{
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
}
.integration-section .tech-row{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.integration-section .integration-logo{
  flex:0 0 auto !important;
  min-width:150px !important;
  height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 22px !important;
  box-sizing:border-box !important;
  border:1px solid rgba(106,45,232,.15) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.88) !important;
  color:#16121f !important;
  box-shadow:0 8px 25px rgba(35,20,60,.06) !important;
  backdrop-filter:blur(10px) !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.integration-section .integration-logo:hover{
  background:#6a2de8 !important;
  border-color:#6a2de8 !important;
  color:#fff !important;
}
.integration-section .tech-stack-hint{
  color:rgba(17,17,17,.45) !important;
}
.integration-section .integration-line,
.integration-section [class*="circle"],
.integration-section [class*="orbit"]{
  border-color:rgba(106,45,232,.16) !important;
}
.integration-section::before,
.integration-section::after{
  background:none !important;
}
@media(max-width:760px){
  .integration-section{
    min-height:560px !important;
  }
  .integration-section .integration-logo{
    min-width:125px !important;
    height:42px !important;
    padding:0 16px !important;
    font-size:12px !important;
  }
}


/* =========================================================
   FINAL ANIMATION SYSTEM — ANIME.JS + MOTION
========================================================= */
.gex-section-reveal{
  opacity:0;
  transform:translateY(42px);
  transition:opacity .1s linear;
}
.gex-section-reveal.gex-section-visible{opacity:1;transform:none}
.gex-section-reveal .eyebrow,
.gex-section-reveal .section-title,
.gex-section-reveal .stack-card,
.gex-section-reveal .proj-card,
.gex-section-reveal .flow-card,
.gex-section-reveal .test-card,
.gex-section-reveal .client-card,
.gex-section-reveal .about-grid > *,
.gex-section-reveal .contact-copy,
.gex-section-reveal .get-proposal-shell,
.gex-section-reveal .integration-content,
.gex-section-reveal .tech-row-wrap{
  opacity:0;
  transform:translateY(28px);
}
.gex-section-reveal.gex-section-visible .section-title{opacity:1}

/* Hero service pills travel on the existing ring. */
.hero-service{
  left:62% !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  pointer-events:auto !important;
  cursor:grab;
  touch-action:none;
  will-change:transform;
  transform-origin:center;
  transition:box-shadow .2s ease,background .2s ease,color .2s ease;
}
.hero-service a,.hero-service span{
  color:inherit;
  text-decoration:none;
  display:block;
}
.hero-service:hover{box-shadow:0 24px 60px rgba(57,32,120,.20);background:rgba(255,255,255,.96)}
.hero-service.is-dragging{cursor:grabbing;background:#6a2de8;color:#fff;box-shadow:0 28px 70px rgba(106,45,232,.28)}

/* Service card external/open icon. */
.stack-card{position:relative}
.service-external-link{
  position:absolute;
  top:18px;
  right:18px;
  z-index:8;
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(106,45,232,.18);
  border-radius:50%;
  background:rgba(255,255,255,.78);
  color:#6a2de8;
  text-decoration:none;
  font-size:17px;
  font-weight:700;
  backdrop-filter:blur(10px);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.service-external-link:hover{transform:translate(2px,-2px);background:#6a2de8;color:#fff}

/* Full-page transition curtain. */
.gexauz-page-curtain{
  position:fixed;
  inset:0;
  z-index:99999;
  background:linear-gradient(135deg,#111018 0%,#6a2de8 55%,#8b5cf6 100%);
  transform:scaleY(0);
  transform-origin:bottom;
  pointer-events:none;
}
::view-transition-old(root){animation:900ms ease both gexauz-old-page}
::view-transition-new(root){animation:900ms ease both gexauz-new-page}
@keyframes gexauz-old-page{to{opacity:0;transform:scale(.985)}}
@keyframes gexauz-new-page{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:none}}

/* Tech stack keeps the purple theme; no green backgrounds. */
.integration-section,#tech-stack{background:#f7f7f7 !important;color:#111 !important}
.integration-section .integration-line{border-color:rgba(106,45,232,.16)!important;background:rgba(106,45,232,.10)!important}
.integration-section .integration-label{color:#6a2de8!important;background:#efe6ff!important}
.integration-section .integration-logo{background:#fff!important;border-color:rgba(106,45,232,.15)!important;color:#16121f!important}
.integration-section .integration-logo:hover{background:#6a2de8!important;border-color:#6a2de8!important;color:#fff!important}

/* No animation engine should override reduced-motion preference. */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important}
  .gex-section-reveal,.gex-section-reveal .eyebrow,.gex-section-reveal .section-title,.gex-section-reveal .stack-card,.gex-section-reveal .proj-card,.gex-section-reveal .flow-card,.gex-section-reveal .test-card,.gex-section-reveal .client-card,.gex-section-reveal .about-grid > *, .gex-section-reveal .contact-copy,.gex-section-reveal .get-proposal-shell,.gex-section-reveal .integration-content,.gex-section-reveal .tech-row-wrap{opacity:1!important;transform:none!important}
  .gexauz-page-curtain{display:none}
}

@view-transition { navigation: auto; }


/* =========================================================
   GEXAUZ FINAL VISUAL SAFEGUARDS — v1.2.0
   This block intentionally comes last so cached/legacy theme
   rules cannot reintroduce the old green integration layout.
========================================================= */
html,body{width:100%;max-width:none;overflow-x:hidden}
body{zoom:1 !important;transform:none !important}
.wrap{width:min(var(--maxw),100%);max-width:var(--maxw);margin-left:auto;margin-right:auto}

.integration-section#tech-stack{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-height:560px !important;
  background:#f7f7f8 !important;
  background-image:
    radial-gradient(circle at 78% 35%,rgba(106,45,232,.12),transparent 32%),
    radial-gradient(circle at 18% 78%,rgba(139,92,246,.07),transparent 28%) !important;
  color:#111 !important;
  border:1px solid rgba(106,45,232,.10) !important;
}
.integration-section#tech-stack .integration-content h2{color:#111 !important}
.integration-section#tech-stack .integration-content p{color:#666 !important}
.integration-section#tech-stack .integration-label{color:#6a2de8 !important;background:#efe8ff !important}
.integration-section#tech-stack .tech-stack-field{display:block !important;width:100% !important;overflow:hidden !important}
.integration-section#tech-stack .tech-row-wrap{display:block !important;width:100% !important;overflow:hidden !important;height:64px !important}
.integration-section#tech-stack .tech-row{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  width:max-content !important;
  max-width:none !important;
  height:48px !important;
}
.integration-section#tech-stack .integration-logo{
  display:inline-flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:120px !important;
  height:44px !important;
  background:#fff !important;
  color:#17151c !important;
  border:1px solid rgba(106,45,232,.14) !important;
  border-radius:999px !important;
  padding:0 18px !important;
}
.integration-section#tech-stack .integration-logo:hover{background:#6a2de8 !important;color:#fff !important;border-color:#6a2de8 !important}

/* Keep the contact form genuinely two-column on desktop. */
.gexauz-contact-form-wide .gexauz-form-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.gexauz-contact-form-wide .service-field,
.gexauz-contact-form-wide .gexauz-message-field,
.gexauz-contact-form-wide .gexauz-submit-field{grid-column:1 / -1 !important}
.gexauz-contact-form-wide .radio-pills{display:flex !important;flex-wrap:wrap !important;gap:9px !important}
.gexauz-contact-form-wide .choice-pill span{display:inline-flex !important;align-items:center !important;justify-content:center !important}
@media(max-width:760px){
  .gexauz-contact-form-wide .gexauz-form-grid{grid-template-columns:1fr !important}
  .gexauz-contact-form-wide .service-field,
  .gexauz-contact-form-wide .gexauz-message-field,
  .gexauz-contact-form-wide .gexauz-submit-field{grid-column:auto !important}
}

/* Service cards always expose the requested open-page control. */
.stack-card .service-external-link{display:flex !important;visibility:visible !important;opacity:1 !important}

/* Purple page transition is available before Motion initializes. */
.gexauz-page-curtain{background:linear-gradient(135deg,#111018,#6a2de8 55%,#8b5cf6) !important}

/* =========================================================
   GEXAUZ PREMIUM MOTION SYSTEM
   Lenis + Motion + Anime.js + Barba-style transitions
========================================================= */
html{scroll-behavior:auto!important}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.gexauz-scroll-progress{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:2px;
  z-index:10000;
  transform-origin:0 50%;
  transform:scaleX(0);
  background:#6a2de8;
  pointer-events:none;
}
.gexauz-page-transition{
  position:fixed;
  inset:0;
  z-index:99999;
  pointer-events:none;
  background:#6a2de8;
  transform:scaleY(0);
  transform-origin:bottom;
}
.gexauz-page-transition.is-enter{
  animation:gexauzCurtainIn .75s cubic-bezier(.77,0,.175,1) forwards;
}
.gexauz-page-transition.is-leave{
  animation:gexauzCurtainOut .7s cubic-bezier(.77,0,.175,1) forwards;
}
@keyframes gexauzCurtainIn{
  from{transform:scaleY(0)}
  to{transform:scaleY(1)}
}
@keyframes gexauzCurtainOut{
  from{transform:scaleY(1)}
  to{transform:scaleY(0)}
}
.gexauz-reveal{
  opacity:0;
  transform:translateY(38px);
}
.gexauz-reveal.is-visible{
  opacity:1;
  transform:none;
}
.gexauz-section-active .integration-content,
.gexauz-section-active .section-title,
.gexauz-section-active .section-heading{
  will-change:transform,opacity;
}
.gexauz-mockup-screen{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:#111;
  box-shadow:0 35px 90px rgba(25,12,45,.18);
}
.gexauz-mockup-screen::before{
  content:"";
  display:block;
  height:32px;
  background:linear-gradient(to right,#17131f,#27202f);
}
.gexauz-mockup-screen::after{
  content:"";
  position:absolute;
  inset:32px 0 0;
  background:linear-gradient(135deg,#f7f7f7,#efe6ff);
  pointer-events:none;
}
@media(prefers-reduced-motion:reduce){
  .gexauz-page-transition{display:none}
  .gexauz-reveal{opacity:1;transform:none}
}

/* =========================================================
   GEXAUZ HOMEPAGE FINAL VISUAL PASS — PRODUCTS / SERVICES /
   PROJECTS / TESTIMONIALS / HOW WE WORK
========================================================= */
.products-home{background:var(--gray-bg-2);padding:110px 0;overflow:hidden}
.products-home-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.5fr);gap:72px;align-items:start}
.products-home-intro{position:sticky;top:120px;max-width:440px}
.products-home-intro p{color:var(--muted);font-size:16px;line-height:1.7;margin:24px 0 30px}
.text-cta{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none;border-bottom:1px solid rgba(17,17,17,.25);padding-bottom:7px}
.text-cta span{color:var(--purple,#6a2de8);font-size:20px}
.products-home-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.product-home-card{background:#fff;border:1px solid rgba(106,45,232,.10);border-radius:24px;overflow:hidden;box-shadow:0 20px 55px rgba(35,20,60,.07);transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}
.product-home-card:nth-child(2){transform:translateY(34px)}
.product-home-card:nth-child(3){transform:translateY(72px)}
.product-home-card:hover{transform:translateY(-8px);box-shadow:0 30px 70px rgba(35,20,60,.12)}
.product-home-card:nth-child(2):hover{transform:translateY(26px)}
.product-home-card:nth-child(3):hover{transform:translateY(64px)}
.product-home-link{display:block;color:inherit;text-decoration:none}
.product-home-media{height:300px;position:relative;background:#eee;overflow:hidden}
.product-home-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.product-home-card:hover .product-home-media img{transform:scale(1.045)}
.product-home-arrow{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#6a2de8;font-size:19px;font-weight:800;box-shadow:0 8px 25px rgba(0,0,0,.12)}
.product-home-meta{padding:22px 22px 26px}
.product-home-cat{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f1eaff;color:#6a2de8;font-size:11px;font-weight:800}
.product-home-meta h3{font-size:25px;line-height:1.05;margin:16px 0 9px;letter-spacing:-.6px}
.product-home-meta p{color:var(--muted);font-size:13px;line-height:1.6;margin:0}

.services{background:var(--gray-bg);padding-bottom:80px}
.stack-list{max-width:var(--maxw);margin:0 auto;padding:0 32px;display:flex;flex-direction:column}
.stack-card{position:sticky;top:calc(100px + var(--i) * 26px);z-index:calc(var(--i) + 1);border-radius:26px;min-height:430px;margin-bottom:28px;padding:42px 44px 40px;display:flex;flex-direction:column;justify-content:flex-start;background:#fff!important;color:#111!important;box-shadow:0 22px 60px rgba(25,18,40,.09);border:1px solid rgba(106,45,232,.10);overflow:hidden}
.stack-card.dark{background:#fff!important;color:#111!important;border:1px solid rgba(106,45,232,.10)!important}
.stack-head{display:flex;align-items:center;gap:16px}
.stack-icon{width:46px;height:46px;border-radius:14px;background:#fff!important;border:1px solid rgba(106,45,232,.14);box-shadow:0 8px 24px rgba(106,45,232,.10);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.stack-icon:after{content:'✦';color:#6a2de8;font-size:17px}
.stack-title{font-size:clamp(25px,3.1vw,38px);font-weight:800;letter-spacing:-.7px}
.stack-body{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.stack-tags{display:flex;flex-wrap:wrap;gap:9px;align-items:center;order:1}
.stack-tag,.stack-tags span{display:inline-flex;align-items:center;padding:8px 13px;border-radius:999px;border:1px solid rgba(106,45,232,.16);background:#f5f0ff;color:#5b20d2;font-size:11.5px;font-weight:800;white-space:nowrap}
.stack-desc{max-width:690px;margin:0!important;order:2;color:#62606a!important;font-size:14.5px;line-height:1.7}
.stack-card.dark .stack-desc{color:#62606a!important}
.stack-card.dark .stack-tag{border-color:rgba(106,45,232,.16);background:#f5f0ff;color:#5b20d2}
.service-external-link{position:absolute;top:22px;right:22px;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#6a2de8;text-decoration:none;font-size:20px;font-weight:800;border:1px solid rgba(106,45,232,.12);box-shadow:0 8px 24px rgba(106,45,232,.10);z-index:3}
.service-external-link:hover{background:#6a2de8;color:#fff}

.projects-strip{overflow-x:auto;overflow-y:visible;scrollbar-width:none;cursor:grab;padding:10px 0 24px}
.projects-strip::-webkit-scrollbar{display:none}
.projects-strip.is-dragging{cursor:grabbing}
.proj-grid.horizontal{display:grid}
.dynamic-projects{display:grid!important;grid-template-columns:repeat(10,minmax(270px,1fr));gap:18px;width:max-content!important}
.dynamic-projects .proj-card{width:300px;min-width:300px}
.projects .load-more{margin-top:28px}

.single-testimonial-row{overflow:hidden}
.test-track-single{display:flex!important;flex-wrap:nowrap!important;gap:18px;width:max-content;animation:testimonials-single 38s linear infinite!important}
.test-track-single:hover{animation-play-state:paused!important}
.test-track-single .test-card{width:330px;min-width:330px;flex:0 0 330px}
@keyframes testimonials-single{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.flow-grid .flow-card{opacity:.4;transform:translateY(22px);transition:opacity .55s ease,transform .75s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
.flow-grid .flow-card.is-flow-active{opacity:1;transform:translateY(0);box-shadow:0 22px 55px rgba(106,45,232,.10)}
.flow-card.is-flow-active .flow-tag{background:#6a2de8}
.flow-line{background:linear-gradient(90deg,#6a2de8,#ddd)}

@media(max-width:980px){
 .products-home-grid{grid-template-columns:1fr;gap:34px}
 .products-home-intro{position:relative;top:auto;max-width:700px}
 .products-home-list{grid-template-columns:repeat(3,260px);overflow-x:auto;padding-bottom:24px;scrollbar-width:none}
 .products-home-list::-webkit-scrollbar{display:none}
 .product-home-card:nth-child(2),.product-home-card:nth-child(3),.product-home-card:nth-child(2):hover,.product-home-card:nth-child(3):hover{transform:none}
}
@media(max-width:700px){
 .products-home{padding:80px 0}
 .products-home-list{grid-template-columns:repeat(3,78vw)}
 .product-home-media{height:270px}
 .stack-list{padding:0 18px}
 .stack-card{top:78px;min-height:380px;padding:32px 24px 30px}
 .dynamic-projects{grid-template-columns:repeat(10,82vw)}
 .dynamic-projects .proj-card{width:82vw;min-width:82vw}
 .test-track-single .test-card{width:78vw;min-width:78vw;flex-basis:78vw}
}

.products-home-grid,.projects-strip,.single-testimonial-row{position:relative}
.products-home-grid:before{content:"";position:absolute;left:-14%;top:6%;width:70%;height:90%;background:radial-gradient(circle,rgba(106,45,232,.07),transparent 68%);pointer-events:none}
.products-home-intro,.products-home-list{position:relative;z-index:1}
.products-home-list{will-change:transform}
.projects-strip{scroll-behavior:smooth}
.single-testimonial-row{scroll-behavior:smooth}

/* =========================================================
   FINAL GEXAUZ SCROLL STORY OVERRIDES
========================================================= */
:root{--gex-purple:#6a2de8;--gex-purple-soft:#eee7ff;--gex-ink:#111;--gex-gray:#f5f5f6}
.gex-section-reveal{opacity:1;transform:none}
.gex-section-reveal:not(.gex-section-visible){opacity:0;transform:translateY(32px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1)}
.gex-section-visible{opacity:1;transform:none}
.hero3d{--hero-progress:0;overflow:hidden}
.hero3d-inner{transform:translate3d(0,calc(var(--hero-progress) * -28px),0) scale(calc(1 - var(--hero-progress) * .035));transform-origin:center top}
.clients{overflow:hidden}
.client-row{will-change:transform}
.products-home-list{display:flex!important;gap:22px;overflow-x:auto;overflow-y:visible;scrollbar-width:none;cursor:grab;padding:16px 0 60px;scroll-snap-type:x proximity}
.products-home-list::-webkit-scrollbar{display:none}
.products-home-list.is-dragging{cursor:grabbing}
.product-home-card{flex:0 0 min(360px,31vw);scroll-snap-align:center;will-change:transform,opacity}
@media(max-width:980px){.product-home-card{flex-basis:300px}}
@media(max-width:700px){.product-home-card{flex-basis:82vw}}

/* Services: each card physically stacks over the previous one. */
.services{position:relative;overflow:clip}
.stack-list{padding-bottom:14vh}
.stack-card{transform:translate3d(0,var(--service-y,0),0) scale(var(--service-scale,1));transform-origin:center top;will-change:transform}
.stack-card.service-in .stack-title{color:#111}
.stack-card.service-in .stack-icon{animation:gexServicePulse .7s cubic-bezier(.22,1,.36,1)}
@keyframes gexServicePulse{0%{transform:scale(.72) rotate(-12deg);opacity:.3}65%{transform:scale(1.08) rotate(3deg);opacity:1}100%{transform:scale(1) rotate(0)}}
.service-external-link{transition:background .25s ease,color .25s ease,transform .25s ease}
.service-external-link:hover{transform:rotate(8deg) scale(1.06)}

/* Projects: horizontal film strip */
.projects-strip{scroll-snap-type:x proximity}
.dynamic-projects .proj-card{scroll-snap-align:center;will-change:transform,opacity}
.proj-thumb img{transition:transform .8s cubic-bezier(.22,1,.36,1)}
.proj-card:hover .proj-thumb img{transform:scale(1.045)}

/* How we work: active step is visually carried by the line. */
.flow{--flow-progress:0;position:relative}
.flow:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;transform-origin:left;transform:scaleX(var(--flow-progress));background:linear-gradient(90deg,var(--gex-purple),#bba5ff);pointer-events:none}
.flow-card{transition:opacity .55s ease,transform .7s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
.flow-card.is-flow-active{box-shadow:0 28px 70px rgba(106,45,232,.13);transform:translateY(-8px)}
.flow-card.is-flow-active .flow-tag{transform:translateY(-2px);box-shadow:0 8px 22px rgba(106,45,232,.2)}
.flow-tag{transition:background .35s ease,transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}

/* Testimonials: one calm continuous row. */
.single-testimonial-row{overflow:hidden;cursor:grab}
.single-testimonial-row.is-dragging{cursor:grabbing}
.test-track-single{animation:none!important;will-change:transform}

/* Tech stack: two independent moving rows. */
.integration-section .tech-row-wrap{overflow:hidden}
.integration-section .tech-row{width:max-content;will-change:transform}
.integration-section .integration-logo{transition:transform .2s ease,box-shadow .25s ease}

/* Page transition */
.gexauz-page-curtain{position:fixed;inset:0;background:var(--gex-purple);z-index:99999;pointer-events:none;transform:scaleY(1);transform-origin:top}
.gexauz-page-curtain.is-ready{animation:gexCurtainReveal .72s cubic-bezier(.77,0,.175,1) forwards}
.gexauz-page-curtain.is-leaving{transform-origin:bottom;animation:gexCurtainCover .5s cubic-bezier(.77,0,.175,1) forwards}
@keyframes gexCurtainReveal{from{transform:scaleY(1)}to{transform:scaleY(0)}}
@keyframes gexCurtainCover{from{transform:scaleY(0)}to{transform:scaleY(1)}}

@media(prefers-reduced-motion:reduce){
 .gex-section-reveal:not(.gex-section-visible){opacity:1;transform:none}
 .hero3d-inner{transform:none}
 .gexauz-page-curtain{display:none}
 .stack-card{transform:none!important}
}

/* =========================================================
   GEXAUZ HERO DEMO — replacement hero
   ========================================================= */
.hero-demo{
  --hero-purple:#6a2de8;
  --hero-purple2:#9b6cff;
  --hero-ink:#111016;
  --hero-muted:#6d6875;
  --hero-line:#e8e3ef;
  min-height:calc(100svh - 84px);
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 70% 43%,rgba(106,45,232,.13),transparent 27%),
    radial-gradient(circle at 88% 20%,rgba(172,146,255,.12),transparent 24%),
    linear-gradient(135deg,#fff 0%,#f8f8fa 55%,#f4f0fb 100%);
  color:var(--hero-ink);
  isolation:isolate;
}
.hero-demo-grid{
  position:absolute;inset:0;opacity:.35;
  background-image:linear-gradient(rgba(50,40,70,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(50,40,70,.045) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,#000,transparent 90%);
}
.hero-demo-inner{
  width:min(1420px,100%);min-height:calc(100svh - 84px);margin:auto;
  display:grid;grid-template-columns:46% 54%;align-items:center;
  padding:3vh 4vw 8vh;position:relative;z-index:3;
}
.hero-demo-copy{position:relative;z-index:8}
.hero-demo-kicker{font-size:11px;letter-spacing:.25em;color:var(--hero-purple);font-weight:800;text-transform:uppercase;display:flex;gap:9px;align-items:center}
.hero-demo-kdot{width:8px;height:8px;background:var(--hero-purple);border-radius:50%;box-shadow:0 0 0 7px rgba(106,45,232,.1)}
.hero-demo-title{font-size:clamp(55px,6.4vw,100px);line-height:.9;letter-spacing:-.065em;max-width:720px;margin:25px 0;color:#101014}
.hero-demo-title .accent{color:var(--hero-purple)}
.hero-demo-word{display:inline-block;margin-right:.19em;opacity:0;transform:translateY(60px) rotate(2deg)}
.hero-demo-lead{max-width:560px;color:var(--hero-muted);font-size:17px;line-height:1.65}
.hero-demo-actions{display:flex;gap:24px;align-items:center;margin-top:32px}
.hero-demo-watch{display:flex;align-items:center;gap:12px;color:#27232d}
.hero-demo-watch small{font-size:10px;color:#777}
.hero-demo-play{width:46px;height:46px;border-radius:50%;border:1px solid var(--hero-line);background:#fff;display:grid;place-items:center;color:var(--hero-purple);font-size:18px;cursor:pointer}
.hero-demo-stats{display:flex;gap:32px;margin-top:50px}
.hero-demo-stat{display:flex;flex-direction:column;gap:4px}
.hero-demo-stat b{font-size:24px}.hero-demo-stat span{font-size:11px;color:#77727f}
.hero-demo-stage{height:690px;position:relative;perspective:1400px;cursor:grab;touch-action:none}
.hero-demo-stage:active{cursor:grabbing}
#hero-demo-global3d{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.hero-demo-stage>*{z-index:3}.hero-demo-stage .hero-demo-orbit{z-index:2}
.hero-demo-orbit{position:absolute;left:52%;top:48%;border:1px solid rgba(106,45,232,.18);border-radius:50%;transform:translate(-50%,-50%) rotate(20deg);pointer-events:none}
.hero-demo-orbit.o1{width:610px;height:610px}
.hero-demo-orbit.o2{width:470px;height:700px;transform:translate(-50%,-50%) rotate(65deg)}
.hero-demo-orbit.o3{width:760px;height:390px;transform:translate(-50%,-50%) rotate(-25deg);border-style:dashed}
.hero-demo-core{position:absolute;left:52%;top:48%;width:360px;height:360px;transform:translate(-50%,-50%);transform-style:preserve-3d}
.hero-demo-ring{position:absolute;inset:18px;border:18px solid rgba(255,255,255,.88);border-radius:50%;box-shadow:0 25px 70px rgba(46,26,75,.14);transform-style:preserve-3d}
.hero-demo-ring.r1{transform:rotateX(67deg) rotateZ(20deg)}
.hero-demo-ring.r2{transform:rotateX(67deg) rotateZ(-24deg)}
.hero-demo-ring.r3{transform:rotateX(67deg) rotateZ(48deg) translateZ(25px);opacity:.55}
.hero-demo-sphere{position:absolute;width:145px;height:145px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 32% 25%,#bda7ff,#6a2de8 55%,#3d159e);box-shadow:0 30px 70px rgba(91,43,220,.38)}
.hero-demo-platform{position:absolute;left:50%;bottom:-55px;width:350px;height:62px;transform:translateX(-50%);border-radius:50%;background:linear-gradient(#fff,#e4e1ea);box-shadow:0 24px 35px rgba(30,20,45,.13)}
.hero-demo-card{position:absolute;width:250px;border-radius:18px;background:rgba(255,255,255,.91);border:1px solid rgba(255,255,255,.9);box-shadow:0 25px 60px rgba(40,24,65,.16);backdrop-filter:blur(15px);overflow:hidden;transform-style:preserve-3d}
.hero-demo-card.c1{left:2%;top:16%;transform:rotate(-8deg)}
.hero-demo-card.c2{right:-1%;top:19%;transform:rotate(8deg)}
.hero-demo-card.c3{left:20%;bottom:4%;width:315px;transform:rotate(-2deg)}
.hero-demo-cardbody{padding:22px;background:#fff;min-height:165px}
.hero-demo-card.c2 .hero-demo-cardbody{background:#17131e;color:#fff}
.hero-demo-cardbody small{font-size:8px;letter-spacing:.15em;color:#777}
.hero-demo-cardbody b{display:block;font-size:25px;line-height:1;margin-top:13px;letter-spacing:-.04em}
.hero-demo-card.c2 .hero-demo-cardbody small{color:#c9b8ff}
.hero-demo-browser{height:29px;background:#15121a;color:#aaa;font-size:8px;display:flex;align-items:center;gap:5px;padding:0 10px}
.hero-demo-browser i{width:6px;height:6px;background:#6a2de8;border-radius:50%}
.hero-demo-browser em{margin-left:auto;font-style:normal}
.hero-demo-service{position:absolute;z-index:10;display:flex;align-items:center;gap:13px;padding:13px 15px 13px 19px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 18px 45px rgba(50,27,84,.15);font-size:12px;font-weight:750;white-space:nowrap}
.hero-demo-service b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--hero-purple);color:#fff}
.hero-demo-service.s1{left:17%;top:8%}.hero-demo-service.s2{left:1%;top:47%}.hero-demo-service.s3{right:7%;top:49%}.hero-demo-service.s4{left:16%;bottom:20%}.hero-demo-service.s5{right:15%;bottom:11%}
.hero-demo-drag{position:absolute;right:1%;top:5%;font-size:10px;letter-spacing:.15em;color:#77727f;text-transform:uppercase}
.hero-demo-drag span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--hero-purple);margin-right:7px}
.hero-demo-bottom{position:absolute;left:4%;right:4%;bottom:20px;display:flex;justify-content:space-between;color:#77727f;font-size:10px;text-transform:uppercase;letter-spacing:.14em;z-index:5}
.hero-demo-wow{position:absolute;inset:0;z-index:15;pointer-events:none;opacity:0}
.hero-demo-wow .wow-ring{position:absolute;left:52%;top:48%;width:100px;height:100px;border:2px solid rgba(106,45,232,.75);border-radius:50%;transform:translate(-50%,-50%) scale(.2);box-shadow:0 0 0 0 rgba(106,45,232,.2)}
.hero-demo-wow .wow-flash{position:absolute;inset:0;background:radial-gradient(circle at 52% 48%,rgba(139,93,255,.25),transparent 22%);opacity:0}
.hero-demo-wow.is-active{opacity:1}.hero-demo-wow.is-active .wow-ring{animation:heroDemoRing 900ms cubic-bezier(.2,.8,.2,1) forwards}.hero-demo-wow.is-active .wow-flash{animation:heroDemoFlash 700ms ease-out forwards}
@keyframes heroDemoRing{0%{transform:translate(-50%,-50%) scale(.2);opacity:1}100%{transform:translate(-50%,-50%) scale(6);opacity:0}}
@keyframes heroDemoFlash{0%{opacity:0}25%{opacity:1}100%{opacity:0}}
.hero-demo-clickable{cursor:pointer}.hero-demo-clickable.wow-pulse{animation:heroDemoPulse 650ms cubic-bezier(.2,.8,.2,1)}
@keyframes heroDemoPulse{0%{transform:scale(1)}40%{transform:scale(1.08) rotate(-1deg)}100%{transform:scale(1)}}
@media(max-width:900px){
 .hero-demo-inner{grid-template-columns:1fr;padding-top:50px}
 .hero-demo-stage{height:570px;margin-top:20px;transform:scale(.88);transform-origin:top center;margin-bottom:-65px}
 .hero-demo-title{font-size:clamp(52px,13vw,78px)}
}
@media(max-width:560px){
 .hero-demo-inner{padding:35px 20px 60px}.hero-demo-stage{height:470px;transform:scale(.68);width:147%;margin-left:-23%}
 .hero-demo-stats{gap:20px}.hero-demo-lead{font-size:15px}.hero-demo-bottom{left:20px;right:20px}
}


/* =========================================================
   GEXAUZ FINAL CLEAN PASS
========================================================= */

/* Remove the old global hero curve / blue-purple blur line. */
.page-curve-wrap,
.page-curve,
.curve-base,
.curve-glow,
.curve-light{
  display:none !important;
}

/* Full-width footer: background and content use the viewport. */
.gexauz-footer .footer-inner{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding-left:clamp(20px,5vw,80px) !important;
  padding-right:clamp(20px,5vw,80px) !important;
}

/* Blog — 4 columns PC, responsive. */
.gexauz-blog-page{
  background:#f4f3f6 !important;
  padding:clamp(90px,10vw,150px) 0 110px !important;
}
.gexauz-blog-wrap{
  width:min(1320px,calc(100% - 40px)) !important;
  margin:auto !important;
}
.gexauz-blog-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
}
.gexauz-blog-card{
  background:#fff !important;
  border:0 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  box-shadow:0 10px 35px rgba(20,15,30,.06) !important;
}
.gexauz-blog-card:hover{
  transform:translateY(-5px);
}
.gexauz-blog-image{
  background:#eee !important;
}
.gexauz-blog-card-body{
  background:#fff !important;
}
.gexauz-blog-card-title{
  line-height:1.2 !important;
}
.gexauz-blog-excerpt{
  line-height:1.65 !important;
}
.gexauz-single-post{
  background:#f3f2f5 !important;
  padding:clamp(90px,10vw,140px) 20px !important;
}
.gexauz-single-card{
  width:min(1120px,100%) !important;
  margin:0 auto !important;
  background:#fff !important;
  border-radius:24px !important;
  padding:clamp(28px,5vw,70px) !important;
  box-shadow:0 15px 60px rgba(20,15,30,.07) !important;
}
.gexauz-single-header{
  max-width:850px !important;
}
.gexauz-entry-content{
  line-height:1.75 !important;
}
.gexauz-single-featured{
  border-radius:18px !important;
}
.gexauz-single-share a{
  background:#fff !important;
}

@media(max-width:1100px){
  .gexauz-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:800px){
  .gexauz-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .gexauz-single-layout{grid-template-columns:1fr !important;}
}
@media(max-width:520px){
  .gexauz-blog-wrap{width:calc(100% - 28px) !important;}
  .gexauz-blog-grid{grid-template-columns:1fr !important;}
  .gexauz-single-card{border-radius:18px !important;padding:24px !important;}
}

/* =========================================================
   ABOUT PAGE — 2-column content
========================================================= */
.gexauz-page-hero{
  padding:clamp(100px,13vw,180px) 0 100px;
  background:#f5f4f7;
}
.gexauz-page-inner,
.gexauz-about-inner{
  width:min(1200px,calc(100% - 40px));
  margin:auto;
}
.gexauz-page-inner h1{
  max-width:900px;
  margin:18px 0 25px;
  font-size:clamp(48px,7vw,92px);
  line-height:.98;
  letter-spacing:-.055em;
}
.gexauz-page-inner h1 span{
  display:block;
  color:#9a969f;
}
.gexauz-page-inner>p{
  max-width:650px;
  font-size:18px;
  line-height:1.65;
  color:#65616a;
}
.gexauz-about-content{
  padding:110px 0;
  background:#fff;
}
.gexauz-about-inner{
  display:grid;
  grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);
  gap:clamp(45px,8vw,120px);
}
.gexauz-about-intro h2{
  margin:16px 0 0;
  font-size:clamp(34px,4vw,56px);
  line-height:1.05;
  letter-spacing:-.04em;
}
.gexauz-about-copy{
  max-width:680px;
}
.gexauz-about-copy>p{
  margin:0 0 28px;
  font-size:clamp(17px,1.45vw,21px);
  line-height:1.7;
  color:#37343b;
}
.gexauz-values-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  margin-top:50px;
}
.gexauz-value-card{
  padding:28px;
  border:1px solid #eee;
  background:#fafafa;
}
.gexauz-value-card span{
  color:#6a2de8;
  font-size:11px;
}
.gexauz-value-card h3{
  margin:12px 0 8px;
  font-size:18px;
}
.gexauz-value-card p{
  margin:0;
  color:#777;
  line-height:1.6;
  font-size:13px;
}
@media(max-width:760px){
  .gexauz-about-inner{grid-template-columns:1fr;gap:40px;}
  .gexauz-values-grid{grid-template-columns:1fr;}
}

/* =========================================================
   CONTACT PAGE
========================================================= */
.gexauz-contact-page{
  background:#0b0b0f;
  color:#fff;
  padding:clamp(90px,10vw,150px) 0;
}
.gexauz-contact-page-inner{
  width:min(1240px,calc(100% - 40px));
  margin:auto;
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(40px,8vw,110px);
  align-items:start;
}
.gexauz-contact-info h1{
  margin:18px 0 20px;
  font-size:clamp(44px,6vw,78px);
  line-height:1;
  letter-spacing:-.055em;
}
.gexauz-contact-info h1 span{
  display:block;
  color:#9d8fba;
}
.gexauz-contact-description{
  max-width:520px;
  color:#aaa5b0;
  font-size:16px;
  line-height:1.7;
}
.gexauz-contact-details{
  margin-top:55px;
  display:grid;
  gap:22px;
}
.gexauz-contact-details a,
.gexauz-contact-details div{
  display:flex;
  flex-direction:column;
  gap:5px;
  color:#fff;
}
.gexauz-contact-details small{
  color:#8d8893;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:9px;
}
.gexauz-contact-details strong{
  font-size:14px;
  line-height:1.5;
  font-weight:600;
}
.gexauz-contact-form-panel{
  padding:clamp(22px,3vw,40px);
  background:#141417;
  border:1px solid #29292e;
  border-radius:24px;
}
.gexauz-contact-form-panel .get-proposal{
  margin:0 !important;
}
.gexauz-contact-form-panel .contact-status.is-visible{
  display:block !important;
}
@media(max-width:850px){
  .gexauz-contact-page-inner{grid-template-columns:1fr;}
}

/* Success message must remain visible after reset. */
.gexauz-contact-form .contact-status{
  min-height:0;
  transition:opacity .25s ease,transform .25s ease;
}
.gexauz-contact-form .contact-status.is-visible{
  display:block !important;
  opacity:1 !important;
}

/* =========================================================
   PRIMARY DROPDOWN — CLICK ARROW ONLY, NEVER HOVER
========================================================= */
.desktop-nav .menu-item-has-children{
  position:relative;
}
.desktop-nav .menu-item-has-children > .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.desktop-nav .menu-item-has-children.is-submenu-open > .sub-menu{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.gexauz-menu-arrow{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  margin-left:2px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  cursor:pointer;
  vertical-align:middle;
}
.gexauz-menu-arrow::before{
  content:"";
  width:6px;
  height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);
  transition:transform .2s ease;
}
.menu-item-has-children.is-submenu-open > .gexauz-menu-arrow::before{
  transform:rotate(225deg) translate(-1px,-1px);
}
.gexauz-mobile-nav .menu-item-has-children{position:relative;}
.gexauz-mobile-nav .menu-item-has-children > .sub-menu{display:none !important;}
.gexauz-mobile-nav .menu-item-has-children.is-submenu-open > .sub-menu{display:block !important;}
.gexauz-mobile-nav .gexauz-menu-arrow{
  position:absolute;
  top:12px;
  right:4px;
}
.gexauz-mobile-nav .menu-item-has-children > a{padding-right:42px;}


/* =========================================================
   GEXAUZ v1.8.0 — SERVICES / PRODUCT / NAV FIXES
========================================================= */

/* Service CTA / feature section */
.service-feature-list{
  width:100%;
  max-width:1200px;
  margin:70px auto 0;
  display:flex;
  flex-direction:column;
  gap:28px;
}
.service-feature-row{
  width:100%;
  min-height:390px;
  display:grid;
  grid-template-columns:3fr 2fr;
  gap:0;
  background:#fff;
  border:1px solid rgba(17,16,22,.07);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 15px 50px rgba(25,15,40,.06);
}
.service-feature-row.feature-image-right{
  grid-template-columns:2fr 3fr;
}
.service-feature-row.feature-image-right .service-feature-media{
  order:2;
}
.service-feature-row.feature-image-right .service-feature-content{
  order:1;
}
.service-feature-media{
  min-height:390px;
  overflow:hidden;
  background:#ece9f0;
}
.service-feature-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .8s cubic-bezier(.2,.7,.2,1);
}
.service-feature-row:hover .service-feature-media img{
  transform:scale(1.045);
}
.service-feature-placeholder{
  width:100%;
  height:100%;
  min-height:390px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 25% 25%,rgba(106,45,232,.22),transparent 35%),
    linear-gradient(135deg,#f2eef8,#e3ddea);
}
.service-feature-placeholder span{
  font-size:clamp(30px,4vw,60px);
  font-weight:900;
  letter-spacing:-.06em;
}
.service-feature-content{
  padding:50px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.service-feature-content h3{
  margin:10px 0 15px;
  font-size:clamp(32px,4vw,55px);
  line-height:.98;
  letter-spacing:-.055em;
}
.service-feature-content p{
  max-width:540px;
  margin:0 0 24px;
  color:#696570;
  line-height:1.7;
}
.service-feature-content .tags{
  margin-bottom:26px;
}

/* Service cards: CTA/link area stays aligned */
.service-card{
  min-height:320px;
}
.service-card .button,
.service-card .external{
  z-index:5;
}
.service-card > div:last-child{
  margin-top:auto;
}

/* Consistent content width on single service/product/project pages */
.gexauz-single-service,
.gexauz-single-product,
.gexauz-single-project,
.service-single-page{
  width:min(1200px,calc(100% - 48px));
  margin-left:auto;
  margin-right:auto;
}
.service-single-content,
.gexauz-entry-content,
.entry-content{
  width:min(900px,100%);
  margin-left:auto;
  margin-right:auto;
  line-height:1.72;
}
.service-single-content p,
.gexauz-entry-content p,
.entry-content p{
  line-height:1.72;
  margin-bottom:1.35em;
}

/* Product FAQ section */
.product-faq,
.faq-section,
.product-faq-section{
  width:min(1000px,calc(100% - 48px));
  margin:70px auto 0;
}
.product-faq details,
.faq-section details,
.product-faq-section details{
  background:#fff;
  border:1px solid rgba(17,16,22,.08);
  border-radius:16px;
  margin-bottom:10px;
  overflow:hidden;
}
.product-faq summary,
.faq-section summary,
.product-faq-section summary{
  cursor:pointer;
  list-style:none;
  padding:20px 24px;
  font-weight:750;
  position:relative;
  padding-right:55px;
}
.product-faq summary::-webkit-details-marker,
.faq-section summary::-webkit-details-marker,
.product-faq-section summary::-webkit-details-marker{
  display:none;
}
.product-faq summary::after,
.faq-section summary::after,
.product-faq-section summary::after{
  content:"+";
  position:absolute;
  right:20px;
  top:50%;
  transform:translateY(-50%);
  color:#6a2de8;
  font-size:22px;
  font-weight:400;
}
.product-faq details[open] summary::after,
.faq-section details[open] summary::after,
.product-faq-section details[open] summary::after{
  content:"−";
}
.product-faq .faq-answer,
.faq-section .faq-answer,
.product-faq-section .faq-answer{
  padding:0 24px 22px;
  color:#6c6871;
  line-height:1.7;
}

/* =========================================================
   NAVIGATION: NEVER OPEN SUBMENUS ON HOVER
========================================================= */
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu{
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(8px) !important;
  pointer-events:none !important;
  display:none !important;
}
.primary-nav li.is-submenu-open:hover > .sub-menu,
.primary-nav li.is-submenu-open:focus-within > .sub-menu{
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0) !important;
  pointer-events:auto !important;
  display:block !important;
}
.primary-nav .gexauz-menu-arrow{
  position:relative;
  z-index:20;
}

/* Mobile feature row */
@media(max-width:820px){
  .service-feature-row,
  .service-feature-row.feature-image-right{
    grid-template-columns:1fr;
  }
  .service-feature-row.feature-image-right .service-feature-media,
  .service-feature-row.feature-image-right .service-feature-content{
    order:initial;
  }
  .service-feature-media,
  .service-feature-placeholder{
    min-height:280px;
  }
  .service-feature-content{
    padding:32px;
  }
}
@media(max-width:560px){
  .service-feature-list{
    margin-top:45px;
  }
  .service-feature-content{
    padding:26px;
  }
  .service-feature-content h3{
    font-size:34px;
  }
  .product-faq,
  .faq-section,
  .product-faq-section{
    width:min(100% - 30px,1000px);
  }
}


/* =========================================================
   GEXAUZ v1.9.0 FINAL UI FIXES
========================================================= */

/* --- CLICK ONLY DROPDOWNS --- */
.gexauz-primary-nav .sub-menu,
.primary-nav .sub-menu,
.desktop-nav .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(8px) !important;
}
.gexauz-primary-nav .menu-item-has-children.is-open > .sub-menu,
.primary-nav .menu-item-has-children.is-open > .sub-menu,
.desktop-nav .menu-item-has-children.is-open > .sub-menu{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}
.gexauz-primary-nav li:hover > .sub-menu,
.primary-nav li:hover > .sub-menu,
.desktop-nav li:hover > .sub-menu,
.gexauz-primary-nav li:focus-within > .sub-menu,
.primary-nav li:focus-within > .sub-menu,
.desktop-nav li:focus-within > .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.gexauz-primary-nav li.is-open:hover > .sub-menu,
.primary-nav li.is-open:hover > .sub-menu,
.desktop-nav li.is-open:hover > .sub-menu{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.gexauz-menu-arrow{
  width:24px !important;
  height:24px !important;
  display:inline-grid !important;
  place-items:center !important;
  padding:0 !important;
  margin-left:4px !important;
  border:0 !important;
  background:transparent !important;
  cursor:pointer !important;
  color:currentColor !important;
}
.gexauz-menu-arrow::before{
  content:"" !important;
  width:6px !important;
  height:6px !important;
  border-right:1.5px solid currentColor !important;
  border-bottom:1.5px solid currentColor !important;
  transform:rotate(45deg) !important;
  transition:transform .25s ease !important;
}
.menu-item-has-children.is-open > .gexauz-menu-arrow::before{
  transform:rotate(225deg) !important;
}

/* --- FULLSCREEN MENU MODAL --- */
html.gexauz-menu-lock,
html.gexauz-menu-lock body{
  overflow:hidden !important;
}
.gexauz-menu-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
}
.gexauz-menu-modal.is-open{
  display:block;
}
.gexauz-menu-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(12,8,18,.55);
  backdrop-filter:blur(12px);
}
.gexauz-menu-modal__panel{
  position:absolute;
  right:0;
  top:0;
  width:min(520px,92vw);
  height:100%;
  padding:28px;
  overflow:auto;
  background:#fff;
  box-shadow:-30px 0 80px rgba(0,0,0,.18);
  animation:gexauzMenuIn .38s cubic-bezier(.2,.8,.2,1);
}
.gexauz-menu-modal__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-bottom:28px;
  border-bottom:1px solid #eee;
}
.gexauz-menu-modal__brand{
  font-weight:900;
  letter-spacing:-.04em;
  font-size:25px;
}
.gexauz-menu-modal__close{
  width:44px;
  height:44px;
  border:1px solid #e7e3eb;
  background:#fff;
  border-radius:50%;
  font-size:26px;
  cursor:pointer;
}
.gexauz-menu-modal__nav{
  padding:28px 0;
}
.gexauz-menu-modal__nav ul{
  list-style:none;
  margin:0;
  padding:0;
}
.gexauz-menu-modal__nav li{
  position:relative;
}
.gexauz-menu-modal__nav > ul > li > a{
  display:inline-block;
  padding:15px 0;
  font-size:28px;
  line-height:1.15;
  font-weight:750;
}
.gexauz-menu-modal__nav .sub-menu{
  display:none !important;
  padding:5px 0 12px 20px;
}
.gexauz-menu-modal__nav .menu-item-has-children.is-open > .sub-menu{
  display:block !important;
}
.gexauz-menu-modal__nav .sub-menu a{
  display:block;
  padding:9px 0;
  color:#68636f;
  font-size:17px;
}
@keyframes gexauzMenuIn{
  from{transform:translateX(100%);opacity:.6}
  to{transform:translateX(0);opacity:1}
}

/* --- CONTACT SUCCESS / ERROR --- */
.gexauz-form-status{
  width:100%;
  margin-top:18px !important;
  padding:15px 18px !important;
  border-radius:13px !important;
  font-size:14px !important;
  line-height:1.55 !important;
  display:block !important;
}
.gexauz-form-status.is-loading{
  background:#f3f0f7;
  color:#5d5666;
}
.gexauz-form-status.is-success{
  background:#e9f8ee !important;
  color:#18743b !important;
  border:1px solid #bce9cb !important;
}
.gexauz-form-status.is-error{
  background:#fff0f0 !important;
  color:#a22b2b !important;
  border:1px solid #f0c1c1 !important;
}

/* --- HOME SERVICE CTA / PRODUCT / FAQ CONSISTENCY --- */
#services .service-card,
#services .service-feature-row,
#products .product-card,
#faq .faq-item{
  box-sizing:border-box;
}
#services .service-card .button,
#services .service-feature-content .button,
#products .product-card .button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-height:44px;
}
#services .service-feature-row{
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
}
#products .card-grid{
  align-items:stretch;
}
#products .product-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
#products .product-card .body{
  display:flex;
  flex-direction:column;
  height:100%;
}
#products .product-card .button{
  margin-top:auto;
}
#faq{
  position:relative;
}
#faq .faq-list,
#faq .faq-grid{
  max-width:1000px;
  margin-left:auto;
  margin-right:auto;
}
#faq details{
  background:#fff;
  border:1px solid rgba(17,16,22,.08);
  border-radius:16px;
  margin-bottom:12px;
}
#faq summary{
  cursor:pointer;
  padding:20px 24px;
  font-weight:750;
  list-style:none;
}
#faq summary::-webkit-details-marker{display:none}
#faq .faq-answer{
  padding:0 24px 22px;
  line-height:1.7;
  color:#68636e;
}

/* --- GLOBAL CONTENT ALIGNMENT --- */
.single-gex_service .entry-content,
.single-gex_product .entry-content,
.single-gex_project .entry-content,
.single-gex_service .service-content,
.single-gex_product .product-content,
.single-gex_project .project-content{
  width:min(900px,100%);
  margin-left:auto;
  margin-right:auto;
  line-height:1.72;
}
.single-gex_service .section-head,
.single-gex_product .section-head,
.single-gex_project .section-head{
  width:min(1200px,calc(100% - 48px));
  margin-left:auto;
  margin-right:auto;
}

/* Mobile modal menu */
@media(max-width:980px){
  .gexauz-primary-nav .sub-menu,
  .primary-nav .sub-menu,
  .desktop-nav .sub-menu{
    position:static !important;
    box-shadow:none !important;
  }
}
@media(max-width:600px){
  .gexauz-menu-modal__panel{
    width:100%;
    padding:22px;
  }
  .gexauz-menu-modal__nav > ul > li > a{
    font-size:24px;
  }
}


/* =========================================================
   GEXAUZ v2.0 — DEFINITIVE CLICK-ONLY NAVIGATION
========================================================= */

html.gexauz-menu-open,
html.gexauz-menu-open body {
  overflow: hidden !important;
}

/* Never open submenu from hover/focus. */
.primary-nav .sub-menu,
.desktop-nav .sub-menu,
.gexauz-primary-nav .sub-menu {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
}

/* ONLY the explicit JS state opens a submenu. */
.primary-nav .menu-item-has-children.is-gexauz-open > .sub-menu,
.desktop-nav .menu-item-has-children.is-gexauz-open > .sub-menu,
.gexauz-primary-nav .menu-item-has-children.is-gexauz-open > .sub-menu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

/* Defeat any existing theme hover rule. */
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu,
.desktop-nav li:hover > .sub-menu,
.desktop-nav li:focus-within > .sub-menu,
.gexauz-primary-nav li:hover > .sub-menu,
.gexauz-primary-nav li:focus-within > .sub-menu {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.primary-nav li.is-gexauz-open:hover > .sub-menu,
.desktop-nav li.is-gexauz-open:hover > .sub-menu,
.gexauz-primary-nav li.is-gexauz-open:hover > .sub-menu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.gexauz-submenu-toggle {
  width: 26px !important;
  height: 26px !important;
  margin-left: 4px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  cursor: pointer !important;
  display: inline-grid !important;
  place-items: center !important;
  vertical-align: middle !important;
}

.gexauz-submenu-toggle::before {
  content: "" !important;
  width: 7px !important;
  height: 7px !important;
  border-right: 1.5px solid currentColor !important;
  border-bottom: 1.5px solid currentColor !important;
  transform: rotate(45deg) !important;
  transition: transform .22s ease !important;
}

.menu-item-has-children.is-gexauz-open > .gexauz-submenu-toggle::before {
  transform: rotate(225deg) !important;
}

/* Modal menu */
.gexauz-menu-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: none !important;
}

.gexauz-menu-modal.is-gexauz-visible {
  display: block !important;
}

.gexauz-menu-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(12, 9, 18, .58);
  backdrop-filter: blur(14px);
}

.gexauz-menu-panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(540px, 94vw);
  height: 100%;
  overflow: auto;
  padding: 28px;
  background: #fff;
  box-shadow: -30px 0 90px rgba(0,0,0,.2);
  animation: gexauzMenuPanelIn .35s cubic-bezier(.2,.8,.2,1);
}

.gexauz-menu-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 24px;
  border-bottom: 1px solid #ece9ef;
}

.gexauz-menu-panel-head strong {
  font-size: 25px;
  letter-spacing: -.05em;
}

.gexauz-menu-panel-head button {
  width: 44px;
  height: 44px;
  border: 1px solid #e7e2eb;
  border-radius: 50%;
  background: #fff;
  font-size: 27px;
  cursor: pointer;
}

.gexauz-menu-panel-nav {
  padding-top: 26px;
}

.gexauz-menu-panel-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.gexauz-menu-panel-nav > .gexauz-modal-menu > ul > li > a {
  display: inline-block;
  padding: 14px 0;
  font-size: 29px;
  line-height: 1.15;
  font-weight: 750;
}

.gexauz-modal-menu .sub-menu {
  padding: 4px 0 14px 18px !important;
}

.gexauz-modal-menu .sub-menu a {
  display: block;
  padding: 9px 0;
  color: #6c6872;
  font-size: 17px;
}

@keyframes gexauzMenuPanelIn {
  from { transform: translateX(100%); opacity: .7; }
  to { transform: translateX(0); opacity: 1; }
}

/* Contact status must remain visible and occupy layout space. */
.gexauz-form-status {
  position: relative !important;
  clear: both !important;
  width: 100% !important;
  min-height: 20px !important;
  margin: 18px 0 0 !important;
  padding: 16px 18px !important;
  border-radius: 13px !important;
  display: block !important;
  box-sizing: border-box !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  z-index: 20 !important;
}

.gexauz-form-status.is-success {
  background: #eaf8ee !important;
  border: 1px solid #b9e5c7 !important;
  color: #176d35 !important;
}

.gexauz-form-status.is-error {
  background: #fff0f0 !important;
  border: 1px solid #efc1c1 !important;
  color: #9d2929 !important;
}

.gexauz-form-status.is-loading {
  background: #f4f1f7 !important;
  border: 1px solid #e2dce8 !important;
  color: #5c5564 !important;
}

@media (max-width: 700px) {
  .gexauz-menu-panel {
    width: 100%;
    padding: 22px;
  }

  .gexauz-menu-panel-nav > .gexauz-modal-menu > ul > li > a {
    font-size: 24px;
  }
}

/* GEXAUZ v2.2 — CONTACT SUCCESS ALWAYS VISIBLE */
.gexauz-contact-form .contact-status[hidden]{
  display:none !important;
}
.gexauz-contact-form .contact-status.is-visible{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  clear:both !important;
  width:100% !important;
  min-height:20px !important;
  margin:18px 0 0 !important;
  padding:16px 18px !important;
  box-sizing:border-box !important;
  border-radius:14px !important;
  line-height:1.55 !important;
  z-index:50 !important;
}
.gexauz-contact-form .contact-status.is-success{
  background:#eaf8ee !important;
  color:#176d35 !important;
  border:1px solid #b9e5c7 !important;
}
.gexauz-contact-form .contact-status.is-error{
  background:#fff0f0 !important;
  color:#9d2929 !important;
  border:1px solid #efc1c1 !important;
}
.gexauz-contact-form .contact-status.is-loading{
  background:#f4f1f7 !important;
  color:#5c5564 !important;
  border:1px solid #e2dce8 !important;
}

/* Definitive desktop dropdown: only JS class opens it. */
.desktop-nav .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.desktop-nav .menu-item-has-children.gexauz-open > .sub-menu{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}
.desktop-nav .menu-item-has-children:hover > .sub-menu,
.desktop-nav .menu-item-has-children:focus-within > .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.desktop-nav .menu-item-has-children.gexauz-open:hover > .sub-menu{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.gexauz-submenu-arrow{
  width:24px !important;
  height:24px !important;
  margin-left:3px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  cursor:pointer !important;
  display:inline-grid !important;
  place-items:center !important;
}
.gexauz-submenu-arrow:before{
  content:"" !important;
  width:6px !important;
  height:6px !important;
  border-right:1.5px solid currentColor !important;
  border-bottom:1.5px solid currentColor !important;
  transform:rotate(45deg) !important;
  transition:transform .2s ease !important;
}
.menu-item-has-children.gexauz-open > .gexauz-submenu-arrow:before{
  transform:rotate(225deg) !important;
}

/* Menu modal */
.gexauz-menu-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:none !important;
}
.gexauz-menu-modal.is-open{display:block !important;}
.gexauz-menu-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(10,8,15,.55) !important;
  backdrop-filter:blur(14px) !important;
}
.gexauz-menu-panel{
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  width:min(520px,94vw) !important;
  height:100% !important;
  overflow:auto !important;
  padding:28px !important;
  background:#fff !important;
  box-shadow:-30px 0 90px rgba(0,0,0,.2) !important;
  animation:gexauzMenuIn22 .32s cubic-bezier(.2,.8,.2,1) !important;
}
.gexauz-menu-panel-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding-bottom:24px !important;
  border-bottom:1px solid #ece9ef !important;
}
.gexauz-menu-panel-head button{
  width:44px !important;height:44px !important;border:1px solid #e7e2eb !important;
  border-radius:50% !important;background:#fff !important;font-size:26px !important;
}
.gexauz-menu-panel-nav{padding-top:22px !important;}
.gexauz-menu-panel-nav ul{list-style:none !important;margin:0 !important;padding:0 !important;}
.gexauz-menu-panel-nav > .gexauz-modal-menu > li > a,
.gexauz-menu-panel-nav > .gexauz-modal-menu > ul > li > a{
  display:inline-block !important;padding:14px 0 !important;font-size:27px !important;
}
@keyframes gexauzMenuIn22{from{transform:translateX(100%);opacity:.6}to{transform:translateX(0);opacity:1}}
@media(max-width:700px){
  .gexauz-menu-panel{width:100% !important;padding:22px !important;}
  .gexauz-menu-panel-nav > .gexauz-modal-menu > ul > li > a{font-size:24px !important;}
}

/* =========================================================
   GEXAUZ v2.3.1 — SUBMENU MODAL / REMOVE HOVER OPENING
========================================================= */

/* Submenus are never rendered by CSS hover. */
.gexauz-primary-nav .menu-item-has-children > .sub-menu,
.desktop-nav .menu-item-has-children > .sub-menu,
.primary-nav .menu-item-has-children > .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  position:absolute !important;
}

/* The old inline-open state is also disabled. The arrow now opens a modal. */
.gexauz-primary-nav .menu-item-has-children.gexauz-open > .sub-menu,
.desktop-nav .menu-item-has-children.gexauz-open > .sub-menu,
.primary-nav .menu-item-has-children.gexauz-open > .sub-menu{
  display:none !important;
}

/* No hover/focus-within can open a submenu. */
.gexauz-primary-nav li:hover > .sub-menu,
.gexauz-primary-nav li:focus-within > .sub-menu,
.desktop-nav li:hover > .sub-menu,
.desktop-nav li:focus-within > .sub-menu,
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

/* Clicked arrow submenu modal. */
html.gexauz-submenu-lock,
html.gexauz-submenu-lock body{
  overflow:hidden !important;
}
.gexauz-submenu-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483646 !important;
  display:grid !important;
  place-items:center !important;
  padding:24px !important;
  box-sizing:border-box !important;
}
.gexauz-submenu-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(10,8,16,.52) !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
}
.gexauz-submenu-panel{
  position:relative !important;
  z-index:2 !important;
  width:min(520px,94vw) !important;
  max-height:min(620px,88vh) !important;
  overflow:auto !important;
  background:#fff !important;
  color:#17141c !important;
  border:1px solid rgba(17,16,22,.08) !important;
  border-radius:24px !important;
  padding:26px !important;
  box-shadow:0 30px 100px rgba(0,0,0,.24) !important;
  animation:gexauzSubmenuIn .25s cubic-bezier(.2,.8,.2,1) !important;
}
.gexauz-submenu-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:0 0 20px !important;
  margin-bottom:8px !important;
  border-bottom:1px solid #ece9ef !important;
}
.gexauz-submenu-head strong{
  font-size:24px !important;
  letter-spacing:-.04em !important;
}
.gexauz-submenu-close{
  width:42px !important;
  height:42px !important;
  border:1px solid #e7e2eb !important;
  border-radius:50% !important;
  background:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.gexauz-submenu-list{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
  padding-top:8px !important;
}
.gexauz-submenu-link{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:17px 16px !important;
  border-radius:14px !important;
  color:#1b1820 !important;
  text-decoration:none !important;
  font-size:17px !important;
  font-weight:700 !important;
  transition:background .18s ease,transform .18s ease !important;
}
.gexauz-submenu-link:hover{
  background:#f3edff !important;
  color:#6a2de8 !important;
  transform:translateX(3px) !important;
}
.gexauz-submenu-link-arrow{
  color:#6a2de8 !important;
  font-size:16px !important;
}
@keyframes gexauzSubmenuIn{
  from{opacity:0;transform:translateY(14px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* Preserve the original homepage service stack cards and their existing hover perspective. */
.service-feature-list{
  display:none !important;
}
.stack-list .stack-card{
  transform-style:preserve-3d;
}

/* Responsive submenu modal. */
@media(max-width:560px){
  .gexauz-submenu-modal{
    padding:14px !important;
  }
  .gexauz-submenu-panel{
    width:100% !important;
    max-height:86vh !important;
    border-radius:20px !important;
    padding:20px !important;
  }
  .gexauz-submenu-link{
    padding:15px 13px !important;
  }
}

/* =========================================================
   GEXAUZ v2.4 — MOTION / GALLERY / SERVICES / FOOTER
========================================================= */

  to{opacity:1;transform:translateY(0);letter-spacing:.26em}
}

/* Products — pinned-panel visual system */
.products-home{
  position:relative;
  overflow:clip;
}
.products-home-grid{
  min-height:860px;
}
.products-home-intro{
  will-change:transform;
  z-index:5;
}
.products-home-list{
  perspective:1200px;
}
.product-home-card{
  will-change:transform;
  transform-style:preserve-3d;
}
.product-home-card:nth-child(2),
.product-home-card:nth-child(3){
  /* GSAP owns their runtime transform. */
  transition:box-shadow .35s ease,filter .35s ease !important;
}
.product-home-card:hover{
  filter:brightness(1.015);
}

/* Horizontal gallery */
.home-gallery{
  position:relative;
  overflow:hidden;
  background:#f0eef3;
  padding:115px 0 125px;
}
.gallery-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:40px;
}
.gallery-head p{
  max-width:360px;
  color:var(--muted);
  line-height:1.65;
}
.home-gallery-track{
  display:flex;
  gap:22px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
  padding:8px 3px 28px;
  cursor:grab;
}
.home-gallery-track:active{cursor:grabbing}
.home-gallery-card{
  flex:0 0 clamp(310px,38vw,520px);
  scroll-snap-align:start;
  border:0;
  padding:0;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
  perspective:1000px;
}
.home-gallery-card-image{
  display:block;
  aspect-ratio:1.35/1;
  overflow:hidden;
  border-radius:26px;
  background:#ddd;
  box-shadow:0 22px 60px rgba(24,16,35,.13);
  transform-style:preserve-3d;
  transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s ease;
}
.home-gallery-card:nth-child(odd) .home-gallery-card-image{transform:rotate(-1.2deg)}
.home-gallery-card:nth-child(even) .home-gallery-card-image{transform:rotate(1.2deg)}
.home-gallery-card:hover .home-gallery-card-image{
  transform:rotate(0) translateY(-9px) rotateX(3deg) scale(1.015);
  box-shadow:0 35px 85px rgba(24,16,35,.20);
}
.home-gallery-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.home-gallery-card-caption{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:17px 5px 0;
  font-size:14px;
}
.home-gallery-card-caption strong{font-size:17px}
.home-gallery-card-caption small{color:#746e7d}

/* Gallery flip-style modal */
html.gexauz-gallery-lock,html.gexauz-gallery-lock body{overflow:hidden !important}
.gexauz-gallery-modal{
  position:fixed;
  inset:0;
  z-index:2147483645;
  display:none;
  place-items:center;
  padding:28px;
}
.gexauz-gallery-modal.is-open{display:grid}
.gexauz-gallery-backdrop{
  position:absolute;
  inset:0;
  background:rgba(9,7,13,.72);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.gexauz-gallery-dialog{
  position:relative;
  z-index:2;
  width:min(1120px,94vw);
  max-height:92vh;
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(220px,.4fr);
  gap:22px;
  align-items:end;
  transform-style:preserve-3d;
  animation:gexGalleryFlip .6s cubic-bezier(.16,1,.3,1) both;
}
.gexauz-gallery-visual{
  background:#fff;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 40px 120px rgba(0,0,0,.35);
}
.gexauz-gallery-visual img{
  width:100%;
  max-height:78vh;
  object-fit:contain;
  display:block;
  background:#f5f3f6;
}
.gexauz-gallery-info{
  padding:28px;
  border-radius:22px;
  background:#fff;
  box-shadow:0 20px 60px rgba(0,0,0,.18);
}
.gexauz-gallery-info span{
  color:#6a2de8;
  font-size:11px;
  font-weight:800;
  letter-spacing:.22em;
}
.gexauz-gallery-info h3{
  margin-top:12px;
  font-size:clamp(25px,3vw,42px);
  line-height:1;
  letter-spacing:-.05em;
}
.gexauz-gallery-close{
  position:absolute;
  z-index:4;
  top:-15px;
  right:-15px;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:50%;
  background:#fff;
  color:#17131d;
  font-size:27px;
  cursor:pointer;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
@keyframes gexGalleryFlip{
  from{opacity:0;transform:perspective(1400px) rotateX(9deg) rotateY(-10deg) translateY(35px) scale(.94)}
  to{opacity:1;transform:perspective(1400px) rotateX(0) rotateY(0) translateY(0) scale(1)}
}

/* Service cards — web-app product palette applied to every card */
.stack-card,
.stack-card.dark{
  --card-purple:#efe8ff;
  --card-purple-2:#f7f3ff;
  --card-blue:#e9f0ff;
  --card-lilac:#f2eaff;
  background:linear-gradient(145deg,var(--card-purple),var(--card-purple-2)) !important;
  color:#15121b !important;
  border-color:rgba(106,45,232,.13) !important;
  box-shadow:0 24px 70px rgba(68,42,120,.12) !important;
  transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(var(--lift,0px)) !important;
  transition:transform .18s ease-out,box-shadow .25s ease,filter .25s ease !important;
  transform-style:preserve-3d !important;
  will-change:transform;
}
.stack-card:nth-child(4n+2),
.stack-card:nth-child(4n+2).dark{
  background:linear-gradient(145deg,#e9f0ff,#f3f7ff) !important;
}
.stack-card:nth-child(4n+3),
.stack-card:nth-child(4n+3).dark{
  background:linear-gradient(145deg,#f4eaff,#fbf8ff) !important;
}
.stack-card:nth-child(4n),
.stack-card:nth-child(4n).dark{
  background:linear-gradient(145deg,#eeeaff,#f7f5ff) !important;
}
.stack-card.dark .stack-title,
.stack-card.dark .stack-desc{color:#15121b !important}
.stack-card .stack-icon,
.stack-card.dark .stack-icon{
  background:#fff !important;
  color:#6a2de8 !important;
  box-shadow:0 8px 22px rgba(106,45,232,.12);
}
.stack-card.dark .stack-icon{background:#fff !important}
.stack-card .stack-tags{align-items:flex-start !important;flex-direction:row !important;flex-wrap:wrap !important}
.stack-card .stack-tag{
  border:1px solid rgba(106,45,232,.14) !important;
  background:rgba(255,255,255,.72) !important;
  color:#6a2de8 !important;
}
.stack-card .service-external-link{
  background:#fff !important;
  color:#6a2de8 !important;
  box-shadow:0 8px 22px rgba(106,45,232,.12) !important;
}

  50%{transform:translate3d(-12%,70px,0) scale(1.1)}
  100%{transform:translate3d(-30%,-15px,0) scale(.92)}
}

/* Dual down-chevron arrow on Products / Services. */
.gexauz-primary-menu .menu-item-has-children > a::after{
  display:none !important;
}
.gexauz-submenu-arrow{
  position:relative !important;
  width:26px !important;
  height:26px !important;
  margin-left:3px !important;
}
.gexauz-submenu-arrow::before,
.gexauz-submenu-arrow::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  width:7px !important;
  height:7px !important;
  border-right:1.5px solid currentColor !important;
  border-bottom:1.5px solid currentColor !important;
  transform:translateX(-50%) rotate(45deg) !important;
}
.gexauz-submenu-arrow::before{top:5px !important}
.gexauz-submenu-arrow::after{top:11px !important}
.gexauz-submenu-arrow[aria-expanded="true"]::before,
.gexauz-submenu-arrow[aria-expanded="true"]::after{
  transform:translateX(-50%) rotate(225deg) !important;
}
@media(max-width:820px){
  .gexauz-gallery-dialog{
    grid-template-columns:1fr;
    max-height:88vh;
    overflow:auto;
  }
  .gexauz-gallery-info{padding:20px}
  .gexauz-gallery-close{right:8px;top:8px}
  .products-home-grid{min-height:auto}
  .products-home-intro{position:relative}
}
@media(prefers-reduced-motion:reduce){
  .gexauz-footer::before,.gexauz-footer::after{animation:none}
}

/* GSAP-only motion surfaces */
.gexauz-footer::before,
.gexauz-footer::after{display:none !important}
.gexauz-gsap-footer-orb{
  position:absolute;
  width:75vw;
  height:420px;
  pointer-events:none;
  z-index:-1;
  border-radius:50%;
  filter:blur(24px);
  will-change:transform;
}
.gexauz-gsap-footer-orb.orb-a{
  left:-12vw;
  bottom:-240px;
  background:
    radial-gradient(circle at 30% 35%,rgba(106,45,232,.42),transparent 48%),
    radial-gradient(circle at 72% 55%,rgba(139,92,246,.22),transparent 45%);
}
.gexauz-gsap-footer-orb.orb-b{
  width:55vw;
  height:300px;
  right:-15vw;
  top:-170px;
  background:radial-gradient(circle,rgba(106,45,232,.20),transparent 65%);
}
.stack-card{
  /* GSAP owns cursor transforms; CSS remains the visual surface only. */
  transform-style:preserve-3d !important;
}

/* =========================================================
   GEXAUZ v2.6 — GSAP DEMO-INSPIRED MOTION SYSTEM
========================================================= */

/* Smooth anchor baseline; GSAP ScrollToPlugin owns enhanced navigation. */
html{scroll-behavior:smooth}

/* Directionally aware header */
#site-nav{
  will-change:transform;
  transform:translate3d(0,0,0);
}

/* Projects — staggered entrance */
.dynamic-projects .proj-card{
  will-change:transform,opacity;
  transform-style:preserve-3d;
}

/* Product infinite loop panels */
.products-home{
  overflow:hidden !important;
  min-height:92vh;
  position:relative;
}
.products-home-grid{
  min-height:92vh;
  display:grid;
  grid-template-columns:minmax(260px,.7fr) minmax(0,1.7fr);
  align-items:center;
  gap:5vw;
}
.products-home-intro{
  z-index:8;
}
.products-home-list{
  display:flex !important;
  align-items:stretch;
  gap:28px;
  width:max-content;
  min-width:max-content;
  overflow:visible !important;
  perspective:1400px;
}
.product-home-card{
  flex:0 0 clamp(330px,42vw,620px) !important;
  min-height:570px;
  transform-style:preserve-3d;
  will-change:transform;
}
.product-home-card .product-home-link{
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:#fff;
  border:1px solid rgba(106,45,232,.12);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(55,35,90,.13);
}
.product-home-card:nth-child(3n+1) .product-home-link{
  background:linear-gradient(145deg,#efe8ff,#fff);
}
.product-home-card:nth-child(3n+2) .product-home-link{
  background:linear-gradient(145deg,#eaf1ff,#fff);
}
.product-home-card:nth-child(3n) .product-home-link{
  background:linear-gradient(145deg,#f3eaff,#fff);
}
.product-home-media{
  min-height:360px;
  position:relative;
  padding:18px;
  overflow:hidden;
}
.product-home-media img{
  width:100%;
  height:100%;
  min-height:324px;
  object-fit:cover;
  border-radius:22px;
  display:block;
}
.product-home-arrow{
  position:absolute;
  right:28px;
  top:28px;
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  color:#6a2de8;
  box-shadow:0 12px 30px rgba(42,25,76,.16);
  font-size:19px;
}
.product-home-meta{
  padding:26px 30px 30px;
}
.product-home-cat{
  color:#6a2de8;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:10px;
  font-weight:800;
}
.product-home-meta h3{
  margin:8px 0;
  font-size:clamp(28px,3vw,48px);
  line-height:.98;
  letter-spacing:-.055em;
}
.product-home-meta p{
  max-width:470px;
  color:#6e6876;
  line-height:1.6;
}

/* Service cards: match the attached spacious Web App card language. */
.services .stack-list{
  perspective:1500px;
}
.services .stack-card{
  min-height:430px !important;
  padding:44px !important;
  border-radius:26px !important;
  position:relative !important;
  overflow:hidden !important;
}
.services .stack-head{
  position:relative;
  z-index:3;
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}
.services .stack-icon{
  width:44px !important;
  height:44px !important;
  border-radius:13px !important;
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
  color:#6a2de8 !important;
  font-size:15px !important;
  box-shadow:0 12px 28px rgba(106,45,232,.14) !important;
}
.services .stack-title{
  font-size:clamp(28px,3vw,46px) !important;
  font-weight:800 !important;
  letter-spacing:-.055em !important;
}
.services .stack-body{
  position:absolute !important;
  left:44px !important;
  right:44px !important;
  bottom:38px !important;
  z-index:4 !important;
}
.services .stack-tags{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:9px !important;
}
.services .stack-tags span{
  display:inline-flex !important;
  align-items:center !important;
  padding:9px 15px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  color:#6a2de8 !important;
  border:1px solid rgba(106,45,232,.13) !important;
  font-size:11px !important;
  font-weight:700 !important;
}
.services .stack-desc{
  max-width:650px !important;
  margin-top:20px !important;
  color:#5e5966 !important;
  line-height:1.65 !important;
}
.services .service-card-media{
  position:absolute !important;
  z-index:2 !important;
  width:min(44%,520px) !important;
  height:58% !important;
  right:7% !important;
  top:18% !important;
  overflow:hidden !important;
  border-radius:24px !important;
  opacity:.9 !important;
  box-shadow:0 24px 65px rgba(49,27,91,.14) !important;
  transform:translateZ(20px) !important;
  will-change:transform !important;
}
.services .service-card-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.services .stack-card:nth-child(odd) .service-card-media{
  right:7% !important;
}
.services .stack-card:nth-child(even) .service-card-media{
  left:7% !important;
  right:auto !important;
}
.services .stack-card:nth-child(even) .stack-body{
  left:44px !important;
  right:44% !important;
}
.services .service-external-link{
  z-index:7 !important;
  width:46px !important;
  height:46px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
  color:#6a2de8 !important;
  box-shadow:0 12px 28px rgba(106,45,232,.14) !important;
}
@media(max-width:900px){
  .products-home-grid{
    display:block;
    min-height:auto;
  }
  .products-home-intro{
    padding-bottom:34px;
  }
  .products-home-list{
    width:max-content;
  }
  .product-home-card{
    flex-basis:min(78vw,560px) !important;
  }
  .services .stack-card{
    min-height:430px !important;
  }
  .services .service-card-media{
    width:48% !important;
    height:44% !important;
  }
}
@media(max-width:650px){
  .products-home{
    min-height:auto;
  }
  .product-home-card{
    flex-basis:86vw !important;
    min-height:500px;
  }
  .product-home-media{min-height:280px}
  .product-home-media img{min-height:244px}
  .services .stack-card{
    min-height:390px !important;
    padding:28px !important;
  }
  .services .stack-title{font-size:29px !important}
  .services .stack-body{
    left:28px !important;
    right:28px !important;
    bottom:28px !important;
  }
  .services .service-card-media{
    width:45% !important;
    height:38% !important;
    top:22% !important;
  }
}

/* Dedicated Gallery module */
.gallery-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
}
.gallery-archive-card{
  width:100%;
  max-width:none;
}
.gallery-archive-card .home-gallery-card-image{
  aspect-ratio:1.15/1;
}
.gallery-single-visual{
  padding:20px 0 120px;
}
.gallery-single-visual img{
  width:100%;
  max-height:82vh;
  object-fit:contain;
  display:block;
  border-radius:30px;
  background:#f2eff5;
}
.gallery-modal-caption{
  color:#6e6876;
  line-height:1.6;
  margin:14px 0 0;
}
.gallery-modal-link{
  margin-top:18px;
  align-items:center;
  width:max-content;
  color:#6a2de8;
  text-decoration:none;
  font-weight:800;
}
@media(max-width:900px){
  .gallery-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .gallery-archive-grid{grid-template-columns:1fr}
}

/* =========================================================
   GEXAUZ v2.7 — PINNED PRODUCTS / BLOG / MAGNETIC UI
========================================================= */

/* Products: pinned panels with overscroll-inspired stack */
.products-pinned-stage{
  min-height:100vh !important;
  overflow:visible !important;
}
.products-pinned-stage .products-home-grid{
  min-height:100vh;
  align-items:center;
}
.products-pinned-stage .products-home-list{
  width:100% !important;
  min-width:0 !important;
  display:block !important;
  overflow:visible !important;
  gap:0 !important;
}
.products-pinned-list .product-home-card{
  flex:none !important;
  min-height:clamp(470px,68vh,680px) !important;
  width:100% !important;
  height:100% !important;
  will-change:transform,opacity;
}
.products-pinned-list .product-home-link{
  min-height:100%;
}
.products-pinned-list .product-home-card .product-home-media{
  flex:1 1 auto;
}
.products-pinned-list .product-home-card .product-home-meta{
  flex:0 0 auto;
}

/* Curve-swipe footer transition */
.gexauz-footer{
  position:relative;
  isolation:isolate;
  transform-origin:50% 0;
  will-change:clip-path,transform;
}
.gexauz-footer::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-90px -5% auto;
  height:170px;
  background:radial-gradient(ellipse at center,#7c42f5 0%,#3b197d 42%,transparent 72%);
  filter:blur(22px);
  opacity:.55;
}

/* Magnetic-only interaction: no transform on arbitrary links */
.btn,.text-cta,.gexauz-blog-read,.product-home-arrow,.service-external-link{
  will-change:transform;
}

/* Contact success/error status below the submit button */
.gexauz-submit-field{
  position:relative;
}
.contact-status{
  display:block;
  width:100%;
  margin-top:14px;
  padding:13px 16px;
  border-radius:14px;
  font-size:13px;
  line-height:1.5;
}
.contact-status.is-success{
  color:#175c37;
  background:#e8f8ef;
  border:1px solid #bde8ce;
}
.contact-status.is-error{
  color:#8b1e2d;
  background:#fff0f2;
  border:1px solid #f1c4ca;
}
.gex-btn-text{display:inline-block}

/* Blog — editorial layout based on supplied reference */
.gexauz-blog-page{
  background:#f7f7f9;
}
.gexauz-blog-hero{
  min-height:500px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 22% 38%,rgba(151,194,255,.58),transparent 30%),
    radial-gradient(circle at 77% 35%,rgba(249,156,230,.58),transparent 31%),
    linear-gradient(135deg,#fbf9ff 0%,#f0f5ff 48%,#fff5fc 100%);
}
.gexauz-blog-hero-glow{
  position:absolute;
  width:32vw;
  height:32vw;
  border-radius:50%;
  filter:blur(60px);
  opacity:.28;
  pointer-events:none;
}
.gexauz-blog-hero .glow-a{left:-12vw;top:5%;background:#7aaeff}
.gexauz-blog-hero .glow-b{right:-8vw;bottom:-10%;background:#ef7ddc}
.gexauz-blog-wrap{
  width:min(1180px,calc(100% - 44px));
  margin-inline:auto;
}
.gexauz-blog-hero .gexauz-blog-wrap{
  position:relative;
  z-index:2;
  text-align:center;
  padding:120px 0 95px;
}
.gexauz-blog-title{
  max-width:760px;
  margin:18px auto 20px;
  font-size:clamp(48px,7vw,88px);
  line-height:.98 !important;
  letter-spacing:-.065em;
}
.gexauz-blog-intro{
  max-width:620px;
  margin:0 auto;
  color:#625e68;
  line-height:1.65 !important;
}
.blog-section-kicker{
  margin-bottom:18px;
  font-size:10px;
  letter-spacing:.18em;
  font-weight:800;
  color:#77717e;
}
.gexauz-blog-categories,
.gexauz-blog-featured,
.gexauz-blog-recent{
  padding:68px 0;
}
.gexauz-category-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.gexauz-category-card{
  min-height:170px;
  padding:22px;
  border-radius:14px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#111;
  text-decoration:none;
  position:relative;
  overflow:hidden;
}
.gexauz-category-card::after{
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  border-radius:50%;
  right:-20px;
  top:-25px;
  background:rgba(255,255,255,.25);
  filter:blur(3px);
}
.gexauz-category-card span,
.gexauz-category-card strong{position:relative;z-index:1}
.gexauz-category-card span{font-size:12px;font-weight:800}
.gexauz-category-card strong{
  margin-top:7px;
  font-size:12px;
  font-weight:600;
}
.blog-cat-purple{background:linear-gradient(135deg,#d9c9ff,#8063e9)}
.blog-cat-pink{background:linear-gradient(135deg,#f5b1df,#c74c96)}
.blog-cat-orange{background:linear-gradient(135deg,#f8b16b,#ee4d19)}
.gexauz-featured-grid{
  border-top:1px solid #dedbe2;
  border-bottom:1px solid #dedbe2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.gexauz-featured-item{
  padding:25px 28px 28px 0;
  border-right:1px solid #dedbe2;
}
.gexauz-featured-item:not(:first-child){padding-left:28px}
.gexauz-featured-item:last-child{border-right:0}
.gexauz-featured-item a{color:inherit;text-decoration:none}
.gexauz-featured-meta{
  color:#85808b;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.gexauz-featured-item h2{
  margin:12px 0 0;
  font-size:18px;
  line-height:1.25 !important;
  letter-spacing:-.025em;
}
.gexauz-blog-recent{
  padding-top:30px;
  padding-bottom:110px;
}
.gexauz-blog-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
}
.gexauz-blog-card{
  background:#fff !important;
  border:1px solid #e8e5eb !important;
  border-radius:16px !important;
  overflow:hidden !important;
  box-shadow:0 10px 30px rgba(20,15,30,.045) !important;
  transition:box-shadow .25s ease,transform .25s ease;
}
.gexauz-blog-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 45px rgba(20,15,30,.08) !important;
}
.gexauz-blog-image{
  display:block !important;
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#eee;
}
.gexauz-blog-thumb{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
.gexauz-blog-card-body{
  padding:20px 20px 22px;
}
.gexauz-blog-meta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  color:#85808b;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.gexauz-blog-card-title{
  margin:10px 0 10px !important;
  font-size:19px !important;
  line-height:1.28 !important;
  letter-spacing:-.025em;
}
.gexauz-blog-card-title a{color:#111;text-decoration:none}
.gexauz-blog-excerpt{
  color:#6c6871;
  font-size:13px;
  line-height:1.65 !important;
}
.gexauz-blog-read{
  display:inline-flex;
  margin-top:17px;
  align-items:center;
  gap:7px;
  color:#6a2de8;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
}
.gexauz-blog-arrow{
  position:absolute;
  right:12px;
  top:12px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#6a2de8;
  box-shadow:0 10px 25px rgba(20,15,30,.12);
}
.gexauz-single-post{
  background:#f4f3f6 !important;
  padding:90px 20px 120px !important;
}
.gexauz-single-card{
  width:min(1080px,100%) !important;
  margin:0 auto !important;
  background:#fff !important;
  border-radius:24px !important;
  padding:clamp(30px,5vw,72px) !important;
  box-shadow:0 18px 65px rgba(20,15,30,.07) !important;
}
.gexauz-single-header{
  max-width:850px !important;
  margin:0 auto 45px;
}
.gexauz-single-category{
  margin-top:18px;
  color:#6a2de8;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.13em;
}
.gexauz-single-title{
  margin:12px 0 18px !important;
  font-size:clamp(42px,6vw,76px) !important;
  line-height:1.02 !important;
  letter-spacing:-.06em;
}
.gexauz-single-deck{
  max-width:720px;
  color:#69646e;
  font-size:17px;
  line-height:1.65 !important;
}
.gexauz-single-meta{
  display:flex;
  gap:9px;
  margin-top:22px;
  color:#88828e;
  font-size:12px;
}
.gexauz-single-featured{
  margin:0 auto 55px !important;
  max-width:950px;
  border-radius:20px !important;
  overflow:hidden;
  background:#f1eff3;
}
.gexauz-single-image{
  width:100%;
  height:auto !important;
  max-height:760px;
  object-fit:contain !important;
  object-position:center !important;
  display:block;
}
.gexauz-single-layout{
  display:grid;
  grid-template-columns:90px minmax(0,760px);
  gap:35px;
  justify-content:center;
}
.gexauz-entry-content{
  color:#29262d;
  font-size:17px;
  line-height:1.8 !important;
}
.gexauz-entry-content p,
.gexauz-entry-content li{line-height:1.8 !important}
.gexauz-entry-content img{
  max-width:100%;
  height:auto !important;
  object-fit:contain !important;
}
.gexauz-single-share{
  position:sticky;
  top:120px;
  align-self:start;
  display:flex;
  flex-direction:column;
  gap:9px;
  font-size:11px;
  color:#88828e;
}
.gexauz-single-share a{
  width:36px;
  height:36px;
  border:1px solid #e4e1e7;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#222;
  text-decoration:none;
  background:#fff !important;
}

/* Global draggable SVG web ornament */
.gexauz-global-svg{
  position:fixed;
  right:26px;
  bottom:90px;
  width:78px;
  height:78px;
  z-index:9997;
  cursor:grab;
  touch-action:none;
  filter:drop-shadow(0 15px 28px rgba(106,45,232,.16));
  opacity:.9;
}
.gexauz-global-svg:active{cursor:grabbing}
.gexauz-global-svg svg{width:100%;height:100%;overflow:visible}
.gsvg-ring{stroke:#6a2de8;stroke-width:1.3;opacity:.26}
.gsvg-path{stroke:#9b73ff;stroke-width:1.5;stroke-dasharray:4 6;opacity:.65}
.gsvg-dot{fill:#6a2de8}

/* Small cursor-following icon */
.gexauz-cursor-follower{
  position:fixed;
  left:-18px;
  top:-18px;
  width:36px;
  height:36px;
  z-index:10000;
  pointer-events:none;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#6a2de8;
  color:#fff;
  font-size:13px;
  box-shadow:0 10px 30px rgba(106,45,232,.3);
  transform:translate3d(-100px,-100px,0);
}
.gexauz-cursor-follower span{
  display:block;
  line-height:1;
}
@media(pointer:coarse){
  .gexauz-cursor-follower{display:none}
}
@media(max-width:760px){
  .gexauz-global-svg{width:54px;height:54px;right:12px;bottom:70px}
  .gexauz-category-grid,
  .gexauz-featured-grid{grid-template-columns:1fr}
  .gexauz-featured-item,
  .gexauz-featured-item:not(:first-child){
    padding:18px 0;
    border-right:0;
    border-bottom:1px solid #dedbe2;
  }
  .gexauz-featured-item:last-child{border-bottom:0}
  .gexauz-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .gexauz-single-layout{grid-template-columns:1fr !important}
  .gexauz-single-share{position:static;flex-direction:row;align-items:center}
}
@media(max-width:520px){
  .gexauz-blog-grid{grid-template-columns:1fr !important}
  .gexauz-blog-hero{min-height:430px}
  .gexauz-blog-hero .gexauz-blog-wrap{padding:100px 0 70px}
  .gexauz-single-card{border-radius:18px !important;padding:24px !important}
}

.contact-status[hidden]{display:none !important;}

/* =========================================================
   GEXAUZ v2.7.1 — RESPONSIVE MENU FIX
========================================================= */

/* Never open desktop dropdowns from hover. */
.gexauz-primary-menu .menu-item-has-children:hover > .sub-menu,
.gexauz-primary-menu .menu-item-has-children:focus-within > .sub-menu{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate(-50%,-8px) !important;
}
.gexauz-primary-menu .menu-item-has-children.gexauz-open > .sub-menu{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

/* Arrow next to parent item is the only desktop child-menu trigger. */
.gexauz-primary-menu > .menu-item-has-children > a::after{
  margin-left:2px !important;
}
.gexauz-submenu-arrow{
  position:relative !important;
  z-index:3 !important;
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  margin-left:-1px !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  color:currentColor !important;
  cursor:pointer !important;
  display:inline-grid !important;
  place-items:center !important;
}
.gexauz-submenu-arrow::before{
  content:'⌄' !important;
  font-size:14px !important;
}
.gexauz-submenu-arrow::after{display:none !important}

/* Real mobile menu. */
@media(max-width:900px){
  .desktop-nav{display:none !important}
  .gexauz-menu-toggle{
    display:flex !important;
    position:relative !important;
    z-index:1005 !important;
  }
  .nav-actions .nav-proposal{display:none !important}

  .gexauz-mobile-menu{
    display:block !important;
    z-index:10000 !important;
    background:rgba(247,246,249,.98) !important;
    backdrop-filter:blur(24px) !important;
    -webkit-backdrop-filter:blur(24px) !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
  }

  .gexauz-mobile-menu-inner{
    min-height:100dvh !important;
    padding:76px 22px 32px !important;
  }

  .gexauz-mobile-menu-header{
    padding:0 52px 20px 4px !important;
    border-bottom:1px solid rgba(0,0,0,.08) !important;
  }

  .gexauz-mobile-menu-list{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
  }

  .gexauz-mobile-menu-list > li{
    position:relative !important;
    border-bottom:1px solid rgba(0,0,0,.09) !important;
  }

  .gexauz-mobile-menu-list > li > a{
    min-height:58px !important;
    padding:15px 58px 15px 4px !important;
    font-size:clamp(24px,7vw,36px) !important;
    line-height:1.1 !important;
  }

  .gexauz-mobile-menu-list .menu-item-has-children > a::after{
    display:none !important;
  }

  .gexauz-mobile-arrow{
    position:absolute !important;
    right:2px !important;
    top:10px !important;
    width:40px !important;
    height:40px !important;
    border:0 !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#6a2de8 !important;
    box-shadow:0 8px 22px rgba(30,20,50,.10) !important;
    display:grid !important;
    place-items:center !important;
    font-size:18px !important;
    line-height:1 !important;
    cursor:pointer !important;
    z-index:5 !important;
  }

  .gexauz-mobile-menu-list .menu-item-has-children.is-submenu-open > .gexauz-mobile-arrow{
    background:#6a2de8 !important;
    color:#fff !important;
    transform:rotate(180deg) !important;
  }

  .gexauz-mobile-menu-list .sub-menu{
    display:none !important;
    padding:0 0 12px 8px !important;
    margin:0 !important;
  }

  .gexauz-mobile-menu-list .menu-item-has-children.is-submenu-open > .sub-menu{
    display:block !important;
  }

  .gexauz-mobile-menu-list .sub-menu li{
    position:relative !important;
  }

  .gexauz-mobile-menu-list .sub-menu a{
    min-height:44px !important;
    padding:11px 14px !important;
    margin:4px 0 !important;
    border:0 !important;
    border-radius:12px !important;
    background:#eee9ff !important;
    color:#292331 !important;
    font-size:15px !important;
    font-weight:650 !important;
  }

  .gexauz-mobile-menu-list .sub-menu .sub-menu{
    padding-left:10px !important;
  }

  .gexauz-mobile-actions{
    padding:24px 4px 20px !important;
  }

  .gexauz-mobile-cta{
    width:100% !important;
    justify-content:center !important;
  }

  .gexauz-mobile-contact{
    display:flex !important;
    gap:22px !important;
    padding-top:18px !important;
  }

  .gexauz-mobile-close{
    position:absolute !important;
    top:18px !important;
    right:18px !important;
    width:44px !important;
    height:44px !important;
    border:1px solid rgba(0,0,0,.09) !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#111 !important;
    font-size:26px !important;
    line-height:1 !important;
    display:grid !important;
    place-items:center !important;
    z-index:10 !important;
  }
}

@media(min-width:901px){
  .gexauz-mobile-menu{display:none !important}
  .gexauz-menu-toggle{display:none !important}
  .gexauz-mobile-close{display:none !important}
}

/* v2.7.2 — product archive and empty-state */
.gexauz-product-archive{
  min-height:70vh;
  background:linear-gradient(180deg,#f7f6fa 0%,#fff 72%);
  padding:clamp(110px,12vw,170px) 0 90px;
}
.gexauz-product-archive-inner{max-width:1320px}
.gexauz-archive-intro{
  max-width:620px;
  margin:18px 0 42px;
  color:var(--muted);
  line-height:1.65;
}
.gexauz-product-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.gexauz-product-card{
  min-width:0;
  background:#fff;
  border:1px solid rgba(17,17,17,.08);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 18px 60px rgba(35,25,60,.08);
}
.gexauz-product-card-link{
  display:block;
  height:100%;
  color:inherit;
  text-decoration:none;
}
.gexauz-product-thumb{
  aspect-ratio:16/10;
  overflow:hidden;
  background:#eee9ff;
}
.gexauz-product-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.gexauz-product-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 70% 25%,#e4d8ff,transparent 40%),#f1edff;
  color:#6a2de8;
  font-size:42px;
  font-weight:900;
  letter-spacing:-.07em;
}
.gexauz-product-card-body{padding:24px}
.gexauz-product-card-body h2{
  margin:0;
  font-size:24px;
  line-height:1.08;
  letter-spacing:-.04em;
}
.gexauz-product-card-body p{
  margin:12px 0 20px;
  color:var(--muted);
  line-height:1.55;
}
.gexauz-product-card-arrow{
  color:#6a2de8;
  font-size:13px;
  font-weight:700;
}
.gexauz-product-empty{
  margin-top:45px;
  min-height:360px;
  padding:60px 30px;
  display:grid;
  place-items:center;
  text-align:center;
  background:#fff;
  border:1px solid rgba(17,17,17,.08);
  border-radius:28px;
  box-shadow:0 20px 70px rgba(35,25,60,.08);
}
.gexauz-product-empty-icon{
  width:58px;height:58px;
  display:grid;place-items:center;
  border-radius:18px;
  background:#eee8ff;
  color:#6a2de8;
  font-size:25px;
}
.gexauz-product-empty h2{margin:18px 0 8px}
.gexauz-product-empty p{max-width:600px;color:var(--muted);line-height:1.6}
.gexauz-product-empty .btn{margin-top:10px}
@media(max-width:900px){
  .gexauz-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .gexauz-product-archive{padding-top:100px}
  .gexauz-product-grid{grid-template-columns:1fr}
  .gexauz-product-card-body{padding:20px}
}

/* Ensure fallback/mobile menu is visible even if an older menu rule is present. */
@media(max-width:900px){
  .gexauz-mobile-fallback{display:flex !important;flex-direction:column !important}
}

/* =========================================================
   v2.7.3 — SIMPLE RWD MENU / SERVICE / PRODUCT LOOP
========================================================= */

/* No decorative menu icons. Only one simple down arrow. */
.gexauz-primary-menu .menu-item-has-children > a::before,
.gexauz-primary-menu .menu-item-has-children > a::after{ }
.gexauz-desktop-arrow{
  width:22px!important;height:22px!important;
  padding:0!important;margin-left:2px!important;
  border:0!important;background:transparent!important;
  color:inherit!important;display:inline-grid!important;
  place-items:center!important;cursor:pointer!important;
  font-size:13px!important;line-height:1!important;
}
.gexauz-desktop-arrow::before{content:'⌄'!important}
.gexauz-desktop-arrow span{display:none!important}
.gexauz-primary-menu .menu-item-has-children:hover > .sub-menu,
.gexauz-primary-menu .menu-item-has-children:focus-within > .sub-menu{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
.gexauz-primary-menu .menu-item-has-children.gexauz-open > .sub-menu{
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
}

/* Mobile = clean right drawer, no duplicated branding/icon system. */
@media(max-width:900px){
  .gexauz-mobile-menu{
    position:fixed!important;inset:0!important;
    width:100%!important;height:100dvh!important;
    transform:translateX(100%)!important;
    opacity:0!important;visibility:hidden!important;
    transition:transform .42s cubic-bezier(.77,0,.18,1),opacity .25s ease,visibility 0s linear .42s!important;
    background:#f8f7fb!important;
    overflow:hidden!important;
  }
  .gexauz-mobile-menu.is-open{
    transform:translateX(0)!important;
    opacity:1!important;visibility:visible!important;
    transition-delay:0s!important;
  }
  .gexauz-mobile-menu-inner{
    height:100dvh!important;min-height:0!important;
    overflow-y:auto!important;
    padding:78px 22px 34px!important;
    box-sizing:border-box!important;
  }
  .gexauz-mobile-menu-header{display:none!important}
  .gexauz-mobile-menu-list{
    display:flex!important;flex-direction:column!important;
    gap:0!important;margin:0!important;padding:0!important;
  }
  .gexauz-mobile-menu-list > li{
    position:relative!important;
    display:grid!important;grid-template-columns:1fr 44px!important;
    align-items:center!important;
    border-bottom:1px solid rgba(20,18,28,.10)!important;
  }
  .gexauz-mobile-menu-list > li > a{
    display:flex!important;align-items:center!important;
    min-height:64px!important;padding:14px 8px!important;
    font-size:22px!important;font-weight:700!important;
    color:#111!important;text-decoration:none!important;
  }
  .gexauz-mobile-arrow{
    position:static!important;
    width:36px!important;height:36px!important;
    border:1px solid rgba(106,45,232,.18)!important;
    border-radius:50%!important;
    background:#fff!important;color:#6a2de8!important;
    display:grid!important;place-items:center!important;
    font-size:16px!important;box-shadow:none!important;
    transition:transform .25s ease,background .2s ease,color .2s ease!important;
  }
  .gexauz-mobile-arrow span{display:block!important}
  .gexauz-mobile-menu-list .menu-item-has-children.gexauz-menu-open > .gexauz-mobile-arrow{
    transform:rotate(180deg)!important;background:#6a2de8!important;color:#fff!important;
  }
  .gexauz-mobile-menu-list .sub-menu{
    grid-column:1/-1!important;
    display:none!important;
    list-style:none!important;
    margin:0!important;padding:0 0 10px 10px!important;
  }
  .gexauz-mobile-menu-list .menu-item-has-children.gexauz-menu-open > .sub-menu{
    display:block!important;
  }
  .gexauz-mobile-menu-list .sub-menu li{
    border:0!important;
  }
  .gexauz-mobile-menu-list .sub-menu a{
    display:block!important;
    padding:12px 14px!important;
    margin:3px 0!important;
    border-radius:10px!important;
    background:#eee9ff!important;
    color:#24202d!important;
    font-size:15px!important;
    line-height:1.3!important;
  }
  .gexauz-mobile-menu-list .sub-menu .sub-menu{padding-left:8px!important}
  .gexauz-mobile-close{
    position:fixed!important;right:18px!important;top:18px!important;
    z-index:20!important;width:48px!important;height:48px!important;
    border:1px solid rgba(0,0,0,.10)!important;border-radius:50%!important;
    background:#fff!important;color:#111!important;
    display:grid!important;place-items:center!important;
    font-size:28px!important;line-height:1!important;
  }
}

/* Homepage service cards: image-free, matching the service archive UI. */
.services .service-card-media{display:none!important}
.services .stack-card{overflow:hidden!important}
.services .stack-body{margin-top:auto!important}

/* Service archive uses the exact homepage card language. */
.gexauz-services-archive{
  padding:130px 0 100px;
  background:#f7f6fa;
  min-height:70vh;
}
.gexauz-service-archive-stack{
  max-width:1180px;
  margin:52px auto 0;
  display:grid;
  gap:18px;
}
.service-archive-card{min-height:260px!important}
.service-archive-card .stack-desc{max-width:760px!important}
.service-archive-card:hover{transform:perspective(1000px) rotateX(1deg) rotateY(-1deg) translateY(-4px)!important}

/* Homepage products: image-only landscape infinite-style card track. */
.products-home-image-loop{background:#f7f6fa!important}
.products-home-loop-head{margin-bottom:35px!important}
.products-home-loop{overflow:hidden;position:relative;width:100%}
.products-home-loop-track{
  display:flex;width:max-content;gap:22px;
  will-change:transform;
  animation:gexauzProductInfinite 34s linear infinite;
}
.products-home-image-card{
  display:block;width:min(72vw,720px);
  flex:0 0 min(72vw,720px);
  text-decoration:none;color:inherit;
}
.products-home-image-frame{
  position:relative;
  aspect-ratio:16/9;
  border-radius:26px;
  overflow:hidden;
  background:#eee9ff;
  border:1px solid rgba(106,45,232,.12);
  box-shadow:0 18px 50px rgba(30,20,50,.10);
}
.products-home-image-frame img{
  display:block;width:100%;height:100%;
  object-fit:cover;
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}
.products-home-image-card:hover img{transform:scale(1.035)}
.products-home-image-title{
  position:absolute;left:18px;bottom:18px;
  padding:10px 15px;border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#111;font-size:14px;font-weight:750;
  backdrop-filter:blur(10px);
}
@keyframes gexauzProductInfinite{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:700px){
  .products-home-image-card{width:86vw;flex-basis:86vw}
  .products-home-image-frame{border-radius:20px}
}
@media(prefers-reduced-motion:reduce){
  .products-home-loop-track{animation:none!important}
}

/* Product homepage: image only, no labels/text on cards. */
.products-home-image-title{display:none!important}

/* =========================================================
   v2.7.4 — FULL-WIDTH BLOG / FULLSCREEN PRODUCT PANELS / FAQ
========================================================= */

/* Blog single: use the full site container, not a narrow article card. */
.gexauz-single-post{
  width:100%;
  max-width:none!important;
  padding:120px 0 100px;
  background:#f7f6fa;
}
.gexauz-single-card{
  width:min(100% - 48px, 1440px)!important;
  max-width:1440px!important;
  margin:0 auto!important;
  background:#fff;
  border:1px solid rgba(17,17,17,.07);
  border-radius:28px;
  overflow:hidden;
}
.gexauz-single-header{
  width:min(100% - 80px,1180px)!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:80px 0 48px!important;
}
.gexauz-single-featured{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  aspect-ratio:21/9;
  overflow:hidden;
}
.gexauz-single-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.gexauz-single-layout{
  width:min(100% - 80px,1180px)!important;
  max-width:1180px!important;
  margin:0 auto!important;
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  gap:40px;
  padding:65px 0 90px;
}
.gexauz-entry-content{
  min-width:0;
  font-size:18px;
  line-height:1.75;
}
.gexauz-entry-content img{
  max-width:100%;
  height:auto;
  border-radius:18px;
}
@media(max-width:700px){
  .gexauz-single-post{padding:90px 0 60px}
  .gexauz-single-card{width:calc(100% - 24px)!important;border-radius:20px}
  .gexauz-single-header{width:calc(100% - 40px)!important;padding:55px 0 35px!important}
  .gexauz-single-featured{aspect-ratio:16/10}
  .gexauz-single-layout{
    width:calc(100% - 40px)!important;
    grid-template-columns:1fr;
    gap:20px;
    padding:42px 0 55px;
  }
}

/* Homepage product presentation: GSAP pinned, fullscreen, one panel at a time. */
.products-home-fullscreen{
  position:relative;
  width:100%;
  background:#0b0b0d;
}
.products-loop-panel{
  min-height:100vh;
  min-height:100svh;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  padding:110px 32px 70px;
  background:#0b0b0d;
  color:#fff;
}
.products-loop-panel:nth-child(odd){background:#101013}
.products-loop-panel-inner{
  width:min(92vw,1280px);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:24px;
}
.products-loop-image-wrap{
  width:min(88vw,1120px);
  aspect-ratio:16/9;
  border-radius:28px;
  overflow:hidden;
  background:#19191d;
  box-shadow:0 28px 90px rgba(0,0,0,.35);
}
.products-loop-image-wrap img{
  display:block;width:100%;height:100%;object-fit:cover;
}
.products-loop-image-link{display:block;width:100%;height:100%}
.products-loop-caption{
  width:min(88vw,1120px);
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
}
.products-loop-caption .eyebrow{color:#a875ff;margin:0}
.products-loop-caption h2{
  margin:0;
  font-size:clamp(34px,6vw,86px);
  line-height:.95;
  letter-spacing:-.06em;
  color:#fff;
}
.products-loop-caption .text-cta{
  color:#fff;
  white-space:nowrap;
  border-color:rgba(255,255,255,.22);
}
@media(max-width:700px){
  .products-loop-panel{padding:90px 18px 50px}
  .products-loop-image-wrap{width:94vw;border-radius:18px}
  .products-loop-caption{
    width:94vw;
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }
  .products-loop-caption h2{font-size:clamp(36px,13vw,58px)}
}

/* FAQ */
.home-faq{
  padding:120px 0;
  background:#f7f6fa;
}
.home-faq-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:90px;
  align-items:start;
}
.home-faq-intro p{
  max-width:430px;
  color:var(--muted);
  line-height:1.65;
}
.home-faq-list{border-top:1px solid rgba(17,17,17,.14)}
.home-faq-item{
  border-bottom:1px solid rgba(17,17,17,.14);
}
.home-faq-item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  gap:25px;
  align-items:center;
  padding:28px 4px;
  font-size:20px;
  font-weight:750;
}
.home-faq-item summary::-webkit-details-marker{display:none}
.home-faq-item summary b{
  flex:0 0 36px;
  width:36px;height:36px;
  border-radius:50%;
  display:grid;place-items:center;
  background:#fff;
  color:#6a2de8;
  border:1px solid rgba(106,45,232,.16);
  font-size:22px;
  font-weight:400;
  transition:transform .25s ease,background .25s ease,color .25s ease;
}
.home-faq-item[open] summary b{
  transform:rotate(45deg);
  background:#6a2de8;color:#fff;
}
.home-faq-answer{
  padding:0 60px 28px 4px;
  color:var(--muted);
  line-height:1.7;
}
.home-faq-answer p{margin:0}
@media(max-width:800px){
  .home-faq{padding:80px 0}
  .home-faq-grid{grid-template-columns:1fr;gap:42px}
  .home-faq-item summary{font-size:17px;padding:22px 2px}
  .home-faq-answer{padding:0 40px 24px 2px}
}

/* =========================================================
   v2.7.5 — HERO SWIPE / BENTO PROJECTS / GALLERY GRID / BLOG
========================================================= */

/* One functional desktop arrow — remove every legacy arrow/pseudo marker. */
.gexauz-desktop-arrow::before{content:none!important}
.gexauz-primary-menu .menu-item-has-children>a::after{content:none!important;display:none!important}
.gexauz-primary-menu .menu-item-has-children>a:after{content:none!important;display:none!important}
.gexauz-mobile-menu .menu-item-has-children>a::after{content:none!important;display:none!important}
.gexauz-mobile-menu .menu-item-has-children>a:after{content:none!important;display:none!important}

/* Hero: three independent text screens with swipe/drag support. */
.hero-copy-slider{
  position:relative;
  width:100%;
  min-height:650px;
  overflow:hidden;
  touch-action:pan-y;
  cursor:grab;
}
.hero-copy-slider.is-dragging{cursor:grabbing}
.hero-copy-slide{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(50px);
}
.hero-copy-slide.is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(0);
}
.hero-copy-slide .hero-demo-kicker,
.hero-copy-slide .hero-demo-title,
.hero-copy-slide .hero-demo-lead,
.hero-copy-slide .hero-demo-actions{
  will-change:transform,opacity,filter;
}
.hero-copy-slide .hero-demo-title{margin-top:22px}
.hero-copy-slide .hero-demo-lead{max-width:540px}
.hero-slide-dots{
  position:absolute;
  left:0;
  bottom:4px;
  display:flex;
  gap:8px;
  z-index:10;
}
.hero-slide-dots button{
  width:34px;height:4px;
  border:0;border-radius:99px;
  padding:0;background:rgba(106,45,232,.16);
  cursor:pointer;
}
.hero-slide-dots button.is-active{background:#6a2de8;width:54px}
@media(max-width:900px){
  .hero-copy-slider{min-height:600px}
  .hero-copy-slide .hero-demo-title{font-size:clamp(48px,13vw,78px)}
}
@media(max-width:600px){
  .hero-copy-slider{min-height:560px}
  .hero-slide-dots{bottom:0}
}

/* Homepage projects: mixed portrait/landscape editorial bento grid. */
.projects-bento{width:100%;overflow:visible}
.projects-bento .proj-grid{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  grid-auto-rows:minmax(95px,auto);
  gap:18px!important;
  width:100%!important;
  overflow:visible!important;
}
.projects-bento .proj-card{
  grid-column:span 4;
  min-width:0;
  transform-origin:center;
}
.projects-bento .proj-card:nth-child(1){grid-column:span 7;grid-row:span 5}
.projects-bento .proj-card:nth-child(2){grid-column:span 5;grid-row:span 4}
.projects-bento .proj-card:nth-child(3){grid-column:span 5;grid-row:span 5}
.projects-bento .proj-card:nth-child(4){grid-column:span 7;grid-row:span 4}
.projects-bento .proj-card:nth-child(5){grid-column:span 4;grid-row:span 4}
.projects-bento .proj-card:nth-child(6){grid-column:span 4;grid-row:span 5}
.projects-bento .proj-card:nth-child(7){grid-column:span 4;grid-row:span 4}
.projects-bento .proj-card:nth-child(8){grid-column:span 6;grid-row:span 5}
.projects-bento .proj-card:nth-child(9){grid-column:span 6;grid-row:span 4}
.projects-bento .proj-card:nth-child(10){grid-column:span 12;grid-row:span 4}
.projects-bento .proj-thumb{
  height:100%!important;
  min-height:100%!important;
  aspect-ratio:auto!important;
  overflow:hidden;
}
.projects-bento .proj-thumb img{
  width:100%;height:100%;
  object-fit:cover!important;
  display:block;
}
.projects-bento .proj-card .project-link{
  display:block;
  height:100%;
}
.projects-bento .proj-name{
  position:absolute!important;
  left:16px;right:16px;bottom:16px;
  z-index:2;
  padding:13px 15px;
  border-radius:14px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
}
@media(max-width:900px){
  .projects-bento .proj-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-auto-rows:120px;
  }
  .projects-bento .proj-card,
  .projects-bento .proj-card:nth-child(n){
    grid-column:span 3;
    grid-row:span 3;
  }
  .projects-bento .proj-card:nth-child(1),
  .projects-bento .proj-card:nth-child(4),
  .projects-bento .proj-card:nth-child(8),
  .projects-bento .proj-card:nth-child(10){grid-column:span 6;grid-row:span 4}
}
@media(max-width:560px){
  .projects-bento .proj-grid{
    grid-template-columns:1fr!important;
    grid-auto-rows:280px;
    gap:14px!important;
  }
  .projects-bento .proj-card,
  .projects-bento .proj-card:nth-child(n){
    grid-column:1!important;
    grid-row:span 1!important;
  }
  .projects-bento .proj-thumb{min-height:280px!important}
  .projects-bento .proj-name{left:10px;right:10px;bottom:10px}
}

/* Gallery: fixed responsive grid — no horizontal scrollbar. */
.home-gallery{overflow:hidden!important}
.home-gallery-grid{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  overflow:visible!important;
}
.home-gallery-card{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  display:block!important;
  text-align:left;
}
.home-gallery-card-image{
  display:block!important;
  width:100%!important;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:20px;
}
.home-gallery-card-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
@media(max-width:900px){
  .home-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .home-gallery-grid{grid-template-columns:1fr!important}
}

/* Blog cards: image + metadata + title + CTA, no excerpt. */
.gexauz-blog-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
}
.gexauz-blog-excerpt{display:none!important}
.gexauz-blog-card{
  min-width:0;
  background:#fff;
  border:1px solid rgba(17,17,17,.08);
  border-radius:20px;
  overflow:hidden;
}
.gexauz-blog-thumb{
  width:100%!important;
  aspect-ratio:4/3!important;
  height:auto!important;
  object-fit:cover!important;
  display:block!important;
}
@media(max-width:1000px){.gexauz-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.gexauz-blog-grid{grid-template-columns:1fr!important}}

/* Blog single: editorial full-width visual, clean reading container. */
.gexauz-single-card{
  box-shadow:0 24px 70px rgba(25,18,35,.07);
}
.gexauz-single-title{
  max-width:1050px!important;
  font-size:clamp(44px,7vw,92px)!important;
  line-height:.94!important;
  letter-spacing:-.055em!important;
}
.gexauz-entry-content{
  font-size:18px!important;
  line-height:1.8!important;
}

/* =========================================================
   v2.7.6 — MOTION PATH / HERO STATES / BLOG REFINEMENT / FOOTER WIDGETS
========================================================= */

/* Homepage products: supplied "One Task at a Time" visual becomes the atmosphere. */
.products-loop-panel{isolation:isolate}
.products-loop-task-visual{
  position:absolute;inset:0;z-index:-1;overflow:hidden;
  opacity:.24;
}
.products-loop-task-visual img{
  width:100%;height:100%;object-fit:cover;
  filter:saturate(1.05) contrast(1.02);
  transform:scale(1.05);
}
.products-loop-panel-inner{position:relative;z-index:2}
.products-loop-image-wrap{
  border:1px solid rgba(255,255,255,.16);
}

/* Projects: exactly three columns, mixed portrait/landscape, three visual rows. */
.projects-bento .proj-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-rows:auto!important;
  gap:18px!important;
}
.projects-bento .proj-card,
.projects-bento .proj-card:nth-child(n){
  grid-column:auto!important;
  grid-row:auto!important;
  min-width:0;
}
.projects-bento .proj-card:nth-child(1),
.projects-bento .proj-card:nth-child(5),
.projects-bento .proj-card:nth-child(9){aspect-ratio:16/10}
.projects-bento .proj-card:nth-child(2),
.projects-bento .proj-card:nth-child(4),
.projects-bento .proj-card:nth-child(8){aspect-ratio:4/5}
.projects-bento .proj-card:nth-child(3),
.projects-bento .proj-card:nth-child(6),
.projects-bento .proj-card:nth-child(7){aspect-ratio:1/1}
.projects-bento .proj-thumb,
.projects-bento .proj-thumb img{height:100%!important;min-height:0!important}
.projects-bento .proj-name{font-size:14px}
@media(max-width:800px){
  .projects-bento .proj-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .projects-bento .proj-card:nth-child(n){aspect-ratio:4/3}
}
@media(max-width:520px){
  .projects-bento .proj-grid{grid-template-columns:1fr!important}
  .projects-bento .proj-card:nth-child(n){aspect-ratio:4/3}
}

/* Same visual color for every What We Do card. */
.services .stack-card,
.services .stack-card.dark,
.services .stack-card[style]{background:var(--svc-1)!important;color:#111!important}
.services .stack-card .stack-desc{color:rgba(17,17,17,.62)!important}
.services .stack-card .stack-icon,
.services .stack-card .service-external-link{
  background:#fff!important;color:#6a2de8!important;
}

/* Blog: compact hero and no artificial empty area. */
.gexauz-blog-hero{min-height:360px!important;padding:105px 0 65px!important}
.gexauz-blog-intro{max-width:620px!important;margin-top:18px!important}
.gexauz-blog-categories{padding:34px 0 72px!important}
.gexauz-blog-featured{display:none!important}
.gexauz-blog-recent{padding-top:70px!important}
.gexauz-category-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
.gexauz-category-card{
  min-height:130px!important;
  padding:24px!important;
  border-radius:22px!important;
  color:#fff!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}
.gexauz-category-card span{font-size:24px;font-weight:800;letter-spacing:-.03em}
.gexauz-category-card strong{font-size:12px}
.blog-cat-purple{background:linear-gradient(135deg,#5f21ff,#a46cff)!important}
.blog-cat-pink{background:linear-gradient(135deg,#a12dff,#ff68c4)!important}
.blog-cat-orange{background:linear-gradient(135deg,#ff5b2d,#ffad43)!important}
.blog-cat-violet{background:linear-gradient(135deg,#321078,#7a32ff)!important}
.blog-cat-blue{background:linear-gradient(135deg,#3d5afe,#7f8cff)!important}
.blog-cat-lime{background:linear-gradient(135deg,#5d7d16,#b9d96b)!important}
.gexauz-blog-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.gexauz-blog-card-body{padding:18px!important}
.gexauz-blog-card-title{margin:10px 0 12px!important}
.gexauz-pagination{margin-top:48px!important}
.gexauz-pagination ul{
  display:flex!important;justify-content:center;align-items:center;gap:8px;
  list-style:none!important;padding:0!important;margin:0!important;flex-wrap:wrap;
}
.gexauz-pagination li{margin:0!important}
.gexauz-pagination a,.gexauz-pagination span{
  min-width:42px;height:42px;padding:0 14px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px!important;
  border:1px solid rgba(17,17,17,.12);
  text-decoration:none!important;
}
.gexauz-pagination .current{background:#6a2de8;color:#fff;border-color:#6a2de8}
.category-gradient-pill{
  display:inline-flex;margin:20px 0 12px;
  padding:10px 15px;border-radius:999px;
  background:linear-gradient(135deg,#6a2de8,#c68aff);
  color:#fff;font-size:12px;font-weight:800;
  letter-spacing:.08em;text-transform:uppercase;
}
.category-hero{min-height:320px!important}
.category-chip{
  padding:5px 9px;border-radius:999px;
  color:#fff!important;
  background:linear-gradient(135deg,#6a2de8,#b06dff);
}

/* Single blog: category button, horizontal share, compact sections. */
.gexauz-single-category{
  display:inline-flex!important;
  margin:18px 0 16px!important;
  padding:9px 14px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#6a2de8,#b06dff)!important;
  font-size:12px!important;font-weight:800!important;
  letter-spacing:.08em;text-transform:uppercase;
  text-decoration:none!important;
}
.gexauz-single-layout{grid-template-columns:1fr!important;gap:24px!important}
.gexauz-single-share{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  padding:0 0 14px!important;
  border-bottom:3px solid rgba(106,45,232,.16)!important;
}
.gexauz-single-share span{
  margin-right:8px!important;
  font-size:12px!important;font-weight:800!important;
  text-transform:uppercase;letter-spacing:.08em;
}
.gexauz-single-share a{
  width:34px!important;height:34px!important;
  display:inline-flex!important;align-items:center;justify-content:center;
  border-radius:50%!important;
  background:#f0eaff!important;color:#6a2de8!important;
  text-decoration:none!important;
}
.single-related-section{
  width:min(100% - 80px,1180px);
  margin:0 auto;
  padding:85px 0 0;
}
.single-section-head h2{
  margin:10px 0 28px;
  font-size:clamp(34px,4vw,58px);
  line-height:.98;
  letter-spacing:-.045em;
}
.single-post-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.single-post-card{
  min-width:0;
  background:#fff;
  border:1px solid rgba(17,17,17,.08);
  border-radius:18px;
  overflow:hidden;
}
.single-post-image{
  display:block;width:100%;aspect-ratio:4/3;overflow:hidden;
}
.single-post-image img{display:block;width:100%;height:100%;object-fit:cover}
.single-post-card-body{padding:16px}
.single-post-cat{
  display:inline-flex;
  padding:5px 8px;border-radius:999px;
  background:linear-gradient(135deg,#6a2de8,#b06dff);
  color:#fff;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
}
.single-post-card h3{
  font-size:19px;line-height:1.1;letter-spacing:-.025em;margin:12px 0;
}
.single-post-card h3 a{text-decoration:none;color:inherit}
.single-most-viewed{padding-bottom:10px}
.single-prev-next{
  width:min(100% - 80px,1180px);
  margin:70px auto 0;
  padding:25px 0;
  border-top:1px solid rgba(17,17,17,.1);
  display:flex;justify-content:space-between;gap:20px;
}
.single-prev-next a{
  text-decoration:none;font-weight:750;color:#111;
}
@media(max-width:900px){
  .gexauz-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .single-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .single-related-section,.single-prev-next{width:calc(100% - 40px)}
  .gexauz-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .gexauz-blog-hero{min-height:300px!important;padding:90px 0 50px!important}
  .gexauz-blog-grid{grid-template-columns:1fr!important}
  .gexauz-category-grid{grid-template-columns:1fr!important}
  .single-post-grid{grid-template-columns:1fr}
  .single-prev-next{flex-direction:column}
}

/* Footer: widget columns automatically fill rows; brand is always first. */
.gexauz-footer-widgets{
  display:grid;
  grid-template-columns:1.25fr repeat(4,minmax(0,1fr));
  gap:42px 55px;
  align-items:start;
}
.gexauz-footer-widgets .footer-widget,
.gexauz-footer-widgets .footer-widget-column{min-width:0}
.footer-brand-widget h3,
.footer-widget-title{
  margin:0 0 16px;
  color:#fff;font-size:13px;
  text-transform:uppercase;letter-spacing:.1em;
}
.footer-brand-widget p{color:rgba(255,255,255,.6);line-height:1.65;max-width:270px}
.footer-widget ul{list-style:none;margin:0;padding:0}
.footer-widget li{margin:0 0 10px}
.footer-widget a{color:rgba(255,255,255,.68);text-decoration:none}
.footer-widget a:hover{color:#fff}
.gexauz-footer-socials{display:flex;gap:8px;margin-top:20px}
.gexauz-footer-socials .social-icon{
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(255,255,255,.08);color:#fff;text-decoration:none;
}
.gexauz-footer-brand-row{
  margin-top:70px;padding-top:28px;
  border-top:1px solid rgba(255,255,255,.1);
}
.gexauz-footer-brand{
  font-size:clamp(90px,16vw,250px);
  font-weight:900;line-height:.8;
  letter-spacing:-.08em;color:#fff;
}
.gexauz-footer-bottom{
  display:flex;justify-content:space-between;gap:20px;
  margin-top:45px;padding-top:18px;
  border-top:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.45);font-size:11px;
}
@media(max-width:1050px){
  .gexauz-footer-widgets{grid-template-columns:1.2fr repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .gexauz-footer-widgets{grid-template-columns:1fr 1fr;gap:28px}
  .footer-brand-widget{grid-column:1/-1}
  .gexauz-footer-brand{font-size:22vw}
  .gexauz-footer-bottom{flex-direction:column}
}

/* =========================================================
   v2.7.7 — SINGLE HERO / PRODUCT HERO / UNIVERSAL CTA / FAQ
========================================================= */

/* Homepage: one supplied hero image only — no carousel/3-screen hero. */
.homepage-static-hero{
  position:relative;
  width:100%;
  min-height:clamp(520px,58vw,860px);
  background:#05020c;
  overflow:hidden;
}
.homepage-static-hero-media{
  width:100%;
  height:100%;
  min-height:inherit;
}
.homepage-static-hero img{
  display:block;
  width:100%;
  height:100%;
  min-height:inherit;
  object-fit:cover;
  object-position:center;
}
@media(max-width:700px){
  .homepage-static-hero{min-height:520px}
  .homepage-static-hero img{object-position:center}
}

/* Product page hero: editorial split with supplied product showcase. */
.gex-product-detail .product-hero-redesign{
  min-height:720px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 76% 48%,rgba(132,71,255,.16),transparent 34%),
    linear-gradient(135deg,#fff 0%,#fbf9ff 58%,#f3eeff 100%);
  overflow:hidden;
}
.product-hero-redesign-inner{
  display:grid!important;
  grid-template-columns:minmax(340px,.78fr) minmax(520px,1.22fr);
  align-items:center;
  gap:30px;
  min-height:720px;
}
.product-hero-copy{position:relative;z-index:3;padding:70px 0}
.product-hero-copy h1{
  max-width:650px;
  font-size:clamp(54px,6vw,96px)!important;
  line-height:.92!important;
  letter-spacing:-.065em!important;
  margin:20px 0 24px!important;
}
.product-hero-copy .accent{display:block;color:#6a2de8}
.product-hero-copy .product-sub{
  max-width:570px;
  font-size:18px;
  line-height:1.65;
  color:#68636f;
}
.product-hero-showcase{
  position:relative;
  width:min(720px,55vw);
  justify-self:end;
  margin-right:-7vw;
  filter:drop-shadow(0 35px 70px rgba(61,35,116,.18));
}
.product-hero-showcase::before{
  content:"";
  position:absolute;
  inset:12% 5%;
  background:radial-gradient(circle,rgba(117,63,255,.2),transparent 67%);
  filter:blur(20px);
}
.product-hero-showcase img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  mix-blend-mode:multiply;
}
.product-hero-mini{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:36px;
  padding-top:20px;
  border-top:1px solid rgba(17,16,22,.1);
  max-width:360px;
}
.product-hero-mini span{
  font:700 10px/1 monospace;
  letter-spacing:.13em;
  color:#8a8590;
}
.product-hero-mini strong{
  font-size:14px;
  letter-spacing:-.01em;
}
@media(max-width:1050px){
  .product-hero-redesign-inner{
    grid-template-columns:1fr;
    min-height:auto;
    padding-top:70px;
  }
  .product-hero-copy{padding:0}
  .product-hero-showcase{
    width:min(760px,100%);
    justify-self:center;
    margin:0 auto -40px;
  }
}
@media(max-width:600px){
  .gex-product-detail .product-hero-redesign{min-height:0}
  .product-hero-redesign-inner{padding-top:50px}
  .product-hero-copy h1{font-size:54px!important}
  .product-hero-showcase{width:125%;margin-left:-12%;margin-right:-13%}
}

/* Product FAQ: clean, spacious, smooth-looking accordion. */
.gex-product-detail .product-faq-section{
  width:100%;
  margin:0;
  padding:110px 0 120px;
  background:linear-gradient(180deg,#f8f6fc 0%,#fff 100%);
}
.product-faq-layout{
  display:grid;
  grid-template-columns:minmax(280px,.7fr) minmax(480px,1.3fr);
  gap:90px;
  align-items:start;
}
.product-faq-intro{
  position:sticky;
  top:110px;
}
.product-faq-intro h2{
  font-size:clamp(40px,4.5vw,64px);
  line-height:.95;
  letter-spacing:-.055em;
  margin:18px 0;
}
.product-faq-intro p{
  color:#77727d;
  line-height:1.65;
  max-width:360px;
}
.product-faq-list{display:flex;flex-direction:column;gap:10px}
.product-faq-item{
  background:#fff;
  border:1px solid rgba(17,16,22,.09);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 8px 30px rgba(34,20,61,.035);
}
.product-faq-question{
  width:100%;
  min-height:76px;
  padding:20px 24px;
  border:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  text-align:left;
  cursor:pointer;
  font:700 16px/1.35 inherit;
  color:#17151b;
}
.product-faq-question .faq-plus{
  flex:0 0 34px;
  width:34px;height:34px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#f0eaff;
  color:#6a2de8;
  font-size:22px;
  font-weight:400;
  transition:transform .3s ease,background .3s ease;
}
.product-faq-item.is-open .faq-plus{
  transform:rotate(45deg);
  background:#6a2de8;
  color:#fff;
}
.product-faq-answer{
  padding:0 24px 24px;
  color:#6c6873;
  line-height:1.75;
}
.product-faq-answer p{margin:0;max-width:720px}
@media(max-width:800px){
  .product-faq-layout{grid-template-columns:1fr;gap:40px}
  .product-faq-intro{position:static}
}

/* Universal CTA: shown on every page except Contact. */
.site-global-cta{
  padding:110px 24px;
  background:
    radial-gradient(circle at 78% 20%,rgba(163,105,255,.45),transparent 30%),
    linear-gradient(135deg,#11081d 0%,#32105e 54%,#6a2de8 100%);
  color:#fff;
  overflow:hidden;
  position:relative;
}
.site-global-cta::before{
  content:"";
  position:absolute;
  width:480px;height:480px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  right:-100px;top:-180px;
}
.site-global-cta-inner{
  position:relative;z-index:1;
  width:min(1180px,100%);
  margin:0 auto;
}
.site-global-cta-tag{
  display:flex;align-items:center;gap:9px;
  font:700 11px/1 monospace;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.68);
}
.site-global-cta-tag span{
  width:7px;height:7px;border-radius:50%;
  background:#b993ff;
  box-shadow:0 0 15px rgba(185,147,255,.8);
}
.site-global-cta h2{
  max-width:850px;
  margin:20px 0 34px;
  font-size:clamp(42px,6vw,82px);
  line-height:.94;
  letter-spacing:-.06em;
}
.site-global-cta .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 22px;
}
@media(max-width:600px){
  .site-global-cta{padding:80px 20px}
  .site-global-cta h2{font-size:46px}
}

/* =========================================================
   GEXAUZ v2.7.8 — FINAL VISUAL / RWD / TYPOGRAPHY OVERRIDES
========================================================= */

/* Global viewport: no accidental horizontal scrollbar or constrained footer. */
html,body{width:100%;max-width:100%;overflow-x:hidden!important}
body{margin:0!important}
.gexauz-footer{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;overflow:hidden!important}
.gexauz-footer .footer-inner{width:100%!important;max-width:none!important;box-sizing:border-box!important;padding-left:clamp(20px,5vw,80px)!important;padding-right:clamp(20px,5vw,80px)!important}
.site-global-cta{width:100vw!important;margin-left:calc(50% - 50vw)!important;box-sizing:border-box!important}

/* Keep only the designed page scrollbar; eliminate nested/section horizontal bars. */
section,.gexauz-blog-page,.gexauz-single-post,.gex-product-detail,.gexauz-about-page,.gexauz-contact-page{max-width:100%;overflow-x:clip}
.home-gallery-grid,.projects-bento .proj-grid,.products-home,.services{overflow-x:clip!important}

/* Homepage restored hero: the previous GEXAUZ orbital hero, no One Task image. */
.hero-demo{width:100%;max-width:none}
.hero-demo-stage{min-width:0}
.hero-demo-card img{object-fit:cover}

/* Homepage products: gradient atmosphere + landscape product presentation. */
.products-home.products-home-fullscreen{
  background:
    radial-gradient(circle at 18% 22%,rgba(142,99,255,.16),transparent 27%),
    radial-gradient(circle at 84% 70%,rgba(239,142,239,.13),transparent 28%),
    linear-gradient(135deg,#f8f7fb 0%,#eee9ff 52%,#f9f7fc 100%)!important;
}
.products-loop-panel{
  min-height:100svh!important;
  background:
    radial-gradient(circle at 70% 30%,rgba(120,74,240,.11),transparent 35%),
    linear-gradient(135deg,#f8f7fb,#eee9ff 54%,#faf9fc)!important;
  color:#111!important;
}
.products-loop-panel:nth-child(even){
  background:
    radial-gradient(circle at 22% 34%,rgba(217,118,255,.13),transparent 33%),
    linear-gradient(135deg,#fbf9fd,#f0eaff 58%,#faf9fc)!important;
}
.products-loop-task-visual{display:none!important}
.products-loop-panel-inner{
  width:min(1120px,calc(100% - 44px))!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr)!important;
  gap:50px!important;
  align-items:center!important;
}
.products-loop-image-wrap{
  order:1!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  min-height:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:30px!important;
  background:#fff!important;
  box-shadow:0 35px 90px rgba(63,36,111,.16)!important;
}
.products-loop-image-wrap img{
  display:block!important;
  width:100%!important;height:100%!important;
  object-fit:cover!important;
}
.products-loop-caption{
  order:2!important;
  color:#111!important;
}
.products-loop-caption .eyebrow{color:#6a2de8!important}
.products-loop-caption h2{
  margin:14px 0 24px!important;
  font-size:clamp(42px,5vw,82px)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
}
.products-loop-caption .text-cta{color:#6a2de8!important}
.products-loop-placeholder{
  display:grid!important;place-items:center!important;
}
.products-loop-placeholder-inner{
  display:flex;flex-direction:column;gap:15px;align-items:center;text-align:center;
}
.products-loop-placeholder-inner strong{
  font-size:clamp(42px,6vw,76px);letter-spacing:-.055em;line-height:.9;
}
@media(max-width:800px){
  .products-loop-panel-inner{grid-template-columns:1fr!important;gap:30px!important}
  .products-loop-caption{order:2!important}
  .products-loop-image-wrap{order:1!important}
}

/* Product showcase v2.7.29 — alternating editorial reference layout. */
.products-home.products-home-fullscreen{background:#eef1ec!important}
.products-loop-panel,.products-loop-panel:nth-child(even),.products-loop-panel:nth-child(odd){min-height:100svh!important;background:#eef1ec!important;color:#151515!important}
.products-loop-panel-inner{width:min(1000px,calc(100% - 48px))!important;min-height:100svh!important;margin:0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:72px!important;align-items:center!important}
.products-loop-caption{order:1!important;max-width:510px!important;color:#151515!important}
.products-loop-panel--image-left .products-loop-caption{order:2!important}
.products-loop-caption .eyebrow{color:#9da39b!important;font-size:12px!important;letter-spacing:.22em!important;text-transform:uppercase!important}
.products-loop-caption .star{color:#6f35ed!important}
.products-loop-caption h2{margin:14px 0 18px!important;font-size:clamp(48px,5vw,76px)!important;line-height:.94!important;letter-spacing:-.055em!important;font-weight:500!important;color:#151515!important}
.products-loop-description{max-width:470px!important;color:#777d79!important;font-size:15px!important;line-height:1.55!important;margin:0 0 22px!important}
.products-loop-trusted strong{color:#777d79!important;font-size:13px!important}
.products-loop-tags span{background:rgba(255,255,255,.42)!important;border:1px solid rgba(30,30,30,.08)!important;color:#777d79!important}
.products-loop-caption .text-cta{display:inline-flex!important;margin-top:22px!important;color:#222!important;border-bottom:1px solid #222!important;padding-bottom:3px!important}
.products-loop-image-wrap{order:2!important;position:relative!important;width:min(100%,500px)!important;aspect-ratio:1.38!important;justify-self:end!important;overflow:visible!important;border:0!important;border-radius:25px!important;background:#176e6d!important;box-shadow:none!important;isolation:isolate!important}
.products-loop-panel--image-left .products-loop-image-wrap{order:1!important;justify-self:start!important;background:#a0e96a!important}
.products-loop-image-wrap::before{content:"";position:absolute;z-index:-2;left:7%;right:7%;bottom:-24px;height:28%;border-radius:0 0 24px 24px;background:linear-gradient(90deg,#ff9f93,#ff8fc8,#d2a8ff)!important}
.products-loop-panel--image-left .products-loop-image-wrap::before{background:linear-gradient(90deg,#3d0d2f,#8c1c72,#a9b8ff)!important}
.products-loop-image-wrap::after{content:"";position:absolute;inset:0;border-radius:25px;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 50%);pointer-events:none;z-index:2}
.products-loop-image-wrap img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:25px!important;box-shadow:0 24px 45px rgba(28,35,28,.10)!important}
.products-loop-placeholder{display:grid!important;place-items:center!important}
@media(max-width:800px){
.products-loop-panel-inner{width:min(92%,620px)!important;min-height:auto!important;padding:82px 0 70px!important;grid-template-columns:1fr!important;gap:48px!important}
.products-loop-caption,.products-loop-panel--image-left .products-loop-caption{order:2!important;max-width:none!important}
.products-loop-image-wrap,.products-loop-panel--image-left .products-loop-image-wrap{order:1!important;width:100%!important;justify-self:center!important}
.products-loop-caption h2{font-size:clamp(42px,12vw,62px)!important}.products-loop-panel{min-height:auto!important}}

/* Product detail hero: use the same GEXAUZ gradient language, not an image background. */
.gex-product-detail .product-hero-redesign{
  background:
    radial-gradient(circle at 82% 24%,rgba(185,142,255,.35),transparent 29%),
    radial-gradient(circle at 12% 78%,rgba(144,189,255,.22),transparent 31%),
    linear-gradient(135deg,#fbfaff 0%,#f2edff 48%,#fff7fd 100%)!important;
}
.gex-product-detail .product-hero-showcase{
  background:transparent!important;
}
.gex-product-detail .product-hero-showcase img{
  mix-blend-mode:multiply!important;
}
.gex-product-detail .product-faq-section{
  background:
    radial-gradient(circle at 85% 20%,rgba(173,123,255,.16),transparent 28%),
    linear-gradient(135deg,#faf9fc,#f1edff 55%,#fff)!important;
}

/* Blog: remove the Insights label and tighten editorial typography. */
.gexauz-blog-hero .eyebrow{display:none!important}
.gexauz-blog-hero{min-height:330px!important;padding:92px 0 54px!important}
.gexauz-blog-title{margin-top:0!important}
.gexauz-blog-intro{line-height:1.45!important}
.gexauz-blog-categories{
  background:
    radial-gradient(circle at 82% 20%,rgba(176,111,255,.07),transparent 25%),
    linear-gradient(180deg,#f7f6f9,#f5f3f8)!important;
}
.gexauz-blog-category-section{background:transparent!important}
.gexauz-category-grid{gap:14px!important}
.gexauz-category-card{
  box-shadow:none!important;
  border:0!important;
}
.gexauz-single-card .gexauz-entry-content{
  margin-left:0!important;
  padding-left:0!important;
  text-indent:0!important;
  max-width:920px!important;
  line-height:var(--gexauz-blog-line-height,1.65)!important;
}
.gexauz-single-card .gexauz-entry-content p,
.gexauz-single-card .gexauz-entry-content li{
  line-height:var(--gexauz-blog-line-height,1.65)!important;
}
.gexauz-single-card .gexauz-entry-content p:first-child{margin-top:0!important}
.gexauz-single-layout{margin-left:0!important}
.gexauz-single-share{border-bottom-width:3px!important}

/* About: content is data-driven row/column layout. */
.gexauz-about-content-rows{display:flex;flex-direction:column;gap:18px;margin-top:46px}
.gexauz-about-content-row{
  display:grid;
  grid-template-columns:repeat(var(--about-cols,2),minmax(0,1fr));
  gap:18px;
}
.gexauz-about-content-row[data-columns="1"]{--about-cols:1}
.gexauz-about-content-row[data-columns="2"]{--about-cols:2}
.gexauz-about-content-row[data-columns="3"]{--about-cols:3}
.gexauz-about-content-row[data-columns="4"]{--about-cols:4}
.gexauz-about-content-col{
  background:#fff;border:1px solid rgba(17,16,22,.08);
  border-radius:22px;padding:28px;
}
.gexauz-about-content-col h3{margin:9px 0 10px;font-size:24px;letter-spacing:-.035em}
.gexauz-about-content-col p{margin:0;color:#68636f;line-height:1.65}
.gexauz-about-team-section{padding:110px 0;background:#f7f6f9}
.gexauz-about-team-inner,.gexauz-about-counter-inner{width:min(1200px,calc(100% - 44px));margin:0 auto}
.gexauz-about-section-head h2{
  font-size:clamp(42px,6vw,78px);line-height:.92;letter-spacing:-.055em;margin:14px 0 40px;
}
.gexauz-about-team-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;
}
.gexauz-about-team-card{
  background:#fff;border:1px solid rgba(17,16,22,.08);border-radius:22px;overflow:hidden;
}
.gexauz-about-team-image{aspect-ratio:1/1;background:linear-gradient(135deg,#eee9ff,#f9eefe);overflow:hidden;display:grid;place-items:center}
.gexauz-about-team-image img{width:100%;height:100%;object-fit:cover}
.gexauz-about-team-image>span{font-size:60px;font-weight:800;color:#6a2de8}
.gexauz-about-team-name{padding:16px 18px 3px;font-weight:800}
.gexauz-about-team-role{padding:0 18px 18px;color:#77717d;font-size:12px}
.gexauz-about-counter-section{
  padding:95px 0;background:
  radial-gradient(circle at 85% 25%,rgba(161,108,255,.22),transparent 30%),
  linear-gradient(135deg,#130b20,#30115a 55%,#6a2de8);color:#fff;
}
.gexauz-about-counter-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.gexauz-about-counter-inner h2{font-size:clamp(38px,5vw,68px);line-height:.94;letter-spacing:-.055em;margin:14px 0}
.gexauz-about-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gexauz-about-counter{padding:25px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.07)}
.gexauz-about-counter strong{display:block;font-size:clamp(40px,5vw,70px);line-height:.9}
.gexauz-about-counter span{display:block;margin-top:10px;color:rgba(255,255,255,.65);font-size:12px}
@media(max-width:850px){
  .gexauz-about-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gexauz-about-counter-inner{grid-template-columns:1fr}
}
@media(max-width:560px){
  .gexauz-about-content-row{grid-template-columns:1fr!important}
  .gexauz-about-team-grid{grid-template-columns:1fr}
  .gexauz-about-counters{grid-template-columns:1fr}
}

/* Contact: first row global detail cards, second row form. No double border. */
.gexauz-contact-page{background:#0b0b0f!important}
.gexauz-contact-page-inner{
  width:min(1240px,calc(100% - 40px))!important;
  display:block!important;
}
.gexauz-contact-intro-row{padding-bottom:54px}
.gexauz-contact-intro-copy{max-width:850px}
.gexauz-contact-intro-copy h1{font-size:clamp(50px,7vw,96px);line-height:.92;letter-spacing:-.065em;margin:18px 0}
.gexauz-contact-intro-copy h1 span{color:#9b6cff}
.gexauz-contact-details-row{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;
  padding-bottom:70px;
}
.gexauz-contact-detail-card{
  min-width:0;min-height:145px;
  display:flex;align-items:flex-start;gap:14px;
  padding:22px;border:1px solid #29292e;border-radius:20px;
  background:#141417;color:#fff;text-decoration:none;
}
.contact-detail-icon{
  flex:0 0 42px;width:42px;height:42px;border-radius:14px;
  display:grid;place-items:center;background:#6a2de8;color:#fff;font-size:18px;
}
.gexauz-contact-detail-card small{
  display:block;color:#8d8893;text-transform:uppercase;letter-spacing:.12em;font-size:9px;margin:2px 0 8px
}
.gexauz-contact-detail-card strong{display:block;font-size:14px;line-height:1.5}
.gexauz-contact-form-row{
  border-top:1px solid #29292e;padding-top:70px;
  display:grid;grid-template-columns:.55fr 1.45fr;gap:55px;align-items:start;
}
.gexauz-contact-form-heading h2{font-size:clamp(34px,4vw,56px);line-height:.96;letter-spacing:-.05em;margin:16px 0}
.gexauz-contact-form-panel{
  padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;
}
.gexauz-contact-form-panel .get-proposal{
  border:1px solid #29292e!important;
  border-radius:24px!important;
  padding:clamp(22px,3vw,40px)!important;
  background:#141417!important;
}
.gexauz-contact-form-panel .gexauz-form-grid{gap:20px 24px!important}
@media(max-width:900px){
  .gexauz-contact-details-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gexauz-contact-form-row{grid-template-columns:1fr}
}
@media(max-width:560px){
  .gexauz-contact-details-row{grid-template-columns:1fr}
}

/* Navigation: no hover opening, exactly one functional arrow. */
.gexauz-primary-menu .menu-item-has-children:hover>.sub-menu,
.gexauz-primary-menu .menu-item-has-children:focus-within>.sub-menu,
.gexauz-primary-menu .sub-menu li:hover>.sub-menu,
.gexauz-primary-menu .sub-menu li:focus-within>.sub-menu{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  transform:translate(-50%,-8px)!important;
}
.gexauz-primary-menu .menu-item-has-children.gexauz-open>.sub-menu{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
.gexauz-desktop-arrow{
  width:24px!important;height:24px!important;
  margin-left:4px!important;padding:0!important;
  border:0!important;background:transparent!important;
  display:inline-grid!important;place-items:center!important;
  color:inherit!important;font-size:13px!important;
}
.gexauz-desktop-arrow::before{content:'⌄'!important}
.gexauz-desktop-arrow span{display:none!important}
.gexauz-mobile-arrow{
  width:34px!important;height:34px!important;margin-left:auto!important;
  border:1px solid rgba(17,16,22,.1)!important;border-radius:50%!important;
  background:#fff!important;color:#6a2de8!important;
  display:grid!important;place-items:center!important;
}
.gexauz-mobile-arrow span{font-size:14px;line-height:1}
.gexauz-submenu-lock,.gexauz-menu-lock{overflow:hidden!important}
.gexauz-submenu-list{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.gexauz-submenu-link{
  display:grid!important;grid-template-columns:40px 1fr auto!important;align-items:center!important;
  gap:12px!important;padding:14px 15px!important;
  border:1px solid rgba(17,16,22,.08)!important;border-radius:16px!important;
  background:#faf9fc!important;color:#17141c!important;
  transition:transform .25s ease,background .25s ease,border-color .25s ease!important;
}
.gexauz-submenu-link:hover{transform:translateX(4px)!important;background:#f0eaff!important;border-color:#d9c8ff!important}
.gexauz-menu-item-icon{
  width:38px;height:38px;border-radius:12px;display:grid;place-items:center;
  color:#6a2de8;background:linear-gradient(135deg,#efe8ff,#fff);font-weight:800;
}
.gexauz-menu-item-text{font-weight:750}
.gexauz-submenu-link-arrow{color:#6a2de8;font-size:16px}
@media(max-width:900px){
  .gexauz-mobile-menu .menu-item-has-children>a{display:flex!important;align-items:center!important}
  .gexauz-mobile-menu .sub-menu{display:none!important}
  .gexauz-mobile-menu .menu-item-has-children.gexauz-menu-open>.sub-menu{display:none!important}
}

/* Hero / section scrollbar cleanup. */
.hero-demo,.hero-demo-stage,.products-home,.services,.projects,.home-gallery{overflow-x:clip!important}


/* =========================================================
   GEXAUZ v2.7.15 — HERO / PRODUCT HOME / NAV / FOOTER FIX
========================================================= */

/* Hard stop accidental horizontal scroll from full-bleed sections. */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
body{
  scrollbar-gutter:stable;
}
.site-wide-footer,
.gexauz-footer,
.site-global-cta{
  max-width:100vw!important;
  overflow-x:clip!important;
}

/* ---------- HERO: one-screen slider ---------- */
.hero-demo{
  overflow:hidden!important;
}
.hero-copy-slider{
  overflow:hidden!important;
  touch-action:pan-y;
}
.hero-copy-slide{
  will-change:transform,opacity,filter;
}
.hero-demo-stage{
  position:relative;
  overflow:hidden!important;
  perspective:1200px;
}
/* Remove orbit/pathway artwork but retain the large central sphere. */
.hero-demo-orbit,
.hero-demo-stage .hero-demo-orbit,
.hero-demo-stage .hero-demo-ring.r1,
.hero-demo-stage .hero-demo-ring.r2,
.hero-demo-stage .hero-demo-ring.r3{
  display:none!important;
}
.hero-demo-core{
  position:absolute;
  left:50%;
  top:50%;
  width:260px;
  height:260px;
  z-index:4;
  pointer-events:none;
}
.hero-demo-sphere{
  width:190px!important;
  height:190px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:
    radial-gradient(circle at 35% 28%,#d7c2ff 0%,#a974ff 22%,#6a2de8 58%,#2b115c 100%)!important;
  box-shadow:
    0 35px 80px rgba(106,45,232,.35),
    inset -22px -30px 55px rgba(27,8,60,.34),
    inset 16px 18px 30px rgba(255,255,255,.22)!important;
}
.hero-demo-platform{
  opacity:.35!important;
  transform:translate(-50%,62%) scale(.85)!important;
}
.hero-demo-card{
  transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .4s ease!important;
}

/* Service pills become the hero interactive controls. */
.hero-demo-service-btn{
  position:absolute!important;
  z-index:9!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:11px 13px 11px 17px!important;
  border:1px solid rgba(106,45,232,.13)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.88)!important;
  color:#15121c!important;
  box-shadow:0 15px 35px rgba(48,25,87,.12)!important;
  text-decoration:none!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  transform-origin:center!important;
  transition:box-shadow .25s ease,filter .25s ease!important;
}
.hero-demo-service-btn b{
  width:27px!important;
  height:27px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#6a2de8!important;
  color:#fff!important;
  font-size:13px!important;
}
.hero-demo-service-btn:hover{
  filter:brightness(1.03);
  box-shadow:0 20px 48px rgba(106,45,232,.22)!important;
}
.hero-demo-service-btn.s1{top:25%;right:18%}
.hero-demo-service-btn.s2{top:55%;left:8%}
.hero-demo-service-btn.s3{top:58%;right:8%}
.hero-demo-service-btn.s4{bottom:18%;left:18%}
.hero-demo-service-btn.s5{bottom:14%;right:24%}
@media(max-width:800px){
  .hero-demo-service-btn{
    padding:9px 10px 9px 13px!important;
    font-size:11px!important;
  }
  .hero-demo-service-btn.s1{top:18%;right:5%}
  .hero-demo-service-btn.s2{top:48%;left:2%}
  .hero-demo-service-btn.s3{top:54%;right:2%}
  .hero-demo-service-btn.s4{bottom:17%;left:4%}
  .hero-demo-service-btn.s5{bottom:10%;right:7%}
  .hero-demo-sphere{width:135px!important;height:135px!important}
}

/* ---------- HERO service zoom/loading transition ---------- */
.hero-demo-service-btn::before{
  content:"";
  position:absolute;
  inset:-3px;
  border-radius:inherit;
  border:1px solid transparent;
  transform:scale(.94);
  opacity:0;
}
.hero-demo-service-btn:hover::before{
  border-color:rgba(106,45,232,.34);
  opacity:1;
  animation:gexauzServicePulse .8s ease-out;
}
@keyframes gexauzServicePulse{
  0%{transform:scale(.92);opacity:.8}
  100%{transform:scale(1.16);opacity:0}
}
.hero-visual-state-0 .hero-demo-service-btn,
.hero-visual-state-1 .hero-demo-service-btn,
.hero-visual-state-2 .hero-demo-service-btn{
  animation:gexauzServiceZoomIn .8s cubic-bezier(.16,1,.3,1) both;
}
.hero-visual-state-1 .hero-demo-service-btn{animation-delay:.05s}
.hero-visual-state-2 .hero-demo-service-btn{animation-delay:.1s}
@keyframes gexauzServiceZoomIn{
  0%{opacity:0;transform:scale(.72) translateY(10px)}
  70%{opacity:1;transform:scale(1.05) translateY(-2px)}
  100%{opacity:1;transform:scale(1) translateY(0)}
}

/* ---------- HOME PRODUCTS: light editorial layout like supplied reference ---------- */
.products-home.products-home-fullscreen{
  background:#eef1eb!important;
}
.products-loop-panel,
.products-loop-panel:nth-child(even),
.products-loop-panel:nth-child(odd){
  background:#eef1eb!important;
  color:#111!important;
}
.products-loop-panel{
  padding:100px 40px 80px!important;
}
.products-loop-panel-inner{
  width:min(1160px,calc(100% - 40px))!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-areas:
    "head head"
    "copy image"!important;
  align-items:center!important;
  column-gap:70px!important;
  row-gap:34px!important;
}
.products-loop-caption{
  grid-area:copy!important;
  width:auto!important;
  display:block!important;
}
.products-loop-caption .eyebrow{
  color:#17131c!important;
  opacity:.55;
}
.products-loop-caption h2{
  color:#17131c!important;
  font-size:clamp(38px,4.8vw,72px)!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
  margin:12px 0 18px!important;
}
.products-loop-caption .text-cta{
  display:inline-flex!important;
  color:#17131c!important;
  border:0!important;
  padding:0!important;
  font-weight:700!important;
}
.products-loop-image-wrap{
  grid-area:image!important;
  width:100%!important;
  aspect-ratio:4/3!important;
  border-radius:20px!important;
  background:#dce2dc!important;
  box-shadow:none!important;
}
.products-loop-image-wrap img{
  object-fit:cover!important;
}
.products-loop-panel:nth-child(3n) .products-loop-image-wrap{
  background:#d9e5e0!important;
}
.products-loop-panel:nth-child(3n+2) .products-loop-image-wrap{
  background:#dcead0!important;
}
@media(max-width:800px){
  .products-loop-panel{padding:90px 20px 55px!important}
  .products-loop-panel-inner{
    width:min(100%,560px)!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"copy" "image"!important;
    gap:26px!important;
  }
  .products-loop-image-wrap{aspect-ratio:4/3!important}
}

/* ---------- Footer: use the actual widget markup and force full width ---------- */
.site-wide-footer.gexauz-footer{
  position:relative!important;
  left:50%!important;
  width:100vw!important;
  margin-left:0!important;
  transform:translateX(-50%)!important;
  max-width:none!important;
}
.site-wide-footer.gexauz-footer .footer-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:clamp(22px,5vw,84px)!important;
  padding-right:clamp(22px,5vw,84px)!important;
  box-sizing:border-box!important;
}
.gexauz-footer-widgets{
  display:grid!important;
  grid-template-columns:1.35fr repeat(4,minmax(0,1fr))!important;
  gap:48px 55px!important;
  width:100%!important;
  align-items:start!important;
}
.gexauz-footer-widgets .footer-widget,
.gexauz-footer-widgets .footer-widget-column{
  min-width:0!important;
}
.gexauz-footer-widgets .footer-widget-column .widget{
  margin:0 0 28px!important;
}
.gexauz-footer-widgets .widget-title,
.gexauz-footer-widgets .footer-widget-title{
  color:#fff!important;
}
@media(max-width:900px){
  .gexauz-footer-widgets{
    grid-template-columns:1fr 1fr!important;
    gap:32px 26px!important;
  }
  .gexauz-footer-widgets .footer-brand-widget{
    grid-column:1/-1!important;
  }
}
@media(max-width:520px){
  .gexauz-footer-widgets{grid-template-columns:1fr!important}
}

/* ---------- Navigation: make menu JS failure impossible and hide all hover-open behavior ---------- */
.gexauz-primary-menu .sub-menu,
.gexauz-mobile-menu-list .sub-menu{
  display:none!important;
}
.gexauz-primary-menu .menu-item-has-children:hover>.sub-menu,
.gexauz-mobile-menu-list .menu-item-has-children:hover>.sub-menu{
  display:none!important;
}
.gexauz-desktop-arrow,
.gexauz-mobile-arrow{
  width:25px!important;
  height:25px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  cursor:pointer!important;
  display:inline-grid!important;
  place-items:center!important;
}
.gexauz-desktop-arrow span,
.gexauz-mobile-arrow span{
  display:block!important;
  font-size:14px!important;
  line-height:1!important;
}
.gexauz-submenu-modal{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
}
.gexauz-submenu-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(12,8,20,.42)!important;
  backdrop-filter:blur(12px)!important;
}
.gexauz-submenu-panel{
  position:relative!important;
  width:min(760px,calc(100vw - 48px))!important;
  max-height:min(80vh,720px)!important;
  overflow:auto!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 35px 100px rgba(0,0,0,.25)!important;
  padding:22px!important;
}
.gexauz-submenu-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.gexauz-submenu-link{
  display:grid!important;
  grid-template-columns:38px 1fr 22px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:64px!important;
  padding:12px 14px!important;
  border:1px solid rgba(17,17,17,.08)!important;
  border-radius:16px!important;
  color:#17131c!important;
  text-decoration:none!important;
  background:#faf9fc!important;
  transition:transform .22s ease,background .22s ease!important;
}
.gexauz-submenu-link:hover{
  transform:translateY(-2px)!important;
  background:#f0eaff!important;
}
.gexauz-menu-item-icon{
  width:34px!important;height:34px!important;
  display:grid!important;place-items:center!important;
  border-radius:10px!important;
  background:#6a2de8!important;color:#fff!important;
}
.gexauz-submenu-link-arrow{color:#6a2de8!important}
@media(max-width:600px){
  .gexauz-submenu-list{grid-template-columns:1fr!important}
}

/* Service cards: zoom/loading transition on entry and hover. */
.stack-card{
  will-change:transform,opacity,filter;
}
.stack-card.is-visible{
  animation:gexauzServiceCardLoad .72s cubic-bezier(.16,1,.3,1) both;
}
@keyframes gexauzServiceCardLoad{
  0%{opacity:0;transform:translateY(28px) scale(.94);filter:blur(5px)}
  70%{opacity:1;transform:translateY(-2px) scale(1.015);filter:blur(0)}
  100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
.stack-card:hover{
  transform:translateY(-5px) scale(1.008)!important;
}

/* Kill any legacy nested horizontal scrollers. */
[data-horizontal-scroll],
.home-gallery-grid,
.projects-bento,
.products-home-fullscreen{
  max-width:100%!important;
}


/* =========================================================
   GEXAUZ v2.7.15 — FAQ / CTA / PROJECTS / PRODUCTS / NAV
========================================================= */

/* ---------- FAQ: clean theme treatment inspired by supplied reference ---------- */
.home-faq,
.product-faq-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 70%,rgba(109,61,255,.09),transparent 28%),
    radial-gradient(circle at 92% 28%,rgba(211,91,238,.08),transparent 28%),
    #fff;
}
.home-faq::after,
.product-faq-section::after{
  content:"";
  position:absolute;
  width:420px;height:420px;
  right:-250px;top:80px;
  border:1px solid rgba(106,45,232,.14);
  border-radius:50%;
  box-shadow:-45px 0 0 -44px rgba(106,45,232,.12),-90px 0 0 -89px rgba(106,45,232,.10);
  pointer-events:none;
}
.home-faq-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  max-width:980px!important;
  margin-inline:auto!important;
}
.home-faq-intro{
  text-align:center!important;
  max-width:760px!important;
  margin:0 auto 48px!important;
}
.home-faq-intro .eyebrow{
  display:inline-flex!important;
  padding:7px 15px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(106,45,232,.08),rgba(220,88,238,.08))!important;
  color:#6a2de8!important;
}
.home-faq-intro .section-title,
.product-faq-intro h2{
  font-size:clamp(42px,6vw,78px)!important;
  letter-spacing:-.06em!important;
  line-height:.96!important;
}
.home-faq-list,
.product-faq-list{
  background:#fff!important;
  border-radius:30px!important;
  padding:26px 56px!important;
  box-shadow:0 25px 70px rgba(26,18,44,.10)!important;
  border:1px solid rgba(17,17,17,.045)!important;
}
.home-faq-item,
.product-faq-item{
  border-bottom:1px solid rgba(17,17,17,.09)!important;
}
.home-faq-item:last-child,
.product-faq-item:last-child{border-bottom:0!important}
.home-faq-item summary,
.product-faq-question{
  min-height:78px!important;
  padding:24px 0!important;
  font-size:18px!important;
  font-weight:700!important;
}
.home-faq-item summary b,
.faq-plus{
  width:30px!important;height:30px!important;
  border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:#f1eaff!important;
  color:#6a2de8!important;
  transition:transform .3s ease,background .3s ease!important;
}
.home-faq-item[open] summary b{
  transform:rotate(45deg)!important;
  background:#6a2de8!important;color:#fff!important;
}
.home-faq-answer,
.product-faq-answer{
  padding:0 0 24px!important;
  color:#6d6877!important;
  line-height:1.65!important;
}
@media(max-width:700px){
  .home-faq-list,.product-faq-list{padding:18px 22px!important;border-radius:22px!important}
}

/* ---------- CTA: replace old construction CTA + animated concentric wave ---------- */
.site-global-cta{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 105%,rgba(142,82,255,.48),transparent 32%),
    linear-gradient(135deg,#180d31 0%,#3b1a75 52%,#6a2de8 100%)!important;
  border-radius:0!important;
  min-height:560px!important;
  display:grid!important;
  place-items:center!important;
}
.site-global-cta::before,
.site-global-cta::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-430px;
  width:1100px;height:700px;
  transform:translateX(-50%);
  border:1px solid rgba(255,255,255,.34);
  border-radius:50%;
  box-shadow:
    0 -38px 0 -37px rgba(255,255,255,.24),
    0 -76px 0 -75px rgba(255,255,255,.17),
    0 -114px 0 -113px rgba(255,255,255,.12),
    0 -152px 0 -151px rgba(255,255,255,.08);
  pointer-events:none;
  animation:gexauzCtaWave 8s ease-in-out infinite;
}
.site-global-cta::after{
  width:1450px;height:840px;
  bottom:-520px;
  opacity:.55;
  animation-delay:-3s;
}
@keyframes gexauzCtaWave{
  0%,100%{transform:translateX(-50%) scaleX(1);opacity:.75}
  50%{transform:translateX(-50%) scaleX(1.08);opacity:1}
}
.site-global-cta-inner{
  position:relative!important;
  z-index:2!important;
  width:min(900px,calc(100% - 40px))!important;
  text-align:center!important;
  color:#fff!important;
}
.site-global-cta-tag{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:7px 13px!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.07)!important;
  color:rgba(255,255,255,.78)!important;
}
.site-global-cta h2{
  font-size:clamp(48px,7vw,96px)!important;
  line-height:.94!important;
  letter-spacing:-.065em!important;
  margin:25px 0 22px!important;
}
.site-global-cta-lead{
  color:rgba(255,255,255,.78)!important;
  font-size:18px!important;
  line-height:1.65!important;
  margin:0 auto 30px!important;
}
.site-global-cta-lead strong{color:#fff!important}
.site-global-cta-lead span{color:rgba(255,255,255,.95)!important}
.site-global-cta .btn-white{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  background:#fff!important;
  color:#24103f!important;
  border:0!important;
  border-radius:999px!important;
  padding:15px 24px!important;
  box-shadow:0 15px 40px rgba(0,0,0,.2)!important;
  transition:transform .3s cubic-bezier(.16,1,.3,1)!important;
}
.site-global-cta .btn-white:hover{transform:translateY(-4px) scale(1.025)!important}

/* ---------- Homepage project grid: reference-style editorial mixed sizing ---------- */
.projects .projects-bento{
  width:min(1180px,100%)!important;
  margin-inline:auto!important;
}
.projects .proj-grid.dynamic-projects{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:48px 20px!important;
  align-items:start!important;
}
.projects .proj-card{
  min-width:0!important;
  background:transparent!important;
}
.projects .proj-card:nth-child(3n){
  grid-column:auto!important;
}
.projects .proj-thumb{
  width:100%!important;
  aspect-ratio:1.55/1!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#ecebf0!important;
  box-shadow:0 8px 22px rgba(20,14,30,.08)!important;
}
.projects .proj-card:nth-child(3n) .proj-thumb{
  aspect-ratio:1/1.25!important;
}
.projects .proj-thumb img{
  width:100%!important;height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
}
.projects .proj-name{
  padding:15px 5px 0!important;
  font-size:22px!important;
  line-height:1.1!important;
}
.projects .proj-tag{
  display:block!important;
  margin-top:6px!important;
  font-size:13px!important;
  line-height:1.45!important;
  color:#76727d!important;
}
@media(max-width:700px){
  .projects .proj-grid.dynamic-projects{grid-template-columns:1fr!important;gap:34px!important}
  .projects .proj-card:nth-child(3n) .proj-thumb{aspect-ratio:1.25/1!important}
}

/* ---------- Product panel copy ---------- */
.products-loop-description{
  max-width:520px!important;
  color:#65616d!important;
  line-height:1.6!important;
  margin:0 0 18px!important;
}
.products-loop-trusted strong{
  display:block!important;
  font-size:14px!important;
  margin-bottom:9px!important;
}
.products-loop-tags{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-bottom:22px!important;
}
.products-loop-tags span{
  display:inline-flex!important;
  align-items:center!important;
  padding:7px 11px!important;
  border:1px solid rgba(106,45,232,.15)!important;
  border-radius:999px!important;
  background:#f8f5ff!important;
  color:#6a2de8!important;
  font-size:12px!important;
  font-weight:700!important;
}

/* ---------- Navigation: one arrow, no hover dropdown ---------- */
.gexauz-primary-menu .sub-menu,
.gexauz-primary-menu .menu-item-has-children:hover>.sub-menu,
.gexauz-mobile-menu-list .sub-menu,
.gexauz-mobile-menu-list .menu-item-has-children:hover>.sub-menu{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.gexauz-menu-arrow{
  appearance:none!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:inherit!important;
  width:24px!important;
  height:24px!important;
  padding:0!important;
  margin-left:2px!important;
  display:inline-grid!important;
  place-items:center!important;
  cursor:pointer!important;
  vertical-align:middle!important;
}
.gexauz-menu-arrow span{
  display:block!important;
  font-size:14px!important;
  line-height:1!important;
  transform:translateY(-1px)!important;
}
.gexauz-menu-arrow[aria-expanded="true"] span{
  transform:rotate(180deg)!important;
}
.gexauz-primary-menu>.menu-item-has-children{
  display:inline-flex!important;
  align-items:center!important;
}
.gexauz-submenu-modal{z-index:2147483000!important}
.gexauz-submenu-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:4px 4px 18px!important;
}
.gexauz-submenu-close{
  width:42px!important;height:42px!important;
  border:0!important;border-radius:50%!important;
  background:#f3f1f6!important;
  color:#17131c!important;
  font-size:22px!important;
  cursor:pointer!important;
}
html.gexauz-submenu-lock,
html.gexauz-menu-lock{overflow:hidden!important}


/* =========================================================
   v2.7.14 — PROJECT GRID REFERENCE UI
========================================================= */
.projects .proj-grid.dynamic-projects{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:18px!important;
  row-gap:52px!important;
  align-items:start!important;
}
.projects .proj-card{
  width:100%!important;
  min-width:0!important;
  align-self:start!important;
}
.projects .proj-thumb{
  width:100%!important;
  aspect-ratio:1.48 / 1!important;
  border:1px solid rgba(15,15,18,.20)!important;
  border-radius:17px!important;
  overflow:hidden!important;
  background:#eee!important;
  box-shadow:0 8px 22px rgba(18,15,25,.10)!important;
}
.projects .proj-card:nth-child(3n) .proj-thumb{
  aspect-ratio:1 / 1.16!important;
}
.projects .proj-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  transition:transform .7s cubic-bezier(.16,1,.3,1)!important;
}
.projects .proj-card:hover .proj-thumb img{
  transform:scale(1.025)!important;
}
.projects .proj-name{
  padding:14px 7px 0!important;
  font-family:inherit!important;
  font-size:21px!important;
  font-weight:500!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
.projects .proj-tag{
  max-width:440px!important;
  margin-top:7px!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.45!important;
  color:#77737c!important;
}
.projects .proj-card .proj-name + *{}
@media(max-width:700px){
  .projects .proj-grid.dynamic-projects{
    grid-template-columns:1fr!important;
    row-gap:38px!important;
  }
  .projects .proj-thumb,
  .projects .proj-card:nth-child(3n) .proj-thumb{
    aspect-ratio:1.25 / 1!important;
  }
}

/* Guaranteed modal close-button hit area and stacking */
.gexauz-submenu-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
}
.gexauz-submenu-backdrop{
  position:absolute!important;
  inset:0!important;
}
.gexauz-submenu-panel{
  position:relative!important;
  z-index:2!important;
}
.gexauz-submenu-close{
  position:relative!important;
  z-index:5!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}


/* =========================================================
   GEXAUZ v2.7.15 — MOBILE/RWD CLEAN PASS
   - remove hero sphere/orb completely on small screens
   - remove oversized empty vertical areas
   - keep full-width footer without nested overflow
========================================================= */

@media (max-width: 700px){

  /* ---------- HERO: no sphere/orbit/platform on mobile ---------- */
  .hero-demo{
    min-height:auto!important;
    height:auto!important;
    overflow:hidden!important;
  }
  .hero-demo-inner{
    min-height:auto!important;
    height:auto!important;
    display:block!important;
    padding:34px 20px 18px!important;
  }
  .hero-demo-copy{
    width:100%!important;
  }
  .hero-demo-title{
    margin:18px 0 18px!important;
    font-size:clamp(42px,12.5vw,62px)!important;
  }
  .hero-demo-lead{
    font-size:14px!important;
    line-height:1.55!important;
  }
  .hero-demo-actions{
    margin-top:22px!important;
    gap:12px!important;
    flex-wrap:wrap!important;
  }
  .hero-demo-stats{
    margin-top:28px!important;
    gap:20px!important;
  }

  /* The visual stage remains only for the cards; all sphere/ring artwork is gone. */
  .hero-demo-stage{
    height:360px!important;
    min-height:360px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    perspective:none!important;
  }
  .hero-demo-core,
  .hero-demo-sphere,
  .hero-demo-ring,
  .hero-demo-platform,
  .hero-demo-orbit,
  #hero-demo-global3d{
    display:none!important;
  }
  .hero-demo-stage .hero-demo-card{
    transform:scale(.78)!important;
  }
  .hero-demo-stage .hero-demo-card.c1{
    left:4%!important;
    top:18%!important;
  }
  .hero-demo-stage .hero-demo-card.c2{
    right:3%!important;
    top:32%!important;
  }
  .hero-demo-stage .hero-demo-card.c3{
    left:18%!important;
    bottom:5%!important;
  }
  .hero-demo-stage .hero-demo-card.c4{
    right:16%!important;
    bottom:1%!important;
  }

  /* ---------- General mobile section spacing ---------- */
  section{
    scroll-margin-top:72px;
  }
  .section,
  .section-inner,
  .home-section{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
  .section-head{
    margin-bottom:28px!important;
  }

  /* Prevent decorative elements from creating apparent blank space. */
  .home-gallery,
  .projects,
  .services,
  .products-home,
  .products-home-fullscreen,
  .home-faq,
  .product-faq-section{
    min-height:0!important;
  }

  /* ---------- PRODUCTS: don't leave desktop 100svh whitespace on mobile ---------- */
  .products-loop-panel{
    min-height:0!important;
    height:auto!important;
    padding:72px 0!important;
  }
  .products-loop-panel-inner{
    width:calc(100% - 36px)!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .products-loop-image-wrap{
    order:1!important;
    aspect-ratio:16/10!important;
    border-radius:20px!important;
  }
  .products-loop-caption{
    order:2!important;
  }
  .products-loop-caption h2{
    font-size:clamp(38px,11vw,58px)!important;
    margin:10px 0 18px!important;
  }

  /* ---------- FAQ ---------- */
  .home-faq,
  .product-faq-section{
    padding-top:64px!important;
    padding-bottom:64px!important;
  }
  .home-faq-intro{
    margin-bottom:28px!important;
  }
  .home-faq-list,
  .product-faq-list{
    padding:10px 20px!important;
    border-radius:20px!important;
  }

  /* ---------- CTA ---------- */
  .site-global-cta{
    min-height:0!important;
    padding:72px 20px!important;
  }
  .site-global-cta h2{
    font-size:clamp(40px,11vw,58px)!important;
    margin:18px 0 20px!important;
  }
  .site-global-cta-lead{
    font-size:15px!important;
    line-height:1.55!important;
  }
  .site-global-cta::before,
  .site-global-cta::after{
    width:700px!important;
    height:500px!important;
    bottom:-360px!important;
  }

  /* ---------- PROJECTS ---------- */
  .projects{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
  .projects .proj-grid.dynamic-projects{
    gap:32px!important;
  }
  .projects .proj-thumb{
    border-radius:15px!important;
  }
  .projects .proj-name{
    font-size:20px!important;
    padding-top:12px!important;
  }

  /* ---------- GALLERY ---------- */
  .home-gallery{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
  .home-gallery-grid{
    gap:14px!important;
  }

  /* ---------- SERVICES ---------- */
  .services{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
  .services .stack-card{
    margin-bottom:14px!important;
  }

  /* ---------- FOOTER: no oversized top/bottom whitespace ---------- */
  .site-wide-footer.gexauz-footer{
    width:100vw!important;
    max-width:100vw!important;
    left:50%!important;
    margin-left:0!important;
    transform:translateX(-50%)!important;
    overflow:hidden!important;
  }
  .site-wide-footer.gexauz-footer .footer-inner{
    width:100%!important;
    padding:34px 20px 18px!important;
  }
  .gexauz-footer-widgets{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .gexauz-footer-widgets .footer-brand-widget{
    grid-column:auto!important;
    margin-bottom:4px!important;
  }
  .gexauz-footer-widgets .footer-widget-column .widget{
    margin-bottom:18px!important;
  }
  .gexauz-footer-socials{
    margin-top:14px!important;
  }
  .gexauz-footer-brand-row{
    margin-top:34px!important;
    padding-top:20px!important;
  }
  .gexauz-footer-brand{
    font-size:21vw!important;
    line-height:.82!important;
  }
  .gexauz-footer-bottom{
    margin-top:18px!important;
    padding-top:16px!important;
    gap:8px!important;
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  /* Contact/About/blog containers: prevent desktop min-heights from creating blank bands. */
  .gexauz-about-page,
  .gexauz-contact-page,
  .gexauz-blog-page,
  .gexauz-single-post,
  .gex-product-detail{
    min-height:0!important;
  }
}

/* Extra-small screens: remove remaining decorative whitespace and keep media compact. */
@media (max-width:420px){
  .hero-demo-inner{padding-top:28px!important;padding-bottom:12px!important}
  .hero-demo-stage{height:300px!important;min-height:300px!important}
  .hero-demo-stage .hero-demo-card{transform:scale(.66)!important}
  .products-loop-panel{padding:56px 0!important}
  .site-global-cta{padding:60px 18px!important}
  .site-wide-footer.gexauz-footer .footer-inner{padding-left:18px!important;padding-right:18px!important}
}

/* Never allow decorative full-bleed elements to create horizontal overflow. */
@media (max-width:700px){
  html,body,
  .site-global-cta,
  .site-wide-footer,
  .gexauz-footer,
  .hero-demo,
  .hero-demo-stage,
  .products-home,
  .products-loop-panel,
  .services,
  .projects,
  .home-gallery{
    max-width:100vw!important;
    overflow-x:clip!important;
  }
}


/* =========================================================
   GEXAUZ v2.7.15 — PROJECTS REFERENCE MATCH
   Reference: two-column editorial project wall.
   Row 1 = two landscape cards.
   Following cards can be portrait/square without forcing
   oversized empty row space.
========================================================= */

.projects .projects-bento{
  width:min(1180px,calc(100% - 40px))!important;
  margin-inline:auto!important;
  overflow:visible!important;
}

.projects .proj-grid.dynamic-projects{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  column-gap:18px!important;
  row-gap:38px!important;
  align-items:start!important;
}

/* Every card is transparent editorial content, not a boxed tile. */
.projects .proj-card{
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:block!important;
  align-self:start!important;
}

/* Reference image treatment. */
.projects .proj-thumb{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1.48 / 1!important;
  border:1px solid rgba(15,15,18,.22)!important;
  border-radius:17px!important;
  overflow:hidden!important;
  background:#eee!important;
  box-shadow:0 8px 22px rgba(18,15,25,.10)!important;
}

/* First row: both landscape, matching the supplied reference. */
.projects .proj-card:nth-child(1) .proj-thumb,
.projects .proj-card:nth-child(2) .proj-thumb{
  aspect-ratio:1.48 / 1!important;
}

/* Third project: portrait, like the reference left-side card. */
.projects .proj-card:nth-child(3) .proj-thumb{
  aspect-ratio:1 / 1.25!important;
}

/* Continue mixed editorial sizing without giant blank areas. */
.projects .proj-card:nth-child(4) .proj-thumb{
  aspect-ratio:1.48 / 1!important;
}
.projects .proj-card:nth-child(5) .proj-thumb{
  aspect-ratio:1 / 1.08!important;
}
.projects .proj-card:nth-child(6) .proj-thumb{
  aspect-ratio:1.48 / 1!important;
}
.projects .proj-card:nth-child(7) .proj-thumb{
  aspect-ratio:1 / 1.18!important;
}
.projects .proj-card:nth-child(8) .proj-thumb{
  aspect-ratio:1.48 / 1!important;
}
.projects .proj-card:nth-child(9) .proj-thumb{
  aspect-ratio:1 / 1.12!important;
}

.projects .proj-thumb img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  transition:transform .7s cubic-bezier(.16,1,.3,1)!important;
}

.projects .proj-card:hover .proj-thumb img{
  transform:scale(1.025)!important;
}

/* Text sits below the image exactly like the supplied project UI. */
.projects .proj-name{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  padding:14px 7px 0!important;
  border-radius:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  color:#17141c!important;
  text-align:left!important;
  font-size:21px!important;
  font-weight:500!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}

.projects .proj-tag{
  display:block!important;
  max-width:440px!important;
  margin:7px 0 0!important;
  text-align:left!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.45!important;
  color:#77737c!important;
}

/* View-more stays centered below the complete project wall. */
.projects .load-more{
  display:flex!important;
  justify-content:center!important;
  margin-top:54px!important;
}

/* Tablet: preserve the editorial two-column reference. */
@media(max-width:800px){
  .projects .projects-bento{
    width:calc(100% - 32px)!important;
  }
  .projects .proj-grid.dynamic-projects{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:14px!important;
    row-gap:30px!important;
  }
  .projects .proj-card:nth-child(n) .proj-thumb{
    aspect-ratio:1.35 / 1!important;
  }
  .projects .proj-card:nth-child(3) .proj-thumb{
    aspect-ratio:1 / 1.15!important;
  }
  .projects .proj-name{
    font-size:18px!important;
    padding:11px 4px 0!important;
  }
}

/* Phone: single column, no desktop-sized blank space. */
@media(max-width:560px){
  .projects .projects-bento{
    width:calc(100% - 28px)!important;
  }
  .projects .proj-grid.dynamic-projects{
    grid-template-columns:1fr!important;
    row-gap:30px!important;
  }
  .projects .proj-card:nth-child(n) .proj-thumb,
  .projects .proj-card:nth-child(3) .proj-thumb{
    aspect-ratio:1.25 / 1!important;
  }
  .projects .proj-name{
    font-size:19px!important;
  }
}


/* =========================================================
   GEXAUZ v2.7.15 — THREE.JS HERO RIGHT VISUAL
========================================================= */
.hero-demo-stage{
  position:relative!important;
  min-width:0!important;
  overflow:visible!important;
}
.hero-three-wrap{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:520px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:1!important;
  pointer-events:auto!important;
}
.hero-three-canvas{
  width:100%!important;
  height:100%!important;
  display:block!important;
  cursor:grab!important;
  touch-action:none!important;
  filter:drop-shadow(0 35px 55px rgba(106,45,232,.16))!important;
}
.hero-three-wrap.is-dragging .hero-three-canvas{
  cursor:grabbing!important;
}
.hero-three-glow{
  position:absolute!important;
  width:58%!important;
  aspect-ratio:1!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(124,60,255,.18),rgba(124,60,255,0) 68%)!important;
  filter:blur(8px)!important;
  z-index:-1!important;
  pointer-events:none!important;
}

/* Service buttons remain around the right-side 3D object. */
.hero-three-wrap + .hero-demo-service{
  z-index:5!important;
}
.hero-demo-service{
  z-index:5!important;
}

@media(max-width:900px){
  .hero-three-wrap{
    position:relative!important;
    inset:auto!important;
    min-height:420px!important;
    height:420px!important;
    margin-top:8px!important;
  }
  .hero-demo-stage{
    min-height:470px!important;
  }
}

@media(max-width:600px){
  .hero-three-wrap{
    min-height:320px!important;
    height:320px!important;
    margin:0!important;
  }
  .hero-three-glow{width:78%!important}
  .hero-demo-stage{
    min-height:390px!important;
  }
  .hero-demo-service{
    transform:scale(.88)!important;
  }
}


/* =========================================================
   GEXAUZ v2.7.15 — PROCEDURAL ABSTRACT THREE.JS HERO
========================================================= */
.hero-three-wrap{
  perspective:1200px!important;
}
.hero-three-canvas{
  cursor:grab!important;
}
.hero-three-wrap.is-dragging .hero-three-canvas{
  cursor:grabbing!important;
}
.hero-three-glow{
  width:68%!important;
  background:radial-gradient(
    circle,
    rgba(111,62,255,.22) 0%,
    rgba(179,126,255,.11) 28%,
    rgba(124,60,255,0) 70%
  )!important;
  filter:blur(18px)!important;
}
@media(max-width:600px){
  .hero-three-wrap{
    min-height:300px!important;
    height:300px!important;
  }
  .hero-three-glow{width:90%!important}
}


/* =========================================================
   GEXAUZ v2.7.16 — HERO SCROLL STORY + PAGE MOTION
========================================================= */
.hero-scroll-story{
  height:200vh!important;
  min-height:200vh!important;
  overflow:clip!important;
}
.hero-scroll-story .hero-demo-inner{
  height:100svh!important;
  min-height:100svh!important;
  will-change:transform;
}
.hero-scroll-story .hero-demo-bottom{
  pointer-events:none;
}
.hero-service-orbit{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:11;
}
.hero-service-orbit .hero-demo-service{
  pointer-events:auto;
  will-change:transform;
}
.hero-copy-slide-slide .hero-demo-title .hero-demo-word{transform-origin:0 100%}
.hero-copy-slide-rise .hero-demo-title .hero-demo-word{transform-origin:50% 100%}
.hero-copy-slide-scale .hero-demo-title .hero-demo-word{transform-origin:50% 50%}
.hero-copy-slide-flip .hero-demo-title .hero-demo-word{transform-origin:100% 50%}

.hero-scroll-story .hero-demo-service{
  transition:box-shadow .3s ease,background .3s ease;
}
.hero-scroll-story .hero-demo-service:hover{
  box-shadow:0 22px 55px rgba(76,35,160,.24);
  background:#fff;
}

@media(max-width:900px){
  .hero-scroll-story{
    height:185vh!important;
    min-height:185vh!important;
  }
  .hero-scroll-story .hero-demo-inner{
    display:block!important;
    height:100svh!important;
    min-height:100svh!important;
    padding-top:20px!important;
  }
  .hero-scroll-story .hero-demo-copy{
    width:100%;
  }
  .hero-scroll-story .hero-demo-stage{
    height:44svh!important;
    margin-top:-10px;
  }
  .hero-scroll-story .hero-demo-service{
    transform:scale(.82);
  }
}
@media(max-width:600px){
  .hero-scroll-story{
    height:165vh!important;
    min-height:165vh!important;
  }
  .hero-scroll-story .hero-demo-inner{
    padding:14px 18px 0!important;
  }
  .hero-scroll-story .hero-demo-title{
    font-size:clamp(44px,13vw,70px)!important;
    margin-top:14px!important;
  }
  .hero-scroll-story .hero-demo-lead{
    font-size:14px!important;
    line-height:1.45!important;
  }
  .hero-scroll-story .hero-demo-actions,
  .hero-scroll-story .hero-demo-stats{
    margin-top:18px!important;
  }
  .hero-scroll-story .hero-demo-stage{
    height:40svh!important;
  }
  .hero-scroll-story .hero-demo-service{
    font-size:10px!important;
    padding:8px 9px 8px 12px!important;
  }
  .hero-scroll-story .hero-demo-service b{
    width:20px!important;height:20px!important;
  }
}

/* Full-width process / why sections */
.flow,
.why{
  width:100%;
  max-width:none;
  border-radius:0;
}
.flow > .wrap,
.why > .wrap{
  width:min(1420px,calc(100% - 8vw));
  margin-inline:auto;
}

/* Service detail: dark GEXAUZ gradient presentation */
.gex-service-detail{
  color:#fff!important;
  background:
    radial-gradient(circle at 12% 8%,rgba(148,91,255,.35),transparent 28%),
    radial-gradient(circle at 88% 32%,rgba(92,55,210,.26),transparent 30%),
    linear-gradient(145deg,#09070f 0%,#17102a 46%,#2a1651 100%);
  overflow:hidden;
}
.gex-service-detail .service-header,
.gex-service-detail .service-body,
.gex-service-detail .why-matters,
.gex-service-detail .process{
  color:#fff;
}
.gex-service-detail .service-lead,
.gex-service-detail .overview p,
.gex-service-detail .why-list li,
.gex-service-detail .step-text{
  color:rgba(255,255,255,.72)!important;
}
.gex-service-detail .tag-chip{
  background:rgba(255,255,255,.09)!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#fff!important;
  backdrop-filter:blur(12px);
}
.gex-service-detail .deliv-list li{
  border-color:rgba(255,255,255,.13)!important;
}
.gex-service-detail .deliv-num,
.gex-service-detail .intro-label{
  color:rgba(255,255,255,.55)!important;
}
.gex-service-detail .why-matters,
.gex-service-detail .process{
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  box-shadow:0 24px 80px rgba(0,0,0,.18);
}
.gex-service-detail .cta-banner{
  display:none!important;
}
.gex-service-detail .service-hero-img,
.gex-service-detail .overview-img{
  box-shadow:0 25px 80px rgba(0,0,0,.28);
}

/* Portfolio / products / services page animation surfaces */
.gexauz-portfolio-archive,
.gexauz-product-archive,
.gexauz-services-archive{
  overflow:clip;
}
.gexauz-portfolio-archive .proj-card,
.gexauz-product-archive .gexauz-product-card,
.gexauz-services-archive .service-archive-card{
  will-change:transform,opacity;
}
.gexauz-portfolio-archive .proj-thumb,
.gexauz-product-archive .gexauz-product-thumb{
  overflow:hidden;
}
.gexauz-portfolio-archive .proj-thumb img,
.gexauz-product-archive .gexauz-product-thumb img,
.gex-service-detail img,
.gex-detail img{
  will-change:transform,clip-path;
}

/* Portfolio archive branding */
.gexauz-portfolio-archive > .eyebrow{
  color:#6a2de8;
}
.gexauz-portfolio-archive .section-title{
  margin-bottom:12px;
}

/* Make all major page headings participate in GSAP reveals */
.gexauz-portfolio-archive h1,
.gexauz-product-archive h1,
.gexauz-services-archive h1,
.gex-detail h1,
.gex-service-detail h1,
.gex-service-detail h2,
.gex-detail h2{
  will-change:transform,opacity,filter;
}

/* =========================================================
   GEXAUZ v2.7.19 — FINAL POLISH
========================================================= */

/* Navigation: pure white background + social links beside CTA. */
.gexauz-site-nav,
.gexauz-site-nav .nav-inner{background:#fff!important;}
.gexauz-nav-socials{display:flex;align-items:center;gap:7px;margin-right:8px;}
.gexauz-nav-social{
  width:31px;height:31px;display:inline-grid;place-items:center;
  border:1px solid rgba(17,17,17,.10);border-radius:50%;
  color:#17131e!important;text-decoration:none!important;
  font-size:9px;font-weight:900;letter-spacing:.03em;
  transition:transform .22s ease,background .22s ease,color .22s ease,border-color .22s ease;
}
.gexauz-nav-social:hover{transform:translateY(-2px);background:#6a2de8;color:#fff!important;border-color:#6a2de8;}
@media(max-width:980px){.gexauz-nav-socials{display:none!important;}}

/* Footer: full-width, centered oversized GEXAUZ wordmark. */
.site-wide-footer.gexauz-footer{width:100%!important;max-width:none!important;}
.site-wide-footer.gexauz-footer .footer-inner{width:100%!important;max-width:none!important;}
.gexauz-footer-brand-row{text-align:center!important;width:100%!important;}
.gexauz-footer-brand{
  width:100%!important;text-align:center!important;
  font-size:clamp(108px,19.2vw,300px)!important;
  line-height:.76!important;letter-spacing:-.085em!important;
  font-weight:900!important;
}
@media(max-width:700px){.gexauz-footer-brand{font-size:28vw!important;}}

/* Product detail: responsive CSS-only 2D hero shapes. */
.gex-product-detail .product-hero-showcase.product-hero-2d{
  min-height:560px;width:min(760px,58vw);position:relative;justify-self:end;
  margin-right:-4vw;filter:none;overflow:visible;
}
.product-hero-2d .product-shape{position:absolute;display:block;}
.product-shape-orb{
  width:245px;height:245px;border-radius:50%;right:24%;top:27%;
  background:radial-gradient(circle at 32% 28%,#c9a8ff 0%,#7c43ee 34%,#3b1c99 70%,#191026 100%);
  box-shadow:0 30px 80px rgba(106,45,232,.34),inset -25px -25px 45px rgba(0,0,0,.22);
}
.product-shape-card{
  width:300px;min-height:210px;padding:26px;border-radius:24px;
  background:#17131e;color:#fff;box-shadow:0 30px 70px rgba(32,17,55,.20);
}
.product-shape-card-a{left:4%;top:15%;transform:rotate(-8deg);z-index:3;}
.product-shape-card-b{right:0;bottom:10%;transform:rotate(7deg);z-index:4;background:linear-gradient(145deg,#6a2de8,#2d176f);}
.product-shape-kicker{font:700 9px/1.2 monospace;letter-spacing:.13em;color:#c6aaff;display:block;margin-bottom:28px;}
.product-shape-card strong{display:block;font-size:31px;line-height:.96;letter-spacing:-.055em;}
.product-shape-card i{display:block;width:80px;height:4px;border-radius:10px;background:#9d6cff;margin-top:26px;}
.product-shape-card-b>span{font:800 11px/1 monospace;color:#d9c9ff;display:block;margin-bottom:28px;}
.product-shape-card-b>strong{font-size:22px;max-width:190px;}
.product-mini-bars{display:flex;align-items:flex-end;gap:7px;height:45px;margin-top:22px;}
.product-mini-bars b{width:18px;border-radius:5px 5px 2px 2px;background:#fff;height:18px;opacity:.9;}
.product-mini-bars b:nth-child(2){height:28px;opacity:.75}.product-mini-bars b:nth-child(3){height:39px;opacity:.6}.product-mini-bars b:nth-child(4){height:25px;opacity:.45}
.product-shape-pill{
  padding:12px 18px;border-radius:999px;background:#fff;color:#21172e;
  box-shadow:0 15px 35px rgba(39,21,64,.15);font-size:11px;font-weight:800;z-index:6;
}
.product-shape-pill-a{right:11%;top:12%;}
.product-shape-pill-b{left:8%;bottom:16%;}
.product-shape-ring{border:1px solid rgba(106,45,232,.28);border-radius:50%;}
.product-shape-ring.ring-a{width:470px;height:470px;right:8%;top:8%;}
.product-shape-ring.ring-b{width:350px;height:350px;right:21%;top:19%;border-style:dashed;}
@keyframes gexProductFloatA{0%,100%{transform:translate3d(0,0,0) rotate(-8deg)}50%{transform:translate3d(0,-13px,0) rotate(-5deg)}}
@keyframes gexProductFloatB{0%,100%{transform:translate3d(0,0,0) rotate(7deg)}50%{transform:translate3d(0,12px,0) rotate(10deg)}}
@keyframes gexProductFloatOrb{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-10px,-14px,0)}}
.product-shape-card-a{animation:gexProductFloatA 5s ease-in-out infinite;}
.product-shape-card-b{animation:gexProductFloatB 5.7s ease-in-out infinite;}
.product-shape-orb{animation:gexProductFloatOrb 4.8s ease-in-out infinite;}
.gex-product-detail .product-video .bg-text-row{display:none!important;}
@media(max-width:1050px){
  .gex-product-detail .product-hero-showcase.product-hero-2d{width:min(760px,100%);margin:0 auto -40px;min-height:500px;}
}
@media(max-width:600px){
  .gex-product-detail .product-hero-showcase.product-hero-2d{width:100%;min-height:410px;margin:0 auto -15px;transform:scale(.82);transform-origin:center top;}
  .product-shape-ring.ring-a{width:360px;height:360px;right:0;top:12%;}
  .product-shape-ring.ring-b{width:280px;height:280px;right:12%;top:22%;}
}

/* Service detail: single gradient button only. */
.service-detail-gradient-btn{
  display:inline-flex!important;align-items:center;gap:10px;
  margin-top:24px!important;padding:13px 20px!important;
  color:#fff!important;text-decoration:none!important;border:0!important;
  background:linear-gradient(135deg,#6a2de8,#b66dff)!important;
  box-shadow:0 16px 35px rgba(106,45,232,.22)!important;
}
.service-detail-gradient-btn:hover{transform:translateY(-2px)!important;box-shadow:0 20px 42px rgba(106,45,232,.28)!important;}

/* Blog single previous/next: horizontal card treatment after article content. */
.single-prev-next{
  width:min(1180px,calc(100% - 80px))!important;
  margin:62px auto 0!important;padding:0!important;border:0!important;
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;
}
.single-prev-next > div{min-width:0;}
.single-prev-next a{
  display:flex!important;align-items:center;justify-content:space-between;gap:16px;
  min-height:88px;padding:20px 24px!important;border-radius:20px;
  background:#fff;border:1px solid rgba(17,17,17,.09);
  box-shadow:0 16px 45px rgba(26,16,45,.06);
  color:#17131e!important;text-decoration:none!important;font-weight:800!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.single-prev-next a:hover{transform:translateY(-4px);box-shadow:0 24px 55px rgba(26,16,45,.11);border-color:rgba(106,45,232,.25);}
.single-prev-next > div:last-child a{justify-content:space-between;}
@media(max-width:700px){
  .single-prev-next{width:calc(100% - 36px)!important;grid-template-columns:1fr!important;gap:12px!important;}
}

/* Category cards: theme gradients only, no neutral fallback. */
.gexauz-category-card{color:#fff!important;background:linear-gradient(135deg,#6a2de8,#b66dff)!important;}
.gexauz-category-card:nth-child(6n+2){background:linear-gradient(135deg,#9a2dff,#ff63c6)!important;}
.gexauz-category-card:nth-child(6n+3){background:linear-gradient(135deg,#ff5b2d,#ffae42)!important;}
.gexauz-category-card:nth-child(6n+4){background:linear-gradient(135deg,#3d5afe,#8b7dff)!important;}
.gexauz-category-card:nth-child(6n+5){background:linear-gradient(135deg,#321078,#7a32ff)!important;}
.gexauz-category-card:nth-child(6n){background:linear-gradient(135deg,#d13dd9,#ff68c4)!important;}

/* =========================================================
   GEXAUZ v2.7.19 — PRODUCT HERO / PORTFOLIO / ARTICLE NAV
========================================================= */

/* Product hero: black canvas, centered purple atmosphere, reusable 2D UI composition. */
.gex-product-detail .product-hero-v3{
  position:relative!important;
  min-height:clamp(720px,92vh,980px)!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  color:#fff!important;
  background:#050308!important;
}
.product-hero-v3-glow{position:absolute;pointer-events:none;border-radius:50%;filter:blur(4px);}
.product-hero-v3-glow-a{
  width:min(760px,70vw);height:min(760px,70vw);left:50%;top:52%;transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(109,52,255,.48) 0%,rgba(109,52,255,.24) 24%,rgba(72,32,180,.12) 46%,transparent 72%);
}
.product-hero-v3-glow-b{
  width:420px;height:420px;right:-100px;top:-150px;
  background:radial-gradient(circle,rgba(180,103,255,.20),transparent 68%);
}
.product-hero-v3-inner{
  position:relative;z-index:2;width:min(1420px,calc(100% - 8vw));
  display:grid!important;grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);
  align-items:center;gap:5vw;min-height:inherit;
}
.product-hero-v3-copy{position:relative;z-index:5;max-width:680px;padding:80px 0;}
.product-hero-v3-kicker{color:#cbb9ff!important;letter-spacing:.16em!important;font-weight:800!important;}
.product-hero-v3-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:#8a50ff;box-shadow:0 0 18px #8a50ff;margin-right:9px;vertical-align:middle;}
.product-hero-v3-title{margin:22px 0 24px!important;font-size:clamp(56px,7.2vw,112px)!important;line-height:.88!important;letter-spacing:-.075em!important;color:#fff!important;}
.product-hero-v3-title span,.product-hero-v3-title em{display:block!important;}
.product-hero-v3-title em{font-style:normal;color:#9c6cff;}
.product-hero-v3-desc{max-width:620px;color:rgba(255,255,255,.68)!important;font-size:18px;line-height:1.62;}
.product-hero-v3-tags{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 28px;}
.product-hero-v3-tags span{padding:8px 13px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.055);color:rgba(255,255,255,.84);font-size:11px;font-weight:800;}
.product-hero-v3-actions{display:flex;flex-wrap:wrap;gap:11px;align-items:center;}
.product-hero-v3-primary{background:linear-gradient(135deg,#6a2de8,#9b68ff)!important;color:#fff!important;border:0!important;box-shadow:0 18px 45px rgba(106,45,232,.3);}
.product-hero-v3-secondary{background:rgba(255,255,255,.05)!important;color:#fff!important;border-color:rgba(255,255,255,.18)!important;}
.product-hero-v3-stage{position:relative;width:100%;height:620px;isolation:isolate;}
.product-v3-ring{position:absolute;border:1px solid rgba(171,133,255,.23);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);}
.product-v3-ring.ring-1{width:600px;height:600px;box-shadow:0 0 90px rgba(111,56,255,.09);}
.product-v3-ring.ring-2{width:430px;height:430px;border-style:dashed;transform:translate(-50%,-50%) rotate(18deg);}
.product-v3-orb{position:absolute;left:50%;top:50%;width:220px;height:220px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 30% 25%,#d0b5ff 0,#9c65ff 27%,#6331d4 55%,#25105d 100%);box-shadow:0 0 100px rgba(113,58,255,.42),inset -30px -30px 60px rgba(0,0,0,.35);}
.product-v3-card{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.13);box-shadow:0 30px 80px rgba(0,0,0,.35);backdrop-filter:blur(12px);}
.product-v3-card-main{left:3%;top:16%;width:285px;min-height:210px;padding:25px;border-radius:24px;background:rgba(10,8,17,.94);transform:rotate(-7deg);}
.product-v3-card-main span{display:block;color:#bda5ff;font:800 9px/1 monospace;letter-spacing:.14em;margin-bottom:30px;}
.product-v3-card-main strong{display:block;font-size:31px;line-height:.92;letter-spacing:-.06em;}
.product-v3-card-main i{display:block;width:70px;height:4px;border-radius:99px;background:#8e56ff;margin-top:26px;}
.product-v3-card-step{right:3%;bottom:10%;width:300px;min-height:175px;padding:25px;border-radius:24px;background:linear-gradient(145deg,rgba(106,45,232,.95),rgba(36,16,81,.97));transform:rotate(7deg);}
.product-v3-index{display:block;font:800 11px/1 monospace;color:#dfd1ff;margin-bottom:30px;}
.product-v3-card-step strong{display:block;font-size:22px;line-height:1.05;max-width:230px;}
.product-v3-bars{display:flex;align-items:end;gap:6px;height:34px;margin-top:22px;}
.product-v3-bars b{display:block;width:14px;height:14px;background:#fff;border-radius:4px;opacity:.9;}
.product-v3-bars b:nth-child(2){height:21px;opacity:.75}.product-v3-bars b:nth-child(3){height:31px;opacity:.6}.product-v3-bars b:nth-child(4){height:24px;opacity:.45}
.product-v3-pill{position:absolute;z-index:7;padding:11px 16px;border-radius:999px;background:#fff;color:#1a1424;font-size:10px;font-weight:900;box-shadow:0 16px 40px rgba(0,0,0,.28);}
.product-v3-pill-top{right:5%;top:13%;}.product-v3-pill-bottom{left:7%;bottom:18%;}
.product-v3-caption{position:absolute;left:50%;bottom:1%;transform:translateX(-50%);display:flex;flex-direction:column;gap:7px;text-align:center;white-space:nowrap;color:rgba(255,255,255,.55);font-size:10px;letter-spacing:.11em;}
.product-v3-caption b{color:#fff;font-size:12px;letter-spacing:0;}
.product-hero-v3[data-product-hero] .product-hero-v3-copy > *,
.product-hero-v3[data-product-hero] .product-hero-v3-stage > *{will-change:transform,opacity,filter;}

/* Portfolio cards: editorial 2-column layout with responsive image-safe media. */
.gexauz-portfolio-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:52px 14px!important;}
.gexauz-portfolio-card-v2{background:transparent!important;box-shadow:none!important;border:0!important;}
.gexauz-portfolio-card-v2 .project-link{display:block!important;text-decoration:none!important;color:inherit!important;}
.gexauz-portfolio-card-v2 .proj-thumb{aspect-ratio:1.62/1!important;overflow:hidden!important;border-radius:18px!important;background:#eee!important;}
.gexauz-portfolio-card-v2 .proj-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.gexauz-portfolio-card-copy{padding:15px 5px 0;}
.gexauz-portfolio-card-v2 .proj-name{font-size:28px!important;line-height:1!important;letter-spacing:-.045em!important;color:#17131e!important;}
.gexauz-portfolio-card-copy p{margin:9px 0 12px!important;color:#77717e!important;font-size:13px!important;line-height:1.45!important;max-width:650px;}
.gexauz-portfolio-tags{display:flex;flex-wrap:wrap;gap:6px;}
.gexauz-portfolio-tags span{font-size:10px;padding:6px 9px;border:1px solid rgba(17,17,17,.10);border-radius:999px;background:#fff;color:#3c3545;}

/* Previous / next article cards now carry the featured image. */
.single-prev-next-image{align-items:stretch!important;}
.single-prev-next-image .single-prev-next-card{min-height:130px!important;padding:0!important;overflow:hidden!important;display:grid!important;grid-template-columns:100px minmax(0,1fr)!important;align-items:stretch!important;}
.single-prev-next-image .single-prev-next-card:last-child{grid-template-columns:minmax(0,1fr) 100px!important;}
.single-prev-next-media{display:block;min-height:100%;background:#eee;overflow:hidden;}
.single-prev-next-media img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.single-prev-next-copy{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:18px 20px;min-width:0;}
.single-prev-next-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8660d8;font-weight:900;}
.single-prev-next-copy strong{font-size:15px;line-height:1.25;display:block;}

/* Reuse the product-hero visual language inside the homepage hero during the scroll story. */
.hero-product-ui{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:.94;}
.hero-product-ui-ring{position:absolute;width:430px;height:430px;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(106,45,232,.25);border-radius:50%;}
.hero-product-ui-orb{position:absolute;width:120px;height:120px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 30% 25%,#d1b6ff,#7138e8 55%,#291061);box-shadow:0 0 70px rgba(106,45,232,.35);}
.hero-product-ui-card{position:absolute;border-radius:18px;padding:18px;color:#fff;background:#12101a;border:1px solid rgba(255,255,255,.12);box-shadow:0 22px 55px rgba(30,16,55,.22);}
.hero-product-ui-card-main{left:13%;top:18%;width:210px;transform:rotate(-6deg);}
.hero-product-ui-card-main span{font:800 8px/1 monospace;color:#b99aff;letter-spacing:.14em;display:block;margin-bottom:18px;}
.hero-product-ui-card-main strong{font-size:22px;line-height:.94;display:block;letter-spacing:-.05em;}
.hero-product-ui-card-main i{display:block;width:52px;height:3px;background:#8d55ff;border-radius:9px;margin-top:17px;}
.hero-product-ui-card-step{right:10%;bottom:17%;width:220px;background:linear-gradient(145deg,#6a2de8,#2b155e);transform:rotate(6deg);}
.hero-product-ui-card-step small{font:800 9px/1 monospace;color:#dfd3ff;display:block;margin-bottom:17px;}.hero-product-ui-card-step b{font-size:16px;line-height:1.05;display:block;}
.hero-product-ui-pill{position:absolute;padding:8px 12px;border-radius:999px;background:#fff;color:#20162d;font-size:8px;font-weight:900;box-shadow:0 12px 30px rgba(33,18,52,.16);}
.hero-product-ui-pill-a{right:5%;top:15%;}.hero-product-ui-pill-b{left:7%;bottom:20%;}
.hero-product-ui{mix-blend-mode:normal;}
@media(max-width:900px){
  .product-hero-v3-inner{grid-template-columns:1fr!important;gap:0!important;padding-top:70px;padding-bottom:30px;}
  .product-hero-v3-copy{padding:0;}
  .product-hero-v3-stage{height:500px;margin-top:15px;}
  .gexauz-portfolio-grid-v2{grid-template-columns:1fr!important;}
  .hero-product-ui{transform:scale(.8);transform-origin:center;}
}
@media(max-width:600px){
  .gex-product-detail .product-hero-v3{min-height:0!important;}
  .product-hero-v3-inner{width:calc(100% - 36px)!important;padding-top:55px;}
  .product-hero-v3-title{font-size:clamp(48px,15vw,76px)!important;}
  .product-hero-v3-desc{font-size:15px;}
  .product-hero-v3-stage{height:400px;margin-left:-4vw;width:108%;}
  .product-v3-ring.ring-1{width:360px;height:360px;}.product-v3-ring.ring-2{width:270px;height:270px;}
  .product-v3-orb{width:125px;height:125px;}
  .product-v3-card-main{left:0;top:12%;width:190px;min-height:150px;padding:17px;}
  .product-v3-card-main strong{font-size:23px;}.product-v3-card-main span{margin-bottom:18px;}
  .product-v3-card-step{right:0;bottom:10%;width:205px;min-height:145px;padding:18px;}
  .product-v3-card-step strong{font-size:17px;}.product-v3-pill-top{right:0;top:7%;}.product-v3-pill-bottom{left:0;bottom:20%;}
  .product-v3-caption{font-size:8px;bottom:0;}.product-v3-caption b{font-size:10px;}
  .hero-product-ui{display:none;}
  .single-prev-next-image .single-prev-next-card,.single-prev-next-image .single-prev-next-card:last-child{grid-template-columns:72px minmax(0,1fr)!important;}
}


/* =========================================================
   GEXAUZ v2.7.19 — CENTERED BLACK MOTION HERO
   Inspired by the supplied reference: large/small 2D balls,
   centered copy, scroll-driven text screens. No 3D globe/path.
========================================================= */
.hero-scroll-story.hero-demo{
  min-height:100svh!important;
  height:200vh!important;
  background:#050505!important;
  color:#fff!important;
  overflow:clip!important;
  isolation:isolate;
}
.hero-scroll-story .hero-demo-grid,
.hero-scroll-story .hero-demo-nav-glow,
.hero-scroll-story .hero-demo-stage,
.hero-scroll-story .hero-demo-bottom,
.hero-scroll-story .hero-demo-stats{
  display:none!important;
}
.hero-scroll-story .hero-demo-inner{
  width:100%!important;
  max-width:none!important;
  height:100svh!important;
  min-height:100svh!important;
  padding:0!important;
  display:block!important;
  position:relative!important;
  z-index:5;
}
.hero-scroll-story .hero-demo-copy{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
  z-index:20!important;
}
.hero-scroll-story .hero-copy-slider{
  width:min(920px,90vw)!important;
  min-height:0!important;
  height:auto!important;
  overflow:visible!important;
  display:block!important;
  cursor:default!important;
}
.hero-scroll-story .hero-copy-slide{
  inset:50% auto auto 50%!important;
  width:min(900px,90vw)!important;
  transform:translate(-50%,-50%)!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.hero-scroll-story .hero-copy-slide .hero-demo-kicker{
  justify-content:center!important;
  color:#bba7ff!important;
  font-size:10px!important;
  letter-spacing:.28em!important;
}
.hero-scroll-story .hero-demo-kdot{background:#7c43ff!important;box-shadow:0 0 0 7px rgba(124,67,255,.12)!important}
.hero-scroll-story .hero-demo-title{
  color:#fff!important;
  font-size:clamp(56px,7.5vw,112px)!important;
  line-height:.9!important;
  letter-spacing:-.065em!important;
  max-width:900px!important;
  margin:26px auto 0!important;
}
.hero-scroll-story .hero-demo-title .accent{color:#fff!important}
.hero-scroll-story .hero-demo-lead{
  color:rgba(255,255,255,.66)!important;
  max-width:620px!important;
  margin:28px auto 0!important;
  font-size:18px!important;
  line-height:1.55!important;
}
.hero-scroll-story .hero-demo-actions{
  justify-content:center!important;
  margin-top:34px!important;
}
.hero-scroll-story .hero-demo-cta{
  background:#151515!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 12px 40px rgba(106,45,232,.2)!important;
}
.hero-scroll-story .hero-demo-watch{display:none!important}
.hero-scroll-story .hero-slide-dots{display:none!important}
.hero-scroll-story .hero-ball-field{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:2!important;
}
.hero-scroll-story .hero-ball{
  position:absolute;
  display:block;
  border-radius:50%;
  background:radial-gradient(circle at 32% 27%,#7448ff 0%,#4320d5 46%,#160b4b 100%);
  box-shadow:0 0 70px rgba(74,38,220,.35),inset -18px -22px 35px rgba(0,0,0,.25);
  will-change:transform;
}
.hero-scroll-story .hero-ball::after{
  content:"";position:absolute;inset:-35%;border-radius:50%;
  background:radial-gradient(circle,rgba(94,47,255,.28),transparent 66%);
  z-index:-1;
}
.hero-scroll-story .b1{width:118px;height:118px;left:23%;top:18%}
.hero-scroll-story .b2{width:54px;height:54px;left:57%;top:29%;background:radial-gradient(circle at 30% 25%,#ff9b73,#d84dff 55%,#4620b5)}
.hero-scroll-story .b3{width:230px;height:230px;right:11%;bottom:-20px}
.hero-scroll-story .b4{width:82px;height:82px;left:12%;bottom:15%;background:radial-gradient(circle at 30% 25%,#b56cff,#6031e8 55%,#24105d)}
.hero-scroll-story .b5{width:42px;height:42px;right:28%;top:45%;background:radial-gradient(circle at 30% 25%,#ff9b73,#c747ff 55%,#32129d)}
.hero-scroll-story .b6{width:66px;height:66px;right:7%;top:14%;}
.hero-scroll-story .b7{width:30px;height:30px;left:40%;bottom:12%;background:#7d49ff;box-shadow:0 0 35px rgba(125,73,255,.65)}
.hero-scroll-story .b8{width:34px;height:34px;left:7%;top:40%;background:#5630dd}
.hero-scroll-story .b9{width:74px;height:74px;right:39%;bottom:19%;background:radial-gradient(circle at 30% 25%,#ffb18c,#9c42ff 58%,#2c0f84)}

/* Process / How it works — clean white section. */
#process{background:#fff!important;color:#111!important}
#process .proc-card{background:#fff!important;color:#111!important}
#process .proc-card.dark{background:#fff!important;color:#111!important;border-color:var(--line)!important}
#process .proc-card h4,#process .proc-card.dark h4{color:#111!important}
#process .proc-card p,#process .proc-card.dark p{color:var(--muted)!important}

/* Service detail restores the earlier grey-page treatment. */
body.single-gex_service,
body.single-gex_service .site-content,
.gex-service-detail{background:#efefef!important}
.gex-service-detail .service-header,
.gex-service-detail .service-body,
.gex-service-detail .why-matters,
.gex-service-detail .process{background:transparent!important}
.gex-service-detail .service-hero-img,
.gex-service-detail .overview-img{background:#ddd!important}

/* Prevent horizontal overflow introduced by motion layers on RWD. */
html,body{max-width:100%;overflow-x:clip!important}
@media(max-width:700px){
  .hero-scroll-story.hero-demo{height:180vh!important;min-height:180vh!important}
  .hero-scroll-story .hero-demo-title{font-size:clamp(43px,13vw,72px)!important;line-height:.92!important}
  .hero-scroll-story .hero-demo-lead{font-size:15px!important;max-width:88vw!important}
  .hero-scroll-story .hero-demo-actions{margin-top:25px!important}
  .hero-scroll-story .b1{width:72px;height:72px;left:8%;top:16%}
  .hero-scroll-story .b3{width:125px;height:125px;right:-22px;bottom:5%}
  .hero-scroll-story .b4{width:52px;height:52px;left:6%;bottom:20%}
  .hero-scroll-story .b6{width:42px;height:42px;right:6%;top:16%}
  .hero-scroll-story .b9{width:50px;height:50px;right:35%;bottom:12%}
}


/* =========================================================
   GEXAUZ v2.7.20 — PRODUCT HERO / HOME SCROLL STORY / RWD POLISH
========================================================= */

/* Homepage: long scroll story with one pinned viewport. */
.hero-scroll-story.hero-demo{
  height:400vh!important;
  min-height:400vh!important;
  position:relative!important;
  background:#050505!important;
}
.hero-scroll-story .hero-demo-inner{
  position:sticky!important;
  top:0!important;
  height:100svh!important;
  min-height:100svh!important;
  overflow:hidden!important;
}
.hero-scroll-story .hero-demo-copy{
  height:100%!important;
}
.hero-scroll-story .hero-copy-slide{
  pointer-events:none!important;
}
.hero-scroll-story .hero-copy-slide.is-active{
  pointer-events:auto!important;
}
.hero-scroll-story .hero-ball{
  will-change:transform,opacity!important;
}
.hero-scroll-story .hero-ball-field{z-index:2!important}
.hero-scroll-story .hero-demo-copy{z-index:20!important}

/* Subtle section-to-section background rhythm — deliberately low contrast. */
.home-faq{background:#fbfaff!important}
.services{background:#f5f3f9!important}
.projects{background:#f7f6fa!important}
.home-gallery{background:#fcfbfd!important}
.flow{background:#fff!important}
.about{background:#f8f7fb!important}
.why{background:#fbf9ff!important}
.integration-section{background:#f6f3fb!important}
.experiences{background:#fbfaff!important}
.clients{background:#faf9ff!important}

/* Product hero: reproduce the supplied dark/purple editorial UI with GEXAUZ colours. */
.gex-product-detail .product-hero-v3{
  min-height:clamp(720px,92vh,960px)!important;
  background:
    radial-gradient(ellipse at 50% 52%,rgba(106,45,232,.22) 0%,rgba(106,45,232,.10) 25%,transparent 55%),
    radial-gradient(circle at 18% 22%,rgba(106,45,232,.09),transparent 28%),
    linear-gradient(145deg,#070711 0%,#0b0916 52%,#100a1d 100%)!important;
}
.gex-product-detail .product-hero-v3::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.23;
  background-image:
    linear-gradient(30deg,transparent 48%,rgba(139,92,246,.12) 49%,transparent 50%),
    linear-gradient(150deg,transparent 48%,rgba(139,92,246,.10) 49%,transparent 50%);
  background-size:84px 84px;
  mask-image:linear-gradient(to bottom,transparent 0%,#000 22%,#000 78%,transparent 100%);
}
.gex-product-detail .product-hero-v3-glow-a{
  width:min(920px,78vw)!important;height:min(620px,65vw)!important;
  background:radial-gradient(ellipse,rgba(106,45,232,.26) 0%,rgba(106,45,232,.12) 34%,transparent 72%)!important;
}
.gex-product-detail .product-hero-v3-glow-b{
  background:radial-gradient(circle,rgba(255,87,191,.14),transparent 70%)!important;
}
.gex-product-detail .product-hero-v3-title{
  font-size:clamp(54px,7vw,104px)!important;
  line-height:.91!important;
}
.gex-product-detail .product-hero-v3-title em{
  background:linear-gradient(100deg,#8b5cf6 0%,#b66dff 42%,#ff5ebc 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent!important;
}
.gex-product-detail .product-hero-v3-desc{color:rgba(255,255,255,.72)!important}
.gex-product-detail .product-hero-v3-primary{
  background:linear-gradient(135deg,#6a2de8 0%,#9b68ff 48%,#e653bd 100%)!important;
}
.gex-product-detail .product-hero-v3-secondary{background:rgba(255,255,255,.045)!important}
.gex-product-detail .product-v3-stage{height:650px!important}
.gex-product-detail .product-v3-ring.ring-1{
  width:650px;height:650px;border-color:rgba(139,92,246,.16)!important;
}
.gex-product-detail .product-v3-ring.ring-2{
  width:475px;height:475px;border-color:rgba(255,94,188,.17)!important;
}
.gex-product-detail .product-v3-orb{
  width:205px;height:205px;
  background:radial-gradient(circle at 30% 24%,#d6c2ff 0%,#8b5cf6 28%,#6a2de8 58%,#210e51 100%)!important;
  box-shadow:0 0 110px rgba(106,45,232,.42),0 0 30px rgba(255,94,188,.14),inset -30px -32px 60px rgba(0,0,0,.34)!important;
}
.gex-product-detail .product-v3-card{
  border-color:rgba(255,255,255,.13)!important;
  box-shadow:0 32px 90px rgba(0,0,0,.42)!important;
}
.gex-product-detail .product-v3-card-main{
  background:linear-gradient(145deg,rgba(20,15,31,.96),rgba(11,9,18,.94))!important;
}
.gex-product-detail .product-v3-card-step{
  background:linear-gradient(145deg,#6a2de8 0%,#32136f 60%,#170b2e 100%)!important;
}
.gex-product-detail .product-v3-card-main i{background:linear-gradient(90deg,#8b5cf6,#ff5ebc)!important}
.gex-product-detail .product-v3-pill{box-shadow:0 16px 42px rgba(0,0,0,.28)!important}
.gex-product-detail .product-v3-caption b{background:linear-gradient(90deg,#fff,#c7b3ff);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Service detail: restored light-grey presentation with correct dark text. */
body.single-gex_service,
body.single-gex_service .site-content,
.gex-service-detail{background:#efefef!important;color:#17141c!important}
.gex-service-detail .service-header,
.gex-service-detail .service-body,
.gex-service-detail .why-matters,
.gex-service-detail .process{color:#17141c!important;background:transparent!important;box-shadow:none!important}
.gex-service-detail h1,
.gex-service-detail h2,
.gex-service-detail h3,
.gex-service-detail .stack-title,
.gex-service-detail .step-title{color:#17141c!important}
.gex-service-detail .service-lead,
.gex-service-detail .overview p,
.gex-service-detail .why-list li,
.gex-service-detail .step-text{color:#5f5a66!important}
.gex-service-detail .tag-chip{
  color:#3f3748!important;background:#fff!important;border-color:rgba(17,16,22,.10)!important;
}
.gex-service-detail .deliv-list li{border-color:rgba(17,16,22,.10)!important}
.gex-service-detail .deliv-num,
.gex-service-detail .intro-label{color:#817b87!important}
.gex-service-detail .service-hero-img,
.gex-service-detail .overview-img{box-shadow:none!important;background:#ddd!important}
.gex-service-detail .why-matters,
.gex-service-detail .process{border:0!important}

/* Blog hero: remove the explanatory sentence entirely. */
.gexauz-blog-intro{display:none!important}
.gexauz-blog-hero{min-height:300px!important;padding-bottom:45px!important}

/* Browse by category: use the same GEXAUZ theme gradient language. */
.gexauz-category-card,
.gexauz-category-card:nth-child(n){
  color:#fff!important;
  background:linear-gradient(135deg,#5f21ff 0%,#8b5cf6 46%,#d653d9 100%)!important;
}
.gexauz-category-card span,
.gexauz-category-card strong{color:#fff!important}

/* Loading polish: images fade in without changing their aspect ratio. */
.gex-product-detail img,
.gexauz-portfolio-archive img,
.gexauz-blog-page img{background:#eee;}
.gexauz-blog-page .gexauz-blog-thumb,
.gexauz-portfolio-archive .proj-thumb img{object-fit:cover!important}

@media(max-width:900px){
  .hero-scroll-story.hero-demo{height:360vh!important;min-height:360vh!important}
  .hero-scroll-story .hero-demo-inner{height:100svh!important;min-height:100svh!important}
  .gex-product-detail .product-hero-v3-inner{grid-template-columns:1fr!important}
  .gex-product-detail .product-hero-v3-stage{height:500px!important}
}
@media(max-width:600px){
  .hero-scroll-story.hero-demo{height:340vh!important;min-height:340vh!important}
  .hero-scroll-story .hero-demo-title{font-size:clamp(43px,13vw,72px)!important}
  .hero-scroll-story .hero-demo-lead{font-size:14px!important}
  .gex-product-detail .product-hero-v3{min-height:760px!important}
  .gex-product-detail .product-hero-v3-stage{height:390px!important}
  .gex-product-detail .product-v3-ring.ring-1{width:350px;height:350px}
  .gex-product-detail .product-v3-ring.ring-2{width:270px;height:270px}
  .gex-product-detail .product-v3-orb{width:120px;height:120px}
}

/* Product hero v2.7.20: centered editorial composition, matching the supplied reference. */
.gex-product-detail .product-hero-v3-inner{
  display:block!important;
  width:min(1320px,calc(100% - 7vw))!important;
  min-height:100%!important;
  position:relative!important;
}
.gex-product-detail .product-hero-v3-copy{
  position:relative!important;
  z-index:10!important;
  width:min(850px,92vw)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:clamp(120px,16vh,170px) 0 80px!important;
  text-align:center!important;
}
.gex-product-detail .product-hero-v3-kicker{justify-content:center!important}
.gex-product-detail .product-hero-v3-title{margin:22px auto 25px!important;max-width:900px!important}
.gex-product-detail .product-hero-v3-desc{margin:0 auto!important;max-width:620px!important}
.gex-product-detail .product-hero-v3-tags{justify-content:center!important}
.gex-product-detail .product-hero-v3-actions{justify-content:center!important}
.gex-product-detail .product-hero-v3-stage{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  pointer-events:none!important;
  z-index:4!important;
}
.gex-product-detail .product-v3-card,
.gex-product-detail .product-v3-pill{pointer-events:none!important}
.gex-product-detail .product-v3-card-main{left:4%!important;top:29%!important;transform:rotate(-8deg)!important}
.gex-product-detail .product-v3-card-step{right:3%!important;bottom:18%!important;transform:rotate(8deg)!important}
.gex-product-detail .product-v3-pill-top{right:13%!important;top:20%!important}
.gex-product-detail .product-v3-pill-bottom{left:13%!important;bottom:25%!important}
.gex-product-detail .product-v3-caption{bottom:8%!important}
@media(max-width:900px){
  .gex-product-detail .product-hero-v3-copy{padding-top:95px!important}
  .gex-product-detail .product-v3-card-main{left:0!important;top:35%!important;transform:scale(.82) rotate(-8deg)!important;transform-origin:left center!important}
  .gex-product-detail .product-v3-card-step{right:0!important;bottom:16%!important;transform:scale(.82) rotate(8deg)!important;transform-origin:right center!important}
  .gex-product-detail .product-v3-pill-top{right:2%!important;top:26%!important}
  .gex-product-detail .product-v3-pill-bottom{left:2%!important;bottom:25%!important}
}
@media(max-width:600px){
  .gex-product-detail .product-hero-v3-copy{padding-top:72px!important;width:calc(100% - 24px)!important}
  .gex-product-detail .product-hero-v3-title{font-size:clamp(46px,14vw,72px)!important}
  .gex-product-detail .product-v3-card-main{left:-16px!important;top:43%!important;transform:scale(.64) rotate(-8deg)!important}
  .gex-product-detail .product-v3-card-step{right:-16px!important;bottom:13%!important;transform:scale(.64) rotate(8deg)!important}
  .gex-product-detail .product-v3-pill-top,.gex-product-detail .product-v3-pill-bottom{display:none!important}
}

/* No elevated shadow treatment on Our Process / Why sections. */
.flow,.why,.flow-grid,.flow-card,.why > .wrap{box-shadow:none!important}

/* =========================================================
   GEXAUZ v2.7.22 — FINAL HOME MODULE LAYOUT / MOTION
========================================================= */

/* WHAT WE DO — three-column/pinned horizontal panels */
@media(min-width:760px){
  .services{overflow:clip;background:#f3f2f5!important;padding-bottom:0;}
  .services .section-head{padding-top:90px;padding-bottom:42px;position:relative;z-index:5;}
  .services .stack-list{height:78vh;overflow:visible;}
  .services .stack-card{
    border-radius:30px!important;
    padding:clamp(36px,5vw,70px)!important;
    min-height:78vh!important;
    height:78vh!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(360px,.92fr)!important;
    grid-template-rows:auto 1fr!important;
    align-items:center!important;
    gap:48px!important;
    box-shadow:0 20px 55px rgba(25,18,40,.08)!important;
    overflow:hidden!important;
  }
  .services .stack-head{grid-column:1;grid-row:1;align-self:end;display:block!important;}
  .services .stack-icon{margin-bottom:18px;}
  .services .stack-title{font-size:clamp(42px,5.2vw,82px)!important;line-height:.98!important;max-width:680px;}
  .services .stack-body{grid-column:1;grid-row:2;align-self:start;margin-top:20px!important;max-width:600px;}
  .services .service-card-media{grid-column:2;grid-row:1 / span 2;width:100%;height:72%;align-self:center;border-radius:28px;overflow:hidden;background:#e9e5f4;}
  .services .service-card-media img{width:100%;height:100%;object-fit:cover;display:block;transform-origin:center;}
  .services .service-external-link{top:28px;right:28px;}
}
@media(max-width:759px){
  .services{overflow:visible!important;}
  .services .stack-list{display:flex!important;flex-direction:column!important;gap:18px!important;padding:0 18px 70px!important;}
  .services .stack-card{position:relative!important;top:auto!important;left:auto!important;min-height:520px!important;height:auto!important;display:flex!important;padding:30px 24px!important;transform:none!important;}
  .services .service-card-media{order:2;width:100%;height:220px;border-radius:22px;overflow:hidden;margin-top:28px;}
  .services .service-card-media img{width:100%;height:100%;object-fit:cover;display:block;}
  .services .stack-head{order:1;}
  .services .stack-body{order:3;margin-top:auto;}
}

/* Portfolio — exactly six items, three clean columns */
.projects-bento .proj-grid,
.projects-bento .dynamic-projects{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:auto auto!important;
  grid-auto-rows:auto!important;
  gap:32px 22px!important;
  width:100%!important;
}
.projects-bento .proj-card,
.projects-bento .proj-card:nth-child(n){
  grid-column:auto!important;
  grid-row:auto!important;
  min-width:0!important;
  width:auto!important;
}
.projects-bento .proj-thumb{height:auto!important;aspect-ratio:4/3!important;min-height:0!important;border-radius:22px!important;overflow:hidden!important;}
.projects-bento .proj-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.projects-bento .proj-name{padding:14px 4px 0!important;line-height:1.2;}
.projects .load-more{text-align:center;margin-top:42px!important;}
@media(max-width:800px){
  .projects-bento .proj-grid,.projects-bento .dynamic-projects{grid-template-columns:1fr!important;gap:28px!important;}
}

/* Gallery — six visuals / three columns / two rows */
.home-gallery-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px!important;
  overflow:visible!important;
}
.home-gallery-card{display:block!important;width:100%!important;text-align:left;border:0!important;background:transparent!important;padding:0!important;}
.home-gallery-card-image{display:block;width:100%;aspect-ratio:4/3;border-radius:22px;overflow:hidden;background:#eee;}
.home-gallery-card-image img{width:100%;height:100%;object-fit:cover;display:block;}
.home-gallery-card-caption{display:flex!important;flex-direction:column;gap:5px;padding:14px 5px 0!important;}
.home-gallery-card-caption strong{font-size:18px;line-height:1.15;}
.home-gallery-card-caption small{font-size:12px;color:var(--muted);}
.gallery-view-more{text-align:center;margin-top:38px;}
@media(max-width:800px){.home-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;}}
@media(max-width:520px){.home-gallery-grid{grid-template-columns:1fr!important;}}

/* How we work — GEXAUZ theme cards */
.flow{background:linear-gradient(180deg,#f5f1ff 0%,#fbfbfc 52%,#f0ebff 100%)!important;overflow:hidden;}
.flow .section-head{position:relative;z-index:2;}
.flow-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important;}
.flow-card{
  position:relative;
  min-height:300px;
  padding:30px!important;
  border:1px solid rgba(106,45,232,.13)!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.78)!important;
  box-shadow:0 18px 55px rgba(106,45,232,.09)!important;
  backdrop-filter:blur(12px);
}
.flow-card:nth-child(2){transform:translateY(24px);}
.flow-card:nth-child(3){transform:translateY(48px);}
.flow-card:nth-child(4){transform:translateY(72px);}
.flow-card.is-flow-active{transform:translateY(-6px)!important;box-shadow:0 28px 70px rgba(106,45,232,.16)!important;}
.flow-tag{background:#fff!important;color:#6a2de8!important;border:1px solid rgba(106,45,232,.16);}
@media(max-width:900px){.flow-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.flow-card:nth-child(n){transform:none;}.flow-card.is-flow-active{transform:translateY(-4px)!important;}}
@media(max-width:600px){.flow-grid{grid-template-columns:1fr;}.flow-card{min-height:250px;}}

/* Why choose us — dummy content cards, intentionally no heavy shadow */
.why{background:#f4f3f6!important;}
.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px;}
.why-card{padding:30px;border:1px solid rgba(106,45,232,.13);border-radius:24px;background:#fff!important;box-shadow:none!important;}
.why-number{display:block;color:#6a2de8;font-size:12px;font-weight:800;letter-spacing:.16em;margin-bottom:45px;}
.why-card h3{font-size:24px;line-height:1.05;margin:0 0 12px;}
.why-card p{margin:0;color:var(--muted);line-height:1.65;}
@media(max-width:800px){.why-grid{grid-template-columns:1fr;}.why-number{margin-bottom:25px;}}

/* Testimonials — visual motion state */
.testimonials-stage{overflow:hidden!important;}
.test-track-single{display:flex!important;will-change:transform;}
.test-card{will-change:transform;}
.test-card:hover{transform:translateY(-7px) rotate(.4deg);transition:transform .35s cubic-bezier(.22,1,.36,1);}

/* Team image transition */
.team-card{overflow:hidden;border-radius:24px;}
.team-card img{width:100%;height:100%;object-fit:cover;display:block;will-change:transform,clip-path,opacity;}

/* FAQ — moved to the end of homepage, just before footer */
.home-faq{background:linear-gradient(180deg,#faf9ff 0%,#f0eaff 100%)!important;padding:110px 0!important;}
.home-faq-grid{display:grid!important;grid-template-columns:minmax(250px,.72fr) minmax(0,1.45fr)!important;gap:70px!important;align-items:start;}
.home-faq-intro{position:sticky;top:120px;}
.home-faq-list{background:#fff;border:1px solid rgba(106,45,232,.12);border-radius:28px;padding:10px 28px;box-shadow:0 20px 65px rgba(106,45,232,.08);}
.home-faq-item{border-bottom:1px solid rgba(17,17,17,.09)!important;}
.home-faq-item:last-child{border-bottom:0!important;}
.home-faq-item summary{font-size:19px!important;padding:24px 0!important;}
.home-faq-answer{padding:0 55px 25px 0!important;color:#666!important;line-height:1.65!important;}
@media(max-width:800px){.home-faq{padding:75px 0!important;}.home-faq-grid{grid-template-columns:1fr!important;gap:28px!important;}.home-faq-intro{position:relative;top:auto;}.home-faq-list{padding:8px 20px;}.home-faq-item summary{font-size:17px!important;}}

/* Product pinned sequence — clean timeline with one snap per product */
.products-home-fullscreen{overflow:hidden!important;}
.products-loop-panel{will-change:transform,opacity;}
.products-loop-image-wrap img{will-change:transform,opacity;}
.products-loop-caption{will-change:transform,opacity;}

/* Prevent any horizontal scrollbar introduced by motion */
html{overflow-x:hidden;}

/* =========================================================
   v2.7.23 — precise scroll stories + cursor blog preview
   ========================================================= */

/* Hero: one viewport, three snap points, no horizontal overflow. */
.hero-scroll-story{
  width:100%;
  min-height:100vh;
  height:100vh;
  overflow:hidden!important;
}
.hero-scroll-story .hero-copy-slider{
  position:relative;
  height:100%;
  overflow:hidden;
}
.hero-scroll-story .hero-copy-slide{
  will-change:transform,opacity,filter;
}
.hero-scroll-story .hero-demo-stage,
.hero-scroll-story .hero-visual-slider{
  will-change:transform;
}

/* Product timeline: panel is a true viewport stage. */
.products-home-fullscreen{
  position:relative;
  min-height:100vh;
  overflow:hidden;
}
.products-home-fullscreen .products-loop-panel{
  min-height:100vh;
  overflow:hidden;
  will-change:transform,opacity;
}
.products-home-fullscreen .products-loop-panel-inner{
  min-height:100vh;
}
.products-loop-image-wrap,
.products-loop-caption{
  will-change:transform,opacity,filter;
}

/* Cursor-tracking preview for blog cards. */
.gexauz-cursor-blog-preview{
  position:fixed;
  z-index:99999;
  left:0;
  top:0;
  width:300px;
  height:210px;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transform:translate3d(calc(var(--mx, -500px)),calc(var(--my, -500px)),0) scale(.86) rotate(-2deg);
  transform-origin:top left;
  transition:opacity .22s ease,visibility .22s ease,transform .38s cubic-bezier(.22,1,.36,1);
}
.gexauz-cursor-blog-preview.is-visible{
  opacity:1;
  visibility:visible;
  transform:translate3d(calc(var(--mx, -500px)),calc(var(--my, -500px)),0) scale(1) rotate(0deg);
}
.gexauz-cursor-blog-preview-inner{
  width:100%;
  height:100%;
  padding:7px;
  border:1px solid rgba(106,45,232,.18);
  border-radius:20px;
  background:rgba(255,255,255,.92);
  box-shadow:0 24px 70px rgba(38,17,77,.22);
  backdrop-filter:blur(10px);
}
.gexauz-cursor-blog-preview img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:14px;
}

@media (max-width:760px){
  .hero-scroll-story{height:auto;min-height:100svh;overflow:hidden!important}
  .hero-scroll-story .hero-copy-slider{min-height:100svh}
  .products-home-fullscreen{min-height:auto;overflow:visible}
  .products-home-fullscreen .products-loop-panel,
  .products-home-fullscreen .products-loop-panel-inner{min-height:auto}
  .gexauz-cursor-blog-preview{display:none!important}
}


/* =========================================================
   PORTFOLIO GRID — final responsive rules
========================================================= */
#portfolio .proj-grid,
.gexauz-portfolio-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
#portfolio .proj-card{min-width:0 !important;overflow:hidden !important}
#portfolio .proj-thumb{overflow:hidden !important}
#portfolio .proj-thumb img{width:100% !important;height:auto !important;display:block !important;object-fit:cover !important}
@media(max-width:900px){
  #portfolio .proj-grid,.gexauz-portfolio-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:640px){
  #portfolio .proj-grid,.gexauz-portfolio-grid-v2{grid-template-columns:1fr !important}
}

/* =========================================================
   GEXAUZ v2.7.25 TARGETED RESTORE
   Hero video only + one-column pinned services
========================================================= */
.hero-video-story{
  position:relative!important;
  isolation:isolate;
  min-height:100vh;
  background:#08050f!important;
  overflow:hidden!important;
}
.hero-video-bg{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;display:block!important;z-index:0!important;
}
.hero-video-overlay{
  position:absolute!important;inset:0!important;z-index:1!important;
  background:linear-gradient(180deg,rgba(5,3,10,.46),rgba(25,8,52,.68) 58%,rgba(7,4,14,.82));
  pointer-events:none;
}
.hero-video-story .hero-demo-grid,.hero-video-story .hero-demo-nav-glow{z-index:2!important;opacity:.18!important}
.hero-video-story .hero-demo-inner{position:relative!important;z-index:5!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:100vh!important;width:100%!important}
.hero-video-story .hero-demo-copy{width:min(900px,92vw)!important;text-align:center!important;margin:0 auto!important}
.hero-video-story .hero-copy-slider{width:100%!important}
.hero-video-story .hero-demo-kicker{justify-content:center!important;color:#ddd!important}
.hero-video-story .hero-demo-title{max-width:900px!important;margin-left:auto!important;margin-right:auto!important;color:#fff!important}
.hero-video-story .hero-demo-lead{max-width:720px!important;margin-left:auto!important;margin-right:auto!important;color:rgba(255,255,255,.82)!important}
.hero-video-story .hero-demo-actions{justify-content:center!important}
.hero-video-story .hero-demo-stat{color:#fff!important}
.hero-video-story .hero-demo-bottom{z-index:6!important;color:rgba(255,255,255,.7)!important}
.hero-video-story .hero-ball-field,.hero-video-story .hero-three-wrap,.hero-video-story .hero-product-ui,.hero-video-story .hero-service-orbit,.hero-video-story .hero-demo-drag,.hero-video-story .hero-demo-wow{display:none!important}

/* Services: one full-width service panel per scroll stage. */
.services .stack-list{display:block!important;width:100%!important;height:auto;perspective:none!important}
.services .stack-card{width:100%!important;box-sizing:border-box!important;min-height:100%!important;margin:0!important;border-radius:28px!important;box-shadow:none!important}
.services .stack-card .service-card-media{display:block!important}
@media(min-width:760px){
  .services{overflow:visible!important}
  .services .stack-list{height:100vh!important;overflow:hidden!important}
  .services .stack-card{height:100%!important;min-height:100%!important}
}
@media(max-width:759px){
  .hero-video-story .hero-demo-inner{min-height:100svh!important}
  .hero-video-story .hero-demo-title{font-size:clamp(46px,14vw,76px)!important}
  .hero-video-story .hero-demo-stats{grid-template-columns:repeat(3,1fr)!important}
  .services .stack-list{height:auto!important;overflow:visible!important}
  .services .stack-card{position:relative!important;inset:auto!important;height:auto!important;min-height:460px!important;margin-bottom:18px!important}
  .services .stack-card .service-card-media{position:absolute!important;right:7%!important;left:auto!important;top:30%!important;width:46%!important;height:48%!important}
  .services .stack-card:nth-child(even) .service-card-media{left:7%!important;right:auto!important}
}

/* =========================================================
   GEXAUZ v2.7.25 REFERENCE UI PASS
   Homepage hero + What We Do reference layouts
========================================================= */
.gex-reference-hero{position:relative;min-height:100vh;min-height:100svh;overflow:hidden;background:#09090b;color:#fff;isolation:isolate;padding:18px clamp(14px,4vw,64px);display:flex;align-items:center}
.gex-ref-hero-video,.gex-ref-hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-4}
.gex-ref-hero-fallback{background-size:cover;background-position:center}
.gex-ref-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,5,8,.25) 0%,rgba(4,5,8,.38) 42%,rgba(3,3,5,.96) 100%),linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.12) 70%);z-index:-3}
.gex-ref-hero-grid{position:absolute;inset:0;z-index:-2;opacity:.16;background-image:radial-gradient(circle at 18% 30%,rgba(255,255,255,.5) 0 1px,transparent 1.5px),radial-gradient(circle at 82% 18%,rgba(255,255,255,.35) 0 1px,transparent 1.5px);background-size:180px 180px,240px 240px;pointer-events:none}
.gex-ref-hero-shell{position:relative;width:min(1440px,100%);min-height:calc(100vh - 36px);min-height:calc(100svh - 36px);margin:auto;border:1px solid rgba(255,255,255,.12);border-radius:30px;overflow:hidden;background:rgba(10,10,12,.18);backdrop-filter:blur(2px);display:flex;flex-direction:column;justify-content:space-between}
.gex-ref-hero-topline{height:76px;padding:0 clamp(20px,3vw,42px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(10,10,12,.45),rgba(10,10,12,.08));position:relative;z-index:8}
.gex-ref-brand{font-size:22px;font-weight:900;letter-spacing:-1px}.gex-ref-brand span{color:#6a2de8}.gex-ref-nav{display:flex;gap:28px;font-size:12px;color:rgba(255,255,255,.8);justify-content:center}.gex-ref-contact{justify-self:end;color:#fff;text-decoration:none;background:#1b1b1d;border:1px solid rgba(255,255,255,.1);padding:10px 12px 10px 18px;border-radius:999px;font-size:12px;font-weight:800}.gex-ref-contact i{font-style:normal;display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;margin-left:8px;background:#6a2de8}
.gex-ref-hero-copy{position:absolute;inset:76px 0 0;z-index:5}.gex-ref-hero-slide{position:absolute;inset:0;padding:clamp(110px,17vh,170px) clamp(24px,6vw,84px) 120px;max-width:900px;display:flex;flex-direction:column;justify-content:center;opacity:0;visibility:hidden}.gex-ref-hero-slide.is-active{opacity:1;visibility:visible}.gex-ref-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#c8c4ca;font-weight:800;display:flex;gap:9px;align-items:center;margin-bottom:24px}.gex-ref-eyebrow span{color:#8f65ff}.gex-ref-hero-slide h1{font-size:clamp(54px,7.2vw,112px);line-height:.92;letter-spacing:-.07em;max-width:900px;margin:0 0 25px;font-weight:850}.gex-ref-hero-slide h1 em{color:#b98dff}.gex-ref-hero-slide p{max-width:620px;color:rgba(255,255,255,.78);font-size:clamp(16px,1.45vw,20px);line-height:1.55;margin:0}.gex-ref-actions{margin-top:32px}.gex-ref-primary{display:inline-flex;align-items:center;gap:13px;background:#fff;color:#111;text-decoration:none;border-radius:999px;padding:13px 16px 13px 20px;font-size:13px;font-weight:850}.gex-ref-primary i{font-style:normal;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#6a2de8;color:#fff}.gex-ref-work-card{position:absolute;right:30px;bottom:54px;width:min(330px,30vw);padding:18px 18px 17px;border-radius:18px;background:rgba(30,30,32,.88);border:1px solid rgba(255,255,255,.1);color:#fff;text-decoration:none;z-index:9;backdrop-filter:blur(16px)}.gex-ref-work-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.gex-ref-work-top strong{font-size:15px}.gex-ref-work-thumbs{display:flex;align-items:center}.gex-ref-work-thumbs img{width:28px;height:28px;object-fit:cover;border-radius:7px;border:2px solid #262629;margin-left:-5px}.gex-ref-work-thumbs b{font-size:10px;margin-left:6px;background:#6a2de8;border-radius:8px;padding:7px 8px}.gex-ref-work-card p{font-size:12px;line-height:1.5;color:#bdbabd;max-width:230px;margin:18px 0 4px}.gex-ref-arrow{position:absolute;right:18px;bottom:16px;font-size:22px}.gex-ref-hero-dots{position:absolute;left:50%;bottom:25px;transform:translateX(-50%);z-index:10;display:flex;gap:7px}.gex-ref-hero-dots button{width:30px;height:3px;border:0;background:rgba(255,255,255,.28);padding:0;border-radius:4px;cursor:pointer}.gex-ref-hero-dots button.is-active{background:#fff}

.gex-reference-services{background:#050506;padding:90px clamp(14px,4vw,64px);color:#fff;overflow:clip}.gex-ref-services-shell{width:min(1440px,100%);margin:auto;border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:34px clamp(20px,4vw,48px) 42px;background:#0a0a0b}.gex-ref-services-head{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:35px;margin-bottom:20px}.gex-ref-services-kicker{font-size:13px;color:#fff;margin-bottom:22px}.gex-ref-services-head h2{font-size:clamp(48px,5.2vw,76px);line-height:.9;letter-spacing:-.065em;font-weight:450;margin:0}.gex-ref-services-head>a{color:#ff5b19;text-decoration:none;font-size:17px;border-bottom:1px solid #ff5b19;padding-bottom:7px}.gex-ref-service-stage{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:22px;align-items:start}.gex-ref-service-list{min-height:540px}.gex-ref-service-item{border-bottom:1px solid rgba(255,255,255,.12);transition:background .35s ease}.gex-ref-service-trigger{width:100%;background:none;border:0;color:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:30px 10px 27px 0;font-size:clamp(26px,3vw,43px);font-weight:430;letter-spacing:-.045em;cursor:pointer}.gex-ref-service-trigger i{width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:18px;transition:transform .35s ease,background .35s ease}.gex-ref-service-item:not(.is-active) .gex-ref-service-trigger i{transform:rotate(180deg)}.gex-ref-service-item.is-active .gex-ref-service-trigger{color:#fff}.gex-ref-service-detail{height:0;opacity:0;overflow:hidden;max-width:690px}.gex-ref-service-item.is-active .gex-ref-service-detail{height:auto;opacity:1;padding:0 70px 30px 0}.gex-ref-service-detail p{font-size:16px;line-height:1.65;color:#c8c8ca;margin:0 0 18px}.gex-ref-service-detail>a{color:#fff;font-weight:750;text-decoration:none}.gex-ref-service-tags{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 20px}.gex-ref-service-tags span{font-size:10px;border:1px solid rgba(255,255,255,.16);padding:6px 9px;border-radius:999px;color:#c9c9cb}.gex-ref-service-visual{position:sticky;top:90px}.gex-ref-service-image-wrap{height:430px;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#171719,#25212c)}.gex-ref-service-image-wrap img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transform:scale(1.04);transition:opacity .5s ease,transform .8s cubic-bezier(.22,1,.36,1)}.gex-ref-service-image-wrap img.is-loaded{opacity:1;transform:scale(1)}.gex-ref-service-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.gex-ref-service-metrics>div{min-height:190px;border-radius:18px;padding:26px;background:#22c95a;color:#fff;display:flex;flex-direction:column}.gex-ref-service-metrics>div+div{background:#424244}.gex-ref-service-metrics strong{font-size:36px;line-height:1;letter-spacing:-.05em}.gex-ref-service-metrics span{font-size:16px;font-weight:700;margin-top:7px}.gex-bars{margin-top:auto;letter-spacing:8px;opacity:.9;font-size:17px}.gex-chart{margin-top:auto;height:52px;background:linear-gradient(90deg,transparent 0 15%,#777 15% 18%,transparent 18% 30%,#888 30% 33%,transparent 33% 47%,#aaa 47% 50%,transparent 50% 63%,#bbb 63% 66%,transparent 66% 78%,#ccc 78% 81%,transparent 81%);border-bottom:2px solid #777}

@media(max-width:900px){.gex-ref-hero-topline{grid-template-columns:1fr auto}.gex-ref-nav{display:none}.gex-ref-hero-slide{padding-right:30px}.gex-ref-work-card{right:20px;bottom:70px;width:280px}.gex-ref-service-stage{grid-template-columns:1fr}.gex-ref-service-visual{position:relative;top:auto}.gex-ref-service-list{min-height:0}}
@media(max-width:600px){.gex-reference-hero{padding:8px}.gex-ref-hero-shell{min-height:calc(100svh - 16px);border-radius:22px}.gex-ref-hero-topline{height:62px;padding:0 15px}.gex-ref-brand{font-size:20px}.gex-ref-contact{font-size:11px;padding:8px 9px 8px 14px}.gex-ref-contact i{width:23px;height:23px}.gex-ref-hero-copy{inset:62px 0 0}.gex-ref-hero-slide{padding:80px 22px 160px;justify-content:center}.gex-ref-hero-slide h1{font-size:clamp(43px,12vw,68px);line-height:.94}.gex-ref-hero-slide p{font-size:15px}.gex-ref-work-card{left:18px;right:18px;bottom:48px;width:auto}.gex-ref-hero-dots{bottom:17px}.gex-reference-services{padding:50px 10px}.gex-ref-services-shell{border-radius:20px;padding:24px 18px 28px}.gex-ref-services-head{align-items:flex-start;padding-bottom:24px}.gex-ref-services-head h2{font-size:48px}.gex-ref-services-head>a{font-size:13px}.gex-ref-service-trigger{font-size:28px;padding:24px 0}.gex-ref-service-trigger i{width:36px;height:36px}.gex-ref-service-item.is-active .gex-ref-service-detail{padding:0 0 25px}.gex-ref-service-image-wrap{height:260px}.gex-ref-service-metrics>div{min-height:150px;padding:20px}.gex-ref-service-metrics strong{font-size:29px}}

/* =========================================================
   GEXAUZ v2.7.28 — FINAL CONSOLIDATION OVERRIDES
   These rules intentionally sit last so legacy iterations cannot
   override the final homepage architecture.
========================================================= */

:root{
  --gex-purple:#6a2de8;
  --gex-purple-2:#9b6cff;
  --gex-lilac:#eee8ff;
  --gex-ink:#0b0b0d;
  --gex-paper:#faf9f7;
  --gex-line:rgba(15,15,18,.10);
}

html{scroll-behavior:auto!important;overflow-x:hidden}
body{overflow-x:hidden;background:var(--gex-paper)}
img{max-width:100%;height:auto}

/* ---------- FINAL HERO ---------- */
.gex-reference-hero{
  position:relative!important;
  min-height:100svh!important;
  height:100svh!important;
  padding:12px!important;
  background:#070708!important;
  color:#fff!important;
  overflow:hidden!important;
}
.gex-ref-hero-shell{
  min-height:calc(100svh - 24px)!important;
  height:calc(100svh - 24px)!important;
  width:min(1440px,100%)!important;
  margin:0 auto!important;
  border-radius:28px!important;
  background:rgba(5,5,7,.16)!important;
}
.gex-ref-hero-video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  z-index:-4!important;
  pointer-events:none!important;
}
.gex-ref-hero-youtube{border:0!important;transform:scale(1.08)!important}
.gex-ref-hero-overlay{
  background:
    linear-gradient(180deg,rgba(5,5,8,.24) 0%,rgba(5,5,8,.42) 45%,rgba(3,3,5,.94) 100%),
    linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.18) 72%)!important;
}
.gex-ref-hero-grid{opacity:.08!important}
.gex-ref-hero-slide{max-width:900px!important}
.gex-ref-hero-slide h1{max-width:850px!important;font-weight:800!important}
.gex-ref-work-card{z-index:12!important}
.gex-ref-hero-dots{z-index:13!important}

/* ---------- FINAL PRODUCTS HOMEPAGE ---------- */
.products-home-fullscreen{
  position:relative!important;
  background:#f3f0f7!important;
  overflow:clip!important;
}
.products-home-fullscreen .products-loop-panel{
  background:#f3f0f7!important;
  min-height:100svh!important;
}
.products-home-fullscreen .products-loop-panel-inner{
  width:min(1200px,calc(100% - 40px))!important;
  min-height:100svh!important;
  margin:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;
  gap:clamp(35px,6vw,90px)!important;
  align-items:center!important;
}
.products-loop-image-wrap{
  border-radius:28px!important;
  overflow:hidden!important;
  background:#e7e0f6!important;
}
.products-loop-image-wrap img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.products-loop-caption{max-width:620px!important}
.products-loop-caption h2{font-size:clamp(48px,6vw,86px)!important;line-height:.92!important;letter-spacing:-.065em!important}
.products-loop-description{font-size:17px!important;line-height:1.6!important;color:#5f5c65!important;max-width:560px}
.products-loop-tags span{border-color:rgba(106,45,232,.18)!important;background:#fff!important;color:#5e4a83!important}

/* ---------- FINAL SERVICES: REFERENCE DASHBOARD + PINNED STAGES ---------- */
.gex-reference-services{
  background:#050506!important;
  padding:clamp(70px,9vw,120px) clamp(12px,4vw,60px)!important;
  color:#fff!important;
}
.gex-ref-services-shell{
  width:min(1440px,100%)!important;
  background:#09090a!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:28px!important;
  padding:clamp(25px,4vw,48px)!important;
}
.gex-ref-service-stage{grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr)!important;align-items:start!important}
.gex-ref-service-list{min-height:0!important}
.gex-ref-service-item{background:#1b1b1c!important;border:0!important;border-radius:22px!important;margin-bottom:12px!important;overflow:hidden!important;transition:background .35s ease,transform .35s ease!important}
.gex-ref-service-item.is-active{background:#202021!important}
.gex-ref-service-trigger{padding:27px 28px!important;font-size:clamp(23px,2.5vw,38px)!important}
.gex-ref-service-detail{max-width:none!important}
.gex-ref-service-item.is-active .gex-ref-service-detail{padding:0 28px 28px!important}
.gex-ref-service-visual{position:sticky!important;top:30px!important}
.gex-ref-service-image-wrap{height:min(34vw,430px)!important;min-height:280px!important;border-radius:22px!important;background:#161618!important}
.gex-ref-service-metrics>div{min-height:190px!important}
.gex-ref-service-metrics strong{font-size:clamp(30px,3vw,46px)!important}

/* ---------- PORTFOLIO EXACTLY 6 / 3 x 2 ---------- */
.projects-bento{width:100%!important;overflow:visible!important}
.projects-bento .proj-grid.dynamic-projects{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  gap:28px!important;
  width:100%!important;
}
.projects-bento .proj-card,
.projects-bento .proj-card:nth-child(n){
  width:auto!important;
  min-width:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
  aspect-ratio:auto!important;
  transform:none!important;
}
.projects-bento .proj-thumb,
.projects-bento .proj-thumb img{width:100%!important;aspect-ratio:4/3!important;height:auto!important;min-height:0!important;object-fit:cover!important}
.projects-bento .proj-card{overflow:hidden!important}
.projects-bento .proj-name{position:static!important;padding:14px 3px 0!important;background:transparent!important;color:var(--text,#111)!important;font-size:20px!important;line-height:1.15!important}
.projects-bento .proj-tag{display:block!important;margin-top:7px!important;font-size:12px!important;color:var(--muted,#777)!important}
.projects .load-more{text-align:center!important;margin-top:35px!important}

/* ---------- GALLERY EXACTLY 6 / 3 x 2 ---------- */
.home-gallery-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
}
.home-gallery-card{min-width:0!important}
.home-gallery-card-image{aspect-ratio:4/3!important;border-radius:20px!important}
.home-gallery-card-image img{object-fit:cover!important}
.home-gallery-card-caption{padding:13px 4px 0!important}
.gallery-view-more{text-align:center!important;margin-top:35px!important}

/* ---------- FAQ FINAL SECTION ---------- */
.home-faq{padding:95px 0!important;background:linear-gradient(180deg,#faf9ff 0%,#eee7ff 100%)!important}
.home-faq-grid{grid-template-columns:1fr!important;max-width:1000px!important;margin:auto!important;gap:32px!important}
.home-faq-intro{position:static!important;text-align:center!important;max-width:720px!important;margin:auto!important}
.home-faq-list{border-radius:28px!important;padding:8px 30px!important;box-shadow:none!important;background:#fff!important}
.home-faq-item summary{padding:25px 0!important;font-size:19px!important}
.home-faq-answer{line-height:var(--gexauz-blog-line-height,1.65)!important;padding:0 45px 25px 0!important}

/* ---------- HOMEPAGE CTA BEFORE FAQ ---------- */
.home-inline-cta{padding:90px 20px!important;background:#09090b!important;color:#fff!important;text-align:center!important}
.home-inline-cta-inner{max-width:900px;margin:auto}
.home-inline-cta h2{font-size:clamp(48px,7vw,88px);line-height:.92;letter-spacing:-.065em;margin:20px 0}
.home-inline-cta p{color:#b9b7bd;line-height:1.6;font-size:18px}
.home-inline-cta p strong,.home-inline-cta p span{color:#fff}
.home-inline-cta .eyebrow{color:#a98aff}

/* ---------- PRODUCT ARCHIVE ONE COLUMN ---------- */
.gexauz-product-grid-one-column{display:grid!important;grid-template-columns:1fr!important;gap:28px!important;max-width:1000px!important;margin-left:auto!important;margin-right:auto!important}
.gexauz-product-grid-one-column .gexauz-product-card{width:100%!important}
.gexauz-product-grid-one-column .gexauz-product-card-link{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr)!important;gap:30px!important;align-items:center!important}
.gexauz-product-grid-one-column .gexauz-product-thumb{aspect-ratio:16/10!important}

/* ---------- FOOTER ---------- */
.gexauz-footer{width:100%!important}
.gexauz-footer-brand-row{width:100%!important;display:flex!important;justify-content:center!important;overflow:hidden!important}
.gexauz-footer-brand{font-size:clamp(96px,18vw,260px)!important;line-height:.72!important;letter-spacing:-.08em!important;text-align:center!important;width:100%!important;transform:scaleX(1.12)!important;transform-origin:center!important}
.gexauz-footer-bottom{width:100%!important}

/* ---------- REMOVE LEGACY DECORATIVE HERO OBJECTS IF PRESENT ---------- */
.gexauz-global-svg,.hero-demo-stage .hero-demo-card,.hero-demo-stage #hero-demo-core{display:none!important}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .products-home-fullscreen .products-loop-panel-inner{grid-template-columns:1fr!important;width:min(720px,calc(100% - 28px))!important;gap:24px!important;padding:55px 0!important}
  .products-home-fullscreen .products-loop-panel{min-height:auto!important}
  .gex-ref-service-stage{grid-template-columns:1fr!important}
  .gex-ref-service-visual{position:relative!important;top:auto!important}
  .projects-bento .proj-grid.dynamic-projects,.home-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .gexauz-product-grid-one-column .gexauz-product-card-link{grid-template-columns:1fr!important}
}
@media(max-width:600px){
  .gex-reference-hero{padding:7px!important}
  .gex-ref-hero-shell{min-height:calc(100svh - 14px)!important;height:calc(100svh - 14px)!important;border-radius:21px!important}
  .gex-ref-hero-slide{padding:70px 20px 150px!important}
  .gex-ref-hero-slide h1{font-size:clamp(42px,12vw,66px)!important}
  .gex-ref-work-card{left:16px!important;right:16px!important;bottom:46px!important;width:auto!important}
  .gex-ref-service-trigger{padding:23px 20px!important;font-size:26px!important}
  .gex-ref-service-item.is-active .gex-ref-service-detail{padding:0 20px 23px!important}
  .gex-ref-service-image-wrap{height:250px!important;min-height:250px!important}
  .projects-bento .proj-grid.dynamic-projects,.home-gallery-grid{grid-template-columns:1fr!important;gap:24px!important}
  .home-faq{padding:70px 0!important}
  .home-faq-list{padding:5px 20px!important;border-radius:22px!important}
  .home-faq-item summary{font-size:17px!important}
  .home-inline-cta{padding:70px 18px!important}
  .home-inline-cta h2{font-size:48px}
  .gexauz-footer-brand{font-size:clamp(78px,22vw,150px)!important}
}


/* =========================================================
   GEXAUZ v2.7.36 — PRODUCT PINNED CARDS + HERO BORDER FIX
========================================================= */
/* Remove the visible frame/border around the homepage hero slider. */
.gex-ref-hero-shell{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.gex-ref-hero-topline{border-bottom:0!important}
@media(max-width:600px){.gex-reference-hero{padding:0!important}.gex-ref-hero-shell{border-radius:0!important;min-height:100svh!important;height:100svh!important}}

/* Homepage products: match the wide pastel service-card language, but keep
   each product's own featured image as a secondary visual. */
.products-home-fullscreen{
  position:relative!important;
  background:#f7f5f8!important;
  overflow:visible!important;
  padding:clamp(70px,8vw,110px) 0!important;
}
.products-home-fullscreen .products-pinned-card{
  width:min(1240px,calc(100% - 48px))!important;
  min-height:72vh!important;
  margin:0 auto 28px!important;
  border:1px solid rgba(106,45,232,.12)!important;
  border-radius:30px!important;
  overflow:hidden!important;
  color:#15131b!important;
  position:relative!important;
  box-sizing:border-box!important;
  will-change:transform,opacity,filter!important;
}
.products-pinned-card--0{background:linear-gradient(135deg,#eee5ff 0%,#e7dcff 100%)!important}
.products-pinned-card--1{background:linear-gradient(135deg,#edf3ff 0%,#e5edff 100%)!important}
.products-pinned-card--2{background:linear-gradient(135deg,#f3e8ff 0%,#eee1ff 100%)!important}
.products-pinned-card--3{background:linear-gradient(135deg,#eaf8f0 0%,#e4f4ed 100%)!important}
.products-pinned-card-inner{
  min-height:72vh!important;
  padding:clamp(34px,5vw,68px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(280px,.7fr)!important;
  gap:clamp(30px,6vw,90px)!important;
  align-items:center!important;
}
.products-pinned-card-copy{max-width:720px!important}
.products-pinned-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}
.products-pinned-kicker{display:flex;align-items:center;gap:8px;color:#6a2de8;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:24px}
.products-pinned-kicker>span{font-size:16px}
.products-pinned-card h2{margin:0!important;font-size:clamp(42px,5.7vw,82px)!important;line-height:.92!important;letter-spacing:-.065em!important;font-weight:750!important;color:#121016!important;max-width:760px!important}
.products-pinned-arrow{flex:0 0 52px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#6a2de8;text-decoration:none;font-size:21px;font-weight:700;box-shadow:0 10px 30px rgba(74,44,125,.10)}
.products-pinned-description{font-size:17px!important;line-height:1.65!important;color:#5d5963!important;max-width:660px!important;margin:32px 0 22px!important}
.products-pinned-tags{display:flex;gap:9px;flex-wrap:wrap}
.products-pinned-tags span{padding:9px 14px;border:1px solid rgba(106,45,232,.14);border-radius:999px;background:rgba(255,255,255,.48);color:#5d43a0;font-size:11px;font-weight:800}
.products-pinned-link{display:inline-flex;gap:8px;align-items:center;margin-top:28px;color:#17131e;text-decoration:none;font-size:14px;font-weight:800;border-bottom:1px solid rgba(23,19,30,.25);padding-bottom:4px}
.products-pinned-media{position:relative;display:block;min-height:330px;max-height:430px;border-radius:24px;overflow:hidden;background:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.65);box-shadow:0 24px 70px rgba(71,47,110,.10);text-decoration:none}
.products-pinned-media::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(106,45,232,.08),transparent 55%);pointer-events:none}
.products-pinned-media img{width:100%!important;height:100%!important;min-height:330px!important;object-fit:cover!important;display:block!important;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .6s ease!important}
.products-pinned-card.is-active .products-pinned-media img{transform:scale(1.015)!important}
@media(min-width:760px){
  .products-home-fullscreen{min-height:calc(100vh + 1px)!important}
  .products-home-fullscreen .products-pinned-card{min-height:72vh!important}
}
@media(max-width:759px){
  .products-home-fullscreen{padding:55px 0!important}
  .products-home-fullscreen .products-pinned-card{width:calc(100% - 28px)!important;min-height:auto!important;margin-bottom:18px!important;border-radius:24px!important}
  .products-pinned-card-inner{min-height:auto!important;padding:27px 22px 30px!important;grid-template-columns:1fr!important;gap:26px!important}
  .products-pinned-card h2{font-size:clamp(40px,12vw,60px)!important}
  .products-pinned-arrow{width:44px;height:44px;flex-basis:44px}
  .products-pinned-media{min-height:250px!important;max-height:none!important;order:2}
  .products-pinned-media img{min-height:250px!important}
  .products-pinned-description{font-size:15px!important;margin-top:24px!important}
}

/* =========================================================
   GEXAUZ v2.7.38 — HOME SERVICES / PRODUCTS / SWIPE SLIDER
========================================================= */

/* Services: single-column editorial accordion, one shared theme color. */
.gex-reference-services{
  background:#eef0ed!important;
  color:#16161a!important;
  padding:clamp(58px,7vw,92px) clamp(14px,4vw,64px)!important;
}
.gex-ref-services-shell{
  width:min(1240px,100%)!important;
  margin:0 auto!important;
  border:1px solid rgba(106,45,232,.10)!important;
  border-radius:28px!important;
  padding:clamp(26px,4vw,48px)!important;
  background:#f7f8f5!important;
  box-shadow:none!important;
}
.gex-ref-services-head{
  border-bottom:1px solid rgba(22,22,26,.10)!important;
  padding-bottom:30px!important;
  margin-bottom:4px!important;
}
.gex-ref-services-kicker{color:#6a2de8!important;margin-bottom:14px!important;font-size:12px!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.gex-ref-services-head h2{color:#17131e!important;font-size:clamp(42px,5vw,70px)!important;font-weight:650!important;line-height:.92!important}
.gex-ref-services-head>a{color:#6a2de8!important;border-bottom:1px solid rgba(106,45,232,.45)!important;font-weight:800!important}
.gex-ref-service-list{display:block!important;min-height:0!important}
.gex-ref-service-item{border-bottom:1px solid rgba(22,22,26,.10)!important;background:transparent!important;transition:background .3s ease,transform .3s ease!important}
.gex-ref-service-item:last-child{border-bottom:0!important}
.gex-ref-service-item.is-active{background:rgba(106,45,232,.045)!important}
.gex-ref-service-trigger{color:#17131e!important;padding:28px 8px!important;font-size:clamp(24px,3vw,40px)!important;font-weight:560!important}
.gex-ref-service-trigger span{display:flex!important;align-items:center!important;gap:18px!important}
.gex-ref-service-trigger small{font-size:11px!important;letter-spacing:.14em!important;color:#8d8795!important;font-weight:800!important;min-width:28px!important}
.gex-ref-service-trigger i{width:42px!important;height:42px!important;border-color:rgba(106,45,232,.22)!important;color:#6a2de8!important;background:#fff!important;transition:transform .35s ease,background .35s ease!important}
.gex-ref-service-item.is-active .gex-ref-service-trigger i{background:#6a2de8!important;color:#fff!important;transform:rotate(180deg)!important}
.gex-ref-service-detail{max-width:760px!important;padding:0 70px 0 46px!important}
.gex-ref-service-item.is-active .gex-ref-service-detail{padding:0 70px 30px 46px!important}
.gex-ref-service-detail p{color:#66636d!important;font-size:15px!important;line-height:1.65!important;margin:0 0 16px!important}
.gex-ref-service-detail>a{color:#6a2de8!important;font-weight:800!important}
.gex-ref-service-tags span{border-color:rgba(106,45,232,.16)!important;background:rgba(255,255,255,.65)!important;color:#6a2de8!important}
.gex-ref-service-visual,.gex-ref-service-metrics{display:none!important}

/* Products: heading + pinned one-card-per-scroll stage. */
.products-home-fullscreen{
  background:#f5f5f2!important;
  padding:clamp(56px,7vw,88px) 0 0!important;
}
.products-home-heading{
  width:min(1240px,calc(100% - 48px));
  margin:0 auto clamp(22px,3vw,34px);
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}
.products-home-kicker{
  display:block;color:#6a2de8;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px;
}
.products-home-heading h2{
  margin:0!important;color:#17131e!important;font-size:clamp(38px,4.6vw,62px)!important;line-height:.95!important;letter-spacing:-.055em!important;font-weight:650!important;
}
.products-home-heading>a{
  color:#6a2de8!important;text-decoration:none!important;font-size:14px!important;font-weight:800!important;border-bottom:1px solid rgba(106,45,232,.4)!important;padding-bottom:5px!important;white-space:nowrap;
}
.products-pinned-stage{position:relative!important;height:100vh;min-height:100vh!important;overflow:visible!important}
.products-home-fullscreen .products-pinned-card{
  width:min(1240px,calc(100% - 48px))!important;
  height:min(70vh,720px)!important;
  min-height:0!important;
  margin:0 auto!important;
  border:1px solid rgba(106,45,232,.10)!important;
  border-radius:30px!important;
  overflow:hidden!important;
}
.products-pinned-card--0,.products-pinned-card--1,.products-pinned-card--2,.products-pinned-card--3{background:linear-gradient(135deg,#eee7ff 0%,#e7e0ff 100%)!important}
.products-pinned-card-inner{
  height:100%!important;min-height:0!important;padding:clamp(28px,4.2vw,56px)!important;grid-template-columns:minmax(0,1.15fr) minmax(280px,.7fr)!important;gap:clamp(28px,5vw,72px)!important;
}
.products-pinned-kicker{margin-bottom:14px!important}
.products-pinned-card h2{font-size:clamp(38px,5vw,68px)!important;line-height:.9!important;max-width:680px!important}
.products-pinned-description{font-size:15px!important;line-height:1.55!important;margin:22px 0 18px!important;max-width:600px!important}
.products-pinned-tags span{padding:8px 12px!important}
.products-pinned-link{margin-top:20px!important}
.products-pinned-media{min-height:0!important;height:min(44vh,430px)!important;max-height:none!important}
.products-pinned-media img{min-height:0!important;height:100%!important}
@media(max-width:759px){
  .gex-ref-services{padding:42px 10px!important}
  .gex-ref-services-shell{border-radius:20px!important;padding:22px 18px!important}
  .gex-ref-services-head{align-items:flex-start!important;gap:18px!important}
  .gex-ref-services-head h2{font-size:44px!important}
  .gex-ref-service-trigger{padding:22px 0!important;font-size:27px!important}
  .gex-ref-service-trigger span{gap:10px!important}
  .gex-ref-service-detail,.gex-ref-service-item.is-active .gex-ref-service-detail{padding-left:38px!important;padding-right:0!important}
  .products-home-heading{width:calc(100% - 28px);align-items:flex-start;margin-bottom:20px}
  .products-home-heading h2{font-size:42px!important}
  .products-pinned-stage{height:auto!important;min-height:0!important}
  .products-home-fullscreen .products-pinned-card{width:calc(100% - 28px)!important;height:auto!important;margin-bottom:18px!important;border-radius:24px!important}
  .products-pinned-card-inner{height:auto!important;padding:25px 21px 28px!important;grid-template-columns:1fr!important;gap:24px!important}
  .products-pinned-card h2{font-size:clamp(39px,11vw,58px)!important}
  .products-pinned-media{height:250px!important;order:2!important}
}

/* Separate swipe/video module: independent from How We Work. */
.gex-swipe-slider{
  position:relative!important;background:#f5f5f2!important;padding:clamp(58px,8vw,100px) clamp(14px,4vw,64px)!important;overflow:hidden!important;color:#fff!important;
}
.gex-swipe-slider-head{width:min(1240px,100%);margin:0 auto 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#17131e;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.gex-swipe-progress{width:130px;height:2px;background:rgba(23,19,30,.12);overflow:hidden}.gex-swipe-progress i{display:block;width:100%;height:100%;background:#6a2de8;transform-origin:left center;transform:scaleX(0)}
.gex-swipe-slider-track{position:relative;width:min(1240px,100%);height:min(74vh,720px);min-height:500px;margin:auto;touch-action:pan-y;cursor:grab}.gex-swipe-slider-track.is-dragging{cursor:grabbing}
.gex-swipe-slide{position:absolute;inset:0;border-radius:30px;overflow:hidden;opacity:0;visibility:hidden;transform:translateX(40px) scale(.985);will-change:transform,opacity;isolation:isolate;background:#17131e}
.gex-swipe-slide.is-active{opacity:1;visibility:visible;transform:none}
.gex-swipe-media,.gex-swipe-media iframe,.gex-swipe-media video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;pointer-events:none}
.gex-swipe-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 20%,rgba(0,0,0,.78) 100%)}
.gex-swipe-copy{position:absolute;left:clamp(24px,5vw,62px);bottom:clamp(28px,5vw,58px);max-width:580px;z-index:2}
.gex-swipe-index{display:block;color:#b9a0ff;font-size:11px;font-weight:800;letter-spacing:.15em;margin-bottom:10px}
.gex-swipe-copy h2{margin:0 0 10px!important;color:#fff!important;font-size:clamp(40px,6vw,78px)!important;line-height:.92!important;letter-spacing:-.06em!important;font-weight:700!important}
.gex-swipe-copy p{margin:0!important;max-width:520px;color:rgba(255,255,255,.78)!important;font-size:15px!important;line-height:1.5!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gex-swipe-dots{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;gap:7px;z-index:5}.gex-swipe-dots button{width:24px;height:3px;border:0;border-radius:4px;background:rgba(255,255,255,.3);padding:0;cursor:pointer}.gex-swipe-dots button.is-active{background:#fff}
@media(max-width:700px){
  .gex-swipe-slider{padding:46px 12px 58px!important}.gex-swipe-slider-track{height:64vh;min-height:430px}.gex-swipe-slide{border-radius:22px}.gex-swipe-copy{left:22px;right:22px;bottom:42px}.gex-swipe-copy h2{font-size:clamp(38px,12vw,58px)!important}.gex-swipe-dots{bottom:18px}
}

/* =========================================================
   GEXAUZ v2.7.39 — HOMEPAGE SPACE CLEANUP + MOTION SURFACES
========================================================= */
body.home main.home-page > section{
  scroll-margin-top:88px;
}

/* Remove oversized dead zones while keeping clear editorial breathing room. */
body.home .projects,
body.home .home-gallery,
body.home .flow,
body.home .about,
body.home .why,
body.home .experiences,
body.home .contact,
body.home .home-inline-cta,
body.home .home-faq{
  padding-top:clamp(62px,7vw,88px)!important;
  padding-bottom:clamp(62px,7vw,88px)!important;
}
body.home .integration-section{
  min-height:0!important;
  padding-top:clamp(64px,7vw,88px)!important;
  padding-bottom:clamp(54px,6vw,78px)!important;
}
body.home .clients{
  padding-top:clamp(28px,4vw,52px)!important;
  padding-bottom:clamp(28px,4vw,52px)!important;
}

/* Products: tighter heading and card composition; pin stages remain intact. */
body.home .products-home-fullscreen{
  padding-top:clamp(42px,5vw,66px)!important;
}
body.home .products-home-heading{
  margin-bottom:clamp(14px,2vw,22px)!important;
}
body.home .products-home-heading h2{
  font-size:clamp(34px,4.2vw,56px)!important;
  line-height:.94!important;
}
body.home .products-pinned-stage{
  min-height:0!important;
}
body.home .products-home-fullscreen .products-pinned-card{
  height:min(67vh,680px)!important;
}
body.home .products-pinned-card-inner{
  padding:clamp(24px,3.5vw,46px)!important;
}
body.home .products-pinned-kicker{
  margin-bottom:11px!important;
}
body.home .products-pinned-card h2{
  font-size:clamp(36px,4.6vw,62px)!important;
  line-height:.92!important;
}
body.home .products-pinned-description{
  margin:18px 0 16px!important;
}
body.home .products-pinned-link{
  margin-top:16px!important;
}

/* Services: remove any residual vertical dead space around the accordion. */
body.home .gex-reference-services{
  padding-top:clamp(52px,6vw,76px)!important;
  padding-bottom:clamp(52px,6vw,76px)!important;
}
body.home .gex-ref-services-head{
  padding-bottom:22px!important;
}
body.home .gex-ref-service-trigger{
  padding-top:23px!important;
  padding-bottom:23px!important;
}

/* Swipe module: compact heading-to-media relationship. */
body.home .gex-swipe-slider{
  padding-top:clamp(52px,6vw,76px)!important;
  padding-bottom:clamp(52px,6vw,76px)!important;
}
body.home .gex-swipe-slider-head{
  margin-bottom:14px!important;
}

/* Creative hover feedback stays subtle; scroll animation owns entrance. */
body.home .proj-card,
body.home .home-gallery-card,
body.home .flow-card,
body.home .why-card,
body.home .test-card,
body.home .team-card,
body.home .home-faq-item,
body.home .integration-logo{
  will-change:transform,opacity;
}
body.home .proj-card:hover,
body.home .home-gallery-card:hover,
body.home .why-card:hover,
body.home .home-faq-item:hover{
  transform:translateY(-3px);
}
body.home .home-gallery-card:hover .home-gallery-card-image img,
body.home .proj-card:hover .proj-thumb img,
body.home .team-card:hover img{
  transform:scale(1.035);
}

@media(max-width:759px){
  body.home .projects,
  body.home .home-gallery,
  body.home .flow,
  body.home .about,
  body.home .why,
  body.home .experiences,
  body.home .contact,
  body.home .home-inline-cta,
  body.home .home-faq{
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  body.home .integration-section{padding-top:52px!important;padding-bottom:52px!important}
  body.home .products-home-fullscreen{padding-top:38px!important}
  body.home .products-home-heading{margin-bottom:14px!important}
  body.home .products-home-fullscreen .products-pinned-card{height:auto!important}
  body.home .gex-reference-services{padding-top:44px!important;padding-bottom:44px!important}
  body.home .gex-swipe-slider{padding-top:44px!important;padding-bottom:54px!important}
}

@media(prefers-reduced-motion:reduce){
  body.home .proj-card:hover,
  body.home .home-gallery-card:hover,
  body.home .why-card:hover,
  body.home .home-faq-item:hover{transform:none!important}
}

/* =========================================================
   GEXAUZ v2.7.40 — SWIPE SLIDER REPLACES HOMEPAGE HERO
========================================================= */
body.home .gex-swipe-hero{
  min-height:100svh!important;
  height:100svh!important;
  padding:0!important;
  margin:0!important;
  background:#08080b!important;
  color:#fff!important;
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
}
body.home .gex-swipe-hero .gex-swipe-slider-head{
  display:none!important;
}
body.home .gex-swipe-hero .gex-swipe-slider-track{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  border-radius:0!important;
}
body.home .gex-swipe-hero .gex-swipe-slide{
  border-radius:0!important;
}
body.home .gex-swipe-hero .gex-swipe-copy{
  left:clamp(24px,7vw,110px)!important;
  bottom:clamp(52px,9vh,105px)!important;
  max-width:min(680px,70vw)!important;
}
body.home .gex-swipe-hero .gex-swipe-index{
  color:#c3a8ff!important;
}
body.home .gex-swipe-hero .gex-swipe-copy h2{
  font-size:clamp(48px,7.2vw,96px)!important;
  line-height:.91!important;
  letter-spacing:-.065em!important;
  margin-bottom:14px!important;
}
body.home .gex-swipe-hero .gex-swipe-copy p{
  max-width:570px!important;
  font-size:clamp(14px,1.35vw,18px)!important;
  line-height:1.45!important;
}
body.home .gex-swipe-hero .gex-swipe-overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.34) 42%,rgba(0,0,0,.08) 72%),
    linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.08) 55%,rgba(0,0,0,.16) 100%)!important;
}
body.home .gex-swipe-hero .gex-swipe-dots{
  left:auto!important;
  right:clamp(24px,5vw,72px)!important;
  bottom:clamp(30px,5vh,58px)!important;
  transform:none!important;
}
body.home .gex-swipe-hero .gex-swipe-dots button{
  width:32px!important;
  height:3px!important;
  background:rgba(255,255,255,.3)!important;
}
body.home .gex-swipe-hero .gex-swipe-dots button.is-active{
  background:#fff!important;
}
@media(max-width:759px){
  body.home .gex-swipe-hero{min-height:100svh!important;height:100svh!important}
  body.home .gex-swipe-hero .gex-swipe-copy{
    left:22px!important;
    right:22px!important;
    bottom:74px!important;
    max-width:none!important;
  }
  body.home .gex-swipe-hero .gex-swipe-copy h2{
    font-size:clamp(42px,12.5vw,66px)!important;
  }
  body.home .gex-swipe-hero .gex-swipe-copy p{font-size:14px!important;max-width:100%!important}
  body.home .gex-swipe-hero .gex-swipe-dots{left:22px!important;right:auto!important;bottom:28px!important}
}


/* =====================================================================
   GEXAUZ v2.7.41 — REQUESTED REFERENCE UI / MOTION OVERRIDES
   Source direction: supplied swipe hero, stacked product panels,
   service accordion, two-column FAQ and dark product-detail references.
===================================================================== */

/* ---------- Shared spacing / motion ---------- */
html{scroll-behavior:auto}
body.home{background:#f6f5fa}
body.home section{scroll-margin-top:80px}
body.home .wrap{width:min(1320px,calc(100% - 40px))}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* ---------- Homepage swipe hero: video-first, no decorative border/spheres ---------- */
body.home .gex-swipe-hero{
  position:relative!important;
  width:100%!important;
  min-height:100svh!important;
  height:100svh!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#08070d!important;
  overflow:hidden!important;
  isolation:isolate;
}
body.home .gex-swipe-hero:before{
  content:"";
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(5,4,10,.90) 0%,rgba(5,4,10,.62) 43%,rgba(5,4,10,.24) 78%,rgba(5,4,10,.52) 100%),
    linear-gradient(0deg,rgba(5,4,10,.78) 0%,transparent 42%,rgba(5,4,10,.30) 100%);
}
body.home .gex-swipe-slider-track{
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;min-height:100%!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
}
body.home .gex-swipe-slide{
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;
  overflow:hidden!important;
}
body.home .gex-swipe-media{
  position:absolute!important;inset:0!important;z-index:0!important;
  width:100%!important;height:100%!important;
}
body.home .gex-swipe-media iframe,
body.home .gex-swipe-media video{
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  border:0!important;object-fit:cover!important;
  transform:scale(1.035);
}
body.home .gex-swipe-overlay{position:absolute!important;inset:0!important;background:transparent!important}
body.home .gex-swipe-copy{
  position:absolute!important;z-index:4!important;
  left:clamp(28px,8vw,120px)!important;
  bottom:clamp(92px,15vh,160px)!important;
  width:min(680px,calc(100% - 56px))!important;
  margin:0!important;padding:0!important;
  color:#fff!important;
  text-align:left!important;
}
body.home .gex-swipe-index{
  display:block!important;margin-bottom:18px!important;
  color:#c5a7ff!important;font-size:12px!important;
  letter-spacing:.22em!important;font-weight:800!important;
}
body.home .gex-swipe-copy h2{
  margin:0 0 16px!important;
  max-width:680px!important;
  color:#fff!important;
  font-size:clamp(48px,6.2vw,92px)!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
  font-weight:760!important;
  text-wrap:balance;
}
body.home .gex-swipe-copy p{
  margin:0!important;max-width:610px!important;
  color:rgba(255,255,255,.76)!important;
  font-size:clamp(15px,1.4vw,20px)!important;
  line-height:1.5!important;
}
body.home .gex-swipe-dots{
  position:absolute!important;z-index:6!important;
  left:clamp(28px,8vw,120px)!important;
  bottom:42px!important;
  display:flex!important;gap:8px!important;
}
body.home .gex-swipe-dots button{
  width:34px!important;height:3px!important;padding:0!important;border:0!important;
  border-radius:20px!important;background:rgba(255,255,255,.25)!important;
}
body.home .gex-swipe-dots button.is-active{background:#8b5cff!important}
body.home .gex-swipe-slider-head{display:none!important}
@media (max-width:760px){
  body.home .gex-swipe-hero{min-height:92svh!important;height:92svh!important}
  body.home .gex-swipe-hero:before{background:linear-gradient(0deg,rgba(5,4,10,.92) 0%,rgba(5,4,10,.55) 58%,rgba(5,4,10,.25) 100%)}
  body.home .gex-swipe-copy{left:22px!important;bottom:82px!important;width:calc(100% - 44px)!important}
  body.home .gex-swipe-copy h2{font-size:clamp(42px,12vw,62px)!important}
  body.home .gex-swipe-copy p{font-size:14px!important;max-width:520px!important}
  body.home .gex-swipe-dots{left:22px!important;bottom:34px!important}
}

/* ---------- Homepage products: compact heading + large pinned panels ---------- */
body.home .products-home-fullscreen{
  background:#f4f3f7!important;
  padding:42px 0 0!important;
  margin:0!important;
  overflow:visible!important;
}
body.home .products-home-heading{
  width:min(1280px,calc(100% - 48px))!important;
  margin:0 auto 20px!important;
  min-height:0!important;
  padding:0!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:24px!important;
}
body.home .products-home-heading > div{min-width:0}
body.home .products-home-kicker{
  display:block!important;
  margin:0 0 8px!important;
  color:#7650e8!important;
  font-size:11px!important;font-weight:800!important;letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
body.home .products-home-heading h2{
  margin:0!important;
  font-size:clamp(32px,4vw,54px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}
body.home .products-home-heading p{
  margin:8px 0 0!important;
  color:#77747f!important;font-size:14px!important;line-height:1.45!important;
}
body.home .products-home-heading>a{
  flex:0 0 auto!important;
  color:#17151c!important;text-decoration:none!important;font-weight:700!important;
}
body.home .products-pinned-stage{
  position:relative!important;
  height:100vh!important;min-height:100vh!important;
  overflow:visible!important;
}
body.home .products-pinned-card{
  background:#fff!important;
  border:1px solid rgba(110,77,229,.14)!important;
  border-radius:30px!important;
  box-shadow:0 24px 80px rgba(61,37,120,.10)!important;
  overflow:hidden!important;
}
body.home .products-pinned-card-inner{
  width:100%!important;height:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr)!important;
  gap:0!important;
  align-items:stretch!important;
}
body.home .products-pinned-card-copy{
  min-width:0!important;
  padding:clamp(34px,5vw,76px)!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  background:linear-gradient(145deg,#f1ebff 0%,#faf9ff 72%)!important;
}
body.home .products-pinned-card--1 .products-pinned-card-copy{background:linear-gradient(145deg,#eef3ff,#fbfbff)!important}
body.home .products-pinned-card--2 .products-pinned-card-copy{background:linear-gradient(145deg,#f0fff0,#fbfffb)!important}
body.home .products-pinned-card--3 .products-pinned-card-copy{background:linear-gradient(145deg,#fff0f6,#fffafd)!important}
body.home .products-pinned-card-head{
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;
}
body.home .products-pinned-kicker{
  display:block!important;color:#7650e8!important;
  font-size:11px!important;font-weight:800!important;letter-spacing:.15em!important;text-transform:uppercase!important;
  margin-bottom:14px!important;
}
body.home .products-pinned-card-copy h2{
  margin:0!important;max-width:520px!important;
  font-size:clamp(36px,4.2vw,68px)!important;
  line-height:.96!important;letter-spacing:-.05em!important;
}
body.home .products-pinned-arrow{
  flex:0 0 auto!important;width:46px!important;height:46px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:#fff!important;color:#6d42e8!important;
  text-decoration:none!important;box-shadow:0 10px 28px rgba(70,40,130,.12)!important;
}
body.home .products-pinned-description{
  max-width:510px!important;margin:24px 0 18px!important;
  color:#66636d!important;font-size:16px!important;line-height:1.62!important;
}
body.home .products-pinned-tags{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-bottom:26px!important}
body.home .products-pinned-tags span{
  border:1px solid rgba(113,74,230,.16)!important;background:rgba(255,255,255,.7)!important;
  color:#6d48dc!important;border-radius:999px!important;padding:8px 12px!important;font-size:11px!important;font-weight:700!important;
}
body.home .products-pinned-link{
  align-self:flex-start!important;color:#1a1720!important;text-decoration:none!important;font-weight:750!important;
}
body.home .products-pinned-media{
  display:block!important;position:relative!important;min-width:0!important;
  overflow:hidden!important;background:#e8e6ef!important;
}
body.home .products-pinned-media:after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(120deg,rgba(115,75,235,.10),transparent 48%,rgba(255,255,255,.12));
}
body.home .products-pinned-media img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center!important;
  will-change:transform,opacity,filter!important;
}
@media (max-width:760px){
  body.home .products-home-fullscreen{padding:34px 0 50px!important}
  body.home .products-home-heading{width:calc(100% - 32px)!important;margin-bottom:18px!important;align-items:flex-start!important;flex-direction:column!important}
  body.home .products-home-heading>a{margin-top:-2px!important}
  body.home .products-pinned-stage{height:auto!important;min-height:0!important}
  body.home .products-pinned-card{position:relative!important;left:auto!important;top:auto!important;width:calc(100% - 32px)!important;height:auto!important;min-height:0!important;margin:0 16px 18px!important;transform:none!important}
  body.home .products-pinned-card-inner{grid-template-columns:1fr!important}
  body.home .products-pinned-card-copy{padding:30px 26px!important;min-height:310px!important}
  body.home .products-pinned-media{height:300px!important;order:-1!important}
}

/* ---------- Services: one-column reference accordion on soft grey ---------- */
body.home .gex-reference-services{
  background:#ededf2!important;
  color:#17151c!important;
  padding:74px 0 84px!important;
  overflow:visible!important;
}
body.home .gex-ref-services-shell{
  width:min(1280px,calc(100% - 40px))!important;
  margin:0 auto!important;
  padding:38px clamp(22px,4vw,54px) 44px!important;
  background:#f5f5f7!important;
  border:1px solid rgba(31,26,45,.08)!important;
  border-radius:30px!important;
  box-shadow:none!important;
}
body.home .gex-ref-services-head{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
  padding:0 0 28px!important;margin:0 0 6px!important;
  border-bottom:1px solid rgba(31,26,45,.10)!important;
}
body.home .gex-ref-services-kicker{color:#6e42e8!important;margin:0 0 12px!important;font-weight:800!important;font-size:12px!important;letter-spacing:.13em!important}
body.home .gex-ref-services-head h2{
  color:#17151c!important;font-size:clamp(42px,5vw,72px)!important;line-height:.92!important;letter-spacing:-.05em!important;margin:0!important;
}
body.home .gex-ref-services-head>a{color:#6b40e4!important;text-decoration:none!important;font-weight:750!important}
body.home .gex-ref-service-list{display:block!important;width:100%!important}
body.home .gex-ref-service-item{
  display:block!important;width:100%!important;
  border-bottom:1px solid rgba(31,26,45,.11)!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.home .gex-ref-service-item:last-child{border-bottom:0!important}
body.home .gex-ref-service-trigger{
  width:100%!important;min-height:100px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:20px!important;padding:28px 4px!important;
  background:transparent!important;border:0!important;color:#18151e!important;
  cursor:pointer!important;text-align:left!important;
}
body.home .gex-ref-service-trigger span{
  display:flex!important;align-items:baseline!important;gap:20px!important;
  font-size:clamp(26px,3vw,42px)!important;line-height:1.05!important;
  font-weight:700!important;letter-spacing:-.035em!important;
}
body.home .gex-ref-service-trigger small{
  color:#8b7aa9!important;font-size:11px!important;letter-spacing:.14em!important;font-weight:800!important;
}
body.home .gex-ref-service-trigger i{
  width:42px!important;height:42px!important;border:1px solid rgba(107,64,228,.22)!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;color:#7045e5!important;font-style:normal!important;
  transition:transform .35s ease,background .35s ease!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger{
  background:linear-gradient(90deg,rgba(120,76,236,.06),transparent)!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger i{transform:rotate(180deg)!important;background:#fff!important}
body.home .gex-ref-service-detail{
  height:0;opacity:0;overflow:hidden;
  padding:0 4px!important;
  color:#68656f!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-detail{
  padding:0 4px 30px!important;
}
body.home .gex-ref-service-detail p{max-width:720px!important;margin:0 0 18px!important;font-size:15px!important;line-height:1.7!important}
body.home .gex-ref-service-tags{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-bottom:18px!important}
body.home .gex-ref-service-tags span{
  border:1px solid rgba(108,65,229,.16)!important;color:#6c42e0!important;background:#fff!important;border-radius:999px!important;padding:7px 11px!important;font-size:11px!important
}
body.home .gex-ref-service-detail>a{color:#6d42e8!important;text-decoration:none!important;font-weight:750!important}
@media (max-width:760px){
  body.home .gex-reference-services{padding:54px 0 60px!important}
  body.home .gex-ref-services-shell{width:calc(100% - 24px)!important;padding:26px 18px 26px!important;border-radius:22px!important}
  body.home .gex-ref-services-head{align-items:flex-start!important;flex-direction:column!important;gap:18px!important}
  body.home .gex-ref-services-head h2{font-size:44px!important}
  body.home .gex-ref-service-trigger{min-height:82px!important;padding:22px 0!important}
  body.home .gex-ref-service-trigger span{font-size:24px!important;gap:12px!important}
  body.home .gex-ref-service-trigger i{width:36px!important;height:36px!important}
}

/* ---------- Portfolio: exactly six, 3x2, clean alignment ---------- */
body.home .projects{
  background:#f7f7f8!important;padding:84px 0 92px!important;
}
body.home .projects .section-head{margin-bottom:34px!important}
body.home .projects .section-head .eyebrow{margin-bottom:10px!important}
body.home .projects .section-title{margin:0!important;font-size:clamp(38px,5vw,68px)!important;line-height:.94!important}
body.home .projects-bento{width:100%!important}
body.home .projects .proj-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;align-items:stretch!important;
}
body.home .projects .proj-card{
  min-height:0!important;height:auto!important;padding:0!important;
  background:#fff!important;border:1px solid rgba(20,17,25,.07)!important;
  border-radius:22px!important;overflow:hidden!important;
  box-shadow:none!important;
}
body.home .projects .project-link{display:flex!important;flex-direction:column!important;height:100%!important;text-decoration:none!important;color:#17151c!important}
body.home .projects .proj-thumb{aspect-ratio:1.38!important;overflow:hidden!important;background:#eceaf0!important}
body.home .projects .proj-thumb img{
  display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
  transition:transform .7s cubic-bezier(.2,.75,.2,1)!important;
}
body.home .projects .proj-card:hover .proj-thumb img{transform:scale(1.045)!important}
body.home .projects .proj-name{
  display:flex!important;flex-direction:column!important;gap:5px!important;
  padding:18px 18px 20px!important;font-size:18px!important;font-weight:750!important;
}
body.home .projects .proj-tag{font-size:12px!important;color:#77737f!important;font-weight:500!important}
body.home .projects .load-more{margin-top:30px!important;text-align:center!important}
@media(max-width:850px){body.home .projects .proj-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){body.home .projects .proj-grid{grid-template-columns:1fr!important;gap:16px!important}}

/* ---------- Gallery: exactly six, 3x2, image then caption, no stretch ---------- */
body.home .home-gallery{
  background:#efeff3!important;padding:82px 0 88px!important;
}
body.home .home-gallery .section-head{margin-bottom:30px!important}
body.home .home-gallery .section-title{margin:0!important;font-size:clamp(38px,5vw,68px)!important;line-height:.94!important}
body.home .home-gallery-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px 20px!important;width:100%!important;
}
body.home .home-gallery-card{
  display:block!important;width:100%!important;height:auto!important;
  padding:0!important;border:0!important;background:transparent!important;
  text-align:left!important;cursor:pointer!important;
}
body.home .home-gallery-card-image{
  display:block!important;width:100%!important;aspect-ratio:4/3!important;
  overflow:hidden!important;border-radius:22px!important;background:#e5e3e9!important;
}
body.home .home-gallery-card-image img{
  display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
  transition:transform .75s cubic-bezier(.2,.75,.2,1)!important;
}
body.home .home-gallery-card:hover .home-gallery-card-image img{transform:scale(1.04)!important}
body.home .home-gallery-card-caption{
  display:flex!important;flex-direction:column!important;gap:5px!important;
  padding:13px 4px 0!important;
}
body.home .home-gallery-card-caption strong{font-size:16px!important;color:#17151c!important;line-height:1.25!important}
body.home .home-gallery-card-caption small{font-size:11px!important;color:#77727f!important}
body.home .gallery-view-more{margin-top:32px!important;text-align:center!important}
@media(max-width:850px){body.home .home-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){body.home .home-gallery-grid{grid-template-columns:1fr!important;gap:22px!important}}

/* ---------- How we work: clean reveal cards ---------- */
body.home .flow{background:#faf9fb!important;padding:82px 0!important}
body.home .flow-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
body.home .flow-card{
  min-height:270px!important;margin:0!important;padding:26px!important;
  background:#fff!important;border:1px solid rgba(30,25,40,.08)!important;border-radius:22px!important;
  box-shadow:none!important;transform-origin:50% 90%!important;
}
body.home .flow-card .flow-tag{color:#7146e6!important;font-weight:800!important}
@media(max-width:900px){body.home .flow-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){body.home .flow-grid{grid-template-columns:1fr!important}}

/* ---------- Team image clip/scale reveal ---------- */
body.home .team-card{overflow:hidden!important;border-radius:24px!important}
body.home .team-card img{will-change:transform,clip-path,opacity!important}

/* ---------- Why choose us: three cards, no heavy shadows ---------- */
body.home .why{background:#f1f0f5!important;padding:82px 0!important}
body.home .why-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
body.home .why-card{
  background:#fff!important;border:1px solid rgba(30,25,40,.07)!important;
  border-radius:22px!important;box-shadow:none!important;padding:30px!important;
}
@media(max-width:760px){body.home .why-grid{grid-template-columns:1fr!important}}

/* ---------- Testimonials: continuous motion, restrained card style ---------- */
body.home #testimonials{background:#ebeaf0!important;overflow:hidden!important}
body.home .testimonials-stage{overflow:hidden!important}
body.home .test-track-single{display:flex!important;width:max-content!important;will-change:transform!important}
body.home .test-card{box-shadow:none!important;border:1px solid rgba(25,20,35,.08)!important}

/* ---------- FAQ common component: supplied reference direction ---------- */
.gex-common-faq,
body.home .home-faq{
  background:#fff!important;
  padding:82px 0 92px!important;
}
.gex-common-faq .home-faq-grid,
body.home .home-faq-grid{
  display:grid!important;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr)!important;
  gap:52px!important;align-items:start!important;
}
.gex-common-faq .home-faq-intro .eyebrow,
body.home .home-faq-intro .eyebrow{color:#6d42e8!important;margin-bottom:12px!important}
.gex-common-faq .home-faq-intro h2,
body.home .home-faq-intro h2{
  margin:0 0 12px!important;color:#18151d!important;
  font-size:clamp(40px,5vw,64px)!important;line-height:.95!important;letter-spacing:-.05em!important;
}
.gex-common-faq .home-faq-intro p,
body.home .home-faq-intro p{color:#77727d!important;line-height:1.6!important;margin:0!important;max-width:420px!important}
.gex-common-faq .home-faq-list,
body.home .home-faq-list{
  border:0!important;
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;align-items:start!important;
}
.gex-common-faq .home-faq-item,
body.home .home-faq-item{
  margin:0!important;border:1px solid rgba(30,25,40,.07)!important;
  border-radius:18px!important;background:#f0f1f0!important;
  overflow:hidden!important;
}
.gex-common-faq .home-faq-item summary,
body.home .home-faq-item summary{
  min-height:76px!important;padding:20px 22px!important;
  color:#175f68!important;font-size:15px!important;font-weight:700!important;
  background:#eef0ee!important;
}
.gex-common-faq .home-faq-item summary b,
body.home .home-faq-item summary b{
  width:28px!important;height:28px!important;flex:0 0 28px!important;
  display:grid!important;place-items:center!important;
  color:#6d42e8!important;font-size:18px!important;font-weight:500!important;
  border:1px solid rgba(109,66,232,.18)!important;border-radius:50%!important;
}
.gex-common-faq .home-faq-item[open],
body.home .home-faq-item[open]{
  background:linear-gradient(135deg,#a6ec63 0%,#b88cff 100%)!important;
  border-color:transparent!important;
}
.gex-common-faq .home-faq-item[open] summary,
body.home .home-faq-item[open] summary{
  background:transparent!important;color:#173d46!important;
}
.gex-common-faq .home-faq-answer,
body.home .home-faq-answer{
  padding:0 22px 22px!important;
  color:#23474c!important;font-size:14px!important;line-height:1.65!important;
}
.gex-common-faq .home-faq-answer p{margin:0!important}
@media(max-width:900px){
  .gex-common-faq .home-faq-grid,body.home .home-faq-grid{grid-template-columns:1fr!important;gap:30px!important}
}
@media(max-width:640px){
  .gex-common-faq .home-faq-list,body.home .home-faq-list{grid-template-columns:1fr!important}
  .gex-common-faq,body.home .home-faq{padding:60px 0 68px!important}
}

/* ---------- Product detail: dark atmospheric reference ---------- */
.gex-product-detail{background:#eef0f5!important;color:#16151c!important}
.gex-product-detail .product-hero-final{
  position:relative!important;overflow:hidden!important;
  min-height:720px!important;padding:86px 0 74px!important;
  color:#fff!important;background:#07071a!important;
}
.product-hero-final-bg{
  position:absolute!important;inset:0!important;
  background:
    radial-gradient(circle at 72% 45%,rgba(112,48,255,.62),transparent 30%),
    radial-gradient(circle at 46% 78%,rgba(47,100,255,.34),transparent 32%),
    linear-gradient(120deg,#060617 0%,#0d0a2a 54%,#050511 100%)!important;
}
.product-hero-final-bg:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(5,5,17,.94),rgba(5,5,17,.45) 48%,rgba(5,5,17,.12))!important;
}
.product-hero-final-inner{
  position:relative!important;z-index:2!important;
  min-height:560px!important;display:grid!important;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr)!important;
  gap:50px!important;align-items:center!important;
}
.product-hero-final-copy{max-width:650px!important}
.product-hero-final-kicker{
  display:inline-flex!important;margin-bottom:18px!important;
  color:#bfa5ff!important;font-size:11px!important;font-weight:800!important;letter-spacing:.17em!important;text-transform:uppercase!important;
}
.product-hero-final-copy h1{
  margin:0 0 18px!important;color:#fff!important;
  font-size:clamp(48px,7vw,96px)!important;line-height:.92!important;letter-spacing:-.06em!important;
}
.product-hero-final-copy>p{
  max-width:580px!important;margin:0 0 22px!important;color:rgba(255,255,255,.72)!important;
  font-size:17px!important;line-height:1.55!important;
}
.product-hero-final-tags{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-bottom:28px!important}
.product-hero-final-tags span{
  padding:8px 11px!important;border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;color:rgba(255,255,255,.82)!important;font-size:11px!important;background:rgba(255,255,255,.05)!important;
}
.product-hero-final-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
.product-hero-final-actions .btn{min-height:48px!important;padding:13px 20px!important}
.product-demo-btn{background:#7444ff!important;color:#fff!important;border:0!important}
.product-detail-btn{color:#fff!important;border-color:rgba(255,255,255,.28)!important;background:rgba(255,255,255,.05)!important}
.product-hero-final-visual{
  min-height:500px!important;display:flex!important;align-items:center!important;justify-content:center!important;
}
.product-hero-final-visual img{
  display:block!important;width:100%!important;max-height:580px!important;
  object-fit:contain!important;border-radius:24px!important;
  box-shadow:0 34px 100px rgba(0,0,0,.38)!important;
  transform:rotate(-1deg)!important;
}
.product-demo-lead{
  margin-top:0!important;padding:54px 0 74px!important;
}
.product-demo-lead-head{margin-bottom:22px!important}
.product-demo-lead-head h2{margin:6px 0 6px!important;font-size:clamp(34px,4vw,54px)!important;letter-spacing:-.045em!important}
.product-demo-lead-head p{margin:0;color:#77727d!important}
.product-demo-form{
  padding:24px!important;background:#fff!important;border:1px solid rgba(30,25,40,.08)!important;border-radius:22px!important;
  box-shadow:none!important;
}
.product-demo-grid{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;
}
.product-demo-form .field label{display:block!important;font-size:11px!important;font-weight:750!important;color:#514c59!important;margin-bottom:7px!important}
.product-demo-form .field input{
  width:100%!important;box-sizing:border-box!important;height:48px!important;
  border:1px solid rgba(30,25,40,.11)!important;border-radius:12px!important;background:#f7f7f8!important;color:#17151c!important;
  padding:0 13px!important;outline:none!important;
}
.product-demo-form .field input:focus{border-color:#7b50ec!important;box-shadow:0 0 0 3px rgba(123,80,236,.10)!important}
.product-demo-submit{margin-top:14px!important;background:#7042e8!important;color:#fff!important;border:0!important}
.product-demo-form .form-status{margin-top:12px!important}
@media(max-width:900px){
  .product-hero-final-inner{grid-template-columns:1fr!important}
  .product-hero-final{min-height:0!important}
  .product-hero-final-visual{min-height:340px!important;order:-1!important}
  .product-hero-final-copy{padding-bottom:20px!important}
  .product-demo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .product-hero-final{padding:58px 0 42px!important}
  .product-hero-final-inner{width:calc(100% - 28px)!important;min-height:0!important;gap:26px!important}
  .product-hero-final-visual{min-height:250px!important}
  .product-hero-final-copy h1{font-size:52px!important}
  .product-demo-lead{padding:42px 0 54px!important}
  .product-demo-grid{grid-template-columns:1fr!important}
  .product-demo-form{padding:18px!important}
}

/* ---------- Service detail: light/grey reference, full-width layout ---------- */
.gex-service-detail{background:#f3f3f6!important;color:#17151c!important}
.gex-service-detail .service-header{
  background:#ece9ff!important;color:#17151c!important;
  border:0!important;border-radius:0!important;
  padding:70px 0 58px!important;
}
.gex-service-detail .service-title{color:#17151c!important}
.gex-service-detail .service-lead{color:#676370!important}
.gex-service-detail .service-body{
  width:min(1200px,calc(100% - 40px))!important;
  margin:0 auto!important;
  display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:58px!important;
}
.gex-service-detail .service-body>div{min-width:0!important}
.gex-service-detail .why-matters,
.gex-service-detail .process{
  background:#f7f7f8!important;border:1px solid rgba(30,25,40,.07)!important;
  border-radius:26px!important;box-shadow:none!important;
}
@media(max-width:760px){.gex-service-detail .service-body{grid-template-columns:1fr!important;gap:30px!important}}

/* ---------- Footer mobile spacing / no accidental overflow ---------- */
.gexauz-footer{overflow:hidden!important}
@media(max-width:760px){
  .site-wide-footer,.gexauz-footer{padding-top:48px!important;padding-bottom:26px!important}
  .gexauz-footer .footer-inner{width:calc(100% - 32px)!important;margin:0 auto!important}
  .gexauz-footer-widgets{grid-template-columns:1fr!important;gap:24px!important}
  .gexauz-footer-brand-row{margin-top:30px!important}
  .gexauz-footer-bottom{display:flex!important;flex-direction:column!important;gap:7px!important;margin-top:22px!important;padding-top:18px!important}
}

/* ---------- Cursor-follow blog preview ---------- */
.gexauz-cursor-blog-preview{
  position:fixed!important;left:0!important;top:0!important;z-index:99999!important;
  width:min(360px,32vw)!important;aspect-ratio:4/3!important;
  pointer-events:none!important;opacity:0!important;visibility:hidden!important;
  transform:translate3d(var(--mx,-400px),var(--my,-400px),0) scale(.82)!important;
  transform-origin:top left!important;
  transition:opacity .22s ease,visibility .22s ease,transform .28s cubic-bezier(.2,.8,.2,1)!important;
}
.gexauz-cursor-blog-preview.is-visible{
  opacity:1!important;visibility:visible!important;
  transform:translate3d(var(--mx,-400px),var(--my,-400px),0) scale(1)!important;
}
.gexauz-cursor-blog-preview-inner{
  width:100%!important;height:100%!important;overflow:hidden!important;border-radius:18px!important;
  background:#111!important;box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
}
.gexauz-cursor-blog-preview img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
@media(hover:none),(max-width:900px){.gexauz-cursor-blog-preview{display:none!important}}


/* ---------- Product archive: one-column rows + cursor image preview ---------- */
.gexauz-product-archive{
  background:#f4f3f7!important;padding:82px 0 100px!important;
}
.gexauz-product-archive-inner{width:min(1200px,calc(100% - 40px))!important}
.gexauz-product-grid-one-column{
  display:grid!important;grid-template-columns:1fr!important;gap:0!important;
  margin-top:34px!important;
}
.gexauz-product-grid-one-column .gexauz-product-card{
  margin:0!important;padding:0!important;background:transparent!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  border-top:1px solid rgba(25,20,35,.12)!important;
}
.gexauz-product-grid-one-column .gexauz-product-card:last-child{
  border-bottom:1px solid rgba(25,20,35,.12)!important;
}
.gexauz-product-grid-one-column .gexauz-product-card-link{
  min-height:150px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;gap:30px!important;
  padding:30px 8px!important;text-decoration:none!important;
}
.gexauz-product-grid-one-column .gexauz-product-thumb{
  display:none!important;
}
.gexauz-product-grid-one-column .gexauz-product-card-body{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(200px,.5fr) auto!important;
  align-items:center!important;gap:28px!important;
}
.gexauz-product-grid-one-column .gexauz-product-card-body h2{
  margin:0!important;color:#18151d!important;font-size:clamp(28px,4vw,52px)!important;
  line-height:1!important;letter-spacing:-.045em!important;
}
.gexauz-product-grid-one-column .gexauz-product-card-body p{
  margin:0!important;color:#74707b!important;font-size:14px!important;line-height:1.5!important;
}
.gexauz-product-grid-one-column .gexauz-product-card-arrow{
  color:#7042e8!important;font-weight:750!important;white-space:nowrap!important;
}
.gexauz-product-grid-one-column .gexauz-product-card-link:hover .gexauz-product-card-body h2{
  transform:translateX(6px)!important;transition:transform .45s cubic-bezier(.2,.8,.2,1)!important;
}
.gexauz-cursor-product-preview{
  position:fixed!important;left:0!important;top:0!important;z-index:99998!important;
  width:min(420px,34vw)!important;aspect-ratio:4/3!important;
  pointer-events:none!important;opacity:0!important;visibility:hidden!important;
  transform:translate3d(var(--pmx,-500px),var(--pmy,-500px),0) scale(.78)!important;
  transform-origin:top left!important;
  transition:opacity .18s ease,visibility .18s ease,transform .28s cubic-bezier(.2,.8,.2,1)!important;
}
.gexauz-cursor-product-preview.is-visible{
  opacity:1!important;visibility:visible!important;
  transform:translate3d(var(--pmx,-500px),var(--pmy,-500px),0) scale(1)!important;
}
.gexauz-cursor-product-preview-inner{
  width:100%!important;height:100%!important;overflow:hidden!important;border-radius:22px!important;
  background:#e9e6f1!important;box-shadow:0 28px 80px rgba(38,25,74,.24)!important;
}
.gexauz-cursor-product-preview img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
@media(max-width:760px){
  .gexauz-product-archive{padding:58px 0 72px!important}
  .gexauz-product-grid-one-column .gexauz-product-card-link{
    grid-template-columns:1fr!important;gap:14px!important;padding:22px 0!important;
  }
  .gexauz-product-grid-one-column .gexauz-product-thumb{
    display:block!important;width:100%!important;aspect-ratio:16/9!important;overflow:hidden!important;border-radius:18px!important;
  }
  .gexauz-product-grid-one-column .gexauz-product-thumb img{
    display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
  }
  .gexauz-product-grid-one-column .gexauz-product-card-body{
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;
  }
  .gexauz-product-grid-one-column .gexauz-product-card-body h2{font-size:32px!important}
  .gexauz-cursor-product-preview{display:none!important}
}


/* ========================================================================
   FAQ REFERENCE UI — FINAL COMMON COMPONENT
   Applied consistently to Homepage, Service Detail and Product Detail.
   Reference: supplied two-column white panel on purple/lilac gradient.
   ======================================================================== */
.gex-common-faq,
body.home .home-faq,
.gex-product-detail .product-common-faq,
.gex-service-detail .service-common-faq{
  position:relative!important;
  isolation:isolate!important;
  padding:92px 0!important;
  background:
    radial-gradient(circle at 88% 10%,rgba(92,40,255,.28),transparent 34%),
    linear-gradient(135deg,#f8f6ff 0%,#e9dcff 42%,#4d19f5 100%)!important;
  overflow:hidden!important;
}
.gex-common-faq::before,
body.home .home-faq::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(110deg,rgba(255,255,255,.72),rgba(255,255,255,0) 55%);
  pointer-events:none;
}
.gex-common-faq .home-faq-grid,
body.home .home-faq-grid{
  width:min(1260px,calc(100% - 40px))!important;
  max-width:none!important;
  margin:0 auto!important;
  display:block!important;
}
.gex-common-faq .home-faq-intro,
body.home .home-faq-intro{
  position:relative!important;
  max-width:880px!important;
  margin:0 0 34px!important;
  text-align:left!important;
}
.gex-common-faq .home-faq-intro .eyebrow,
body.home .home-faq-intro .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:#f1efff!important;
  color:#4f35c8!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  margin:0 0 18px!important;
}
.gex-common-faq .home-faq-intro .star{display:none!important}
.gex-common-faq .home-faq-intro h2,
body.home .home-faq-intro h2{
  margin:0 0 14px!important;
  color:#172033!important;
  font-size:clamp(32px,4vw,54px)!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  font-weight:750!important;
}
.gex-common-faq .home-faq-intro p,
body.home .home-faq-intro p{
  margin:0!important;
  max-width:780px!important;
  color:#5f6470!important;
  font-size:16px!important;
  line-height:1.6!important;
}
.gex-common-faq .home-faq-list,
body.home .home-faq-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;
  padding:34px!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid rgba(91,61,205,.12)!important;
  border-radius:34px!important;
  box-shadow:0 30px 80px rgba(42,17,103,.18)!important;
}
.gex-common-faq .home-faq-column,
body.home .home-faq-column{
  min-width:0!important;
}
.gex-common-faq .home-faq-item,
body.home .home-faq-item{
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #dfe2e6!important;
  background:transparent!important;
  border-radius:0!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.gex-common-faq .home-faq-item:last-child,
body.home .home-faq-item:last-child{border-bottom:0!important}
.gex-common-faq .home-faq-item summary,
body.home .home-faq-item summary{
  min-height:58px!important;
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr) 18px!important;
  align-items:center!important;
  gap:11px!important;
  padding:15px 10px!important;
  cursor:pointer!important;
  list-style:none!important;
  color:#1e293b!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:650!important;
  transition:background .25s ease,color .25s ease!important;
}
.gex-common-faq .home-faq-item summary::-webkit-details-marker,
body.home .home-faq-item summary::-webkit-details-marker{display:none!important}
.gex-common-faq .home-faq-question-icon,
body.home .home-faq-question-icon{
  width:19px!important;height:19px!important;
  display:grid!important;place-items:center!important;
  border:1.5px solid #7a8491!important;
  border-radius:50%!important;
  color:#4d5967!important;
  font-size:11px!important;
  font-weight:800!important;
}
.gex-common-faq .home-faq-question-text,
body.home .home-faq-question-text{min-width:0!important}
.gex-common-faq .home-faq-item summary b,
body.home .home-faq-item summary b{
  width:9px!important;height:9px!important;
  border-right:1.5px solid #7b8794!important;
  border-bottom:1.5px solid #7b8794!important;
  transform:rotate(45deg) translateY(-2px)!important;
  transform-origin:center!important;
  transition:transform .28s ease,border-color .28s ease!important;
  font-size:0!important;
}
.gex-common-faq .home-faq-item[open] summary,
body.home .home-faq-item[open] summary{
  background:linear-gradient(90deg,#f1f1f4,#fafafa)!important;
  color:#1c2740!important;
  border-radius:12px 12px 0 0!important;
}
.gex-common-faq .home-faq-item[open] summary b,
body.home .home-faq-item[open] summary b{
  transform:rotate(225deg) translate(-1px,-1px)!important;
  border-color:#5f3ae4!important;
}
.gex-common-faq .home-faq-item[open] .home-faq-question-icon,
body.home .home-faq-item[open] .home-faq-question-icon{
  border-color:#633be5!important;color:#633be5!important;
}
.gex-common-faq .home-faq-answer,
body.home .home-faq-answer{
  margin:0!important;
  padding:0 40px 18px 52px!important;
  color:#626b78!important;
  font-size:14px!important;
  line-height:1.65!important;
  background:#fafafa!important;
  border-radius:0 0 12px 12px!important;
}
.gex-common-faq .home-faq-answer p,
body.home .home-faq-answer p{margin:0!important}

/* Product detail's existing FAQ section inherits the exact same reference UI. */
.gex-product-detail .product-common-faq .home-faq-grid{display:block!important}
.gex-product-detail .product-common-faq .home-faq-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}

@media(max-width:900px){
  .gex-common-faq,
  body.home .home-faq,
  .gex-product-detail .product-common-faq,
  .gex-service-detail .service-common-faq{padding:66px 0!important}
  .gex-common-faq .home-faq-grid,
  body.home .home-faq-grid{width:min(100% - 28px,720px)!important}
  .gex-common-faq .home-faq-list,
  body.home .home-faq-list{grid-template-columns:1fr!important;padding:20px!important;border-radius:25px!important;gap:0!important}
  .gex-common-faq .home-faq-intro,
  body.home .home-faq-intro{margin-bottom:25px!important}
  .gex-common-faq .home-faq-intro h2,
  body.home .home-faq-intro h2{font-size:clamp(30px,8vw,44px)!important}
}
@media(max-width:560px){
  .gex-common-faq,
  body.home .home-faq{padding:52px 0!important}
  .gex-common-faq .home-faq-list,
  body.home .home-faq-list{padding:12px!important;border-radius:20px!important}
  .gex-common-faq .home-faq-item summary,
  body.home .home-faq-item summary{padding:14px 5px!important;font-size:14px!important;grid-template-columns:20px minmax(0,1fr) 16px!important}
  .gex-common-faq .home-faq-answer,
  body.home .home-faq-answer{padding:0 28px 16px 41px!important;font-size:13.5px!important}
}

/* =========================================================
   v2.7.43 — FAQ ICON SYSTEM / REFERENCE POLISH
   Replace text glyphs with consistent SVG question + chevron icons.
========================================================= */
.home-faq-question-icon{
  flex:0 0 28px;
  width:28px;height:28px;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#5d6675;
}
.home-faq-question-icon svg{
  width:20px;height:20px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home-faq-question-icon .faq-dot{fill:currentColor;stroke:none}
.home-faq-item summary{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) 30px!important;
  align-items:center!important;
  column-gap:13px!important;
}
.home-faq-question-text{min-width:0;display:block}
.home-faq-chevron{
  width:30px;height:30px;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  background:transparent!important;
  color:#8b92a0!important;
  flex:0 0 30px!important;
  transition:transform .3s cubic-bezier(.22,1,.36,1),color .25s ease,background .25s ease!important;
}
.home-faq-chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.home-faq-item[open] .home-faq-chevron{transform:rotate(180deg);color:#6a2de8!important}
.home-faq-item[open] .home-faq-question-icon{color:#6a2de8}
.home-faq-item[open] .home-faq-question-icon svg{stroke-width:1.65}
.home-faq-item[open] .home-faq-answer{margin-left:41px}
@media(max-width:700px){
  .home-faq-item summary{grid-template-columns:26px minmax(0,1fr) 28px!important;column-gap:10px!important}
  .home-faq-question-icon{width:26px;height:26px}
  .home-faq-chevron{width:28px;height:28px;flex-basis:28px!important}
  .home-faq-item[open] .home-faq-answer{margin-left:36px}
}


/* =========================================================
   v2.7.44 — FAQ ICONS DEFINITIVE REFERENCE MATCH
   The icon system is intentionally isolated from legacy FAQ rules.
========================================================= */
.gex-common-faq .home-faq-item summary .home-faq-question-icon,
body.home .home-faq-item summary .home-faq-question-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#667080!important;
  background:transparent!important;
  line-height:0!important;
  font-size:0!important;
}
.gex-common-faq .home-faq-item summary .home-faq-question-icon svg.gex-faq-question-svg,
body.home .home-faq-item summary .home-faq-question-icon svg.gex-faq-question-svg{
  width:19px!important;
  height:19px!important;
  display:block!important;
  overflow:visible!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.45!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.gex-common-faq .home-faq-item summary .home-faq-question-icon .gex-faq-dot,
body.home .home-faq-item summary .home-faq-question-icon .gex-faq-dot{
  fill:currentColor!important;
  stroke:none!important;
}
.gex-common-faq .home-faq-item summary .home-faq-chevron,
body.home .home-faq-item summary .home-faq-chevron{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#7f8997!important;
  background:transparent!important;
  transform:none!important;
  transition:transform .3s cubic-bezier(.22,1,.36,1),color .25s ease!important;
}
.gex-common-faq .home-faq-item summary .home-faq-chevron svg.gex-faq-chevron-svg,
body.home .home-faq-item summary .home-faq-chevron svg.gex-faq-chevron-svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.55!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.gex-common-faq .home-faq-item[open] summary .home-faq-question-icon,
body.home .home-faq-item[open] summary .home-faq-question-icon{
  color:#6535e8!important;
}
.gex-common-faq .home-faq-item[open] summary .home-faq-chevron,
body.home .home-faq-item[open] summary .home-faq-chevron{
  color:#6535e8!important;
  transform:rotate(180deg)!important;
}
.gex-common-faq .home-faq-item summary::before,
.gex-common-faq .home-faq-item summary::after,
body.home .home-faq-item summary::before,
body.home .home-faq-item summary::after{
  content:none!important;
  display:none!important;
}
@media(max-width:700px){
  .gex-common-faq .home-faq-item summary .home-faq-question-icon,
  body.home .home-faq-item summary .home-faq-question-icon{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important}
  .gex-common-faq .home-faq-item summary .home-faq-chevron,
  body.home .home-faq-item summary .home-faq-chevron{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important}
}


/* =========================================================
   GEXAUZ v2.7.46 — SWIPE HERO DEFINITIVE INTERACTION FIX
========================================================= */
body.home .gex-swipe-hero,
body.home .gex-swipe-hero .gex-swipe-slider-track{
  isolation:isolate!important;
}
body.home .gex-swipe-hero .gex-swipe-slide{
  opacity:0!important;
  visibility:hidden!important;
  z-index:1!important;
  transition:none!important;
}
body.home .gex-swipe-hero .gex-swipe-slide.is-active{
  opacity:1!important;
  visibility:visible!important;
  z-index:3!important;
}
body.home .gex-swipe-hero .gex-swipe-media{z-index:0!important}
body.home .gex-swipe-hero .gex-swipe-overlay{z-index:1!important}
body.home .gex-swipe-hero .gex-swipe-copy{
  z-index:20!important;
  opacity:1!important;
  visibility:visible!important;
  display:block!important;
  color:#fff!important;
  pointer-events:none!important;
}
body.home .gex-swipe-hero .gex-swipe-copy h2,
body.home .gex-swipe-hero .gex-swipe-copy p,
body.home .gex-swipe-hero .gex-swipe-index{
  opacity:1!important;
  visibility:visible!important;
}
body.home .gex-swipe-hero .gex-swipe-copy h2{color:#fff!important;text-shadow:0 2px 20px rgba(0,0,0,.35)!important}
body.home .gex-swipe-hero .gex-swipe-copy p{color:rgba(255,255,255,.88)!important;text-shadow:0 1px 10px rgba(0,0,0,.3)!important}
body.home .gex-swipe-hero .gex-swipe-dots{
  z-index:30!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
body.home .gex-swipe-hero .gex-swipe-dots button{
  flex:0 0 auto!important;
  width:11px!important;
  height:11px!important;
  min-width:11px!important;
  min-height:11px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.68)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.16)!important;
  box-shadow:none!important;
  transform:scale(1)!important;
  transition:transform .25s ease,background .25s ease,border-color .25s ease!important;
}
body.home .gex-swipe-hero .gex-swipe-dots button:hover{transform:scale(1.18)!important;background:rgba(255,255,255,.5)!important}
body.home .gex-swipe-hero .gex-swipe-dots button.is-active{
  width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;
  background:#8b5cff!important;border-color:#fff!important;
  box-shadow:0 0 0 4px rgba(139,92,255,.2),0 0 18px rgba(139,92,255,.55)!important;
}
body.home .gex-swipe-hero .gex-swipe-progress{display:none!important}
@media(max-width:760px){
  body.home .gex-swipe-hero .gex-swipe-dots{gap:8px!important;bottom:28px!important}
  body.home .gex-swipe-hero .gex-swipe-dots button{width:9px!important;height:9px!important;min-width:9px!important;min-height:9px!important}
  body.home .gex-swipe-hero .gex-swipe-dots button.is-active{width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important}
}

/* =========================================================
   GEXAUZ v2.7.47 — HOMEPAGE PRODUCT PINNED ROWS
   Reference: compact numbered product rows with small media + arrow
========================================================= */
.gex-products-reference{background:#f7f7f5!important;color:#14161b!important;padding:72px 0 0!important;overflow:clip!important}
.gex-products-heading{width:min(1200px,calc(100% - 48px));margin:0 auto 34px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:28px!important}
.gex-products-heading .products-home-kicker{display:block!important;color:#5b27e8!important;font-size:13px!important;font-weight:700!important;letter-spacing:.2em!important;text-transform:uppercase!important;margin:0 0 14px!important}
.gex-products-heading .products-home-kicker:after{content:"";display:block;width:44px;height:3px;background:#5b27e8;margin-top:12px;border-radius:999px}
.gex-products-heading h2{font-size:clamp(48px,6vw,82px)!important;line-height:.96!important;letter-spacing:-.055em!important;font-weight:500!important;margin:0!important;color:#111318!important}
.gex-products-heading h2 em{font-style:normal;color:#5b27e8!important}
.gex-products-heading p{max-width:560px!important;margin:18px 0 0!important;color:#696e78!important;font-size:18px!important;line-height:1.45!important}
.gex-products-heading>a{flex:0 0 auto!important;color:#222!important;text-decoration:none!important;border-bottom:1px solid #222!important;padding-bottom:5px!important;font-size:15px!important}
.gex-products-pinned{width:min(1200px,calc(100% - 48px));margin:0 auto;position:relative;overflow:visible}
.gex-product-panel{position:relative;display:grid;grid-template-columns:180px 2px minmax(0,1fr) 150px 72px;align-items:center;gap:26px;min-height:168px;border-top:1px solid #d9dbe0;background:#f7f7f5;color:#14161b;padding:26px 0;transform-origin:center center;will-change:transform,opacity;isolation:isolate}
.gex-product-panel:last-child{border-bottom:1px solid #d9dbe0}
.gex-product-number{font-size:72px;line-height:1;font-weight:300;letter-spacing:-.06em;color:#5b27e8;text-decoration:none;text-align:center}
.gex-product-panel:nth-child(3n+2) .gex-product-number,.gex-product-panel:nth-child(3n+2) .gex-product-arrow{color:#1f9e8d}
.gex-product-panel:nth-child(3n) .gex-product-number,.gex-product-panel:nth-child(3n) .gex-product-arrow{color:#d42b86}
.gex-product-rule{width:2px;height:84px;background:#d8dae0;position:relative}
.gex-product-rule:after{content:"";position:absolute;left:0;top:30%;width:3px;height:40%;background:#5b27e8;border-radius:999px}
.gex-product-copy{min-width:0}
.gex-product-copy h3{margin:0 0 10px!important;font-size:clamp(24px,2.2vw,34px)!important;line-height:1.05!important;letter-spacing:-.035em!important;color:#15171c!important;font-weight:650!important}
.gex-product-copy p{margin:0!important;max-width:600px;color:#696e78!important;font-size:16px!important;line-height:1.5!important}
.gex-product-thumb{width:126px;height:82px;border-radius:14px;overflow:hidden;display:block;background:#ececf0;text-decoration:none;box-shadow:0 10px 25px rgba(35,30,60,.08);transform:translateZ(0)}
.gex-product-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.gex-product-panel:hover .gex-product-thumb img{transform:scale(1.06)}
.gex-product-arrow{width:58px;height:58px;border:1.5px solid currentColor;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:28px;line-height:1;transition:transform .35s ease,background .35s ease;color:#5b27e8}
.gex-product-panel:hover .gex-product-arrow{transform:translateX(5px);background:rgba(91,39,232,.05)}
.gex-product-empty{display:block!important;padding:80px 0!important}
.gex-product-empty .gex-product-copy{max-width:600px}
.gex-product-panel.is-visible{z-index:3}
@media(max-width:760px){
 .gex-products-reference{padding:58px 0 20px!important}
 .gex-products-heading{width:min(100% - 32px,620px);display:block!important;margin-bottom:24px!important}
 .gex-products-heading h2{font-size:clamp(44px,13vw,64px)!important}
 .gex-products-heading p{font-size:15px!important;margin-top:14px!important}
 .gex-products-heading>a{display:inline-block;margin-top:18px!important}
 .gex-products-pinned{width:min(100% - 32px,620px)}
 .gex-product-panel{grid-template-columns:66px 1px minmax(0,1fr) 54px;gap:14px;min-height:132px;padding:20px 0}
 .gex-product-number{font-size:38px;text-align:left}
 .gex-product-rule{height:70px}
 .gex-product-copy h3{font-size:20px!important;margin-bottom:6px!important}
 .gex-product-copy p{font-size:13px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .gex-product-thumb{display:none}
 .gex-product-arrow{width:46px;height:46px;font-size:22px}
}

/* GEXAUZ v2.7.48 — Services reference UI: featured image instead of service icon */
body.home .gex-ref-services-kicker{display:flex!important;align-items:center!important;gap:8px!important}
body.home .gex-ref-services-kicker span{font-size:10px!important;color:#6d42e8!important}
body.home .gex-ref-service-trigger{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important}
body.home .gex-ref-service-title{display:flex!important;align-items:center!important;gap:18px!important;min-width:0!important;flex:1!important}
body.home .gex-ref-service-title strong{font:inherit!important;font-weight:600!important;line-height:1.08!important;color:inherit!important}
body.home .gex-ref-service-thumb{width:58px!important;height:58px!important;min-width:58px!important;border-radius:16px!important;object-fit:cover!important;display:block!important;background:linear-gradient(135deg,#eee9ff,#f7f5ff)!important;border:1px solid rgba(106,66,232,.14)!important;box-shadow:none!important}
body.home .gex-ref-service-thumb--empty{position:relative!important}
body.home .gex-ref-service-thumb--empty:after{content:''!important;position:absolute!important;inset:14px!important;border:1px dashed rgba(106,66,232,.3)!important;border-radius:8px!important}
body.home .gex-ref-service-trigger i{display:grid!important;place-items:center!important;width:48px!important;height:48px!important;min-width:48px!important;border:1px solid rgba(106,66,232,.32)!important;border-radius:50%!important;background:#fff!important;color:#6d42e8!important;font-size:23px!important;line-height:1!important;font-style:normal!important;transform:none!important;transition:transform .35s ease,background .35s ease,color .35s ease!important}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger i{transform:rotate(-45deg)!important;background:#6d42e8!important;color:#fff!important}
body.home .gex-ref-service-detail{padding-left:calc(58px + 18px + 46px)!important}
body.home .gex-ref-service-item.is-active .gex-ref-service-detail{padding-left:calc(58px + 18px + 46px)!important}
@media(max-width:600px){
 body.home .gex-ref-service-title{gap:10px!important}
 body.home .gex-ref-service-thumb{width:46px!important;height:46px!important;min-width:46px!important;border-radius:12px!important}
 body.home .gex-ref-service-trigger i{width:38px!important;height:38px!important;min-width:38px!important;font-size:19px!important}
 body.home .gex-ref-service-detail,body.home .gex-ref-service-item.is-active .gex-ref-service-detail{padding-left:calc(46px + 10px + 28px)!important}
}

/* =========================================================
   GEXAUZ v2.7.49 — HOME SERVICES ACCORDION / PURPLE GRADIENT
   Active service uses a strong atmospheric purple gradient inspired
   by the supplied visual reference. Only one service opens at a time.
========================================================= */
body.home .gex-ref-service-item{
  position:relative!important;
  isolation:isolate!important;
  border:1px solid rgba(106,66,232,.12)!important;
  border-radius:18px!important;
  margin:8px 0!important;
  overflow:hidden!important;
  background:#f5f5f7!important;
  transition:background .45s ease,border-color .45s ease,box-shadow .45s ease,transform .45s ease!important;
}
body.home .gex-ref-service-item::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  opacity:0!important;
  background:
    radial-gradient(circle at 82% 108%,rgba(132,76,255,.98) 0%,rgba(98,40,210,.82) 28%,rgba(45,20,104,.92) 56%,rgba(10,8,24,.98) 100%)!important;
  transition:opacity .5s ease!important;
}
body.home .gex-ref-service-item.is-active{
  border-color:rgba(126,83,255,.48)!important;
  box-shadow:0 24px 60px rgba(91,45,210,.16)!important;
  transform:translateY(-1px)!important;
  color:#fff!important;
}
body.home .gex-ref-service-item.is-active::before{opacity:1!important}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger,
body.home .gex-ref-service-item.is-active .gex-ref-service-detail,
body.home .gex-ref-service-item.is-active .gex-ref-service-detail p{
  color:#fff!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger small{color:#cbbcff!important}
body.home .gex-ref-service-item.is-active .gex-ref-service-thumb{
  border-color:rgba(255,255,255,.25)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.2)!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger i{
  background:#fff!important;
  color:#6d42e8!important;
  border-color:#fff!important;
  transform:rotate(90deg)!important;
}
body.home .gex-ref-service-detail{
  will-change:height,opacity,transform!important;
  overflow:hidden!important;
}
body.home .gex-ref-service-tags span{
  transition:background .3s ease,color .3s ease,border-color .3s ease!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-tags span{
  color:#fff!important;
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.25)!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-detail>a{color:#fff!important;border-bottom:1px solid rgba(255,255,255,.5)!important;padding-bottom:3px!important}

@media(max-width:760px){
  body.home .gex-ref-service-item{border-radius:15px!important;margin:7px 0!important}
  body.home .gex-ref-service-trigger{min-height:78px!important}
}

/* =========================================================
   GEXAUZ v2.7.50 — SERVICES / PRODUCTS MOTION REFINEMENT
   Transparent section surfaces, purple active service cards,
   featured-image zoom, per-card viewport reveals.
========================================================= */
body.home .gex-reference-services{
  background:transparent!important;
  padding:76px 0 88px!important;
  overflow:visible!important;
}
body.home .gex-ref-services-shell{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
body.home .gex-ref-services-head{
  border-bottom:0!important;
  margin-bottom:22px!important;
  padding-bottom:0!important;
}
body.home .gex-ref-service-list{display:flex!important;flex-direction:column!important;gap:10px!important}
body.home .gex-ref-service-item{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(106,66,232,.13)!important;
  border-radius:18px!important;
  margin:0!important;
  overflow:hidden!important;
  transform:translateZ(0);
  transition:background .5s ease,border-color .5s ease,box-shadow .5s ease!important;
}
body.home .gex-ref-service-item::before{display:none!important}
body.home .gex-ref-service-item.is-active{
  background:linear-gradient(135deg,#6d35ed 0%,#5422c8 48%,#321274 100%)!important;
  border-color:rgba(111,58,242,.7)!important;
  box-shadow:0 24px 55px rgba(91,45,210,.18)!important;
  color:#fff!important;
}
body.home .gex-ref-service-trigger,
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger{
  background:transparent!important;
  color:#17151c!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger{color:#fff!important}
body.home .gex-ref-service-trigger{min-height:98px!important;padding:24px 24px!important}
body.home .gex-ref-service-title{align-items:center!important}
body.home .gex-ref-service-thumb{
  overflow:hidden!important;
  object-fit:cover!important;
  transform-origin:center!important;
  will-change:transform,filter!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-thumb{
  border-color:rgba(255,255,255,.35)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.2)!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger small{color:#d9ccff!important}
body.home .gex-ref-service-item.is-active .gex-ref-service-trigger i{
  background:#fff!important;color:#6d35ed!important;border-color:#fff!important;transform:rotate(90deg)!important
}
body.home .gex-ref-service-detail,
body.home .gex-ref-service-item.is-active .gex-ref-service-detail{
  background:transparent!important;
}
body.home .gex-ref-service-item.is-active .gex-ref-service-detail p{color:rgba(255,255,255,.86)!important}
body.home .gex-ref-service-item.is-active .gex-ref-service-tags span{
  background:rgba(255,255,255,.11)!important;border-color:rgba(255,255,255,.25)!important;color:#fff!important
}
body.home .gex-ref-service-item.is-active .gex-ref-service-detail>a{color:#fff!important;border-color:rgba(255,255,255,.55)!important}

/* Products: transparent section surface; retain GEXAUZ accent palette. */
body.home .gex-products-reference{
  background:transparent!important;
  color:#14161b!important;
}
body.home .gex-product-panel{
  background:transparent!important;
}
body.home .gex-product-panel:hover{background:rgba(106,66,232,.018)!important}
body.home .gex-product-number{color:#6d35ed!important}
body.home .gex-product-panel:nth-child(3n+2) .gex-product-number,
body.home .gex-product-panel:nth-child(3n+2) .gex-product-arrow{color:#20a392!important}
body.home .gex-product-panel:nth-child(3n) .gex-product-number,
body.home .gex-product-panel:nth-child(3n) .gex-product-arrow{color:#d43b91!important}
body.home .gex-product-rule:after{background:#6d35ed!important}
body.home .gex-product-thumb{box-shadow:0 8px 22px rgba(91,45,210,.08)!important}

@media(max-width:760px){
  body.home .gex-reference-services{padding:54px 0 64px!important}
  body.home .gex-ref-service-trigger{min-height:78px!important;padding:20px 16px!important}
  body.home .gex-ref-service-item.is-active{box-shadow:0 18px 38px rgba(91,45,210,.15)!important}
  body.home .gex-products-reference{background:transparent!important}
}

/* GEXAUZ v2.7.51 — Homepage dynamic cards / no S.No / no service accordion */
.gex-reference-services{background:transparent!important;color:inherit!important;padding:72px 0!important}
.gex-ref-services-shell{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important}
.gex-ref-services-head{border:0!important;margin-bottom:28px!important;padding-bottom:0!important}
.gex-ref-services-kicker{color:inherit!important}
.gex-service-cards{display:flex;flex-direction:column;gap:14px;width:100%}
.gex-service-card{background:#f2f2f4;border-radius:24px;overflow:hidden;will-change:transform,opacity}
.gex-service-card-link{display:block;color:inherit;text-decoration:none;padding:0 28px 22px}
.gex-service-card-top{min-height:112px;display:grid;grid-template-columns:96px minmax(0,1fr) 48px;align-items:center;gap:22px}
.gex-service-card-image{width:96px;height:68px;border-radius:16px;overflow:hidden;display:block;background:#ddd}
.gex-service-card-image img{width:100%;height:100%;object-fit:cover;display:block;will-change:transform}
.gex-service-card h3{margin:0;font-size:clamp(24px,3vw,40px);font-weight:500;letter-spacing:-.04em}
.gex-service-card-arrow{width:42px;height:42px;border:1px solid rgba(20,20,25,.18);border-radius:50%;display:grid;place-items:center;font-size:18px;justify-self:end;transition:transform .3s ease,background .3s ease}
.gex-service-card:hover .gex-service-card-arrow{transform:translateX(4px);background:#c7a7ff}
.gex-service-card-tags{display:flex;flex-wrap:wrap;gap:7px;margin-left:118px}
.gex-service-card-tags span{font-size:10px;line-height:1;border:1px solid rgba(20,20,25,.12);padding:7px 10px;border-radius:999px;color:#55555e}
.gex-service-card .gex-service-card-image img{transition:transform .65s cubic-bezier(.22,1,.36,1)}
.gex-service-card:hover .gex-service-card-image img{transform:scale(1.05)}
.gex-product-number{display:none!important}
.gex-product-rule{display:none!important}
#portfolio .proj-card .project-link{display:block;text-decoration:none}
#portfolio .proj-name{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;background:#f1f1f3!important;color:#111!important;box-shadow:none!important;border:0!important;border-radius:0 0 18px 18px!important;padding:16px 4px 18px!important}
#portfolio .proj-name .proj-tag{display:block;color:#666!important;margin-top:5px}
@media(max-width:700px){
 .gex-reference-services{padding:54px 0!important}
 .gex-service-card-link{padding:0 18px 18px}
 .gex-service-card-top{grid-template-columns:72px minmax(0,1fr) 38px;gap:14px;min-height:88px}
 .gex-service-card-image{width:72px;height:54px;border-radius:12px}
 .gex-service-card h3{font-size:24px}
 .gex-service-card-arrow{width:34px;height:34px}
 .gex-service-card-tags{margin-left:86px}
}


/* =========================================================
   GEXAUZ v2.8.1 — FINAL REFERENCE UI PASS
   Homepage video-only hero • restored Products/Services base UI
   Editorial FAQ • Product video hero • responsive portfolio/footer
========================================================= */

/* Homepage hero: video only. Keep Swiper controls, remove all copy. */
body.home .gex-swipe-hero{
  position:relative!important;width:100%!important;min-height:100svh!important;height:100svh!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:#08070d!important;overflow:hidden!important;isolation:isolate!important;
}
body.home .gex-swipe-hero .gex-swipe-slider-head{display:none!important}
body.home .gex-swipe-hero .gex-swipe-slider-track{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;
  margin:0!important;border-radius:0!important;touch-action:pan-y!important;
}
body.home .gex-swipe-hero .gex-swipe-slide{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  margin:0!important;border-radius:0!important;background:#08070d!important;overflow:hidden!important;
  transition:opacity .7s ease,transform .9s cubic-bezier(.2,.7,.2,1)!important;
}
body.home .gex-swipe-hero .gex-swipe-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:0!important}
body.home .gex-swipe-hero .gex-swipe-media iframe,
body.home .gex-swipe-hero .gex-swipe-media video{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;
  object-fit:cover!important;transform:scale(1.01)!important;pointer-events:none!important;
}
body.home .gex-swipe-hero .gex-swipe-overlay{display:none!important}
body.home .gex-swipe-hero .gex-swipe-copy{display:none!important}
body.home .gex-swipe-hero .gex-swipe-dots{
  position:absolute!important;z-index:10!important;left:50%!important;right:auto!important;bottom:28px!important;
  transform:translateX(-50%)!important;display:flex!important;gap:8px!important;
}
body.home .gex-swipe-hero .gex-swipe-dots button{
  width:34px!important;height:3px!important;min-width:34px!important;min-height:3px!important;
  padding:0!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.35)!important;
}
body.home .gex-swipe-hero .gex-swipe-dots button.is-active{background:#fff!important}
@media(max-width:760px){
  body.home .gex-swipe-hero{min-height:100svh!important;height:100svh!important}
  body.home .gex-swipe-hero .gex-swipe-dots{bottom:18px!important;gap:6px!important}
  body.home .gex-swipe-hero .gex-swipe-dots button{width:24px!important;min-width:24px!important}
}

/* Global internal/page hero: supplied purple atmospheric reference. */
.gexauz-page-hero-reference{position:relative!important;isolation:isolate!important;overflow:hidden!important;background:#10071f!important;color:#fff!important;min-height:560px!important;display:flex!important;align-items:center!important}
.gexauz-page-hero-reference .gexauz-page-hero-media{position:absolute!important;inset:0!important;z-index:-1!important;overflow:hidden!important}
.gexauz-page-hero-reference .gexauz-page-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,4,17,.88),rgba(15,5,31,.55) 48%,rgba(8,4,17,.35)),linear-gradient(0deg,rgba(7,3,15,.76),transparent 55%)}
.gexauz-page-hero-reference .gexauz-page-hero-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:saturate(.95) contrast(1.04)!important}
.gexauz-page-hero-reference .gexauz-page-inner{position:relative!important;z-index:2!important;color:#fff!important}
.gexauz-page-hero-reference .eyebrow{color:#c9aaff!important}
.gexauz-page-hero-reference h1{color:#fff!important}
.gexauz-page-hero-reference p{color:rgba(255,255,255,.78)!important}

/* Products + Services: deliberately do not apply the v2.8 reference replacement.
   These sections use their existing/previous approved theme rules. */
body.home .gex-products-reference .gex-products-pinned,
body.home .gex-reference-services .gex-service-cards{box-sizing:border-box!important}
body.home .gex-reference-services .gex-service-card{min-width:0!important;max-width:100%!important}
body.home .gex-reference-services .gex-service-card img{max-width:100%!important}

/* Product single hero: UI/video presentation inspired by supplied reference. */
.gex-product-detail .product-hero-final{position:relative!important;overflow:hidden!important}
.product-hero-video-ui{align-self:stretch!important;display:flex!important;align-items:center!important;min-width:0!important}
.product-hero-video-frame{
  position:relative!important;width:100%!important;aspect-ratio:16/10!important;min-height:0!important;
  border-radius:26px!important;overflow:hidden!important;background:#09070f!important;
  border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 34px 90px rgba(0,0,0,.32)!important;
  isolation:isolate!important;
}
.product-hero-video-frame iframe,.product-hero-video-frame video,.product-hero-video-frame img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;
  display:block!important;object-fit:cover!important;
}
.product-hero-video-frame::before{
  content:"";position:absolute;z-index:4;left:18px;right:18px;top:15px;height:25px;
  border-bottom:1px solid rgba(255,255,255,.12);
  background:radial-gradient(circle at 9px 12px,#ff6b5e 0 4px,transparent 4.5px),
             radial-gradient(circle at 25px 12px,#ffc857 0 4px,transparent 4.5px),
             radial-gradient(circle at 41px 12px,#58d68d 0 4px,transparent 4.5px);
  pointer-events:none!important;
}
.product-hero-video-shade{position:absolute!important;inset:0!important;z-index:2!important;background:linear-gradient(180deg,rgba(5,3,10,.04),rgba(5,3,10,.18) 62%,rgba(5,3,10,.48))!important;pointer-events:none!important}
.product-hero-video-label{
  position:absolute!important;z-index:5!important;left:20px!important;bottom:18px!important;
  padding:7px 11px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:999px!important;
  background:rgba(8,6,13,.55)!important;backdrop-filter:blur(10px)!important;
  color:rgba(255,255,255,.88)!important;font-size:10px!important;font-weight:750!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;
}
.product-video-card{
  position:relative!important;aspect-ratio:16/9!important;width:100%!important;max-width:1120px!important;
  margin:0 auto!important;border-radius:28px!important;overflow:hidden!important;background:#09070f!important;
  border:1px solid rgba(20,15,30,.10)!important;box-shadow:0 30px 80px rgba(0,0,0,.16)!important;
}
.product-video-card iframe,.product-video-card video,.product-video-card img{width:100%!important;height:100%!important;border:0!important;display:block!important;object-fit:cover!important}
@media(max-width:900px){
  .product-hero-video-frame{aspect-ratio:16/10!important}
}
@media(max-width:560px){
  .product-hero-video-frame{aspect-ratio:1/1!important;border-radius:20px!important}
  .product-hero-video-frame::before{left:14px;right:14px}
  .product-hero-video-label{left:14px!important;bottom:14px!important}
  .product-video-card{border-radius:20px!important}
}

/* FAQ — supplied reference: left intro + call card, single vertical accordion list. */
.home-faq.gex-common-faq{
  position:relative!important;overflow:hidden!important;background:#f7f7f5!important;
  padding:clamp(76px,9vw,118px) 0!important;
}
.home-faq.gex-common-faq .home-faq-grid{
  width:min(1240px,calc(100% - 48px))!important;max-width:none!important;margin:0 auto!important;
  display:grid!important;grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr)!important;
  gap:52px!important;align-items:start!important;
}
.home-faq.gex-common-faq .home-faq-intro{max-width:430px!important;margin:0!important;position:static!important;text-align:left!important}
.home-faq.gex-common-faq .home-faq-intro .eyebrow{
  display:flex!important;align-items:center!important;gap:7px!important;background:transparent!important;padding:0!important;
  color:#374252!important;border-radius:0!important;font-size:15px!important;letter-spacing:0!important;text-transform:none!important;
}
.gex-faq-dot-mark{width:9px!important;height:9px!important;display:inline-block!important;flex:0 0 9px!important;border-radius:50%!important;background:#ff4b37!important;box-shadow:0 0 0 3px rgba(255,75,55,.10)!important}
.home-faq.gex-common-faq .home-faq-intro .section-title{
  margin:17px 0 27px!important;color:#293646!important;font-size:clamp(42px,5.2vw,64px)!important;
  line-height:.98!important;letter-spacing:-.055em!important;font-weight:650!important;
}
.home-faq.gex-common-faq .home-faq-intro>p{display:none!important}
.gex-faq-call-card{
  padding:30px 24px 28px!important;background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(28,34,43,.07)!important;border-radius:20px!important;
  box-shadow:0 12px 38px rgba(38,31,49,.055)!important;
}
.gex-faq-call-avatar{
  width:64px!important;height:64px!important;border-radius:50%!important;overflow:hidden!important;
  background:#e7ece8!important;display:grid!important;place-items:center!important;margin-bottom:28px!important;
}
.gex-faq-call-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;padding:13px!important;box-sizing:border-box!important}
.gex-faq-call-card h3{margin:0 0 13px!important;color:#344052!important;font-size:28px!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:500!important}
.gex-faq-call-card p{margin:0 0 27px!important;color:#747986!important;font-size:14px!important;line-height:1.55!important}
.gex-faq-call-btn{
  display:flex!important;align-items:center!important;justify-content:center!important;min-height:43px!important;
  width:100%!important;box-sizing:border-box!important;padding:12px 18px!important;border-radius:999px!important;
  background:#ff4b37!important;color:#fff!important;text-decoration:none!important;font-size:14px!important;
  box-shadow:0 9px 24px rgba(255,75,55,.18)!important;transition:transform .2s ease,filter .2s ease!important;
}
.gex-faq-call-btn:hover{transform:translateY(-2px)!important;filter:brightness(.98)!important}
.home-faq.gex-common-faq .home-faq-list{
  display:grid!important;grid-template-columns:1fr!important;gap:12px!important;padding:0!important;
  margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;
}
.home-faq.gex-common-faq .home-faq-column{display:contents!important}
.home-faq.gex-common-faq .home-faq-item{
  margin:0!important;background:rgba(255,255,255,.83)!important;border:1px solid rgba(27,34,45,.07)!important;
  border-radius:17px!important;overflow:hidden!important;box-shadow:0 7px 26px rgba(38,31,49,.04)!important;
}
.home-faq.gex-common-faq .home-faq-item summary{
  min-height:70px!important;box-sizing:border-box!important;padding:20px 18px 20px 20px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
  list-style:none!important;cursor:pointer!important;color:#344052!important;font-size:18px!important;font-weight:500!important;
}
.home-faq.gex-common-faq .home-faq-item summary::-webkit-details-marker{display:none!important}
.home-faq.gex-common-faq .home-faq-question-text{min-width:0!important;line-height:1.35!important}
.home-faq.gex-common-faq .home-faq-question-icon{display:none!important}
.home-faq.gex-common-faq .home-faq-chevron{
  width:26px!important;height:26px!important;min-width:26px!important;display:grid!important;place-items:center!important;
  border-radius:50%!important;background:transparent!important;color:#344052!important;transition:transform .25s ease,background .25s ease!important;
}
.home-faq.gex-common-faq .home-faq-chevron-svg{width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
.home-faq.gex-common-faq .home-faq-item[open] .home-faq-chevron{transform:rotate(180deg)!important;background:#edf0f3!important}
.home-faq.gex-common-faq .home-faq-answer{padding:0 58px 22px 20px!important;color:#737986!important;font-size:14px!important;line-height:1.65!important}
.home-faq.gex-common-faq .home-faq-answer p{margin:0!important}
@media(max-width:900px){
  .home-faq.gex-common-faq .home-faq-grid{grid-template-columns:1fr!important;gap:34px!important}
  .home-faq.gex-common-faq .home-faq-intro{max-width:760px!important}
  .gex-faq-call-card{max-width:620px!important}
}
@media(max-width:600px){
  .home-faq.gex-common-faq{padding:62px 0 70px!important}
  .home-faq.gex-common-faq .home-faq-grid{width:calc(100% - 28px)!important;gap:28px!important}
  .home-faq.gex-common-faq .home-faq-intro .section-title{font-size:clamp(42px,12vw,58px)!important;margin-bottom:22px!important}
  .gex-faq-call-card{padding:24px 18px 20px!important}
  .gex-faq-call-card h3{font-size:25px!important}
  .home-faq.gex-common-faq .home-faq-item summary{min-height:64px!important;padding:18px 14px 18px 16px!important;font-size:16px!important}
  .home-faq.gex-common-faq .home-faq-answer{padding:0 48px 19px 16px!important}
}

/* Portfolio: content-driven responsive columns; no fixed desktop widths/overlap. */
.gexauz-portfolio-archive .gexauz-portfolio-grid-v2{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:42px 18px!important;width:100%!important;min-width:0!important}
.gexauz-portfolio-archive .gexauz-portfolio-card-v2{min-width:0!important;width:100%!important;overflow:hidden!important}
.gexauz-portfolio-archive .gexauz-portfolio-card-v2 .portfolio-link{display:block!important;min-width:0!important}
.gexauz-portfolio-archive .gexauz-portfolio-card-v2 .proj-thumb{width:100%!important;aspect-ratio:1.48/1!important;min-height:0!important;overflow:hidden!important;border-radius:18px!important}
.gexauz-portfolio-archive .gexauz-portfolio-card-v2 .proj-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
@media(max-width:1000px){.gexauz-portfolio-archive .gexauz-portfolio-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:30px 16px!important}}
@media(max-width:620px){.gexauz-portfolio-archive .gexauz-portfolio-grid-v2{grid-template-columns:1fr!important;gap:28px!important}.gexauz-portfolio-archive .gexauz-portfolio-card-v2 .proj-thumb{aspect-ratio:1.3/1!important}}

/* Footer: explicitly content-driven; no fixed/minimum column height. */
.gexauz-footer,.site-wide-footer.gexauz-footer{height:auto!important;min-height:0!important;max-height:none!important}
.gexauz-footer-widgets,.gexauz-footer-widgets .footer-widget,.gexauz-footer-widgets .footer-widget-column,.gexauz-footer-widgets .footer-widget-column .widget{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
.gexauz-footer-widgets{align-items:start!important;grid-auto-rows:auto!important}
@media(max-width:760px){
  .gexauz-footer-widgets{grid-template-columns:1fr!important;grid-auto-rows:auto!important;gap:24px!important}
  .gexauz-footer-widgets .footer-brand-widget{grid-column:auto!important}
  .gexauz-footer-widgets .footer-widget-column{height:auto!important;min-height:0!important}
  .gexauz-footer .footer-inner{height:auto!important;min-height:0!important}
}

/* Keep CTA reference direction while allowing content to determine height. */
.site-global-cta{min-height:0!important;height:auto!important;padding:clamp(90px,10vw,140px) 20px!important;background-color:#120522!important;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),radial-gradient(circle at 50% 18%,rgba(124,65,255,.48),transparent 35%),radial-gradient(circle at 50% 100%,rgba(92,33,190,.36),transparent 42%)!important;background-size:58px 58px,58px 58px,auto,auto!important}
.site-global-cta-inner{max-width:820px!important}
.site-global-cta h2{font-size:clamp(48px,6.8vw,86px)!important;max-width:760px!important;margin:24px auto 18px!important}
@media(max-width:620px){.site-global-cta{padding:68px 18px!important;background-size:42px 42px,42px 42px,auto,auto!important}}

/* Homepage inline CTA reference direction, without a fixed height. */
body.home .home-inline-cta{min-height:0!important;height:auto!important;position:relative!important;isolation:isolate!important;overflow:hidden!important;padding:clamp(90px,10vw,140px) 20px!important;background-color:#120522!important;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),radial-gradient(circle at 50% 12%,rgba(124,65,255,.5),transparent 34%),radial-gradient(circle at 50% 100%,rgba(92,33,190,.32),transparent 46%)!important;background-size:58px 58px,58px 58px,auto,auto!important}
body.home .home-inline-cta-inner{position:relative!important;z-index:2!important;max-width:820px!important}
body.home .home-inline-cta h2{color:#fff!important;font-size:clamp(48px,6.8vw,86px)!important}
body.home .home-inline-cta p{color:rgba(255,255,255,.72)!important}
body.home .home-inline-cta p strong,body.home .home-inline-cta p span{color:#fff!important}

/* =========================================================
   GEXAUZ v2.8.2 — single video hero + editorial products + service grid
========================================================= */
.gex-home-video-hero{position:relative;width:100%;height:100svh;min-height:620px;overflow:hidden;background:#09070f;isolation:isolate}
.gex-home-video-media{position:absolute;inset:0;width:100%;height:100%}
.gex-home-video-media iframe,.gex-home-video-media video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;pointer-events:none}
.gex-home-video-media iframe{transform:scale(1.01)}
.gex-home-video-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#100522,#26104d 52%,#07030d)}

.gex-home-products-editorial{background:#fff;color:#10182a;padding:clamp(76px,8vw,120px) 0 30px;overflow:hidden}
.gex-home-products-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:start;margin-bottom:46px}
.gex-home-products-kicker,.gex-home-services-kicker{display:flex;align-items:center;gap:10px;color:#6045ef;font-size:13px;font-weight:800;letter-spacing:.16em;margin-bottom:14px}
.gex-home-products-kicker span,.gex-home-services-kicker span{width:28px;height:2px;background:#6045ef;display:inline-block}
.gex-home-products-head h2,.gex-home-services-head h2{margin:0;font-size:clamp(48px,6vw,76px);line-height:.95;letter-spacing:-.06em;font-weight:650}
.gex-home-products-head p{max-width:620px;margin:18px 0 0;color:#737d8f;font-size:17px;line-height:1.55}
.gex-home-products-head>a,.gex-home-services-head>a{color:#141b2c;text-decoration:none;font-size:14px;padding-top:12px;white-space:nowrap}
.gex-home-products-head>a span,.gex-home-services-head>a span{font-size:20px;margin-left:9px}
.gex-home-products-list{padding-bottom:0}
.gex-home-product-row{display:grid;grid-template-columns:105px minmax(300px,1fr) 150px minmax(380px,1.05fr);gap:20px;align-items:center;border-bottom:1px solid #e4e7ec;min-height:205px;padding:24px 0}
.gex-home-product-no{display:flex;align-items:center;gap:18px;color:#738094;font-size:18px;font-weight:600}
.gex-home-product-no i{width:45px;height:1px;background:#cbd1da;display:block}
.gex-home-product-copy{min-width:0}
.gex-home-product-category{font-size:11px;letter-spacing:.18em;color:#7b8494;font-weight:800;margin-bottom:9px;text-transform:uppercase}
.gex-home-product-copy h3{margin:0;color:#10182a;font-size:clamp(25px,2.1vw,34px);line-height:1.05;letter-spacing:-.045em;font-weight:650}
.gex-home-product-copy p{margin:10px 0 14px;max-width:520px;color:#747d8e;font-size:14px;line-height:1.5}
.gex-home-product-tags,.gex-home-service-tags{display:flex;flex-wrap:wrap;gap:7px}
.gex-home-product-tags span,.gex-home-service-tags span{border:1px solid #dfe3e9;border-radius:999px;padding:7px 10px;color:#667080;font-size:10px;line-height:1}
.gex-home-product-link{align-self:start;margin-top:14px;color:#6045ef;text-decoration:none;font-size:13px;white-space:nowrap}
.gex-home-product-link span{font-size:17px;margin-left:4px}
.gex-home-product-visual{display:block;min-width:0;height:170px;border-radius:18px;overflow:hidden;background:#f2f4f7}
.gex-home-product-visual img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.gex-home-product-visual:hover img{transform:scale(1.025)}

.gex-home-services-grid{background:#f5f5f6;padding:clamp(80px,8vw,120px) 0}
.gex-home-services-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;margin-bottom:42px}
.gex-home-services-head p{max-width:590px;color:#737c8c;margin:18px 0 0;font-size:16px;line-height:1.55}
.gex-home-services-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gex-home-service-card{min-width:0;background:#fff;border:1px solid #e5e6e9;border-radius:22px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.gex-home-service-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(22,27,38,.09)}
.gex-home-service-link{display:block;padding:0 22px 24px;color:inherit;text-decoration:none}
.gex-home-service-image{height:230px;margin:0 -22px 20px;overflow:hidden;background:#e9ebef}
.gex-home-service-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.22,1,.36,1)}
.gex-home-service-card:hover .gex-home-service-image img{transform:scale(1.045)}
.gex-home-service-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#777f8e;font-size:10px;letter-spacing:.15em;font-weight:800;text-transform:uppercase}
.gex-home-service-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d9dde4;border-radius:50%;font-size:17px;letter-spacing:0;color:#111827;transition:.25s ease}
.gex-home-service-card:hover .gex-home-service-arrow{background:#6045ef;color:#fff;border-color:#6045ef}
.gex-home-service-card h3{margin:17px 0 8px;font-size:clamp(25px,2.3vw,36px);line-height:1;letter-spacing:-.045em;font-weight:620}
.gex-home-service-card p{margin:0 0 16px;color:#737b8a;font-size:14px;line-height:1.55}

/* Remove all legacy homepage swiper presentation if cached/old markup exists. */
body.home .gex-swipe-slider{display:none!important}
@media(max-width:1000px){
 .gex-home-product-row{grid-template-columns:70px minmax(0,1fr) 120px minmax(260px,.85fr)}
 .gex-home-product-visual{height:145px}
 .gex-home-services-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .gex-home-video-hero{height:72svh;min-height:480px}
 .gex-home-products-editorial{padding:64px 0 20px}
 .gex-home-products-head,.gex-home-services-head{grid-template-columns:1fr;gap:18px;margin-bottom:28px}
 .gex-home-products-head>a,.gex-home-services-head>a{padding-top:0}
 .gex-home-products-head h2,.gex-home-services-head h2{font-size:clamp(44px,13vw,60px)}
 .gex-home-products-head p{font-size:15px}
 .gex-home-product-row{grid-template-columns:48px minmax(0,1fr);gap:12px 14px;padding:22px 0;min-height:0}
 .gex-home-product-no{align-items:flex-start;padding-top:3px;font-size:14px;gap:8px}
 .gex-home-product-no i{display:none}
 .gex-home-product-copy h3{font-size:25px}
 .gex-home-product-copy p{font-size:13px;margin:8px 0 12px}
 .gex-home-product-link{grid-column:2;margin:0}
 .gex-home-product-visual{grid-column:1/-1;height:190px;margin-top:4px;border-radius:16px}
 .gex-home-services-grid{padding:64px 0 76px}
 .gex-home-services-cards{grid-template-columns:1fr;gap:16px}
 .gex-home-service-image{height:220px}
}
@media(max-width:480px){.gex-home-video-hero{height:68svh;min-height:420px}.gex-home-product-visual{height:165px}.gex-home-service-image{height:205px}}

/* ========================================================================
   GEXAUZ v2.8.3 — masonry portfolio, clean products archive, theme-only FAQ,
   CSS-grid product hero, custom video control, content-height footer.
   ======================================================================== */
:root{
  --gex-accent:var(--lime);
  --gex-accent-soft:var(--lime-dim);
  --gex-surface:#fff;
  --gex-surface-2:#f5f5f7;
  --gex-ink:var(--ink);
}

/* Portfolio / Masonry gallery: home + archive only; project single is untouched. */
body.home .projects .gex-masonry-projects,
.gexauz-portfolio-archive .gex-masonry-projects{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-rows:clamp(120px,11vw,170px)!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}
body.home .projects .gex-masonry-projects .proj-card,
.gexauz-portfolio-archive .gex-masonry-projects .proj-card{
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:var(--gex-surface)!important;
}
body.home .projects .gex-masonry-projects .proj-card:nth-child(1),
.gexauz-portfolio-archive .gex-masonry-projects .proj-card:nth-child(1){grid-column:span 2!important;grid-row:span 3!important}
body.home .projects .gex-masonry-projects .proj-card:nth-child(2),
.gexauz-portfolio-archive .gex-masonry-projects .proj-card:nth-child(2){grid-row:span 3!important}
body.home .projects .gex-masonry-projects .proj-card:nth-child(3),
.gexauz-portfolio-archive .gex-masonry-projects .proj-card:nth-child(3){grid-row:span 2!important}
body.home .projects .gex-masonry-projects .proj-card:nth-child(4),
.gexauz-portfolio-archive .gex-masonry-projects .proj-card:nth-child(4){grid-row:span 1!important}
body.home .projects .gex-masonry-projects .proj-card:nth-child(n+5),
.gexauz-portfolio-archive .gex-masonry-projects .proj-card:nth-child(n+5){grid-row:span 1!important}
body.home .projects .gex-masonry-projects .project-link,
.gexauz-portfolio-archive .gex-masonry-projects .portfolio-link{
  display:block!important;width:100%!important;height:100%!important;position:relative!important;overflow:hidden!important;background:#ddd!important;
}
body.home .projects .gex-masonry-projects .proj-thumb,
.gexauz-portfolio-archive .gex-masonry-projects .proj-thumb{
  width:100%!important;height:100%!important;aspect-ratio:auto!important;min-height:0!important;border-radius:0!important;overflow:hidden!important;background:#ddd!important;
}
body.home .projects .gex-masonry-projects .proj-thumb img,
.gexauz-portfolio-archive .gex-masonry-projects .proj-thumb img{
  display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .7s cubic-bezier(.22,1,.36,1)!important;
}
body.home .projects .gex-masonry-projects .proj-card:hover .proj-thumb img,
.gexauz-portfolio-archive .gex-masonry-projects .proj-card:hover .proj-thumb img{transform:scale(1.045)!important}
body.home .projects .gex-masonry-projects .proj-name,
.gexauz-portfolio-archive .gex-masonry-projects .gexauz-portfolio-card-v2 .gexauz-portfolio-card-copy{
  position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:3!important;padding:42px 18px 16px!important;
  color:#fff!important;background:linear-gradient(180deg,transparent,rgba(0,0,0,.76))!important;
}
body.home .projects .gex-masonry-projects .proj-name{font-size:18px!important;font-weight:700!important;line-height:1.15!important}
body.home .projects .gex-masonry-projects .proj-tag{display:block!important;margin-top:5px!important;color:rgba(255,255,255,.72)!important;font-size:10px!important}
.gexauz-portfolio-archive{padding-top:110px!important;padding-bottom:90px!important}
.gexauz-portfolio-archive .gex-masonry-projects .gexauz-portfolio-card-copy{position:absolute!important;left:0!important;right:0!important;bottom:0!important;padding:48px 18px 17px!important}
.gexauz-portfolio-archive .gex-masonry-projects .gexauz-portfolio-card-copy .proj-name{font-size:19px!important;font-weight:750!important;color:#fff!important}
.gexauz-portfolio-archive .gex-masonry-projects .gexauz-portfolio-card-copy p{margin:5px 0 0!important;color:rgba(255,255,255,.72)!important;font-size:12px!important;line-height:1.4!important}
.gexauz-portfolio-archive .gex-masonry-projects .gexauz-portfolio-tags{display:none!important}

/* Homepage products: editorial rows without the old View product link. */
body.home .gex-home-product-row{grid-template-columns:105px minmax(300px,1fr) minmax(380px,1.05fr)!important}
body.home .gex-home-product-visual{grid-column:3!important}
body.home .gex-home-product-row:hover .gex-home-product-visual img{transform:scale(1.025)!important}
@media(max-width:1000px){body.home .gex-home-product-row{grid-template-columns:70px minmax(0,1fr) minmax(260px,.85fr)!important}}
@media(max-width:760px){body.home .gex-home-product-row{grid-template-columns:48px minmax(0,1fr)!important}body.home .gex-home-product-visual{grid-column:1/-1!important}}

/* Product archive: clean, aligned editorial list inspired by the supplied reference. */
.gexauz-product-archive{background:#fff!important;padding:110px 0 96px!important}
.gexauz-product-archive-inner{max-width:1250px!important}
.gexauz-product-archive .eyebrow{color:var(--gex-accent)!important}
.gexauz-product-archive .section-title{font-size:clamp(48px,6vw,78px)!important;line-height:.95!important;letter-spacing:-.06em!important;margin:10px 0 14px!important;color:var(--gex-ink)!important}
.gexauz-archive-intro{max-width:620px!important;margin:0 0 42px!important;color:var(--muted)!important;font-size:17px!important;line-height:1.55!important}
.gexauz-product-grid-one-column{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
.gexauz-product-grid-one-column .gexauz-product-card{border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:visible!important}
.gexauz-product-grid-one-column .gexauz-product-card:last-child{border-bottom:1px solid var(--line)!important}
.gexauz-product-grid-one-column .gexauz-product-card-link{display:grid!important;grid-template-columns:82px minmax(0,1fr) minmax(300px,.9fr)!important;gap:28px!important;align-items:center!important;padding:28px 0!important}
.gexauz-product-grid-one-column .gexauz-product-thumb{grid-column:3!important;grid-row:1!important;width:100%!important;height:190px!important;aspect-ratio:auto!important;border-radius:18px!important;background:#f2f3f5!important;overflow:hidden!important}
.gexauz-product-grid-one-column .gexauz-product-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
.gexauz-product-grid-one-column .gexauz-product-card-body{grid-column:2!important;grid-row:1!important;padding:0!important;min-width:0!important}
.gexauz-product-grid-one-column .gexauz-product-card-body::before{content:counter(gex-product-row,decimal-leading-zero);counter-increment:gex-product-row;display:block!important;color:#7d8797!important;font-size:16px!important;font-weight:700!important;margin-bottom:25px!important}
.gexauz-product-grid-one-column{counter-reset:gex-product-row!important}
.gexauz-product-grid-one-column .gexauz-product-card-body h2{font-size:clamp(27px,2.5vw,38px)!important;line-height:1!important;letter-spacing:-.045em!important;color:var(--gex-ink)!important;margin:0 0 10px!important}
.gexauz-product-grid-one-column .gexauz-product-card-body p{max-width:560px!important;color:var(--muted)!important;font-size:14px!important;line-height:1.55!important;margin:0!important}
.gexauz-product-grid-one-column .gexauz-product-card-arrow{display:inline-flex!important;align-items:center!important;gap:7px!important;margin-top:18px!important;color:var(--gex-accent)!important;font-size:13px!important;font-weight:700!important}
.gexauz-product-grid-one-column .gexauz-product-card-link:hover .gexauz-product-thumb img{transform:scale(1.025)!important}
@media(max-width:760px){
  .gexauz-product-archive{padding:70px 0 72px!important}
  .gexauz-product-grid-one-column .gexauz-product-card-link{grid-template-columns:48px minmax(0,1fr)!important;gap:8px 14px!important;padding:24px 0!important}
  .gexauz-product-grid-one-column .gexauz-product-card-body{grid-column:2!important;grid-row:1!important}
  .gexauz-product-grid-one-column .gexauz-product-thumb{grid-column:1/-1!important;grid-row:2!important;height:205px!important;margin-top:5px!important}
  .gexauz-product-grid-one-column .gexauz-product-card-body::before{margin-bottom:16px!important;font-size:13px!important}
}

/* FAQ: same reference structure, but every accent uses the GEXAUZ theme color. */
.home-faq.gex-common-faq{background:var(--gex-surface-2)!important}
.home-faq.gex-common-faq .home-faq-intro .eyebrow{color:var(--gex-ink)!important}
.gex-faq-dot-mark{background:var(--gex-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--gex-accent) 12%,transparent)!important}
.gex-faq-call-btn{background:var(--gex-accent)!important;box-shadow:0 9px 24px color-mix(in srgb,var(--gex-accent) 18%,transparent)!important}
.home-faq.gex-common-faq .home-faq-item[open] .gex-faq-chevron-svg{color:var(--gex-accent)!important}
.home-faq.gex-common-faq .home-faq-item[open] .home-faq-chevron{color:var(--gex-accent)!important}
.home-faq.gex-common-faq .home-faq-item[open] .home-faq-answer{border-top:1px solid color-mix(in srgb,var(--gex-accent) 10%,transparent)!important}

/* Product single hero: CSS grid + glow, no image background required. */
.gex-product-detail .product-hero-final{min-height:760px!important;padding:96px 0 76px!important;background:#08060f!important;text-align:center!important}
.product-hero-final-bg{background:
  radial-gradient(ellipse at 50% 92%,color-mix(in srgb,var(--gex-accent) 88%,transparent),transparent 35%),
  radial-gradient(ellipse at 50% 105%,color-mix(in srgb,var(--gex-accent-soft) 40%,transparent),transparent 58%),
  linear-gradient(180deg,#07050d 0%,#090612 58%,#08060f 100%)!important}
.product-hero-final-grid{position:absolute!important;inset:0!important;z-index:1!important;opacity:.34!important;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px)!important;background-size:56px 56px!important;mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 86%)!important}
.product-hero-final-inner{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:38px!important;min-height:0!important;text-align:center!important;position:relative!important;z-index:3!important}
.product-hero-final-copy{max-width:900px!important;text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important}
.product-hero-final-news{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:7px 12px!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:999px!important;background:rgba(255,255,255,.06)!important;color:rgba(255,255,255,.78)!important;font-size:12px!important}
.product-hero-final-news b{color:#fff!important;font-weight:750!important}
.product-hero-final-kicker{margin:22px 0 0!important;color:var(--gex-accent-soft)!important}
.product-hero-final-copy h1{max-width:850px!important;margin:14px auto 0!important;font-size:clamp(50px,7vw,92px)!important;line-height:.92!important;letter-spacing:-.065em!important;color:#fff!important}
.product-hero-final-copy>p{max-width:700px!important;margin:24px auto 0!important;color:rgba(255,255,255,.66)!important;font-size:17px!important;line-height:1.55!important}
.product-hero-final-tags{justify-content:center!important;margin-top:20px!important;margin-bottom:0!important}
.product-hero-final-actions{justify-content:center!important;margin-top:22px!important}
.product-hero-final-visual{width:min(920px,100%)!important;min-height:0!important;display:block!important}
.product-hero-video-frame{aspect-ratio:16/9!important;border-radius:22px!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 34px 100px rgba(0,0,0,.46),0 0 80px color-mix(in srgb,var(--gex-accent) 18%,transparent)!important;background:#050409!important}
.product-hero-video-frame::before{display:none!important}
.product-hero-video-shade{background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.38))!important;z-index:2!important}
.product-hero-video-label{display:none!important}
.product-video-toggle{position:absolute!important;right:18px!important;bottom:18px!important;z-index:7!important;width:44px!important;height:44px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:50%!important;background:rgba(0,0,0,.55)!important;color:#fff!important;display:grid!important;place-items:center!important;cursor:pointer!important;backdrop-filter:blur(10px)!important;transition:transform .2s ease,background .2s ease!important}
.product-video-toggle:hover{transform:scale(1.06)!important;background:color-mix(in srgb,var(--gex-accent) 78%,#000)!important}
.product-video-toggle-icon{font-size:13px!important;line-height:1!important;letter-spacing:-2px!important}
@media(max-width:760px){
 .gex-product-detail .product-hero-final{min-height:0!important;padding:72px 0 58px!important}
 .product-hero-final-inner{gap:28px!important}
 .product-hero-final-copy h1{font-size:clamp(44px,13vw,64px)!important}
 .product-hero-final-copy>p{font-size:15px!important}
 .product-hero-final-tags span{font-size:10px!important}
 .product-hero-video-frame{aspect-ratio:16/10!important;border-radius:18px!important}
 .product-video-toggle{right:12px!important;bottom:12px!important;width:40px!important;height:40px!important}
}

/* Global CTA: CSS-only theme gradient; no image background. */
.site-global-cta{min-height:0!important;height:auto!important;padding:clamp(100px,11vw,150px) 20px!important;background-color:#0d0718!important;background-image:
 linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
 radial-gradient(ellipse at 50% 100%,color-mix(in srgb,var(--gex-accent) 75%,transparent),transparent 52%),
 radial-gradient(circle at 50% 8%,color-mix(in srgb,var(--gex-accent-soft) 25%,transparent),transparent 36%)!important;background-size:58px 58px,58px 58px,auto,auto!important}
.site-global-cta h2{color:#fff!important}
.site-global-cta-tag{color:rgba(255,255,255,.8)!important;border-color:color-mix(in srgb,var(--gex-accent) 45%,rgba(255,255,255,.2))!important}
.site-global-cta-tag span{background:var(--gex-accent)!important}
.site-global-cta::before,.site-global-cta::after{border-color:color-mix(in srgb,var(--gex-accent) 45%,transparent)!important}

/* Footer: menu columns remain completely content-height driven at every breakpoint. */
.gexauz-footer,.site-wide-footer.gexauz-footer,.gexauz-footer-widgets,.gexauz-footer-widgets>*{height:auto!important;min-height:0!important;max-height:none!important}
.gexauz-footer-widgets{align-items:start!important;grid-auto-rows:auto!important}
@media(max-width:760px){.gexauz-footer-widgets{display:grid!important;grid-template-columns:1fr!important;align-items:start!important;grid-auto-rows:auto!important}.gexauz-footer-widgets .footer-widget-column{height:auto!important;min-height:0!important;overflow:visible!important}.gexauz-footer-widgets .widget{height:auto!important;min-height:0!important}}

/* Service cards: clean responsive grid with stable image/copy alignment. */
body.home .gex-home-services-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;gap:20px!important}
body.home .gex-home-service-card{height:100%!important}
body.home .gex-home-service-link{height:100%!important;display:flex!important;flex-direction:column!important}
body.home .gex-home-service-image{aspect-ratio:16/10!important;height:auto!important;flex:0 0 auto!important}
body.home .gex-home-service-card h3{min-height:2.05em!important}
body.home .gex-home-service-card p{min-height:3.1em!important}
@media(max-width:1000px){body.home .gex-home-services-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){body.home .gex-home-services-cards{grid-template-columns:1fr!important}.gex-home-service-card h3,.gex-home-service-card p{min-height:0!important}}
