.swiper-container {
    width: 100%;
    margin: 0 auto;
}

.swiper-slide {
    justify-content: center;
    align-items: center;
    height: 100%;
    overflow: hidden;
}

.swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.parent-slider {
    max-width: 100%;
    margin: 0 auto;
}

.project-title-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.parent-slider .swiper-wrapper .swiper-slide .project-title {
    text-align: center;
    margin: 0;
    padding: 5%;
}

.swiper-pagination-parent {
    position: relative;
    margin-top: 1vh;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.3vw;
}

.swiper-pagination-parent .swiper-pagination-bullet {
    background-color: transparent;
    width: 1.2vh;
    height: 1.2vh;
    border-radius: 50%;
    transition: background-color 0.3s;
    border: 0.1vh solid white;
}

.swiper-pagination-parent .swiper-pagination-bullet-active {
    background-color: #fff;
    border: 0.1vh solid white;
}

.swiper-pagination-child {
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.3vw;
}

.swiper-pagination-child .swiper-pagination-bullet {
    background-color: transparent;
    width: 1.2vh;
    height: 1.2vh;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s ease;
    border: 0.1vh solid white;
}

.swiper-pagination-child .swiper-pagination-bullet-active {
    background-color: white;
    border: 0.1vh solid white;
}

.swiper-button-prev-parent,
.swiper-button-next-parent {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    padding: 1vh 0.5vw;
    border-radius: 50%;
    font-size: 2.5vh;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.swiper-button-prev-parent {
    left: 2vw;
}

.swiper-button-next-parent {
    right: 2vw;
}

.swiper-button-prev-parent::after,
.swiper-button-next-parent::after {
    color: white;
    content: '\f104';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-button-next-parent::after {
    content: '\f105';
}

.swiper-button-prev-parent::after {
    left: 1vw;
}

.swiper-button-next-parent::after {
    right: 1vw;
}

.swiper-button-prev-child,
.swiper-button-next-child {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    color: grey;
    background-color: transparent;
    padding: 1vh 0.5vw;
    border-radius: 50%;
    font-size: 1.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.swiper-button-prev-child {
    left: 0.5vw;
}

.swiper-button-next-child {
    right: 0.5vw;
}

.swiper-button-prev-child::after {
    content: '\f104';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
}

.swiper-button-next-child::after {
    content: '\f105';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
}

.swiper-slide img,
.swiper-slide video {
    width: 100%;
    height: auto;
    max-height: 53vh;
    object-fit: contain;
}

@media (max-width: 400px) {
    .swiper-button-prev-child,
    .swiper-button-next-child,
    .swiper-button-prev-parent,
    .swiper-button-next-parent {
        font-size: clamp(0.1rem, 5vw, 1rem);
    }

    .swiper-pagination-child .swiper-pagination-bullet,
    .swiper-pagination-parent .swiper-pagination-bullet {
        width: clamp(0.1rem, 3vw, 1rem);
        height: clamp(0.1rem, 3vw, 1rem);
    }

    .swiper-pagination-child .swiper-pagination-bullet-active,
    .swiper-pagination-parent .swiper-pagination-bullet-active {
        width: clamp(0.1rem, 3vw, 1rem);
        height: clamp(0.1rem, 3vw, 1rem);        
    }
}