.rbt-review {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
    margin-bottom: 4px;
}
.rbt-review .rating-number {
    font-weight: 500;
    color: #192335;
    font-size: 1.5rem;
    line-height: 1;
}
.rbt-review .rating {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1;
}
.rbt-review .rating .fa-star,
.rbt-review .rating .fa-star-half-alt,
.rbt-review .rating .far.fa-star {
    color: #f5a623;
    font-size: 1.7rem;
}
.rbt-review .rating-count {
    color: gray;
    font-size: 1.25rem;
    line-height: 1;
    white-space: nowrap;
}

/* ===== Course Rating Stars ===== */
.feature-sin.rating .rbt-badge-4 .fa-star,
.feature-sin.rating .rbt-badge-4 .fa-star-half-alt {
    color: #f5a623;
}
.feature-sin.rating .rbt-badge-4 .far.fa-star {
    color: #f5a623; /* empty star bhi same orange outline */
}

/* Container Positioning */
.custom-country-dropdown {
    position: relative;
    display: inline-block;
    margin-left: auto;
    /* Right alignment for flex containers */
}

/* Dropdown Trigger Button Style */
.country-dropdown-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #f6f6f6;
    border: 1px solid #e6e6e6;
    padding: 6px 14px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: #192335;
    transition: all 0.3s ease;
}

.country-dropdown-btn:hover {
    background: #eef2f6;
}

.country-dropdown-btn .dropdown-arrow {
    font-size: 12px;
    transition: transform 0.3s ease;
}

.custom-country-dropdown.open .dropdown-arrow {
    transform: rotate(180deg);
}

/* Flag Icon Styling - Button */
.country-dropdown-btn .flag {
    width: 20px;
    height: 15px;
    border-radius: 2px;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
}

/* Dropdown Menu Style */
.country-dropdown-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    /* Right Alignment to prevent horizontal overflow */
    left: auto;
    width: 230px;
    max-height: 280px;
    /* Internal Scroll for items */
    overflow-y: auto;
    background: #ffffff;
    border: 1px solid #eef0f4;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    padding: 6px 0;
    margin: 0;
    list-style: none;
    z-index: 999;

    /* Initially Hidden */
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.25s ease-in-out;
}

/* Show Dropdown on Click */
.custom-country-dropdown.open .country-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* List Items Styling */
.country-dropdown-menu .country {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    cursor: pointer;
    font-size: 14px;
    color: #4A5568;
    transition: background 0.2s ease, color 0.2s ease;
}

.country-dropdown-menu .country:hover {
    background-color: #f7f9fc;
    color: #2b59ff;
}

.country-dropdown-menu .country.active {
    background-color: #edf2f7;
    font-weight: 600;
    color: #2b59ff;
}

/* Flag Icon Styling - Dropdown List */
.country-dropdown-menu .flag {
    width: 22px;
    height: 16px;
    border-radius: 2px;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
}

/* Custom Scrollbar for Dropdown Menu */
.country-dropdown-menu::-webkit-scrollbar {
    width: 5px;
}

.country-dropdown-menu::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.country-dropdown-menu::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
}


/* footer popular courses section */
.footer-all-links {
    margin: 40px 0 0 0;
}

.footer-cat-heading {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    padding: 20px 0;
    width: 100%;
    margin: 0;
}

.footer-cat-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    color: #fff;
}

.footer-cat-a {
    color: #e1e1e1;
    font-size: 13px;
    margin: 0 10px 10px 0;
    text-decoration: none;
}

.footer-cat-a:hover {
    color: #fff;
}

/* Simple Modern Search Bar */
.rbt-search-style {
    width: 100%;
}

.rbt-search-style .hero-search-form {
    max-width: 480px;
    width: 100%;
}

.rbt-search-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    background: #ffffff;
    border: none;
    border-radius: 6px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    padding: 6px 24px 6px 6px;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.rbt-search-wrapper:focus-within {
    box-shadow: 0 10px 30px rgba(68, 49, 141, 0.20);
}

.search-icon-btn {
    background: transparent;
    border: none;
    outline: none;
    color: #44318d;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    cursor: pointer;
}

