/* ===== FOOTER LOGO IMAGE ONLY ===== */
footer .logo {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 20px;
}

footer .logo img {
  width: auto; /* adjust size if needed */
  height: 60px;
  object-fit: contain;
  filter: brightness(0) invert(1); /* makes black logo appear white */
  transition: 0.3s ease;
}

footer .logo img:hover {
  filter: brightness(1) invert(0) drop-shadow(0 0 6px var(--purple));
}

footer {
  background: linear-gradient(180deg, #111, #0a0a0a);
  padding: 60px 8%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  color: var(--gray);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

footer section {
    padding: 1px;
}

/* ===== LOGO & INTRO ===== */
footer .logo {
  font-size: 1.8rem;
  font-weight: 600;
  color: var(--light);
  margin-bottom: 15px;
}

footer .logo span:first-child {
  color: var(--purple);
}

.footer-section h4 {
  color: var(--light);
  font-size: 1.1rem;
  margin-bottom: 15px;
}

.footer-section p {
  color: var(--gray);
  font-size: 0.95rem;
  line-height: 1.6;
  max-width: 320px;
}

/* ===== LINKS ===== */
.footer-links a {
  display: block;
  color: var(--gray);
  text-decoration: none;
  margin: 6px 0;
  font-size: 0.95rem;
  transition: 0.3s ease;
}

.footer-links a:hover {
  color: var(--purple);
  text-shadow: 0 0 8px var(--purple);
}

/* ===== SOCIAL ICONS ===== */
.footer-socials a {
  color: var(--gray);
  font-size: 1.2rem;
  margin-right: 15px;
  transition: 0.3s ease;
}

.footer-socials a:hover {
  color: var(--purple);
  text-shadow: 0 0 10px var(--purple);
}

/* ===== CONTACT ===== */
.footer-contact p {
  margin: 8px 0;
  color: var(--gray);
  font-size: 0.95rem;
}

.footer-contact i {
  color: var(--purple);
  margin-right: 8px;
}

/* ===== BOTTOM BAR ===== */
.footer-bottom {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 0.9rem;
  color: var(--gray);
}

.footer-bottom span {
  color: var(--purple);
  font-weight: 500;
}

/* ===== RESPONSIVE GRID ===== */

/* 2 Columns for Tablets */
@media (max-width: 992px) {
  footer .logo {
    justify-content: center;
  }

  footer {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 50px 6%;
  }

  .footer-bottom {
    grid-column: 1 / -1;
  }
}

/* 1 Column for Mobile */
@media (max-width: 600px) {
  footer {
    grid-template-columns: 1fr;
    text-align: center;
    padding: 50px 25%;
  }

  .footer-socials a {
    margin: 0 10px;
  }

  .footer-bottom {
    font-size: 0.85rem;
  }
}

@media (max-width: 480px) {
    footer {
        padding: 40px 56px;
    }
}