Rechargeable Cute Dancing and Talking Cactus - Large

Rechargeable Cute Dancing and Talking Cactus - Large

<!DOCTYPE html>
<html lang="ur">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
    @import url('https://fonts.googleapis.com/css2?family=Fredoka+One&family=Quicksand:wght@500;700&display=swap');

    .cactus-container {
        font-family: 'Quicksand', sans-serif;
        max-width: 600px;
        margin: 20px auto;
        background: #fffdf6;
        color: #333;
        border-radius: 20px;
        padding: 30px;
        box-shadow: 0 15px 35px rgba(46, 204, 113, 0.15);
        border: 2px solid #e8f8f0;
        position: relative;
        overflow: hidden;
    }

    /* Status Bar (Sale & Live Viewers) */
    .status-bar {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 25px;
    }

    .sale-badge {
        background: linear-gradient(135deg, #ff7675, #d63031);
        color: white;
        font-family: 'Fredoka One', cursive;
        padding: 8px 18px;
        font-size: 0.95rem;
        border-radius: 50px;
        letter-spacing: 0.5px;
        animation: swing 2s infinite ease-in-out;
        box-shadow: 0 5px 15px rgba(214, 48, 49, 0.3);
    }

    .live-visitors {
        display: flex;
        align-items: center;
        font-size: 0.95rem;
        color: #2ecc71;
        font-weight: 700;
    }

    .pulse-dot {
        width: 10px;
        height: 10px;
        background-color: #2ecc71;
        border-radius: 50%;
        margin-right: 8px;
        display: inline-block;
        box-shadow: 0 0 10px #2ecc71;
        animation: heartBeat 1.4s infinite;
    }

    /* Cute Titles */
    .product-title {
        font-family: 'Fredoka One', cursive;
        font-size: 1.8rem;
        color: #27ae60;
        line-height: 1.3;
        margin-bottom: 8px;
        text-shadow: 1px 1px 0px #fff, 2px 2px 0px #e8f8f0;
    }

    .size-tag {
        display: inline-block;
        background: #ffeaa7;
        color: #d35400;
        font-weight: 700;
        padding: 3px 12px;
        border-radius: 6px;
        font-size: 0.85rem;
        text-transform: uppercase;
        margin-bottom: 20px;
    }

    /* Playful Description Text */
    .fun-desc {
        font-size: 1.05rem;
        line-height: 1.6;
        color: #555;
        margin-bottom: 25px;
    }

    /* Features List with Bouncy Animation */
    .cactus-features {
        list-style: none;
        padding: 0;
        margin: 25px 0;
    }

    .cactus-features li {
        margin-bottom: 15px;
        font-size: 1.05rem;
        color: #444;
        padding-left: 35px;
        position: relative;
        opacity: 0;
        transform: scale(0.8);
        animation: bounceIn 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .cactus-features li::before {
        content: '🌵';
        position: absolute;
        left: 0;
        font-size: 1.2rem;
        top: -2px;
    }

    /* Staggered animation delays */
    .cactus-features li:nth-child(1) { animation-delay: 0.2s; }
    .cactus-features li:nth-child(2) { animation-delay: 0.4s; }
    .cactus-features li:nth-child(3) { animation-delay: 0.6s; }
    .cactus-features li:nth-child(4) { animation-delay: 0.8s; }

    /* Fun Colorful Button */
    .order-btn {
        display: block;
        width: 100%;
        background: linear-gradient(135deg, #1abc9c, #2ecc71);
        color: white;
        font-family: 'Fredoka One', cursive;
        font-size: 1.2rem;
        padding: 16px;
        border: none;
        border-radius: 12px;
        cursor: pointer;
        letter-spacing: 1px;
        transition: all 0.3s ease;
        box-shadow: 0 6px 20px rgba(46, 204, 113, 0.3);
        text-align: center;
    }

    .order-btn:hover {
        transform: translateY(-4px) scale(1.01);
        box-shadow: 0 10px 25px rgba(46, 204, 113, 0.5);
        background: linear-gradient(135deg, #2ecc71, #1abc9c);
    }

    /* Animations */
    @keyframes swing {
        0%, 100% { transform: rotate(-3deg); }
        50% { transform: rotate(3deg); }
    }

    @keyframes heartBeat {
        0% { transform: scale(1); opacity: 1; }
        50% { transform: scale(1.3); opacity: 0.7; }
        100% { transform: scale(1); opacity: 1; }
    }

    @keyframes bounceIn {
        to {
            opacity: 1;
            transform: scale(1);
        }
    }
</style>
</head>
<body>

<div class="cactus-container">
    
    <!-- Status Bar -->
    <div class="status-bar">
        <div class="sale-badge">🎉 30% OFF LIVE</div>
        <div class="live-visitors">
            <span class="pulse-dot"></span>
            <span id="live-counter-val">114</span> moms looking now
        </div>
    </div>

    <!-- Titles -->
    <h1 class="product-title">Rechargeable Cute Dancing & Talking Cactus</h1>
    <span class="size-tag">Premium Large Edition</span>

    <hr style="border: 0; height: 1px; background: linear-gradient(90deg, #fff, #2ecc71, #fff); margin: 20px 0;">

    <!-- Description -->
    <p class="fun-desc">
        Bring endless laughter to your home! This adorable, upgraded Large Cactus plush toy dances to the beat, glows with colorful lights, and mimics whatever you say in a hilarious voice. Best of all? It's fully rechargeable—no more wasting money on constant battery replacements!
    </p>

    <!-- Animated Features -->
    <ul class="cactus-features">
        <li><strong>Mimics & Talks Back:</strong> Speaks right back to you with a funny, high-pitched voice.</li>
        <li><strong>120+ Built-in Tracks:</strong> Dances and grooves to a massive library of cheerful tunes.</li>
        <li><strong>USB Rechargeable:</strong> Comes with a charging cable for non-stop, eco-friendly playtime.</li>
        <li><strong>Soft & Safe Glow:</strong> Crafted from non-toxic plush fabric with gentle built-in LED lights.</li>
    </ul>

    <!-- Action Button -->
    <button class="order-btn">Adopt Your Cactus Today!</button>

</div>

<!-- JavaScript for Dynamic Live Counter -->
<script>
    const counterElement = document.getElementById('live-counter-val');
    setInterval(() => {
        let currentCount = parseInt(counterElement.innerText);
        // Randomly fluctuates the numbers up or down
        let change = Math.floor(Math.random() * 9) - 4; // generates -4 to +4
        let finalCount = currentCount + change;
        
        // Keeps the numbers looking natural for a popular item (between 95 and 140)
        if(finalCount < 95) finalCount = 104;
        if(finalCount > 140) finalCount = 121;
        
        counterElement.innerText = finalCount;
    }, 2000); // updates every 2 seconds
</script>

</body>
</html>

Back to blog