/* =============================================
   LANDING — Navbar & Footer
   ============================================= */

/* ── NAVBAR ── */
.navbar {
  position:fixed; top:0; left:0; right:0; z-index:200;
  padding:1.25rem 0;
  transition:all .35s var(--ease);
}
.navbar.scrolled {
  background:rgba(10,10,10,.93);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(201,168,76,.1);
  padding:.85rem 0;
}

.nav-inner {
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}

/* Logo */
.nav-logo { display:flex; align-items:center; gap:.75rem; }
.nav-logo__mark {
  width:42px; height:42px;
  background:linear-gradient(135deg,var(--gold),var(--gold-dark));
  border-radius:var(--radius-sm);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-accent); font-size:1.2rem; color:var(--black);
}
.nav-logo__name  { display:block; font-family:var(--font-accent); font-size:.95rem; letter-spacing:.15em; color:var(--white); }
.nav-logo__sub   { display:block; font-size:.52rem; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); }

/* Links desktop */
.nav-links { display:flex; align-items:center; gap:.2rem; }
.nav-link  {
  position:relative; padding:.45rem .8rem;
  font-size:.75rem; font-weight:500; letter-spacing:.07em; text-transform:uppercase;
  color:var(--muted); transition:color .2s ease;
}
.nav-link::after {
  content:''; position:absolute; bottom:0; left:.8rem; right:.8rem; height:1px;
  background:var(--gold); transform:scaleX(0); transition:transform .25s ease;
}
.nav-link:hover, .nav-link.active { color:var(--white); }
.nav-link:hover::after, .nav-link.active::after { transform:scaleX(1); }

/* Toggle mobile */
.nav-toggle {
  display:none; flex-direction:column; gap:5px; padding:5px;
}
.nav-toggle span {
  display:block; width:24px; height:1.5px; background:var(--white);
  transition:all .25s ease; transform-origin:center;
}
.nav-toggle.open span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.nav-toggle.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
.nav-toggle.open span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

/* Mobile menu */
.nav-mobile {
  position:fixed; inset:0; background:var(--black);
  z-index:199; display:flex; flex-direction:column;
  padding:5.5rem 2rem 2.5rem;
  opacity:0; pointer-events:none;
  transition:opacity .3s ease;
}
.nav-mobile.open { opacity:1; pointer-events:all; }
.nav-mobile-links { display:flex; flex-direction:column; gap:.25rem; margin-bottom:2rem; }
.nav-mobile-link  {
  font-family:var(--font-display); font-size:2.2rem; font-weight:600;
  color:var(--muted); padding:.4rem 0;
  border-bottom:1px solid rgba(255,255,255,.04);
  transition:color .2s ease;
}
.nav-mobile-link:hover { color:var(--gold); }
.nav-mobile-socials { display:flex; gap:.6rem; margin-top:auto; }
.nav-social {
  width:38px; height:38px; border-radius:var(--radius-sm);
  border:1px solid rgba(255,255,255,.1);
  display:flex; align-items:center; justify-content:center;
  color:var(--muted); font-size:.9rem;
  transition:all .2s ease;
}
.nav-social:hover { border-color:var(--gold); color:var(--gold); }

/* ── FOOTER ── */
.footer {
  background:var(--dark); padding:4rem 0 2rem;
  border-top:1px solid rgba(201,168,76,.08);
  position:relative; overflow:hidden;
}
.footer::before {
  content:'AS';
  position:absolute; right:-1.5rem; bottom:-3rem;
  font-family:var(--font-accent); font-size:18rem;
  color:rgba(201,168,76,.02); line-height:1; pointer-events:none;
}
.footer-grid {
  display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr;
  gap:3rem; margin-bottom:3rem;
}
.footer-brand-desc { font-size:.85rem; color:var(--muted); line-height:1.8; margin:1rem 0 1.5rem; max-width:270px; }
.footer-col-title  { font-family:var(--font-accent); font-size:.72rem; letter-spacing:.2em; color:var(--gold); text-transform:uppercase; margin-bottom:1.2rem; }
.footer-links      { display:flex; flex-direction:column; gap:.55rem; }
.footer-link       { font-size:.83rem; color:var(--muted); transition:color .2s ease; display:flex; align-items:center; gap:.4rem; }
.footer-link:hover { color:var(--gold); }
.footer-contact-item { display:flex; align-items:flex-start; gap:.7rem; font-size:.83rem; color:var(--muted); margin-bottom:.7rem; }
.footer-contact-item i { color:var(--gold); font-size:.85rem; flex-shrink:0; margin-top:2px; }
.footer-bottom {
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:1rem; padding-top:1.5rem;
}
.footer-copy { font-size:.72rem; color:var(--dim); }
.footer-bottom-links { display:flex; gap:1.5rem; }
.footer-bottom-link { font-size:.72rem; color:var(--dim); transition:color .2s ease; }
.footer-bottom-link:hover { color:var(--gold); }

/* Social links */
.social-links { display:flex; gap:.6rem; }
.social-link  {
  width:38px; height:38px; border-radius:var(--radius-sm);
  border:1px solid rgba(255,255,255,.1);
  display:flex; align-items:center; justify-content:center;
  color:var(--muted); font-size:.9rem;
  transition:all .2s ease;
}
.social-link:hover { border-color:var(--gold); color:var(--gold); transform:translateY(-3px); }

/* Whatsapp float */
.wa-float {
  position:fixed; bottom:1.75rem; right:1.75rem;
  width:56px; height:56px; background:var(--green); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:1.5rem; color:#fff; z-index:198;
  box-shadow:0 6px 25px rgba(37,211,102,.4);
  transition:transform .2s ease, box-shadow .2s ease;
}
.wa-float:hover { transform:scale(1.1); box-shadow:0 10px 35px rgba(37,211,102,.6); }
.wa-float__pulse {
  position:absolute; inset:-4px; border-radius:50%;
  border:2px solid rgba(37,211,102,.35);
  animation:pulse 2s ease-in-out infinite;
}

@media (max-width:1024px) {
  .nav-links { display:none; }
  .nav-toggle { display:flex; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:2rem; }
}
@media (max-width:600px) {
  .footer-grid { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; text-align:center; }
}
