/* ====== Footer Base ====== */
.footer {
  background: #f8f9fa;
  color: #222;
  padding: 60px 80px 20px 80px;
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  line-height: 1.6;
}

.footer-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 40px;
}

/* ===== Left Section ===== */
.footer-left {
  flex: 1 1 300px;
  min-width: 250px;
}

.footer-left .logo {
  font-size: 28px;
  font-weight: bold;
  color: #e25822; /* MIT-orange style */
  margin-bottom: 15px;
}

.footer-left .address {
  margin-bottom: 20px;
  color: #555;
}

/* Combined small links in one flex row */
.footer-left .links-small {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 15px;
}

.footer-left .links-small a {
  text-decoration: none;
  color: #555;
  font-size: 13px;
  transition: color 0.3s;
}

.footer-left .links-small a:hover {
  color: #e25822;
}

/* Social icons */
.footer-left .social {
  display: flex;
  gap: 15px;
  margin-top: 10px;
}

.footer-left .social a {
  color: #555;
  font-size: 18px;
  transition: color 0.3s;
}

.footer-left .social a:hover {
  color: #e25822;
}

/* ===== Right Section ===== */
.footer-right {
  display: flex;
  flex: 2 1 500px;
  gap: 50px;
  flex-wrap: wrap;
}

.footer-right .column {
  display: flex;
  flex-direction: column;
  min-width: 150px;
}

.footer-right .column h3 {
  margin-bottom: 15px;
  font-size: 16px;
  color: #222;
}

.footer-right .column a {
  text-decoration: none;
  color: #555;
  margin-bottom: 10px;
  font-size: 14px;
  transition: color 0.3s;
}

.footer-right .column a:hover {
  color: #e25822;
}

/* Footer bottom */
.footer-bottom {
  margin-top: 40px;
  text-align: center;
  font-size: 13px;
  color: #777;
  border-top: 1px solid #ddd;
  padding-top: 15px;
}

/* ===== Responsive ===== */

/* Tablet screens */
@media (max-width: 992px) {
  .footer-container {
    flex-direction: column;
    gap: 40px;
  }

  .footer-left {
    flex: 1 1 100%;
  }

  .footer-right {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 30px;
  }

  .footer-right .column {
    flex: 1 1 150px;
  }
}

/* Mobile screens */
@media (max-width: 576px) {
  .footer {
    padding: 40px 20px 20px 20px;
  }

  /* Keep links in single flex row but wrap nicely */
  .footer-left .links-small {
    justify-content: flex-start;
    gap: 10px;
  }

  /* Right section columns wrap into 2 per row like MIT */
  .footer-right {
    gap: 20px;
  }

  .footer-right .column {
    flex: 1 1 45%; /* two columns per row */
    margin-bottom: 20px;
  }
}