/* One entrance belongs to the whole CTA/card, including its artwork. */
.reveal-prepare :is(.text-link,.service-card,.guidance-card,.footer-promo,.footer-company,.footer-nav)[data-reveal]:not(.is-visible){opacity:0}
:is(.text-link,.service-card,.guidance-card,.footer-promo,.footer-company,.footer-nav).reveal-pending{
 transition:opacity .65s ease,transform .8s cubic-bezier(.22,.65,.3,1),translate .28s ease,box-shadow .3s ease,background-color .3s ease,color .25s ease;
 transition-delay:var(--reveal-delay,0ms),var(--reveal-delay,0ms),0s,0s,0s,0s;
}
:is(.text-link,.service-card,.guidance-card,.footer-promo,.footer-company,.footer-nav).reveal-pending:not(.is-visible){transform:translate3d(0,12px,0)}
:is(.text-link,.service-card,.guidance-card,.footer-promo,.footer-company,.footer-nav).reveal-pending.is-visible{opacity:1;transform:none}
.text-link .link-arrow,.footer-promo .promo-arrow{transition:transform .3s cubic-bezier(.22,.65,.3,1)}
.service-card .service-art,.service-card:hover .service-art{transform:none;transition:none}
.footer-promo img[data-footer-art]{opacity:1;scale:1;translate:none;animation:none}
@media(min-width:1001px){
 .reveal-prepare .feature-card[data-reveal]:not(.is-visible){opacity:0}
 .feature-cards .feature-card.reveal-pending{
  transition:opacity .8s ease,transform 1s cubic-bezier(.22,.65,.3,1);
  transition-delay:var(--reveal-delay,0ms);
 }
 /* The parent owns the stagger; decoded illustrations enter with their numbered card. */
 .feature-cards .feature-card img[data-illustration],
 .art-prepare .feature-cards .feature-card img[data-illustration][data-art-initial]{opacity:1;scale:1;translate:none;transition:none;animation:none}
}
@media(hover:hover) and (pointer:fine){
 .text-link:hover{translate:none;filter:none}
 .text-link:hover .link-arrow{transform:translateX(4px)}
 .service-card:hover,.guidance-card:hover,.footer-promo:hover{translate:0 -3px;scale:1}
}
@media(hover:none){
 .text-link:hover,.service-card:hover,.guidance-card:hover,.footer-promo:hover{translate:none;scale:1}
 .text-link:hover .link-arrow,.footer-promo:hover .promo-arrow{transform:none}
}
:is(.text-link,.service-card,.guidance-card,.footer-promo,.footer-company,.footer-nav).reveal-pending:focus-within{opacity:1;transform:none;transition-delay:0s}
@media(prefers-reduced-motion:reduce){
 .feature-cards .feature-card.reveal-pending{transition:none}
 .reveal-prepare [data-reveal],:is(.text-link,.service-card,.guidance-card,.footer-promo,.footer-company,.footer-nav).reveal-pending{opacity:1!important;transform:none;transition:none}
}
