div.logo{
    cursor: pointer;
}

.button {
    border: 1px solid #FFFFFF;
    padding: 12px 40px;
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    leading-trim: NONE;
    line-height: 100%;
    width: fit-content;
    border-radius: 30px;
    color: #fff;
    text-decoration: none;
    cursor: pointer;
}

.button:hover {
    opacity: 0.9;
}

.btn-shop{
    background-color: #fff;
    border-radius: 50px;
    padding: 8px 20px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}
.btn-shop img{
    width: 22px;
}
.btn-shop.active{
    background-color: rgb(119, 255, 119)
}

.swiper-button-next:after, .swiper-button-prev:after {
    content: none;
}

.pagin {
    display: flex;
    align-items: center;
    gap: 8px;
    grid-column: 2;
    justify-content: flex-end;
}

.swiper-button-prev,
.swiper-button-next {
    position: static; /* не absolute, чтобы остались в .pagin */
    width: 32px;
    height: 32px;
    color: #fff;
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
    opacity: 1;
}
/* базовый, неактивный цвет (когда больше нельзя листать) */
.swiper-button-next {
    transform: rotate(-180deg);
}

.swiper-button-prev,
.swiper-button-next {
    color: #FFFFFF33;
    opacity: 0.8 !important;
    cursor: default;
    pointer-events: none;
    transition: color 0.2s ease;
}

/* активные (когда можно листать) */
.swiper-button-prev:not(.swiper-button-disabled),
.swiper-button-next:not(.swiper-button-disabled) {
    opacity: 1 !important;
    color: #fff;
    cursor: pointer;
    pointer-events: auto;
}

/* hover‐эффект для активных */
.swiper-button-prev:not(.swiper-button-disabled):hover,
.swiper-button-next:not(.swiper-button-disabled):hover {
    color: #dcdcdc;
}

/* чистим старые :after, если были */
.swiper-button-prev:after,
.swiper-button-next:after {
    content: none !important;
}



.main-text {
    padding-bottom: 60px;
}
/*===============================================*/
header {
    position: fixed;
    width: 100%;
    /*left: 0;*/
    z-index: 30;
    max-width: 1920px;

}
header a:hover{
    opacity: 0.8;
}
header ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: center;
    border-bottom: 1px solid #FFFFFF33;
}

.header-inner .logo {
    padding: 10px 0;
}

.header-inner .logo img {
    height: 100%;
}

header .h-logo a, header .h-logo span {
    font-weight: 800;
    font-size: 28px;
    line-height: normal;
    text-transform: uppercase;
    color: #fff;
}

header .h-menu {
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 23px 0;

}

header .h-menu ul {
    display: flex;
    gap: 32px;
}

header .h-menu a {
    font-weight: 400;
    font-size: 18px;
    line-height: normal;
    color: #fff;
    text-decoration: none;
}

header .h-menu .h-btn-call span {
    font-weight: 600;
    font-size: 16px;
    line-height: normal;
    text-transform: uppercase;
    display: inline-block;
    padding: 12px 32px;
    color: #fff;
    border: 1px solid #FFFFFF;
    border-radius: 50px;
}


header .h-menu .h-btn-call span:hover {
    color: #21221b;
    background-color: #fff;
}

header.white_header,
header.no-home {
    background: rgba(0, 0, 0, 0.82);
}


header .shop img{
    cursor: pointer;
}
header .shop img:hover{
    opacity: 0.9;
}
header .shop{
    position: relative;
}
header .shop .col-shop-product{
    background-color: #fff;
    padding: 2px 5px;
    border-radius: 14px;
    font-size: 11px;
    position: absolute;
    right: -10px;
    top: -7px;
    cursor: pointer;
}
header .mob-menu-switch {
    height: 30px;
    display: none;
    overflow: hidden;
}

header .mob-menu-switch span {
    display: block;
    width: 35px;
    height: 3px;
    background: #fff;
    transition: all 0.5s;
}

header .mob-menu-switch span:nth-child(1) {
    transform: translateY(2px);
}

header .mob-menu-switch span:nth-child(2) {
    transform: translateY(10px);
}

header .mob-menu-switch span:nth-child(3) {
    transform: translateY(18px);
}

header .menu-header-container.active ~ .mob-menu-switch span:nth-child(1) {
    transform: rotate(45deg) translate(10px, 6px);
}

header .menu-header-container.active ~ .mob-menu-switch span:nth-child(2) {
    transform: translateX(-100px);
}

