.reveal{
  opacity:0;transform:translateY(20px) scale(.985);
  transition:opacity var(--dur-slow) var(--ease),transform var(--dur-slow) var(--ease);
  will-change:opacity,transform;
}
.reveal.in-view{opacity:1;transform:none}

.motion-blur{transition:filter .15s linear}
.section--literature .literature-card{
  animation:float-in .8s var(--ease) both;
}
.section--literature .literature-card:nth-child(2){animation-delay:.08s}
.section--literature .literature-card:nth-child(3){animation-delay:.16s}

body.is-ready .hero__photo-wrap,
body.is-ready .hero__content > *{
  animation:hero-rise .9s var(--ease) both;
}
body.is-ready .hero__content > *:nth-child(1){animation-delay:.06s}
body.is-ready .hero__content > *:nth-child(2){animation-delay:.12s}
body.is-ready .hero__content > *:nth-child(3){animation-delay:.18s}
body.is-ready .hero__content > *:nth-child(4){animation-delay:.24s}
body.is-ready .hero__content > *:nth-child(5){animation-delay:.3s}
body.is-ready .hero__content > *:nth-child(6){animation-delay:.36s}

@keyframes hero-rise{
  from{opacity:0;transform:translateY(22px)}
  to{opacity:1;transform:none}
}

@keyframes float-in{
  from{opacity:0;transform:translateY(18px) scale(.98)}
  to{opacity:1;transform:none}
}

@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;filter:none}
  .hero__ring,.flag-gradient{animation:none}
  body.is-ready .hero__photo-wrap,
  body.is-ready .hero__content > *,
  .section--literature .literature-card{animation:none}
}