/* Custom styles shared across all pages */
/* (nav, footer, typography, variables) */

/* Social icon styling */
.social-icon {
  color: #212529;
  transition: color 0.15s ease-in-out, transform 0.15s ease-in-out;
}

.social-icon:hover {
  color: #6c757d;
  transform: scale(1.1);
}

/* Nav button spacing */
.navbar-nav .btn {
  margin-left: 0.5rem;
}

/* Nav link rounded border hover effect (like nav-tabs) */
.navbar-nav .nav-link {
  border: 2px solid transparent;
  border-radius: 0.375rem;
  transition: border-color 0.15s ease-in-out;
  width: fit-content;
  margin-bottom: 0.5rem;
  padding: 0.375rem 0.75rem;
}

/* Adjust for desktop */
@media (min-width: 992px) {
  .navbar-nav .nav-link {
    margin-bottom: 0;
    padding: 0.375rem 0.75rem;
  }
}

.navbar-nav .nav-link:hover {
  border-color: #212529;
}

.navbar-nav .nav-link.active {
  border-color: #212529;
}

/* Narrower content width */
.container {
  max-width: 960px;
}

/* Footer */
footer {
  border-top: 2px solid #212529;
}

/* Neobrutalist card hover effect */
.card-hover {
  transition: box-shadow 0.15s ease-in-out, transform 0.15s ease-in-out;
}

.card-hover:hover {
  box-shadow: 4px 4px 0 #212529;
  transform: translate(-2px, -2px);
}

