.reveal-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}@keyframes floatDelayed{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(-3deg)}}.animate-fade-in{animation:fadeIn .8s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .8s ease-out forwards;opacity:0}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-delayed{animation:floatDelayed 8s ease-in-out infinite;animation-delay:2s}.animation-delay-200{animation-delay:.2s}.animation-delay-300{animation-delay:.3s}.animation-delay-400{animation-delay:.4s}.animation-delay-500{animation-delay:.5s}.nav-link.active{color:#7a1f1f;font-weight:700;border-bottom:2px solid #7a1f1f;padding-bottom:2px}header.scrolled{box-shadow:0 4px 20px #00000014}#mobile-menu.open{transform:translate(0)}.countdown-unit .flex{transition:transform .3s ease}.countdown-unit.flip .flex{transform:scale(1.1)}.day-tab{cursor:pointer;transition:all .2s ease}.day-tab.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#7a1f1f;font-weight:700}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e6;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}.lightbox-overlay.active{opacity:1;pointer-events:all}.lightbox-overlay img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #00000080}.lightbox-close{position:absolute;top:20px;right:20px;color:#fff;cursor:pointer;opacity:.7;transition:opacity .2s}.lightbox-close:hover{opacity:1}html{scroll-behavior:smooth;scroll-padding-top:80px}.ornamental-divider{display:flex;align-items:center;gap:1rem;color:#d4af37;opacity:.4}.ornamental-divider:before,.ornamental-divider:after{content:"";flex:1;height:1px;background:linear-gradient(to right,transparent,#d4af37,transparent)}::selection{background:#d4af37;color:#521414}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#faf8f5}::-webkit-scrollbar-thumb{background:#d3c2c4;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#7a1f1f}
