@keyframes rise-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes card-in{from{opacity:0;transform:translateX(24px) scale(.98)}to{opacity:1;transform:translateX(0) scale(1)}}
@keyframes contact-glow{0%,100%{box-shadow:0 10px 30px #0b3a6d24}50%{box-shadow:0 12px 34px #0785d955}}

.hero .eyebrow,.page-hero .eyebrow{animation:rise-in .55s ease-out both}
.hero h1,.page-hero h1{animation:rise-in .7s .08s ease-out both}
.hero-copy,.page-hero p{animation:rise-in .7s .16s ease-out both}
.buttons{animation:rise-in .7s .24s ease-out both}
.dashboard{animation:card-in .75s .18s cubic-bezier(.2,.8,.2,1) both}
.dashboard .method{animation:card-in .5s ease-out both}
.dashboard .method:nth-of-type(1){animation-delay:.35s}
.dashboard .method:nth-of-type(2){animation-delay:.44s}
.dashboard .method:nth-of-type(3){animation-delay:.53s}
.dashboard .method:nth-of-type(4){animation-delay:.62s}

.card,.step,.contact-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.card:hover,.step:hover{transform:translateY(-6px);border-color:#add8f6;box-shadow:0 17px 36px #103d7119}
.service-icon,.method-icon{transition:transform .25s ease,background-color .25s ease}
.card:hover .service-icon,.method:hover .method-icon{transform:rotate(-6deg) scale(1.08);background:#0878de}
.office-grid img{transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .4s ease}
.office-grid img:hover{transform:scale(1.018);filter:saturate(1.06)}
.quick-contact a:first-child{animation:contact-glow 2.8s ease-in-out infinite}
.quick-contact a{transition:transform .2s ease,background-color .2s ease,color .2s ease}
.quick-contact a:hover{transform:translateX(-5px)}

@media(max-width:800px){.quick-contact a:hover{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero .eyebrow,.page-hero .eyebrow,.hero h1,.page-hero h1,.hero-copy,.page-hero p,.buttons,.dashboard,.dashboard .method,.quick-contact a:first-child{animation:none}.card,.step,.contact-card,.service-icon,.method-icon,.office-grid img,.quick-contact a{transition:none}}