.hero-search-input {
    flex: 1;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    font-size: 17px;
    font-weight: 500;
    color: #000000 !important;
    padding: 12px 0;
    caret-color: #44318d;
}

.hero-search-input::placeholder {
    color: #8a8a8a;
    font-weight: 400;
}

/* Tablet */
@media (max-width: 991px) {
    .rbt-search-style .hero-search-form {
        max-width: 100%;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .rbt-search-wrapper {
        padding: 4px 18px 4px 4px;
    }

    .search-icon-btn {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .hero-search-input {
        font-size: 15px;
        padding: 10px 0;
    }
}

@media (max-width: 400px) {
    .rbt-search-wrapper {
        padding: 4px 14px 4px 4px;
    }

    .search-icon-btn {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }
}

/* Desktop only - move hero content up to reduce gap */
@media (min-width: 992px) {
    .hero-content-col {
        margin-top: -230px;
    }
}

/* Popular Topics Section */
.rbt-popular-topics {
    width: 100%;
}

.topics-label {
    display: block;
    color: black;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 14px;
    opacity: 0.95;
}

.topics-scroll-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.topic-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, 0.16);
    backdrop-filter: blur(6px);
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    padding: 10px 18px;
    border-radius: 6px;
    white-space: nowrap;
    border: 1px solid rgba(255, 255, 255, 0.15);
    transition: all 0.3s ease;
    text-decoration: none;
    flex-shrink: 0;
}

.topic-pill:hover,
.topic-pill:focus,
.topic-pill:active {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.3);
    text-decoration: none;
    transform: translateY(-2px);
}

.topic-pill-highlight {
    background: #44318d;
    border-color: #44318d;
    font-weight: 600;
}

.topic-pill-highlight:hover,
.topic-pill-highlight:focus,
.topic-pill-highlight:active {
    color: #fff !important;
    background: #362672;
    text-decoration: none;
}

.topic-pill-highlight i {
    font-size: 14px;
}

