.reveal-item{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal-item.visible{opacity:1;transform:translateY(0)}.service-ribbon a,.service-card,.value-card{transition-delay:var(--stagger,0ms)}.project-card:nth-child(2),.process-step:nth-child(2),.value-card:nth-child(2){transition-delay:100ms}.project-card:nth-child(3),.process-step:nth-child(3),.value-card:nth-child(3){transition-delay:180ms}.process-step:nth-child(4){transition-delay:260ms}.hero-photo-frame{transform-origin:center;animation:frame-in 1.1s .35s both}.service-detail .detail-image,.story-image,.gallery-image{clip-path:inset(0 0 0 0);transition:clip-path .8s cubic-bezier(.2,.7,.2,1)}.service-detail:not(.visible) .detail-image{clip-path:inset(0 0 0 8%)}@keyframes fade-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-arrive{from{clip-path:inset(0 0 0 100%);transform:scale(1.08)}to{clip-path:inset(0);transform:scale(1)}}@keyframes frame-in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slow-zoom{from{transform:scale(1)}to{transform:scale(1.075)}}@keyframes orbit-in{from{opacity:0;transform:rotate(-20deg) scale(.75)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes ticker-scroll{to{transform:translateX(-50%)}}@keyframes arrow-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal-item{opacity:1;transform:none}}
