/* ===============================
   CATEGORY CARD STYLING
   =============================== */

.category-section {
    padding: 70px 0 !important;
}

.category-section .title {
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: #1f2937 !important;
    text-align: center !important;
    margin-bottom: 10px !important;
}

.category-section .subtitle {
    text-align: center !important;
    font-weight: 600 !important;
    color: #6b7280 !important;
    font-size: 1rem !important;
    letter-spacing: 1px !important;
}

/* ---- CATEGORY CARD ---- */
.category-card {
    background: #ffffff !important;
    border-radius: 1.25rem !important;
    overflow: hidden !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.35s ease-in-out !important;
    cursor: pointer !important;
    height: 100% !important;
}

.category-card:hover {
    border-color: #4f46e5 !important;
    box-shadow: 0 10px 25px rgba(79, 70, 229, 0.2) !important;
    transform: translateY(-10px) !important;
}

/* ---- IMAGE ---- */
.category-card .category-image {
    position: relative !important;
    width: 100% !important;
    height: 220px !important;
    overflow: hidden !important;
}

.category-card .category-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.7s ease !important;
}

.category-card:hover .category-image img {
    transform: scale(1.15) !important;
}

/* ---- CONTENT ---- */
.category-card .category-content {
    padding: 25px 20px !important;
    text-align: center !important;
}

.category-card h6 {
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin-bottom: 8px !important;
    transition: color 0.3s ease !important;
}

.category-card:hover h6 {
    color: #4f46e5 !important;
}

.category-card p {
    font-size: 0.95rem !important;
    color: #6b7280 !important;
    margin-bottom: 15px !important;
}

/* ---- BUTTON / LINK ---- */
.category-card a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-weight: 600 !important;
    color: #4f46e5 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}

.category-card a:hover {
    gap: 10px !important;
    text-shadow: 0 0 5px rgba(79, 70, 229, 0.4) !important;
}

/* TOP CATEGORIES GRID FIX */
.top-categories-grid {
    display: grid !important;
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

/* Tablet */
@media (min-width: 640px) {
    .top-categories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Laptop (1024px+) */
@media (min-width: 1024px) {
    .top-categories-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

/* Desktop (1280px+) */
@media (min-width: 1280px) {
    .top-categories-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

/* ---- RESPONSIVE ---- */
/* @media (max-width: 1024px) {
    .category-card .category-image {
        height: 180px !important;
    }
}

@media (max-width: 768px) {
    .category-card .category-image {
        height: 160px !important;
    }

    .category-card h6 {
        font-size: 1.1rem !important;
    }
}

@media (max-width: 480px) {
    .category-card {
        margin-bottom: 20px !important;
    }
} */



/* ============================
   COURSE CARD PREMIUM HOVER
   ============================ */

.course-hover-card {
    transition: all 0.35s ease !important;
    border-radius: 1.25rem !important;
}

.course-hover-card:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12) !important;
}

/* Thumbnail Zoom */
.course-hover-card:hover img {
    transform: scale(1.10) !important;
    transition: transform 0.5s ease !important;
}

/* Title Color Change */
.course-hover-card:hover h6 a {
    color: #4f46e5 !important;
    transition: color 0.3s ease !important;
}

/* Border highlight on hover */
.course-hover-card:hover {
    border: 1px solid #4f46e533 !important;
}

.tilt-card {
    transform-style: preserve-3d;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.tilt-card:hover {
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.16);
}

.tilt-card img {
    transition: transform 0.35s ease;
}

.tilt-card:hover img {
    transform: translateZ(20px);
}




/* Parent hero div */
.custom-hero {
    border-radius: 50px !important;
    overflow: hidden !important;
    position: relative !important;
}

/* Swiper container and wrapper */
.custom-hero .swiper,
.custom-hero .swiper-wrapper,
.custom-hero .swiper-slide {
    border-radius: inherit !important;
    /* inherit parent's radius */
    overflow: hidden !important;
}

/* Slider images */
.custom-hero .swiper-slide img {
    border-radius: inherit !important;
    /* inherit parent's radius */
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}