*{margin:0;padding:0;box-sizing:border-box}
  :root{
    --bg-primary:#0A0F1E;
    --bg-secondary:#0D1B2A;
    --bg-glass:rgba(255,255,255,0.06);
    --bg-glass-hover:rgba(255,255,255,0.10);
    --bg-glass-strong:rgba(255,255,255,0.14);
    --border-glass:rgba(255,255,255,0.12);
    --border-glass-strong:rgba(255,255,255,0.22);
    --accent-blue:#3B82F6;
    --accent-blue-light:#60A5FA;
    --accent-orange:#F97316;
    --accent-glow:rgba(59,130,246,0.35);
    --text-primary:#F0F6FF;
    --text-secondary:#94A3B8;
    --text-muted:#475569;
    --shadow-glass:0 8px 32px rgba(0,0,0,0.4);
    --shadow-glow:0 0 40px rgba(59,130,246,0.2);
  }
  html{scroll-behavior:smooth}
  body{
    font-family:'DM Sans',sans-serif;
    background:var(--bg-primary);
    color:var(--text-primary);
    line-height:1.7;
    overflow-x:hidden;
    position:relative;
    isolation:isolate;
  }
  body::before,
  body::after{
    content:'';
    position:fixed;
    inset:-15% 0 0;
    pointer-events:none;
    z-index:0;
    background-repeat:no-repeat;
    will-change:transform;
  }
  body::before{
    opacity:0.3;
    background-image:
      radial-gradient(circle at 5% 100%, rgba(96,165,250,0.95) 0 7.6px, transparent 12.8px),
      radial-gradient(circle at 12% 103%, rgba(96,165,250,0.9) 0 3px, transparent 5.8px),
      radial-gradient(circle at 18% 99%, rgba(96,165,250,0.88) 0 2px, transparent 4px),
      radial-gradient(circle at 27% 104%, rgba(96,165,250,0.86) 0 1.2px, transparent 2.7px),
      radial-gradient(circle at 35% 96%, rgba(96,165,250,0.92) 0 0.6px, transparent 1.5px),
      radial-gradient(circle at 43% 101%, rgba(96,165,250,0.9) 0 1.2px, transparent 2.7px),
      radial-gradient(circle at 52% 105%, rgba(96,165,250,0.93) 0 7.6px, transparent 12.8px),
      radial-gradient(circle at 60% 98%, rgba(96,165,250,0.87) 0 0.6px, transparent 1.5px),
      radial-gradient(circle at 68% 103%, rgba(96,165,250,0.9) 0 3px, transparent 5.8px),
      radial-gradient(circle at 77% 97%, rgba(96,165,250,0.84) 0 2px, transparent 4px),
      radial-gradient(circle at 86% 105%, rgba(96,165,250,0.9) 0 1.2px, transparent 2.7px),
      radial-gradient(circle at 95% 100%, rgba(96,165,250,0.88) 0 0.6px, transparent 1.5px);
    animation:particles-rise-blue 16s linear infinite;
  }
  body::after{
    opacity:0.3;
    background-image:
      radial-gradient(circle at 8% 102%, rgba(249,115,22,0.9) 0 7.6px, transparent 12.8px),
      radial-gradient(circle at 16% 97%, rgba(249,115,22,0.88) 0 1.2px, transparent 2.7px),
      radial-gradient(circle at 25% 105%, rgba(249,115,22,0.92) 0 3px, transparent 5.8px),
      radial-gradient(circle at 33% 99%, rgba(249,115,22,0.84) 0 0.6px, transparent 1.5px),
      radial-gradient(circle at 42% 104%, rgba(249,115,22,0.91) 0 2px, transparent 4px),
      radial-gradient(circle at 51% 96%, rgba(249,115,22,0.86) 0 1.2px, transparent 2.7px),
      radial-gradient(circle at 59% 106%, rgba(249,115,22,0.9) 0 7.6px, transparent 12.8px),
      radial-gradient(circle at 67% 100%, rgba(249,115,22,0.85) 0 0.6px, transparent 1.5px),
      radial-gradient(circle at 74% 103%, rgba(249,115,22,0.9) 0 3px, transparent 5.8px),
      radial-gradient(circle at 83% 98%, rgba(249,115,22,0.84) 0 2px, transparent 4px),
      radial-gradient(circle at 90% 104%, rgba(249,115,22,0.9) 0 1.2px, transparent 2.7px),
      radial-gradient(circle at 97% 97%, rgba(249,115,22,0.82) 0 0.6px, transparent 1.5px);
    animation:particles-rise-red 21s linear infinite;
  }
  @keyframes particles-rise-blue{
    0%{transform:translate3d(0,2%,0)}
    12%{transform:translate3d(-0.5%, -2%,0)}
    24%{transform:translate3d(0.9%, -6%,0)}
    36%{transform:translate3d(-0.7%, -10%,0)}
    48%{transform:translate3d(0.6%, -13%,0)}
    62%{transform:translate3d(-1%, -16%,0)}
    78%{transform:translate3d(0.5%, -20%,0)}
    100%{transform:translate3d(0,-24%,0)}
  }
  @keyframes particles-rise-red{
    0%{transform:translate3d(0,3%,0)}
    14%{transform:translate3d(0.7%, -1%,0)}
    26%{transform:translate3d(-0.8%, -5%,0)}
    38%{transform:translate3d(0.6%, -9%,0)}
    52%{transform:translate3d(-0.9%, -13%,0)}
    66%{transform:translate3d(1.1%, -17%,0)}
    82%{transform:translate3d(-0.5%, -21%,0)}
    100%{transform:translate3d(0,-26%,0)}
  }
  body > *{
    position:relative;
    z-index:1;
  }
  @media (prefers-reduced-motion: reduce){
    body::before,
    body::after{animation:none}
  }

  /* ── SHARED ── */
  .container{max-width:1200px;margin:0 auto;padding:0 32px}
  .section-label{
    display:inline-block;
    font-family:'Outfit',sans-serif;
    font-size:0.72rem;
    font-weight:600;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--accent-blue);
    margin-bottom:16px;
  }
  .section-heading{
    font-family:'Outfit',sans-serif;
    font-weight:700;
    font-size:clamp(1.6rem,3.5vw,2.8rem);
    color:var(--text-primary);
    line-height:1.25;
    margin-bottom:20px;
  }
  .section-sub{
    font-size:1.05rem;
    color:var(--text-secondary);
    max-width:600px;
    margin-bottom:40px;
  }
  .glass-card{
    background:var(--bg-glass);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    border:1px solid var(--border-glass);
    border-radius:16px;
    box-shadow:var(--shadow-glass);
    transition:all 0.3s ease;
  }
  .glass-card:hover{
    background:var(--bg-glass-hover);
    border-color:rgba(59,130,246,0.3);
    transform:translateY(-4px);
    box-shadow:0 16px 48px rgba(0,0,0,0.5),var(--shadow-glow);
  }
  .btn-primary{
    --btn-line:var(--accent-blue);
    min-width:10em;
    position:relative;
    min-height:3.5em;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0.9em 2em;
    border:2px solid transparent;
    outline:none;
    background:transparent;
    color:var(--text-primary);
    border-radius:0.3em;
    font-family:'Outfit',sans-serif;
    font-weight:600;
    font-size:0.88rem;
    letter-spacing:0.08em;
    text-transform:uppercase;
    cursor:pointer;
    text-decoration:none;
    transition:box-shadow 0.35s ease,background-color 0.35s ease,color 0.25s ease,transform 0.25s ease,background-size 0.35s ease;
    overflow:hidden;
    isolation:isolate;
    background:
      linear-gradient(var(--btn-line),var(--btn-line)) left top / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right top / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) left bottom / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right bottom / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) left top / 2px 40% no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) left bottom / 2px 40% no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right top / 2px 40% no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right bottom / 2px 40% no-repeat;
  }
  .btn-primary:hover{
    background-color:rgba(59,130,246,0.14);
    box-shadow:
      inset 0 0 22px var(--accent-glow),
      0 0 20px rgba(59,130,246,0.25);
    background-size:
      50% 2px,
      50% 2px,
      50% 2px,
      50% 2px,
      2px 50%,
      2px 50%,
      2px 50%,
      2px 50%;
    color:#fff;
    transform:translateY(-1px);
  }
  .btn-primary:focus-visible{
    background-size:
      50% 2px,
      50% 2px,
      50% 2px,
      50% 2px,
      2px 50%,
      2px 50%,
      2px 50%,
      2px 50%;
    box-shadow:
      inset 0 0 22px var(--accent-glow),
      0 0 0 4px rgba(59,130,246,0.3);
  }
  .btn-secondary{
    --btn-line:var(--accent-blue-light);
    min-width:10em;
    position:relative;
    min-height:3.5em;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0.9em 2em;
    border:2px solid transparent;
    outline:none;
    background:transparent;
    color:var(--text-primary);
    border-radius:0.3em;
    font-family:'Outfit',sans-serif;
    font-weight:600;
    font-size:0.88rem;
    letter-spacing:0.08em;
    text-transform:uppercase;
    cursor:pointer;
    text-decoration:none;
    transition:box-shadow 0.35s ease,background-color 0.35s ease,color 0.25s ease,transform 0.25s ease,background-size 0.35s ease;
    overflow:hidden;
    isolation:isolate;
    background:
      linear-gradient(var(--btn-line),var(--btn-line)) left top / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right top / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) left bottom / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right bottom / 5.6% 2px no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) left top / 2px 40% no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) left bottom / 2px 40% no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right top / 2px 40% no-repeat,
      linear-gradient(var(--btn-line),var(--btn-line)) right bottom / 2px 40% no-repeat;
  }
  .btn-secondary:hover{
    background-color:rgba(96,165,250,0.12);
    box-shadow:
      inset 0 0 20px rgba(96,165,250,0.22),
      0 0 18px rgba(96,165,250,0.2);
    background-size:
      50% 2px,
      50% 2px,
      50% 2px,
      50% 2px,
      2px 50%,
      2px 50%,
      2px 50%,
      2px 50%;
    color:#fff;
    transform:translateY(-1px);
  }
  .btn-secondary:focus-visible{
    background-size:
      50% 2px,
      50% 2px,
      50% 2px,
      50% 2px,
      2px 50%,
      2px 50%,
      2px 50%,
      2px 50%;
    box-shadow:
      inset 0 0 20px rgba(96,165,250,0.22),
      0 0 0 4px rgba(96,165,250,0.28);
  }

  /* ── HEADER ── */
  .site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:100;
    height:70px;
    background:rgba(10,15,30,0.85);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    border-bottom:1px solid var(--border-glass);
    transition:background 0.3s;
  }
  .site-header.scrolled{background:rgba(10,15,30,0.97)}
  .header-inner{
    max-width:1200px;
    margin:0 auto;
    padding:0 32px;
    height:100%;
    display:flex;
    align-items:center;
    gap:48px;
  }
  .logo{
    font-family:'Outfit',sans-serif;
    font-weight:800;
    font-size:1.2rem;
    color:var(--text-primary);
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:-0.01em;
    white-space:nowrap;
    flex-shrink:0;
    display:flex;
    align-items:center;
    min-height:0;
  }
  .logo span{color:var(--accent-blue)}
  .logo-img{
    display:block;
    width:306px;
    height:auto;
    max-width:100%;
    max-height:80px;
    object-fit:contain;
    object-position:center;
  }
  .site-header .logo{height:100%}
  .site-nav{
    display:flex;
    align-items:center;
    gap:32px;
    flex:1;
  }
  .site-nav a{
    font-family:'Outfit',sans-serif;
    font-size:0.88rem;
    font-weight:600;
    letter-spacing:0.04em;
    text-transform:uppercase;
    color:var(--text-secondary);
    text-decoration:none;
    transition:color 0.2s;
    white-space:nowrap;
    position:relative;
  }
  .site-nav a:hover,.site-nav a.active{color:var(--text-primary)}
  .site-nav .dropdown-wrap{position:relative}
  .site-nav .dropdown-trigger{
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:5px;
    font-family:'Outfit',sans-serif;
    font-size:0.88rem;
    font-weight:600;
    color:var(--text-secondary);
    text-transform:uppercase;
    letter-spacing:0.04em;
    transition:color 0.2s;
  }
  .site-nav .dropdown-wrap:hover .dropdown-trigger{color:var(--text-primary)}
  .site-nav .dropdown-trigger svg{width:12px;height:12px;fill:currentColor;transition:transform 0.2s}
  .site-nav .dropdown-wrap:hover .dropdown-trigger svg{transform:rotate(180deg)}
  .site-nav .dropdown{
    position:absolute;
    top:calc(100% + 20px);
    left:50%;
    transform:translateX(-50%);
    width:260px;
    background:rgba(13,27,42,0.95);
    backdrop-filter:blur(20px);
    border:1px solid var(--border-glass);
    border-radius:12px;
    padding:8px;
    opacity:0;
    pointer-events:none;
    transition:opacity 0.2s,top 0.2s;
  }
  .site-nav .dropdown-wrap:hover .dropdown{opacity:1;pointer-events:all;top:calc(100% + 12px)}
  .site-nav .dropdown a{
    display:block;
    padding:10px 14px;
    border-radius:8px;
    font-size:0.82rem;
    color:var(--text-secondary);
    transition:all 0.2s;
    text-transform:uppercase;
    letter-spacing:0.05em;
  }
  .site-nav .dropdown a:hover{background:var(--bg-glass);color:var(--text-primary)}
  .header-cta{margin-left:auto}
  .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px}
  .hamburger{
    border:1px solid var(--border-glass);
    border-radius:8px;
    background:rgba(10,15,30,0.6);
    min-height:44px;
    min-width:44px;
    align-items:center;
    justify-content:center;
  }
  .hamburger span{display:block;width:22px;height:2px;background:var(--text-primary);border-radius:2px;transition:all 0.3s}
  .mobile-call-fab{
    position:fixed;
    right:16px;
    bottom:16px;
    z-index:120;
    width:56px;
    height:56px;
    border-radius:999px;
    border:1px solid rgba(59,130,246,0.45);
    background:linear-gradient(135deg,rgba(59,130,246,0.95),rgba(37,99,235,0.95));
    box-shadow:0 10px 28px rgba(0,0,0,0.45), 0 0 0 4px rgba(59,130,246,0.15);
    color:#fff;
    display:none;
    align-items:center;
    justify-content:center;
    text-decoration:none;
  }
  .mobile-call-fab svg{width:24px;height:24px;display:block}
  .mobile-call-fab:active{transform:scale(0.96)}

  @media(max-width:1024px){
    .header-inner{padding:0 20px;gap:16px}
    .logo{
      margin-right:auto;
      font-size:1.05rem;
      line-height:1.1;
    }
    .logo-img{width:277px;height:auto;max-height:70px}
    .site-nav{display:none}
    .header-cta{
      display:inline-flex;
      margin-left:0;
      min-width:0;
      flex-shrink:0;
    }
    .header-cta.btn-primary{
      min-height:2.9em;
      padding:0.62em 1.1em;
      font-size:0.76rem;
      letter-spacing:0.06em;
    }
    .hamburger{display:flex}
    .hamburger{margin-left:2px;flex-shrink:0}
    .site-header.menu-open{
      background:rgba(6,12,24,0.97);
      border-bottom-color:rgba(96,165,250,0.25);
      box-shadow:0 20px 42px rgba(2,6,16,0.58);
    }
    .site-header:not(.menu-open) .site-nav,
    .site-header.menu-open .header-cta{display:none !important}
    .site-header:not(.menu-open) .hamburger span:nth-child(1),
    .site-header:not(.menu-open) .hamburger span:nth-child(3){transform:none}
    .site-header:not(.menu-open) .hamburger span:nth-child(2){opacity:1}
    .site-header.menu-open{height:auto}
    .site-header.menu-open .header-inner{
      height:auto;
      min-height:70px;
      padding-top:12px;
      padding-bottom:12px;
      align-items:center;
      flex-wrap:wrap;
    }
    .site-header.menu-open .site-nav{
      order:3;
      width:min(760px,100%);
      display:flex !important;
      flex-direction:column;
      gap:8px;
      margin:8px auto 0;
      padding:12px;
      border-radius:12px;
      border:1px solid var(--border-glass);
      background:rgba(13,27,42,0.95);
      box-shadow:
        0 14px 32px rgba(0,0,0,0.38),
        0 0 0 1px rgba(96,165,250,0.16),
        0 0 28px rgba(59,130,246,0.16);
      backdrop-filter:blur(16px);
      -webkit-backdrop-filter:blur(16px);
    }
    .site-header.menu-open .site-nav > a,
    .site-header.menu-open .site-nav .dropdown-trigger{
      width:100%;
      padding:12px 10px;
      border-radius:8px;
      background:rgba(255,255,255,0.02);
    }
    .site-header.menu-open .site-nav .dropdown-wrap{width:100%}
    .site-header.menu-open .site-nav .dropdown{
      position:static;
      transform:none;
      width:100%;
      margin-top:8px;
      opacity:1;
      pointer-events:auto;
      top:auto;
      left:auto;
      background:rgba(10,15,30,0.6);
      border-color:var(--border-glass);
    }
    .site-header.menu-open .site-nav .dropdown a{
      padding:10px 12px;
      font-size:0.8rem;
    }
    .site-header.menu-open .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .site-header.menu-open .hamburger span:nth-child(2){opacity:0}
    .site-header.menu-open .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  }
  @media(max-width:900px){
    .logo{font-size:0.98rem}
    .logo-img{width:259px;height:auto;max-height:64px}
    .header-inner{gap:10px}
    .header-cta.btn-primary{
      padding:0.56em 0.9em;
      font-size:0.72rem;
    }
  }
  @media(max-width:768px){
    .header-cta{display:none !important}
    .mobile-call-fab{
      display:flex;
      bottom:max(16px, env(safe-area-inset-bottom));
      right:max(16px, env(safe-area-inset-right));
    }
  }

  /* ── HERO ── */
  .home-hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding:120px 0 80px;
  }
  .home-hero-bg{
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,#080d15 0%,#111922 60%,#18222b 100%);
    z-index:0;
    display:none;
  }
  .home-hero-bg::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(120deg,rgba(24,18,14,0.56) 0%,rgba(30,24,18,0.46) 50%,rgba(22,17,13,0.54) 100%);
    z-index:1;
    pointer-events:none;
    display:none;
  }
  .home-hero-bg-picture{
    position:absolute;
    inset:0;
    z-index:0;
    transform:translate3d(0,var(--hero-bg-shift,0px),0) scale(1.03);
    will-change:transform;
  }
  .home-hero-bg-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:0.4;
    filter:saturate(0.42) contrast(0.94) sepia(0.34) hue-rotate(-32deg) brightness(1.03);
    z-index:0;
  }
  .home-hero-orb{
    position:absolute;
    top:-100px;
    left:-100px;
    width:700px;
    height:700px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,0.02) 0%,transparent 70%);
    animation:pulseOrb 8s ease-in-out infinite alternate;
    pointer-events:none;
    z-index:1;
  }
  .home-hero-orb2{
    position:absolute;
    bottom:-200px;
    right:-100px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,0.015) 0%,transparent 70%);
    animation:pulseOrb 10s ease-in-out infinite alternate-reverse;
    pointer-events:none;
    z-index:1;
  }
  @keyframes pulseOrb{
    from{transform:scale(1);opacity:1}
    to{transform:scale(1.2);opacity:0.6}
  }
  .home-hero-content{
    position:relative;
    z-index:3;
    max-width:800px;
    transform:translate3d(0,var(--hero-content-shift,0px),0);
    animation:heroBlockReveal 805ms cubic-bezier(0.22,1,0.36,1) 140ms both;
    will-change:transform;
  }
  .home-hero-eyebrow{
    font-family:'Outfit',sans-serif;
    font-size:0.72rem;
    font-weight:600;
    letter-spacing:0.18em;
    text-transform:uppercase;
    color:var(--accent-blue);
    margin-bottom:20px;
    display:flex;
    align-items:center;
    gap:10px;
  }
  .home-hero-eyebrow::before{
    content:'';
    display:block;
    width:32px;
    height:2px;
    background:var(--accent-blue);
    flex-shrink:0;
  }
  .home-hero h1{
    font-family:'Outfit',sans-serif;
    font-weight:800;
    font-size:clamp(2.2rem,5vw,4rem);
    line-height:1.12;
    color:var(--text-primary);
    margin-bottom:24px;
    letter-spacing:-0.02em;
  }
  .home-hero h1 .blue{color:var(--accent-blue)}
  .home-hero-sub{
    font-size:1.12rem;
    color:var(--text-secondary);
    max-width:580px;
    margin-bottom:40px;
    line-height:1.7;
  }
  .home-hero-btns{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    margin-bottom:40px;
  }
  .home-hero-trust{
    display:flex;
    gap:24px;
    flex-wrap:wrap;
    margin-top:4px;
  }
  .home-hero-trust span{
    font-size:0.84rem;
    color:#b8cde7;
    font-weight:500;
    background:rgba(7,20,40,0.34);
    border:1px solid rgba(98,167,255,0.16);
    border-radius:999px;
    padding:7px 11px;
    display:flex;
    align-items:center;
    gap:8px;
    backdrop-filter:blur(6px);
  }
  .home-hero-trust span::before{
    content:'';
    width:7px;
    height:7px;
    border-radius:50%;
    background:#5ea4f3;
    box-shadow:0 0 0 3px rgba(59,130,246,0.14),0 0 7px rgba(59,130,246,0.24);
    flex-shrink:0;
  }
  @keyframes heroBlockReveal{
    from{opacity:0;transform:translate3d(0,calc(var(--hero-content-shift,0px) + 14px),0)}
    to{opacity:1;transform:translate3d(0,var(--hero-content-shift,0px),0)}
  }
  @media (prefers-reduced-motion:reduce){
    .home-hero-content{animation:none}
  }
  @keyframes fadeInUp{
    from{opacity:0;transform:translateY(24px)}
    to{opacity:1;transform:translateY(0)}
  }

  /* ── TRUST BAR ── */
  .home-trust-bar{
    background:var(--bg-glass);
    backdrop-filter:blur(20px);
    border-top:1px solid var(--border-glass);
    border-bottom:1px solid var(--border-glass);
    padding:20px 0;
  }
  .home-trust-bar-inner{
    max-width:1200px;
    margin:0 auto;
    padding:0 32px;
    display:flex;
    gap:40px;
    justify-content:center;
    flex-wrap:wrap;
  }
  .home-trust-item{
    font-family:'Outfit',sans-serif;
    font-size:0.82rem;
    font-weight:600;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--text-secondary);
    display:flex;
    align-items:center;
    gap:8px;
  }
  .home-trust-item svg{color:var(--accent-blue);flex-shrink:0}

  /* ── ABOUT ── */
  .home-about{padding:100px 0}
  .home-about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center;
  }
  .home-about-img-wrap{
    position:relative;
    border-radius:20px;
    overflow:hidden;
  }
  .home-about-img-wrap::before{
    content:'';
    position:absolute;
    inset:-2px;
    border-radius:22px;
    background:linear-gradient(135deg,rgba(59,130,246,0.5),rgba(59,130,246,0.1),transparent);
    z-index:-1;
  }
  .home-about-img-wrap img{
    width:100%;
    height:420px;
    object-fit:cover;
    border-radius:18px;
    display:block;
    filter:saturate(0.8);
  }
  .home-about-img-placeholder{
    width:100%;
    height:420px;
    border-radius:18px;
    background:linear-gradient(135deg,#0D1B2A 0%,#1A2838 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid var(--border-glass);
    flex-direction:column;
    gap:12px;
  }
  .home-about-img-placeholder svg{opacity:0.2;width:80px;height:80px}
  .home-about-img-placeholder span{color:var(--text-muted);font-size:0.82rem}
  .home-about-text .section-sub{margin-bottom:32px}
  .home-about-body{
    font-size:1rem;
    color:var(--text-secondary);
    line-height:1.8;
    margin-bottom:16px;
  }

  /* ── STATS ── */
  .home-stats{
    background:var(--bg-secondary);
    padding:80px 0;
    border-top:1px solid var(--border-glass);
    border-bottom:1px solid var(--border-glass);
    text-align:center;
  }
  .home-stats-section-label{margin-bottom:12px}
  .home-stats-heading{margin-bottom:12px}
  .home-stats-sub{
    color:var(--text-secondary);
    font-size:1rem;
    max-width:480px;
    margin:0 auto 48px;
  }
  .home-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:48px;
  }
  .home-stat-card{
    padding:40px 32px;
    text-align:center;
  }
  .home-stat-number{
    font-family:'Outfit',sans-serif;
    font-size:4rem;
    font-weight:800;
    color:var(--accent-blue);
    line-height:1;
    margin-bottom:8px;
    letter-spacing:-0.03em;
  }
  .home-stat-label{
    font-size:0.92rem;
    color:var(--text-secondary);
    line-height:1.5;
    font-family:'Outfit',sans-serif;
    font-weight:400;
  }

  /* ── SERVICES ── */
  .home-services{padding:100px 0;text-align:center}
  .home-services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:48px;
    text-align:left;
  }
  .home-service-card{padding:36px}
  .home-service-icon{
    width:52px;
    height:52px;
    background:rgba(59,130,246,0.12);
    border:1px solid rgba(59,130,246,0.25);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
  }
  .home-service-icon svg{color:var(--accent-blue);width:26px;height:26px}
  .home-service-h3{
    font-family:'Outfit',sans-serif;
    font-weight:700;
    font-size:1.15rem;
    color:var(--text-primary);
    margin-bottom:12px;
    line-height:1.3;
  }
  .home-service-body{
    font-size:0.92rem;
    color:var(--text-secondary);
    line-height:1.8;
    margin-bottom:20px;
  }
  .home-service-link{
    font-family:'Outfit',sans-serif;
    font-size:0.82rem;
    font-weight:700;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--accent-blue);
    text-decoration:none;
    display:flex;
    align-items:center;
    gap:6px;
    transition:gap 0.2s;
  }
  .home-service-link:hover{gap:10px}

  /* ── WHY US ── */
  .home-why{
    background:var(--bg-secondary);
    padding:100px 0;
    border-top:1px solid var(--border-glass);
    border-bottom:1px solid var(--border-glass);
    text-align:center;
  }
  .home-why-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    text-align:left;
  }
  .home-why-card{padding:28px}
  .home-why-icon{
    width:44px;
    height:44px;
    background:rgba(59,130,246,0.1);
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:16px;
  }
  .home-why-icon svg{color:var(--accent-blue);width:22px;height:22px}
  .home-why-h3{
    font-family:'Outfit',sans-serif;
    font-weight:700;
    font-size:0.98rem;
    margin-bottom:10px;
    color:var(--text-primary);
  }
  .home-why-body{font-size:0.88rem;color:var(--text-secondary);line-height:1.75}

  /* ── GALLERY ── */
  .home-gallery{padding:100px 0;text-align:center}
  .home-gallery-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:40px;
  }
  .home-gallery-item{
    position:relative;
    border-radius:14px;
    overflow:hidden;
    aspect-ratio:4/3;
    background:linear-gradient(135deg,#0D1B2A 0%,#1A2838 100%);
    border:1px solid var(--border-glass);
  }
  .home-gallery-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:0.6;
    transition:opacity 0.3s,transform 0.4s;
  }
  .home-gallery-item:hover img{opacity:0.8;transform:scale(1.04)}
  .home-gallery-badge{
    position:absolute;
    bottom:12px;
    left:12px;
    background:rgba(10,15,30,0.85);
    backdrop-filter:blur(10px);
    border:1px solid var(--border-glass);
    border-radius:6px;
    padding:4px 12px;
    font-family:'Outfit',sans-serif;
    font-size:0.72rem;
    font-weight:600;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--accent-blue-light);
  }
  .home-gallery-badge.badge-heating{background:#1E3A5F;color:#60A5FA}
  .home-gallery-badge.badge-hwt{background:#1E3A2F;color:#34D399}
  .home-gallery-badge.badge-plumbing{background:#3A2A1E;color:#F97316}
  .home-gallery-placeholder{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:8px;
    opacity:0.3;
  }
  .home-gallery-placeholder svg{width:40px;height:40px}
  .home-gallery-placeholder span{font-size:0.75rem;color:var(--text-muted)}

  /* ── TESTIMONIALS ── */
  .home-testimonials{
    background:var(--bg-secondary);
    padding:100px 0;
    border-top:1px solid var(--border-glass);
    border-bottom:1px solid var(--border-glass);
    text-align:center;
  }
  .home-testimonials-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    text-align:left;
  }
  .home-testimonial-card{padding:36px}
  .home-testimonial-quote{
    font-size:2.5rem;
    color:var(--accent-blue);
    line-height:1;
    margin-bottom:16px;
    font-family:'Outfit',sans-serif;
    opacity:0.7;
  }
  .home-testimonial-body{
    font-size:0.95rem;
    color:var(--text-secondary);
    line-height:1.75;
    font-style:italic;
    margin-bottom:24px;
  }
  .home-testimonial-author{
    font-family:'Outfit',sans-serif;
    font-weight:700;
    font-size:0.88rem;
    color:var(--text-primary);
  }
  .home-testimonial-location{
    font-size:0.8rem;
    color:var(--text-muted);
    margin-top:2px;
  }
  .home-testimonial-stars{
    display:flex;
    gap:3px;
    margin-bottom:16px;
  }
  .home-testimonial-stars svg{width:14px;height:14px;color:#F97316}

  /* ── CTA BANNER ── */
  .home-cta-banner{
    padding:100px 0;
    text-align:center;
  }
  .home-cta-banner-inner{
    background:linear-gradient(135deg,rgba(59,130,246,0.15) 0%,rgba(59,130,246,0.05) 100%);
    backdrop-filter:blur(20px);
    border:1px solid rgba(59,130,246,0.25);
    border-radius:24px;
    padding:80px 48px;
    position:relative;
    overflow:hidden;
  }
  .home-cta-banner-inner::before{
    content:'';
    position:absolute;
    top:-100px;
    left:50%;
    transform:translateX(-50%);
    width:400px;
    height:400px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(59,130,246,0.1) 0%,transparent 70%);
    pointer-events:none;
  }
  .home-cta-heading{
    font-family:'Outfit',sans-serif;
    font-weight:800;
    font-size:clamp(1.8rem,3.5vw,2.8rem);
    margin-bottom:16px;
    letter-spacing:-0.02em;
  }
  .home-cta-body{
    font-size:1.05rem;
    color:var(--text-secondary);
    max-width:520px;
    margin:0 auto 40px;
  }
  .home-cta-row{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap}
  .home-cta-or{color:var(--text-muted);font-size:0.88rem}
  .home-cta-phone{
    color:var(--text-primary);
    font-family:'Outfit',sans-serif;
    font-weight:700;
    font-size:1.1rem;
    text-decoration:none;
    transition:color 0.2s;
  }
  .home-cta-phone:hover{color:var(--accent-blue-light)}

  /* ── FAQ ── */
  .home-faq{
    background:var(--bg-secondary);
    padding:100px 0;
    border-top:1px solid var(--border-glass);
  }
  .home-faq-grid{
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:64px;
    align-items:start;
  }
  .home-faq-list{display:flex;flex-direction:column;gap:12px}
  .home-faq-item{
    background:var(--bg-glass);
    border:1px solid var(--border-glass);
    border-radius:12px;
    overflow:hidden;
  }
  .home-faq-question{
    padding:20px 24px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    font-family:'Outfit',sans-serif;
    font-weight:600;
    font-size:0.95rem;
    color:var(--text-primary);
    gap:16px;
    transition:background 0.2s;
  }
  .home-faq-question:hover{background:var(--bg-glass-hover)}
  .home-faq-toggle{
    width:28px;
    height:28px;
    border-radius:6px;
    background:rgba(59,130,246,0.15);
    border:1px solid rgba(59,130,246,0.25);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    color:var(--accent-blue);
    font-size:1.2rem;
    line-height:1;
    transition:all 0.2s;
  }
  .home-faq-item.open .home-faq-toggle{background:var(--accent-blue);color:#fff}
  .home-faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height 0.35s ease;
  }
  .home-faq-item.open .home-faq-answer{max-height:200px}
  .home-faq-answer-inner{
    padding:0 24px 20px;
    font-size:0.92rem;
    color:var(--text-secondary);
    line-height:1.8;
  }

  /* ── FOOTER ── */
  .site-footer{
    background:var(--bg-secondary);
    border-top:1px solid var(--border-glass);
    padding:64px 0 0;
  }
  .site-footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:48px;
    padding-bottom:48px;
  }
  .site-footer-brand .logo{
    font-size:1.1rem;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    height:auto;
    margin-bottom:16px;
  }
  .site-footer-brand .logo-img{
    width:462px;
    height:auto;
    max-height:127px;
    object-fit:contain;
    object-position:left center;
  }
  .site-footer-brand p{font-size:0.88rem;color:var(--text-muted);max-width:280px;line-height:1.7;margin-bottom:24px}
  .site-footer-col-label{
    font-family:'Outfit',sans-serif;
    font-size:0.72rem;
    font-weight:700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--text-muted);
    margin-bottom:20px;
  }
  .site-footer-links{display:flex;flex-direction:column;gap:12px}
  .site-footer-links a{
    font-size:0.88rem;
    color:var(--text-secondary);
    text-decoration:none;
    transition:color 0.2s;
  }
  .site-footer-links a:hover{color:var(--text-primary)}
  .site-footer-contact{display:flex;flex-direction:column;gap:14px}
  .site-footer-contact-item{
    display:flex;
    align-items:flex-start;
    gap:10px;
    font-size:0.88rem;
    color:var(--text-secondary);
  }
  .site-footer-contact-item svg{color:var(--accent-blue);width:16px;height:16px;flex-shrink:0;margin-top:2px}
  .site-footer-contact-item a{color:inherit;text-decoration:none}
  .site-footer-contact-item a:hover{color:var(--text-primary)}
  .site-footer-bottom{
    border-top:1px solid var(--border-glass);
    padding:20px 0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
  }
  .site-footer-bottom p{font-size:0.8rem;color:var(--text-muted)}
  .site-footer-bottom-links{display:flex;gap:20px}
  .site-footer-bottom-links a{font-size:0.8rem;color:var(--text-muted);text-decoration:none;transition:color 0.2s}
  .site-footer-bottom-links a:hover{color:var(--text-secondary)}

  /* ── MOBILE ── */
  @media(max-width:1024px){
    .home-why-grid{grid-template-columns:repeat(2,1fr)}
  }
  @media(max-width:768px){
    .container{padding:0 20px}
    .home-hero{padding:100px 0 60px;min-height:90vh}
    .home-hero-eyebrow{margin-top:16px}
    .home-hero h1{font-size:2rem}
    .home-hero-btns{flex-direction:column}
    .home-hero-btns .btn-primary,.home-hero-btns .btn-secondary{justify-content:center;text-align:center}
    .home-about-grid,.home-faq-grid{grid-template-columns:1fr}
    .home-stats-grid{grid-template-columns:1fr}
    .home-services-grid,.home-gallery-grid,.home-testimonials-grid,.home-why-grid{grid-template-columns:1fr}
    .home-cta-banner-inner{padding:48px 24px}
    .site-footer-grid{grid-template-columns:1fr}
    .site-footer-bottom{flex-direction:column;text-align:center}
    .home-trust-bar-inner{flex-direction:column;align-items:center;gap:16px}
  }