/* Scoped to #adv-page for embedding inside the site template. */
/* =====================================================================
   Animation-related CSS
   • No content is hidden here. GSAP sets start states at runtime,
     only after it has loaded (html.adv-enhanced).
   • State transitions used by JS-driven classes live in style.css.
   ===================================================================== */
/* Elements GSAP moves often get a compositor hint only while enhanced */
html.adv-enhanced #adv-page [data-depth-layer], html.adv-enhanced #adv-page .doc, html.adv-enhanced #adv-page .adv-why__net { will-change: transform; }
/* Slow rotation of the decision core's dashed ring (cheap: one small element) */
html.adv-enhanced #adv-page .net-core__ring--dash { animation: adv-spin 40s linear infinite; }
@keyframes adv-spin { to { transform: rotate(360deg); } }
/* Pause the ambient ring when the hero is off-screen (class set by JS) */
html.adv-enhanced #adv-page .adv-hero.is-offscreen .net-core__ring--dash { animation-play-state: paused; }
/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  #adv-page *, #adv-page *::before, #adv-page *::after { animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important; }
  #adv-page .net-core__ring--dash { animation: none !important; }
  #adv-page .adv-btn:hover, #adv-page .adv-tech:hover { transform: none; }
}
