@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ExtraBold.eot');
    src: local('Gilroy ExtraBold'), local('Gilroy-ExtraBold'),
    url('../fonts/Gilroy-ExtraBold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-ExtraBold.woff') format('woff'),
    url('../fonts/Gilroy-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Heavy.eot');
    src: local('Gilroy Heavy'), local('Gilroy-Heavy'),
    url('../fonts/Gilroy-Heavy.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Heavy.woff') format('woff'),
    url('../fonts/Gilroy-Heavy.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-LightItalic.eot');
    src: local('Gilroy Light Italic'), local('Gilroy-LightItalic'),
    url('../fonts/Gilroy-LightItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-LightItalic.woff') format('woff'),
    url('../fonts/Gilroy-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ThinItalic.eot');
    src: local('Gilroy Thin Italic'), local('Gilroy-ThinItalic'),
    url('../fonts/Gilroy-ThinItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-ThinItalic.woff') format('woff'),
    url('../fonts/Gilroy-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-BlackItalic.eot');
    src: local('Gilroy Black Italic'), local('Gilroy-BlackItalic'),
    url('../fonts/Gilroy-BlackItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-BlackItalic.woff') format('woff'),
    url('../fonts/Gilroy-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-BoldItalic.eot');
    src: local('Gilroy Bold Italic'), local('Gilroy-BoldItalic'),
    url('../fonts/Gilroy-BoldItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-BoldItalic.woff') format('woff'),
    url('../fonts/Gilroy-BoldItalic.ttf') format('truetype');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-SemiBold.eot');
    src: local('Gilroy SemiBold'), local('Gilroy-SemiBold'),
    url('../fonts/Gilroy-SemiBold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-SemiBold.woff') format('woff'),
    url('../fonts/Gilroy-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-UltraLightItalic.eot');
    src: local('Gilroy UltraLight Italic'), local('Gilroy-UltraLightItalic'),
    url('../fonts/Gilroy-UltraLightItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-UltraLightItalic.woff') format('woff'),
    url('../fonts/Gilroy-UltraLightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-SemiBoldItalic.eot');
    src: local('Gilroy SemiBold Italic'), local('Gilroy-SemiBoldItalic'),
    url('../fonts/Gilroy-SemiBoldItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-SemiBoldItalic.woff') format('woff'),
    url('../fonts/Gilroy-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Light.eot');
    src: local('Gilroy Light'), local('Gilroy-Light'),
    url('../fonts/Gilroy-Light.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Light.woff') format('woff'),
    url('../fonts/Gilroy-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-MediumItalic.eot');
    src: local('Gilroy Medium Italic'), local('Gilroy-MediumItalic'),
    url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-MediumItalic.eot?#iefix') format('embedded-opentype'),
    url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-MediumItalic.woff') format('woff'),
    url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ExtraBoldItalic.eot');
    src: local('Gilroy ExtraBold Italic'), local('Gilroy-ExtraBoldItalic'),
    url('../fonts/Gilroy-ExtraBoldItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-ExtraBoldItalic.woff') format('woff'),
    url('../fonts/Gilroy-ExtraBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-Regular.eot');
    src: local('Gilroy Regular'), local('Gilroy-Regular'),
    url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-Regular.eot?#iefix') format('embedded-opentype'),
    url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-Regular.woff') format('woff'),
    url('https://djivani.ru/wp-content/themes/djivani/fonts/Gilroy-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-HeavyItalic.eot');
    src: local('Gilroy Heavy Italic'), local('Gilroy-HeavyItalic'),
    url('../fonts/Gilroy-HeavyItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-HeavyItalic.woff') format('woff'),
    url('../fonts/Gilroy-HeavyItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Medium.eot');
    src: local('Gilroy Medium'), local('Gilroy-Medium'),
    url('../fonts/Gilroy-Medium.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Medium.woff') format('woff'),
    url('../fonts/Gilroy-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-RegularItalic.eot');
    src: local('Gilroy Regular Italic'), local('Gilroy-RegularItalic'),
    url('../fonts/Gilroy-RegularItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-RegularItalic.woff') format('woff'),
    url('../fonts/Gilroy-RegularItalic.ttf') format('truetype');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-UltraLight.eot');
    src: local('Gilroy UltraLight'), local('Gilroy-UltraLight'),
    url('../fonts/Gilroy-UltraLight.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-UltraLight.woff') format('woff'),
    url('../fonts/Gilroy-UltraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Bold.eot');
    src: local('Gilroy Bold'), local('Gilroy-Bold'),
    url('../fonts/Gilroy-Bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Bold.woff') format('woff'),
    url('../fonts/Gilroy-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Thin.eot');
    src: local('Gilroy Thin'), local('Gilroy-Thin'),
    url('../fonts/Gilroy-Thin.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Thin.woff') format('woff'),
    url('../fonts/Gilroy-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Black.eot');
    src: local('Gilroy Black'), local('Gilroy-Black'),
    url('../fonts/Gilroy-Black.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Gilroy-Black.woff') format('woff'),
    url('../fonts/Gilroy-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}


html {
    box-sizing: border-box;
    margin-top: 0 !important;
    font-family: 'Gilroy';
}

*{
    font-family: 'Gilroy';
}

*, *:after, *:before {
    box-sizing: inherit;
}
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
    margin:0;
    padding:0;
}
body {
    background: #f5f5f5;
    font-family: 'Gilroy';
}
fieldset, img, a img, :link img, :visited img {
    border:0;
}
ol,ul {
    list-style:none;
}
h1,h2,h3,h4,h5, h6 {

}
.menu-bar {
    display: none;
}
.container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
.itemm{
    position:absolute;
    display: inline-block;
}
.itemm .after {
      position: absolute;
      top: -10px;
      right: -10px;
      padding: 5px 8px;
      border-radius: 50%;
      background: red;
      color: white;
      font-size: 12px;


}
main.site-main {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    min-height: 300px;
}

.header {
    position: relative;
    z-index: 1000;
    transition: all 0.3s ease;
}

/* Фиксированная шапка при прокрутке */
.header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #f5f5f5; /* цвет фона — можешь изменить */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* лёгкая тень */
}

/*.header.fixed .head-bottom{*/
/*    max-width: 1440px;*/
/*    width: 100% !important;*/
/*    margin: 0px 1000px;*/
/*    box-shadow: none !important;*/
/*    padding-right: 0 !important;*/
/*    padding-left: 0 !important;*/
/*}*/

/* По умолчанию — обычное поведение */
.head-top {
    transition: transform 0.3s ease, opacity 0.3s ease;
    will-change: transform, opacity;
}

.header.fixed .head-top {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}

.header.fixed .head-bottom {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 95px;
    z-index: 1000;
    padding-left: 72px;
    padding-right: 72px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    background-color: #f5f5f5;
    padding-top: 30px;
    padding-bottom: 30px;
}


header.header .head-top {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding: 15px 0;
    margin-bottom: 20px;
}
header.header .head-top .logo {
    width: 100%;
    max-width: 112px;
    margin-right: 25px;
}
header.header .head-top .search {
    width: 100%;
    max-width: 452px;
    position: relative;
}
header.header .head-top .search form input {
    display: block;
    width: 100%;
    height: 42px;
    border-radius: 30px;
    padding: 13px 24px 13px 48px;
    border: none;
    background: #fff;
    outline: none;
}
header.header .head-top .search form button {
    position: absolute;
    left: 4px;
    top: 12px;
    background: none;
    outline: none;
    border: none;
    cursor: pointer;
}
header.header .head-top .menu {
    margin-left: auto;
    margin-right: 30px;
}
header.header .head-top .menu ul {
    display: flex;
    align-items: center;
    gap: 20px;
}
header.header .head-top .menu ul li {}
header.header .head-top .menu ul li a {
    text-decoration: none;
    font-size: 14px;
    color: #000;
}
header.header .head-top .button-call {
    width: 100%;
    max-width: 165px;
}
header.header .head-top .button-call a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 45px;
    color: #fff;
    text-decoration: none;
    background: #000;
    border-radius: 10px;
    text-transform: uppercase;
    font-size: 16px;
}
header.header .head-top .button-call a:hover {
    opacity: 0.8;
}
header.header .head-bottom {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
header.header .head-bottom .menu {
    width: 100%;
    max-width: 60%;
}
header.header .head-bottom .menu ul {
    display: flex;
    align-items: start;
    gap: 40px;
    justify-content: start;
}
header.header .head-bottom .menu ul li {}
header.header .head-bottom .menu ul li a {
    text-decoration: none;
    font-size: 16px;
    color: #000;
}
header.header .head-bottom .profile {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: end;
    gap: 20px;
    width: 100%;
    max-width: 30%;
    margin-left: auto;
}
header.header .head-bottom .profile .phone {
    display: flex;
    align-items: center;
    gap: 15px;
}
header.header .head-bottom .profile .phone svg {
    width: 20px;
    height: 20px;
}
header.header .head-bottom .profile .phone a {
    font-size: 14px;
    color: #000;
    text-decoration: none;
}
header.header .head-bottom .profile .profile-link a {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    text-decoration: none;
}
header.header .head-bottom .profile .cart {
    width: 100%;
    max-width: 20px;
}
header.header .head-bottom .profile-btn {
    width: 100%;
    max-width: 20px;
}
header.header .head-bottom .profile-btn svg {
    width: 20px;
    height: 19px;
}

header.header .head-bottom .whishlist {
    width: 100%;
    max-width: 20px;
}
header.header .head-bottom .whishlist svg {
    width: 20px;
    height: 19px;
}
section.slider {
    margin-bottom: 50px;
}
section.slider .slider-home {}
section.slider .slider-home .item {
    border-radius: 10px;
    overflow: hidden;
}
section.slider .slider-home .item img {
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}
section.slider .slider-home .slick-next:before, section.slider .slider-home .slick-prev:before {
    color: #000;
}

section.categories {
    margin-bottom: 50px;
}
section.categories .category-box {
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
    justify-content: space-between;
}
section.categories .category-box a.item {
    position: relative;
    background: #fff;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 341px;
    border-radius: 8px;
    padding: 25px;
    text-decoration: none;
    height: 195px;
}
section.categories .category-box a.item:hover {
    opacity: 0.8;
}
section.categories .category-box a.item span.title {
    font-size: 22px;
    font-weight: bold;
    color: #000;
}
section.categories .category-box a.item span.title span {
    color: #b2b0b0;
    font-size: 18px;
}
section.categories .category-box a.item span.icon {
    position: absolute;
    right: 40px;
    bottom: 20px;
    
}
section.categories .category-box a.item span.icon svg, section.categories .category-box a.item span.icon img {
    width: 100%;
    max-width: 60px;
    height: auto;
    transition: all 0.2s;
}
section.categories .category-box a.item:hover span.icon svg, section.categories .category-box a.item:hover span.icon img {
    transform: scale(1.2);
    transition: all 0.2s;
 }

section.products  .title-wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: 48px;
}

section.home-after-categories-carousel {
    padding: 18px 0 36px;
}

section.home-after-categories-carousel .title-wrapper {
    margin-bottom: 22px;
}

section.home-after-categories-carousel .title-wrapper h2.title {
    margin: 0;
    font-size: 44px;
    line-height: 1.1;
}

section.home-after-categories-carousel .home-after-categories-track {
    margin: 0 -8px;
}

section.home-after-categories-carousel .home-after-categories-slide {
    padding: 0 8px;
    height: 50vh;
    min-height: 320px;
    max-height: 540px;
}

section.home-after-categories-carousel .home-after-categories-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px;
}

section.home-after-categories-carousel .slick-dots {
    bottom: -28px;
}

section.home-after-categories-carousel .slick-dots li button:before {
    font-size: 10px;
    opacity: .45;
}

section.home-after-categories-carousel .slick-dots li.slick-active button:before {
    opacity: .9;
    color: #000;
}

section.home-after-categories-carousel .home-after-categories-arrow {
    position: absolute;
    top: calc(50% - 26px);
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.95);
    color: #111;
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
    z-index: 4;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16);
}

section.home-after-categories-carousel .home-after-categories-prev {
    left: 14px;
}

section.home-after-categories-carousel .home-after-categories-next {
    right: 14px;
}

@media (max-width: 900px) {
    section.home-after-categories-carousel {
        padding: 10px 0 28px;
    }

    section.home-after-categories-carousel .title-wrapper h2.title {
        font-size: 34px;
    }

    section.home-after-categories-carousel .home-after-categories-slide {
        height: 42vh;
        min-height: 250px;
        max-height: 420px;
    }
}
section.products  .title-wrapper h2.title {
    font-size: 44px;
}
section.products  .title-wrapper a.more {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #000;
    padding: 10px 25px;
    text-decoration: none;
    border-radius: 10px;
}
section.products  .title-wrapper a.more:hover {
    opacity: 0.8;
}

.products-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.products-list .product {
    width: 100%;
    max-width: 272px;
}
.products-list .product .thumbnail {
    position: relative;
    border-radius: 5px;
    margin-bottom: 40px;
}
.products-list .product .thumbnail img {
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 5px;
}
.products-list .product .thumbnail .l-sale {
    position: absolute;
    right: 16px;
    bottom: -20px;
    width: 60px;
    height: 60px;
    border-radius: 10px;
    background: #fff;
    font-size: 15px;
    font-weight: bold;
    text-transform: uppercase;
    color: #FF0000;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
}
.products-list .product .thumbnail .l-stock {
    position: absolute;
    right: 16px;
    bottom: -20px;
    width: 60px;
    height: 60px;
    border-radius: 10px;
    background: #fff;
    font-size: 9px;
    letter-spacing: 0px;
    font-weight: bold;
    text-transform: uppercase;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
}
.products-list .product .thumbnail .l-new {
    position: absolute;
    right: 16px;
    bottom: -20px;
    width: 60px;
    height: 60px;
    border-radius: 10px;
    background: #fff;
    font-size: 15px;
    letter-spacing: 0px;
    font-weight: bold;
    text-transform: uppercase;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
}
.products-list .product .title {
    font-size: 16px;
    margin-bottom: 8px;
    font-weight: bold;
}
.products-list .product .price {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 22px;
    margin-bottom: 20px;
}
.products-list .product .price .new-price {
    font-size: 20px;
    font-weight: 700;
    color: #d70404;
}

.products-list .product .price .old-price {
    font-weight: 500;
    font-size: 16px;
    color: #767676;
    text-decoration: line-through;
}
.products-list .product .price .sale-label {
    width: 50px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: url('../img/image fill.svg') no-repeat center center;
    font-size: 12px;
    color: #767676;
}

.products-list .product .colors {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}
.products-list .product .colors .item {
    border: 1px solid #fff;
    width: 16px;
    height: 16px;
    overflow: hidden;
    border-radius: 100%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.products-list .product .colors .item:hover  {
    border: 1px solid #000000;
}
.products-list .product .colors .item.active {
    border: 1px solid #000000;

}
.products-list .product .colors .item span.variable-color {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    min-width: 16px;
    height: 16px;
    border-radius: 100%;
    border: 1px solid #C4C4C4;
}
.products-list .product .chars {
    margin-bottom: 16px;
}
.products-list .product .chars .item {
    display: flex;
    justify-content: space-between;
}
.products-list .product .chars .item .title {
    font-size: 12px;
    color: #25282b;
    font-weight: 300;
}
.products-list .product .chars .item .value {
    font-size: 12px;
    color: #000;
    font-weight: 300;
}
.products-list .product .button {
    width: 100%;
    margin-top: 30px;
}
.products-list .product .button a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    background: #000;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
    border-radius: 10px;
    height: 42px;
    text-transform: uppercase;
}
.products-list .product .button a:hover {
    opacity: 0.8;
}

