:root {
    --colors-primary: #1278ed;
    --colors-primary2: #368ef0;
    --colors-default: #171717;
    --colors-grey: #333;
    --colors-grey2: #757575;
    --colors-grey-light-1: #acacac;
    --colors-grey-light-2: #f7f7f7;
    --colors-white: #fff;
    --colors-accent: #fe2c48;


    --font-family: "DM Sans", sans-serif;
    --second-family: "Montserrat", sans-serif;
    --third-family: "Inter", sans-serif;
    --font3: "Roboto", sans-serif;
}

@mixin desktop {
    @media (max-width: 1200px) {
        @content;
    }
}

@mixin tablet {
    @media (max-width: 992px) {
        @content;
    }
}

@mixin mobile {
    @media (max-width: 768px) {
        @content;
    }
}

@mixin sm-mobile {
    @media (max-width: 576px) {
        @content;
    }
}

body {
    background-color: #fff;
    font-family: var(--font-family);
}

html,
body {
    height: 100%;
    margin: 0;
}

.body--noscroll {
    @include mobile {
        overflow: hidden;
        touch-action: none;
    }
}

.page {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1;
}


* {
    background-repeat: no-repeat;
    box-sizing: border-box;
}

.container {
    max-width: 1540px;
    margin: 0 auto;
    padding: 0 30px;

    @include tablet {
        width: 100%;
        padding: 0 15px;
    }
}



// 
// 
// 

.title-main {
    font-family: var(--second-family);
    font-weight: 700;
    font-size: clamp(26px, 4vw, 36px);
    line-height: 111%;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--colors-default);
    margin-bottom: 20px;

    span {
        color: var(--colors-primary);
    }

    a{
        color: var(--colors-default);
        span{
            color: var(--colors-primary);
        }
    }
}





.cookies{
    background: var(--colors-primary);
    position: fixed;
    width: 100%;
    bottom: 0;
    z-index: 100;
    padding: 30px 0 40px 0;

    &__logo{
        img{
            width: 80px;
        }
    }

    &__box{
        display: flex;
        padding: 2px 164px 2px 84px;
        display: flex;
        align-items: flex-end;
        gap: 24px;
    }

    &__title{
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 28px;
        line-height: 120%;
        letter-spacing: 0.01em;
        color: var(--colors-white);
        margin-bottom: 12px;
    }

    p{
        font-family: var(--font-family);
        font-weight: 500;
        font-size: 16px;
        line-height: 120%;
        letter-spacing: 0.01em;
        color: var(--colors-white);

        a{
            text-decoration: underline;
            color: var(--colors-white);
        }
    }

    .btn-dark{
        min-width: 200px;
        font-weight: 700;
        font-size: 16px;
        line-height: 125%;
        padding: 15px;
        border: none;
        
        &:hover{
            background: var(--colors-default) !important;
            opacity: 0.9 !important;
        }

        @include sm-mobile{
            font-size: 14px;
            padding: 12px;
        }


    }


    @include desktop {

        padding: 30px 0 40px 0;
    
        &__box{
            padding: 2px 0;
        }

        &__logo{
            img{
                width: 80px;
            }
        }
    
        &__title{
            font-size: 26px;
        }
    
        p{
            font-size: 16px;
        }
    
        .btn-dark{
            min-width: 150px;
        }
    }

    @include mobile {

        padding: 20px 0 20px 0;
    
        &__box{
            padding: 0px;
        }

        &__logo{
            display: none;
            img{
                width: 50px;
            }
        }
    
        &__title{
            font-size: 20px;
        }
    
        p{
            font-size: 14px;
        }

    }

    @include sm-mobile {
        &__box{
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }
    }

}





// hero


