/* =============================================
   SAFETAXI — Footer
   ============================================= */

.st-footer {
  background: var(--dark);
  padding: 72px 5vw 40px;
}

.st-footer__inner {
  max-width: 1200px; margin: 0 auto;
}

.st-footer__top {
  display: grid;
  grid-template-columns: 1.6fr repeat(4, 1fr);
  gap: 3rem;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 32px;
}

.st-footer__brand {}

.st-footer__logo {
  display: flex; align-items: center; gap: 10px; margin-bottom: 14px;
}
.st-footer__logo svg { width: 34px; height: 34px; }
.st-footer__logo-text {
  font-size: 16px; font-weight: 800; color: white;
}
.st-footer__logo-text em { font-style: normal; color: var(--orange); }

.st-footer__brand-desc {
  font-size: 13px; color: rgba(255,255,255,0.35); line-height: 1.7; max-width: 240px;
  margin-bottom: 20px;
}

.st-footer__social {
  display: flex; gap: 10px;
}
.st-footer__social a {
  width: 34px; height: 34px;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; color: rgba(255,255,255,0.4);
  transition: border-color var(--transition), color var(--transition);
}
.st-footer__social a:hover { border-color: var(--orange); color: var(--orange); }

.st-footer__col h5 {
  font-size: 11px; font-weight: 700; letter-spacing: 1.2px;
  text-transform: uppercase; color: white;
  margin-bottom: 1.2rem;
}
.st-footer__col ul { display: flex; flex-direction: column; gap: 10px; }
.st-footer__col ul a {
  font-size: 13px; color: rgba(255,255,255,0.38);
  transition: color var(--transition);
}
.st-footer__col ul a:hover { color: white; }

.st-footer__bottom {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 1rem;
}
.st-footer__copy {
  font-size: 12px; color: rgba(255,255,255,0.2);
}
.st-footer__legal {
  display: flex; gap: 1.5rem;
}
.st-footer__legal a {
  font-size: 12px; color: rgba(255,255,255,0.25);
  transition: color var(--transition);
}
.st-footer__legal a:hover { color: white; }

.st-footer__contact-bar {
  background: rgba(255,255,255,0.04);
  border-radius: var(--radius-md);
  padding: 16px 20px;
  display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
  margin-bottom: 48px;
}
.st-footer__contact-item {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; color: rgba(255,255,255,0.4);
}
.st-footer__contact-item strong { color: rgba(255,255,255,0.7); }
.st-footer__contact-item span.dot { color: var(--orange); font-size: 8px; }

@media (max-width: 900px) {
  .st-footer__top { grid-template-columns: 1fr 1fr; }
  .st-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .st-footer__top { grid-template-columns: 1fr; }
}

/* FOOTER */
  footer {
    background: var(--dark);
    padding: 60px 5vw 40px;
  }
  .footer-inner {
    max-width: 1200px; margin: 0 auto;
  }
  .footer-top {
    display: flex; align-items: flex-start; justify-content: space-between;
    flex-wrap: wrap; gap: 3rem;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 32px;
  }
  .footer-brand p {
    font-size: 13px; color: rgba(255,255,255,0.4);
    margin-top: 12px; max-width: 260px; line-height: 1.6;
  }
  .footer-links h4 { font-size: 12px; font-weight: 700; color: white; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 1rem; }
  .footer-links ul { list-style: none; display: flex; flex-direction: column; gap: 8px; }
  .footer-links ul a { font-size: 13px; color: rgba(255,255,255,0.4); text-decoration: none; transition: color 0.2s; }
  .footer-links ul a:hover { color: white; }
  .footer-bottom {
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem;
    font-size: 12px; color: rgba(255,255,255,0.25);
  }
  .footer-bottom a { color: var(--orange); text-decoration: none; }

  /* SCROLL ANIMATIONS */
  .fade-up {
    opacity: 0; transform: translateY(30px);
    transition: opacity 0.6s ease, transform 0.6s ease;
  }
  .fade-up.visible { opacity: 1; transform: translateY(0); }

  /* MOBILE */
  @media (max-width: 768px) {
    .hero-grid, .tab-panel.active, .panic-grid, .verify-grid {
      grid-template-columns: 1fr;
    }
    .hero-visual { display: none; }
    .nav-links { display: none; }
    .stat-divider { display: none; }
  }