section.map h2.title {
    font-size: 44px;
    margin-bottom: 32px;
}
section.map {
    margin-bottom: 100px;
}
.map-box {
    border-radius: 10px;
    overflow: hidden;
}
iframe {
    width: 100%;
    max-width: 100%;
    border: none;
}

section.seo-text{
	margin-bottom: 60px;
}

section.vans .vans-box {
    display: flex;
    justify-content: space-between;

}
section.vans .vans-box .item {
    width: 100%;
    max-width: 448px;
}
section.vans .vans-box .item .icon {
    margin-bottom: 15px;
}
section.vans .vans-box .item .icon svg, section.vans .vans-box .item .icon img {
    width: 100%;
    max-width: 70px;
    height: auto;
}
section.vans .vans-box .item .title {
    font-size: 24px;
    color: #000;
    font-weight: bold;
    margin-bottom: 11px;
}
section.vans .vans-box .item .text {
    color: #8e9194;
    font-size: 16px;
    line-height: 28px;
}

.breadcrumbs {
    padding: 25px 0;
}
.breadcrumbs ul {
    display: flex;
    gap: 12px;
}
.breadcrumbs ul li {
    font-size: 14px;
}
.breadcrumbs ul li a {
    color: #515151;
    font-size: 14px;
    text-decoration: none;
}
.breadcrumbs ul li span {
    color: #515151;
}
h1.title {
    font-size: 22px;
    margin-bottom: 40px;
}
.product-box {
    margin-bottom: 40px;
    display: flex;
    gap: 20px;
}

.product-gallery{
    position: relative;
}

.product-box .product-gallery {
    width: 100%;
    max-width: 645px;
}

.product-box .product-gallery .slider-container {
    display: flex;
    gap: 10px;
}
.product-box .product-gallery .slider-container .slider-for {
    width: 100%;
    max-width: 523px;
    height: 523px;
    overflow: hidden;
    border-radius: 10px;
}

.slider-home {
    height: 610px;
}
.slider-home .slick-track {
    display: flex;
}
.slider-home .slick-track .slick-slide {
    float:none;
}
.slider-home .slick-track::before, .slider-home .slick-track::after {
    display: none;
}
.product-box .product-gallery .slider-container .slider-for .slick-track::before, .product-box .product-gallery .slider-container .slider-for .slick-track::after {
    display: none;
}
.product-box .product-gallery .slider-container .slider-for .slick-next {
    right: 10px;
    z-index: 2;
}
.product-box .product-gallery .slider-container .slider-for .slick-prev {
    left: 10px;
    z-index: 2;
}
.product-box .product-gallery .slider-container .slider-for .slick-next:before, .product-box .product-gallery .slider-container .slider-for .slick-prev:before {
    color: #000;
}
.product-box .product-gallery .slider-container .slider-for .slick-slide img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
.product-box .product-gallery .slider-container .slider-nav .slick-slide {
    opacity: 0.5;
}
.product-box .product-gallery .slider-container .slider-nav .slick-slide.slick-current {
    opacity: 1;
}
.product-box .product-gallery .slider-container .slider-nav {
    width: 100%;
    max-width: 120px;
}
.product-box .product-gallery .slider-container .slider-nav img {
    width: 100%;
    max-width: 118px;
    height: auto;
}
.product-box .product-gallery .slider-container .slider-nav .slick-list {
    padding: 0 !important;
}
.product-box .product-gallery .slider-container .slider-nav  .slick-slide {
    float: none;
    width: 100% !important;
    max-width: 100% !important;
    cursor: pointer;
}
.product-box .product-gallery .slider-container .slider-nav .slick-track {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 !important;
    width: 100% !important;
}
.product-box .product-gallery .slider-container .slider-nav .slick-track::before, .product-box .product-gallery .slider-container .slider-nav .slick-track::after {
    display: none;
}
.product-box .product-options {
    width: 100%;
    max-width: 381px;
    position: relative;
}

.product-box .product-options .colors {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 5px;
}
.product-box .product-options .colors .item {
    border: 1px solid #fff;
    width: 28px;
    height: 28px;
    overflow: hidden;
    border-radius: 100%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.product-box .product-options .colors .item:hover  {
    border: 1px solid #000000;
}
.product-box .product-options .colors .item.active {
    border: 1px solid #000000;

}
.product-box .product-options .colors .item span.variable-color {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    min-width: 28px;
    height: 28px;
    border-radius: 100%;
    border: 1px solid #C4C4C4;
}
.product-box .product-options a.order {
    font-size: 14px;
    color: #000;
}

.product-box .product-options a.review-link {
    display: flex;
    align-items: center;
    height: 25px;
    color: #000;
    font-size: 18px;
    gap: 15px;
    margin-bottom: 20px;
}

.product-box .product-options .price {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 22px;
    margin-bottom: 20px;
    margin-top: 10px;
}

.woocommerce-review-link{
    color: #000;
    font-size: 18px;
    line-height: 120%;
    font-family: Gilroy;
    font-weight: 500;
    text-decoration: underline;
    display: flex;
    align-items: center;
    gap: 8px;
}

.product-box .product-options .price .new-price {
    font-size: 28px;
    font-weight: 700;
    color: #d70404;
}

.product-box .product-options .price .old-price {
    font-weight: 500;
    font-size: 20px;
    color: #767676;
    text-decoration: line-through;
}
.product-box .product-options .price .sale-label {
    width: 67px;
    height: 31px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: url('../img/image-fill-b.svg') no-repeat center center;
    font-size: 15px;
    color: #767676;
}

.product-box .product-options a.btn-3d {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    margin-bottom: 20px;
    background: #000;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    text-decoration: none;
    height: 41px;
}
.product-box .product-options a.btn-3d:hover {
    opacity: 0.8;
}
.product-box .product-options a.btn-cart {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    margin-bottom: 20px;
    background: #000;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    text-decoration: none;
    height: 45px;
}

.product-box .product-options a.btn-cart:hover {
    opacity: 0.8;
}
.product-box .product-info {
    width: 100%;
    max-width: 374px;
}

.product-box .product-info .char-list {}
.product-box .product-info .char-list .item {
    margin-bottom: 15px;
    display: flex;
    gap: 10px;
}
.product-box .product-info .char-list .item .title {
    font-size: 14px;
    color: #515151;
}
.product-box .product-info .char-list .item .val {
    font-size: 14px;
    color: #000;
}
.product-box .product-info .link-all-char {
    font-size: 14px;
    color: #000;
    display: block;
    margin-bottom: 4px;
}
.product-box .product-info .link-catalog-divan {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 14px;
    color: #000;
    text-decoration: none;
    margin-bottom: 30px;
}
.product-box .product-info .link-catalog-divan svg {
    width: 100%;
    max-width: 8px;
}
.product-box .product-info .icons-box {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    justify-content: space-between;
}
.product-box .product-info .icons-box .icon {
    width: 100%;
    max-width: 25px;
}
.product-box .product-info .icons-box .icon svg {
    width: 100%;
    max-width: 100%;
}
.product-box .product-info .icons-box .text {
    font-size: 13px;
}
.product-box .product-info .icons-box .text p {
    font-size: 13px;
    margin-bottom: 5px;
}
.product-box .product-info .icons-box .text span {
    font-size: 13px;
    color: #767676;
}

.content-wrapper {
    min-height: 300px;
}

footer.footer {
    padding-bottom: 48px;
}
footer.footer .foot {
    display: flex;
    justify-content: space-between;
    margin-bottom: 48px;
}
footer.footer .foot .col {}
footer.footer .foot .col h4 {
    font-size: 24px;
    font-weight: 600;
    color: #8e9194;
    margin-bottom: 24px;
}
footer.footer .foot .col ul {}
footer.footer .foot .col ul li {
    list-style: none;
    margin-bottom: 15px;
    color: #8e9194;
    font-size: 16px;
    font-weight: 300;
}
footer.footer .foot .col ul li a {
    color: #8e9194;
    font-size: 16px;
    text-decoration: none;
}

footer.footer .foot .col.col-seo-cats {
    max-width: 980px;
}

footer.footer .foot .col.col-seo-cats .seo-footer-links {
    display: block;
    column-count: 3;
    column-gap: 24px;
    margin: 0;
    padding: 0;
}

footer.footer .foot .col.col-seo-cats .seo-footer-links li {
    break-inside: avoid;
    margin: 0 0 6px;
    line-height: 1.35;
}

footer.footer .foot .col.col-seo-cats .seo-footer-links li a {
    display: inline;
    padding: 0;
    border: 0;
    background: transparent;
    color: #7a7f83;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
    transition: color .2s ease;
}

footer.footer .foot .col.col-seo-cats .seo-footer-links li a:hover {
    color: #000;
    text-decoration: underline;
}

@media (max-width: 991px) {
    footer.footer .foot .col.col-seo-cats {
        max-width: 100%;
    }
    footer.footer .foot .col.col-seo-cats .seo-footer-links {
        column-count: 2;
        column-gap: 16px;
    }
}

@media (max-width: 640px) {
    footer.footer .foot .col.col-seo-cats .seo-footer-links {
        column-count: 1;
    }
}
footer.footer .foot .col .adr-line {
    margin-bottom: 20px;
}
footer.footer .foot .col .adr-line p {
    color: #8e9194;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    margin-bottom: 5px;
}
footer.footer .foot .col .adr-line p a {
    color: #8e9194;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
}
footer.footer .foot .col .adr-line span {
    color: #8e9194;
    font-size: 16px;
}
footer.footer .copyright {
    color: #8e9194;
    font-size: 16px;
    text-align: center;
}

ul.products {}
ul.products li.product {}
ul.products li.product a img {
    border-radius: 10px;
}
ul.products li.product a.button{
    font-size: 15px;
    display: flex !important;
    border-radius: 10px;
    align-items: center;
    font-family: Gilroy;
    justify-content: center;
    height: 42px;
    width: 100%;
    font-weight: 700;
    background: #000;
    color: #fff;
    text-transform: uppercase;
}
button.button {
    font-size: 15px;
    display: flex !important;
    border-radius: 10px !important;
    align-items: center;
    justify-content: center;
    height: 42px;
    width: 100%;
    font-weight: 700;
    background: #000 !important;
    color: #fff !important;
    text-transform: uppercase;
}
ul.products li.product h2 {
    color: #25282b;
    min-height: 56px;
}
ul.products li.product h2 a {
    color: #25282b;
    font-size: 16px;
    text-decoration: none;
}

section.related.products > h2, section.model-related.products > h2{
    font-size: 36px;
    color: #000;
    margin-bottom: 24px;
}
.woo-variation-product-gallery {
    max-width: 100% !important;
    width: 100%!important;
}

.woocommerce ul.products li.product .price {
    display: flex;
    font-weight: 400;
    /*margin-bottom: .5em;*/
    font-size: .857em;
    flex-direction: row-reverse;
    align-items: self-end;
    justify-content: flex-end;
    column-gap: 15px;
}

ul.products li.product span.price del {
    font-weight: 500;
    font-family: Gilroy;
    font-size: 16px;
    color: #767676 !important;
}
ul.products li.product span.price ins {
    font-weight: 700;
    color: #d70404;
    font-size: 20px;
    text-decoration: none;
    font-family: Gilroy;
}

section#wpc_filters_widget-2 {
    display: none;
    width: 100%;
    max-width: 500px;
    position: fixed;
    top: 100px;
    right: 0;
    background: #ffffff;
    padding: 20px;
}



.product-options .price {
    display: flex;
    font-weight: 400;
    margin-bottom: .5em;

    flex-direction: row-reverse;
    align-items: self-end;
    justify-content: flex-end;
    gap: 12px;
}

