
/* AC Upgrade Layer — performance, a11y, mobile */
img { max-width: 100%; height: auto; }
img[loading="lazy"] { content-visibility: auto; }
:focus-visible {
  outline: 2px solid #bd8d43 !important;
  outline-offset: 3px !important;
}
.skip-link {
  position: absolute; left: -999px; top: 0;
  background: #102b4a; color: #fff; padding: 12px 16px; z-index: 100000;
}
.skip-link:focus { left: 12px; top: 12px; }
@media (max-width: 768px) {
  .ac-cursor, .ac-cursor-ring, #ac-particles { display: none !important; }
  .hero h1 { font-size: clamp(28px, 8vw, 40px) !important; }
  .nav { flex-wrap: wrap; }
  .service-grid, .books { grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
}
@media (max-width: 520px) {
  .service-grid, .books, .process-grid { grid-template-columns: 1fr !important; }
}
/* reduce motion */
@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;
  }
}
