  :root{
            --pastel-pink:#ffeef2;
            --cute-pink:#ffb3c1;
            --bright-red:#ff4d6d;
            --dark-red:#c9184a;
            --cream:#fffaf0;
            --text-color:#5d2a37;

            --header-font:'Playfair Display', serif;
            --body-font:'Poppins', sans-serif;
        }

        *{
            margin:0;
            padding:0;
            box-sizing:border-box;
        }

        body{
            background:linear-gradient(135deg,#fff5f7,#fffaf0);
            font-family:var(--body-font);
            overflow-x:hidden;
            color:var(--text-color);
        }

        .bg-blur{
            position:fixed;
            border-radius:50%;
            filter:blur(100px);
            z-index:-2;
            opacity:0.5;
        }

        .blur1{
            width:300px;
            height:300px;
            background:#ffb3c1;
            top:-100px;
            left:-100px;
        }

        .blur2{
            width:350px;
            height:350px;
            background:#ffd6e0;
            bottom:-120px;
            right:-120px;
        }

        #gift-overlay{
            position:fixed;
            width:100%;
            height:100vh;
            background:linear-gradient(135deg,#ffd6e8,#fff0f5);
            display:flex;
            justify-content:center;
            align-items:center;
            z-index:999;

            transition:
            transform 1.2s ease,
            opacity 1s ease,
            filter 1.2s ease;
        }

        .gift-box{
            font-size:120px;
            cursor:pointer;
            text-align:center;
            animation:wobble 2s infinite;
        }

        .gift-box span{
            display:block;
            font-size:28px;
            color:var(--dark-red);
            font-family:var(--header-font);
        }

        @keyframes wobble{
            0%,100%{
                transform:rotate(0deg);
            }

            50%{
                transform:rotate(6deg) scale(1.05);
            }
        }

        #main-content{
            opacity:0;
            transition:1s;
        }

        nav{
            display:flex;
            justify-content:center;
            gap:15px;
            flex-wrap:wrap;
            padding:18px;

            background:rgba(255,255,255,0.4);
            backdrop-filter:blur(15px);

            position:sticky;
            top:0;
            z-index:100;
        }

        nav button{
            border:none;
            padding:12px 22px;
            border-radius:30px;
            cursor:pointer;

            background:rgba(255,255,255,0.6);
            backdrop-filter:blur(10px);

            color:var(--dark-red);
            font-weight:600;

            transition:0.3s;
        }

        nav button:hover{
            background:var(--bright-red);
            color:white;
            transform:translateY(-3px);
        }

        .page{
            display:none;
            text-align:center;
            padding:50px 20px;
        }

        .page.active{
            display:block;
        }

        .cutest-header{
            font-family:var(--header-font);
            font-size:55px;
            color:var(--dark-red);
            margin-bottom:20px;
        }

        .qr-section img{
            width:180px;
            background:white;
            padding:10px;
            border-radius:25px;
            box-shadow:0 10px 30px rgba(0,0,0,0.1);
            transition:0.4s;
        }

        .qr-section img:hover{
            transform:scale(1.05);
        }

        .qr-section p{
            margin-top:15px;
            font-weight:500;
        }

        .home-quote{
            margin-top:25px;
            font-size:20px;
            font-style:italic;
            color:var(--dark-red);
        }

        .cute-card{
            max-width:650px;
            margin:35px auto;

            background:rgba(255,255,255,0.55);
            backdrop-filter:blur(15px);

            padding:35px;
            border-radius:30px;

            box-shadow:0 10px 30px rgba(0,0,0,0.08);
        }

        .photo-album{
            display:flex;
            justify-content:center;
            flex-wrap:wrap;
            gap:25px;
            margin-top:30px;
        }

        .photo-frame{
            background:rgba(255,255,255,0.6);
            backdrop-filter:blur(10px);

            padding:10px;
            border-radius:20px;

            box-shadow:0 10px 25px rgba(0,0,0,0.1);

            transition:0.4s;
        }

        .photo-frame:hover{
            transform:scale(1.05);
        }

        .photo-frame img{
            width:220px;
            height:280px;
            object-fit:cover;
            border-radius:15px;
        }

        .letter-parchment{
            max-width:700px;
            margin:auto;

            background:rgba(255,255,255,0.55);
            backdrop-filter:blur(15px);

            padding:40px;
            border-radius:30px;

            line-height:1.9;
            text-align:left;

            box-shadow:0 10px 30px rgba(0,0,0,0.08);
        }

        .p-start,
        .p-end{
            font-family:var(--header-font);
            color:var(--dark-red);
        }
        .hearts-container{
            position:fixed;
            width:100%;
            height:100%;
            pointer-events:none;
            z-index:-1;
        }

        @media(max-width:768px){

            .cutest-header{
                font-size:40px;
            }

            .gift-box{
                font-size:90px;
            }

            .photo-frame img{
                width:170px;
                height:220px;
            }
        }