header .menu-header-container.active ~ .mob-menu-switch span:nth-child(3) {
    transform: rotate(317deg) translate(-2px, 5px);
}

.primary-menu ul.head-menu > li.s_menu {
    position: relative;
}

.primary-menu ul.head-menu > li.s_menu > .sub-wrapper {
    display: none;
    background: #eee;
    position: absolute;
    max-width: 250px;
    width: 100%;
    left: 0;
    top: 39px;
    padding: 20px 10px;
    border-top: 1px solid #CCCCCC;
    box-sizing: border-box;
}

.primary-menu ul.head-menu > li.s_menu:hover .sub-wrapper {
    display: block;
}

.primary-menu ul.head-menu > li.s_menu:hover .sub-wrapper .sub-menu {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.primary-menu ul.head-menu > li.s_menu:hover .sub-wrapper .sub-menu li a {
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    text-align: left;
    color: #2d2d2d;
    display: block;
    text-transform: none;
    border-left: none;
    border-right: none;
    box-sizing: border-box;
    padding: 0;
}

/*********************************************/
.top-breadcrumbs {
    padding-top: 100px;
    padding-bottom: 20px;
}
.top-breadcrumbs a{
    text-decoration: none;
}

/*********************************************/

.baner {
    height: 100vh;
    max-height: 850px;
    min-height: 500px;
    width: 100%;
    background-color: #6e6e6e;
    position: relative;
    overflow: hidden;
}

.baner video {
    position: relative;
    min-width: 100%;
    min-height: 100%;
}

.baner .bg-color {
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgb(0 0 0 / 50%);
    left: 0;
    top: 0;

}

.baner .container {
    height: 100%;
}

.baner .baner-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
}

.baner .baner-inner h1 {
    font-weight: 600;
    font-style: SemiBold;
    font-size: 44px;
    /*line-height: 100%;*/
    letter-spacing: 0;
    text-transform: uppercase;
    color: #fff;
    margin: 0;
    max-width: 60%;

}

.baner .baner-inner .mini {
    font-weight: 400;
    font-style: Regular;
    font-size: 20px;
    /*line-height: 100%;*/
    letter-spacing: 0;
    color: #fff;
    margin-top: 32px;
    margin-bottom: 60px;
    max-width: 30%;
}


/*********************************************/

.catalog {
    padding: 40px 0;
}
.catalog .next-btn{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    font-weight: 600;
    font-size: 18px;
    margin-top: -25px;
    cursor: pointer;
}
.catalog .next-btn svg{
    transform: rotate(-180deg);
}
.catalog .tab-block{
    overflow-x: auto;
    margin-bottom: 15px;
}
.catalog .tab-block::-webkit-scrollbar {
     width: 3px;              /* ширина вертикального скролла */
     height: 3px;             /* высота горизонтального */
 }

.catalog .tabs {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    width: max-content;
    margin-bottom: 5px;
    min-width: 100%;
}

.catalog .tab-button {
    background: none;
    border: none;
    padding: 12px 20px;
    font-size: 16px;
    cursor: pointer;
    transition: color 0.3s, border-bottom 0.3s;
    flex: 1;
}

.catalog .tab-button.active {
    color: #000;
    border-bottom: 2px solid #000;
    font-weight: bold;
}

.catalog .tab-button:hover {
    color: #555;
}

.catalog .tab-content {
    display: none;
}

.catalog .tab-content.active {
    display: flex;
    flex-direction: column;
    gap: 60px;
}

.catalog .product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

.catalog .product-banner {
    text-align: center;
}

.catalog /* Блок с баннером */
.product-banner {
    position: relative;
    overflow: hidden;
    background-color: #444;
}

.catalog .product-banner .img {
    width: 100%;
    height: 0;
    background-size: cover;
    background-position: center;
    display: block;
    /*min-height: 500px;*/
}
.catalog .product-banner > img{
    width: 100%;
    position: relative;
    z-index: 0;
}
.catalog .product-banner .bg-color{
    background-color: #444;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0.3;
}
.catalog .product-banner .info {
    position: absolute;
    bottom: 40px;
    left: 40px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    color: #fff;
    z-index: 2;    align-items: flex-start;
}

.catalog .product-banner .info .title {
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #fff;
}

.catalog .product-banner .info .buttons {
    width: fit-content;
    margin-bottom: -85px;
    transition: all 0.4s ease;
    margin-top: 40px;
    display: flex;
gap: 12px;
}

