/* =========================
   HEADER
========================= */

.site-header{

  position:sticky;
  top:0;
  z-index:1000;

  width:100%;

  background:
    rgba(5,8,22,0.75);

  backdrop-filter:blur(14px);

  border-bottom:
    1px solid rgba(255,255,255,0.06);
}

.header-container{

  max-width:1200px;

  margin:auto;

  padding:
    1.2rem 2rem;

  display:flex;
  align-items:center;
  justify-content:space-between;
}

.logo{

  display:flex;
  align-items:center;
  gap:0.8rem;

  font-size:1.4rem;
  font-weight:800;

  color:#fff;
}

.logo img{

  height:72px;
  width:auto;
  object-fit:contain;
  display:block;
}

.main-nav{

  display:flex;
  align-items:center;
  gap:2rem;
}

.main-nav a{

  color:#cbd5e1;

  font-size:1rem;
  font-weight:500;

  transition:0.3s;
}

.main-nav a:hover{

  color:#fff;
}

.header-actions{

  display:flex;
  align-items:center;
  gap:1rem;
}

.sign-in{

  color:#cbd5e1;

  transition:0.3s;
}

.sign-in:hover{

  color:#fff;
}

.header-btn{

  background:
    linear-gradient(
      90deg,
      #0ea5e9,
      #8b5cf6
    );

  color:#fff;

  padding:
    0.85rem 1.4rem;

  border-radius:12px;

  font-weight:700;

  transition:0.3s;
}

.header-btn:hover{

  transform:translateY(-2px);

  box-shadow:
    0 10px 25px rgba(14,165,233,0.25);
}

/* =========================
   FOOTER
========================= */

.site-footer{

  margin-top:5rem;

  border-top:
    1px solid rgba(255,255,255,0.06);

  background:
    rgba(255,255,255,0.02);

  backdrop-filter:blur(10px);
}

.footer-container{

  max-width:1200px;

  margin:auto;

  padding:
    4rem 2rem 2rem;

  display:grid;

  grid-template-columns:
    2fr 1fr 1fr 1fr;

  gap:3rem;
}

.footer-brand img{

  height:52px;

  margin-bottom:1rem;
}

.footer-brand p{

  color:#94a3b8;

  line-height:1.8;

  max-width:320px;
}

.footer-column h4{

  margin-bottom:1.2rem;

  color:#fff;

  font-size:1.1rem;
}

.footer-column a{

  display:block;

  margin-bottom:0.9rem;

  color:#94a3b8;

  transition:0.3s;
}

.footer-column a:hover{

  color:#fff;
}

.footer-bottom{

  border-top:
    1px solid rgba(255,255,255,0.06);

  padding:
    1.5rem 2rem;

  text-align:center;

  color:#64748b;

  font-size:0.95rem;
}

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

@media(max-width:900px){

  .header-container{

    flex-direction:column;

    gap:1.5rem;
  }

  .main-nav{

    flex-wrap:wrap;
    justify-content:center;

    gap:1rem;
  }

  .footer-container{

    grid-template-columns:1fr;

    text-align:center;
  }

  .footer-brand p{

    margin:auto;
  }

}