/* Shared interaction states. Do not change menu geometry or carousel layout. */
:root { --action:#155eef; --action-hover:#104ac0; --action-active:#103d96; --action-soft:#edf3ff; --action-focus:#77a7ff; }
body :is(a,button,summary,input[type="submit"]) { transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease; text-underline-offset:4px; }
body .button.button.button,
body :is(input[type="submit"],button[type="submit"]) {
  min-height:44px; padding:12px 20px; border:1px solid transparent; border-radius:5px;
  background:var(--action); color:#fff; box-shadow:none; font-family:inherit;
  font-size:14px; font-weight:600; line-height:1.45; text-decoration:none; cursor:pointer;
}
body :is(.consultation-cta-actions,.all-products-cta-actions) .button.button.button { background:#fff; color:var(--action); border-color:#fff; }
body :is(.text-link,.solutions-showcase-all) { color:var(--action); text-decoration:none; }
body .post-card .text-link { color:var(--action); }
body :is(.variant--navy,.all-products-cta-actions) .text-link { color:#c6dcff; }
body :is(.news-filter-chip,.page-numbers:not(.dots),.testimonials-controls button,.post-slider-controls button,.wata-header__toggle) { border-radius:5px; }
body :is(.testimonials-controls,.post-slider-controls) button { min-width:44px; min-height:44px; color:var(--action); border-color:#cbd7e7; background:#fff; }
body :is(.wata-menu a,.service-subnav a) { text-decoration:none; }
body :is(a,button,summary,input,select,textarea):focus-visible { outline:2px solid var(--action-focus); outline-offset:3px; }
body .post-card a:focus-visible,body .wata-footer a:focus-visible { outline:2px solid var(--action-focus); outline-offset:3px; }
@media(hover:hover) {
  body .button.button.button:hover,
  body :is(input[type="submit"],button[type="submit"]):hover { background:var(--action-hover); color:#fff; box-shadow:none; text-decoration:none; }
  body :is(.consultation-cta-actions,.all-products-cta-actions) .button.button.button:hover { background:var(--action-soft); color:var(--action-hover); border-color:var(--action-soft); }
  body :is(.text-link,.solutions-showcase-all,.prose a,.breadcrumb a,.service-breadcrumb a,.all-products-breadcrumb a):hover,
  body .post-card :is(h2,h3) a:hover,body .post-card .text-link:hover { color:var(--action-hover); text-decoration:underline; }
  body :is(.variant--navy,.all-products-cta-actions) .text-link:hover { color:#fff; }
  body .wata-footer a:not(.button):not(.brand):hover { color:#c6dcff; text-decoration:underline; }
  body [data-wata-nav-enhanced="true"] .wata-menu a:hover,
  body [data-wata-nav-enhanced="true"] .wata-menu__disclosure:hover,
  body .service-subnav a:hover { color:var(--action-hover); background:var(--action-soft); text-decoration:none; }
  body :is(.news-filter-chip,a.page-numbers,.testimonials-controls button,.post-slider-controls button,.wata-header__toggle):hover:not(:disabled) { background:var(--action-soft); color:var(--action-hover); border-color:var(--action); }
  body :is(.footer-disclosure,.faq-list,.all-products-faq-item)>summary:hover { color:var(--action); }
  body .wata-footer .footer-disclosure>summary:hover { background:#ffffff0a; }
  body :is(.solutions-showcase-card-link,.all-products-card-link,.post-adjacent-link):hover { background:var(--action-soft); }
}
body [data-wata-nav-enhanced="true"] .wata-menu>li:is(.is-open,.current-menu-item,.current-menu-ancestor)>a { background:var(--action-soft); color:var(--action); text-decoration:none; }
body .news-filter-chip[aria-current="page"] { background:var(--action); color:#fff; border-color:var(--action); }
body .button.button.button:active,
body :is(input[type="submit"],button[type="submit"]):active { background:var(--action-active); color:#fff; }
body :is(button,input[type="submit"],.button):is(:disabled,[aria-disabled="true"]),
body .button.button.button[aria-disabled="true"] { opacity:.45; cursor:not-allowed; box-shadow:none; }
/* Motion is limited to enabled CTA buttons, never navigation hover owners. */
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  body .button.button.button,
  body :is(input[type="submit"],button[type="submit"]) {
    transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s ease,background-color .18s ease,color .18s ease;
  }
  body .button.button.button:not([aria-disabled="true"]):hover,
  body :is(input[type="submit"],button[type="submit"]):not(:disabled):not([aria-disabled="true"]):hover {
    transform:translateY(-2px); box-shadow:0 7px 16px #104ac026;
  }
  body .button.button.button>span[aria-hidden="true"] { display:inline-block; transition:transform .22s ease; }
  body .button.button.button:not([aria-disabled="true"]):hover>span[aria-hidden="true"] { transform:translateX(3px); }
  body .button.button.button:active,
  body :is(input[type="submit"],button[type="submit"]):active { transform:translateY(0); box-shadow:none; }
}
@media(prefers-reduced-motion:reduce) {
  body :is(a,button,summary,input[type="submit"]) { transition:none; }
}
