/* Motion changes paint only; the approved page geometry stays intact. */
@keyframes j3-menu-arrive {from{opacity:0;translate:0 -5px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference) {
  .j3-page .j3-nav-group[open] > .j3-nav-panel {animation:j3-menu-arrive .2s ease-out both;}
  .j3-page .j3-nav-panel a {transition:background-color .18s,color .18s;}
  .j3-page :is(.btn-main,.btn-primary,.btn-out,.btn-watch,.nav-dl,.nav-cta) {
    transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s;
  }
  .j3-page :is(.btn-main,.btn-primary,.btn-out) > svg {transition:translate .2s;}
  .j3-page :is(.btn-main,.btn-primary,.btn-out):hover > svg {translate:2px 0;}
  .j3-page .btn-watch-circle {transition:background-color .2s,transform .2s;}
  .j3-page .btn-watch:hover .btn-watch-circle {transform:scale(1.08);}
  .j3-page :is(.btn-main,.btn-primary,.btn-watch):active {transform:translateY(1px);}
  .j3-page :is(.faq-a,.faq-body,.facc-body) {transition:max-height .3s cubic-bezier(.22,.75,.2,1);}
  .j3-page :is(.faq-ico-wrap,.faq-toggle) {transition:background-color .2s,border-color .2s;}
  .j3-page :is(.faq-arrow,.faq-icon,.facc-icon) {transition:transform .3s cubic-bezier(.22,.75,.2,1);}
  .j3-page #roi :is(.jl-cc-bar-productive,.jl-cc-bar-routine) {transition:width .3s ease-out;}
}
@media(prefers-reduced-motion:reduce) {
  .j3-page .j3-nav-group[open] > .j3-nav-panel {animation:none;}
  .j3-page :is(.btn-main,.btn-primary,.btn-out):hover > svg {translate:none;}
  .j3-page .btn-watch:hover .btn-watch-circle {transform:none;}
}

/* Shared interaction language: only actionable surfaces lift. */
.j3-page .j3-motion-toggle{display:block;margin:22px 0 0;padding:8px 0;min-height:36px;border:0;background:transparent;color:var(--j3-muted);font:inherit;font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.j3-page .j3-motion-toggle:disabled{cursor:default;text-decoration:none}
.j3-page .j3-motion-toggle:focus-visible{outline:2px solid var(--j3-accent);outline-offset:5px}
@media(prefers-reduced-motion:no-preference){
 body.j3-page :is(.cta-demo-btn,.btn-call-micro,.cta-cross-link,.sol-card,.j3-post-card__link,.ftab-btn,.cases-tab-btn,.region-btn,.calc-preset-btn,.faq-q,.facc-hd,.lang-btn,.j3-mobile-groups a){transition:translate .22s ease,box-shadow .22s ease,border-color .22s ease,background-color .22s ease,color .22s ease}
 body.j3-page :is(.j3-post-card__arrow,.sol-card-link svg,.cta-cross-link svg,.fcat-link svg){transition:translate .22s ease}
 body.j3-page :is(.btn-main,.btn-primary,.btn-out,.cta-demo-btn,.nav-cta,.nav-dl):active{translate:0 1px}
 body.j3-page input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=hidden]),body.j3-page :is(textarea,select){transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
 body.j3-page input:not([type=range]):not([type=checkbox]):not([type=radio]):focus-visible,body.j3-page :is(textarea,select):focus-visible{border-color:var(--j3-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--j3-accent) 16%,transparent)}
 body.j3-page :is(.cmpv-col,.price-card,.calc-card):focus-within{border-color:var(--j3-accent)}
 body.j3-page :is(.j3-post-card__link,.cta-cross-link,.sol-card):focus-within :is(.j3-post-card__arrow,.sol-card-link svg){translate:3px 0}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 body.j3-page :is(.btn-main,.btn-primary,.btn-out,.cta-demo-btn,.nav-cta,.nav-dl):hover{translate:0 -2px;box-shadow:0 5px 14px #102d3520}
 body.j3-page :is(a.cta-cross-link,a.sol-card,.sol-card:has(a[href]),a.country-card,.j3-post-card__link):hover{translate:0 -3px}
 body.j3-page :is(.j3-post-card__link,.sol-card,.cta-cross-link,.fcat-link):hover :is(.j3-post-card__arrow,.sol-card-link svg,.cta-cross-link svg,.fcat-link svg){translate:3px 0}
 body.j3-page :is(.ftab-btn,.cases-tab-btn,.region-btn,.calc-preset-btn):hover{border-color:var(--j3-accent);box-shadow:inset 0 -2px 0 var(--j3-accent)}
 body.j3-page :is(.faq-q,.facc-hd):hover{background-color:color-mix(in srgb,var(--j3-accent) 7%,transparent)}
 body.j3-page :is(.j3-nav-panel a,.j3-mobile-groups a,.lang-btn):hover{color:var(--j3-accent)}
 body.j3-page #jl-footer a:hover{color:var(--j3-accent);text-decoration:underline;text-underline-offset:4px}
}
/* A page-level pause also stops existing decorative CSS animations. */
body.j3-page[data-j3-motion-paused=true] *,body.j3-page[data-j3-motion-paused=true] *::before,body.j3-page[data-j3-motion-paused=true] *::after{animation-play-state:paused!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
 body.j3-page *,body.j3-page *::before,body.j3-page *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Feature descriptions gently advance without changing the document layout. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  body.j3-page:not([data-j3-motion-paused="true"]) :is(.feat-card,.fcat-item,.hl-card,.why-card,.sec-block,.benefit,.sol-card,.pipeline-step,.p-card,.p-step,.feature-card,.feature-item,.related-card,.facc-item,.rights-card,.compliance-block-item,.uc-resolution-item) {
    position:relative;
    transform-origin:center;
    transition:scale .24s cubic-bezier(.2,.7,.2,1),translate .24s cubic-bezier(.2,.7,.2,1),box-shadow .24s ease,border-color .24s ease,background-color .24s ease;
  }
  body.j3-page:not([data-j3-motion-paused="true"]) :is(.feat-card,.fcat-item,.hl-card,.why-card,.sec-block,.benefit,.sol-card,.pipeline-step,.p-card,.p-step,.feature-card,.feature-item,.related-card,.facc-item,.rights-card,.compliance-block-item,.uc-resolution-item):is(:hover,:focus-within) {
    scale:1.025;
    translate:0 -4px;
    z-index:2;
    border-color:color-mix(in srgb,var(--j3-accent) 45%,var(--j3-line));
  }
  body.j3-page:not([data-j3-motion-paused="true"]) :is(.hl-card,.why-card,.sec-block,.benefit,.sol-card,.p-card,.feature-card,.related-card,.rights-card):is(:hover,:focus-within) {
    box-shadow:0 12px 28px -14px color-mix(in srgb,var(--j3-ink) 22%,transparent);
  }
}
