/* Grit Institute motion layer (Oct 2026). Calm, once-only movement; off for reduced-motion. */
.gi-mark{display:block;width:64px;height:auto;margin:0 0 1.1rem;color:#fff;overflow:visible}
.gi-mark .gc-needle{transform-box:view-box;transform-origin:434px 528px}
.gi-mark .gc-star{transform-box:fill-box;transform-origin:center}
.gi-motion-ready .gi-mark .gc-ring{animation:gc-ring 1s cubic-bezier(.22,.61,.36,1) both}
.gi-motion-ready .gi-mark .gc-needle{animation:gc-needle 1.4s cubic-bezier(.34,1.3,.5,1) .35s both}
.gi-motion-ready .gi-mark .gc-star{animation:gc-star .7s cubic-bezier(.22,.61,.36,1) both}
.gi-motion-ready .gi-mark .gc-star-1{animation-delay:1.1s}
.gi-motion-ready .gi-mark .gc-star-2{animation-delay:1.3s}
.gi-motion-ready .gi-mark .gc-star-3{animation-delay:1.5s}
@keyframes gc-ring{from{opacity:0;transform:scale(.86) rotate(-25deg)}to{opacity:1;transform:none}}
@keyframes gc-needle{0%{opacity:0;transform:rotate(-55deg)}35%{opacity:1}60%{transform:rotate(9deg)}80%{transform:rotate(-3deg)}100%{opacity:1;transform:rotate(0)}}
@keyframes gc-star{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}
.gi-mark .gc-ring,.gi-mark .gc-needle{transform-box:view-box}
.gi-mark .gc-ring{transform-origin:434px 528px}
/* headline: the italic phrase lands last */
.gi-motion-ready .hero_grid-item h1 .text-style-larger{display:inline-block;animation:gi-land .9s cubic-bezier(.22,.61,.36,1) .9s both}
@keyframes gi-land{from{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:none}}
/* section compass: no endless spin; turns a few degrees with scroll (set in JS) */
.gi-compass{animation:none !important;transition:transform .2s linear;color:#53717e !important}
.gi-compass .gc-needle{transform-box:view-box;transform-origin:434px 528px}
/* logo strips pause on hover */
.hero-logos-wrapper:hover *, .logos-wrapper:hover *{animation-play-state:paused !important}
/* loops that never stop -> finite */
.gi-scroll-cue .mouse::after{animation-iteration-count:3 !important}
.home-book-image-wrapper.gi-book-fly{animation-iteration-count:2 !important}
@media (prefers-reduced-motion:reduce){
  .gi-mark *, .hero_grid-item h1 .text-style-larger{animation:none !important;opacity:1 !important;transform:none !important}
  .gi-compass{transition:none}
}
@media (max-width:767px){.gi-mark{width:46px;margin-bottom:.8rem}}
