/* ASR public experience motion. Progressive enhancement; no content hidden without JS.
   Scoped to the public site and stand-alone public pages only. */
html.asr-motion-public .asr-reading-progress {
  position: fixed; top: 0; left: 0; width: 100%; height: 3px; z-index: 999;
  pointer-events: none; transform: scaleX(0); transform-origin: left center;
  background: linear-gradient(90deg, #65238c 0%, #a462ca 62%, #d4a9e9 100%);
  box-shadow: 0 0 10px rgba(114, 41, 173, .18);
}
html.asr-motion-public .asr-reading-progress[hidden] { display: none !important; }
@media (prefers-reduced-motion: no-preference) {
  html.asr-motion-public [data-asr-motion="pending"] {
    opacity: .91; transform: translate3d(0, 13px, 0);
  }
  html.asr-motion-public [data-asr-motion="visible"] {
    opacity: 1; transform: translate3d(0, 0, 0);
  }
  html.asr-motion-public [data-asr-motion] {
    transition: opacity .56s cubic-bezier(.22, 1, .36, 1),
                transform .56s cubic-bezier(.22, 1, .36, 1);
  }
  /* Keep the first impression lively without forcing additional layout shifts. */
  html.asr-motion-public .public-site[data-page="home"] .hp-hero-copy > .hp-live-kicker {
    animation: asr-motion-enter .68s cubic-bezier(.22, 1, .36, 1) both;
  }
  html.asr-motion-public .public-site[data-page="home"] .hp-hero-copy > h1 {
    animation: asr-motion-enter .85s .07s cubic-bezier(.22, 1, .36, 1) both;
  }
  html.asr-motion-public .public-site[data-page="home"] .hp-hero-copy > p {
    animation: asr-motion-enter .85s .14s cubic-bezier(.22, 1, .36, 1) both;
  }
  html.asr-motion-public .public-site[data-page="home"] .hp-hero-copy > .hp-actions {
    animation: asr-motion-enter .85s .20s cubic-bezier(.22, 1, .36, 1) both;
  }
  @keyframes asr-motion-enter {
    from { opacity: .55; transform: translate3d(0, 14px, 0); }
    to   { opacity: 1; transform: translate3d(0, 0, 0); }
  }
}
/* Only public cards, preserving the existing surfaces, contrast and borders. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  html.asr-motion-public .public-site main :is(
    .asr-service-lines > article,
    .asr-home-stack-grid > article,
    .hp-product-duo > article,
    .support-cards > article,
    .program-grid > article,
    .research-card
  ) {
    transition: transform .25s cubic-bezier(.2,.8,.2,1),
      box-shadow .25s ease, border-color .25s ease;
    will-change: auto;
  }
  html.asr-motion-public .public-site main :is(
    .asr-service-lines > article,
    .asr-home-stack-grid > article,
    .hp-product-duo > article,
    .support-cards > article,
    .program-grid > article,
    .research-card
  ):hover {
    transform: translate3d(0, -5px, 0);
    box-shadow: 0 17px 43px rgba(61, 30, 86, .105);
    border-color: #c5a2d8;
  }
  html.asr-motion-public .public-site main :is(
    .hp-actions button, .hp-actions a,
    .asr-home-explore-actions a, .asr-home-service-cta
  ) svg { transition: transform .24s cubic-bezier(.2,.8,.2,1); }
  html.asr-motion-public .public-site main :is(
    .hp-actions button, .hp-actions a,
    .asr-home-explore-actions a, .asr-home-service-cta
  ):hover svg { transform: translate(3px, -1px); }
}
/* Services and FIIDQ are stand-alone public pages rather than the React shell. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  html.asr-motion-public body :is(.asr-svc-offer, .fiidq-module, .fiidq-feature, .fiidq-time-card) {
    transition: transform .27s cubic-bezier(.2,.8,.2,1), box-shadow .27s ease, border-color .27s ease;
  }
  html.asr-motion-public body :is(.asr-svc-offer, .fiidq-module, .fiidq-feature, .fiidq-time-card):hover {
    transform: translate3d(0, -4px, 0);
    box-shadow: 0 16px 35px rgba(61, 30, 86, .10);
  }
}
html.asr-motion-public body :is(.asr-svc-offer, .fiidq-module, .fiidq-feature, .fiidq-time-card):focus-within {
  outline: 2px solid #9b66bc; outline-offset: 2px;
}
/* Give keyboard users the same clear affordance as mouse users. */
html.asr-motion-public .public-site main :is(
  .asr-service-lines > article, .asr-home-stack-grid > article,
  .support-cards > article, .research-card
):focus-within { border-color: #a36cc2; }
/* Soft scroll shadow reinforces navigation, without replacing the white header. */
html.asr-motion-public[data-asr-scrolled] .public-site .site-header {
  box-shadow: 0 6px 22px rgba(39, 20, 52, .07);
}
@media (prefers-reduced-motion: reduce) {
  html.asr-motion-public [data-asr-motion],
  html.asr-motion-public .public-site main :is(article,section,a,button,svg) {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  html.asr-motion-public [data-asr-motion] { opacity: 1 !important; transform: none !important; }
}


/* OCT 2026 · purpose-led movement on the public editorial journeys.
   No parallax, autoplay or flashing; no forced hidden text, page overlays or
   transitions on interactive quantitative terminals. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html.asr-motion-public .public-site main :is(
  .rp-featured,.rp-domain-grid > article,.rp-ecosystem-grid > article,
  .rp-publication-grid > article,.rp-standard-grid > article,
  .asr-careers-card,.asr-careers-brief-grid > article,
  .asr-careers-journey-grid > article,
  .faq-native-group,.faq-native-bottom,
  .people-grid > article,.institution-grid > article,.partner-grid > article,
  .session-grid > article,.faq-preview-grid > article,
  .guest-resource-grid > article
 ){
  transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,border-color .3s ease;
  will-change:auto;
 }
 html.asr-motion-public .public-site main :is(
  .rp-featured,.rp-domain-grid > article,.rp-ecosystem-grid > article,
  .rp-publication-grid > article,.rp-standard-grid > article,
  .asr-careers-card,.asr-careers-brief-grid > article,
  .asr-careers-journey-grid > article,.faq-native-group,
  .people-grid > article,.institution-grid > article,.partner-grid > article,
  .session-grid > article,.faq-preview-grid > article,
  .guest-resource-grid > article
 ):hover {
  transform:translateY(-3px);
  box-shadow:0 13px 29px rgba(43,28,58,.075);
 }
 html.asr-motion-public .public-site main :is(
  .rp-hero-actions a,.rp-section-head a,.rp-publication-grid a,
  .asr-careers-hero-actions a,.asr-careers-card a,
  .faq-native-hero a,.faq-native-bottom a,.page-hero a
 ) svg,
 html.asr-motion-public body :is(.asr-svc-hero-layout-v3 a,.fiidq-hero a) svg {
  transition:transform .22s ease;
 }
 html.asr-motion-public .public-site main :is(
  .rp-hero-actions a,.rp-section-head a,.rp-publication-grid a,
  .asr-careers-hero-actions a,.asr-careers-card a,
  .faq-native-hero a,.faq-native-bottom a,.page-hero a
 ):hover svg,
 html.asr-motion-public body :is(.asr-svc-hero-layout-v3 a,.fiidq-hero a):hover svg {
  transform:translateX(3px);
 }
}
/* A very light header elevation as visitors move through long pages. */
html.asr-motion-public body > header.asr-unified-header{
 transition:box-shadow .25s ease!important
}
html.asr-motion-public[data-asr-scrolled] body > header.asr-unified-header{
 box-shadow:0 7px 21px rgba(34,25,42,.085)!important
}
@media(prefers-reduced-motion:reduce){
 html.asr-motion-public body > header.asr-unified-header{
  transition:none!important
 }
 html.asr-motion-public .asr-reading-progress{
  display:none!important
 }
 html.asr-motion-public [data-asr-motion]{
  opacity:1!important;transform:none!important;animation:none!important;transition:none!important
 }
}
