/* Custom styles for Matplotlib Gallery */
.sphx-glr-thumbnail-title {
    display: none; /* Hide duplicate titles */
}

.sphx-glr-thumbnails {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start; /* Left align, allow right space */
}

.sphx-glr-thumbcontainer {
    flex: 0 1 calc(25% - 10px); /* Adjusted for tighter margins */
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 10px;
    margin: 5px; /* Tighter margins */
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: transform 0.2s;
    box-sizing: border-box;
}

.sphx-glr-thumbcontainer:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.sphx-glr-thumbcontainer img {
    width: 100%;
    height: 150px; /* Fixed height for larger images */
    object-fit: cover; /* Ensure images fill the space nicely */
    border-radius: 4px;
}

/* Hide the Sphinx-Gallery signature */
.sphx-glr-signature {
    display: none;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
    .sphx-glr-thumbcontainer {
        flex: 0 1 calc(33.333% - 20px); /* 3 per row */
    }
}

@media (max-width: 768px) {
    .sphx-glr-thumbcontainer {
        flex: 0 1 calc(50% - 20px); /* 2 per row */
    }
}

@media (max-width: 480px) {
    .sphx-glr-thumbcontainer {
        flex: 0 1 calc(100% - 20px); /* 1 per row */
    }
}