.catalog .product-banner:hover > .info .buttons {
    margin-bottom: 0px;
    margin-top: 20px;

}
.catalog .product-popup{
    display: none;
    position: fixed;
    width: 100%;
    height:100%;
    left: 0;
    top: 00px;
    /*padding-top: 90px;*/
    /*display: flex;*/
    justify-content: center;
    align-items: center;
    background-color: #00000070;
    z-index: 31;
}
.catalog .product-popup.active{
    display: flex;

}
.catalog .product-popup .product-popup-inner{
    position: relative;
    width: 90%;
    max-width:1200px;
    background-color: #fff;
    max-height: 80vh;
    margin-top: 80px;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 100%;
    gap: 60px;
    padding: 60px;
}
.catalog .product-popup .product-popup-inner .gallery{
    /*height: 600px;*/
    height: 100%;
}
.catalog .product-popup .product-popup-inner .gallery a{
    display: block;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;;
}

.catalog .product-popup .product-popup-inner .pagin {
    width:100%;
    display: flex;
    gap: 20px;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    justify-content: space-between;
    padding: 0 20px;
}
.catalog .product-popup .product-popup-inner .pagin .swiper-button-prev.swiper-button-disabled,
.catalog .product-popup .product-popup-inner .pagin .swiper-button-next.swiper-button-disabled{
    opacity: 0.3 !important;
}

.catalog .product-popup .product-popup-inner .pagin svg{
    height: 14px;
    width: 8px;
}
.catalog .product-popup .pagin .swiper-button-prev,
.catalog .product-popup .pagin .swiper-button-next{
    background-color: #F8F8F8;
    padding: 2px ;
    border-radius: 30px;
}
.catalog .product-popup .product-popup-inner .close-product{
    width: 30px;
    padding: 2px;
    position: absolute;
    right: 10px;
    top: 10px;
    background-color: #fff;
    border-radius: 40px;
    transform: rotate(45deg);
    cursor: pointer;
    z-index: 5;
}
.catalog .product-popup .product-popup-inner .img{
    width: 100%;
    height: 350px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.catalog .product-popup .product-popup-inner iframe{
    width: 100%;
    height: 100%;
}
.catalog .product-popup .product-popup-inner .info{
    display: flex;
    flex-direction: column;
}

.catalog .product-popup .product-popup-inner .info .title{
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;

}
.catalog .product-popup .product-popup-inner .info .price{
    font-weight: 600;
    font-size: 32px;
    line-height: 100%;
    margin: 32px 0;
}
.catalog .product-popup .product-popup-inner .info .text{
    overflow-y: auto;
    height: 100%;
    flex:1;
}

@media (min-width: 991px) {
    .catalog .product-popup .product-popup-inner .info .text{
        max-height: 300px;
    }
}

.catalog .product-popup .product-popup-inner .info p{
    margin: 10px 0;
}
.catalog .product-popup .product-popup-inner .info .btn-shop.button{
    background-color: #151515;
    border-radius: 50px;
    padding: 14px 64px;
    box-sizing: border-box;
    margin: 42px 0 0;
}


    /*********************************************/
.kitchen {

    background-color: #151515;
    color: #fff;
}

.kitchen-inner {
    display: flex;
    flex-direction: column;
}
.kitchen-header {
    display: grid;
    grid-template-columns: 30% 1fr;
    column-gap: 200px;
    row-gap: 40px;
    margin-bottom: 30px;
    flex-wrap: wrap; /* чтобы на мобилках стрелки падали вниз */
}


.kitchen-title {
    margin: 0;
    font-weight: 500;
    font-style: Medium;
    font-size: 40px;
    line-height: 1.1;
    color: #fff;

}

.kitchen-description {
    margin: 0;
    font-weight: 400;
    font-style: Regular;
    font-size: 18px;
    line-height: 1.6;
    color: #fff;
}




.kitchen-slider {
    position: relative;
}

.kitchen-slider .swiper-slide {
    overflow: hidden;
}

.kitchen-slider .product-card.have-video{
    cursor: pointer;
}
.kitchen-slider .product-card >img {
    background-color: #222;
    /*min-height: 400px;*/
    width: 100%;
    display: block;
    object-fit: cover;
}
.kitchen-slider .product-card .icon{
    position: absolute;
    top: 10px;
    right: 10px;
}
.kitchen-slider .product-card .icon img{
    width: 30px;
}
.kitchen-slider .product-card.have-video:hover > img {
    opacity: 0.8;
}
.kitchen-slider .product-card.have-video:hover .icon img{
    transform: scale(1.1);

}

.kitchen-slider .product-card p {
    margin-top: 20px;
    font-weight: 500;
    font-style: Medium;
    font-size: 20px;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 0;
}
.kitchen-slider .product-card p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    transition: 0.3s;
    position: relative;
}
.kitchen-slider .product-card p.expanded {
    -webkit-line-clamp: unset;
}
.kitchen-slider .read-more {
    font-size: 14px;
    cursor: pointer;
    margin-top: 5px;
    display: inline-block;
    color: rgb(128, 128, 128);
}
.kitchen .video-kitchen{
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    padding-top: 10px;
    /*display: flex;*/

    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.48);
  z-index: 31;

}
.kitchen .video-kitchen.active{
    display: flex;
    flex-direction: column;

}
.kitchen .video-kitchen img{
    width: 45px;
    height: 45px;
    background-color: #fff;
    padding: 7px;
    box-sizing: border-box;
    border-radius: 50px;
    position: relative;
    left: 35%;
    top: 20px;
    transform: rotate(45deg);
    cursor: pointer;
}
.kitchen .video-kitchen iframe{
    max-width: 80vw;
    height: 80%;
    width: 70%;
}