.hero{
    background: var(--colors-white);
    padding-bottom: 20px;

    .heroSlider{
        display: flex;
        position: relative;
    }

    .heroSlider-next,
    .heroSlider-prev{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        background:var(--colors-default);
        position: absolute;
        z-index: 10;
        top: calc(50% + 10px);
        cursor: pointer;
        transition: 0.23s;
        &:hover{    
            opacity: 0.8;
        }

        @media (max-width: 378px) {
            display: none;
        }
    }

    .heroSlider-next{
        right: 20px;
    }

    .heroSlider-prev{
        left: 20px;
    }

    .swiper-slide{
        position: relative;
        width: 100%;
        min-height: 100%;
    }

    .heroSlider-wrap{
        width: 100%;
    }

    &__image{
        width: 100%;
        height: 545px;
        img{
            width: 100%;
            min-height: 100%;
            object-fit: cover;
            object-position: center;
        }
    }

    &__title{
        font-family: var(--font-family);
        font-weight: 700;
        font-size: 48px;
        line-height: 120%;
        color: var(--colors-white);
        margin-bottom: 20px;
    }

    &__text{
        font-family: var(--font-family);
        font-weight: 500;
        font-size: 20px;
        line-height: 120%;
        letter-spacing: 0.01em;
        color: var(--colors-white);
        margin-bottom: 40px;
    }

    &__box{
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        right: 0;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        padding: 20px 80px;

        overflow: hidden;

        &::before{
            position: absolute;
            display: block;
            content: '';
            width: 100%;
            height: 100%;
            top: 0;
            right: 0;
            background: linear-gradient(269.74deg, rgba(0, 0, 0, 0) 21.22%, rgba(0, 125, 252, 0.6) 65.4%);
            transform: rotate(180deg);
        }
    }

    &__content{
        max-width: 520px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        position: relative;
        z-index: 2;
    }

    .heroSlider-left{
        .hero__box{
            justify-content: flex-start;

            &::before{
                right: auto;
                left: 0;
                background: linear-gradient(269.74deg, rgba(0, 0, 0, 0) 21.22%, rgba(0, 125, 252, 0.6) 65.4%);
                transform: rotate(360deg) !important;
            }
        }
    }

    @include mobile {

        &__image{
            height: 345px;
        }

        &__content{
            max-width: 400px;
        }

        &__title{
            font-size: 36px;
            margin-bottom: 20px;
        }
    
        &__text{
            font-size: 18px;
            margin-bottom: 20px;
        }
    
        &__box{
            padding: 20px 80px;
    
            &::before{
                background: linear-gradient(269.74deg, rgba(0, 0, 0, 0) 0.22%, rgba(0, 125, 252, 0.6) 65.4%);
                transform: rotate(180deg);
            }
        }
    }

    @include sm-mobile {
        &__image{
            height: 445px;
        }
        &__title{
            font-size: 28px;
            margin-bottom: 20px;
        }
        &__text{
            font-size: 16px;
        }

        &__box{
            justify-content: flex-start;

            padding: 15px;
        
            // padding-bottom: 45px;

            &::before{
                right: auto;
                left: 0;
                background: linear-gradient(269.74deg, rgba(0, 0, 0, 0) 0%, rgba(0, 125, 252, 0.5) 20%);
                transform: rotate(360deg) !important;
            }
        }
        .heroSlider-next{
            right: 10px;
        }
    
        .heroSlider-prev{
            left: 10px;
        }

        .heroSlider-next,
        .heroSlider-prev{
            width: 30px;
            height: 30px;
            top: auto;
            bottom: 10px;
            svg{
                height: 15px;
            }
        }
    }
}

.btn-dark{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: var(--colors-default);
    padding: 15px 28px;

    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: 0.01em;
    text-align: center;
    color: var(--colors-white);

    transition: 0.23s;

    &:hover{    
        background: var(--colors-primary);
    }
}







// main-category

.main-category {

    padding: clamp(20px, 4vw, 40px) 0 clamp(40px, 8vw, 80px) 0;
    background-color: var(--colors-grey-light-2);

    &__list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
    }


    @include desktop {
        &__list{
            grid-template-columns: repeat(3, 1fr);
        }
    }

    @include tablet {
        &__list{
            grid-template-columns: repeat(2, 1fr);
        }
    }

    @include sm-mobile {
        &__list{
            grid-template-columns: repeat(1, 1fr);
            gap: 12px;
        }
    }

}

.main-category-item {
    background: var(--colors-white);
    padding: 20px 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;

    &__top {
        display: flex;
        justify-content: space-between;
        width: 100%;
        align-items: flex-start;
        gap: 12px;
    }

    &__title {
        font-family: var(--second-family);
        font-weight: 600;
        font-size: 20px;
        line-height: 150%;
        letter-spacing: 0.01em;
        color: var(--colors-default);
    }

    @media (max-width: 1300px) {
        padding: 20px;
        &__title{
            font-size: 18px;
        }
        img{
            width: 50px;
        }
    }

    @include sm-mobile {
        gap: 8px;
    }
}


