/* =============================================================
   TechVistaar — Site header / primary navigation
============================================================= */

  header{
    position:sticky; top:0; z-index:50;
    background:rgba(251,250,246,0.86);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav{
    display:flex; align-items:center; justify-content:space-between;
    padding:20px 32px; flex-wrap:wrap; row-gap:12px;
    max-width:1180px; margin:0 auto;
  }
  .logo{
    display:flex; align-items:center; gap:10px;
    font-family:'Space Grotesk'; font-weight:700; font-size:19px;
  }
  .logo .mark{ width:30px; height:30px; flex:none; }
  .logo .site-logo-img{
    height:34px; width:auto; max-width:170px;
    object-fit:contain; display:block; flex:none;
  }
  .nav-links{ display:flex; gap:36px; align-items:center; flex-wrap:wrap; }
  .nav-links a{
    font-size:14.5px; color:var(--slate); font-weight:500;
    transition:color .2s;
  }
  .nav-links a:hover, .nav-links a:focus-visible{ color:var(--ink); }
  .nav-cta{
    background:var(--ink); color:var(--paper); padding:10px 20px;
    border-radius:999px; font-weight:600; font-size:14px;
    transition:transform .18s ease, box-shadow .18s ease;
  }
  .nav-cta:hover{ transform:translateY(-1px); box-shadow:0 8px 20px rgba(18,24,43,0.18); }
  .menu-btn{ display:none; background:none; border:none; color:var(--ink); font-size:24px; cursor:pointer; }
  .nav-cta-mobile-item{ display:none; }
  @media (max-width:860px){
    .nav-links{
      position:fixed; top:73px; left:0; right:0; bottom:0;
      background:var(--paper); flex-direction:column; justify-content:flex-start;
      padding:40px 32px; gap:26px; font-size:20px;
      transform:translateX(100%); transition:transform .3s ease;
      border-top:1px solid var(--line);
      z-index:49;
    }
    .nav-links.open{ transform:translateX(0); }
    .nav-links a{ font-size:20px; }
    .menu-btn{ display:block; }
    .nav-cta{ padding:8px 14px; font-size:13px; }
    .nav-cta-mobile-item{ display:block; margin-top:10px; }
    .nav-cta-mobile{
      display:inline-block; background:var(--ink); color:var(--paper);
      padding:12px 24px; border-radius:999px; font-weight:600; font-size:16px;
    }
  }
  @media (max-width:420px){
    .nav-cta{ display:none; }
  }