.product-options .price del {
    font-weight: 500;
    font-size: 20px;
    color: #767676 !important;
}
.product-options .price ins {
    font-weight: 700;
    color: #d70404;
    font-size: 28px;
    text-decoration: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex;
    gap: 20px;
    align-items: center;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    box-shadow: 0 .3em .8em rgba(0, 0, 0, .08);
    background: #fff;
    border-radius: 30px;
    padding: 7px 18px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: none;
    border: none;
    font-size: 20px;
    color: #000;
    margin-bottom: 15px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs:before, .woocommerce div.product .woocommerce-tabs ul.tabs li.active:after {
    display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:before, .woocommerce div.product .woocommerce-tabs ul.tabs li:after {
    display: none;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
    margin-bottom: 20px;
}
.woocommerce div.product .woocommerce-tabs .panel p {
    margin-bottom: 10px;
    line-height: 26px;
}
.woocommerce table.shop_attributes th {
    text-align: left;
}
a.reset_variations {
    color: #25282b;
}

.button-3d, .woosc-btn {
    font-size: 15px;
    font-family: 'Gilroy';
    display: flex !important;
    border-radius: 10px !important;
    align-items: center;
    justify-content: center;
    height: 50px;
    width: 100%;
    max-width: 50px;
    font-weight: 700;
    background: #000 !important;
    color: #fff !important;
    text-transform: uppercase;
    border: none !important;
    cursor: pointer;
}
.woocommerce div.product form.cart {
    margin-bottom: -20px !important;
}

/* Основные стили свачей */
.color-swatches-wrapper {
    display: flex;
    gap: 9px;
    margin: 20px 0;
    flex-wrap: wrap;
    align-items: center;
}

.color-swatch {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    cursor: pointer;
    border: 1px solid #eee;
    transition: all 0.3s ease;
    position: relative;
}

.color-swatch:hover {
    transform: scale(1.1);
    border-color: #ccc;
}

.color-swatch:hover::before{
    background-image: url("https://djivani.ru/wp-content/uploads/2025/07/bez-nazvaniya.svg");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 60%;
    content: " ";
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
}

.color-swatch.selected {
    transform: scale(1.1);
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #767676;
}

.color-swatch.disabled {
    position: relative;
    background-color: transparent;
    border: none;
    font-weight: 400;
    font-size: 16px;
    text-decoration: underline;
    font-family: Gilroy;
    color: #767676;
}

/*.color-swatch.disabled::after {*/
/*    content: '';*/
/*    position: absolute;*/
/*    top: 50%;*/
/*    left: 0;*/
/*    right: 0;*/
/*    height: 2px;*/
/*    background: #ff0000;*/
/*    transform: rotate(-45deg);*/
/*}*/

/* Скрываем стандартный select */
select[name="attribute_pa_color"] {
    display: none !important;
}

/* Анимация смены изображения */
.woocommerce-product-gallery__image img {
    transition: opacity 0.3s ease;
}

.woocommerce-product-gallery__image img.loading {
    opacity: 0.5;
}

.woocommerce ul.products li.product .onsale {
    display: none !important;
}

.onsale-div{
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    gap: 20px;
}

.onsale{
    width: 70px;
    height: 70px;
    z-index: 100;
    left: 570px;
    display: block !important;
    box-shadow: 4px 4px 40px #cbcbcb;
}

.onsale2{
    width: 70px;
    height: 70px;
    z-index: 100;
    left: 485px;
    box-shadow: 4px 4px 40px #cbcbcb;
    display: block !important;
}

.onsale-loop{
    width: 50px !important;
    height: 50px !important;
    position: absolute;
    z-index: 100;
    bottom: 150px;
    right: 78px;
}

.onsale2-loop{
    width: 50px !important;
    height: 50px !important;
    position: absolute;
    bottom: 150px;
    z-index: 100;
    right: 15px;
}

/* Стили для свачей в карточках товаров */
.loop-color-swatches-wrapper {
    margin: 10px 0;
    text-align: center;
}

.loop-color-swatches-wrapper .color-swatches-wrapper {
    display: flex;

    flex-wrap: wrap;
    gap: 4px;
}

.loop-color-swatches-wrapper .color-swatch {
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    cursor: pointer;
    border: 1px solid #ddd;
    transition: all 0.2s ease;
    text-decoration: none !important;
}

.loop-color-swatches-wrapper .color-swatch:hover {
    transform: scale(1.1);
    border-color: #333;
}

/* Стиль для активного цвета (если нужно показать текущий выбор) */
.loop-color-swatches-wrapper .color-swatch.active {
    transform: scale(1.1);
    border-color: #333;
    box-shadow: 0 0 0 2px #fff, 0 0 0 3px #333;
}


/* WooCommerce Enhanced Styles */
.woocommerce {

    margin: 0 auto;

    font-family: 'Roboto', 'Arial', sans-serif;
    color: #444;
    line-height: 1.6;
}

/* Общие элементы */
.woocommerce h2, 
.woocommerce h3 {
    color: #2c3e50;
    margin-bottom: 25px;
    font-weight: 500;
    text-shadow: 0 1px 1px rgba(0,0,0,0.1);
}

.woocommerce button.button{
    background-color: #000;
    color: white;
    border-radius: 6px;
    font-family: Gilroy;
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    border: none;
    letter-spacing: 0.5px;
}

.woocommerce-button,
.woocommerce a.button {
    background-color: #000;
    color: white;
    padding: 14px 28px;
    border-radius: 6px;
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    border: none;
    letter-spacing: 0.5px;
}

.woocommerce-button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover {
    background-color: #ffffff;
    color: #000000;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    transform: translateY(-1px);
}

/* Формы */

form-row {
    margin-bottom: 25px;
}

.woocommerce form .form-row label {
    display: block;
    margin-bottom: 8px;
    font-weight: 700;
    color: #555;
}

.label{
    padding-top: 18px;
}

.woocommerce form .input-text {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #cfcfcf;
    transition: all 0.3s;
}

.woocommerce form .input-text:focus {
    border-color: unset;
    box-shadow: none;
    outline: none;
}

/* Таблицы */
.woocommerce table.shop_table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 30px;
    border: none !important;
    overflow: hidden;
}

.woocommerce table.shop_table tbody th a {
	color:#fff;
}

.woocommerce table.shop_table th {
    /*background-color: #f5f5f5;*/
    color: #000000;
    padding: 0 !important;
    text-align: left;
    font-weight: 500;
}

thead{
    display: none;
}

.woocommerce table.shop_table td {
    /*padding: 15px;*/
    /*border-bottom: 1px solid #f0f0f0;*/
    /*vertical-align: middle;*/
    /*background: #f5f5f5;*/
    border-top: unset !important;
}

.woocommerce table.shop_table tfoot th {
    font-weight: 600;
    /*background: #f5f5f5;*/
    color: #333;
}

/* Корзина */
.woocommerce-cart-form__contents .product-thumbnail img {
    width: 80px;
    height: auto;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: transform 0.3s;
}

.woocommerce-cart-form__contents .product-thumbnail img:hover {
    transform: scale(1.05);
}

.woocommerce-cart-form__contents .product-name a {
    color: #2c3e50;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s;
    font-family: Gilroy;
}

.woocommerce-Price-amount.amount bdi{
    font-family: Gilroy;
}

.woocommerce-cart-form__contents .product-name a:hover {
    color: #000;
}

.woocommerce-cart-form__contents .product-remove a {
    /*color: #e74c3c !important;*/
    /*font-size: 22px;*/
    /*text-decoration: none;*/
    /*transition: transform 0.2s;*/
    /*display: inline-block;*/
    width: 22px !important;
    height: 22px !important;
    font-size: unset !important;
    font-weight: unset !important;
}

.woocommerce a.remove:hover{
    color: unset !important;
    background-color: unset !important;
}

.woocommerce-cart-form__contents .actions {
    text-align: right;
    padding: 20px 0;
}

.woocommerce-cart-form__contents .quantity .qty {
    width: 45px;
    text-align: center;
    padding: 8px;
    height: 30px;
    font-family: Gilroy;
    font-weight: 700;
}

/*.cart_totals {*/
/*    background: #f5f5f5;*/
/*    padding: 25px;*/
/*    border-radius: 8px;*/
/*    margin-top: 40px;*/
/*    box-shadow: 0 -6px 20px rgba(0,0,0,0.08);*/
/*}*/

.cart_totals h2 {
    margin-top: 0;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
    display: none;
}

.wc-proceed-to-checkout {
    margin-top: 25px;
    text-align: right;
}

/* Оформление заказа */
/*.woocommerce-checkout #customer_details {*/
/*    margin-bottom: 50px;*/
/*}*/

.woocommerce-checkout .col-1, 
.woocommerce-checkout .col-2 {
    background: #f5f5f5;
    padding: 30px 40px;
    border-radius: 8px;
    margin-bottom: 30px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

.woocommerce-checkout #order_review {
    background: #f5f5f5;
    padding: 25px;
    border-radius: 8px;
    /*box-shadow: 0 3px 10px rgba(0,0,0,0.08);*/
}

.woocommerce-checkout #order_review .product-name {
    width: 70%;
}

.woocommerce-checkout #payment {
    background: transparent;
    padding: 25px;
    border-radius: 8px;
    margin-top: 30px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
    padding-bottom: 60px;
}

.woocommerce-checkout #payment .payment_methods {
    list-style: none;
    padding: 0;
}

.woocommerce-checkout #payment .payment_methods li {
    margin-bottom: 15px;
    padding-bottom: 15px;
}

.woocommerce-checkout #payment .payment_methods li:last-child {
    border-bottom: none;
}

.woocommerce-checkout #payment .payment_box {
    background: #f9f9f9;
    padding: 15px;
    margin: 15px 0;
    border-radius: 6px;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.05);
}

#open-wpc-filters-popup{
    padding: 8px 30px !important;
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-MyAccount-navigation li {
    margin-bottom: 12px;
}

.woocommerce-MyAccount-navigation a {
    display: block;
    padding: 12px 18px;
    background: white;
    color: #555;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.3s;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
    border-left: 3px solid transparent;
}

.woocommerce-MyAccount-navigation a:hover,
.woocommerce-MyAccount-navigation .is-active a {
    background: #000;
    color: white;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    border-left: 3px solid #2c3e50;
    transform: translateX(5px);
}

.woocommerce-MyAccount-content {
    width: 70%;
    float: left;
    background: white;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

.woocommerce-MyAccount-content p {
    margin-bottom: 20px;
}

/* Личный кабинет - вход/регистрация */
#customer_login {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    gap: 30px;
}

#customer_login .u-column1,
#customer_login .u-column2 {
    width: 48%;
    background: #f5f5f5;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: transform 0.3s;
}

#customer_login .u-column1:hover,
#customer_login .u-column2:hover {
    transform: translateY(-5px);
}

#customer_login h2 {
    margin-top: 0;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.woocommerce-form-login,
.woocommerce-form-register {
    margin-top: 20px;
}

.woocommerce-form-login__rememberme {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.woocommerce-form-login__rememberme input {
    margin-right: 10px;
}

.lost_password {
    margin-top: 20px;
}

.woocommerce-privacy-policy-text {
    margin: 20px 0;
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

/* Анимации и эффекты */
.woocommerce-message {
    animation: fadeInUp 0.5s;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    border-left: 4px solid #000;
    outline: none;
}

@keyframes fadeInUp {
    from { 
        opacity: 0;
        transform: translateY(20px);
    }
    to { 
        opacity: 1;
        transform: translateY(0);
    }
}

/* Иконки и декоративные элементы */
.woocommerce-MyAccount-navigation li a::before {
    content: "→";
    margin-right: 10px;
    opacity: 0.7;
    transition: all 0.3s;
}

.woocommerce-MyAccount-navigation .is-active a::before {
    content: "✓";
    margin-right: 10px;
}

/* Адаптивность */
@media (max-width: 768px) {
    /*.woocommerce {*/
    /*    padding: 20px;*/
    /*}*/
    
    .woocommerce-MyAccount-navigation,
    .woocommerce-MyAccount-content {
        width: 100%;
        float: none;
    }
    
    .woocommerce-MyAccount-navigation {
        margin-bottom: 30px;
        margin-right: 0;
    }
    
    #customer_login {
        flex-direction: column;
    }
    
    #customer_login .u-column1,
    #customer_login .u-column2 {
        width: 100%;
        margin-bottom: 30px;
    }
    
    .woocommerce table.shop_table_responsive tr td::before {
        content: none;
    }
}

/* Дополнительные улучшения */
.woocommerce-info {
    background: #f8f9fa;
    border-left: 4px solid #17a2b8;
    /*box-shadow: 0 2px 5px rgba(0,0,0,0.05);*/
}

.woocommerce-error {
    background: #fff3f3;
    border-left: 4px solid #e74c3c;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.quantity .plus, 
.quantity .minus {
    background: #f5f5f5;
    padding: 5px 10px;
    cursor: pointer;
    transition: all 0.2s;
}

.quantity .plus:hover, 
.quantity .minus:hover {
    background: #e9e9e9;
}

/* Гладкие переходы */
* {
    transition: background-color 0.3s, color 0.3s, box-shadow 0.3s, transform 0.3s;
}

section.product-page {
	padding-bottom: 100px;
}
a.checkout-button.button.alt.wc-forward {
	background: #404040 !important;
    height: 43px;
    padding: 14px !important;
    font-size: 16px !important;
}

.w-post-elm-size, .w-post-elm-material {
	font-size: 12px;
    font-family: Gilroy;
	margin-bottom: 5px;

}
.w-post-elm-size  > span {
	
}

#load-more-models-wrapper{
    display: flex;
    justify-content: center;
    margin-bottom: 100px;
}


#load-more-models[disabled] {
    opacity: 0.5;
    cursor: default;
}

.load-more-wrapper{
    display: flex;
    align-items: center;
    justify-content: start;
}

.load-more-products{
    font-size: 15px;
    width: 100%;
    font-weight: 700;
    color: #000000;
    text-transform: uppercase;
    cursor: pointer;
}

/*Infinityscroll Loader CSS*/
.loader {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    position: relative;
    animation: rotate 1s linear infinite;
    margin: 50px auto;
}
.loader::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    inset: 0px;
    border-radius: 50%;
    border: 5px solid #FFF;
    animation: prixClipFix 2s linear infinite ;
}

@keyframes rotate {
    100%   {transform: rotate(360deg)}
}

@keyframes prixClipFix {
    0%   {clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}
    25%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}
    50%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}
    75%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}
    100% {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}
}

.custom-thumb-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.custom-thumb-wrapper .wp-post-image {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1; /* ниже слайдера */
}

.variation-slider-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 2; /* выше featured image */
    opacity: 0; /* по умолчанию невидим */
    pointer-events: none; /* чтобы не мешать наведению */
    transition: opacity 0.3s ease;
}

.slider-nav {
    display: flex;
    justify-content: center;
    gap: 5px;
    margin-top: 10px;
    position: absolute;
    bottom: 25px;
    right: 10px;
    z-index: 999;
}

.slider-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    transition: background 0.3s ease;
}

.slider-dot.active {
    background: #333;
}

.wc_payment_method img:nth-of-type(2){
    width: 60px;
    height: auto;
}


.wc_payment_method.payment_method_cod label img {
    display: none;
}

.variations tr{
    display: flex;
    align-items: start;
    gap: 20px;
}

.product.woocommerce.add_to_cart_inline {
    display: none;
}

.menu-bar svg:nth-of-type(2){
    display: none;
}


.menu.open {
    left: 0;
    display: block !important;
    position: fixed;
    top: 0;
    /*left: -30%;*/
    width: 30%;
    height: 100%;
    background-color: #f3f3f3;
    box-shadow: 2px 0 10px rgba(0,0,0,0.1);
    z-index: 1999;
    transition: left 0.3s ease;
    padding: 2rem;
}

.menu a, .phone a, .selected-city-text{
    font-family: Gilroy;
}

.menu.open ul{
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: space-between;
    gap: 20px;
    margin-top: 150px;
}

.menu-bar svg:nth-of-type(2) {
    position: fixed;
    top: 130px;
    left: 20px;
    z-index: 2000;
    cursor: pointer;
}

.menu-bar svg {
    width: 30px;
    height: 30px;
    fill: #000;
    transition: opacity 0.2s ease;
}

.menu-bar svg:last-of-type {
    display: none;
}

.menu.open ~ .menu-bar svg:first-of-type {
    display: none;
}
.menu.open ~ .menu-bar svg:last-of-type {
    display: block;
    z-index: 2000;
}

.logo{
    position: relative;
    z-index: 2000;
}


.rtwpvg-product {
    position: relative;
}

.product-hover-info {
    padding-top: 10px;
    font-size: 14px;
    /*position: absolute;*/
    /*bottom: 40px;*/
    /*left: -10px;*/
    /*opacity: 0;*/
    /*visibility: hidden;*/
    /*transition: opacity 0.3s ease, visibility 0.3s ease;*/
    /*pointer-events: none;*/
}

.single-product .product-hover-info {
    /*padding: 10px;*/
    font-size: 14px;
    position: static;
    bottom: 0;
    left: 0;
    opacity: 1;
    visibility: visible;
}

.single-product .rtwpvg-product:hover .button.product_type_variable.add_to_cart_button {
    margin-top: 0px;
}

.single-product .woocommerce ul.products li.product .button{
    margin-top: 0px !important;
}

.single-product .button.product_type_variable.add_to_cart_button.add_to_card_variation{
    margin-top: 0px !important;
}


.single-product .rtwpvg-product:hover .product-hover-info {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    display: block;
}

.page-id-1535 .post-8407 .product-hover-info, .page-id-13698 .post-8407 .product-hover-info{
    bottom: 60px !important;
}

/*.rtwpvg-product:hover .product-hover-info {*/
/*    opacity: 1;*/
/*    visibility: visible;*/
/*    pointer-events: auto;*/
/*    display: block;*/
/*}*/

/*.rtwpvg-product .button.product_type_variable.add_to_cart_button {*/
/*    margin-top: 0;*/
/*    transition: margin-top 0.3s ease;*/
/*}*/

/*.rtwpvg-product:hover .button.product_type_variable.add_to_cart_button {*/
/*    margin-top: 60px;*/
/*}*/

.model-section{
    position: relative;
    margin-top: 60px;
}