.mcat-link {
    display: flex;
    align-items: center;
    gap: 12px;

    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.01em;
    color: var(--colors-primary);

    transition: 0.23s;

    &:hover {
        gap: 18px;
    }
}



// section

.section {
    padding: clamp(20px, 4vw, 40px) 0;

    background: var(--colors-grey-light-2);

    &--v2 {
        padding-bottom: clamp(40px, 8vw, 80px);
    }
}


.nowe-prod-list{
    @include desktop {
        .prod-list {
            grid-template-columns: repeat(4, 1fr);
            .prod-card:nth-child(n+5) {
                display: none;
            }
        }
    }
}
.popular-prod-list{
    @include desktop {
        .prod-list {
            grid-template-columns: repeat(4, 1fr);
            .prod-card:nth-child(n+9) {
                display: none;
            }
        }
    }
}


// prod-list

.prod-list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;

    @include desktop {
        grid-template-columns: repeat(4, 1fr) !important;
    }

    @include tablet {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    @include sm-mobile {
        gap: 12px;
    }
}


// prod card

.prod-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;

    &__image {
        overflow: hidden;
        background: var(--colors-white);
        padding-left: 1px;
        padding-right: 1px;
        img {
            width: 100%;
            transition: 0.34s;
            transform: scale(1);
        }

        &:hover {
            img {
                transform: scale(1.1);
            }
        }
    }

    &__content {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 16px;
        padding: 20px;
        background: var(--colors-white);
        flex-grow: 1;
    }

    &__name {
        a {
            font-family: var(--font-family);
            font-weight: 400;
            font-size: clamp(14px, 2vw, 16px);
            line-height: 140%;
            color: #1f1f22;
            transition: 0.23s;

            &:hover {
                color: var(--colors-primary);
            }
        }
    }

    &__bottom {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
    }

    .prod-card-price {
        display: grid;

        &__old {
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 14px;
            line-height: 143%;
            text-decoration: line-through;
            color: var(--colors-primary2);
        }

        &__new {
            font-family: var(--font-family);
            font-weight: 600;
            font-size: 18px;
            line-height: 156%;
            color: var(--colors-default);
        }
    }

    .prod-card-add {
        background: var(--colors-primary);
        border: none;
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: 0.23s;

        img{
            width: 25px;
        }

        &:hover {
            opacity: 0.9;
        }
    }

    &--detailed{
        .prod-card__labels{
            display: flex;
            flex-wrap: wrap;
            gap: 2px 20px;
            margin-bottom: 4px;
        }

        .avlbl{
            font-family: var(--font-family);
            font-weight: 500;
            font-size: 14px;
            line-height: 171%;
            background-repeat: no-repeat;
            background-position: center left;

            padding-left: 18px;

            &--yes{
                background-image: url(../img/icons/check.svg);
                color: #00aa5b;
            }
            &--order{
                background-image: url(../img/icons/bookmark.svg);
                color: #ffc120;
            }
        }

        .lbl-brand{
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 16px;
            line-height: 150%;
            color: var(--colors-grey2);
        }


        .prod-card__bottom{
            flex-direction: column;
            width: 100%;
        }

        .prod-card-price{
            display: flex;
            align-items: center;
            justify-content: flex-start;
            width: 100%;
            gap: 20px;
        }

        .prod-card__order{
            display: flex;
            gap: 12px;
        }
        .prod-item-count{
            width: 50%;
            padding-top: 4px;
            padding-bottom: 4px;
        }

        .prod-card-add{
            width: 50%;
        }

        @include desktop {
            .prod-card-price{
                flex-direction: column;
                align-items: flex-start;
                gap: 2px;
            }
            .prod-card__order{
                gap: 4px;
            }
        }

        @include mobile {
            .prod-card__labels{
                gap: 2px 10px;
            }
            .avlbl{
                font-size: 12px;
                padding-left: 18px;
            }
            .lbl-brand{
                font-size: 14px;
            }
        }

        @include sm-mobile {

            .prod-card-add{
                width: 50% !important;
                height: 35px !important;
            }
        }
        
        @media (max-width: 359px) {
            .prod-card__order{
                flex-direction: column;
            }
            .prod-item-count{
                width: 100%;
                height: 30px;
            }
            .prod-card-add{
                width: 100% !important;
                height: 30px !important;
            }
        }

    }

    @include sm-mobile {
        &__content{
            padding: 20px 12px;
        }

        .prod-card-price {
            display: grid;
    
            &__old {
                font-size: 12px;
            }
    
            &__new {
                font-size: 14px;
            }
        }

        .prod-card-add {
            width: 30px;
            height: 30px;
            img{
                width: 20px;
            }
        }
    }
}

