/* Custom University Slider Styles */
.university-slider-container {
    position: relative;
    margin: 0; /* Remove margin since no navigation buttons */
    padding: 0; /* Remove padding since we want full width */
}

.university-slider-wrapper {
    overflow: hidden; /* Hide overflow for sliding effect */
    width: 100%;
}

.university-slider-track {
    transition: transform 0.5s ease-in-out; /* Add smooth transition for sliding */
    width: 100%;
    display: flex;
    flex-wrap: nowrap; /* Keep cards in single row */
}

.university-slide {
    flex: 0 0 25%; /* Exactly 25% width for 4 cards */
    max-width: 25%;
    padding: 0 8px; /* Spacing between cards */
    box-sizing: border-box; /* Ensure padding is included in width calculation */
}

.university-slide .card {
    height: 100%; /* Ensure cards fill the container height */
    min-height: 400px; /* Set minimum height for consistency */
    overflow: hidden; /* Prevent content overflow */
}

.university-slide .card-img {
    height: 200px; /* Fixed height for card images */
    object-fit: cover; /* Maintain aspect ratio */
    width: 100%; /* Full width */
    display: block; /* Remove any inline spacing */
}

.university-slide .position-relative {
    padding: 0; /* Remove any default padding */
    margin: 0; /* Remove any default margin */
}

.university-slide .card-img-overlay {
    padding: 15px; /* Control overlay padding */
}

/* Remove any unwanted spacing from card elements */
.university-slide .card-body {
    padding: 15px; /* Consistent padding */
}

.university-slide .card-body .table {
    margin-bottom: 0; /* Remove table margin */
}

.university-slide .badge {
    margin-bottom: 0; /* Remove badge margin */
}

.university-slide .card-title {
    margin-bottom: 0; /* Remove title margin */
    line-height: 1.2; /* Better line height */
}

/* Ensure no extra spacing in static university cards */
.col-lg-3 .card,
.col-sm-6 .card,
.col-md-6 .card {
    overflow: hidden;
}

.col-lg-3 .card-img,
.col-sm-6 .card-img,
.col-md-6 .card-img {
    height: 200px;
    object-fit: cover;
    width: 100%;
    display: block;
}

.col-lg-3 .position-relative,
.col-sm-6 .position-relative,
.col-md-6 .position-relative {
    padding: 0;
    margin: 0;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
    .university-slide {
        flex: 0 0 33.333%; /* Show 3 cards on smaller desktop */
        max-width: 33.333%;
    }
}

@media (max-width: 768px) {
    .university-slide {
        flex: 0 0 50%; /* Show 2 cards on tablet */
        max-width: 50%;
        padding: 0 6px; /* Reduced padding for mobile */
    }
}

@media (max-width: 576px) {
    .university-slide {
        flex: 0 0 85%; /* Show almost full width on small mobile */
        max-width: 85%;
        padding: 0 10px; /* Increased padding for single card view */
    }
}

/* Legacy styles for old carousel (kept for compatibility) */
#universitiesCarousel {
    position: relative;
}

#universitiesCarousel .carousel-control-prev,
#universitiesCarousel .carousel-control-next {
    width: 48px;
    height: 48px;
    top: 50%;
    transform: translateY(-50%);
    background: #fd4e6b;
    border-radius: 50%;
    opacity: 0.95;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

#universitiesCarousel .carousel-control-prev:hover,
#universitiesCarousel .carousel-control-next:hover {
    opacity: 1;
    transform: translateY(-50%) scale(1.1);
}
#universitiesCarousel .carousel-control-prev {
    left: 0;
}
#universitiesCarousel .carousel-control-next {
    right: 0;
}
#universitiesCarousel .carousel-control-prev-icon,
#universitiesCarousel .carousel-control-next-icon {
    background-size: 60% 60%;
}

/* Course Slider Styles */
.course-slider-container {
    position: relative;
    margin: 0 50px; /* Space for navigation buttons */
    padding: 0 10px; /* Add padding to prevent card cutoff */
}

.course-slider-wrapper {
    overflow: hidden;
    width: 100%;
}

.course-slider-track {
    transition: transform 0.3s ease-in-out;
    width: 100%;
}

.course-slide {
    flex: 0 0 25%; /* Each slide takes 25% width (4 slides visible) */
    max-width: 25%;
    padding: 0 10px; /* Add padding between cards */
}

.course-slide .card {
    height: 450px; /* Fixed height for equal card sizes */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.course-slide .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

.course-slider-prev,
.course-slider-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    z-index: 10;
    cursor: pointer;
    transition: opacity 0.3s ease;
}

.course-slider-prev:hover,
.course-slider-next:hover {
    opacity: 0.8 !important;
}

.course-slider-prev {
    left: -45px;
}

.course-slider-next {
    right: -45px;
}

/* Responsive adjustments for course sliders */
@media (max-width: 1200px) {
    .course-slider-container {
        margin: 0 40px;
    }
    
    .course-slider-prev {
        left: -35px;
    }
    
    .course-slider-next {
        right: -35px;
    }
}

@media (max-width: 768px) {
    .course-slider-container {
        margin: 0 20px;
    }
    
    .course-slider-prev {
        left: -15px;
    }
    
    .course-slider-next {
        right: -15px;
    }
    
    .course-slider-prev div,
    .course-slider-next div {
        width: 35px !important;
        height: 35px !important;
    }
    
    .course-slide {
        flex: 0 0 50%; /* Show 2 slides on mobile */
        max-width: 50%;
    }
}

@media (max-width: 576px) {
    .course-slide {
        flex: 0 0 100%; /* Show 1 slide on small mobile */
        max-width: 100%;
    }
}