.load-more-wrapper {
    height: 250px;
    width: 100%;
    border: 1px solid #000;
    border-radius: 50%;
    max-width: 250px;
    display: flex;
    flex-direction: column-reverse;
    padding-top: 35px;
    cursor: pointer;
    position: relative;
    float: left;
    margin-top: 30px;
    margin-left: 30px;
}

.zbutton-3d{
    line-height: 1.2;
    font-weight: 700;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-radius: 10px;
    padding: 0.9em 2.2em;
    background: #000000;
    border-color: transparent;
    color: #ffffff;
    box-shadow: 0px 0.15em 0.3em 0px rgba(0,0,0,0.2);
    cursor: pointer;
    font-family: Gilroy;
}

.wc-geteway-tinkoff-kvk-product-info{
    border: none;
    background-color: #f3f3f3;
    padding: 19px 29px 16px 64px !important;
    /*margin-top: 10px;*/
    font-family: Gilroy;
    font-weight: 500;
    font-size: 16px !important;
    line-height: 120%;
    vertical-align: middle;
    margin: 5px 0 30px 0 !important;
}

.woocommerce-info::before{
    /*display: none !important;*/
    content: url("https://djivani.ru/wp-content/uploads/2025/06/33447f85-5b92-42f9-8d88-509bd152b47c.svg") !important;
}

.woosc-btn {
    float: inherit;
}

.compare-3d{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px    ;
}

.discount-percentage {
    color: red;
    font-weight: bold;
    margin-left: 10px;
    font-size: 0.9em;
}

.discount-percentage{
    background-size: 100% 100%;
    color: #767676;
    font-weight: 400;
    padding: 15px 10px 15px 20px;
    position: relative;
    width: 100%;
    max-width: 65px;
    font-size: 15px;
    top: 0px;
    background-image: url("https://djivani.ru/wp-content/uploads/2025/06/image-fill.svg");
    font-family: Gilroy;
}

.discount-percentage-loop{
    background-size: 100% 100%;
    color: #767676;
    font-weight: 400;
    padding: 5px 0px 5px 18px;
    position: relative;
    width: 100%;
    max-width: 65px;
    font-family: Gilroy;
    font-size: 15px;
    margin-top: 15px;
    top: -8px;
    background-image: url("https://djivani.ru/wp-content/uploads/2025/06/image-fill.svg");
}

.price{
    align-items: center !important;
}

.link-catalog-second{
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 14px;
    color: #000;
    text-decoration: none;
    margin-bottom: 4px;
}
.link-catalog-second svg {
    width: 100%;
    max-width: 8px;
}

.woosw-item--name a{
    text-decoration: none;
    color: #000;
}

.sidebar-seo-h1 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
}

.sidebar-seo-description {
    font-size: 14px;
    line-height: 1.5;
    color: #444;
    margin-bottom: 25px;
}




/* Общий фон и цвет текста внутри фильтра */
#wpc-filters-popup-content,
.wpc-filters-widget-containers-wrapper {
    background-color: #f3f3f3;
    color: black;
    font-family: Arial, sans-serif;
    padding: 10px 0;
}

/* Контейнер всего виджета */
.wpc-filters-widget-containers-wrapper {
    padding: 0 15px;
}

/* Верхняя часть с чипсами */
.wpc-filters-widget-top-container {
    margin-bottom: 15px;
}

.wpc-widget-top-inside {
    background-color: #fff;
    padding: 10px 15px;
    border-radius: 6px;
    box-shadow: 0 0 5px rgba(0,0,0,0.1);
}

.wpc-inner-widget-chips-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.wpc-filter-chips-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 8px;
}

.wpc-filter-chips-list li {
    background: black;
    color: #f3f3f3;
    padding: 5px 10px;
    border-radius: 20px;
    font-size: 13px;
    cursor: pointer;
}

/* Основная обертка фильтров */
.wpc-filters-widget-wrapper {
    background-color: #f3f3f3;
    border-radius: 8px;
    padding: 15px;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
}

/* Заголовок каждого фильтра */
.wpc-filters-section {
    margin-bottom: 20px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 12px;
}

.wpc-filter-header {
    margin-bottom: 8px;
}

.wpc-filter-title {
    font-weight: bold;
    font-size: 16px;
    color: black;
}

/* Контент фильтра */
.wpc-filter-content {
    font-size: 14px;
    color: black;
}

/* Стили для select */
.wpc-filters-widget-select {
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #f3f3f3;
    color: black;
    font-size: 14px;
    cursor: pointer;
}

.wpc-filters-widget-select option {
    background: white;
    color: black;
}

/* Стили для input range (числовых полей) */
.wpc-filters-range-inputs {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.wpc-filters-range-min,
.wpc-filters-range-max {
    width: 48%;
    padding: 6px 8px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #f3f3f3;
    color: black;
    font-size: 14px;
}

/* Кнопки */
.wpc-filters-submit-button,
.wpc-filters-reset-button,
.wpc-filters-apply-button,
.wpc-filters-close-button {
    display: inline-block;
    padding: 8px 16px;
    margin-right: 10px;
    background: black;
    color: #f3f3f3;
    text-decoration: none;
    border-radius: 5px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.wpc-filters-submit-button:hover,
.wpc-filters-reset-button:hover,
.wpc-filters-apply-button:hover,
.wpc-filters-close-button:hover {
    background: #222;
}

/* Контейнер с кнопками */
.wpc-filters-widget-controls-container {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #ccc;
}

.wpc-filters-widget-controls-wrapper {
    display: flex;
    justify-content: space-between;
    gap: 15px;
}

.wpc-filters-widget-controls-item {
    flex: 1;
}

/* Ссылка редактирования фильтра (админская) */
.wpc-edit-filter-set {
    margin-top: 15px;
    font-size: 12px;
    text-align: center;
}

.wpc-edit-filter-set a {
    color: black;
    text-decoration: underline;
}

.wpc-edit-filter-set a:hover {
    color: #444;
}






/* Кнопка открытия popup */
.open-city-popup {
    display: flex;
    gap: 5px;
    align-items: center;
    color: #000000;
    cursor: pointer;
    transition: background-color 0.3s ease;
    font-size: 16px;
    margin-left: 10px;
}

.menu .open-city-popup{
    display: none;
}



/* Overlay для popup */
.city-popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 10000;
    opacity: 0;
    visibility: hidden;
    backdrop-filter: blur(2px);
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.city-popup-overlay.is-active {
    opacity: 1;
    visibility: visible;
}

/* Popup контейнер */
.city-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 600px;
    padding: 40px 24px 24px;
    width: 90%;
    opacity: 0;
    visibility: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    z-index: 10001;
     transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), visibility 0.3s ease;
}

.city-popup.is-active {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%) scale(1);
}

.city-popup-close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 28px;
    cursor: pointer;
    color: #999;
}

.city-popup-close:hover {
    color: #000;
}

/* Заголовок в popup */
.city-popup h2 {
    margin-bottom: 20px;
    font-size: 22px;
    color: #333;
}

.select-city {
    display: block;
    width: 100%;
    padding: 12px 20px;
    margin: 10px 0;
    background-color: #fff;
    color: #000000;
    font-size: 16px;
    border: 2px solid #000000;
    border-radius: 8px;
    transition: background-color 0.3s ease;
    text-decoration: none;
}

.select-city:hover {
    background-color: #000000;
    color: #fff;
}

/*.products.columns-4{*/
/*    display: flex;*/
/*    flex-wrap: wrap;*/
/*}*/

.woocommerce-loop-product__title{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 2.8em; /* Adjust based on font-size/line-height */
    width: 100%;
    font-weight: 500;
    font-size: 16px !important;
    line-height: 1.4em;
    font-family: Gilroy;
}

.wpc-filter-range-form.wpc-form-has-slider{
    width: 100%;
}

.wpc-filters-widget-select{
    font-family: 'Gilroy';
    font-size: 16px;
    width: 544px;
    height: 48px;
}

.wpc-filters-range-min, .wpc-filters-range-max{
    width: 209px;
    font-family: 'Gilroy';
    font-size: 16px;
    height: 48px;
}

.wpc-filters-submit-button, .wpc-filters-reset-button{
    font-family: 'Gilroy';
    font-size: 16px;
    width: 244px;
    height: 44px;
}

.wpc-filters-reset-button{
    color: #000000;
}

.wpc-edit-filter-set{
    display: none;
}

/*h2.model-heading{*/
/*    margin-bottom: 20px !important;*/
/*    margin-top: 55px !important;*/
/*}*/

/*.rtwpvg-product.product.type-product.post-9625 .product-hover-info{*/
/*    bottom: -30px !important;*/
/*}*/

/*.rtwpvg-product.product.type-product.post-8407 .product-hover-info{*/
/*    bottom: 105px !important;*/
/*}*/


/*.rtwpvg-product.product.type-product.post-4443 .product-hover-info{*/
/*    bottom: -50px !important;*/
/*}*/


/*.rtwpvg-product.product{*/
/*    height: 510px;*/
/*}*/


.woocommerce-product-rating{
    margin-bottom: 28px;
}

.woocommerce-Tabs-panel.woocommerce-Tabs-panel--reviews.panel.entry-content.wc-tab{
    left: 0;
    top: 0;
    background-color: #f3f3f3;
    z-index: 100000000;
    padding: 70px;
    transition: right 0.3s ease-in-out;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    display: none;
}

.rating-distribution{
    width: 100%;
    max-width: 500px;
}

.product-rating-summary{
    justify-content: space-evenly;
}

#open-review-popup{
    display: block;
    background-color: #000000;
    color: #ffffff;
    border: 0;
    height: 40px;
    line-height: 20px;
    font-size: 15px;
    width: auto;
    padding: 10px 20px;
    margin: 0;
    cursor: pointer;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit{
    background-color: #000000 !important;
    color: #ffffff !important;
}

.page-numbers.current{
    background-color: #000000 !important;
    color: #fff !important;
    font-size: 1.4rem;
    line-height: 3.5rem;
    height: 3.5rem;
    width: 3.5rem;
    overflow: hidden;
    border-radius: 50%;
    transition: none;
    cursor: pointer;
}

.page-numbers{
    display: flex !important;
    align-items: center;
    justify-content: center;

}

.page-numbers{
    border: none !important;
}





/* Затемнение заднего фона */
#review-popup-overlay {
    display: none;
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(3px);
    transition: opacity 0.3s ease;
}

/* Контейнер попапа */
#review-popup {
    background: #ffffff;
    max-width: 800px;
    width: 90%;
    margin: 10vh auto;
    padding: 30px 40px;
    border-radius: 12px;
    position: relative;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    animation: popupFadeIn 0.4s ease;
    overflow-y: auto;
    max-height: 80vh;
}

/* Плавное появление */
@keyframes popupFadeIn {
    from {
        transform: scale(0.95);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

/* Кнопка закрытия */
#close-review-popup {
    position: absolute;
    top: 12px;
    right: 15px;
    background: none;
    border: none;
    font-size: 28px;
    color: #888;
    cursor: pointer;
    transition: color 0.3s ease;
}

#close-review-popup:hover {
    color: #000;
}

/* Контейнер формы */
#popup-review-form {
    margin-top: 20px;
}

/* Адаптив */
@media (max-width: 480px) {
    #review-popup {
        padding: 20px;
        max-height: 90vh;
    }

    #close-review-popup {
        font-size: 24px;
    }
}

#comment{
    height: 200px !important;
    resize: none;
}

/* Контейнер пагинации */
ul.page-numbers {
    display: flex;
    justify-content: center;
    gap: 8px;
    list-style: none;
    padding: 20px 0;
    margin: 0;
}

/* Общие стили для элементов */
ul.page-numbers li .page-numbers {
    display: inline-block;
    min-width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    border-radius: 6px;
    color: #333;
    text-decoration: none;
    background-color: #f5f5f5;
    transition: all 0.3s ease;
}

/* Текущая страница */
ul.page-numbers li .current {
    background-color: #333;
    color: #fff;
    cursor: default;
}

/* Наведение */
ul.page-numbers li a.page-numbers:hover {
    background-color: #333;
    color: #fff;
}

/* Точки "..." */
ul.page-numbers li .dots {
    background: none;
    cursor: default;
    color: #888;
}

/* Кнопка "→" */
ul.page-numbers li .next.page-numbers {
    font-weight: bold;
    background-color: #e0e0e0;
}

ul.page-numbers li .next.page-numbers:hover {
    background-color: #333;
    color: white;
}

.woocommerce-LoopProduct-link.woocommerce-loop-product__link{
    position: relative;
}

.page-id-1535 .rtwpvg-product,
.page-id-13698 .rtwpvg-product,
.term-divany .rtwpvg-product,
.term-kresla .rtwpvg-product,
.term-pufy .rtwpvg-product,
.term-dekorativnye-podushki .rtwpvg-product,
.term-rasprodazha .rtwpvg-product,
.term-tkani .rtwpvg-product {
    height: 515px;
}

.page-id-1535 .product-hover-info,
.page-id-13698 .product-hover-info,
.term-divany .product-hover-info,
.term-kresla .product-hover-info,
.term-pufy .product-hover-info,
.term-dekorativnye-podushki .product-hover-info,
.term-rasprodazha .product-hover-info,
.term-tkani .product-hover-info {
    bottom: 5px;
}

#tab-additional_information {
    display: none;
}

#tab-title-additional_information.active ~ .woocommerce-Tabs-panel#tab-additional_information {
    display: block;
}

/* Hide Additional Info tab content unless active */
.woocommerce-Tabs-panel#tab-additional_information {
    display: none;
}

#tab-title-additional_information.active + .woocommerce-Tabs-panel#tab-additional_information {
    display: block;
}

.zoomImg{
    position: static !important;
    display: none !important;
}

.wpc-custom-selected-terms{
    display: none;
}

.star-rating{
    display: none !important;
}

#tab-title-additional_information{
    display: none;
}

.woocommerce-Tabs-panel.woocommerce-Tabs-panel--additional_information.panel.entry-content.wc-tab{
    position: fixed;
    z-index: 9999;
    background-color: #fff;
    top: 0;
    left: 60%;
    width: 43%;
    padding: 50px;
    transition: right 0.3s ease-in-out;
    height: 100%;
    overflow-y: auto;
    animation: popupFadeIn 0.4s ease;
}

.wpc-filters-section.wpc-filters-section-6847.wpc-filter-layout-submit-button{
    position: fixed;
    bottom: 10px;
    background-color: #e6e6e6;
    width: 500px;
    padding: 10px;
    z-index: 99;
}