.prod-card-top {
    position: absolute;
    z-index: 2;
    top: 20px;
    right: 20px;
    display: grid;
    gap: 4px;

    @include sm-mobile {
        top: 10px;
        right: 10px;
    }
}

.prod-label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;

    span {
        font-family: var(--font-family);
        font-weight: 900;
        font-size: 12px;
        line-height: 133%;
        color: var(--colors-white);
    }

    &--discount {
        background: var(--colors-default);
    }

    &--new {
        background: var(--colors-primary2);
    }

    &--like {
        cursor: pointer;

        svg {
            transition: 0.23s;

            path {
                transition: 0.23s;
            }
        }

        &:hover {
            svg {
                transition: 0.23s;

                path {
                    transition: 0.23s;
                    stroke: var(--colors-accent);
                }
            }
        }

        &.active {
            svg {
                path {
                    stroke: var(--colors-accent);
                    fill: var(--colors-accent);
                }
            }
        }
    }

    @include sm-mobile {
        width: 35px;
        height: 35px;
        span {
            font-size: 10px;
        }
    }
}









// tabs

.tab-section {
    padding: clamp(30px, 6vw, 60px) 0 clamp(20px, 4vw, 40px) 0;
}

.tabs {
    display: flex;
    align-items: flex-start;
    gap: 40px;

    .tab-buttons {
        display: grid;
        min-width: 354px;
        max-width: 354px;
        gap: 1px;

        button {
            border: none;
            cursor: pointer;
            transition: background 0.3s;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 15px 24px;

            box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
            background: var(--colors-white);

            font-family: var(--font-family);
            font-weight: 400;
            font-size: 24px;
            letter-spacing: 0.01em;
            color: var(--colors-default);

            &.active {
                background: var(--colors-grey-light-2);
                color: var(--colors-primary);

                svg {
                    path {
                        stroke: var(--colors-primary);
                    }
                }
            }

            &:hover {
                background: var(--colors-grey-light-2);
                color: var(--colors-primary);

                svg {
                    path {
                        stroke: var(--colors-primary);
                    }
                }
            }
        }
    }

    .tab-content {
        flex-grow: 1;
    }

    .tab-pane {
        display: none;

        background: var(--colors-grey-light-2);
        padding: 40px;

        &__title {
            font-family: var(--font-family);
            font-weight: 700;
            font-size: 40px;
            line-height: 100%;
            letter-spacing: 0.01em;
            color: var(--colors-default);
            padding: 10px 0;
            margin-bottom: 20px;
            line-height: normal;
        }
        &__title2 {
            font-family: var(--font-family);
            font-weight: 700;
            font-size: clamp(22px, 3.467vw, 32px);
            line-height: 125%;
            letter-spacing: 0.01em;
            color: var(--colors-default);
            padding: 10px 0;
            margin-bottom: 20px;
        }

        p {
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 20px;
            line-height: 140%;
            letter-spacing: 0.01em;
            color: var(--colors-default);
            padding: 10px 0;
            margin-bottom: 20px;
        }

        ul{
            list-style-type: decimal;
            padding: 10px 0;
            padding-left: 20px;
            margin-bottom: 25px;
            li{
                font-family: var(--font-family);
                font-weight: 400;
                font-size: 20px;
                line-height: 140%;
                letter-spacing: 0.01em;
                color: var(--colors-default);
                p{
                    padding: 0;
                    margin-bottom: 0;
                }
            }
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
            }

            to {
                opacity: 1;
            }
        }

        &.active {
            display: block;
            animation: fadeIn 0.3s ease;
        }
    }

    @include tablet{

        flex-direction: column;

        .tab-buttons {
            min-width: 100%;
            max-width: 100%;
    
            button {
                padding: 12px 20px;
                font-size: 18px;
            }
        }   
        .tab-pane {
            padding: 24px;
            max-width: calc(100vw - 30px);
    
            &__title {
                font-size: 28px;
            }
    
            p {
                font-size: 18px;
            }
        } 
    }

    @include mobile{
        gap: 24px;

        .tab-buttons {
            min-width: 100%;
            max-width: 100%;
    
            button {
                padding: 14px 14px;
                font-size: 18px;

                svg{
                    width: 32px;
                    height: 32px;
                }
            }
        }   
        .tab-pane {
            padding: 18px;
            max-width: calc(100vw - 30px);
            &__title {
                font-size: 24px;
                margin-bottom: 0px;
            }
    
            p {
                font-size: 16px;
            }
        } 
    }
}



