.invita-scene{perspective:1200px}.invita-envelope{position:absolute;width:var(--w,120px);aspect-ratio:3/2;transform-style:preserve-3d;animation:invita-float var(--dur,14s) ease-in-out var(--delay,0s) infinite alternate}.invita-envelope__back,.invita-envelope__body,.invita-envelope__flap{position:absolute;inset:0;border-radius:6px;backface-visibility:hidden}.invita-envelope__body{background:var(--paper);box-shadow:0 18px 40px -18px rgba(0,0,0,.35)}.invita-envelope__flap{background:var(--flap);clip-path:polygon(0 0,100% 0,50% 58%);transform-origin:top center;animation:invita-flap var(--dur,14s) ease-in-out var(--delay,0s) infinite alternate}.invita-envelope__back{background:var(--flap);transform:rotateY(180deg)}.invita-envelope__seal{position:absolute;left:50%;top:52%;width:22%;aspect-ratio:1;border-radius:9999px;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--seal) 70%,white),var(--seal));transform:translate(-50%,-50%) translateZ(2px)}@keyframes invita-float{0%{transform:translateZ(0) rotateX(var(--rx,18deg)) rotateY(var(--ry,-24deg)) rotate(var(--rz,-6deg))}to{transform:translate3d(var(--dx,18px),var(--dy,-26px),40px) rotateX(calc(var(--rx, 18deg) * -.6)) rotateY(calc(var(--ry, -24deg) * -1)) rotate(calc(var(--rz, -6deg) * -1))}}@keyframes invita-flap{0%,55%{transform:rotateX(0deg)}to{transform:rotateX(160deg)}}.invita-shine{background:linear-gradient(100deg,var(--v2-accent) 30%,color-mix(in srgb,var(--v2-accent) 40%,white) 50%,var(--v2-accent) 70%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:invita-shine 6s ease-in-out infinite}@keyframes invita-shine{0%,60%{background-position:100% 0}to{background-position:0 0}}.invita-tilt{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s;transform:perspective(900px) rotateX(0) rotateY(0)}.invita-tilt:hover{transform:perspective(900px) rotateX(6deg) rotateY(-8deg) translateY(-4px);box-shadow:0 30px 50px -30px rgba(0,0,0,.45)}@media (prefers-reduced-motion:reduce){.invita-envelope,.invita-envelope__flap,.invita-shine{animation:none}.invita-shine{color:var(--v2-accent);background:none}.invita-tilt,.invita-tilt:hover{transition:none;transform:none}}.invita-marquee{animation:invita-marquee 40s linear infinite}@keyframes invita-marquee{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.invita-marquee{animation:none}}