/* Target the footer grid specifically */
.footer__grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 30px !important;
  padding: 40px 0 !important;
  width: 100% !important;
}

/* Target all footer columns */
.footer__column {
  padding: 0 !important;
  min-height: 200px !important;
  text-align: left !important;
}

/* Target ul elements in footer columns */
.footer__column ul,
.footer__grid ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  text-align: left !important;
}

/* Target li elements in footer columns */
.footer__column li,
.footer__grid li {
  text-align: left !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  display: block !important;
}

/* Target a elements in footer columns */
.footer__column a,
.footer__grid a {
  text-align: left !important;
  display: inline-block !important;
  color: #484848 !important;
  text-decoration: none !important;
  transition: color 0.3s !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* Target headings in footer */
.footer__column h4,
.footer__grid h4 {
  text-align: left !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  margin-bottom: 20px !important;
  color: #174541 !important;
}

/* Override any flex-related properties that might center content */
.footer__column,
.footer__grid,
.footer__column ul,
.footer__grid ul,
.footer__column li,
.footer__grid li,
.footer__column a,
.footer__grid a {
  justify-content: flex-start !important;
  align-items: flex-start !important;
}

/* Logo column styling */
.footer__column.footer__column--logo {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
}

/* Social media styling */
.social__midia {
  display: flex !important;
  justify-content: flex-start !important;
  margin-top: 15px !important;
}

/* Social Media Icons Fix */

/* Reset any border-radius issues */
.footer__column--social .social__midia a {
  width: 40px !important;
  height: 40px !important;
  border: 1px solid #C56B31 !important;
  border-radius: 50% !important; /* Ensure perfect circles */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 0 !important; /* Removed margin since we're using gap */
  text-decoration: none !important;
  transition: all 0.3s !important;
  overflow: hidden !important; /* Prevent any icon overflow */
}

/* Fix icon positioning inside the circles */
.footer__column--social .social__midia a .icon,
.footer__column--social .social__midia a span {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

/* Fix icon color */
.footer__column--social .social__midia a .icon:before,
.footer__column--social .social__midia a span:before {
  color: #C56B31 !important;
  font-size: 18px !important;
  display: block !important;
}

/* Hover effect */
.footer__column--social .social__midia a:hover {
  background-color: #C56B31 !important;
  transform: scale(1.05) !important; /* Slight enlargement on hover */
}

.footer__column--social .social__midia a:hover .icon:before,
.footer__column--social .social__midia a:hover span:before {
  color: #fff !important;
}

/* Ensure consistent spacing between icons - with reduced gap */
.footer__column--social .social__midia {
  display: flex !important;
  gap: 8px !important; /* Reduced from 15px to bring icons closer */
  margin-top: 15px !important;
  flex-wrap: wrap !important;
}

/* Ensure icons are vertically aligned */
.social__midia a {
  display: inline-flex !important;
  vertical-align: middle !important;
}

/* Media query for responsive circles */
@media (max-width: 576px) {
  .footer__column--social .social__midia a {
    width: 35px !important;
    height: 35px !important;
  }
  
  .footer__column--social .social__midia a .icon:before,
  .footer__column--social .social__midia a span:before {
    font-size: 16px !important;
  }
}

/* Responsive adjustments */
@media (max-width: 991px) {
  .footer__grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  .footer__column.footer__column--logo {
    grid-column: span 2 !important;
  }
}

@media (max-width: 576px) {
  .footer__grid {
    grid-template-columns: 1fr !important;
  }
  
  .footer__column.footer__column--logo {
    grid-column: span 1 !important;
  }
}

/* Tablet layout (768px and below) */
@media (max-width: 991px) and (min-width: 500px) {
  .footer__grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    grid-template-areas:
      "logo logo"
      "services resources"
      "about contact" !important;
    gap: 40px 30px !important;
  }
  
  /* Logo centered at the top */
  .footer__column--logo {
    grid-area: logo !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid #E0E0E0 !important;
    margin-bottom: 10px !important;
  }
  
  /* Define grid areas */
  .footer__column:nth-of-type(2) {
    grid-area: services !important;
  }
  
  .footer__column:nth-of-type(3) {
    grid-area: resources !important;
  }
  
  .footer__column:nth-of-type(4) {
    grid-area: about !important;
  }
  
  .footer__column:nth-of-type(5) {
    grid-area: contact !important;
  }
  
  /* Ensure logo has proper size and alignment */
  .navbar__footer--logo {
    max-width: 220px !important;
    margin: 0 auto !important;
  }
}