.page-id-774 .woocommerce{
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.cart_totals, .woocommerce-cart-form{
    width: 100% !important;
    margin: 0;
}

.page-id-9619   .attachment-woocommerce_thumbnail.size-woocommerce_thumbnail{
    width: 100px !important;
}

.cart-collaterals{
    max-width: 480px;
    flex: 1;
}

/*.input-text.qty.text{*/
/*    border: none !important;*/
/*    box-shadow: none !important;*/
/*    cursor: pointer;*/
/*    background-color: #f5f5f5;*/
/*    outline: none !important;*/
/*}*/

.quantity{
    display: flex;
    align-items: center;
    justify-content: center;
}

.archive, .wp-singular {
    display: block !important;
}

.shipping-calculator-button{
    text-decoration: none;
    color: #000;
}

.checkout.woocommerce-checkout{
    display: flex;
    /*gap: 30px;*/
    flex-wrap: wrap;
}

.page-id-776 .col-1{
    width: 100% !important;
}

.page-id-776 .input-text {
    font-weight: 400 !important;
    letter-spacing: 0em !important;
    border-radius: 5px !important;
    background-color: transparent !important;
    color: #000000 !important;
    box-shadow: 0px 0px 0px 1px #dfe2e6 inset;
    width: 245px !important;
    height: 48px !important;
    border: 1px solid #dfe2e6 !important;
}

/*#billing_phone_field{
/*    display: none ;
/*}

/*.products-list-wrapper ul.products {*/
/*    display: flex;*/
/*    flex-wrap: wrap;*/
/*    justify-content: start;*/
/*    !*gap: 20px;*!*/
/*    padding: 0;*/
/*    margin: 0;*/
/*    list-style: none;*/
/*}*/

/* Base style: default 20% width (5 in a row) */
.products-list-wrapper ul.products li.product {
    flex: 0 0 calc(20% - 20px);
    max-width: calc(20% - 20px);
}

.woocommerce ul.products li.product{
    /*margin-left: 20px !important;*/
}

/*.products.columns-4{*/
/*    gap: 20px;*/
/*}*/


/* Heading style */
.model-heading {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
}

/* Flex grid for products */
.model-section ul.products {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0px;
    row-gap: 20px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.rtwpvg-product{
    margin-left: 20px !important;
}

.model-section ul.products li.product {
    flex: 0 0 calc(20% - 20px);
    max-width: calc(20% - 20px);
}

.related.products {
    margin-top: 50px;
    margin-bottom: 70px;
}

/* Optional heading styling */
.related.products h2 {
    font-size: 24px;
    margin-bottom: 20px;
}

/* Flexbox layout */
.related.products ul.products {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.related.products ul.products li.product {
    flex: 0 0 calc(20% - 20px);
    max-width: calc(20% - 20px);
}

.model-related.products {
    margin-top: 50px;
    margin-bottom: 50px;
}

/* Optional heading style */
.model-related.products h2 {
    font-size: 24px;
    margin-bottom: 20px;
}

/* Flex product list */
.model-related.products ul.products {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 20px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.model-related.products ul.products li.product {
    flex: 0 0 calc(20% - 20px);
    max-width: calc(20% - 20px);
}

.woocommerce-Input{
    font-weight: 400;
    letter-spacing: 0em;
    border-radius: 5px !important;
    background-color: #f5f5f5 !important;
    width: 100%;
    height: 48px !important;
    border: #f5f5f5 !important;
}

.woocommerce-LostPassword a{
    text-decoration: none;
    color: #000000;
}

.woocommerce-privacy-policy-link{
    color: #000000;
}

.woocommerce-form{
    border: none !important;
}

.page-id-1535 .post-8407 .button.product_type_variable.add_to_cart_button, .page-id-13698 .post-8407 .button.product_type_variable.add_to_cart_button{
    margin-top: 82px !important;
}

.woocommerce-message{
    border: none !important;
    display: flex;
    gap: 50px;
}

.woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td{
    text-align: start !important;
}

/* Стили для input, select, textarea */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    font-size: 16px;
    line-height: 1.5;
    border-radius: 4px;
    border: 1px solid #ccc;
}

/* Убираем двойные обертки */
.woocommerce .woocommerce-input-wrapper {
    display: block;
    width: 100%;
}

/* Дополнительные стили для флагов и телефона */
.iti__flag-container,
.iti--inline-dropdown {
    width: 100%;
}

.iti input.iti__tel-input {
    width: 100% !important;
    padding-left: 48px !important;
    box-sizing: border-box;
}

.wpc-filters-range-inputs .ui-slider-horizontal .ui-slider-range{
    background-color: #707070 !important;
}

.wpc-filters-main-wrap a.wpc-filters-submit-button{
    background-color: #000000 !important;
    border: none !important;
}

.wc-buy-now-btn.wc-buy-now-btn-single.single_add_to_cart_button{
    /*margin-top: 10px;*/
    background: transparent !important;
    color: #000 !important;
    box-shadow: none;
    font-size: 14px;
    font-weight: 300;
    text-transform: none;
    font-family: 'Gilroy';
    text-decoration: underline;
}

.woocommerce button.button:hover{
    box-shadow: none !important;
    transform: none !important;
}

.page-id-776 .woocommerce{
    display: flex;
    gap: 20px;
}

.checkout.woocommerce-checkout, #order_review{
    width: 100%;
    flex: 1;
    max-width: 800px;
}

.woocommerce form .form-row-last, .woocommerce-page form .form-row-last{
    float: none !important;
}

.fe-products{
    margin-top: 40px;
    margin-bottom: 90px;
}

.fe-products ul{
    display: grid !important;
    /*grid-template-columns: repeat(auto-fill, 245px) !important;*/
    /*gap: 53px !important;*/
    /*row-gap: 75px !important;*/
    /*column-gap: 53px !important;*/
    justify-content: center !important;
}

/*.products.columns-5{*/
/*    display: grid !important;*/
/*    grid-template-columns: repeat(auto-fill, 240px) !important;*/
/*    !*gap: 53px !important;*!*/
/*    row-gap: 75px !important;*/
/*    column-gap: 53px !important;*/
/*    justify-content: center !important;*/
/*}*/

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product{
    margin: 0 !important;
}

.woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product{
    float: none !important;
    width: unset!important;
}

.products.columns-4::before, .products.columns-5::before{
    content: none !important;
}

.products.columns-4::after, .products.columns-5::after{
    content: none !important;
}

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product, .products-list-wrapper ul.products li.product, .woocommerce ul.products.columns-5 li.product, .woocommerce-page ul.products.columns-5 li.product, .woocommerce-page.columns-5 ul.products li.product, .woocommerce.columns-5 ul.products li.product{
    width: unset !important;
    max-width: unset !important;
}

.woocommerce-products-header__title.page-title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    margin: 0 0 18px !important;
    font-size: 32px !important;
    line-height: 1.2 !important;
}

.page-id-776 .oneall_social_login, .woocommerce-form-login-toggle{
    display: none;
}

#wpc-filters-popup .close-popup{
    top: 25px !important;
    right: 40px !important;
}

.single_add_to_cart_button.button.alt.added::after{
    content: unset;
}

.added_to_cart.wc-forward{
    display: none !important;
}

.xoo-cp-ptitle a{
    color: #000;
    text-decoration: none;
}

.xoo-cp-btns a{
    color: #ffffff;
    text-decoration: none;
}

.xoo-cp-container{
    border: none !important;
}

.single-product .woocommerce ul.products li.product .button{
    margin: 0 !important;
}

.fe-products{
    display: flex;
    flex-direction: column;
    row-gap: 50px;
}

span.xoo-cp-close{
    right: -12px !important;
    top: -12px !important;
    color: #000;
    background-color: transparent !important;
}

#added-to-cart-popup{
    position:fixed;
    top:125px;
    right:100px;
    z-index:9999;
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
    font-size: 0.9rem;
    text-align: left;
    line-height: 1.4rem;
    padding: 1rem 1.5rem;
    width: 100%;
    max-width: 20rem;
    height: 90px;
    background: rgba(0, 0, 0, .8);
    color: #ccc;
}

.header.fixed ~ #added-to-cart-popup {
    top: 45px;
}

.products.columns-4{
    grid-template-columns: repeat(auto-fill, 265px);
    /*column-gap: 22px;*/
    row-gap: 70px;
    justify-content: space-between !important;
}

.woocommerce.columns-5 ul {
    display: grid;
    grid-template-columns: repeat(auto-fill, 260px);
    column-gap: 22px;
    justify-content: space-between;
    row-gap: 70px;
}

/*.product-hover-info{*/
/*    bottom: -25px !important;*/
/*}*/

.page-id-1535 .products, .page-id-13698 .products{
    margin-top: 100px;
}

.map{
    margin-top: 90px;
}

.single-product .products.columns-5{
    grid-template-columns: repeat(auto-fill, 265px) !important;
}

.woocommerce-notices-wrapper{
    display: none;
}

.wpc-orderby-select{
    width: 100%;
    max-width: 190px !important;
    font-family: 'Gilroy';
    outline: none;
    padding: 0 10px;
    font-size: 15px;
    height: 50px;
    border: none;
    background-color: #f5f5f5;
    box-shadow: 0px 0px 0px 1px #dfe2e6;
    color: #25282b;
    font-weight: 400;
}

header.woocommerce-products-header{
    display: flex;
    align-items: center;
    margin-top: 50px;
    justify-content: space-between;
}

#open-wpc-filters-popup{
    margin: 0 !important;
}

.term-description{
    display: none;
}

.rtwpvg-thumbnail-wrapper .swiper-wrapper{
    display: flex !important;
    flex-direction: column;
    justify-content: start !important;
    gap: 20px !important;
    width: 75px;
}

.rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-grid-layout .rtwpvg-thumbnail-wrapper, .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-thumbnail-wrapper{
    overflow: unset;
}

.rtwpvg-single-image-container{
    max-width: 615px;
}

.rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper.rtwpvg-thumbnail-position-bottom .rtwpvg-container{
    flex-direction: row-reverse !important;
    gap: 20px;
    justify-content: start !important;
}

.rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-slider img {
    width: 600px !important;
    height: auto !important;
}

.product-box .product-info {
    font-weight: 300;
    font-family: 'Gilroy';
}

.product-box .product-info .char-list .item {
    margin-bottom: 4px;
    display: flex;
    gap: 5px;

}

.product-box .product-info .char-list .item .title {
    font-size: 14px;
    color: #515151;
    font-weight: 300;
}

.header.fixed .container{
    height: 60px;
}

header.header .head-bottom {
    margin-bottom: 17px;
}


header.header .head-top {
    margin-bottom: 6px;
}

.header.fixed .head-bottom {
    height: 60px;
    padding-top: 15px;
    padding-bottom: 15px;
}

.product-box .product-options .price {

    margin-bottom: 0px;
    margin-top: 0px;
}

.rtwpvg-product {

    margin-top: 50px;
}

.product-box .product-gallery {
    margin-top: -10px;
}

h3.product_title.entry-title{
    font-family: 'Gilroy';
    font-size: 18px;
    font-weight: 600;
    color: #000000;
    line-height: 120%;
    margin: 0;
    white-space: unset !important;
    text-shadow: 0px 4px 5px #9d9d9d;
}

.woocommerce-variation-fields {
	display: none !important;
}

.woocommerce-product-details__short-description{
    display: none;
}

h1.product_title.entry-title{
    font-family: 'Gilroy';
    font-size: 16px !important;
    font-weight: 500;
    color: #000000;
    line-height: 120%;
    margin-top: 8px !important;
    margin-bottom: 16px !important;
    white-space: nowrap;         /* Prevent text from wrapping */
    overflow: hidden;            /* Hide overflow */
    text-overflow: ellipsis;     /* Show "..." at the end */
    max-width: 100%;
}

.discount-title{
    display: flex;
    align-items: center;
}

single-product ins .woocommerce-Price-amount.amount{
    font-size: 28px;
    font-weight: 700;
    font-family: 'Gilroy';
    line-height: 27px;
}

single-product del .woocommerce-Price-amount.amount{
    font-size: 20px;
    font-weight: 500;
    font-family: 'Gilroy';
    line-height: 24px;
}

.woocommerce-product-rating{
    display: flex !important;
    align-items: center !important;
}

.color-swatch {
    width: 20px !important;
    height: 20px !important;
}

.color-swatches-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.product-options .price del {
    font-weight: 500;
    font-size: 16px;
    color: #767676 !important;
    font-family: 'Gilroy';
}
.product-options .price ins {
    font-weight: 700;
    color: #d70404;
    font-size: 24px;
    font-family: 'Gilroy';
}

/*h3.product_title.entry-title {*/
/*    font-family: 'Gilroy';*/
/*    font-size: 44px;*/
/*}*/

/*h1.product_title.entry-title {*/
/*    font-size: 18px;*/
/*}*/

.link-catalog-kresla, .link-catalog-podushka, .link-catalog-puf{
    display: flex;
    gap: 8px;
    align-items: center;
    text-decoration: none;
}

.link-catalog-kresla span:nth-of-type(1), .link-catalog-podushka span:nth-of-type(1), .link-catalog-puf span:nth-of-type(1){
    font-family: Gilroy;
    font-weight: 500;
    font-size: 16px;
    color: #000000;
    line-height: 120%;
    vertical-align: middle;
}

.link-catalog-kresla span:nth-of-type(2), .link-catalog-podushka span:nth-of-type(2), .link-catalog-puf span:nth-of-type(2){
    font-family: Gilroy;
    font-weight: 400;
    font-size: 16px;
    color: #767676;
    line-height: 120%;
    vertical-align: middle;
}

