/* Progressive motion on the approved Prism artwork only. */
.has-hero-motion::before { animation:prism-art-breathe 22s ease-in-out infinite; will-change:transform; transform-origin:55% 45%; }
.hero-shard { position:absolute; display:block; width:95px; height:140px; z-index:-1; pointer-events:none; opacity:.55; transform:rotate(15deg); animation:prism-shard-float 13s ease-in-out infinite; filter:drop-shadow(0 14px 18px rgba(0,0,0,.35)); }
.hero-shard i { position:absolute; inset:0; display:block; }
.hero-shard i:nth-child(1) { background:linear-gradient(125deg,#d7e2ef99,#5e728b33 60%,#c4d8eb55); clip-path:polygon(45% 0,95% 25%,67% 100%,0 69%); }
.hero-shard i:nth-child(2) { background:linear-gradient(90deg,#ecf4ff88,#2b3d5944); clip-path:polygon(45% 0,67% 100%,25% 55%); }
.hero-shard i:nth-child(3) { background:linear-gradient(160deg,#fff9,#ff994722 55%,#17294344); clip-path:polygon(45% 0,95% 25%,25% 55%,0 69%); }
.hero-shard-1 { top:-28px; right:10%; animation-duration:14s; }
.hero-shard-2 { top:118px; left:-2%; width:50px; height:78px; animation-delay:-4s; animation-duration:18s; opacity:.4; }
.hero-shard-3 { right:-3%; bottom:46px; width:70px; height:105px; animation-delay:-7s; animation-duration:16s; opacity:.38; }
.hero-motion-toggle { position:absolute; right:12px; top:16px; z-index:3; display:inline-flex; align-items:center; gap:7px; min-height:34px; padding:7px 11px; border:1px solid #63708466; border-radius:999px; color:#edf3fb; background:#131a25e8; font:inherit; font-size:10px; cursor:pointer; }
.hero-motion-toggle svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2; }
.hero-motion-toggle:hover { border-color:#c8d5e4; background:#252e3b; }
.hero-motion-toggle:disabled { color:#b8c3d3; cursor:default; }
.has-hero-motion[data-motion="paused"]::before,.has-hero-motion[data-motion="paused"] .hero-shard { animation-play-state:paused; }
@keyframes prism-art-breathe { 0%,100% { transform:translate3d(0,0,0) scale(1); } 50% { transform:translate3d(7px,-9px,0) scale(1.025) rotate(.65deg); } }
@keyframes prism-shard-float { 0%,100% { transform:translate3d(0,0,0) rotate(15deg); } 50% { transform:translate3d(-11px,-17px,0) rotate(26deg); } }
@media(max-width:860px) { .hero-motion-toggle { top:0; right:6px; } .hero-shard-1 { top:18px; right:8%; width:64px; height:92px; } .hero-shard-2 { left:4%; top:76px; width:38px; height:56px; } .hero-shard-3 { right:0; bottom:56px; width:40px; height:64px; } }
@media(prefers-reduced-motion:reduce) { .has-hero-motion::before,.hero-shard { animation:none!important; will-change:auto; } }
