/* Responsive Footer Styles for Mobile (320px, 375px, 420px, 425px) */

/* Desktop & Tablet defaults (> 425px) */
.footer-biz-contact-wrap {
  display: block;
}

.footer-biz-col,
.footer-contact-col {
  width: 100%;
}

.footer-contact-col .contact-title-heading {
  margin-top: 1.5rem;
}

/* Mobile widths (up to 425px) */
@media (max-width: 425px) {
  html body footer.buzz-footer {
    padding: 35px 0 20px !important;
    overflow: hidden !important;
  }

  html body footer.buzz-footer .container,
  html body footer.buzz-footer .wrap {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }

  html body footer.buzz-footer .row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-left: -6px !important;
    margin-right: -6px !important;
  }

  /* Column 1: Brand & Logo (Full width at top) */
  html body footer.buzz-footer .row > div[class*="col-"]:nth-child(1),
  html body footer.buzz-footer .col-12.col-md-6.col-lg-3:first-child {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    margin-bottom: 20px !important;
    order: 1 !important;
  }

  /* Row 1: Column 2 (Quick Links) and Column 3 (Categories) side-by-side */
  html body footer.buzz-footer .row > div[class*="col-"]:nth-child(2) {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    margin-bottom: 20px !important;
    order: 2 !important;
    box-sizing: border-box !important;
  }

  html body footer.buzz-footer .row > div[class*="col-"]:nth-child(3) {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    margin-bottom: 20px !important;
    order: 3 !important;
    box-sizing: border-box !important;
  }

  /* Row 2: Column 4 Container (Full width) */
  html body footer.buzz-footer .row > div[class*="col-"]:nth-child(4) {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    margin-bottom: 20px !important;
    order: 4 !important;
    box-sizing: border-box !important;
  }

  /* Column 4 Inner Side-by-Side Flex Layout */
  html body footer.buzz-footer .footer-biz-contact-wrap {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    gap: 8px !important;
    align-items: flex-start !important;
  }

  html body footer.buzz-footer .footer-biz-col,
  html body footer.buzz-footer .footer-contact-col {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
    box-sizing: border-box !important;
  }

  html body footer.buzz-footer .contact-title-heading {
    margin-top: 0 !important;
  }

  /* Typography & General Footer Styles */
  html body footer.buzz-footer h5 {
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: #f58220 !important;
    margin-bottom: 10px !important;
    line-height: 1.2 !important;
  }

  html body footer.buzz-footer .footer-links {
    padding-left: 0 !important;
    margin-bottom: 0 !important;
    list-style: none !important;
  }

  html body footer.buzz-footer .footer-links li {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-bottom: 8px !important;
  }

  html body footer.buzz-footer .footer-links li i {
    color: #f58220 !important;
    font-size: 0.85rem !important;
    flex-shrink: 0 !important;
  }

  html body footer.buzz-footer .footer-links li a {
    font-size: 0.78rem !important;
    color: #ffffff !important;
    text-decoration: none !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  html body footer.buzz-footer .footer-contact-item {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #ffffff !important;
    font-size: 0.72rem !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
  }

  html body footer.buzz-footer .footer-contact-item i {
    color: #f58220 !important;
    font-size: 0.85rem !important;
    flex-shrink: 0 !important;
  }

  html body footer.buzz-footer .footer-contact-item span {
    color: #ffffff !important;
    font-size: 0.72rem !important;
    white-space: nowrap !important;
  }

  html body footer.buzz-footer .social-icons-footer {
    gap: 8px !important;
  }

  html body footer.buzz-footer .social-icons-footer a {
    width: 34px !important;
    height: 34px !important;
  }

  html body footer.buzz-footer .footer-divider {
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    margin: 15px 0 15px !important;
  }

  html body footer.buzz-footer .footer-bottom-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  html body footer.buzz-footer .footer-copyright {
    font-size: 0.72rem !important;
    color: #bdc3c7 !important;
    line-height: 1.4 !important;
  }

  html body footer.buzz-footer .back-to-top-btn {
    width: 36px !important;
    height: 36px !important;
    flex-shrink: 0 !important;
  }
}

/* 320px - 360px fine tuning */
@media (max-width: 360px) {
  html body footer.buzz-footer .footer-biz-contact-wrap {
    gap: 4px !important;
  }

  html body footer.buzz-footer h5 {
    font-size: 0.86rem !important;
  }

  html body footer.buzz-footer .footer-links li a {
    font-size: 0.72rem !important;
  }

  html body footer.buzz-footer .footer-contact-item {
    font-size: 0.64rem !important;
    gap: 3px !important;
  }

  html body footer.buzz-footer .footer-contact-item span {
    font-size: 0.64rem !important;
    letter-spacing: -0.2px !important;
    white-space: nowrap !important;
  }

  html body footer.buzz-footer .footer-contact-item i {
    font-size: 0.75rem !important;
  }
}
