/* Social Media Bar Styles */
.social-section {
  margin: 4rem 0;
  padding: 2rem;
  background: transparent;
  border: none;
}

.social-section h2 {
  font-size: 1.5rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 1.5rem;
  text-align: left;
}

ul.social {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 1rem !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin: 0 !important;
}

ul.social li {
  position: relative;
  display: block !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

ul.social li::before {
  content: none !important;
  display: none !important;
}

ul.social li::after {
  position: absolute;
  content: attr(data-tooltip);
  left: calc(100% + 1rem);
  top: 50%;
  transform: translateY(-50%);
  padding: 0.35rem 0.75rem;
  font-size: 0.875rem;
  color: #fff;
  background: var(--bg, #070707);
  border-radius: 0.25rem;
  opacity: 0;
  visibility: hidden;
  white-space: nowrap;
  pointer-events: none;
  z-index: 1000;
  transition: left 0.4s cubic-bezier(0.47, 2, 0.41, 1.5),
    visibility 0.3s ease-in-out, opacity 0.2s ease-in-out;
}

ul.social li:hover::after {
  opacity: 1;
  visibility: visible;
  left: calc(100% + 1.5rem);
}

ul.social a {
  position: relative;
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  font-size: 20px;
  color: #e0e0e0 !important;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  border-radius: 50% !important;
  text-decoration: none !important;
  outline: none;
  overflow: hidden;
  transition: color 0.3s ease-in-out;
  line-height: 1;
}

ul.social a i {
  position: relative;
  z-index: 2;
  display: block;
}

ul.social a::after {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--bg, #070707);
  pointer-events: none;
  transition: top 0.3s ease-in-out;
  border-radius: 50%;
}

ul.social a:hover {
  color: #fff !important;
}

ul.social a:hover::after {
  top: 0;
}

@media (max-width: 768px) {
  ul.social li::after {
    left: 50%;
    top: -2.5rem;
    transform: translateX(-50%);
  }
  
  ul.social li:hover::after {
    left: 50%;
    top: -3rem;
  }
}
