html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
.hero-orb { position: absolute; border-radius: 9999px; filter: blur(2px); opacity: .55; pointer-events: none; }
.hero-orb-one { width: 280px; height: 280px; top: 8rem; right: -7rem; background: #eadcff; }
.hero-orb-two { width: 170px; height: 170px; bottom: 4rem; left: -5rem; background: #ffe4c7; }
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay { transition-delay: .14s; }
.feature-card { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.feature-card:hover { transform: translateY(-5px); border-color: #dfcdfd; box-shadow: 0 16px 35px rgba(42, 8, 92, .1); }
.dashboard-card { animation: floatCard 5s ease-in-out infinite; }
.float-badge { animation: floatBadge 4s ease-in-out infinite; }
.cheque-mock { background: linear-gradient(135deg, #fffdf1, #f8f3d9); }
.printer-stage { position: relative; min-height: 330px; background: linear-gradient(145deg, #fff, #f6f1ff); }
.printer-top { position: absolute; top: 28px; left: 18%; right: 18%; display: flex; justify-content: flex-end; gap: 7px; }
.printer-top span { width: 9px; height: 9px; border-radius: 999px; background: #ff7a00; }
.printer-top span:nth-child(2) { background: #b7a5df; }
.printer-top span:nth-child(3) { background: #2a085c; }
.paper-sheet { position: absolute; top: 45px; left: 24%; width: 52%; min-height: 160px; padding: 18px; border-radius: 8px 8px 2px 2px; background: #fffdf2; box-shadow: 0 8px 20px rgba(42,8,92,.12); transform: rotate(-2deg); animation: paperMove 4.5s ease-in-out infinite; }
.paper-title { color: #2a085c; font-size: 13px; font-weight: 900; }
.paper-line { height: 6px; margin-top: 12px; border-radius: 5px; background: #c9b8ec; }
.paper-box { width: 70px; height: 28px; margin: 16px 0 0 auto; border: 2px solid #2a085c; border-radius: 4px; }
.printer-body { position: absolute; left: 10%; right: 10%; bottom: 30px; height: 130px; border-radius: 20px 20px 12px 12px; background: #2a085c; box-shadow: 0 15px 25px rgba(42,8,92,.2); }
.printer-slot { position: absolute; top: 28px; left: 12%; right: 12%; height: 13px; border-radius: 12px; background: #160334; box-shadow: inset 0 2px 5px rgba(0,0,0,.4); }
.printer-display { position: absolute; right: 12%; bottom: 23px; display: flex; align-items: center; gap: 5px; color: #ffb36b; font-size: 9px; font-weight: 800; }
.gallery-card { transition: transform .25s ease, box-shadow .25s ease; }
.gallery-card:hover { transform: translateY(-6px); box-shadow: 0 18px 35px rgba(42,8,92,.12); }
@keyframes paperMove { 0%, 100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-8px) rotate(1deg); } }
@keyframes floatCard { 0%, 100% { transform: translateY(0) rotate(.3deg); } 50% { transform: translateY(-8px) rotate(-.3deg); } }
@keyframes floatBadge { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .reveal { opacity: 1; transform: none; transition: none; }
    .dashboard-card, .float-badge { animation: none; }
    .paper-sheet { animation: none; }
}
