@media (hover:hover) and (pointer:fine) {
  #ecosystem .ai-product, #about .review-note, #contact .consultation-form {
    transition: translate 160ms cubic-bezier(.22,1,.36,1), border-color 160ms ease;
  }
  #ecosystem .ai-product:hover, #about .review-note:hover, #contact .consultation-form:hover {
    translate: 0 -3px; border-color: #fff;
  }
}
#ecosystem .ai-product:focus-within, #contact .consultation-form:focus-within { outline: 2px solid #8ebde8; outline-offset: 3px; }
.image-preview-control:active { background-color: #dceeff; }
@media (min-width:761px) { .nav-links { position: relative; } }
.nav-links a::after { opacity: 0; }
.glass-nav-line {
  position: absolute; bottom: 17px; left: 0; width: 1px; height: 2px;
  pointer-events: none; background: #0b66c3; transform-origin: left center;
  transition: transform 240ms cubic-bezier(.25,1,.5,1), opacity 150ms ease;
}
.glass-keyboard .glass-nav-line { transition: none; }
@media (max-width:760px) { .glass-nav-line { display: none; } .nav-links a.active { color:#0b66c3; text-decoration:underline; text-underline-offset:6px; } }
@media (prefers-reduced-motion:reduce) {
  #ecosystem .ai-product, #about .review-note, #contact .consultation-form, .glass-nav-line { transition:none; translate:none; }
}
.reveal, .reveal.visible { opacity:1; transform:none; transition:none; }
