@charset "UTF-8";
/*---Banner---*/
.banner__container{
    z-index:20;
}
.banner__wrapper{
    width: 100%;
    height: 30rem;
    margin-block-start: 4rem;
    overflow: hidden !important;
    position: relative;
    border-radius:1.4rem;
    background-color: var(--color__light-10);
    box-shadow: var(--shadow__main);
}
.banner * {
    transition: var(--transition__regular);
}
.banner__element{
    position: absolute;
    width:8rem;
    height:20rem;
    background-image: linear-gradient(to bottom, var(--color__primary-70) 60%, var(--color__light-90));
}
.banner__details{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.banner__element:nth-child(1){
    height: 51rem;
    transform: rotate(-45deg) translatey(-342px) translateX(-177px);
}
.banner__element:nth-child(2){
    height: 32rem;
    z-index: 2;
    transform: rotate(225deg) translateY(-158px) translateX(22px);
}
.banner__element:nth-child(3){
    height: 43rem;
    z-index: 3;
    transform: rotate(-45deg) translateX(43px) translateY(-161px);
    background-image: linear-gradient(to bottom, var(--color__light-90), var(--color__primary-70) 60%);
}
.banner__element:nth-child(4){
    height: 31rem;
    z-index: 4;
    transform: rotate(45deg) translateX(-267px) translateY(53px);
}
.banner__element:nth-child(5){
    height: 17rem;
    transform: rotate(-45deg) translateY(-45px) translateX(55px);
}
.banner__element:nth-child(6){
    height: 9rem;
    width: 9rem;
    transform: rotate(135deg) translateX(216px) translateY(292px);
}
.banner__element:nth-child(7){
    height: 11rem;
    width: 11rem;
    transform: rotate(-45deg) translateX(-173px) translateY(179px);
}
.banner__element:nth-child(8){
    visibility: hidden;
    width: 11rem;
    height: 10rem;
    transform: rotate(45deg) translateY(483px) translateX(-100px);
}
.banner__avatar{
    z-index:1;
    overflow: hidden;
    position: absolute;
    border: 0.4rem solid var(--color__primary-70);
    border-radius: 0.5rem;
    width: 14rem;
    height: 14rem;
    transform: rotate(45deg) translateY(162px) translateX(-60px);
}
.banner__avatar-img{
    position: absolute;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    top: 50%;
    left: 50%;
    width: 14rem;
    height:14rem;
    object-fit: cover;
    transform: rotate(-45deg) scale(1.5) translate(0%, -47%);
}
.banner__avatar-img--active{
    margin-right:-50px;
    opacity: 100%;
    visibility: visible;
    pointer-events: visible;
}
.banner-content{
    position: relative;
    width: 56rem;
    height: 77rem;
    background-image: linear-gradient(to bottom, var(--color__primary-70) 60%, var(--color__light-90));
    transform: rotate(-45deg) translateX(-259px) translateY(-486px);
}
.banner__title{
    width: fit-content;
    transform: translateY(-220px) translateX(-623px);
    color:var(--color__light-10);
    font-family: var(--font__ordinary-title-two);
    font-size: var(--font-size__ordinary-title-two);
}
.banner__title::after{
    content: "";
    display: block;
    border-bottom: 0.2rem solid var(--color__light-10);
    opacity: 0.5;
    margin-block-start: 1rem;
}
.banner-content__caption{
    color: var(--color__light-30);
    line-height: 1.5;
    transform: rotate(45deg) translateY(185px) translateX(118px);
}
/*---Category---*/
.category{
    margin-block-start: 6rem;
}
.category__title{
    display: flex;
    align-items: center;
    justify-content: center;
    text-wrap: nowrap;
    gap:1rem;
    margin-block-end: 3rem;
    font-family: var(--font__ordinary-title-three-bold);
    font-size: var(--font-size__ordinary-title-three);
    color:var(--color__secondary-60);
    text-align: center;
}
.category__title::before, .category__title::after{
    content: "";
    display: block;
    width: 100%;
    z-index: 3;
    height: 0.2rem;
    background-color: var(--color__secondary-20);
    border-radius:6.5rem;
}
.category__container{
    display: flex;
    align-items: center;
    padding-block-end:2.1rem;
   justify-content: space-between;
}
.category-item{
    padding-block: 1.5rem;
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.category-item *{
    transition: var(--transition__regular);
}
.category-item:not(:last-child){
    border-left: 0.1rem solid var(--color__secondary-20);
}
.category-item:hover .category-item__body{
    transform:scale(1.12);
}
.category-item:hover .category-item__subtitle{
    transform:scale(1.15);
}
.category-item__body{
    width: 9rem;
    height: 9rem;
}
.category-item__img{
    width:100%;
    height:100%;
    object-fit: cover;
}
.category-item__subtitle{
    height: 2.5rem;
    text-align: center;
    margin-block-start: 2rem;
    font-family: var(--font__ordinary-title-three-light);
    font-size: var(--font-size__normal-large);
    color: var(--color__secondary-60);
}
.swiper-pagination.ct-pg{
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(0.8rem);
    gap:0.8rem;
}
.category-pagination{
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 100%;
    background-color: var(--color__primary-40);
}
.category-pagination--active{
    background-color: var(--color__primary-80);
}
/*---Product---*/
.products{
    margin-block-start: 8rem;
}
.products__container{
    position: relative;
}
.products-header{
    display: flex;
    align-items: center;
    gap:1rem;
    margin-block-end: 3rem;
}
.products-header__title{
    text-wrap: nowrap;
    color: var(--color__secondary-60);
    font-family: var(--font__ordinary-title-three-bold);
    font-size: var(--font-size__ordinary-title-three);
}
.products-header__title::before, .products-header__title::after{
    content: "";
    display: none;
    width: 100%;
    height: 0.2rem;
    background-color: var(--color__secondary-20);
    border-radius:6.5rem;
}
.products-header__divider{
    width: 100%;
    height: 0.2rem;
    background-color: var(--color__secondary-20);
    border-radius: 6.5rem;
}
.products-header__left{
    display: flex;
    align-items: center;
    gap:1.4rem;
}
.products__link{
    margin-block-start: 2.2rem;
    text-align: center;
    display: none;
}
.products__link a{
    text-wrap: nowrap;
    color:var(--color__light-80);
    transition: var(--transition__regular);
    font-size: var(--font-size__normal-large);
    font-family: var(--font__normal-large-medium);
}
.products__link a:hover{
    color: var(--color__secondary-90);
}
.products-header__link{
    text-wrap: nowrap;
    font-family: var(--font__medium-normal);
    font-size: var(--font-size__medium-normal);
    color:var(--color__secondary-base);
    transition: var(--transition__regular);
}
.products-header__link:hover{
    color: var(--color__secondary-90);
}
.product-header__gap{
    height: 2rem;
    width: 0.2rem;
    background-color: var(--color__secondary-20);
}
.products-pagination{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3rem;
}
.products-pagination__button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.7rem;
    height: 1.7rem;
    cursor: pointer;
}
.products-pagination__button:hover svg path{
    stroke: var(--color__secondary-90);
}
.products-pagination__button svg{
    width: 100%;
    height: 100%;
}
.products-pagination__button:nth-child(1) svg{
    transform: rotate(180deg);
}
.product-container{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.products__slide{
    display: flex;
    justify-content: center;
    align-items: center;
}
/*---Back to Top---*/
.back-to-top{
    width: fit-content;
    margin-block-start: 8rem;
    margin-inline: auto;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    cursor: pointer;
}
.back-to-top__icon{
    animation: scaleOut 0.6s ease infinite forwards;
    transition: var(--transition__regular);
}
.back-to-top__text{
    font-size: var(--font-size__ordinary-title-two);
    font-family: var(--font__ordinary-title-two);
    color: var(--color__secondary-50);
}
/*---Trust---*/
.trust{
    margin-block-start: 8rem;
}
.trust > .container{
    display: flex;
    align-items: center;
    justify-content: center;
}
.trust__item{
    width: 100%;
    max-width: 23rem;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    gap:2rem;
}
.trust__item:not(:last-child){
    border-left: 1px solid var(--color__secondary-40);
}
.trust__icon{
    width: 7.8rem;
    height: 7.8rem;
}
.trust__icon img{
    width: 100%;
    height: 100%;
}
.trust__text{
    color: var(--color__secondary-50)
}

.product-tip__content{
    width:100%;
    background-color: rgba(203, 232, 253, 0.68);
    background-size:cover;
    background-position: center center;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    border: 0.2rem solid var(--color__primary-60);
    border-radius: 1rem;
    padding: 1.5rem;
}
.product-tip__title{
    margin-block-end: 1.5rem;
    font-size: var(--font-size__normal-large);
    font-family: var(--font__normal-large-medium);
    color: var(--color__secondary-100);
}
.product-tip__caption{
    line-height: 1.35;
    font-size: var(--font-size__medium-normal);
    color: var(--color__secondary-90);
}
.product-tip__caption > a{
    display: inline-block;
    color: var(--color__light-70);
    text-decoration: underline 1px solid var(--color__light-70);
    text-underline-offset: 4px;
}
.product-tip__caption--1{
    margin-block-end: 1.2rem;
}
.product-tip__info{
    margin-block-end: 1.2rem;
    margin-block-start: 2rem;
    line-height: 1.5;
    color: var(--color__secondary-90);
    display: flex;
    flex-flow: column;
    gap:10px;
}
.product-tip__info-wrapper{
    display: flex;
    align-items: center;
    gap:15px;
}
.product-tip__icon{
    margin-top: -8px;
    width:30px;
    height:30px
}
.product-tip__value{
    font-size:18px;
    color:#292a4f;
}
/*---Animation---*/
@keyframes circle1-fade {
    100%{
        transform: rotate(180deg) translateY(0);
    }
}
@keyframes fade-in{
    100%{
        transform: translateY(0) translateX(0);
    }
}
@keyframes scaleOut {
    0%{
        transform: translateY(0);
    }
    100%{
        transform: translateY(-.8rem);
    }
}
/*---Responsive---*/
@media only screen and (min-width: 1400px){
    .banner-content{
        width: 71rem;
        height: 105rem;
        transform: rotate(-45deg) translateX(-183px) translateY(-522px);
    }
    .banner-content__caption{
        transform: rotate(45deg) translateY(235px) translateX(200px);
    }
}
@media only screen and (max-width: 1200px){
    .category-item:not(:last-child){
        border-left-color: transparent;
    }
    .banner__title{
        font-family: var(--font__normal-large-medium);
        font-size: var(--font-size__normal-large);
        transform: translateY(-195px) translateX(-551px);
    }
    .banner-content__caption{
        font-size: var(--font-size__normal-small);
        font-family: var(--font__normal-small);
        transform: rotate(45deg) translateY(199px) translateX(232px);
    }
}
@media only screen and (max-width: 992px){
    .banner__element:nth-child(1) {
        height: 57rem;
        transform: rotate(-45deg) translatey(-417px) translateX(-207px);
    }
    .banner__element:nth-child(2) {
        height: 34rem;
        transform: rotate(225deg) translateY(-174px) translateX(80px);
    }
    .banner__element:nth-child(3) {
        height: 45rem;
        z-index: 3;
        transform: rotate(-45deg) translateX(18px) translateY(-150px);
    }
    .banner__element:nth-child(4) {
        height: 31rem;
        transform: rotate(45deg) translateX(-331px) translateY(105px);
    }
    .banner__element:nth-child(5) {
        height: 23rem;
        transform: rotate(-45deg) translateY(-55px) translateX(43px);
    }
    .banner__element:nth-child(6) {
        height: 9rem;
        width: 9rem;
        transform: rotate(135deg) translateX(266px) translateY(358px);
    }
    .banner__element:nth-child(7) {
        height: 11rem;
        width: 11rem;
        transform: rotate(-45deg) translateX(-215px) translateY(139px);
    }
    .banner-content__caption, .banner__title{
        display: none;
    }
    .banner-content {
        position: relative;
        width: 21rem;
        height: 37rem;
        transform: rotate(-45deg) translateX(-407px) translateY(-432px);
    }
    .banner__element:nth-child(8) {
       visibility: visible;
    }
    .banner__avatar {
        width: 16rem;
        height: 16rem;
        transform: rotate(45deg) translateY(189px) translateX(-119px);
    }
    .banner__avatar-img {
        width: 16rem;
        height: 16rem;
    }
}
@media only screen and (max-width:768px){
    .banner{
        height: 26rem;
    }
    .product-tip__content{
        margin-block-start: 2rem;
    }
    .product-tip__title{
        text-align: center;
    }
}
@media only screen and (max-width: 576px){
    .category__title, .products-header__title{
        font-size: var(--font-size__normal-large);
    }
    .category-item__body{
        width: 8rem;
        height: 8rem;
    }
    .category-item__subtitle{
        font-size: var(--font-size__medium-normal);
    }
    .trust__item:not(:last-child){
        border-left: none;
    }
    .trust > .container{
        gap:4.4rem;
    }
    .banner__details{
        transform: translateX(53px);
    }
    .banner-content{
        transform: rotate(-45deg) translateX(-370px) translateY(-394px);
    }
}
@media only screen and (max-width: 995px) {
    .banner{
        display: none;
        pointer-events: none;
    }
}
@media only screen and (max-width:480px){
    .banner__details {
        transform: translateX(80px);
    }
    .banner-content {
        transform: rotate(-45deg) translateX(-351px) translateY(-374px);
    }
}
@media only screen and (max-width: 450px){
    .banner__details {
        transform: translateX(88px) translateY(8px);
    }
    .banner-content {
        transform: rotate(-45deg) translateX(-350px) translateY(-357px);
    }
}
@media only screen and (max-width:430px) {
    .banner__details {
        transform: translateX(102px) translateY(8px);
    }
    .banner-content {
        transform: rotate(-45deg) translateX(-339px) translateY(-342px);
    }
}
@media only screen and (max-width: 400px){
    .products-header__title{
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        text-wrap: nowrap;
        gap: 1rem;
    }
    .products-header__title::before, .products-header__title::after{
        content: "";
        display: block;
        width: 100%;
        height: 0.2rem;
        background-color: var(--color__secondary-20);
        border-radius:6.5rem;
    }
    .products-header__divider, .products-header__left{
        display: none;
    }
    .product{
        width: 100% !important;
    }
    .products__link{
        display: block;
    }
    .banner__details {
        transform: translateX(115px) translateY(8px);
    }
    .banner__element:nth-child(8) {
        transform: rotate(45deg) translateY(483px) translateX(-129px);
    }
}
@media only screen and (max-width:375px) {
    .banner__details {
        transform: translateX(129px) translateY(8px);
    }
}
@media only screen and (max-width:350px){
    .banner__details {
        transform: translateX(140px) translateY(8px);
    }
}