/* Mobile - Smooth Horizontal Carousel */
@media (max-width: 767px) {
    .rbt-popular-topics {
        margin-left: calc(-1 * var(--bs-gutter-x, 12px));
        margin-right: calc(-1 * var(--bs-gutter-x, 12px));
        width: calc(100% + (2 * var(--bs-gutter-x, 12px)));
    }

    .topics-label {
        padding-left: var(--bs-gutter-x, 12px);
        font-size: 14px;
    }

    .topics-scroll-wrapper {
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        padding: 4px var(--bs-gutter-x, 12px) 10px;
        gap: 8px;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .topics-scroll-wrapper::-webkit-scrollbar {
        display: none;
    }

    .topic-pill {
        scroll-snap-align: start;
        font-size: 13px;
        padding: 9px 16px;
    }
}

.custom-gap {
    padding: 40px 0;
}

/* Price wrapper - keep price and badge on same line on mobile */
@media (max-width: 767px) {
    .rbt-price-wrapper {
        flex-wrap: nowrap !important;
        gap: 8px;
    }

    .rbt-price-wrapper .current-price {
        font-size: 18px;
    }

    .rbt-price-wrapper .off-price {
        font-size: 14px;
    }

    .rbt-price-wrapper .discount-time .rbt-badge {
        font-size: 11px;
        padding: 4px 8px;
        white-space: nowrap;
    }
}

@media (max-width: 400px) {
    .rbt-price-wrapper .current-price {
        font-size: 16px;
    }

    .rbt-price-wrapper .off-price {
        font-size: 13px;
    }

    .rbt-price-wrapper .discount-time .rbt-badge {
        font-size: 10px;
        padding: 0px 10px;
    }
}

/* Make course tabs sticky properly */
.rbt-inner-onepage-navigation.sticky-top {
    top: 90px;
    /* apne fixed header ki height yahan daalain */
    z-index: 999;
    background: #fff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
}

.rbt-inner-onepage-navigation .mainmenu {
    background: #fff;
}

/* Desktop Fix: Sticky tabs below header, not overlapping (NAYA BLOCK) */
@media (min-width: 768px) {
    .rbt-inner-onepage-navigation.sticky-top {
        position: sticky !important;
        top: 80px !important;
        z-index: 50 !important;
        background: #fff;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
    }
}

/* ===================================================================
   Space above the course tabs.

   The section contributes 60px of top padding and the tab bar carries
   the theme's mt--30 on top of that, so 90px of empty white sat between
   the hero and the first thing on the page. The section padding stays â€”
   the sidebar card is positioned against it â€” and only the bar's own
   margin goes, which is what the phone rules further down already do.
   =================================================================== */
@media (min-width: 768px) {
    .rbt-course-details-area .rbt-inner-onepage-navigation.mt--30 {
        margin-top: 0 !important;
    }
}

/* ===================================================================
   Course tabs stay on one line.

   The theme wraps them, which was fine for four and put "Review" on a
   row of its own the moment a fifth tab was added â€” a stray full-width
   button that reads as a separate control rather than one of a set.
   They are one row now at every width, narrowing to fit and scrolling
   sideways only once they genuinely cannot, which is what the phone
   rules below already did.
   =================================================================== */
.rbt-inner-onepage-navigation .mainmenu-nav .mainmenu {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
}

.rbt-inner-onepage-navigation .mainmenu-nav .mainmenu::-webkit-scrollbar {
    display: none;
}

/* Grow to share the row, never shrink the label into two lines. */
.rbt-inner-onepage-navigation .mainmenu-nav .mainmenu li {
    flex-shrink: 0;
}

.rbt-inner-onepage-navigation .mainmenu-nav .mainmenu li a {
    white-space: nowrap;
    padding: 10px 16px;
    font-size: 15px;
}

@media (max-width: 767px) {

    body {
        position: static !important;
        overflow-y: visible !important;
    }

    /* Sticky tabs navigation - remove gap */
    .rbt-inner-onepage-navigation.sticky-top {
        position: sticky !important;
        top: 74px !important;
        /* apne actual header height se match karain */
        z-index: 999;
        background: #fff;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
        margin-top: 0 !important;
        /* mt--30 ka gap remove */
    }

    .rbt-inner-onepage-navigation .mainmenu-nav .mainmenu {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        width: 100%;
    }

    .rbt-inner-onepage-navigation .mainmenu-nav .mainmenu::-webkit-scrollbar {
        display: none;
    }

    .rbt-inner-onepage-navigation .mainmenu-nav .mainmenu li {
        flex-shrink: 0 !important;
    }

    .rbt-inner-onepage-navigation .mainmenu-nav .mainmenu li a {
        white-space: nowrap;
        padding: 10px 16px;
    }
}

/* Phone number button - matched to country dropdown button style/size */
.rbt-btn-wrapper .rbt-btn.rbt-switch-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #f6f6f6 !important;
    border: 1px solid #e6e6e6;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    color: #192335 !important;
    box-shadow: none;
    transition: all 0.3s ease;
    white-space: nowrap;
    height: 32.5px;
}

.rbt-btn-wrapper .rbt-btn.rbt-switch-btn i {
    color: #25D366;
    font-size: 16px;
    flex-shrink: 0;
}

.rbt-btn-wrapper .rbt-btn.rbt-switch-btn span {
    color: #192335 !important;
}

.rbt-btn-wrapper .rbt-btn.rbt-switch-btn:hover {
    background: #eef2f6 !important;
    color: #192335 !important;
}

.rbt-btn-wrapper .rbt-btn.rbt-switch-btn:hover span {
    color: #192335 !important;
}

/* Category filter tabs - white pill style */
.rbt-category-tabs-wrapper {
    width: 100%;
}

.rbt-portfolio-filter.nav-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    border: none;
    padding: 0;
    margin: 0;
    list-style: none;
}

.rbt-portfolio-filter.nav-tabs .nav-item {
    margin: 0;
}

