.blog-shell-container {
    max-width: 100%;
    max-height: 500px;
    overflow-y: auto;
}

.carousel-container {
    position: relative;
    max-width: 700px;
    margin-bottom: 40px;
  }

.carousel-header {
    display: flex;
    justify-content: flex-end;
    padding: 10px;
}

.slide-selector {
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid #ccc;
    background: white;
    cursor: pointer;
    align-items: center;
    align-content: center;
    margin: 0px auto;
}

.carousel-viewport-wrapper {
    position: relative;
    display: block;
    align-items: center;
}

@media (max-width: 768px) {

    .carousel-container
    {max-width: 300px;}

    .slide {
        min-width: 340px;
    }
    .carousel-viewport-wrapper {
        max-width: 100vh;
        margin-bottom: 80px;
    }
}

.carousel-viewport {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    /* Hide scrollbar for clean look */
    gap: 10px;
}

.carousel-viewport::-webkit-scrollbar {
    display: none;
}

.slide {
    flex: 0 0 100%;
    /* Only one slide visible at a time */
    scroll-snap-align: start;
    min-height: 400px;
    display: flex;
    align-items: left;
    justify-content: left;
    background: var(--card-bg);
    color: white;
    border-radius: 12px;
}

/* Persistent Caret Buttons */
.nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    width: 44px;
    /* Accessible touch target size */
    height: 44px;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    transition: background 0.2s;
}

.nav-btn:hover {
    background: rgba(0, 0, 0, 0.8);
}

.prev {
    left: 10px;
}

.next {
    right: 10px;
}

@media (max-width: 768px) {
 .nav-btn, .next {
    right: 0vh;}

     .prev {
        left: 0vh;
     }
 }


/* Screen Reader Only class */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}