/* A physical architectural model settles into the light. Icons keep their original paths. */
@keyframes vault-text{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes vault-illuminate{from{opacity:.15;transform:scale(.9)}to{opacity:.82;transform:scale(1)}}
@keyframes model-settle{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){html[data-motion="on"] .vault-title{animation:vault-text 850ms var(--ease) 100ms both}html[data-motion="on"] .vault-light{animation:vault-illuminate 1600ms var(--ease) both}html[data-motion="on"] .model-photo{animation:model-settle 1100ms var(--ease) 220ms both}html[data-motion="on"] .reveal-ready{transition:opacity 700ms var(--ease);transition-delay:var(--reveal-delay,0ms)}html[data-motion="on"] .reveal-pending{opacity:0;transition:none}html[data-motion="on"] .reveal-instant{transition:none;opacity:1}}

html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-pending{opacity:1!important;transform:none!important}.project-card:hover img{transform:none}.text-link:hover .arrow,.underlined:hover .icon,.project-story summary:hover .icon{transform:none}}