.rbt-portfolio-filter.nav-tabs .nav-link {
    display: inline-flex;
    align-items: center;
    background: #ffffff;
    color: #4A5568;
    font-size: 15px;
    font-weight: 500;
    padding: 12px 26px;
    border-radius: 50px;
    border: none;
    white-space: nowrap;
    transition: all 0.3s ease;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.rbt-portfolio-filter.nav-tabs .nav-link:hover {
    background: #f0f0ff !important;
    color: #44318d !important;
}

.rbt-portfolio-filter.nav-tabs .nav-link.active {
    background: #44318d;
    color: #ffffff;
    box-shadow: 0 4px 15px rgba(68, 49, 141, 0.35);
}

/* Mobile - horizontal scroll */
@media (max-width: 767px) {
    .rbt-category-tabs-wrapper {
        margin-left: -15px;
        margin-right: -15px;
        width: calc(100% + 30px);
        position: relative;
    }

    .rbt-portfolio-filter.nav-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        padding: 4px 15px 10px;
        gap: 8px;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .rbt-portfolio-filter.nav-tabs::-webkit-scrollbar {
        display: none;
    }

    .rbt-portfolio-filter.nav-tabs .nav-item {
        flex-shrink: 0;
    }

    .rbt-portfolio-filter.nav-tabs .nav-link {
        font-size: 14px;
        padding: 10px 20px;
    }

    .rbt-category-tabs-wrapper::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 40px;
        background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.9));
        pointer-events: none;
    }
}

/* Course details feature badges - same height + mobile horizontal scroll */
.rbt-course-details-feature {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: stretch;
}

.rbt-course-details-feature .feature-sin {
    margin: 0;
    flex: 0 0 auto;
    display: flex;
}

.rbt-course-details-feature .rbt-badge-2,
.rbt-course-details-feature .rbt-badge-4 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: #ffffff !important;
    color: #1a1a2e !important;
    font-size: 14px;
    font-weight: 500;
    padding: 0 20px;
    height: 48px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    text-decoration: none;
    white-space: nowrap;
    box-sizing: border-box;
}

