/* Small, reusable responses in the Aventus blue palette. */
@media (min-width:701px) and (hover:hover) and (pointer:fine){
  :root[data-motion="full"] :is(.price-card,.program-card,.wide-program,.resource-grid>a){
    position:relative;
    isolation:isolate;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
  }
  :root[data-motion="full"] :is(.price-card,.program-card,.wide-program,.resource-grid>a)::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    border-radius:inherit;
    background:radial-gradient(340px circle at var(--pointer-x,50%) var(--pointer-y,30%),#3988ed26,transparent 75%);
    opacity:0;
    pointer-events:none;
    transition:opacity .22s ease;
  }
  :root[data-motion="full"] :is(.price-card,.program-card,.wide-program,.resource-grid>a).pointer-active::before{opacity:1}
  :root[data-motion="full"] .program-card.senior::before{background:radial-gradient(340px circle at var(--pointer-x,50%) var(--pointer-y,30%),#70b0ff30,transparent 75%)}
  :root[data-motion="full"] .price-card:is(:hover,:focus-within){border-color:#86afe5;box-shadow:0 12px 32px #235ca318}
  :root[data-motion="full"] .price-card.featured:is(:hover,:focus-within){border-color:var(--blue);box-shadow:0 14px 36px #1754ce24}
  :root[data-motion="full"] :is(.program-card,.wide-program,.resource-grid>a):is(:hover,:focus-visible){transform:translateY(-4px);box-shadow:0 14px 30px #235ca319;border-color:#86afe5}
  :root[data-motion="full"] .button{transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
  :root[data-motion="full"] .button>span:last-child,:root[data-motion="full"] .calculator-promo-button>span,:root[data-motion="full"] .resource-icon{display:inline-block;transition:transform .18s ease}
  :root[data-motion="full"] .button:is(:hover,:focus-visible)>span:last-child{transform:translate(3px,-2px)}
  :root[data-motion="full"] .button:hover{transform:translateY(-2px);box-shadow:0 7px 18px #1754ce22}
  :root[data-motion="full"] .button:active{transform:translateY(0) scale(.98);box-shadow:0 2px 6px #1754ce14}
  :root[data-motion="full"] .calculator-promo{transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
  :root[data-motion="full"] .calculator-promo:is(:hover,:focus-visible){box-shadow:0 10px 28px #a7731720}
  :root[data-motion="full"] .calculator-promo:is(:hover,:focus-visible) .calculator-promo-button>span{transform:translateY(3px)}
  :root[data-motion="full"] .resource-grid>a:is(:hover,:focus-visible) .resource-icon{transform:translate(3px,-3px)}
  :root[data-motion="full"] .video-launch .play-circle{
    transform:translate(calc(-50% + var(--play-x,0px)),calc(-50% + var(--play-y,0px))) scale(1);
    transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
  }
  :root[data-motion="full"] .video-launch:is(.pointer-active,:focus-visible) .play-circle{
    transform:translate(calc(-50% + var(--play-x,0px)),calc(-50% + var(--play-y,0px))) scale(1.06);
    background:#1754ced9;
    box-shadow:0 0 0 9px #ffffff20,0 8px 24px #14293e30;
  }
}

@media (min-width:951px) and (hover:hover) and (pointer:fine){
  :root[data-motion="full"] .site-header nav>a:not([aria-current])::after{content:"";position:absolute;bottom:-9px;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
  :root[data-motion="full"] .site-header nav>a:not([aria-current]):is(:hover,:focus-visible)::after{transform:scaleX(1)}
}

/* Tap feedback needs no hover, movement or additional animation. */
.button:active{filter:brightness(.96)}
@media (hover:none),(pointer:coarse),(max-width:700px){
  .button:hover,.program-card:hover,.wide-program:hover,.resource-grid>a:hover{transform:none}
  .article-card:hover img,.video-launch:hover>img{transform:none}
}
html[data-motion="reduced"] *,html[data-motion="reduced"] *::before,html[data-motion="reduced"] *::after{animation:none!important;transition:none!important}
html[data-motion="reduced"]{scroll-behavior:auto}
html[data-motion="reduced"] :is(.button:hover,.program-card:hover,.resource-grid>a:hover,.wide-program:hover,.review-screenshots button:hover,.article-card:hover img,.video-launch:hover>img){transform:none}
html[data-motion="reduced"]::view-transition-group(*){animation:none!important}
.motion-toggle{font:inherit;font-size:12px;color:var(--muted);background:transparent;border:1px solid #b7cce5;border-radius:6px;padding:8px 10px;min-height:44px;white-space:nowrap}
.motion-toggle:hover{color:var(--blue);border-color:var(--blue)}
.motion-toggle span{font-weight:750}
