/* Body */
body {
    margin: 0; 
    padding: 100px 100px 40px 100px;
    background: linear-gradient(to bottom right, #26382E, #191919);
}

/* Container */
div.container {
    width: 100%; 
    height: 100vh; 
    display: flex; 
    flex-direction: column;
    justify-content: center;
    align-self: center;
    gap: 5.93vh;
}

/* Logo */
a.logo {
    display: flex; 
}

a.logo img {
    display: flex; 
    margin: 0 auto; 
    width: 25%; 
}

/* Swiper container */
div.swiper.logo-gallery-container {
    width: 30%; /* ALS SLIDER AAN STAAT DEZE OP 100% ZETTEN */
    display: flex; 
    justify-content: center;
    align-items: center;
    overflow:visible; 
}

div.swiper-wrapper.logo-gallery {
    align-items: stretch;
}

/* Slides */
div.swiper-slide.logo-gallery-item {
    display: flex; 
    justify-content: center;
    align-items: center;
    border-radius: 16px; 
    border: 2px solid rgba(253, 253, 253, 0.32); 
    background-color: rgba(253, 253, 253, 0.12);
    height: 20vh;
    box-sizing: border-box;
}

div.swiper-slide.logo-gallery-item:hover {
    border: 2px solid #44B051; 
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.6);
}

div.swiper-slide.logo-gallery-item img {
    display: block;
    margin: 0 auto;
    width: 70%;
    height: auto;
}

/* Special case: only one child */
div.logo-gallery:has(div.swiper-slide:only-child) {
    justify-content: center;
    width: 90%;
}

/* Pagination */
div.swiper-pagination {
    bottom: 0 !important;
    position: relative !important; 
    margin-top: 40px; 
}

div.swiper-pagination .swiper-pagination-bullet {
    background-color: white !important;
    width: 10px !important;
    height: 10px !important;
}

/* DESKTOP */
@media (min-width: 1281px) {
    body {
        overflow: hidden; 
    }
    div.swiper-wrapper.logo-gallery {
        display: flex; 
        justify-content: center;
    }
}

/* TABLET */
@media (min-width: 801px) and (max-width: 1280px) {
    a.logo img {
        width: 40%; 
    }
    div.swiper.logo-gallery-container{
        width: 100%;
    }
}

/* MOBILE */
@media (max-width: 800px) {
    body {
        padding: 20px;
    }
    a.logo img {
        width: 80%; 
    }
    div.swiper.logo-gallery-container{
        width: 100%;
    }
}