.rbt-course-details-feature .rbt-badge-2 .image {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.rbt-course-details-feature .rbt-badge-2 .image img {
    width: 18px;
    height: 18px;
}

.rbt-course-details-feature .rbt-badge-4 b {
    font-weight: 700;
    color: #1a1a2e;
    font-size: 15px;
}

.rbt-course-details-feature .rbt-badge-4 i.fa-star {
    color: #f89c1c;
    font-size: 13px;
}

.rbt-course-details-feature .rbt-badge-4 i.feather-users,
.rbt-course-details-feature .rbt-badge-4 i.feather-globe {
    font-size: 15px;
    color: #6c5ce7;
}

.rbt-course-details-feature .review-count {
    color: #6b7280;
    font-weight: 400;
    font-size: 13px;
    margin-left: 2px;
}

.rbt-course-details-feature .rbt-badge-2:hover,
.rbt-course-details-feature .rbt-badge-2:focus,
.rbt-course-details-feature .rbt-badge-2:active,
.rbt-course-details-feature .rbt-badge-4:hover,
.rbt-course-details-feature .rbt-badge-4:focus,
.rbt-course-details-feature .rbt-badge-4:active {
    color: #1a1a2e !important;
    background: #ffffff !important;
    text-decoration: none !important;
    cursor: default;
}

/* Mobile - horizontal scroll instead of wrap */
@media (max-width: 767px) {
    .rbt-course-details-feature {
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        gap: 10px;
        padding-bottom: 4px;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .rbt-course-details-feature::-webkit-scrollbar {
        display: none;
    }

    .rbt-course-details-feature .rbt-badge-2,
    .rbt-course-details-feature .rbt-badge-4 {
        font-size: 13px;
        padding: 0 16px;
        height: 44px;
    }

    .rbt-course-details-feature .rbt-badge-4 b {
        font-size: 14px;
    }

    .rbt-course-details-feature .rbt-badge-2 .image img {
        width: 16px;
        height: 16px;
    }
}

/* Enroll Now button - solid purple, no hover color change */
.rbt-btn.icon-hover {
    background: #44318d !important;
    background-image: none !important;
    color: #ffffff !important;
    border-color: #44318d !important;
}

.rbt-btn.icon-hover .btn-text,
.rbt-btn.icon-hover .btn-icon,
.rbt-btn.icon-hover .btn-icon i {
    color: #ffffff !important;
}

.rbt-btn.icon-hover:hover,
.rbt-btn.icon-hover:focus,
.rbt-btn.icon-hover:active {
    background: #44318d !important;
    background-image: none !important;
    color: #ffffff !important;
    border-color: #44318d !important;
}

.rbt-btn.icon-hover:hover .btn-text,
.rbt-btn.icon-hover:hover .btn-icon,
.rbt-btn.icon-hover:hover .btn-icon i {
    color: #ffffff !important;
}

/* Exact Hero Search Bar Replica */
.hero-style-search-box {
    position: relative;
    display: flex;
    align-items: center;
    background: #ffffff;
    border-radius: 6px;
    padding: 8px 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.07);
    width: 100%;
    /* max-width: 600px; */
    height: 56px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.homehero-style-search-box {
    position: relative;
    display: flex;
    align-items: center;
    background: #ffffff;
    border-radius: 6px;
    padding: 8px 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.07);
    width: 100%;
    max-width: 600px;
    height: 56px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.hero-style-search-box:focus-within {
    box-shadow: 0 12px 35px rgba(81, 56, 238, 0.12);
}

.homehero-style-search-box:focus-within {
    box-shadow: 0 12px 35px rgba(81, 56, 238, 0.12);
}

.hero-style-search-box .search-icon {
    font-size: 20px;
    color: #5138ee;
    /* Purple icon color */
    margin-right: 14px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

.homehero-style-search-box .search-icon {
    font-size: 20px;
    color: #5138ee;
    /* Purple icon color */
    margin-right: 14px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

.hero-style-search-box input {
    width: 100%;
    height: 100% !important;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    font-size: 16px;
    font-weight: 500;
    color: #0f172a;
    padding: 0 !important;
    box-shadow: none !important;
}

.homehero-style-search-box input {
    width: 100%;
    height: 100% !important;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    font-size: 16px;
    font-weight: 500;
    color: #0f172a;
    padding: 0 !important;
    box-shadow: none !important;
}

.hero-style-search-box input::placeholder {
    color: #0f172a;
    font-weight: 500;
    opacity: 0.9;
}

.homehero-style-search-box input::placeholder {
    color: #0f172a;
    font-weight: 500;
    opacity: 0.9;
}

/* Make search icon clickable as submit button */
.hero-style-search-box .search-icon-btn {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer;
    display: flex;
    align-items: center;
}

/* No results state */
.rbt-no-results {
    text-align: center;
    padding: 60px 20px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

.rbt-no-results-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    background: rgba(68, 49, 141, 0.08);
    border-radius: 50%;
    margin-bottom: 20px;
}

.rbt-no-results-icon i {
    font-size: 28px;
    color: #44318d;
}

.rbt-no-results-title {
    font-size: 22px;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 10px;
}

.rbt-no-results-text {
    font-size: 15px;
    color: #6b7280;
    max-width: 420px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Mobile */
@media (max-width: 575px) {
    .rbt-no-results {
        padding: 40px 16px;
    }

    .rbt-no-results-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 16px;
    }

    .rbt-no-results-icon i {
        font-size: 24px;
    }

    .rbt-no-results-title {
        font-size: 19px;
    }

    .rbt-no-results-text {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .rbt-course-grid-column#course-results {
        margin-top: 20px !important;
    }
}

/* Mega menu */
.rbt-mega-menu {
    position: absolute;
    left: 0;
    top: 100%;
    width: 750px;
    max-width: 90vw;
    background: #ffffff;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
    border-radius: 0 0 12px 12px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.25s ease;
    z-index: 999;
    overflow: hidden;
}

.nav-chevron {
    display: inline-block;
    vertical-align: middle;
    margin-left: 4px;
    position: relative;
    top: 1px;
}

.has-mega-menu:hover .rbt-mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.mega-menu-inner {
    display: flex;
    width: 100%;
    min-height: 320px;
}

/* Left column - category list */
.mega-category-list {
    list-style: none;
    margin: 0;
    padding: 20px 0;
    width: 260px;
    border-right: 1px solid #eee;
    flex-shrink: 0;
}

.mega-category-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 24px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.mega-category-item a {
    color: #1a1a2e;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
}

.mega-category-item i {
    font-size: 14px;
    color: #999;
}

.mega-category-item:hover,
.mega-category-item.active {
    background: rgba(68, 49, 141, 0.06);
}

.mega-category-item.active a,
.mega-category-item:hover a {
    color: #44318d !important;
}

/* Right column - course panels */
.mega-course-panels {
    flex: 1;
    padding: 24px 30px;
    min-width: 0;
}

.mega-course-panel {
    display: none;
    flex-direction: column;
    gap: 4px;
}

.mega-course-panel.active {
    display: flex;
}

.mega-course-link {
    padding: 10px 14px;
    border-radius: 8px;
    color: #333;
    font-size: 14px;
    text-decoration: none;
    transition: background 0.2s ease;
}

.mega-course-link:hover {
    background: rgba(68, 49, 141, 0.06);
    color: #44318d !important;
}

.mega-no-courses {
    padding: 10px 14px;
    color: #999;
    font-size: 14px;
}

.mega-view-all {
    margin-top: 14px;
    padding: 10px 14px;
    color: #44318d;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-top: 1px solid #eee;
    padding-top: 14px;
}

.mega-view-all:hover {
    color: #362672 !important;
}

@media (max-width: 991px) {
    .rbt-mega-menu {
        display: none;
    }
}

/* ============================
   LIVE SEARCH DROPDOWN â€” FULL CSS
   ============================ */

.homehero-search-wrapper {
    position: relative;
    display: block;
    width: 100%;
    max-width: 600px;
}

.search-suggestions-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    width: 100%;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
    padding: 20px;
    max-height: 420px;
    overflow-y: auto;
    z-index: 500;
    box-sizing: border-box;
    scrollbar-width: thin;
    scrollbar-color: #d5cef0 transparent;
}
.search-suggestions-dropdown.active {
    display: block;
}
.suggestion-group {
    margin-bottom: 16px;
}
.suggestion-group:last-child {
    margin-bottom: 0;
}
.suggestion-group-title {
    font-size: 13px;
    font-weight: 700;
    color: #6c4fd6;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-bottom: 10px;
}
.suggestion-item {
    display: block;
    padding: 9px 6px;
    font-size: 15px;
    color: #26263b;
    text-decoration: none;
    border-radius: 8px;
    transition: background 0.15s ease, color 0.15s ease;
}
.suggestion-item:hover {
    background: #f3f1fc;
    color: #44318d;
}
.suggestion-divider {
    border: none;
    border-top: 1px solid #eeeef4;
    margin: 14px 0;
}
.suggestion-empty {
    font-size: 14px;
    color: #9a9aa5;
    padding: 10px 6px;
}
.suggestion-loading {
    font-size: 13px;
    color: #9a9aa5;
    padding: 10px 6px;
}
/* Custom scrollbar â€” reviews dropdown jaisa (thin purple) */
.search-suggestions-dropdown::-webkit-scrollbar {
    width: 6px;
}
.search-suggestions-dropdown::-webkit-scrollbar-track {
    background: transparent;
    margin: 6px 0;
}
.search-suggestions-dropdown::-webkit-scrollbar-thumb {
    background: #d5cef0;
    border-radius: 10px;
}
.search-suggestions-dropdown::-webkit-scrollbar-thumb:hover {
    background: #b8abe8;
}

/* ---- Mobile responsive ---- */
@media (max-width: 767px) {
    .homehero-search-wrapper {
        width: calc(100% + 30px);
        margin-left: -15px;
        max-width: none;
    }

    .search-suggestions-dropdown {
        max-height: 60vh;
        border-radius: 6px;
        padding: 16px;
    }

    .suggestion-item {
        font-size: 14px;
        padding: 10px 6px;
    }

    .suggestion-group-title {
        font-size: 12px;
    }
}

.news-text,
.news-text a,
.news-text:hover,
.news-text a:hover {
    color: inherit !important;
    font-family: 'Poppins', 'Segoe UI', Roboto, Arial, sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.2px;
}

.b-friday-btn:hover {
    color: inherit !important;
}

/* Course content display - clean, theme-matched styling */
.rbt-course-content-body {
    font-size: 16px;
    line-height: 1.8;
    color: #4b5563;
}

.rbt-course-content-body h2 {
    font-size: 22px;
    font-weight: 700;
    color: #1a1a2e;
    margin-top: 28px;
    margin-bottom: 14px;
}

.rbt-course-content-body h2:first-child {
    margin-top: 0;
}

.rbt-course-content-body h3 {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a2e;
    margin-top: 22px;
    margin-bottom: 10px;
}

.rbt-course-content-body p {
    margin-bottom: 16px;
}

.rbt-course-content-body ul,
.rbt-course-content-body ol {
    margin: 0 0 18px 0;
    padding-left: 22px;
}

.rbt-course-content-body ul li,
.rbt-course-content-body ol li {
    margin-bottom: 10px;
    padding-left: 6px;
}

.rbt-course-content-body ul {
    list-style: disc;
}

.rbt-course-content-body ul li {
    list-style: disc;
}

.rbt-course-content-body a {
    color: #44318d !important;
    text-decoration: underline;
}

.rbt-course-content-body strong {
    color: #1a1a2e;
    font-weight: 700;
}

/* Mobile */
@media (max-width: 575px) {
    .rbt-course-content-body {
        font-size: 15px;
    }

    .rbt-course-content-body h2 {
        font-size: 19px;
    }

    .rbt-course-content-body h3 {
        font-size: 16px;
    }
}

#coursecontent .rbt-course-content-body ol {
    list-style: disc;
    padding-left: 22px;
}

#coursecontent .rbt-course-content-body ol li {
    list-style: disc;
}
.rbt-course-content-body,
.rbt-course-content-body * {
    color: #4b5563 !important;
}

.rbt-course-content-body h2,
.rbt-course-content-body h3 {
    color: #1a1a2e !important;
}

.enquire-icon-btn,
.verify-cert-btn { display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px; background: rgba(255,255,255,.14); color: #fff; border: none; border-radius: 6px; cursor: pointer; transition: background .15s; padding: 0; margin: 0; }
.enquire-icon-btn:hover,
.verify-cert-btn:hover { background: rgba(255,255,255,.24); color: #fff; }
.enquire-icon-btn svg,
.verify-cert-btn svg { width: 21px; height: 21px; }

/* Mobile â€” enquire icon compact aur header-right gap kam */
@media (max-width: 991px) {
    .header-right { gap: 4px !important; }
    .rbt-btn-wrapper { margin: 0 !important; padding: 0 !important; }
    .enquire-icon-btn,
    .verify-cert-btn { width: 30px !important; height: 30px !important; padding: 0 !important; margin: 0 !important; }
    .enquire-icon-btn svg,
    .verify-cert-btn svg { width: 16px !important; height: 16px !important; }
}

/* ============================================
   Courses Pagination â€” Avision
   ============================================ */
.avision-pagination {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}
.avision-pagination .pagination-list {
    display: flex;
    align-items: center;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
}
.avision-pagination .page-item a,
.avision-pagination .page-item span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    border-radius: 10px;
    border: 1.5px solid #e5e4ee;
    background: #fff;
    color: #3b3b45;
    font-size: 14.5px;
    font-weight: 600;
    text-decoration: none;
    transition: all .2s ease;
}
.avision-pagination .page-item a:hover {
    border-color: #5b3fd9;
    color: #5b3fd9;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(91,63,217,0.15);
}
.avision-pagination .page-item.active span {
    background: #5b3fd9;
    border-color: #5b3fd9;
    color: #fff;
    box-shadow: 0 4px 12px rgba(91,63,217,0.25);
}
.avision-pagination .page-item.disabled span {
    color: #b8b8c8;
    background: #f7f7fb;
    border-color: #eeeef4;
    cursor: not-allowed;
}

@media (max-width: 576px) {
    .avision-pagination .page-item a,
    .avision-pagination .page-item span {
        min-width: 38px;
        height: 38px;
        padding: 0 10px;
        font-size: 13px;
    }
}

/* Horizontal scroll fix â€” sirf body pe */
body {
    overflow-x: hidden;
}

/* ===== Global page scrollbar â€” thin purple (site-wide) ===== */
html {
    scrollbar-width: thin;
    scrollbar-color: #d5cef0 transparent;
}
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
::-webkit-scrollbar-track {
    background: transparent;
}
::-webkit-scrollbar-thumb {
    background: #d5cef0;
    border-radius: 10px;
    border: 2px solid #faf9fe;
}
::-webkit-scrollbar-thumb:hover {
    background: #b8abe8;
}


/* ===================================================================
   CLS â€” reserve space for course/blog card images before they load.
   Without this the container has no height until the image arrives,
   so every card below it jumps down (Cumulative Layout Shift).
   5/4 matches 47 of the 54 uploaded course images; the rest are
   center-cropped by the object-fit: cover already set by the theme.
   Client logos and category tiles are deliberately NOT included â€”
   their aspect ratios vary and cropping a logo looks broken.
   =================================================================== */
.rbt-card .rbt-card-img a img,
.cl-card-img img {
    aspect-ratio: 5 / 4;
    height: auto;
}

.bcard-img img {
    aspect-ratio: 16 / 9;
    height: auto;
    object-fit: cover;
}


/* ===================================================================
   PRICE â€” the amount being charged reads first.

   The theme sets the struck-out price at 20px against the current
   price's 24px and fades it with opacity rather than colouring it.
   Two numbers nearly the same size, and opacity over a tinted card
   turns the old one into a pale purple instead of grey â€” so the card
   showed two headline numbers and left the eye to work out which one
   it actually pays.

   Here the current price is the dark one, and the old price is small,
   grey and plainly struck out. Baseline alignment because two numbers
   of different sizes belong on one line, not centred against each
   other. Applies to every price on the site: the course detail
   sidebar and the course cards on home, category and related lists,
   all of which sit on white.
   =================================================================== */
.rbt-price {
    align-items: baseline;
    gap: 9px;
}

.rbt-price .current-price {
    color: #1a1a2e;
    letter-spacing: -.02em;
}

.rbt-price .off-price {
    margin-left: 0;
    opacity: 1;
    font-size: 16px;
    font-weight: 500;
    color: #9a94ab;
    text-decoration-thickness: 1px;
}


/* One WhatsApp icon control for desktop and mobile headers. */
.header-whatsapp-icon {
    align-items: center;
    justify-content: center;
    width: 33px;
    height: 33px;
    padding: 0;
    margin: 0;
    background: rgba(255,255,255,.14);
    color: #fff;
    border: none;
    border-radius: 6px;
    transition: background .15s;
}
.header-whatsapp-icon:visited,
.header-whatsapp-icon:focus,
.header-whatsapp-icon:active { color: #fff; }
.header-whatsapp-icon:hover { background: rgba(255,255,255,.24); color: #fff; }
@media (max-width: 991px) {
    .header-whatsapp-icon { width: 30px; height: 30px; }
}

/* Certificate seal icon: same sizing as the previous SVG icon. */
.verify-cert-btn i {
    font-size: 21px;
    line-height: 1;
}
@media (max-width: 991px) {
    .verify-cert-btn i { font-size: 16px; }
}

/* Do not show the browser/theme blue active state on the certificate link. */
.verify-cert-btn {
    -webkit-tap-highlight-color: transparent;
}
.verify-cert-btn:focus,
.verify-cert-btn:active {
    color: #fff !important;
    background: rgba(255,255,255,.24) !important;
    outline: none;
    box-shadow: none;
}

/* Keep the certificate glyph white in every link state. */
.verify-cert-btn,
.verify-cert-btn:visited,
.verify-cert-btn:hover,
.verify-cert-btn:focus,
.verify-cert-btn:active,
.verify-cert-btn i {
    color: #fff !important;
    text-decoration: none;
}

/* Browser Back can restore :visited/:focus; lock the certificate seal white. */
a.verify-cert-btn,
a.verify-cert-btn:link,
a.verify-cert-btn:visited,
a.verify-cert-btn:hover,
a.verify-cert-btn:focus,
a.verify-cert-btn:active,
a.verify-cert-btn .fas {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
}

/* Inline WhatsApp SVG keeps the icon visible before web fonts finish loading. */
.header-whatsapp-icon svg { width: 21px; height: 21px; }
@media (max-width: 991px) {
    .header-whatsapp-icon svg {
        width: 16px;
        height: 16px;
    }
}
/* Inline mobile menu icon: prevents a web-font fallback square on load. */
.hamberger-button .header-menu-icon {
    width: 22px;
    height: 22px;
    color: currentColor;
}