.custom-color-swatches {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.color-swatch-wrapper {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    cursor: pointer;
    transition: border 0.3s ease;
    border: 1px solid #C4C4C4;
}

.color-swatch-wrapper.hidden-swatch {
    display: none;
}

.show-more-swatches {
    display: inline-block;
    font-family: Gilroy;
    font-weight: 400;
    font-size: 16px;
    vertical-align: middle;
    text-decoration: underline;
    text-decoration-style: solid;
    cursor: pointer;
}

.single-product .woosw-btn-has-icon{
    border: none !important;
    background-color: transparent !important;
    position: absolute;
    right: 0;
    top: -5px;
}

.page-id-774 .woosw-btn-has-icon{
    border: none !important;
    background-color: transparent !important;
    padding: 0;
}

.woosw-icon-5:before{
    content: url("https://djivani.ru/wp-content/uploads/2025/07/vector-1.png");
    cursor: pointer;
}

.woosw-icon-17:before{
    content: url("https://djivani.ru/wp-content/uploads/2025/07/vector-2.png");
    cursor: pointer;
}

.link-catalog{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.woocommerce div.product form.cart .variations{
    margin-top: 10px;
    margin-bottom: 20px !important;
}

.color-swatch-wrapper.active{
    outline: 2px solid #767676;
    border: 3px solid #ffffff;
}

.arrow-right img{
    margin-bottom: 5px;
}

.icon-text{
    display: flex;
    gap: 15px;
    align-items: center;
}

.rtwpvg-thumbnail-slider {
    height: 470px !important;
    overflow: hidden;
    position: relative;
}

.rtwpvg-thumbnail-slider:hover .rtwpvg-thumbnail-prev-arrow,
.rtwpvg-thumbnail-slider:hover .rtwpvg-thumbnail-next-arrow {
    opacity: 1;
    pointer-events: auto;
}

.rtwpvg-thumbnail-slider .swiper-wrapper{
    transition-timing-function: ease-out !important;
    will-change: transform;
}

.rtwpvg-thumbnail-prev-arrow,
.rtwpvg-thumbnail-next-arrow {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    font-size: 24px;
    background: white;
    padding: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    opacity: 0;
    pointer-events: none;
    z-index: 10;
    transition: opacity 0.3s ease;
    height: 30px !important;
    width: 100% !important;
    max-width: 75px !important;
}

.rtwpvg-thumbnail-prev-arrow {
    top: 0px !important;
    left: 50% !important;
}

.rtwpvg-thumbnail-next-arrow {
    top: 440px !important;
}

.swiper-slide{
    height: auto !important;
}

.swiper-button-next,
.swiper-button-prev {
    background: rgba(0, 0, 0, .5);
    cursor: pointer;
    font-size: 16px;
    line-height: 40px;
    margin-top: -20px;
    opacity: 0 !important;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    z-index: 1;
    height: 30px !important;
    width: 100% !important;
    max-width: 30px !important;
}

.swiper-button-prev {
    left: 10px;
}
.swiper-button-next {
    right: 10px;
}

.swiper-button-next::after,
.swiper-button-prev::after {
    font-size: 16px;
}

/* Style arrows using Dashicons */
.swiper-button-prev::after,
.swiper-button-next::after {
    font-family: 'Dashicons';
    font-size: 24px;
    color: #ffffff;
    content: ''; /* default empty to prevent flash */
}

.swiper-button-prev::after {
    content: "\f341"; /* Left */
}

.swiper-button-next::after {
    content: "\f345"; /* Right */
}

.swiper-button-prev {
    left: 10px;
}

.swiper-button-next {
    right: 10px;
}

/* Show arrows only on hover over main image slider */
.rtwpvg-slider-wrapper:hover .swiper-button-prev,
.rtwpvg-slider-wrapper:hover .swiper-button-next {
    opacity: 1 !important;
}

.rtwpvg-thumbnail-image.active-thumb {
    opacity: 1 !important;
}

.swiper-slide {
    height: auto !important;
}

.woocommerce table.shop_attributes th {
    width: 250px !important;
}

.woocommerce table.shop_attributes th {
    line-height: 1;
    font-family: 'Gilroy';
    font-style:normal;
}

.woocommerce div.product .woocommerce-tabs .panel p {
    margin-bottom: 0;
    line-height: 20px;
    font-family: 'Gilroy';
    font-style:normal;
}

h1.product_title.entry-title {
    white-space: wrap;
}

.wc-buy-now-btn.wc-buy-now-btn-single.single_add_to_cart_button {
    background:#E2E2E2 !important;
    text-decoration:none;
    margin-top:10px;
}


.color-swatch.hidden-swatch {
    display: none;
}

.show-more-swatches {
    display: inline-block;
    cursor: pointer;
    color: #767676;
    font-family: Gilroy;
    font-size: 16px;
}
.show-more-swatches:hover {
    text-decoration: underline;
}

.cart {
    position: relative;
}

.cart-count {
    position: absolute;
    top: -8px;
    right: -15px;
    background: #222;
    color: white;
    font-size: 12px;
    padding: 2px 6px;
    border-radius: 50%;
    line-height: 1;
}

.post-8440 .product-hover-info, .post-8473 .product-hover-info{
    bottom: 65px !important;
}


.quantity {
    display: flex;
    align-items: center;
}

.quantity button.minus,
.quantity button.plus {
    width: 27px;
    height: 30px;
    background: transparent;
    cursor: pointer;
    font-size: 16px;

}

.quantity button.plus{
    border-top: 1px solid #cfcfcf;
    border-right: 1px solid #cfcfcf;
    border-bottom: 1px solid #cfcfcf;
    border-left: none;
}


.quantity button.minus{
    border-top: 1px solid #cfcfcf;
    border-left: 1px solid #cfcfcf;
    border-bottom: 1px solid #cfcfcf;
    border-right: none;
}

.quantity input.qty {
    text-align: center;
    width: 60px;
}


.select-section{
    align-items: center;
    background-color: #ffffff;
    padding: 18px 30px;
    display: flex;
    justify-content: space-between;
}

.select-all-label{
    cursor: pointer;
    vertical-align: top;
    width: 100%;
    display: flex;
    align-items: center;
}

.checkbox-icon{
    align-items: center;
    background: #fff;
    border: 1px solid #c4c4c4;
    border-radius: 4px;
    box-sizing: border-box;
    color: #fff;
    display: flex;
    flex-shrink: 0;
    height: 20px;
    justify-content: center;
    margin-right: 10px;
    transition: all .2s;
    width: 20px;
}

.select-all-checkbox:checked~ .checkbox-icon{
    background-color: #404040;
    border-color: #404040;
}

.select-all-checkbox{
    left: -9999px;
    position: absolute;
    visibility: hidden;
}

.delete-selected{
    text-decoration: underline;
    font-size: 16px;
    line-height: 150%;
    cursor: pointer;
}

.woocommerce-cart-form{
    display: flex;
    flex-direction: column;
    flex: 3;
}

.cart-group-left{
    display: flex;
    align-items: center;
    gap: 15px;
}

.woocommerce-cart-form__cart-item.cart_item{
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #ffff;
    padding: 30px 30px 20px;
    margin-top: 30px;
}

.remove-liek{
    display: flex;
    gap: 30px;
}

.cart-group-right{
    display: flex !important;
    flex-direction: column;
    gap: 20px;
    align-items: end;
}

.woocommerce table.shop_table tbody{
    display: flex;
    flex-direction: column;
    gap: 40px;
    /*background-color: #ffff;*/
    /*padding: 18px 30px;*/
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

.name-price{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cart-group-right .woocommerce-Price-amount.amount{
    font-weight: 700;
}

.name-price .product-name a{
    font-weight: 700;
}

.order-total{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.order-total th{
    font-size: 25px !important;
    font-weight: 500 !important;
}

.order-total span{
    font-size: 35px;
    font-weight: 500 !important;
}

#add_payment_method .cart-collaterals .cart_totals tr td, #add_payment_method .cart-collaterals .cart_totals tr th, .woocommerce-cart .cart-collaterals .cart_totals tr td, .woocommerce-cart .cart-collaterals .cart_totals tr th, .woocommerce-checkout .cart-collaterals .cart_totals tr td, .woocommerce-checkout .cart-collaterals .cart_totals tr th{
    border: none !important;
}

.cart_totals .woocommerce-shipping-totals.shipping{
    display: flex;
    flex-direction: column;
    background-color: white;
    padding: 20px;
    border: 1px solid #c4c4c4;
}

/*#billing_country_field{*/
/*    display: none;*/
/*}*/

/*#billing_address_2_field .woocommerce-input-wrapper{*/
/*    margin-top: 40px;*/
/*}*/

#billing_last_name_field, #billing_first_name_field{
    width: unset !important;
}

/*.page-id-774 #shipping_method{*/
/*    display: none;*/
/*}*/

.related-product-item .releted-items {
    display: none;
}

.related-products.show-details .related-product-item .releted-items {
    display: flex;
    align-items: start;
    gap: 10px;
    flex-direction: column;
    margin-top: 5px;
}

.related-products.show-details{
    margin-top: 20px;
    gap: 75px;
}

.related-products{
    display: flex;
    align-items: center;
    gap: 20px;
    position: relative;
    left: 160px;
    top: -7px;
    z-index: 111;
}

.related-products a:nth-of-type(1){
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.releted-items a:nth-of-type(1) p{
    width: 240px;
    color: #000000;
}

.releted-items a{
    text-decoration: none;
}


.related-products-container{
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    top: 45px;
    z-index: 111;
}

.page-id-774 .related-products{
    z-index: 112;
    width: 70%;
}

.related-product-item img{
    width: 80px !important;
    height: 85px;
}

.related-products-row td{
    width: 1045px;
}

.related-products-wrapper{
    display: flex;
    align-items: center;
    gap: 20px;
}

.expand-related-button{
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
}

.related-products-row{
    background-color: #fff;
    padding: 0px 30px 0px;
}

.releted-items span{
    color: #000000;
}

.page-id-774 .button.add_to_cart_button.add-to-cart-custom{
    background-color: transparent;
    color: #000000;
    padding: 14px 28px;
    border-radius: 5px;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    width: 100%;
    border: 1px  solid #c4c4c4;
    letter-spacing: 0.5px;
    box-shadow: none;
}

.page-id-774 .button.add_to_cart_button.add-to-cart-custom:hover{
    background-color: #f5f5f5;
    color: #000000;
    transform: translateY(0px);
    box-shadow: none;
}

.releted-items span ins{
    text-decoration: none;
}

.releted-items span del{
    font-size: 14px;
}

.arrow-icon {
    transition: transform 0.3s ease;
}

.arrow-icon.rotated {
    transform: rotate(180deg);
}

.page-id-774 .cart-group-left::before{
    content: none !important;
}

.checkbox-label{
    cursor: pointer;
}

.related-products.show-details img{
    width: 160px !important;
    height: 160px !important;
}

.button.product_type_variable.add_to_cart_button.add_to_card_variation.added-to-cart-button {
    background: #E2E2E2 !important;
    color: #000000;
}

.page-id-776 .product-name{
    flex: 8;
}

.page-id-776 .product-total{
    flex: 1;
}

.page-id-776 .cart_item{
    display: flex !important;
}

.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th{
    border-top: none !important;
}

.form-row.form-row-wide.address-field.thwcfd-optional.thwcfd-field-wrapper.thwcfd-field-text.validate-postcode input{
    margin-left: 15px;
}

.form-row.floor1.thwcfd-field-wrapper.thwcfd-field-radio.validate-required .woocommerce-input-wrapper{
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.page-id-776 .woocommerce-shipping-totals.shipping{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    margin-top: 50px;
}

.woocommerce ul#shipping_method li{
 margin: 0 !important;
}

.rtwpvg-thumbnail-wrapper {
    height: auto;
    overflow: hidden;
    width: 120px;
    position: relative;
}

.rtwpvg-thumbnail-slider {
    height: 100%;
}

.rtwpvg-thumbnail-slider .swiper-slide {
    height: 100px;
    /*width: 100px;*/
    margin-bottom: 10px;
    box-sizing: border-box;
    cursor: pointer;
}

.rtwpvg-thumbnail-prev-arrow,
.rtwpvg-thumbnail-next-arrow {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    cursor: pointer;
    z-index: 10;
}

.rtwpvg-thumbnail-prev-arrow {
    top: 5px;
}

.rtwpvg-thumbnail-next-arrow {
    bottom: 5px;
}

#billing_country_field, #billing_floor_first_field{
    width: 251px;
}


#billing_description_field{
    width: 100% !important;
}

#billing_description{
    width: 100% !important;
    height: 130px !important;
}

#add_payment_method #payment ul.payment_methods, .woocommerce-cart #payment ul.payment_methods, .woocommerce-checkout #payment ul.payment_methods{
    border: unset !important;
}

.page-id-774 .cart-empty.woocommerce-info{
    margin-top: 10px;
    border: none;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
    display: none;
}

.page-id-774 .button.wc-backward{
    margin-left: -30px;
}

.page-id-774 #shipping_method{
    display: none;
}

.single-product .city-popup.fancybox__content{
    display: flex !important ;
}

.page-id-776 #order_review #payment{
    display: none;
}

/*.page-id-776 .checkout.woocommerce-checkout #order_review, h3{*/
/*    display: none;*/
/*}*/
/* Home page fix: prevent categories section from overlapping slider */
body.home section.slider,
body.page-template-page-moskva section.slider,
body.page-template-default section.slider {
    position: relative;
    z-index: 1;
    margin-bottom: 64px !important;
    overflow: hidden;
}

body.home section.categories,
body.page-template-page-moskva section.categories,
body.page-template-default section.categories {
    position: relative;
    z-index: 2;
    margin-top: 0 !important;
}

body.home .slider-home,
body.page-template-page-moskva .slider-home,
body.page-template-default .slider-home {
    display: block;
}

@media (max-width: 1050px) {
    body.home section.slider,
    body.page-template-page-moskva section.slider,
    body.page-template-default section.slider {
        margin-bottom: 36px !important;
    }
}

section.home-masonry-gallery {
    padding: 48px 0 56px;
}

section.home-masonry-gallery .title-wrapper {
    margin-bottom: 32px;
}

section.home-masonry-gallery .title-wrapper h2.title {
    margin: 0;
    font-size: 44px;
    line-height: 1.1;
}

section.home-masonry-gallery .home-masonry-grid {
    column-count: 4;
    column-gap: 16px;
}

section.home-masonry-gallery .home-masonry-item {
    margin: 0 0 16px;
    break-inside: avoid;
    border-radius: 16px;
    overflow: hidden;
    background: #f2f2f2;
}

section.home-masonry-gallery .home-masonry-item img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .35s ease;
}

section.home-masonry-gallery .home-masonry-item:hover img {
    transform: scale(1.02);
}

@media (max-width: 1200px) {
    section.home-masonry-gallery .home-masonry-grid {
        column-count: 3;
    }
}

@media (max-width: 900px) {
    section.home-masonry-gallery .home-masonry-grid {
        column-count: 2;
        column-gap: 12px;
    }

    section.home-masonry-gallery .home-masonry-item {
        margin-bottom: 12px;
    }
}

@media (max-width: 560px) {
    section.home-masonry-gallery {
        padding: 12px 0 36px;
    }

    section.home-masonry-gallery .home-masonry-grid {
        column-count: 1;
    }
}

/* Home masonry layout + lightbox */
section.home-masonry-gallery .home-masonry-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    column-count: unset;
    column-gap: 0;
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}

section.home-masonry-gallery .home-masonry-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

section.home-masonry-gallery .home-masonry-item {
    margin: 0;
}

section.home-masonry-gallery .home-masonry-link {
    display: block;
}

section.home-masonry-gallery .home-masonry-lightbox {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.82);
    z-index: 9999;
    padding: 28px;
}

section.home-masonry-gallery .home-masonry-lightbox.is-open {
    display: flex;
}

section.home-masonry-gallery .home-masonry-lightbox-image {
    max-width: min(92vw, 1300px);
    max-height: 90vh;
    border-radius: 14px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
}

section.home-masonry-gallery .home-masonry-lightbox-close {
    position: absolute;
    top: 14px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    font-size: 30px;
    line-height: 1;
    color: #111;
    background: #fff;
    cursor: pointer;
}

section.home-masonry-gallery .home-masonry-lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    border: 0;
    border-radius: 999px;
    font-size: 30px;
    line-height: 1;
    color: #111;
    background: rgba(255, 255, 255, 0.95);
    cursor: pointer;
    z-index: 2;
}

section.home-masonry-gallery .home-masonry-lightbox-prev {
    left: 18px;
}

section.home-masonry-gallery .home-masonry-lightbox-next {
    right: 18px;
}

section.home-masonry-gallery .home-masonry-lightbox-nav:hover {
    background: #fff;
}

body.masonry-lightbox-open {
    overflow: hidden;
}

@media (max-width: 1200px) {
    section.home-masonry-gallery .home-masonry-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    section.home-masonry-gallery .home-masonry-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    section.home-masonry-gallery .home-masonry-col {
        gap: 12px;
    }
}

@media (max-width: 560px) {
    section.home-masonry-gallery .home-masonry-grid {
        grid-template-columns: 1fr;
    }

    section.home-masonry-gallery .home-masonry-lightbox {
        padding: 16px;
    }

    section.home-masonry-gallery .home-masonry-lightbox-nav {
        width: 40px;
        height: 40px;
        font-size: 26px;
    }

    section.home-masonry-gallery .home-masonry-lightbox-prev {
        left: 8px;
    }

    section.home-masonry-gallery .home-masonry-lightbox-next {
        right: 8px;
    }
}

/* Flat/even gallery mode */
section.home-masonry-gallery .home-masonry-col {
    display: contents;
}

