        body {
            font-family: 'Inter', sans-serif;
            overflow-x: hidden;
        }
        .font-script {
            font-family: 'Dancing Script', cursive;
        }
        .gradient-text {
            background: linear-gradient(135deg, #ff6b6b, #ff8e8e, #ffb4b4, #ffd4d4);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .heart-float {
            position: absolute;
            animation: float 6s ease-in-out infinite;
            opacity: 0.6;
        }
        @keyframes float {
            0%, 100% { transform: translateY(0) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(5deg); }
        }
        .pulse-heart {
            animation: pulse 2s ease-in-out infinite;
        }
        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.1); }
        }
        .glass-card {
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }
        .reveal-text {
            opacity: 0;
            transform: translateY(30px);
        }
        .photo-hover {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .photo-hover:hover {
            transform: translateY(-5px) scale(1.02);
            box-shadow: 0 20px 40px rgba(255, 107, 107, 0.3);
        }
        #hearts-container {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
            z-index: 0;
        }
        .floating-heart {
            position: absolute;
            color: #ff6b6b;
            animation: floatUp 4s linear forwards;
            pointer-events: none;
        }
        @keyframes floatUp {
            0% {
                opacity: 1;
                transform: translateY(100vh) scale(0);
            }
            10% {
                opacity: 1;
                transform: translateY(90vh) scale(1);
            }
            90% {
                opacity: 1;
            }
            100% {
                opacity: 0;
                transform: translateY(-10vh) scale(1.5);
            }
        }
        .reason-card {
            transition: all 0.4s ease;
        }
        .reason-card:hover {
            transform: translateY(-10px);
            background: linear-gradient(135deg, #fff5f5, #ffe0e0);
        }
        .love-letter {
            background: linear-gradient(135deg, #fff9f9 0%, #fff0f0 100%);
            box-shadow: 0 10px 40px rgba(255, 107, 107, 0.1);
        }
        .btn-love {
            background: linear-gradient(135deg, #ff6b6b, #ff8e8e);
            transition: all 0.3s ease;
        }
        .btn-love:hover {
            transform: scale(1.05);
            box-shadow: 0 10px 30px rgba(255, 107, 107, 0.4);
        }
        .separator {
            height: 2px;
            background: linear-gradient(90deg, transparent, #ff6b6b, transparent);
        }