.table{
    
    &__wrap{
        display: grid;
        gap: 8px;
    }


    .table_top{
        display: flex;
        background: rgba(18, 120, 237, 0.2);
        padding: 11px 0;
        gap: 16px;

        &__col{
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 16px;
            line-height: 112%;
            color: var(--colors-primary);
            padding: 0 24px;

            &:nth-child(1){
                min-width: 314px;
                max-width: 314px;
            }

            &:nth-child(2){
                width: 100%;
                overflow-wrap: anywhere;

            }
        }
    }

    .table_body{
        display: grid;
        gap: 8px;

        &__row{
            background: var(--colors-white);
            display: flex;
            align-items: center;
            padding: 19px 0;
            gap: 16px;
        }

        &__col{
            padding: 0 24px;
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 16px;
            line-height: 175%;
            color: #242426;
            &:nth-child(1){
                min-width: 314px;
                max-width: 314px;
            }

            &:nth-child(2){
                width: 100%;
                overflow-wrap: anywhere;
            }
        }
    }

    @include desktop {
        .table_top{
            padding: 11px 0;
            // gap: 0px;
    
            &__col{
                // font-size: 14px;
                // padding: 0 12px;
    
                &:nth-child(1){
                    min-width: 190px;
                    max-width: 190px;
                }
    
                &:nth-child(2){
                    width: 100%;
                }
            }
        }
    
        .table_body{
            // gap: 8px;
    
            &__row{
                padding: 12px 0;
            //     gap: 0px;
            }
    
            &__col{
                // padding: 0 12px;
                // font-size: 14px;
                &:nth-child(1){
                    min-width: 190px;
                    max-width: 190px;
                }
    
                &:nth-child(2){
                    width: 100%;
                }
            }
        }
    }

    @include mobile {
        .table_top{
            padding: 11px 0;
            gap: 0px;
    
            &__col{
                font-size: 14px;
                padding: 0 12px;
    
                &:nth-child(1){
                    min-width: 190px;
                    max-width: 190px;
                }
    
                &:nth-child(2){
                    width: 100%;
                }
            }
        }
    
        .table_body{
            gap: 8px;
    
            &__row{
                padding: 12px 0;
                gap: 0px;
            }
    
            &__col{
                padding: 0 12px;
                font-size: 14px;
                &:nth-child(1){
                    min-width: 190px;
                    max-width: 190px;
                }
    
                &:nth-child(2){
                    width: 100%;
                }
            }
        }
    }
    @include sm-mobile {
        width: 100%;
        overflow-x: auto;

        &__wrap {
            min-width: 500px;
            max-width: 500px;
            overflow: scroll;
        }
    }
}






// marki