section.home-masonry-gallery .home-masonry-item {
    aspect-ratio: 4 / 5;
}

section.home-masonry-gallery .home-masonry-link,
section.home-masonry-gallery .home-masonry-item img {
    width: 100%;
    height: 100%;
}

section.home-masonry-gallery .home-masonry-item img {
    object-fit: cover;
}

/* Tight spacing per request */
section.home-masonry-gallery .home-masonry-grid {
    gap: 3px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
}

section.home-masonry-gallery .home-masonry-col {
    gap: 3px !important;
}

/* Fix product gallery layout: keep thumbnails near main image on desktop */
@media (min-width: 1024px) {
    .single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper.rtwpvg-thumbnail-position-bottom .rtwpvg-container {
        display: flex !important;
        flex-direction: row-reverse !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 16px !important;
    }

    .single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-slider {
        flex: 0 1 615px !important;
        min-width: 0 !important;
    }

    .single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-thumbnail-wrapper {
        flex: 0 0 120px !important;
        width: 120px !important;
        min-width: 120px !important;
        height: auto !important;
        overflow: hidden !important;
    }

    .single-product .rtwpvg-thumbnail-wrapper .swiper-wrapper {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: 100% !important;
        transform: none;
    }

    .single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-slider img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }
}


/* Checkout payment logos */
.wc_payment_method .djv-payment-logo {
    display: inline-block !important;
    vertical-align: middle;
    height: 24px;
    width: auto;
    margin-left: 8px;
}

.wc_payment_method .djv-payment-logo--dolyami {
    height: 24px !important;
}

.wc_payment_method .djv-payment-logo--tbank {
    height: 24px !important;
}

/* Home hero slider: full-width layout (2026-04-21) */
body.home section.slider.slider-fullwidth {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-bottom: 56px !important;
}

body.home section.slider.slider-fullwidth .slider-home .item {
    border-radius: 0;
}

body.home section.slider.slider-fullwidth .slider-home .item img {
    width: 100%;
    height: clamp(360px, 52vw, 900px);
    object-fit: cover;
    border-radius: 0;
}

@media (max-width: 768px) {
    body.home section.slider.slider-fullwidth {
        margin-bottom: 36px !important;
    }

    body.home section.slider.slider-fullwidth .slider-home .item img {
        height: clamp(260px, 58vw, 440px);
    }
}

/* Home hero slider controls + no crop fix (2026-04-21) */
body.home section.slider.slider-fullwidth {
    overflow: visible !important;
    padding-bottom: 44px;
}

body.home section.slider.slider-fullwidth .slider-home {
    height: auto;
}

body.home section.slider.slider-fullwidth .slider-home .item {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

body.home section.slider.slider-fullwidth .slider-home .item img {
    object-fit: contain;
    object-position: center bottom;
    background: #f4f4f4;
}

body.home section.slider.slider-fullwidth .slider-home .slick-prev,
body.home section.slider.slider-fullwidth .slider-home .slick-next {
    z-index: 15;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
}

body.home section.slider.slider-fullwidth .slider-home .slick-prev {
    left: 16px;
}

body.home section.slider.slider-fullwidth .slider-home .slick-next {
    right: 16px;
}

body.home section.slider.slider-fullwidth .slider-home .slick-prev:before,
body.home section.slider.slider-fullwidth .slider-home .slick-next:before {
    color: #111;
    font-size: 28px;
    line-height: 1;
}

body.home section.slider.slider-fullwidth .slider-home .slick-dots {
    bottom: -34px;
}

body.home section.slider.slider-fullwidth .slider-home .slick-dots li button:before {
    font-size: 10px;
    color: #8f8f8f;
    opacity: 1;
}

body.home section.slider.slider-fullwidth .slider-home .slick-dots li.slick-active button:before {
    color: #111;
}

@media (max-width: 768px) {
    body.home section.slider.slider-fullwidth {
        padding-bottom: 34px;
    }

    body.home section.slider.slider-fullwidth .slider-home .slick-prev,
    body.home section.slider.slider-fullwidth .slider-home .slick-next {
        width: 36px;
        height: 36px;
    }

    body.home section.slider.slider-fullwidth .slider-home .slick-prev {
        left: 10px;
    }

    body.home section.slider.slider-fullwidth .slider-home .slick-next {
        right: 10px;
    }
}

/* Home hero content overlay (2026-04-21) */
body.home section.slider.slider-fullwidth .slider-home .item {
    position: relative;
}

body.home section.slider.slider-fullwidth .hero-slide-caption {
    position: absolute;
    left: clamp(16px, 4vw, 72px);
    bottom: clamp(44px, 7vw, 100px);
    max-width: min(620px, calc(100% - 40px));
    color: #fff;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.35));
    backdrop-filter: blur(2px);
    border-radius: 14px;
    padding: clamp(14px, 2.2vw, 24px);
    z-index: 12;
}

body.home section.slider.slider-fullwidth .hero-slide-title {
    margin: 0 0 10px;
    font-size: clamp(22px, 3vw, 42px);
    line-height: 1.08;
    font-weight: 700;
    color: #fff;
}

body.home section.slider.slider-fullwidth .hero-slide-subtitle {
    margin: 0 0 16px;
    font-size: clamp(14px, 1.4vw, 19px);
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.94);
}

body.home section.slider.slider-fullwidth .hero-slide-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 700;
    font-size: 15px;
    color: #111;
    background: #fff;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

body.home section.slider.slider-fullwidth .hero-slide-btn:hover {
    transform: translateY(-1px);
    opacity: 0.92;
}

@media (max-width: 768px) {
    body.home section.slider.slider-fullwidth .hero-slide-caption {
        left: 10px;
        right: 10px;
        bottom: 34px;
        max-width: none;
        padding: 12px;
    }

    body.home section.slider.slider-fullwidth .hero-slide-subtitle {
        margin-bottom: 12px;
    }

    body.home section.slider.slider-fullwidth .hero-slide-btn {
        min-height: 42px;
        font-size: 14px;
        padding: 0 16px;
    }
}

/* Home slider mobile hard-fix (override inline styles in template) */
@media (max-width: 768px) {
    body.home section.slider.slider-fullwidth {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-bottom: 18px !important;
    }

    body.home section.slider.slider-fullwidth .slider-home .item {
        display: block !important;
    }

    body.home section.slider.slider-fullwidth .slider-home .item img {
        height: clamp(220px, 56vw, 320px) !important;
        width: 100% !important;
        object-fit: contain !important;
        object-position: center bottom !important;
    }

    body.home section.slider.slider-fullwidth .hero-slide-caption {
        position: absolute !important;
        left: 10px !important;
        top: 10px !important;
        right: auto !important;
        bottom: auto !important;
        max-width: min(320px, calc(100% - 20px)) !important;
        width: auto !important;
        margin: 0 !important;
        padding: 10px 11px !important;
        border-radius: 10px !important;
        background: rgba(0, 0, 0, 0.56) !important;
        z-index: 40 !important;
    }

    body.home section.slider.slider-fullwidth .hero-slide-title {
        font-size: 16px !important;
        line-height: 1.2 !important;
        margin: 0 0 6px !important;
    }

    body.home section.slider.slider-fullwidth .hero-slide-subtitle {
        font-size: 12px !important;
        line-height: 1.3 !important;
        margin: 0 0 8px !important;
    }

    body.home section.slider.slider-fullwidth .hero-slide-btn {
        min-height: 34px !important;
        font-size: 12px !important;
        padding: 0 12px !important;
    }

    body.home section.slider.slider-fullwidth .slider-home .slick-dots {
        bottom: -16px !important;
    }
}

@media (max-width: 420px) {
    body.home section.slider.slider-fullwidth .hero-slide-subtitle {
        display: none !important;
    }
}

/* 2026-04-26 mobile slider + filter row final overrides */
@media (max-width: 768px) {
  body.home section.slider.slider-fullwidth .hero-slide-caption {
    position: absolute !important;
    left: 8px !important;
    top: 8px !important;
    right: auto !important;
    bottom: auto !important;
    max-width: min(250px, 70vw) !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    overflow: hidden !important;
  }

  body.home section.slider.slider-fullwidth .hero-slide-title {
    font-size: 15px !important;
    line-height: 1.2 !important;
    margin: 0 0 6px !important;
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.45) !important;
    word-break: break-word !important;
  }

  body.home section.slider.slider-fullwidth .hero-slide-subtitle {
    display: none !important;
  }

  body.home section.slider.slider-fullwidth .hero-slide-btn {
    min-height: 30px !important;
    padding: 0 10px !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  body.home section.slider.slider-fullwidth .slider-home .item {
    overflow: hidden !important;
  }
}

body.home section.slider.slider-fullwidth .slider-home .slick-prev,
body.home section.slider.slider-fullwidth .slider-home .slick-next {
  width: 24px !important;
  height: 24px !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home section.slider.slider-fullwidth .slider-home .slick-prev:before,
body.home section.slider.slider-fullwidth .slider-home .slick-next:before {
  font-size: 18px !important;
  color: #111 !important;
  opacity: .75 !important;
}

.woocommerce .djv-filter-sort-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
}

.woocommerce .djv-filter-sort-row .wpc-sorting-form {
  flex: 1 1 auto !important;
  max-width: none !important;
  margin: 0 !important;
}

.woocommerce .djv-filter-sort-row #wpc-filter-elements {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
}

.woocommerce .djv-filter-sort-row #open-wpc-filters-popup {
  margin-top: 0 !important;
  width: auto !important;
  max-width: none !important;
  height: 42px !important;
  padding: 0 14px !important;
  white-space: nowrap !important;
}

@media (max-width: 767px) {
  .woocommerce .djv-filter-sort-row {
    flex-wrap: nowrap !important;
  }

  .woocommerce .djv-filter-sort-row .wpc-sorting-form {
    flex: 1 1 auto !important;
    width: auto !important;
  }

  .woocommerce .djv-filter-sort-row #wpc-filter-elements {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
  }
}

/* 2026-04-26 remove hero overlay background on all devices */
body.home section.slider.slider-fullwidth .hero-slide-caption {
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

/* 2026-04-26 hero text readability without overlay */
body.home section.slider.slider-fullwidth .hero-slide-caption {
  top: clamp(28px, 4vw, 64px) !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body.home section.slider.slider-fullwidth .hero-slide-title,
body.home section.slider.slider-fullwidth .hero-slide-subtitle {
  color: #fff !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.72), 0 0 16px rgba(0,0,0,.42) !important;
}

body.home section.slider.slider-fullwidth .hero-slide-btn {
  background: rgba(255,255,255,.96) !important;
  color: #111 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.16) !important;
}

@media (max-width: 768px) {
  body.home section.slider.slider-fullwidth .hero-slide-caption {
    top: 18px !important;
    left: 10px !important;
    max-width: min(265px, 72vw) !important;
  }

  body.home section.slider.slider-fullwidth .hero-slide-title {
    text-shadow: 0 2px 3px rgba(0,0,0,.78), 0 0 14px rgba(0,0,0,.5) !important;
  }
}

/* 2026-04-26 brand hero button + lower caption */
body.home section.slider.slider-fullwidth .hero-slide-caption {
  top: clamp(34px, 4.8vw, 77px) !important;
}

body.home section.slider.slider-fullwidth .hero-slide-btn {
  background: #000 !important;
  color: #fff !important;
  border-radius: 10px !important;
  min-height: 45px !important;
  padding: 0 25px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

body.home section.slider.slider-fullwidth .hero-slide-btn:hover {
  opacity: .82 !important;
}

@media (max-width: 768px) {
  body.home section.slider.slider-fullwidth .hero-slide-caption {
    top: 22px !important;
  }

  body.home section.slider.slider-fullwidth .hero-slide-btn {
    min-height: 34px !important;
    padding: 0 14px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
  }
}

/* 2026-04-27 category cards use gallery photos */
section.categories .category-box a.item span.icon.category-gallery-photo {
    right: 18px;
    bottom: 14px;
    width: 150px;
    height: 118px;
    border-radius: 16px;
    overflow: hidden;
    background: #f3f3f3;
    box-shadow: 0 12px 26px rgba(0,0,0,.08);
}

section.categories .category-box a.item span.icon.category-gallery-photo img {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

section.categories .category-box a.item:hover span.icon.category-gallery-photo img {
    transform: scale(1.06);
}

@media (max-width: 768px) {
    section.categories .category-box a.item span.icon.category-gallery-photo {
        width: 118px;
        height: 92px;
        right: 14px;
        bottom: 14px;
        border-radius: 14px;
    }
}

/* 2026-04-27 category cards full-image mode */
section.categories .category-box a.item {
    overflow: hidden;
    padding: 0 !important;
    background: #111 !important;
}

section.categories .category-box a.item::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0,0,0,.48) 0%, rgba(0,0,0,.14) 42%, rgba(0,0,0,.55) 100%);
    pointer-events: none;
}

section.categories .category-box a.item span.title {
    position: relative;
    z-index: 2;
    display: block;
    padding: 22px 24px;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.55);
}

section.categories .category-box a.item span.title span {
    color: rgba(255,255,255,.72) !important;
}

section.categories .category-box a.item span.icon.category-gallery-photo {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    right: auto !important;
    bottom: auto !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #111;
}

