/* 1. Global Setup */
.hero-premium-light {
    padding: 100px 0 60px;
    min-height: 85vh;
    display: flex;
    align-items: center;
}

/* 2. Background Blobs */
.blob-bg-1 {
    position: absolute; top: -10%; right: -5%; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(255, 0, 122, 0.08) 0%, transparent 70%);
    z-index: 1;
}
.blob-bg-2 {
    position: absolute; bottom: 0; left: -5%; width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(255, 145, 0, 0.05) 0%, transparent 70%);
    z-index: 1;
}

/* 3. Headlines */
.main-headline {
    font-size: 3.6rem;
    color: #0f172a;
    line-height: 1.1;
    letter-spacing: -1.5px;
}
.reflective-title {
    background: linear-gradient(135deg, #ff007a, #ff9100, #ff007a);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shimmer 3s linear infinite;
}
.hero-subtitle { color: #475569; max-width: 500px; font-weight: 400; line-height: 1.6; }

/* NEW: Popular Category Chips (Premium Light Style) */
.category-chip-light {
    padding: 6px 16px;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 30px;
    background: #f8fafc;
    color: #475569;
    border: 1px solid #e2e8f0;
    text-decoration: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.category-chip-light:hover {
    background: rgba(255, 0, 122, 0.05);
    color: #ff007a;
    border-color: rgba(255, 0, 122, 0.2);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 0, 122, 0.08);
}

/* 4. Trusted Section Refined */
.trust-pill {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 10px;
    font-weight: 800;
    color: #94a3b8;
    letter-spacing: 2px;
    display: inline-flex;
    align-items: center;
}
.pulse-dot {
    width: 6px; height: 6px; background: #ff007a;
    border-radius: 50%; margin-right: 10px;
    animation: pulseLabel 2s infinite;
}
.brand-item-box {
    background: #ffffff;
    border: 1px solid #f1f5f9;
    padding: 12px 20px;
    border-radius: 14px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.brand-item-box:hover {
    border-color: rgba(255, 0, 122, 0.2);
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.04);
}
/* ব্র্যান্ড লোগোর জন্য নতুন কালারফুল স্টাইল (হোভার ছাড়া সবসময় কালার থাকবে) */
.brand-img-v2 {
    height: 22px; 
    width: auto; 
    filter: grayscale(0%); /* লোগো সবসময় ফুল কালার থাকবে */
    opacity: 1;            /* কোনো আবছা ভাব থাকবে না, উজ্জ্বল দেখাবে */
    transition: transform 0.3s ease; /* শুধু হালকা নড়াচড়ার জন্য ট্রানজিশন */
}

/* মাউস লোগোর ওপর নিলে জাস্ট সুন্দর একটা জুমিং ইফেক্ট হবে */
.brand-item-box:hover .brand-img-v2 { 
    transform: translateY(-3px); /* হোভার করলে লোগোটি হালকা একটু ওপরে উঠবে */
}
/* 5. Designer Badge */
.designer-badge {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 0, 122, 0.05);
    border: 1px solid rgba(255, 0, 122, 0.1);
    padding: 7px 15px;
    border-radius: 50px;
}
.label-dot { height: 8px; width: 8px; background: #ff007a; border-radius: 50%; margin-right: 10px; }
.label-text { font-size: 13px; font-weight: 700; color: #ff007a; }

/* 6. Search & CTA */
.cta-wrapper {
    background: #ffffff;
    border: 1px solid #f1f5f9;
    border-radius: 18px;
    padding: 6px;
    max-width: 530px;
}
.shadow-premium { box-shadow: 0 10px 25px rgba(0,0,0,0.03); }
.search-input-designer { flex-grow: 1; display: flex; align-items: center; }
.search-input-designer input { border: none !important; box-shadow: none !important; font-weight: 500; }

.btn-designer-get-started {
    background: linear-gradient(135deg, #ff007a, #ff9100);
    color: white; border: none; padding: 14px 28px;
    border-radius: 14px; font-weight: 700;
    transition: 0.3s ease; display: flex; align-items: center;
}
.btn-designer-get-started:hover { 
    box-shadow: 0 10px 20px rgba(255, 0, 122, 0.25); transform: translateY(-2px); 
}

/* 7. Image & Floating Visuals */
.hero-img-main { max-width: 90%; z-index: 2; position: relative; }
.floating-animation { animation: floatAnim 6s ease-in-out infinite; }
.floating-stat-card {
    position: absolute; top: 20%; right: -5%; background: #fff; padding: 12px 18px;
    border-radius: 18px; display: flex; align-items: center; gap: 12px; z-index: 10;
}
.shadow-card { box-shadow: 0 20px 40px rgba(0,0,0,0.1); }
.gradient-bg-box {
    width: 38px; height: 38px; border-radius: 10px;
    background: linear-gradient(135deg, #ff007a, #ff9100);
    color: white; display: flex; align-items: center; justify-content: center;
}
.hero-circle-deco {
    position: absolute; top: 10%; left: -10%; width: 400px; height: 400px;
    background: #eef2f6; border-radius: 50%; z-index: 1;
}

/* 8. WhatsApp Button Style */
.inline-whatsapp-btn {
    background-color: #14C656;
    color: #ffffff !important;
    padding: 14px 32px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-decoration: none !important;
    width: 100%;
    max-width: 340px;
    box-shadow: 0 10px 25px rgba(20, 198, 86, 0.3);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.inline-whatsapp-btn i {
    font-size: 20px;
}
.inline-whatsapp-btn:hover {
    background-color: #11b04c;
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(20, 198, 86, 0.4);
}

/* Animations */
@keyframes shimmer { to { background-position: 200% center; } }
@keyframes floatAnim { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-18px); } }
@keyframes pulseLabel {
    0% { box-shadow: 0 0 0 0 rgba(255, 0, 122, 0.4); }
    70% { box-shadow: 0 0 0 10px rgba(255, 0, 122, 0); }
    100% { box-shadow: 0 0 0 0 rgba(255, 0, 122, 0); }
}

/* Mobile & Tablet Adjustments */
@media (max-width: 991px) {
    .main-headline { font-size: 2.3rem; }
    .hero-premium-light { text-align: center; padding-top: 80px; }
    .hero-subtitle { margin: 0 auto 20px; }
    .floating-stat-card { position: relative; margin: 20px auto 0; right: auto; top: auto; width: fit-content; }
}



 .designer-card {
        background: #ffffff;
        border-radius: 24px;
        padding: 40px 20px;
        text-align: center;
        position: relative;
        z-index: 1;
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        border: 1px solid rgba(0, 0, 0, 0.04);
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .designer-card:hover {
        transform: translateY(-12px);
        border-color: rgba(255, 0, 122, 0.1);
        box-shadow: 0 25px 50px -12px rgba(255, 0, 122, 0.15);
    }

    .designer-icon {
        width: 65px;
        height: 65px;
        background: #fffafa;
        border-radius: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 20px;
        font-size: 28px;
        color: #ff007a; /* Your Pink Theme */
        transition: all 0.5s ease;
        box-shadow: inset 0 0 0 1px rgba(255, 0, 122, 0.05);
    }

    .designer-card:hover .designer-icon {
        background: linear-gradient(135deg, #ff007a, #ff9100);
        color: #ffffff;
        transform: rotateY(360deg);
        box-shadow: 0 10px 20px rgba(255, 0, 122, 0.2);
    }

    /* Fixed Static Numbers - No more NaN */
    .designer-number {
        font-size: 2.5rem;
        font-weight: 800;
        margin-bottom: 8px;
        background: linear-gradient(135deg, #ff007a, #ff9100);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        letter-spacing: -1px;
    }

    .designer-text {
        font-size: 0.9rem;
        color: #64748b;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1.5px;
        margin: 0;
    }

    /* Background Glow Effect */
    .designer-glow {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: radial-gradient(circle at center, rgba(255, 0, 122, 0.05) 0%, transparent 70%);
        opacity: 0;
        transition: opacity 0.5s ease;
        z-index: -1;
        border-radius: 24px;
    }

    .designer-card:hover .designer-glow {
        opacity: 1;
    }

    /* Mobile Responsive Scaling */
    @media (max-width: 991px) {
        .designer-number { font-size: 1.8rem; }
        .designer-card { padding: 30px 15px; }
        .designer-icon { width: 55px; height: 55px; font-size: 22px; }
    }


      /* Professional Sidebar & Active Color */
    .filter-btn {
        border-radius: 10px !important;
        transition: all 0.3s ease;
        color: #64748b;
        border: none;
        font-weight: 500;
        padding: 12px 16px;
        margin-bottom: 2px;
        background: transparent;
    }
    
    .filter-btn:hover {
        background-color: #fff0f7;
        color: #ff007a;
        padding-left: 20px;
    }
    
    /* Active color changed to Pink-Orange Gradient */
    .filter-btn.active, .nav-pills .nav-link.active {
        background: linear-gradient(135deg, #ff007a, #ff9100) !important;
        color: #fff !important;
        box-shadow: 0 4px 15px rgba(255, 0, 122, 0.25);
    }

    /* Course Card Design */
    .course-card {
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        border: 1px solid rgba(0,0,0,0.02) !important;
    }
    
    .course-card:hover {
        transform: translateY(-10px);
        box-shadow: 0 20px 40px rgba(0,0,0,0.08) !important;
    }

    .course-card img {
        transition: transform 0.6s ease;
    }

    .course-card:hover img {
        transform: scale(1.08);
    }

    /* Professional Buttons with Your Section Colors */
    .action-btn {
        font-size: 0.85rem;
        letter-spacing: 0.5px;
        text-transform: uppercase;
        transition: all 0.3s ease;
    }

    /* Solid Button: Pink-Orange Gradient */
    .btn-primary {
        background: linear-gradient(135deg, #ff007a, #ff9100) !important;
        border: none !important;
    }
    .btn-primary:hover {
        box-shadow: 0 5px 15px rgba(255, 0, 122, 0.3);
        opacity: 0.95;
    }

    /* Outline Button: Pink Color */
    .btn-outline-primary {
        border-color: #ff007a !important;
        color: #ff007a !important;
        background: transparent;
    }

    .btn-outline-primary:hover {
        background-color: #ff007a !important;
        border-color: #ff007a !important;
        color: white !important;
    }

    /* Responsive Adjustments */
    @media (max-width: 991.98px) {
        .filter-group {
            display: flex !important;
            flex-direction: row !important;
            overflow-x: auto;
            white-space: nowrap;
            padding: 5px 0 15px 0;
            -webkit-overflow-scrolling: touch;
        }
        .filter-btn {
            flex: 0 0 auto;
            margin-right: 8px;
            padding: 8px 20px;
        }
        .sticky-top {
            position: relative !important;
            top: 0 !important;
        }
    }



     .text-gradient {
        background: linear-gradient(90deg, #ff007a, #ff9100);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    /* Glassmorphism Card Style */
    .glass-card {
        background: rgba(255, 255, 255, 0.7);
        backdrop-filter: blur(10px);
        border: 1px solid rgba(0, 0, 0, 0.05);
        border-radius: 30px;
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        cursor: pointer;
    }

    .glass-card:hover {
        transform: translateY(-10px) scale(1.02);
        background: #ffffff;
        box-shadow: 0 30px 60px rgba(0, 0, 0, 0.08) !important;
        border-color: #ff007a;
    }

    /* Icon Styling */
    .icon-circle {
        width: 55px;
        height: 55px;
        border-radius: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
        font-size: 1.5rem;
    }

    /* Content Badge */
    .content-badge {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        background: #f1f5f9;
        padding: 8px 16px;
        border-radius: 100px;
        color: #475569;
    }

    .dot {
        width: 8px;
        height: 8px;
        background: #ff007a;
        border-radius: 50%;
        box-shadow: 0 0 10px #ff007a;
        animation: pulse 2s infinite;
    }

    @keyframes pulse {
        0% { transform: scale(1); opacity: 1; }
        50% { transform: scale(1.5); opacity: 0.5; }
        100% { transform: scale(1); opacity: 1; }
    }

    /* Avatar Overlap */
    .ms-n3 { margin-left: -15px !important; }

    /* Responsive Adjustments */
    @media (max-width: 991px) {
        .mt-sm-5 { margin-top: 0 !important; }
        .display-4 { font-size: 2.5rem; }
    }

       /* Continuous Animation Logic */
    .namifly-marquee-wrapper {
        display: flex;
        overflow: hidden;
        user-select: none;
        mask-image: linear-gradient(to right, transparent, black 15%, black 85%, transparent);
        -webkit-mask-image: linear-gradient(to right, transparent, black 15%, black 85%, transparent);
    }

    .namifly-marquee-content {
        display: flex;
        gap: 25px;
        animation: marquee-scroll 40s linear infinite;
        padding: 20px 0;
        flex-shrink: 0;
        min-width: 100%;
        justify-content: space-around;
    }

    @keyframes marquee-scroll {
        from { transform: translateX(0); }
        to { transform: translateX(-100%); }
    }

    /* Professional Box Design */
    .feedback-box {
        flex-shrink: 0;
        width: 320px;
        background: #ffffff;
        border-radius: 20px;
        padding: 30px;
        border: 1px solid rgba(0,0,0,0.06);
        box-shadow: 0 10px 30px rgba(0,0,0,0.02);
        transition: all 0.3s ease;
    }

    .feedback-box:hover {
        border-color: #ff007a;
        transform: translateY(-10px);
        box-shadow: 0 20px 40px rgba(255, 0, 122, 0.1) !important;
    }

    /* প্রতি ৩ নম্বর কার্ডে একটি স্পেশাল অরেঞ্জ বর্ডার জেনারেট হবে */
    .featured-border {
        background: #fff;
        border-bottom: 3px solid #ff9100;
    }

    .stars i { color: #ffc107; font-size: 0.85rem; }
    
    .avatar {
        width: 45px;
        height: 45px;
        border-radius: 12px;
        object-fit: cover;
    }

    .tiny { font-size: 0.65rem; letter-spacing: 0.5px; }
    .italic { font-style: italic; line-height: 1.6; }

    /* Pause on Hover */
    .namifly-marquee-wrapper:hover .namifly-marquee-content {
        animation-play-state: paused;
    }

    @media (max-width: 768px) {
        .feedback-box { width: 280px; padding: 20px; }
        .namifly-marquee-content { animation-duration: 25s; } /* মোবাইলে একটু দ্রুত স্ক্রল হবে */
    }

       /* Path Card Styling */
    .path-card {
        background: #ffffff;
        border: 1px solid rgba(0,0,0,0.05);
        border-radius: 35px;
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        position: relative;
    }

    .path-card:hover {
        transform: translateY(-12px);
        box-shadow: 0 40px 80px rgba(0,0,0,0.08) !important;
        border-color: rgba(255, 0, 122, 0.2);
    }

    /* Icon Box Branding */
    .path-icon-box {
        width: 70px;
        height: 70px;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.8rem;
        color: white;
        flex-shrink: 0;
    }

    .bg-gradient-pink { background: linear-gradient(135deg, #ff007a, #ff5e98); }
    .bg-gradient-orange { background: linear-gradient(135deg, #ff9100, #ffb347); }

    .color-pink { color: #ff007a; }
    .color-orange { color: #ff9100; }

    /* Separator */
    .dot-separator {
        width: 4px;
        height: 4px;
        background: #cbd5e1;
        border-radius: 50%;
    }

    /* Professional Button Main Base */
    .btn-namifly-outline {
        display: inline-block;
        text-align: center;
        text-decoration: none;
        border-radius: 15px;
        transition: all 0.3s ease;
    }

    /* Pink Theme Button Specifics */
    .path-btn-pink {
        border: 2px solid #ff007a;
        color: #ff007a;
    }
    .path-btn-pink:hover {
        background: linear-gradient(90deg, #ff007a, #ff9100);
        color: white;
        border-color: transparent;
        box-shadow: 0 10px 20px rgba(255, 0, 122, 0.2);
    }

    /* Orange Theme Button Specifics */
    .path-btn-orange {
        border: 2px solid #ff9100;
        color: #ff9100;
    }
    .path-btn-orange:hover {
        background: linear-gradient(90deg, #ff9100, #ff007a);
        color: white;
        border-color: transparent;
        box-shadow: 0 10px 20px rgba(255, 145, 0, 0.2);
    }

    @media (max-width: 576px) {
        .path-icon-box { width: 60px; height: 60px; font-size: 1.5rem; }
        .display-5 { font-size: 2.2rem; }
    }


      /* Logo Card Styles */
    .cluster-card {
        background: #ffffff;
        border-radius: 20px;
        padding: 25px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 160px;
        height: 100px;
        border: 1px solid rgba(0,0,0,0.05); /* বর্ডার একটু স্পষ্ট করা হয়েছে */
        transition: all 0.5s cubic-bezier(0.2, 1, 0.3, 1);
        cursor: pointer;
    }

    .cluster-card.large {
        width: 200px;
    }

    /* ডিফল্টভাবেই ইমেজ সবসময় ফুল কালার এবং ১০০% ক্লিয়ার থাকবে */
    .cluster-card img {
        max-width: 85%;
        max-height: 50px;
        filter: grayscale(0%); /* কালারফুল রাখার জন্য গ্রেস্কেল ০% করা হলো */
        opacity: 1; /* আবছা ভাব দূর করতে অপাসিটি ফুল করা হলো */
        transition: all 0.4s ease;
    }

    /* হোভার করলে কার্ডের রিঅ্যাকশন আরও আকর্ষণীয় দেখাবে */
    .cluster-card:hover {
        transform: scale(1.08) translateY(-10px);
        box-shadow: 0 25px 50px rgba(255, 0, 122, 0.12) !important; /* ব্র্যান্ড কালার গ্লো ট্র্যাকিং */
        border-color: #ff007a;
        z-index: 10;
    }

    /* Floating Animation for Rows */
    .logo-row:nth-child(odd) {
        animation: floatRow 6s ease-in-out infinite;
    }
    .logo-row:nth-child(even) {
        animation: floatRow 6s ease-in-out infinite reverse;
    }

    @keyframes floatRow {
        0%, 100% { transform: translateY(0); }
        50% { transform: translateY(-10px); }
    }

    /* Responsive adjustments */
    @media (max-width: 991px) {
        .logo-cluster-container {
            margin-top: 40px;
        }
        .cluster-card {
            width: 140px;
            height: 90px;
        }
        .cluster-card.large {
            width: 160px;
        }
    }
    
    @media (max-width: 576px) {
        .cluster-card {
            width: 100px;
            height: 70px;
            padding: 15px;
            border-radius: 12px;
        }
        .cluster-card.large {
            width: 120px;
        }
        .gap-4 {
            gap: 1rem !important;
        }
    }