*, *::before, *::after {
  box-sizing: border-box;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  background-color: #2563EB;
  color: white;
}

/* Ensure dropdown stays visible on hover — bridge gap between trigger and panel */
#what-we-do-nav > div:last-child {
  pointer-events: none;
}
#what-we-do-nav:hover > div:last-child {
  pointer-events: auto;
}

/* Smooth scroll */
html {
  scroll-behavior: smooth;
}

/* Subtle horizontal rule */
.rule {
  border: none;
  border-top: 1px solid #E2E8F0;
}

/* Logo ticker */
@keyframes logo-ticker {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.logo-ticker-track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: logo-ticker 40s linear infinite;
  will-change: transform;
}
.logo-ticker-track:hover {
  animation-play-state: paused;
}
.logo-ticker-container {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
}

/* Credential / stat lists */
.credential-list li::before {
  content: "—";
  margin-right: 0.5rem;
  color: #2563EB;
  font-weight: 500;
}
