:root {
  color-scheme: light;
}

html {
  scroll-behavior: smooth;
}

.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  z-index: 100;
  background: #0f172a;
  color: #fff;
  padding: 0.5rem 0.75rem;
  border-radius: 0.375rem;
}

.skip-link:focus {
  top: 0.5rem;
  left: 0.5rem;
}

.logo-shell {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  padding: 0.5rem 0.625rem;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(241, 245, 249, 0.85));
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.hero-grid {
  background-image:
    linear-gradient(rgba(34, 211, 238, 0.2) 1px, transparent 1px),
    linear-gradient(90deg, rgba(34, 211, 238, 0.2) 1px, transparent 1px);
  background-size: 28px 28px;
  background-position: center;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Local Clients: small helpers */
.client-logo { height: 3rem; width: auto; border-radius: 0.375rem; }
.client-card { transition: box-shadow 0.18s ease; }
.client-card:focus-within { box-shadow: 0 8px 20px rgba(15,23,42,0.06); }
/* Lightbox placeholder rule */
.lightbox-overlay { position: fixed; inset: 0; display:flex; align-items:center; justify-content:center; background: rgba(2,6,23,0.6); z-index: 60; }
.lightbox-overlay img { max-width: 90%; max-height: 80%; border-radius: 0.5rem; box-shadow: 0 20px 40px rgba(2,6,23,0.6); }
