/* Homepage-only accessibility and legacy layout adjustments. */
.homepage { overflow-x: hidden; }
.homepage .skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 1200;
  transform: translateY(-150%);
  padding: 10px 14px;
  border-radius: 6px;
  background: var(--fg);
  color: var(--bg);
  font-size: 0.85rem;
  font-weight: 700;
  text-decoration: none;
}
.homepage .skip-link:focus { transform: translateY(0); }
.homepage a:focus-visible,
.homepage button:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
.homepage .hero-content > * { animation: none; opacity: 1; transform: none; }
.homepage .hero-h1-es { font-size: 1.1rem; }
.homepage .hero-support-es { margin-top: -24px; }
.homepage .float-card-4 { right: 8%; bottom: 8%; animation-delay: 1s; }
.homepage .section-compliance {
  margin-top: 28px;
  color: var(--fg-sub);
  font-size: 0.78rem;
  text-align: center;
}
.homepage .services-next-steps {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 28px;
}
@media (max-width: 900px) {
  .homepage .hero { padding: 112px 20px 72px; }
  .homepage .hero-inner { grid-template-columns: 1fr; gap: 42px; }
  .homepage .hero-visual { height: 380px; }
}
@media (max-width: 600px) {
  .homepage .site-nav { height: 68px; }
  .homepage .nav-brand { font-size: 1.18rem; }
  .homepage .hero { padding: 96px 20px 58px; }
  .homepage .hero h1 { font-size: clamp(2.25rem, 12vw, 3.5rem); }
  .homepage .hero-actions,
  .homepage .hero-cta-secondary,
  .homepage .closing-actions,
  .homepage .services-next-steps { flex-direction: column; width: 100%; }
  .homepage .hero-actions a,
  .homepage .hero-cta-secondary a,
  .homepage .closing-actions a,
  .homepage .services-next-steps a { width: 100%; }
  .homepage .hero-trust { display: grid; grid-template-columns: 1fr; }
  .homepage .services,
  .homepage .why-strip { padding: 64px 20px; }
  .homepage .services-grid,
  .homepage .why-strip-list { grid-template-columns: 1fr; }
  .homepage .closing { padding: 64px 20px 120px; }
}

@media (prefers-reduced-motion: reduce) {
  .homepage .float-card,
  .homepage .float-card-1,
  .homepage .float-card-2,
  .homepage .float-card-3,
  .homepage .float-card-4,
  .homepage .particle,
  .homepage .reveal {
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
  .homepage .reveal { opacity: 1; }
}
