        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Lato', sans-serif;
            overflow-x: hidden;
        }

        h1, h2, h3, h4 {
            font-family: 'Playfair Display', serif;
        }

        /* Custom Colors */
        .bg-primary { background-color: #f8f5f0; }
        .bg-gold { background-color: #d4af37; }
        .bg-gold-light { background-color: #f4e5c2; }
        .text-gold { color: #d4af37; }
        .text-gold-dark { color: #b8922f; }
        .border-gold { border-color: #d4af37; }

        /* Floral Decorations */
        .floral-left {
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 120px;
            opacity: 0.15;
            pointer-events: none;
        }

        .floral-right {
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%) scaleX(-1);
            width: 120px;
            opacity: 0.15;
            pointer-events: none;
        }

        .floral-corner-tl {
            position: absolute;
            left: 0;
            top: 0;
            width: 150px;
            opacity: 0.2;
            pointer-events: none;
        }

        .floral-corner-br {
            position: absolute;
            right: 0;
            bottom: 0;
            width: 150px;
            opacity: 0.2;
            transform: rotate(180deg);
            pointer-events: none;
        }

        /* Cover Animations */
        #cover {
            background: linear-gradient(135deg, #f4e5c2 0%, #e8d5a8 100%);
            transition: opacity 0.8s ease, visibility 0.8s ease;
        }

        #cover.hidden {
            opacity: 0;
            visibility: hidden;
        }

        .fade-in {
            animation: fadeIn 1s ease-in;
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .float {
            animation: float 3s ease-in-out infinite;
        }

        @keyframes float {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-10px); }
        }

        /* Music Control */
        .music-btn {
            transition: all 0.3s ease;
        }

        .music-btn:hover {
            transform: scale(1.1);
        }

        /* Divider */
        .divider {
            width: 60px;
            height: 2px;
            background: #d4af37;
            margin: 1rem auto;
        }

        /* Smooth Scroll */
        html {
            scroll-behavior: smooth;
        }

        /* Custom spacing for mobile */
        @media (max-width: 640px) {
            .floral-left, .floral-right {
                width: 80px;
            }
            .floral-corner-tl, .floral-corner-br {
                width: 100px;
            }
        }

        /* Map responsive */
        .map-responsive {
            overflow: hidden;
            padding-bottom: 56.25%;
            position: relative;
            height: 0;
        }

        .map-responsive iframe {
            left: 0;
            top: 0;
            height: 100%;
            width: 100%;
            position: absolute;
        }

        /* Ornament SVG */
        .ornament-svg {
            width: 100px;
            height: auto;
            margin: 0 auto;
        }