*{
	margin: 0;
	padding: 0;
	font-family: 'Roboto', sans-serif;
}
a{
	text-decoration: none;
}
li{
	list-style: none;
}
img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/************************************************** Header ***************************************************/

.header{
    padding-top: 140px;
}
.main_header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 200;
}
.header-top,
.header-bottom {
    width: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.header-top {
    height: 80px;
    position: relative;
    background-color: #ffffff;
}
.header-bottom {
    height: 60px;
    position: relative;
    background-color: rgba(228, 237, 245, 1);
}
.container{
    max-width: 1340px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-inline: auto;
    padding: 0 20px 0 20px;
    box-sizing: border-box;
}
.header-left-case{
    display: flex;
}
/* Логотип */
.logo {
    flex-shrink: 0;
    padding-right: 20px;
}
.logo img {
    height: 40px;
    width: auto;
}
.location {
    display: flex;
    align-items: center;
    padding: 0 10px 0 10px;
}
.location i {
    color: #ff2f00;
}
.city{
    font-size: 15px;
    padding-left: 10px;
}
.search_container{
    width: 500px;
    padding: 0px 30px 0px 30px;
}
.search{
    position: relative;
    display: flex;
    align-items: center;
}
.search_input{
    width: 100%;
    height: 43px;
    border-radius: 30px;
    border: 1px solid #d8cccb;
    padding: 0px 50px 0px 20px;
    box-sizing: border-box;
}
.search_input:focus{
    outline: none;
}
.search_button{
    width: 38px;
    height: 38px;
    border: none;
    background-color: #ff2f00;
    border-radius: 50%;
    position: absolute;
    right: 3px;
    cursor: pointer;
}
.search_button i{
    color: #ffffff;
    font-size: 17px;
}
.search_button:hover{
    background-color: #ff4a22;
}

.support {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-left: 15px;
    position: relative;
    flex-shrink: 0;
}
.support i{
    font-size: 19px;
    color: #333;
}
.support_text{
    color: #333;
    font-size: 13px;
    font-weight: bold;
    padding-bottom: 5px;
}
.support_number{
    color: #ff2f00;
    font-size: 14px;
}
.support_number:hover{
    color: #333;
    transition: 0.3s ease;
}

.nav_left {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
}
.nav_left a{
    font-size: 15px;
    color: #464646;
    padding: 10px 17px 10px 17px;
    border-radius: 25px;
}
.nav_left a:hover{
    transition: 0.3s ease;
    color: #ffffff;
    background-color: #ff2f00;
}
.category_btn, .category_btn_mobile{
    background-color: #ffffff;
    color: #333;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    display: flex;
    align-items: center;
    height: 40px;
}
.category_btn p{
    padding: 15px;
    font-size: 15px;
}
.menu_btn_icon{
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #ff2f00;
    color: #ffffff;
    font-size: 17px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    left: 3px;
}
.category_btn:hover {
    transition: 0.3s ease;
    box-shadow: 0px 0px 5px #b4b4b4;
}

.user_info{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    gap: 20px;
}
.icon, .icon_mobile{
    width: 42px;
    height: 42px;
    background-color: #ffffff;
    border-radius: 50%;
    position: relative;
}
.icon a, .icon_mobile a{
    font-size: 20px;
    color: #333;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; 
    height: 100%; 
}
.icon i, .icon_mobile i{
    display: inline-block;
    line-height: normal;
    font-size: inherit;
    overflow: visible;
}
.icon a:hover i {
    color: #ff2f00;
    transition: color 0.2s ease;
}
.icon:hover {
    background-color: #ffffff;
}
.amount{
    width: 16px;
    height: 16px;
    position: absolute;
    top: -5px;
    right: -5px;
    border-radius: 50%;
    background-color: #ff2f00;
    color: #ffffff;
    font-size: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 5px #b4b4b4;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
.overlay.active {
    opacity: 1;
    visibility: visible;
}

.sidebar {
    position: fixed;
    top: 0;
    left: -300px;
    width: 300px;
    height: 100%;
    background-color: #ffffff;
    z-index: 1001;
    transition: 0.3s ease;
}
.sidebar.active {
    left: 0;
}
.sidebar_container{
    position: relative;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding-top: 7px;
}

/************************* Title, Exit button *************************/

.catalog_title, .back_to_cat{
    background-color: #ff2f00;
    border-radius: 25px;
    font-size: 17px;
    color: #ffffff;
    padding: 13px;
    margin: 0px 7px 7px 7px;
    align-items: center;
    position: relative;
    cursor: pointer;
    user-select: none;
}
.catalog_title{
    display: flex;
}
.back_to_cat{
    display: none;
}
.catalog_title i, .back_to_cat i{
    position: absolute;
    right: 20px;
}
.catalog_title p, .back_to_cat p{
    margin-left: 10px;
}

.category:hover{
    background-color: rgba(228, 237, 245, 1);
}
.cat_name{
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    font-size: 16px;
    transition: color 0.3s ease;
    position: relative;
    cursor: pointer;
}
.cat_name i{
    right: 30px;
    color: #d7d7d7;
    position: absolute;
}
.cat_name a{
    margin-left: 20px;
    color: #5f5f5f;
}
.category:hover .cat_name i, .category:hover .cat_name p{
    color: #000000;
}

.sub-category{
    position: absolute;
    top: 0;
    left: 100%;
    opacity: 0;
    width: 320px;
    background-color: #f9f9f9;
    height: 100vh;
    transition: 0.3s ease;
    visibility: hidden;
    transform: translateX(-20px);
    padding-top: 7px;
}
.sub-category li:nth-child(2){
    margin-top: 10px;
}
.sub-category li a{
    width: calc(100% - 20px);
    height: 40px;
    display: flex;
    align-items: center;
    padding-left: 20px;
    font-size: 16px;
    transition: color 0.3s ease;
    color: #5f5f5f;
}
@keyframes vizibility{
    0% {
        visibility: hidden;
    }
    100% {
        visibility: visible;
    }
}
.sub-category li a:hover{
    color: #000000;
    background-color: rgba(228, 237, 245, 1);
}
.category:hover .sub-category{
    opacity: 1;
    transform: translateX(0px);
    animation: vizibility 0.3s forwards;
    box-shadow: -2px 0px 10px 0px #b4b4b4;
}



/******************************* Mobile **********************************/

.category_btn_mobile, .search_container_mobile, .icon_mobile{
    display: none;
}
.search_container_mobile{
    width: 500px;
    padding: 0px;
}
.search_container_mobile .search{
    width: 100%;
}








/************************************************** Main ***************************************************/


.main{
	width: 100%;
    background-color: #f9f9f9;
}

/*********************************** Slider ***********************************/

.slider_container{
    max-width: 1300px;
    margin: auto;
    position: relative;
    padding: 30px 20px 50px 20px;
}
.slider {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 1;
    overflow: hidden;
    border-radius: 10px;
}
.slides {
    display: flex;
    width: 100%;
    height: 100%;
}
.slide {
    min-width: 100%;
	transition: transform 0.4s ease-in-out;
}
.slide img {
    display: block;
}

.slider_btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 50px;
    height: 50px;
    background-color: rgba(0, 0, 0, 0.5);
    border: none;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    color: #fff;
    font-size: 20px;
    transition: all 0.3s ease;
	opacity: 0.1;
}
.prev{
    left: 20px;
}
.next{
    right: 20px;
}
.slider:hover .slider_btn{
	opacity: 1;
}
.slider_btn:hover {
    background-color: #ff2f00;
    color: #fff;
}

.indicators {
    position: absolute;
	padding-top: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 30px;
    z-index: 5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.dot {
    width: 10px;
    height: 10px;
	background-color: #8b9da9;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
}
.dot.active {
	width: 12px;
	height: 12px;
	margin-top: -1px;
    background-color: #ff2f00;
	border: none;
}



/*********************************** New Products Section ***********************************/


.new_products_section, .furniture_description, .products_section{
    padding: 40px 20px 20px 20px;
    max-width: 1300px;
    margin: 0 auto;
}
.title_container, .more_products{
    display: flex;
    align-items: center;
}
.title_container{
    display: flex;
    font-size: 17px;
    padding-bottom: 20px;
    justify-content: space-between;
}
.more_products{
    cursor: pointer;
    font-size: 15px;
    gap: 10px;
}
.more_products:hover{
    color: #ff2f00;
    text-decoration: underline;
}

.product_grid{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin: 0 auto;
    flex-wrap: wrap;
}

.new_product{
    text-align: center;
    width: calc(33.33% - 20px);
    flex-grow: 1;
    padding-bottom: 20px;
    position: relative;
}
.new_product_img{
    display: flex;
    width: 100%;
    max-height: 320px;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}
.new_product_img img{
    width: 100%;
	height: auto;
	border-radius: 10px;
    display: block;
    transition: transform 0.5s ease;
}
.new_product_img:hover img {
    transform: scale(1.1);
}
.new_icon{
    border-radius: 10px;
    background-color: #00a336;
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
    position: absolute;
    padding: 4px 12px 4px 12px;
    top: 10px;
    left: 10px;
    z-index: 10;
}
.new_product_name{
    font-size: 16px;
    margin-top: 15px;
    color: #333;
    font-weight: bold;
}




/*********************************** Image Section ***********************************/


.image_section{
	max-width: 1300px;
    aspect-ratio: 5 / 1;
    margin: 0 auto;
    padding: 30px 20px 30px 20px;
    position: relative;
    display: flex;
}
.image_section a{
    width: 100%;
    height: auto;
    border-radius: 10px;
}
.image_section a img{
    object-fit: cover;
    border-radius: 10px;
}




/*********************************** Products Section ***********************************/


.controls{
    display: flex;
    gap: 10px;
    user-select: none;
}
.control{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #ffffff;
    color: #000000;
    box-shadow: 0px 0px 5px 0px #9d9d9d;
    border: none;
    cursor: pointer;
    text-align: center;
    transition: 0.25s ease;
}
.control:hover{
    background-color: #ff2f00;
    color: #fff;
}

.product_container{
    display: flex;
    overflow: hidden;
    width: 100%;
}
.product_wrapper{
    display: flex;
    width: 100%;
    transition: transform 0.5s ease-in-out;
    aspect-ratio: 8 / 2;
    padding: 10px;
    gap: 20px;
}
.product{
    flex: 0 0 calc(25% - 15px);
    box-sizing: border-box;
    background: #fff;
    border-radius: 10px;
    position: relative;
    box-shadow: 0px 0px 10px 0px #f0f0f0;
}

.info_bar{
    width: 45px;
    height: 90px;
    position: absolute;
    right: -5px;
    top: 5px;
    border-radius: 7px;
    box-sizing: border-box;
    background-color: #ffffff;
    padding: 5px;
    user-select: none;
    visibility: hidden;
    opacity: 0;
    transition: 0.3s ease;
}
.bar_icon{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 40px;
    cursor: pointer;
}
.bar_icon:hover{
    color: #6b6b6b;
}
.product:hover .info_bar{
    visibility: visible;
    right: 5px;
    opacity: 1;
}
.product a{
    box-sizing: border-box;
}
.product img{
    max-width: 100%;
    height: auto;
    border-radius: 10px 10px 0px 0px;
    transition: transform 0.3s ease;
}
.product_name{
    font-size: 16px;
    margin: 10px 20px 10px 20px;
    color: #000000;
    transition: color 0.3s ease;
    display: inline-block;
}
.product_name:hover{
    color: #ff2f00;
}
.product_price{
    font-size: 14px;
    color: #ff2f00;
    font-weight: bold;
    font-size: 17px;
    margin: 10px 20px 10px 20px;
}




/****************************** Furniture Description Section ******************************/


.furniture_description_container{
    width: 100%;
    aspect-ratio: 7 / 3;
    background-color: #221f19;
    display: flex;
}
.description_container{
    width: 50%;
    min-height: 300px;
    position: relative;
    padding: 30px;
    box-sizing: border-box;
    font-size: 20px;
    color: #f0f0f0;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
.description_container p {
    width: 100%;
    padding: 30px 0px 30px 0px;
}
.description_container_more_btn{
    background-color: #ff2f00;
    color: #ffffff;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    display: flex;
    align-items: center;
    height: 40px;
    padding: 20px;
    font-weight: bold;
    font-size: 15px;
}
.description_container_more_btn:hover{
    background-color: #d52700;
}




/*********************************** How do we work Section ***********************************/


.how_do_we_work{
	max-width: 1300px;
    padding: 50px 20px 30px 20px;
    margin: auto;
}
.work_title{
    display: flex;
    font-size: 17px;
    padding-bottom: 20px;
    justify-content: space-between;
}
.work_process_container{
	padding: 20px 0px 20px 0px;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 30px;
}
.process_box{
    flex: 0 0 calc(20% - 30px);
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0px 20px 0px 20px;
    box-sizing: border-box;
}
.work_icon_box{
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background-color: #fff;
	box-shadow: 0px 0px 10px #999;
	font-size: 30px;
    display: flex;
	justify-content: center;
	align-items: center;
    position: relative;
}
.work_process_amount{
	position: absolute;
	width: 30px;
	height: 30px;
	left: -5px;
    bottom: -5px;
	background-color: #C44526;
	border-radius: 50%;
	color: #ffffff;
    display: flex;
	justify-content: center;
	align-items: center;
    font-size: 14px;
}
.work_process_text{
    font-size: 17px;
	text-align: center;
    padding-top: 30px;
}








/************************************************** Footer ***************************************************/


.footer{
    background-color: #1e1d20;
}
.footer_container{
    max-width: 1300px;
    padding: 20px;
    margin: auto;
}
.upper_footer{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding-bottom: 50px;
}
.fooret_logo img{
    height: 40px;
    width: auto;
}
.chat_bot_btn{
    padding: 10px 30px 10px 30px;
    border-radius: 25px;
    font-weight: bold;
    background-color: #ffffff;
    cursor: pointer;
    transition: 0.4s ease;
}
.chat_bot_btn:hover{
    background-color: #ff2f00;
    color: #ffffff;
}
.block_title{
    padding: 30px 0px 30px 0px;
    font-weight: bold;
    color: #ffffff;
    font-size: 16px;
}
.info_item{
    padding: 10px 0px 20px 0px;
    display: flex;
    gap: 30px;
    align-items: center;
}
.info_item a{
    color: #e2e2e2;
    padding: 5px 5px 5px 0px;
}
.info_item a:hover{
    color: #ff633f;
    transition: 0.4s ease;
}
.info_item i{
    font-size: 20px;
    color: #e2e2e2;
}
.social_media i{
    font-size: 30px;
    transition: 0.4s ease;
}
.social_media .fa-instagram:hover{
    color: #E1306C;
}
.social_media .fa-telegram:hover{
    color: #24A1DE;
}
.social_media .fa-whatsapp:hover{
    color: #25d366;
}
.footer_line{
    width: 100%;
    height: 1px;
    background-color: #c2c2c2;
}
.lower_footer{
    color: #ffffff;
    padding: 40px 0px 20px 0px;
    font-size: 16px;
}










/*********************************************** Media 1080px ***********************************************/


@media (max-width: 1080px){

    /************ Product Section ************/
    .product_wrapper{
        aspect-ratio: 11 / 3;
        gap: 18px;
        padding: 10px 0px 10px 0px;
    }

    /***** Furniture Description Section *****/
    .description_container{
        font-size: 17px;
    }
    .description_container p {
        padding: 25px 0px 25px 0px;
    }

    /************* How do we work *************/
    .process_box{
        padding: 0px;
    }
}


/*********************************************** Media 772px ***********************************************/


@media (max-width: 772px) {
    /***************** Header *****************/
    .header{
        padding-top: 130px;
    }
    .header-top {
        height: 70px;
    }
    .logo {
        padding-right: 15px;
    }
    .logo img {
        height: 30px;
    }
    .city{
        font-size: 13px;
    }
    .search_input{
        height: 40px;
    }
    .search_button{
        width: 35px;
        height: 35px;
    }
    .support {
        gap: 15px;
        padding-left: 10px;
    }
    .support i{
        font-size: 16px;
    }
    .support_text{
        font-size: 12px;
    }
    .support_number{
        font-size: 12px;
    }
    .nav_left{
        gap: 5px;
    }
    .nav_left a{
        font-size: 14px;
        padding: 8px 15px 8px 15px;
    }
    .category_btn{
        border-radius: 25px;
        height: 37px;
        margin-right: 10px;
    }
    .category_btn p{
        padding: 15px;
        font-size: 14px;
    }
    .menu_btn_icon{
        width: 33px;
        height: 33px;
    }
    .icon{
        width: 37px;
        height: 37px;
    }

    /*********** New Product Section ***********/
    .new_product {
        width: calc(50% - 10px);
    }

    /************* Product Section *************/
    .product{
        flex: 0 0 calc(33% - 10px);
    }
    .product_wrapper{
        gap: 15px;
        aspect-ratio: 11 / 4;
    }
    .info_bar{
        visibility: visible;
        opacity: 0.8;
        right: 5px;
    }
    .info_bar{
        width: 45px;
        height: 90px;
        right: 5px;
    }
    .bar_icon{
        height: 40px;
    }

    /****** Furniture Description Section ******/
    .furniture_description_container{
        display: block;
    }
    .description_container, .description_container p{
        width: 100%;
        font-size: 16px;
    }

    /************** How do we work **************/
    .work_process_container{
        justify-content: center;
    }
    .process_box{
        flex: 0 0 calc(33% - 30px);
    }
}


/*********************************************** Media 475px ***********************************************/


@media (max-width: 475px){

    /****************** Header ******************/
    .header{
        padding-top: 125px;
    }
    .header-bottom {
        height: 55px;
    }
    .category_btn_mobile, .icon_mobile, .search_container_mobile{
        display: flex;
    }
    .menu_btn_icon{
        width: 42px;
        height: 42px;
        background-color: #ffffff;
        color: #ff2f00;
        box-shadow: 0px 0px 5px #999;
        left: 0px;
    }
    .icon_mobile{
        box-shadow: 0px 0px 5px #999;
    }
    .icon_mobile a{
        color: #ff2f00;
    }
    .logo {
        padding-right: 0px;
    }
    .logo img {
        height: 30px;
    }
    .location, .search_container, .support, .user_info, .nav_left{
        display: none;
    }

    /********** Categories **********/
    .sidebar {
        left: -280px;
        width: 280px;
    }
    .catalog_title, .back_to_cat{
        padding: 11px;
        display: flex;
    }
    .sub-category{
        left: 0;
        width: 280px;
        transform: translateX(-280px);
        opacity: 1;
        z-index: 9999;
    }
    
    /*************** Sections ***************/
    .slider_container, .image_section, .products_section, .furniture_description, .how_do_we_work{
        padding-left: 5px;
        padding-right: 5px;
    }

    /**************** Slider ****************/
    .slider {
        aspect-ratio: 3 / 3;
    }

    /********** New Product Section **********/
    .new_products_section{
        padding-left: 15px;
        padding-right: 15px;
    }
    .new_products_section .title_container{
        margin-left: 0px;
    }
    .title_container{
        font-size: 15px;
        padding-bottom: 20px;
        justify-content: space-between;
    }
    .more_products{
        cursor: pointer;
        font-size: 14px;
        gap: 10px;
    }
    .new_product {
        width: calc(100% - 10px);
    }
    
    /*************** Image Section ***************/
    .image_section{
        aspect-ratio: 1 / 1;
    }

    /************** Product Section **************/
    .products_section{
        padding-bottom: 40px;
        padding-top: 40px;
    }
    .title_container {
        margin-left: 10px;
    }
    .controls{
        margin-right: 10px;
    }
    .product{
        flex: 0 0 calc(50% - 10px);
        text-align: center;
        border-radius: 5px;
    }
    .product:first-child{
        margin-left: 5px;
    }
    .product_wrapper{
        gap: 10px;
        aspect-ratio: 2 / 1;
    }
    .product_name{
        font-size: 15px;
        margin: 5px 0px 5px 0px;
    }
    .product_price{
        font-size: 16px;
        margin: 5px 0px 5px 0px;
    }
    .info_bar{
        display: none;
    }

    /******** Furniture Description Section *********/
    .furniture_description_img{
        height: 150%;
    }

    /*************** How do we work ***************/
    .process_box{
        flex: 0 0 calc(50% - 30px);
    }
    .work_icon_box{
        width: 80px;
        height: 80px;
        font-size: 27px;
    }
    .work_process_text{
        font-size: 13px;
        padding-top: 20px;
    }
    .how_title{
        display: flex;
        justify-content: center;
    }


    /****************** Footer ******************/
    .upper_footer{
        display: block;
    }
    .info_item{
        padding: 5px 0px 15px 0px;
    }
    .block_title{
        font-size: 18px;
    }
    .lower_footer{
        font-size: 14px;
    }
}


/*********************************************** Media 375px ***********************************************/


@media (max-width: 375px){
    /***** Product Section *****/
    .product_wrapper{
        gap: 10px;
        aspect-ratio: 20 / 11;
    }

    /***** Furniture Description Section *****/
    .description_container{
        font-size: 15px;
    }
}