/* 
  Styles for Wedding Invitation Website
  Author: Asad Mirza
  GitHub: https://github.com/asadmirza-34
*/

.font-serif-modern { font-family: 'Instrument Serif', serif; }
        .font-sans-modern { font-family: 'Manrope', sans-serif; }
        
        .fade-in-up {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .fade-in-up.is-visible {
            opacity: 1;
            transform: translateY(0);
        }

        .marquee-container { overflow: hidden; white-space: nowrap; }
        .marquee-content { display: inline-block; animation: marquee 20s linear infinite; }
        @keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-track { background: transparent; }
        ::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }
        ::-webkit-scrollbar-thumb:hover { background: #9ca3af; }

        #lightbox { transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
        #lightbox.open { opacity: 1; pointer-events: auto; transform: scale(1); }
        #lightbox.closed { opacity: 0; pointer-events: none; transform: scale(0.95); }

        .loading-screen {
            position: fixed;
            inset: 0;
            z-index: 50;
            background: #fff;
            display: flex;
            justify-content: center;
            align-items: center;
            transition: opacity 0.6s ease-out;
        }
        .loaded .loading-screen { opacity: 0; pointer-events: none; }