/*********************************************/
.o-nas {
    background-color: #151515;
}
.o-nas .o-nas-inner{
    border-top: 1px solid #FFFFFF33;
    border-bottom: 1px solid #FFFFFF33;
}
.o-nas .up .title {
    font-weight: 600;
    font-style: SemiBold;
    font-size: 48px;
    line-height: 100%;
    color: #fff;
    margin: 0;
    margin-bottom: 60px;
}

.o-nas .up .info {
    display: grid;
    grid-template-columns: 1fr 600px;
    gap:250px;
}

.o-nas .up .info .left .text {
    font-weight: 400;
    font-style: Regular;
    font-size: 20px;
    line-height: 160%;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 40px;
}
.o-nas .up .info .right{
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.o-nas .up .info .right video{
    width: 100%;
}
.o-nas .bottom .line{
    display: flex;
    justify-content: space-between;
    margin-top: 120px;
    margin-bottom: 40px;
}
.o-nas .bottom .line span{
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FFFFFF80;

}


.o-nas .bottom .showroom-slider .swiper-slide{
    height:666px ;
    background-color: #fff;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

}

/*********************************************/
.showroom{
    background-color: #151515;
}
.showroom .top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-bottom: 60px;
}
.showroom .top h2{
    font-weight: 600;
    font-size: 40px;
    line-height: 1.1;
    color:#fff;

}
.showroom .top .text{
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.showroom .top .text p{
    color:#fff;
    margin: 0;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.6;
}
.showroom .top .text .maps,
.showroom .top .text .maps div{
    display: flex;
    align-items: center;
    gap: 10px;
}

.showroom .top .text .maps span{
    color: #fff;
}
.showroom .top .text .maps a{
    color: #808080;
    font-weight: 400;
    font-size: 18px;
    line-height: 160%;
}
.showroom .bottom{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 24px;
    position: relative;
}
.showroom .bottom video{
    height: 880px;
    max-width: 500px;
}
.showroom .bottom .img  {
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
}
.showroom .bottom .mute-btn{
    padding: 0px;
    position: absolute;
    top: 0;
    z-index: 2;
    font-size: 25px;
    background-color: transparent;
    border: none;
}
    /*********************************************/
.faq .faq-inner {
    width: calc(100% - 140px);
    margin: auto;
}

.faq .faq-inner .faq-title {
    font-weight: 500;
    font-style: Medium;
    font-size: 44px;
    line-height: 100%;
    letter-spacing: 0;
    text-align: center;
    text-transform: uppercase;
    margin: 0;
    margin-bottom: 60px;
}

.faq .faq-inner .faq-block .block {
    border-bottom: 1px solid #151515;
    user-select:none;
    padding-bottom: 20px;

}

.faq .faq-inner .faq-block .block .head {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding: 20px;
    padding-bottom: 0;

}


.faq .faq-inner .faq-block .block .head .title {
    display: flex;
}

.faq .faq-inner .faq-block .block .head .num {
    margin-right: 32px;
}

.faq .faq-inner .faq-block .block .head .num,
.faq .faq-inner .faq-block .block .head .name {
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0;
}

.faq .faq-inner .faq-block .block img {
    transition: all 0.2s;
}

.faq .faq-inner .faq-block .block.jquery-accordion-active img {
    transform: rotate(45deg);
    user-select:none;
}

.faq .faq-inner .faq-block .block .text {
    font-weight: 400;
    font-size: 18px;
    line-height: 160%;
    letter-spacing: 0;
    /*margin-top: 14px;*/
    margin-left: 68px;
    margin-bottom: 0px;
    margin-right: 10px;
}

/*********************************************/
.page-error{
    padding: 60px 0 60px;
}
.page-error h1{
    font-size: 64px;
    font-weight: 600;
    margin: 0;
}
.page-error p{
    display: block;
    margin: 10px 0 60px;
    font-size: 16px;
}
.page-error .button{
    display: block;
    color: #222;
    border-color: #222;
}
    /*********************************************/


/*********************************************/
footer a:hover{
    opacity: 0.8;
}
.footer-top {
    background-color: #151515;
    padding: 82px 0 60px;
}

.footer-top .footer-top-inner {
    display: grid;
    grid-template-columns: 1.1fr 1fr 1fr 1fr;
    column-gap: 100px;
    row-gap: 40px;
}

.footer-top .footer-top-inner .block-1,
.footer-top .footer-top-inner .block-4 {
    grid-row: 1/3;
}

.footer-top .footer-top-inner .block-4 {
    grid-column: 4;
}

.footer-top .footer-top-inner .block-4 .social-group {
    display: flex;
    gap: 16px;
}

.footer-top .footer-top-inner .block-4 .social-group a {
    padding: 6px;
    border-radius: 50px;
    width: 35px;
    height: 35px;
    border: 1px solid #FFFFFF33;
    box-sizing: border-box;
}
.footer-top .footer-top-inner .block-4 .social-group a img{
    width: 100%;
}
.footer-top .footer-top-inner .block-4 .button{
    border-color: #FFFFFFB2;
    color:#FFFFFFB2;
}

.footer-top .footer-top-inner .block-4 .forms-block {
    display: flex;
    flex-direction: column;
    margin-top: 40px;
    gap: 8px;
    width: 100%;
}

.footer-top .footer-top-inner .block-4 .forms-block a {
    opacity: 0.7;
}

.footer-top .footer-top-inner .block-4 .forms-block a:hover {
    opacity: 0.9;
}

.footer-top .footer-top-inner .block-1 p {
    color: #FFFFFF33;
    margin-top: 30px;
    margin-bottom: 0;
    max-width: 204px
}
.footer-top .footer-top-inner .block-2{
    display: flex;
    flex-direction: column;
    width: fit-content;
}
/*.footer-top .footer-top-inner .block-2 a:last-child{*/
/*    color: #FFFFFFB2;*/
/*    font-weight: 400;*/
/*    font-size: 16px;*/
/*    line-height: 160%;*/
/*    margin-top: 10px;*/
/*}*/
.footer-top .footer-top-inner .block-2 a,
.footer-top .footer-top-inner .block-3 a{
    width: fit-content;
    text-decoration: none;
}
.footer-top .footer-top-inner .block-2 .google-maps{
    color: #FFFFFF33;
    font-weight: 400;
    font-size: 14px;
    line-height: 160%;
}
.footer-top .footer-top-inner .block-2 .google-maps:last-child {
    margin-top: 3px;
}
.footer-top .footer-top-inner div .title {
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FFFFFF33;

}

.footer-top .footer-top-inner div .text {
    margin-top: 12px;
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 160%;
    letter-spacing: 0;
    color: #FFFFFFB2;
    display: flex;
    flex-direction: column;
}

.footer-top .footer-top-inner div .text a,
.footer-top .footer-top-inner div .text span {
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 160%;
    letter-spacing: 0;
    text-decoration: none;
    color: #FFFFFFB2;
}

.footer-top .wpcf7-spinner {
    position: absolute;
}

.footer-bottom {
    background-color: #151515;
    color: #fff;
    padding: 20px 0;
    border-top: 1px solid #FFFFFF33;
}

.footer-bottom .container {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}

.footer-bottom .container > div {
    display: flex;
    gap: 20px;
    align-items: center;
}

.footer-bottom .container a,
.footer-bottom .container span {
    color: #fff;
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    text-decoration: none;
}

.footer-top .footer-top-inner .form form .wpcf7-response-output {
    margin: 0;
    grid-row: 2;
    color: #ffffff;
    border-color: #d62f2e;
}
.footer-bottom .container a img{
    width: 25px;
}



.footer-top .footer-top-inner:hover{
    text-decoration: underline;
}
/*============================================*/
/* Общий стиль для попапа */
/* Основной контейнер попапа корзины */
.cart-pop {
    display: none;
    position: fixed;
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 100;
    justify-content: center;
    align-items: center;
    animation: fadeIn 0.0s ease;
}

/* Анимация для появления попапа */
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

/* Когда попап становится активным */
.cart-pop.active {
    display: flex;
}

/* Внутреннее содержимое попапа */
.cart-pop .cart-pop-inner {
    position: relative;
    width: 90%;
    max-width: 900px;
    background-color: #fff;
    margin: auto;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    animation: slideUp 0.3s ease;
    overflow-y: auto;
    max-height: calc(100vh - 100px);
    box-sizing: border-box;
    scrollbar-track-color: red;
    scrollbar-arrow-color: transparent;
}
.cart-pop .cart-pop-inner::-webkit-scrollbar {
    width: 8px;              /* ширина вертикального скролла */
    height: 8px;             /* высота горизонтального */
}

.cart-pop .cart-pop-inner::-webkit-scrollbar-track {
    background: transparent; /* убираем фон дорожки */
}

.cart-pop .cart-pop-inner::-webkit-scrollbar-button {
    display: none;           /* убираем стрелки */
}

.cart-pop .cart-pop-inner::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.4); /* бегунок */
    border-radius: 4px;
}

