.return-banner {
            /* Positioning */
            position: fixed;
            bottom: 20px;
            left: 20px;
            z-index: 1000;

            /* Sizing & Appearance */
            display: block;
            width: 90px;
            height: 90px;
            border-radius: 50%;
            text-decoration: none;
            
            /* Visual Effects */
            background-color: rgba(255, 105, 180, 0.1);
            border: 2px solid rgba(255, 105, 180, 0.5);
            box-shadow: 0 0 15px rgba(255, 105, 180, 0.5), 
                        0 0 25px rgba(255, 105, 180, 0.3),
                        inset 0 0 10px rgba(255, 105, 180, 0.2);
            backdrop-filter: blur(8px);

            /* Animation & Transition */
            animation: gentle-float 6s ease-in-out infinite;
            transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), 
                        box-shadow 0.4s ease;
        }

        .return-banner:hover {
            transform: scale(1.15) translateY(-5px);
            box-shadow: 0 0 25px rgba(255, 20, 147, 0.7), 
                        0 0 40px rgba(255, 20, 147, 0.5),
                        inset 0 0 15px rgba(255, 105, 180, 0.4);
        }

        /* Image inside the banner */
        .return-img {
            width: 100%;
            height: 100%;
            object-fit: cover; /* Ensures the image covers the circle without distortion */
            border-radius: 50%;
            transform: scale(1.05); /* Slightly bigger to avoid thin edges */
            transition: transform 0.4s ease;
        }
        
        .return-banner:hover .return-img {
             transform: scale(1.1);
        }

        /* --- Particle Effect Container --- */
        .particles {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none; /* Allows clicks to go through to the link */
        }

        /* Individual Particle Styling */
        .particle {
            position: absolute;
            background: #ff69b4;
            border-radius: 50%;
            opacity: 0;
            animation: burst 0.8s ease-out forwards;
        }

        /* --- Draggable State (Mobile) --- */
        .return-banner.draggable {
            cursor: grab;
        }

        .return-banner.dragging {
            cursor: grabbing;
            animation-play-state: paused; /* Pause floating while dragging */
            box-shadow: 0 0 30px rgba(69, 243, 255, 0.8), /* Change glow to indicate dragging */
                        0 0 50px rgba(69, 243, 255, 0.6);
            border-color: rgba(69, 243, 255, 0.8);
        }
        
        /* Drag hint icon for mobile */
        .drag-hint {
            position: absolute;
            top: -10px;
            right: -10px;
            background-color: rgba(69, 243, 255, 0.8);
            color: white;
            width: 28px;
            height: 28px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            opacity: 0;
            transition: opacity 0.3s ease;
            pointer-events: none; /* Don't let it interfere with drag */
        }

        /* --- Keyframe Animations --- */
        @keyframes gentle-float {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-15px); }
        }

        @keyframes burst {
            0% {
                transform: translate(0, 0) scale(0);
                opacity: 1;
            }
            100% {
                transform: var(--transform-end) scale(1);
                opacity: 0;
            }
        }

        /* --- Mobile-Specific Styles (max-width: 768px) --- */
        @media (max-width: 768px) {
            h1 {
                font-size: 2.2rem;
            }
            
            .return-banner {
                /* Make it smaller for mobile */
                width: 75px;
                height: 75px;
                /* Adjust position to be more accessible */
                bottom: 25px;
                left: 15px;
            }
            
            .drag-hint {
                 /* Show the drag hint icon on mobile */
                opacity: 0.9;
            }
        }