/* ============ AME 3D EXPERIENCE — shared effects (2026-06-13) ============ */
#ame3d-stars{position:fixed;inset:0;z-index:-1;pointer-events:none;display:block;}
#ame3d-hero{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:1;transition:opacity .6s;}
#ame3d-hero.a3d-off{opacity:0;}
#pg-landing>section,#pg-landing>div:not(.hero){position:relative;z-index:2;}
html.a3d .a3d-card{transform-style:preserve-3d;will-change:transform;transition:transform .16s ease-out,box-shadow .35s;}
html.a3d .a3d-card:hover{box-shadow:0 26px 60px rgba(0,0,0,.55),0 0 30px rgba(212,175,55,.10);}
.a3d-glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;opacity:0;transition:opacity .25s;
background:radial-gradient(460px circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.11),rgba(255,255,255,0) 58%);}
html.a3d .a3d-card:hover .a3d-glare{opacity:1;}
html.a3d.a3d-motion .a3d-rev{opacity:0;transform:perspective(900px) translateY(36px) rotateX(8deg) scale(.984);
transition:opacity .75s cubic-bezier(.2,.65,.25,1),transform .75s cubic-bezier(.2,.65,.25,1);transition-delay:var(--a3d-d,0ms);will-change:transform,opacity;}
html.a3d.a3d-motion .a3d-rev.a3d-in{opacity:1;transform:perspective(900px) translateY(0) rotateX(0) scale(1);}
html.a3d .a3d-float{animation:a3dFloat 7s ease-in-out infinite;}
@keyframes a3dFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(prefers-reduced-motion:reduce){
 html.a3d .a3d-float{animation:none;}
 html.a3d.a3d-motion .a3d-rev{transform:none;transition:opacity .5s;}
}