div.banner {
    position: relative;
}

div.banner > div.desktop {
    position: relative;
    display: block;
}

div.banner > div.mobile {
    position: relative;
    display: none;
}

div.banner .swiper {
    width: 100%;
}

div.banner .swiper-pagination-horizontal {
    position: absolute;
    text-align: center;
    height: 0px;
    left: 0px;
    bottom: 40px;
    z-index: 1;
}

div.banner .swiper-pagination-bullet {
    background: #464646;
    width: 16px;
    height: 16px;
    border: 1px solid #ddd;
}

div.banner .swiper-pagination-bullet-active {
    background: #cd0e37;
}

div.about {
    position: relative;
    padding: 0px 20px;
    margin-top: 80px;
}

div.about > div {
    max-width: 780px;
    margin: auto;
    line-height: 2;
}

div.product {
    position: relative;
    padding: 80px 20px;
}

div.product > div > h1.section-title {
    margin-bottom: 60px;
}

div.product > div.list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
    max-width: 1200px;
    margin: auto;
}

div.product > div.list > div.block {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 calc(25% - 15px);
            flex: 0 1 calc(25% - 15px);
    text-align: center;
    border-radius: 15px;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.7);
    overflow: hidden;
}

div.product > div.list > div.block > a {
    position: relative;
    display: block;
}

div.product > div.list > div.block > a > div.photo {
    position: relative;
}

div.product > div.list > div.block > a > div.title {
    position: absolute;
    background: #cd0e37;
    padding: 10px 20px;
    color: #fff;
    left: 0px;
    right: 0px;
    bottom: 0px;
    text-align: center;
}

@media only screen and (max-width: 1080px) {
    div.product > div.list {
        gap: 30px;
    }
    
    div.product > div.list > div.block {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 calc(50% - 15px);
                flex: 0 1 calc(50% - 15px);
    }
}

@media only screen and (max-width: 800px) {
    div.banner > div.desktop {
        display: none;
    }

    div.banner > div.mobile {
        display: block;
    }
}

@media only screen and (max-width: 600px) {
    div.product > div.list > div.block {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 100%;
                flex: 0 1 100%;
    }
}