
    /* Animated Background Orbs - Subtle */
    .orb {
        position: absolute;
        border-radius: 50%;
        filter: blur(120px);
        opacity: 0.15;
        animation: float 30s ease-in-out infinite;
    }
    .orb-1 { width: 300px; height: 300px; background: #ff6b6b; top: -150px; left: -150px; animation-delay: 0s; }
    .orb-2 { width: 250px; height: 250px; background: #a55eea; bottom: 10%; right: -100px; animation-delay: -5s; }
    .orb-3 { width: 200px; height: 200px; background: #00d2d3; top: 60%; left: -50px; animation-delay: -10s; }

    @keyframes float {
        0%, 100% { transform: translate(0, 0) scale(1); }
        25% { transform: translate(30px, -30px) scale(1.05); }
        50% { transform: translate(-20px, 20px) scale(0.95); }
        75% { transform: translate(-30px, -20px) scale(1.02); }
    }

    /* Glass Card Effect */
    .glass-card {
        background: linear-gradient(135deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.02) 100%);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        border: 1px solid rgba(255,255,255,0.08);
    }

    .glass-card-hover:hover {
        background: linear-gradient(135deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.04) 100%);
        border-color: rgba(255,255,255,0.15);
    }

    /* Featured Card Glow - Subtle */
    .featured-glow {
        box-shadow:
            0 0 40px -10px rgba(255, 107, 107, 0.25),
            0 25px 50px -12px rgba(0, 0, 0, 0.5);
        border: 1px solid rgba(255, 107, 107, 0.3);
    }

    .featured-glow:hover {
        box-shadow:
            0 0 50px -10px rgba(255, 107, 107, 0.35),
            0 25px 50px -12px rgba(0, 0, 0, 0.6);
        border-color: rgba(255, 107, 107, 0.5);
    }

    /* Featured Border */
    .gradient-border {
        position: relative;
    }

    /* Animated Gradient Price */
    .price-gradient {
        background: linear-gradient(90deg, #ff6b6b, #f368e0, #a55eea, #00d2d3, #ff6b6b);
        background-size: 300% 100%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        animation: priceGradientFlow 6s ease infinite;
    }

    .price-gradient-emerald {
        background: linear-gradient(90deg, #10b981, #14b8a6, #06b6d4, #10b981);
        background-size: 300% 100%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        animation: priceGradientFlow 6s ease infinite;
    }

    @keyframes priceGradientFlow {
        0% { background-position: 0% 50%; }
        50% { background-position: 100% 50%; }
        100% { background-position: 0% 50%; }
    }

    /* Card Hover Effects */
    .plan-card-inner {
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .plan-card:hover .plan-card-inner {
        border-color: rgba(255, 255, 255, 0.2);
    }

    .plan-card:hover .card-glow {
        opacity: 1;
    }

    .card-glow {
        position: absolute;
        inset: 0;
        background: radial-gradient(circle at 50% 0%, rgba(255,255,255,0.08) 0%, transparent 60%);
        opacity: 0;
        transition: opacity 0.4s ease;
        pointer-events: none;
        border-radius: 24px;
    }

    /* Hover border glow */
    .plan-card:hover .glass-card {
        border-color: rgba(255, 255, 255, 0.15);
        box-shadow: 0 0 30px -10px rgba(255, 255, 255, 0.1);
    }

    .plan-card:hover .featured-glow {
        border-color: rgba(255, 107, 107, 0.5);
        box-shadow: 0 0 50px -10px rgba(255, 107, 107, 0.4), 0 25px 50px -12px rgba(0, 0, 0, 0.6);
    }

    /* Icon pulse on hover */
    .plan-card:hover .feature-icon {
        transform: scale(1.1);
    }

    .feature-icon {
        transition: transform 0.3s ease;
    }

    /* Shine Effect on Button */
    .btn-shine {
        position: relative;
        overflow: hidden;
    }
    .btn-shine::after {
        content: '';
        position: absolute;
        top: -50%;
        left: -50%;
        width: 200%;
        height: 200%;
        background: linear-gradient(45deg, transparent 30%, rgba(255,255,255,0.2) 50%, transparent 70%);
        transform: translateX(-100%) rotate(45deg);
        transition: none;
    }
    .btn-shine:hover::after {
        animation: shine 0.6s ease forwards;
    }
    /* The secondary plan uses a white surface; keep its label readable when
       the global link hover colour is applied. */
    .btn-shine.bg-white,
    .btn-shine.bg-white:hover,
    .btn-shine.bg-white:focus-visible {
        color: #18181b !important;
    }
    @keyframes shine {
        to { transform: translateX(100%) rotate(45deg); }
    }

    /* Feature Check Animation */
    .feature-item {
        opacity: 0;
        transform: translateX(-10px);
    }
    .feature-item.visible {
        animation: slideIn 0.4s ease forwards;
    }
    @keyframes slideIn {
        to { opacity: 1; transform: translateX(0); }
    }

    /* Cycle Selector Pills */
    .cycle-pill {
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .cycle-pill.active {
        background: #ff6b6b;
    }

    /* Scroll Animations */
    .plan-card {
        opacity: 0;
        transform: translateY(30px);
        animation: fadeUp 0.6s ease forwards;
    }
    .plan-card:nth-child(1) { animation-delay: 0.1s; }
    .plan-card:nth-child(2) { animation-delay: 0.2s; }
    .plan-card:nth-child(3) { animation-delay: 0.3s; }
    .plan-card:nth-child(4) { animation-delay: 0.4s; }

    @keyframes fadeUp {
        to { opacity: 1; transform: translateY(0); }
    }
