/* Shared 3D motion: short entrances, stable reading and input surfaces. */
.depth-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.depth-heading{perspective:900px}.depth-word{display:inline-block;white-space:nowrap}.depth-letter{display:inline-block;transform-origin:50% 80%}
.depth-visible .depth-letter{animation:letter-depth .85s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--letter-delay,0ms)}
.depth-surface{transform-style:preserve-3d}.depth-surface.depth-visible{animation:surface-depth .8s cubic-bezier(.2,.7,.2,1) both}
.button,.outline-button,.ship-card,.audience-card,.logo img{transition:transform .28s ease,box-shadow .28s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.button:hover,.outline-button:hover{transform:perspective(700px) translateY(-3px) rotateX(5deg);box-shadow:0 10px 24px #27251d20}.ship-card:hover,.audience-card:hover{transform:perspective(1000px) translateY(-5px) rotateX(2deg);box-shadow:0 16px 30px #27251d14}.logo:hover img{transform:perspective(500px) rotateY(-15deg)}}
@keyframes letter-depth{from{opacity:.25;transform:translateY(12px) rotateX(-65deg) translateZ(-15px)}to{opacity:1;transform:none}}
@keyframes surface-depth{from{opacity:.5;transform:perspective(1200px) translateY(20px) rotateX(4deg)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.depth-letter,.depth-surface.depth-visible{animation:none!important;transform:none!important}.button,.outline-button,.ship-card,.audience-card,.logo img{transition:none!important}}
