/* Carousel container */
.carousel {
    width: 100vw; /* Full width of the viewport */
    overflow: hidden; /* Hide the scrollbar */
    position: relative;
    display: flex;
    justify-content: center; /* Center the carousel */
}

/* Carousel track */
.carousel-track {
    display: flex;
    gap: 20px; /* Spacing between cards */
    transition: transform 0.3s ease; /* Smooth transition */
    margin: 0 auto; /* Center the track */
    padding: 0 5%; /* Add padding to avoid the cards touching the edges */
}

/* Card */
.card {
    width: 250px; /* Adjust card size */
    margin: 10px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    flex: 0 0 auto; /* Prevent the card from shrinking */
    max-width: 300px;
}

/* Image section */
.image-section {
    position: relative;
    height: 200px;
    background-color: #ddd;
    overflow: hidden;
    display: flex;
    align-items: center; /* Vertically center the content */
    justify-content: center; /* Horizontally center the content */
}

/* User image */
.user-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    transition: opacity 0.3s ease-in-out;
}

/* SVG Wave */
.wave {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 2;
    background: url('wave.svg') no-repeat bottom; /* Add your wave SVG file here */
    background-size: cover;
    pointer-events: none;
}

/* Username */
.username {
    position: absolute;
    top: 30px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 24px;
    color: white;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    z-index: 3;
}

/* Content section */
.content-section {
    background-color: #fff;
    padding: 15px;
    text-align: center;
}

/* Content section h2 */
.content-section h2 {
    font-size: 20px;
    margin-bottom: 8px;
    color: #333;
}

/* Content section p */
.content-section p {
    font-size: 14px;
    color: #666;
}

/* Rating section */
.rating-section {
    background-color: #e0e0e0;
    padding: 10px;
    text-align: center;
}

/* Stars */
.stars span {
    font-size: 24px;
    color: #ffcc00;
}

/* Hover effect */
.image-section:hover {
    background-color: #22c55e; /* Green on hover */
}

.image-section:hover .user-image {
    opacity: 0;
}

.image-section:hover .username {
    opacity: 1;
}

/* Responsive Design */
@media (max-width: 768px) {
    .card {
        width: 200px;
    }
}

@media (max-width: 480px) {
    .card {
        width: 230px;
    }
}
