/* Link, button and card feedback without changing the resting Figma layout. */
a, button, summary { -webkit-tap-highlight-color: transparent; }
.main-navigation a,.explore-links a,.product-links a,.contact-navigation-link,
.contact-information a,.contact-method a {
  transition: color .2s ease, opacity .2s ease;
}
.main-navigation a:hover,.explore-links a:hover,.product-links a:hover,
.contact-information a:hover,.contact-navigation-link:hover { color: #0096c6; }
.contact-method a:hover { color: #62d1e5; }
.main-navigation a:hover,.explore-links a:hover,.product-links a:hover {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}

.call-to-action,.call-to-action--2,.call-to-action--3,.product-action {
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.call-to-action:hover,.call-to-action:focus-visible {
  background: #007fa8;
  color: #fff;
  box-shadow: 0 5px 16px #0096c633;
}
.call-to-action--2:hover,.call-to-action--2:focus-visible {
  background: #edf5ff;
  box-shadow: 0 3px 12px #101f3b15;
}
.call-to-action--3:hover,.product-action:hover { color: #007fa8; }
.call-to-action--3:hover p,.product-action:hover p { color: #007fa8; }
[class^="call-to-action"] .arrow-right { transition: transform .2s ease; }
[class^="call-to-action"]:hover .arrow-right { transform: translateX(4px); }
.device-card,.hardware-category { transition: box-shadow .25s ease, border-color .25s ease; }
.device-card:hover { border-color: #0096c6; box-shadow: 0 12px 28px #17263d12; }
.hardware-category:hover { border-color: #0096c6; }
.faq-question { transition: color .2s ease; }
.faq-question:hover .question-row-text { color: #0096c6; }
.form-input { transition: border-color .2s ease, box-shadow .2s ease; }
.form-input:hover { border-color: #7a899d; }
.form-input:focus,
.form-input:focus-visible {
  border-color: #0096c6;
  outline: none;
  box-shadow: none;
}
.hero-pagination button:hover { opacity: 1; background: #62d1e5; }

/* Continuous industry animation, with a matching second group for the loop. */
.industry-examples { display: block; min-width: 0; overflow: hidden; }
.industry-track { display: flex; width: max-content; animation: industry-ticker 30s linear infinite; }
.industry-group { display: flex; flex: none; gap: .833313rem; padding-right: .833313rem; }
.industry { transition: background-color .2s ease, border-color .2s ease; }
.industry:hover,.industry:focus-visible { background: #edf5ff; border-color: #0096c6; }
.industry:hover .industry-text { color: #007fa8; }
.industry-examples:hover .industry-track,
.industry-examples:focus-within .industry-track { animation-play-state: paused; }
@keyframes industry-ticker { to { transform: translateX(-50%); } }

.reveal-on-scroll { opacity: 0; transform: translateY(18px); }
.reveal-on-scroll.is-revealed {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .55s ease var(--reveal-delay,0ms), transform .55s ease var(--reveal-delay,0ms), box-shadow .25s ease, border-color .25s ease;
}

@media (prefers-reduced-motion: reduce) {
  .industry-track { animation: none; width: 100%; }
  .industry-group { flex-wrap: wrap; }
  .industry-group[aria-hidden="true"] { display: none; }
  .reveal-on-scroll { opacity: 1; transform: none; }
  [class^="call-to-action"]:hover .arrow-right { transform: none; }
}