/* ===== Для Firefox ===== */
.cart-pop .cart-pop-inner {
    scrollbar-width: thin;       /* тонкий скролл */
    scrollbar-color: rgba(0,0,0,0.4) transparent;
}

/* ===== Для старого IE (если вдруг) ===== */
.cart-pop .cart-pop-inner {
    -ms-overflow-style: -ms-autohiding-scrollbar;
}
/* Анимация для выезда попапа */
@keyframes slideUp {
    0% {
        transform: translateY(50px);
    }
    100% {
        transform: translateY(0);
    }
}

/* Закрытие попапа */
.cart-pop .cart-pop-inner .close-cart {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 30px;
    height: 30px;
    color: white;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    line-height: 30px;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
    transform: rotate(45deg);
}

.cart-pop .cart-pop-inner .close-cart:hover {
    scale: 1.2;

}

/* Заголовок корзины */
.cart-pop .cart-pop-inner .title {
    text-align: center;
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 30px;
    text-transform: uppercase;
    color: #333;
}

.cart-pop .cart-pop-inner .title:nth-child(4) {
    margin-top: 40px;
}


/* Элементы корзины */
.cart-pop .cart-item {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    margin-bottom: 20px;
    border-bottom: 1px solid #f1f1f1;
    padding-bottom: 20px;
}