.marki {
    padding: 40px 0;

    &__box {
        display: flex;
        gap: 74px;
        align-items: center;
    }

    &__list {
        display: flex;
        align-items: center;
        gap: 74px;
        padding: 8px;
    }

    .marki-item {
        display: flex;
        align-items: center;
        padding: 9.5px 0;
        height: 120px;

        position: relative;

        img {
            width: 100%;
            max-width: 121px;
        }

        &::after {
            position: absolute;
            content: '';
            left: calc(100% + 74px / 2);
            height: 50px;
            width: 1px;
            background-color: var(--colors-grey-light-1);
        }

    }

    .marki-all {
        display: flex;
        align-items: center;
        gap: 12px;
        font-family: var(--font-family);
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.01em;
        color: var(--colors-primary);
        line-height: 130%;
        transition: 0.23s;
        &:hover{
            opacity: 0.8;
        }
    }

    @include desktop {
        &__box {
            gap: 48px;
        }

        &__list {
            gap: 48px;
        }

        .marki-item {
            &::after {
                left: calc(100% + 48px / 2);
            }
        }
    }

    @include tablet {
        &__box {
            gap: 24px;
        }

        &__list {
            gap: 24px;
        }

        .marki-item {
            &::after {
                left: calc(100% + 24px / 2);
            }
        }
    }

    @include mobile {
        &__list {
            overflow: auto;

            width: 100%;

            scrollbar-width: none;  
            -ms-overflow-style: none;

            &::-webkit-scrollbar {
                display: none;
            }
        }

        .marki-item {
            min-width: 120px;
            max-width: 120px;
        }
    }

    @include sm-mobile {
        &__box {
            flex-direction: column;
            align-items: flex-start;
            gap: 8px;
        }

        .marki-item {

            height: 80px;
            &::after {
                height: 20px;
            }
        }

        .marki-all {
            gap: 4px;
            br{
                display: none;
            }
            min-width: 100%;
            max-width: 100%;
        }

    }

}





// Footer


.advantage {
    background: var(--colors-primary);
    padding: clamp(40px, 6.667vw, 60px) 0;

    &__list {
        display: grid;
        gap: 20px;
        grid-template-columns: repeat(4, 1fr);
    }

    .advantage-item {

        padding: 20px 24px;
        background: var(--colors-white);
        display: flex;
        gap: 12px;

        &__title {
            font-family: var(--second-family);
            font-weight: 600;
            font-size: 20px;
            line-height: 150%;
            letter-spacing: 0.01em;
            color: var(--colors-default);
            margin-bottom: 1px;
        }

        &__text {
            font-family: var(--second-family);
            font-weight: 500;
            font-size: 14px;
            line-height: 140%;
            letter-spacing: 0.01em;
            color: var(--colors-default);
        }
    }

    @include desktop {
        &__list {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    @include mobile {
        &__list {
            grid-template-columns: repeat(1, 1fr);
            gap: 10px;
        }
    }
}

.footer {

    background: var(--colors-default);

    &__main {
        padding: clamp(40px, 8vw, 80px) 0;
    }

    &__box {
        display: flex;
        gap: clamp(20px, 4vw, 40px);
    }

    &__col {
        display: grid;
        align-content: start;
        gap: 8px;
        width: 20%;

        &:nth-child(2) {
            width: 40%;
        }
    }

    @include desktop {
        &__box {
            flex-wrap: wrap;
        }

        &__col {
            &:nth-child(1) {
                width: 30%;
            }

            &:nth-child(2) {
                width: calc(70% - 40px);
            }

            &:nth-child(3) {
                width: 30%;
            }

            &:nth-child(4) {
                width: calc(70% - 40px);
            }
        }
    }

    @include mobile {
        &__col {
            width: 100% !important;
        }
    }

    &__colmin {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;

        a,
        p {
            display: inline-flex;
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 16px;
            line-height: 220%;
            color: var(--colors-grey-light-1);
            width: 100%;
        }

        a {
            &:hover {
                text-decoration: underline;
            }
        }
    }

    .footer-title {
        font-family: var(--second-family);
        font-weight: 600;
        font-size: 20px;
        line-height: 140%;
        letter-spacing: -0.01em;
        text-transform: uppercase;
        color: var(--colors-white);
    }

    &__menu {
        width: 100%;

        li {
            width: 100%;
        }

        a {
            font-family: var(--font-family);
            font-weight: 400;
            font-size: 16px;
            line-height: 220%;
            color: var(--colors-grey-light-1);

            &:hover {
                text-decoration: underline;
            }
        }
    }

    .footer-catalog {
        ul {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 0 40px;

            @include mobile {
                grid-template-columns: 100%;
                gap: 0;
            }
        }
    }

    &__bottom {
        padding: 17.5px 0;
        border-top: 1px solid var(--colors-grey);
    }

    .copyright {
        font-family: var(--font-family);
        font-weight: 400;
        font-size: clamp(14px, 2vw, 16px);
        line-height: 220%;
        color: var(--colors-grey2);
    }

}