header.fs-navbar {
    position: absolute;
    border-bottom: 1px solid #fdfdfd;
    width: 100%;
}
header .play-button {
    background: url('../img/music.png') no-repeat center center;
    background-size: contain;
}
#fs-banner {
    background-size: cover;
    min-height: 100vh;
    padding: 100px 0;
}
.page-title h1 {
    color: #fff;
    margin-bottom: 20px;
}
img#character {
    width: 100%;
}
#cat-slider-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.swiper-wrapper {
    position: relative;
    z-index: 10;
    padding: 20px 0;
}
#cat-slider {
    max-height: 600px;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    text-align: center;
    position: relative;
}
#cat-slider .swiper-wrapper:before {
    content: '';
    display: block;
    width: 1px;
    height: 110%;
    position: absolute;
    left: 0;
    top: -57px;
    right: 0;
    background: #c5c5c7;
    margin: 0 auto;
    z-index: 10;
}
.swiper-button-prev img {
    width: 40px;
    rotate: 180deg;
    filter: brightness(0) invert(1);
}
.swiper-button-next img {
    filter: brightness(0) invert(1);
    width: 40px;
}
.swiper label {
    font-size: 12px;
    color: #fff;
    opacity: 0;
}
.swiper-slide {
    position: relative;
    z-index: 11;
    cursor: pointer;
}
.swiper-slide.swiper-slide-active label {
    opacity: 1;
    padding: 0;
    margin: 5px auto;
    backdrop-filter: blur(10px);
    line-height: 20px;
}
.swiper-slide img {
    filter: grayscale(100%);
    border: 2px solid #fff;
    border-radius: 100%;
    scale: 0.8;
    width: 125px;
    height: 125px;
}
.swiper-slide.swiper-slide-active img {
    filter: grayscale(0);
    scale: 1;
}
.img-wrap {
    position: relative;
}
.swiper-slide.swiper-slide-active .img-wrap:before, 
.swiper-slide.swiper-slide-active .img-wrap:after {
    content: '';
    width: 6px;
    height: 7px;
    background: #fff;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: -3px;
    margin: 0 auto;
    rotate: 45deg;
    z-index: 11;
}
.swiper-slide.swiper-slide-active .img-wrap:after {
    top: initial;
    bottom: -3px;
}
.swiper-slide.swiper-slide-next {
    margin-top: 20px;
}
.swiper-slide.swiper-slide-active ~ .swiper-slide {
    margin-bottom: -15px;
}
.mini-character {
    margin: 5px;
    display: inline;
    cursor: pointer;
}
.mini-character img {
    border-radius: 100%;
    filter: grayscale(1);
    width: 70px;
}
.mini-character.active img {
    filter: grayscale(0);
}
#character-mb {
    display: none;
}
.characters-container {
    position: relative;
}
@media (max-width: 991px) {
    #fs-banner {
        padding-bottom: 0;
    }
    .characters-container {
        position: relative;
        padding-bottom: 88px;
    }
    #character {
        display: none;
    }
    #character-mb {
        width: 100%;
        display: block;
    }
    #cat-slider-wrap {
        flex-direction: initial;
        padding: 0;
    }
    #cat-slider {
        height: fit-content;
        width: 100%;
    }
    #cat-slider .swiper-wrapper:before {
        display: none;
    }
    .swiper-slide.swiper-slide-active ~ .swiper-slide {
        margin: 0;
    }
    .swiper-wrapper {
        padding: 0;
        display: inline-flex;
    }
    .swiper-button-prev img {
        rotate: 90deg;
    }
    .swiper-button-next img {
        rotate: 270deg;
    }
    .swiper-slide img {
        width: 80px;
        height: 80px;
    }
    .mini-character {
        margin: 2px;
    }
    .mini-character img {
        width: 50px;
    }
    .mini-chars-wrap {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background: #00000096;
        z-index: 100;
        padding: 10px;
        width: 100%;
        display: flex;
        overflow-x: auto;
    }
}