/* Название товара */
.cart-pop .cart-item .product-name {
    font-size: 18px;
    font-weight: 500;
    flex-grow: 1;
}

/* Цена товара */
.cart-pop .cart-item .product-price,
.cart-pop .cart-item .total-price {
    font-size: 16px;
    color: #888;
}

/* Количество товара */
.cart-pop .cart-item .quantity {
    max-width: 60px;
    width: 100%;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    box-sizing: border-box;
}

/* Кнопка для удаления товара */
.cart-pop .cart-item .remove-item {
    background-color: #ff4b5c;
    color: white;
    border: 1px solid #ff4b5c;
    padding: 8px 20px;
    cursor: pointer;
    font-size: 14px;
    border-radius: 30px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* При наведении на кнопку удаления */
.cart-pop .cart-item .remove-item:hover {
    background-color: #e03647;
    border-color: #e03647;
}

.cart-pop .cart-pop-inner .total-order-price{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 15px;
}
.cart-pop .cart-pop-inner .total-order-price span:last-child{
    font-size: 22px;
    font-weight: 600;
}
/* Кнопка оформления заказа */
.cart-pop .cart-pop-inner .contact-form .button {
    background-color: transparent;
    color: #151515;
    border: 1px solid #151515;
    padding: 12px 40px;
    font-weight: 400;
    font-size: 16px;
    width: fit-content;
    border-radius: 30px;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* При наведении на кнопку оформления */
.cart-pop .cart-pop-inner .contact-form .button:hover {
    box-shadow: 2px 2px 5px #00000033;
}

/* Пустая корзина */
.cart-pop .cart-pop-inner .null {
    text-align: center;
    color: #e03647;
    font-size: 18px;
    margin-top: 20px;
}

/* Формы ввода */
.cart-pop .cart-pop-inner .contact-form input:not(.button) {
    border: none;
    border-radius: 0px;
    
    border-bottom: 2px solid #ccc;
    padding: 10px;
    font-size: 16px;
    width: 100%;
    margin-bottom: 20px;
    transition: border-color 0.3s ease;
    box-sizing: border-box;

}

/* При фокусе на полях ввода */
.cart-pop .cart-pop-inner .contact-form input:not(.button):focus {
    outline: none;
    border-color: #151515;
}
.cart-pop .cart-pop-inner .contact-form p:has(input:not(.button)){
    margin: 0;
}
    /* Скрытие дополнительных полей */
.cart-pop .cart-pop-inner .contact-form .hidden-fields-container {
    display: none;
}

/* Скрытие спиннера */
.cart-pop .cart-pop-inner .contact-form .wpcf7-spinner {
    display: none;
}


/*==========================*/

.popup,
.popup2,
.popup-good{
    display: none;
    position: fixed;
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 100;
    justify-content: center;
    align-items: center;
    animation: fadeIn 0.3s ease;
}

/* Анимация для появления попапа */
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

/* Когда попап становится активным */
.popup.active,
.popup2.active,
.popup-good.active{
    display: flex;
}

/* Внутреннее содержимое попапа */
.popup .popup-inner,
.popup2 .popup-inner,
.popup-good .popup-good-inner{
    position: relative;
    width: 75%;
    max-width: 400px;
    background-color: #fff;
    margin: auto;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    animation: slideUp 0.3s ease;
}

/* Анимация для выезда попапа */
@keyframes slideUp {
    0% {
        transform: translateY(50px);
    }
    100% {
        transform: translateY(0);
    }
}
.close-pop{
    cursor: pointer;
}
.popup .popup-inner .close-pop,
.popup2 .popup-inner .close-pop{
    position: absolute;
    top: 10px;
    right: 10px;
    transform: rotate(45deg);
}
.popup .popup-inner .title,
.popup2 .popup-inner .title{
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
}
.popup .popup-inner form input:not(.button):not([type="checkbox"]),
.popup2 .popup-inner form input:not(.button):not([type="checkbox"]),
.popup2 .popup-inner form textarea:not(.button){
    border: none;
    border-bottom: 2px solid #ccc;
    padding: 10px;
    font-size: 16px;
    width: 100%;
    margin-bottom: 20px;
    transition: border-color 0.3s ease;
    box-sizing: border-box;
    border-radius: 0px;
}
.popup2 .popup-inner form textarea:not(.button){
    height: 40px;
}

/* При фокусе на полях ввода */
.popup .popup-inner form input:not(.button):not([type="checkbox"]):focus,
.popup2 .popup-inner form input:not(.button):not([type="checkbox"]):focus,
.popup2 .popup-inner form textarea:not(.button):focus{
    outline: none;
    border-color: #151515;
}

.popup .popup-inner form .button,
.popup2 .popup-inner form .button{
    background-color: transparent;
    color: #151515;
    border: 1px solid #151515;
    padding: 12px 40px;
    font-weight: 400;
    font-size: 16px;
    width: fit-content;
    border-radius: 30px;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* При наведении на кнопку оформления */
.popup .popup-inner form .button:hover,
.popup2 .popup-inner form .button:hover{
    box-shadow: 2px 2px 5px #00000033;
}
.popup .popup-inner .hidden-fields-container,
.popup2 .popup-inner .hidden-fields-container{
    display: none;
}

.popup .popup-inner  .wpcf7-spinner,
.popup2 .popup-inner  .wpcf7-spinner{
    display: none;
}

.popup2 .popup-inner .cf7-acc label,
.popup .popup-inner .cf7-acc label{
    display: flex;
    gap: 8px;
    font-size: 14px;
}

@media (max-width: 991px) {
    .popup2 .popup-inner .cf7-acc label,
    .popup .popup-inner .cf7-acc label{

        font-size: 11px;
    }
}

.popup-good .text{
    font-size: 18px;
    color: #222;
    width: 100%;
    text-align: center;
}