section.categories .category-box a.item span.icon.category-gallery-photo img {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

section.categories .category-box a.item:hover span.icon.category-gallery-photo img {
    transform: scale(1.05);
}

@media (max-width: 768px) {
    section.categories .category-box a.item span.title {
        padding: 18px 18px;
    }
}

/* 2026-04-27 vertical category cards */
section.categories .category-box {
    align-items: stretch;
}

section.categories .category-box a.item {
    height: 430px !important;
    max-width: 315px;
    border-radius: 18px;
}

section.categories .category-box a.item span.icon.category-gallery-photo img {
    object-fit: cover;
    object-position: center center;
}

section.categories .category-box a.item span.title {
    padding: 24px 24px;
    font-size: 24px;
    line-height: 1.08;
}

@media (max-width: 1200px) {
    section.categories .category-box a.item {
        max-width: calc(50% - 13px);
        height: 390px !important;
    }
}

@media (max-width: 768px) {
    section.categories .category-box a.item {
        max-width: 100%;
        height: 360px !important;
        border-radius: 16px;
    }

    section.categories .category-box a.item span.title {
        font-size: 22px;
        padding: 20px 20px;
    }
}

/* 2026-04-27 category cards mobile 2 columns + hide counters */
section.categories .category-box a.item span.title span {
    display: none !important;
}

@media (max-width: 768px) {
    section.categories .category-box {
        gap: 10px !important;
        justify-content: space-between;
    }

    section.categories .category-box a.item {
        width: calc(50% - 5px) !important;
        max-width: calc(50% - 5px) !important;
        height: 235px !important;
        border-radius: 14px;
    }

    section.categories .category-box a.item span.title {
        font-size: 17px !important;
        padding: 14px 14px !important;
        line-height: 1.05;
    }
}

@media (max-width: 390px) {
    section.categories .category-box a.item {
        height: 210px !important;
    }

    section.categories .category-box a.item span.title {
        font-size: 16px !important;
        padding: 12px 12px !important;
    }
}

/* 2026-04-27 mobile product category card meta/swatches */
@media (max-width: 768px) {
    .woocommerce ul.products li.product .w-post-elm-size,
    .woocommerce ul.products li.product .w-post-elm-material,
    ul.products li.product .w-post-elm-size,
    ul.products li.product .w-post-elm-material {
        display: block !important;
        line-height: 1.25 !important;
    }

    .woocommerce ul.products li.product .w-post-elm-before,
    ul.products li.product .w-post-elm-before {
        display: block !important;
        margin-bottom: 2px !important;
        white-space: normal !important;
    }

    .woocommerce ul.products li.product .w-post-elm-value,
    ul.products li.product .w-post-elm-value {
        display: block !important;
        white-space: nowrap !important;
    }

    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper,
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper {
        display: grid !important;
        grid-template-columns: repeat(5, 20px) !important;
        gap: 6px !important;
        justify-content: center !important;
        align-items: center !important;
        width: fit-content !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .woocommerce ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatches-wrapper,
    ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatches-wrapper {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        width: auto !important;
        overflow: visible !important;
    }

    .woocommerce ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatch,
    ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatch {
        flex: 0 0 20px !important;
    }
}

@media (max-width: 390px) {
    .woocommerce ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatches-wrapper,
    ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatches-wrapper {
        flex-wrap: wrap !important;
    }
}

/* 2026-04-27 mobile product cards: even swatches rows + price spacing */
@media (max-width: 768px) {
    .woocommerce ul.products li.product .loop-color-swatches-wrapper,
    ul.products li.product .loop-color-swatches-wrapper {
        margin: 12px 0 10px !important;
        text-align: left !important;
    }

    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper,
    .woocommerce ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatches-wrapper,
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper,
    ul.products li.product.product_cat-beskarkasnye-divany .loop-color-swatches-wrapper .color-swatches-wrapper {
        display: grid !important;
        grid-template-columns: repeat(5, 20px) !important;
        grid-auto-flow: row !important;
        gap: 7px 9px !important;
        justify-content: start !important;
        align-items: center !important;
        width: fit-content !important;
        max-width: 100% !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatch,
    ul.products li.product .loop-color-swatches-wrapper .color-swatch {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        flex: none !important;
    }

    .woocommerce ul.products li.product .price,
    ul.products li.product .price {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 5px 8px !important;
        margin: 8px 0 12px !important;
        line-height: 1.05 !important;
    }

    .woocommerce ul.products li.product .price ins,
    ul.products li.product .price ins {
        display: inline-flex !important;
        align-items: baseline !important;
        margin: 0 !important;
        text-decoration: none !important;
        font-size: 24px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .woocommerce ul.products li.product .price del,
    ul.products li.product .price del {
        display: inline-flex !important;
        margin: 2px 0 0 !important;
        font-size: 17px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .woocommerce ul.products li.product .price .sale-percent,
    .woocommerce ul.products li.product .price .onsale-percent,
    .woocommerce ul.products li.product .price .discount-percent,
    .woocommerce ul.products li.product .price .price-discount,
    ul.products li.product .price .sale-percent,
    ul.products li.product .price .onsale-percent,
    ul.products li.product .price .discount-percent,
    ul.products li.product .price .price-discount {
        margin: 0 !important;
        flex: 0 0 auto !important;
        font-size: 12px !important;
        line-height: 1 !important;
    }
}

@media (max-width: 390px) {
    .woocommerce ul.products li.product .price ins,
    ul.products li.product .price ins {
        font-size: 23px !important;
    }

    .woocommerce ul.products li.product .price del,
    ul.products li.product .price del {
        font-size: 16px !important;
    }
}

/* 2026-04-27 mobile product cards: balanced swatch rows and price order */
@media (max-width: 768px) {
    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(6):last-child),
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(6):last-child) {
        grid-template-columns: repeat(3, 20px) !important;
    }

    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(7):last-child),
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(7):last-child),
    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(8):last-child),
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(8):last-child) {
        grid-template-columns: repeat(4, 20px) !important;
    }

    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(9):last-child),
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(9):last-child),
    .woocommerce ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(10):last-child),
    ul.products li.product .loop-color-swatches-wrapper .color-swatches-wrapper:has(.color-swatch:nth-child(10):last-child) {
        grid-template-columns: repeat(5, 20px) !important;
    }

    .woocommerce ul.products li.product .price ins,
    ul.products li.product .price ins {
        order: 1 !important;
    }

    .woocommerce ul.products li.product .price del,
    ul.products li.product .price del {
        order: 2 !important;
    }

    .woocommerce ul.products li.product .price .discount-percentage-loop,
    ul.products li.product .price .discount-percentage-loop,
    .woocommerce ul.products li.product .price .sale-percent,
    .woocommerce ul.products li.product .price .onsale-percent,
    .woocommerce ul.products li.product .price .discount-percent,
    .woocommerce ul.products li.product .price .price-discount,
    ul.products li.product .price .sale-percent,
    ul.products li.product .price .onsale-percent,
    ul.products li.product .price .discount-percent,
    ul.products li.product .price .price-discount {
        order: 3 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 22px !important;
        padding: 0 8px !important;
        margin: 1px 0 0 !important;
        flex: 0 0 auto !important;
        font-size: 12px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }
}

/* 2026-04-27 align mobile discount badge with old price */
@media (max-width: 768px) {
    .woocommerce ul.products li.product .price .discount-percentage-loop,
    ul.products li.product .price .discount-percentage-loop {
        position: relative !important;
        top: 3px !important;
        align-self: center !important;
    }
}

/* 2026-04-27 prevent product grid overlapping sorting/filter controls */
.woocommerce .djv-filter-sort-row,
.djv-filter-sort-row {
    position: relative !important;
    z-index: 5 !important;
    margin: 10px 0 28px !important;
    clear: both !important;
}

.woocommerce .fe-products,
.fe-products {
    clear: both !important;
    margin-top: 28px !important;
    position: relative !important;
    z-index: 1 !important;
}

.woocommerce .fe-products ul.products,
.fe-products ul.products,
.woocommerce ul.products,
ul.products {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

@media (max-width: 768px) {
    .woocommerce .djv-filter-sort-row,
    .djv-filter-sort-row {
        display: flex !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 12px 0 24px !important;
        clear: both !important;
    }

    .djv-filter-sort-row .wpc-sorting-form,
    .djv-filter-sort-row #wpc-filter-elements {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .djv-filter-sort-row .wpc-sorting-form select,
    .djv-filter-sort-row #open-wpc-filters-popup {
        width: 100% !important;
        height: 44px !important;
        min-height: 44px !important;
        border-radius: 12px !important;
        font-size: 15px !important;
        line-height: 1 !important;
    }

    .woocommerce .fe-products,
    .fe-products {
        margin-top: 24px !important;
        clear: both !important;
    }

    .woocommerce .fe-products ul.products,
    .fe-products ul.products,
    .woocommerce ul.products,
    ul.products {
        row-gap: 22px !important;
    }
}

/* 2026-04-27 extra mobile top clearance before products */
@media (max-width: 768px) {
    .woocommerce-products-header + .term-description + .fe-products,
    .term-description + .fe-products,
    header.woocommerce-products-header ~ .fe-products {
        margin-top: 72px !important;
    }

    .woocommerce-products-header .djv-filter-sort-row + .term-description + .fe-products,
    .djv-filter-sort-row + .term-description + .fe-products,
    .djv-filter-sort-row + .fe-products {
        margin-top: 24px !important;
    }
}

/* 2026-04-27 Split label in product category cards */
.woocommerce ul.products li.product .djv-loop-split,
ul.products li.product .djv-loop-split {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin: 5px 0 11px !important;
    padding: 6px 9px !important;
    border-radius: 999px !important;
    background: #fff7c7 !important;
    color: #171717 !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.01em !important;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06) !important;
}

.woocommerce ul.products li.product .djv-loop-split__icon,
ul.products li.product .djv-loop-split__icon {
    display: inline-flex !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
}

.woocommerce ul.products li.product .djv-loop-split__icon svg,
ul.products li.product .djv-loop-split__icon svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
}

.woocommerce ul.products li.product .djv-loop-split strong,
ul.products li.product .djv-loop-split strong {
    font-weight: 800 !important;
    white-space: nowrap !important;
}

@media (max-width: 768px) {
    .woocommerce ul.products li.product .djv-loop-split,
    ul.products li.product .djv-loop-split {
        margin: 4px 0 10px !important;
        padding: 5px 8px !important;
        gap: 6px !important;
        font-size: 11.5px !important;
        line-height: 1.1 !important;
    }

    .woocommerce ul.products li.product .djv-loop-split__icon,
    ul.products li.product .djv-loop-split__icon,
    .woocommerce ul.products li.product .djv-loop-split__icon svg,
    ul.products li.product .djv-loop-split__icon svg {
        width: 16px !important;
        height: 16px !important;
        flex-basis: 16px !important;
    }
}

/* 2026-04-27 stronger mobile clearance between controls and products */
@media (max-width: 768px) {
    body.tax-product_cat .woocommerce-products-header,
    body.post-type-archive-product .woocommerce-products-header {
        position: relative !important;
        z-index: 4 !important;
        margin-bottom: 74px !important;
    }

    body.tax-product_cat .fe-products,
    body.post-type-archive-product .fe-products {
        clear: both !important;
        margin-top: 0 !important;
        position: relative !important;
        z-index: 1 !important;
    }
}

/* 2026-04-27 branded Yandex Split loop badge */
.woocommerce ul.products li.product .djv-loop-split,
ul.products li.product .djv-loop-split {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 7px 0 12px !important;
    padding: 6px 10px 6px 7px !important;
    border: 1px solid rgba(18, 18, 18, 0.08) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: #121212 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.05) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    vertical-align: top !important;
}

.woocommerce ul.products li.product .djv-loop-split__icon,
ul.products li.product .djv-loop-split__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    overflow: hidden !important;
    border-radius: 7px !important;
    background: #ffdf39 !important;
}

.woocommerce ul.products li.product .djv-loop-split__icon img,
ul.products li.product .djv-loop-split__icon img {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    max-width: none !important;
    object-fit: contain !important;
}

.woocommerce ul.products li.product .djv-loop-split__text,
ul.products li.product .djv-loop-split__text {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 3px !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

@media (max-width: 768px) {
    .woocommerce ul.products li.product .djv-loop-split,
    ul.products li.product .djv-loop-split {
        margin: 6px 0 10px !important;
        padding: 5px 7px 5px 5px !important;
        border-radius: 10px !important;
        gap: 5px !important;
        font-size: 10.5px !important;
        letter-spacing: -0.03em !important;
        white-space: nowrap !important;
    }

    .woocommerce ul.products li.product .djv-loop-split__icon,
    ul.products li.product .djv-loop-split__icon,
    .woocommerce ul.products li.product .djv-loop-split__icon img,
    ul.products li.product .djv-loop-split__icon img {
        width: 18px !important;
        height: 18px !important;
        flex-basis: 18px !important;
        min-width: 18px !important;
        border-radius: 6px !important;
    }
}

/* 2026-04-27 yandex-pay-badge skin for loop split */
.woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge,
ul.products li.product .djv-loop-split.yandex-pay-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    margin: 8px 0 12px !important;
    padding: 5px 10px 5px 6px !important;
    border: 1px solid #e6e7eb !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-shadow: none !important;
    font-family: 'Gilroy', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    color: #151515 !important;
}

.woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon,
ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon {
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    border-radius: 6px !important;
    background: #ffdb4d !important;
    overflow: hidden !important;
}

.woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon img,
ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon img {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    object-fit: contain !important;
}

.woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__text,
ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__text {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
}

.woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__text strong,
ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__text strong {
    font-weight: 700 !important;
}

@media (max-width: 768px) {
    .woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge,
    ul.products li.product .djv-loop-split.yandex-pay-badge {
        gap: 6px !important;
        margin: 7px 0 10px !important;
        padding: 4px 8px 4px 5px !important;
        font-size: 11px !important;
    }

    .woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon,
    ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon,
    .woocommerce ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon img,
    ul.products li.product .djv-loop-split.yandex-pay-badge .djv-loop-split__icon img {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        flex-basis: 18px !important;
        border-radius: 5px !important;
    }
}

/* 2026-04-29 fix overlapping rows in product category grids */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product {
    height: auto !important;
}

.page-id-1535 .rtwpvg-product,
.page-id-13698 .rtwpvg-product,
.term-divany .rtwpvg-product,
.term-kresla .rtwpvg-product,
.term-pufy .rtwpvg-product,
.term-dekorativnye-podushki .rtwpvg-product,
.term-rasprodazha .rtwpvg-product,
.term-tkani .rtwpvg-product,
.woocommerce ul.products li.product .rtwpvg-product,
ul.products li.product .rtwpvg-product {
    height: auto !important;
    min-height: 0 !important;
}

.woocommerce .fe-products ul.products,
.fe-products ul.products,
.woocommerce ul.products,
ul.products {
    align-items: start !important;
    row-gap: 28px !important;
}

@media (max-width: 768px) {
    .woocommerce .fe-products ul.products,
    .fe-products ul.products,
    .woocommerce ul.products,
    ul.products {
        row-gap: 22px !important;
    }
}

/* 2026-04-29 force visible active main image in rtwpvg */
.single-product .rtwpvg-slider .swiper-slide,
.single-product .rtwpvg-slider .rtwpvg-gallery-image,
.single-product .rtwpvg-single-image-container,
.single-product .rtwpvg-single-image-container picture,
.single-product .rtwpvg-single-image-container img {
    opacity: 1 !important;
    visibility: visible !important;
}

.single-product .rtwpvg-slider .swiper-slide-active,
.single-product .rtwpvg-slider .swiper-slide-active .rtwpvg-single-image-container,
.single-product .rtwpvg-slider .swiper-slide-active .rtwpvg-single-image-container picture,
.single-product .rtwpvg-slider .swiper-slide-active .rtwpvg-single-image-container img {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.single-product .rtwpvg-slider .swiper-slide:not(.swiper-slide-active) {
    opacity: 1 !important;
}

/* 2026-04-30 hard layout fix: prevent RTWPVG main image collapse */
.single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper.rtwpvg-thumbnail-position-bottom .rtwpvg-container {
  display: flex !important;
  flex-direction: row-reverse !important;
  align-items: flex-start !important;
  gap: 20px !important;
}
.single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-thumbnail-wrapper {
  flex: 0 0 75px !important;
  max-width: 75px !important;
  width: 75px !important;
}
.single-product .rtwpvg-images.rtwpvg-has-product-thumbnail .rtwpvg-wrapper .rtwpvg-slider-wrapper {
  flex: 1 1 auto !important;
  max-width: calc(100% - 95px) !important;
  min-width: 0 !important;
  width: auto !important;
  overflow: hidden !important;
}
.single-product .rtwpvg-wrapper .rtwpvg-slider,
.single-product .rtwpvg-wrapper .rtwpvg-slider .swiper-wrapper,
.single-product .rtwpvg-wrapper .rtwpvg-slider .swiper-slide,
.single-product .rtwpvg-wrapper .rtwpvg-slider .rtwpvg-gallery-image,
.single-product .rtwpvg-wrapper .rtwpvg-slider .rtwpvg-single-image-container {
  width: 100% !important;
  max-width: 100% !important;
}
.single-product .rtwpvg-wrapper .rtwpvg-slider .rtwpvg-single-image-container img {
  width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}
