/*---------переменные - начало-----------*/

:root{

    --colorMain: #543F2E;
    --colorGrey: #888888;
    --colorGreyBase: #9C9C9C;
    --colorOrange: #E15601;

    --bgGreen: linear-gradient(180deg, #9CCC2F 0%, #067526 100%);
    --bgGreenLight: linear-gradient(180deg, rgba(156, 204, 47, 0.1) 0%, rgba(6, 117, 38, 0.1) 100%);
    --bgOrange: linear-gradient(180deg, #F28B01 0%, #E15601 100%);
    --bgOrangeLight: linear-gradient(180deg, rgba(242, 139, 1, 0.2) 0%, rgba(225, 86, 1, 0.2) 100%);

    --bgYellow: linear-gradient(180deg, #F2EE01 0%, #A59400 100%);

    --bgRed: linear-gradient(180deg, #FF0000 0%, #990000 100%);
    --bgBrown: linear-gradient(180deg, #7A604B 0%, #412E1F 100%);
    --bgBlack: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
    --bgBlue: linear-gradient(180deg, #43B7E8 0%, #006894 100%);


    --shadowMain: 0px 2px 8px 0px #00000066;

    /*--fontSizeH2: clamp(26px, calc(26px + (36 - 26) * ((100vw - 768px) / (1920 - 768))), 36px);*/
    --fontSizeH2: clamp(26px, calc(26px + (32 - 26) * ((100vw - 768px) / (1920 - 768))), 32px);

    --fontSizeInput: clamp(18px, calc(18px + (20 - 18) * ((100vw - 420px) / (1920 - 420))), 20px);

    --fontSizeH4: 24px;
    --fontSizeH5: 22px;
    --fontSizeH6: 20px;

    /*--fontSizeText: clamp(18px, calc(18px + (22 - 18) * ((100vw - 768px) / (1920 - 768))), 22px);*/ /*Text и Text bold ui kit*/

    --fontSizeTextSmall: clamp(16px, calc(16px + (22 - 16) * ((100vw - 768px) / (1920 - 768))), 22px); /*Text и Text bold ui kit*/

    --fontSizeMenu: 22px; /*Menu1 ui kit*/
    /*--fontSizeMenuHeader: clamp(14px, calc(14px + (22 - 14) * ((100vw - 991px) / (1920 - 991))), 22px);*/ /*Menu1 ui kit*/
    --fontSizeMenuHeader: clamp(14px, calc(14px + (16 - 14) * ((100vw - 991px) / (1920 - 991))), 16px); /*Menu1 ui kit - уменьшенный*/

    /*Menu2, Menu3, Text3 и Text3 bold ui kit*/
    --fontSizeMenu2: clamp(16px, calc(16px + (18 - 16) * ((100vw - 768px) / (1920 - 768))), 18px);
    --fontSizeFilter: 16px; /*Filters и  Text4 ui kit*/
    --fontSizeSmall: 12px; /*Text5 ui kit*/

}

/*---------переменные - конец-----------*/

/*---------сброс CSS - начало-----------*/
* {
    margin: 0;
    padding: 0;
    outline: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;

    -webkit-text-size-adjust: 100%; /* Фиксирует размер шрифта */
    text-size-adjust: 100%; /* Стандартное свойство */
}

html, body{
    width: 100%;
    min-width: 420px !important;
    color: var(--colorMain);
    overflow-x: hidden;
    background: #ffffff;
}

html{
    scrollbar-gutter: stable;
}

body{
    /*transform-origin: top left;*/
}

body.clip{
    overflow: clip !important;
}

html, body, div {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    /*font-family: 'Montserrat Alternates';*/
    font-family: 'Roboto Regular';
    font-weight: 400;
    font-size: var(--fontSizeTextMain);
    line-height: 120%;
}

h1, h2, h3, h4, h5, h6 {
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: inherit;
    vertical-align: baseline;
    line-height: 1;
}

h1{
    font-size: var(--fontSizeH1);
    margin-bottom: 40px;
}

h2{
    font-size: var(--fontSizeH2);
}

h3{
    font-size: var(--fontSizeH3);
}

a, p, ul, ol, li, img, span, strong, em {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    font: inherit;
    line-height: 110%;
}

table, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    font: inherit;
}

applet, object, iframe, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, caption, fieldset, form, label, legend {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    font: inherit;
}

article, aside, figure, footer, header, hgroup, section {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    font: inherit;
}

/*для фиксации подвала на дне страницы - начало*/
body{
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

footer{
    margin-top: 60px;
}
/*для фиксации подвала на дне страницы - конец*/

canvas, details, embed, figcaption, menu, nav, output, ruby, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    font: inherit;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

b, strong {
    font-weight: bold;
}

em, i {
    font-style: italic;
}

ol, ul {
    list-style: disc;
    list-style-position: inside;
}

ol.not-marker, ul.not-marker {
    list-style: none;
    list-style-position: unset;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: none;
}

:focus {
    outline: 0;
}

ins {
    text-decoration: none;
}

del {
    text-decoration: line-through;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

hr {
    margin: 0;
    padding: 0;
    border: none;
    height: 1px;
    background: #5294c1;
}

p, dl, hr, h2, h3, h4, h5, h6, ol, ul, pre, table, address, fieldset {
    margin-bottom: 0;
}

ol {
    list-style: decimal;
}

ul ul, ol ol {
    padding-top: 0.5em;
}

dt {
    font-size: 18px;
    margin: 0;
}

dd {
    padding-left: 10px;
    font-size: 0.9em;
    font-style: italic;
    margin-bottom: 20px;
}

html {
    height: 100%;
    background: #fff;
}

input{
    width: 100%;
    height: 100%;
    font-size: var(--fontSizeInput);
    border: none;
}

button{
    border: none;
}

input[type="submit"], textarea, button {
    -webkit-appearance: none;
}

form:not(.snovaForm) input[type="text"]:focus{
    outline: none;
    box-shadow: none;
    outline-width: 0;
}

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

input[type='number'],
input[type="number"]:hover,
input[type="number"]:focus {
    appearance: none;
    -moz-appearance: textfield;
}

input[type="date"]{
    -webkit-appearance: none;
    appearance: none;
    background: #ffffff;
    background-image: none;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder{
    font-family: 'Roboto Regular'; /*в поиске в шапке*/
    font-size: var(--fontSizeInput);
    font-weight: 400;
    line-height: 1;
    color: var(--colorGrey);
}

input::-moz-placeholder,
textarea::-moz-placeholder{
    font-family: 'Roboto Regular'; /*в поиске в шапке*/
    font-size: var(--fontSizeInput);
    font-weight: 400;
    line-height: 1;
    color: var(--colorGrey);
}

input:-moz-placeholder,
textarea:-moz-placeholder{
    font-family: 'Roboto Regular'; /*в поиске в шапке*/
    font-size: var(--fontSizeInput);
    font-weight: 400;
    line-height: 1;
    color: var(--colorGrey);
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder{
    font-family: 'Roboto Regular'; /*в поиске в шапке*/
    font-size: var(--fontSizeInput);
    font-weight: 400;
    line-height: 1;
    color: var(--colorGrey);
}

input:-internal-autofill-selected,
input:-webkit-outofill,
input:-webkit-outofill:hover,
input:-webkit-outofill:active,
input:-webkit-outofill:focus{
    background-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
}



img {
    border: none;
    max-width: 100%;
    max-height: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

a.link{
    /*color: var(--colorAccent);*/
}

::-moz-selection {
    background-color: var(--colorMain);
    color: #ffffff;
}

::-webkit-selection {
    background-color: var(--colorMain);
    color: #ffffff;
}

::selection {
    background-color: var(--colorMain);
    color: #ffffff;
}

/*---------сброс CSS - конец-----------*/


/*---------иконки - начало-----------*/

[class*='rostok-public-']:before {
    display: inline-block;
    font-family: 'rostok-public-icons' !important;
    font-size: 20px;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    color: #FFFFFF;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    -ms-transition: all 300ms;
    -o-transition: all 300ms;
    transition: all 300ms;
}

.rostok-public-location:before {content: "\e900";}
.rostok-public-email:before {content: "\e901";}
.rostok-public-phone:before {content: "\e902";}
.rostok-public-star:before {content: "\e903";}
.rostok-public-accent:before {content: "\e904";}
.rostok-public-arrow-bold:before {content: "\e905";}
.rostok-public-arrow-light:before {content: "\e906";}
.rostok-public-youtube:before {content: "\e907";}
.rostok-public-star-base:before {content: "\e908";}
.rostok-public-star-base-half:before {content: "\e909";}
.rostok-public-star-base-null:before {content: "\e90a";}
.rostok-public-menu:before {content: "\e90b";}
.rostok-public-menu-main:before {content: "\e90c";}
.rostok-public-search:before {content: "\e90d";}
.rostok-public-basket:before {content: "\e90e";}
.rostok-public-fav:before {content: "\e90f";}
.rostok-public-auth:before {content: "\e910";}
.rostok-public-check:before {content: "\e911";}
.rostok-public-temp:before {content: "\e912";}
.rostok-public-age:before {content: "\e913";}
.rostok-public-pack:before {content: "\e914";}
.rostok-public-compare:before {content: "\e915";}
.rostok-public-fav-full:before {content: "\e916";}
.rostok-public-minus:before {content: "\e917";}
.rostok-public-plus:before {content: "\e918";}
.rostok-public-mess:before {content: "\e919";}
.rostok-public-cross:before {content: "\e91a";}
.rostok-public-arrow-bottom:before {content: "\e91b";}
.rostok-public-grid-layout:before {content: "\e91c";}
.rostok-public-row-layout:before {content: "\e91d";}
.rostok-public-sort:before {content: "\e91e";}
.rostok-public-filter:before {content: "\e91f";}
.rostok-public-delete:before {content: "\e920";}
.rostok-public-recover:before {content: "\e921";}
.rostok-public-faq:before {content: "\e922";}
.rostok-public-views:before {content: "\e923";}
.rostok-public-date:before {content: "\e924";}
.rostok-public-time:before {content: "\e925";}
.rostok-public-arrow-order:before {content: "\e926";}
.rostok-public-save:before {content: "\e927";}
.rostok-public-guarantee:before {content: "\e928";}
.rostok-public-care:before {content: "\e929";}
.rostok-public-sort:before {content: "\e92a";}
.rostok-public-check-min:before {content: "\e92b";}
.rostok-public-del-order:before {content: "\e92c";}
.rostok-public-cross-min:before {content: "\e92d";}
.rostok-public-pay-1:before {content: "\e92e";}
.rostok-public-pay-2:before {content: "\e92f";}
.rostok-public-delivery:before {content: "\e930";}

i.green-icon[class*='rostok-public-']:before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    -webkit-background-clip: text;
}


/*---------иконки - конец-----------*/

/*---------кнопки - начало-----------*/

.btn{
    width: 100%;
    cursor: pointer;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: var(--shadowMain);
    padding: 0 10px;
    position: relative;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-transition: color 0.3s, background 0.3s;
    -moz-transition: color 0.3s, background 0.3s;
    -ms-transition: color 0.3s, background 0.3s;
    -o-transition: color 0.3s, background 0.3s;
    transition: color 0.3s, background 0.3s;
}

.glide .btn{
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.btn.d-flex-center{
    gap: 10px;
}

.btn a{
    width: 100%;
    height: 100%;
}

.btn i{
    width: 20px;
    height: 20px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.btn i:before{
    font-size: 20px;
    color: inherit;
}

/*.btn span{
    flex: 1;
}*/

.btn.btn-orange,
.btn.btn-yellow,
.btn.btn-green,
.btn.btn-white,
.btn.btn-grey{
    z-index: 1;
    position: relative;
}

.btn-green-border{
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgGreen) border-box;
    border: 2px solid transparent;
    color: var(--colorMain);
    z-index: 1;
    position: relative;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-green-border:hover{
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgBrown) border-box;
}

.btn-orange{
    background: var(--bgOrange);
    color: #ffffff;
}

.btn.btn-yellow{
    background: var(--bgYellow);
    color: var(--colorMain)
}

.btn-green{
    background: var(--bgGreen);
    color: #ffffff;
}

.btn-white{
    background: #ffffff;
    color: var(--colorMain);
}

.btn-grey{
    background: var(--colorGreyBase);
    color: #ffffff;
}

.btn.btn-orange *,
.btn.btn-yellow *,
.btn.btn-green *,
.btn.btn-white *,
.btn.btn-grey *,
.btn-green-border *{
    z-index: 3;
    /*text-transform: uppercase;*/
    font-family: 'Roboto Regular';
    font-size: var(--fontSizeTextMain);
    font-weight: 400;
    line-height: 1;
    position: relative;
}

.btn.btn-white:before,
.btn.btn-orange:before,
.btn.btn-yellow:before,
.btn.btn-green:before,
.btn.btn-grey:before{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    position: absolute;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
    z-index: 2;
    background: var(--bgBrown);
}

.catalog-btn .btn.btn-green:before{
    background: var(--bgOrange);
}

.btn.btn-grey.active:before{
    background: #ffffff;
    color: var(--colorMain);
}

.btn.btn-grey *{
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.btn.btn-grey.active *{
    color: var(--colorMain);
}

.btn.btn-white:hover:before,
.btn.btn-white.active:before,
.btn.btn-orange:hover:before,
.btn.btn-orange.active:before,
.btn.btn-yellow:hover:before,
.btn.btn-yellow.active:before,
.btn.btn-green:hover:before,
.btn.btn-green.active:before,
.btn.btn-grey:hover:before,
.btn.btn-grey.active:before{
    opacity: 1;
}

.btn.btn-white:hover *,
.btn.btn-yellow:hover *,
.btn.btn-yellow.active *{
    color: #ffffff;
}

.btn.btn-orange.show-sort *{
    text-transform: unset;
}

.btn-50{
    height: 50px;
}

.btn-30{
    height: 30px;
}

/*.btn-50 a{
    padding: 0 28px;
    font-size: var(--fontSizeMainTextMedium);
}*/

.btns-kit{
    gap: 28px;
}

.btn-kit span:not(.counter){
    font-size: var(--fontSizeMenu2);
    font-family: 'Roboto Regular';
    color: #fff;
    margin-top: 6px;
}

.btn-kit span.counter{
    min-width: 24px;
    height: 24px;
    position: absolute;
    top: -10px;
    right: -17px;
    font-size: 14px;
    line-height: 16px;
    font-family: 'Roboto Medium';
    font-style: normal;
    color: #ffffff;
    background: var(--bgOrange);
    padding: 4px 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 60px;
    z-index: 1;
}

.btn-kit i{
    width: 25px;
    height: 27px;
    margin: 0 auto;
    font-style: normal;
    position: relative;
    margin-bottom: 3px;
}

.btn-kit i:before{
    font-size: 25px;
    line-height: 27px;
}

.btn-kit-status i{
    border-radius: 100%;
}

.btn-kit-status i:before{
    font-size: 10px;
}

.catalog-btn{
    width: 150px;
}

.catalog-btn > .btn{
    width: 100%;
    border-radius: 10px;
}

.catalog-btn > .btn span{
    flex: unset;
    line-height: 1;
    text-transform: unset;
}

.add-basket-btn-wrap,
.add-basket-btn{
    width: 100%;
    max-width: 290px;
    position: relative;
}

.add-basket-btn > div{
    height: 100%;
}

.add-basket-btn span{
    text-transform: uppercase;
}

.btn-key-action:not(.inform-btn) .product-add-count{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -2;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-key-action:not(.inform-btn).active .product-add-count {
    opacity: 1;
    z-index: 3;
}

.show-all-main-btn{
    max-width: 330px;
    margin: 0 auto;
}

/*---------кнопки - конец-----------*/

/*---------вспомогательные стили - начало-----------*/

.displayNone{
    display: none !important;
}

.container{
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.d-flex{
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
}

.d-flex-end{
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
}

.d-flex-center{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
}

.d-flex-between{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
}

.center-title, .center-text{
    text-align: center;
}

.slider-block{
    position: relative;
    margin-bottom: 78px;
}

.main-block .slider-block{
    margin-bottom: 26px;
}

.slider-block > .h2-slider{
    width: calc(100% - 120px);
    margin-bottom: 30px;
}

.slider-block > .glide{
    position: unset !important;
}

.slider-block .glide__arrows{
    width: 100px;
    height: 40px;
    top: 3px;
    transform: unset;
    left: unset;
    right: 0;
}

.glide:before,
.glide:after{
    content: '';
    height: 100%;
    background: #ffffff;
    position: absolute;
    top: 0;
    z-index: 10;
}

.glide:before{
    width: 20px;
    left: -24px;
}

.main-block{
    margin-bottom: 75px;
}

/*---------вспомогательные стили - конец-----------*/


/*---------универсальные блоки - начало-----------*/

.loader-full{
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 9999999;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #fff;
    background-image: url('/local/templates/public/images/wait.gif');
    opacity: 0.9;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.loader-mini{
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 30;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #fff;
    background-image: url('/local/templates/public/images/wait.gif');
    opacity: 0.8;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.logo-block{
    width: 125px;
    height: auto;
}

.logo-block a{
    width: 100%;
    height: 100%;
}

.logo-block a img{
    width: 100%;
}

.logo-block-mob,
.invert-logo,
.logo-block-mob-invert{
    display: none;
}

.logo-block-mob span,
.logo-block-mob-invert span{
    width: 100%;
    font-size: 10px;
    display: block;
    text-align: center;
}

.logo-block-mob span{
    color: #ffffff;
}

.logo-block-mob-invert span{
    color: var(--colorMain);
}

.contacts-block{
    gap: 32px;
}

.contacts-block h2{
    margin-bottom: 40px;
}

.contacts-block > div{
    width: 50%;
}

.contacts-block-img{
    width: 50%;
    height: auto;
    max-height: 363px;
    aspect-ratio: 1 / 0.54;
    box-shadow: var(--shadowMain);
    border-radius: 25px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.contacts-block-rows{
    margin-bottom: 30px;
}

.contacts-block-row{
    align-items: center;
    margin-bottom: 30px;
}

.contacts-block-row:last-child{
    margin-bottom: 0;
}

.contacts-block-row i{
    width: 40px;
    height: 40px;
    border-radius: 100%;
    margin-right: 20px;
    background: var(--bgGreen);
}

.contacts-block-row i:before{
    font-size: 20px;
}

.contacts-block-row-text{
    width: calc(100% - 60px);
}

.contacts-block-row-text * {
    width: 100%;
    display: block;
   /* font-size: clamp(18px, calc(18px + (26 - 18) * ((100vw - 768px) / (1920 - 768))), 26px);*/
}

.contacts-block-socs{
    gap: 20px;
}

.contacts-block-soc{
    width: 40px;
    height: 40px;
}

.policy-links a{
    width: fit-content;
    display: block;
    margin-bottom: 15px;
    font-size: var(--fontSizeMenu2);
    text-decoration: underline;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.policy-links a:last-child{
    margin-bottom: 0;
}

.policy-links a:hover{
    text-decoration: none;
}

.bg-block{
    width: 100%;
    height: 100vh;
    background: #000;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -2;
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.bg-block.active{
    z-index: 30;
    opacity: 0.4;
}

.breadcrumbs{
    padding: 56px 0 36px;
}

.breadcrumbs ul{
    justify-content: flex-start;
    gap: 10px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.breadcrumbs ul li{
    gap: 10px;
    font-size: var(--fontSizeBreadcrumbs);
}

.breadcrumbs ul li i:before{
    font-size: 22px;
    color: var(--colorMain);
}

.breadcrumbs ul li:last-child i{
    display: none;
}

.breadcrumbs ul li a{
    border-bottom: 1px solid transparent;
    -webkit-transition: border 0.3s;
    -moz-transition: border 0.3s;
    -ms-transition: border 0.3s;
    -o-transition: border 0.3s;
    transition: border 0.3s;
}

.breadcrumbs ul li:hover a{
    border-bottom: 1px solid var(--colorMain);
}

.breadcrumbs ul li:last-child a,
.breadcrumbs ul li:last-child:hover a{
    border-bottom: none;
}

.breadcrumbs ul li:last-child:hover a{
    cursor: default ;
}

.rating-row{
    gap: 7px;
}

.rating-row-stars{
    gap: 5px;
}

.rating-row-star:before{
    font-size: 24px;
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
}

.rating-row-text{
    color: var(--colorGreyBase);
}

.sale-card{
    border-radius: 25px;
    padding: 20px 10px;
    box-shadow: var(--shadowMain);
    background: var(--bgGreenLight);
    margin-bottom: 20px;
    gap: 10px;
}

.sale-card:last-child{
    margin-bottom: 0;
}

.sale-card-img{
    width: 100px;
    height: auto;
    aspect-ratio: 1 / 1;
}

.sale-card-info{
    flex: 1;
}

.sale-card-info .title{
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
}

.sale-card-info .title{
    font-size: 24px;
    margin-bottom: 6px;
}

.sale-card-info .subtitle{
    font-size: 18px;
    margin-bottom: 9px;
}

.sale-card .progress-bar{
    width: 100%;
    height: 14px;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

.sale-card .progress-bar-base{
    width: 100%;
    height: 100%;
    background: #fff;
}

.sale-card .progress-bar-accent{
    height: 100%;
    background: var(--bgGreen);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

.product-price:not(.old) span{
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    font-size: var(--fontSizeTextBig);
    color: transparent;
    background: var(--bgBrown);
    background-clip: text;
}

.product-price.d-flex-center{
    gap: 16px;
    justify-content: flex-start;
}

.product-price.old span{
    display: block;
    font-size: var(--fontSizeText);
    line-height: 1;
    color: var(--colorGreyBase);
    text-decoration: line-through;
    margin-bottom: 14px;
}

.product-price.new span{
    background: var(--bgGreen);
    background-clip: text;
}

.product-price.new.red-discount span{
    background: var(--bgRed);
    background-clip: text;
}

.product-stiсker{
    width: auto;
    padding: 4px 7px;
    font-family: 'Roboto Medium';
    font-weight: 700;
    font-size: 20px !important;
    line-height: 1;
    border-radius: 7px;
    color: #ffffff;
    letter-spacing: 1.5px;
}

.sale-count{
    background: var(--bgOrange);
}

.red-discount .sale-count{
    background: var(--bgRed);
}

.product-add-count{
    width: 100%;
    height: 100%;
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgGreen) border-box;
    border-radius: 25px;
    border: 2px solid transparent;
    overflow: hidden;
}

.product-add-count input{
    width: calc(100% - 100px);
    border: none;
    background: none;
    text-align: center;
    color: var(--colorMain);
    font-family: 'Roboto Medium';
    font-size: 26px;
}

.product-add-count input::selection{
    background-color: #ffffff;
    color: var(--colorMain);
}

.product-add-count-btn{
    width: 50px;
    height: 100%;
    position: relative;
    cursor: pointer;
}

.product-add-count-btn.plus:before,
.product-add-count-btn.minus:after{
    content: '';
    width: 1px;
    height: calc(100% - 16px);
    position: absolute;
    top: 8px;
    background: #B9B9B9;
}

.product-add-count-btn.minus:after{
    right: 0;
}

.product-add-count-btn.plus:before{
    left: 0;
}

.product-add-count-btn i{
    width: 100%;
    height: 100%;
}

.product-add-count-btn i:before{
    font-size: 21px;
    color: var(--colorMain);
}

@keyframes clickBtn {
    0%, 100% {
        transform: scale(1);

    }
    50% {
        transform: scale(0.98);

    }
}

.product-add-count-btn:active i{
    animation: clickBtn 0.2s ease-in-out;
}

.product-action-btns{
    width: 30px;
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 3;
}

.product-action-btns > div{
    margin-bottom: 10px;
}

.product-action-btns > div:last-child{
    margin-bottom: 0;
}

.product-action-btn{
    width: 30px;
    height: 30px;
    background: hsla(0, 0%, 0%, 0.2);
    border-radius: 100%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

.product-action-btn:before{
    font-size: 15px;
}

.product-action-btn:hover,
.product-action-btn.active{
    background: #ffffff;
}

.product-action-btn:hover:before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
}

.product-action-btn.active:before{
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
}

.reviews-slide{
    position: relative;
}

.glide:not(.glide--carousel) .reviews-slide {
    max-width: 375px;
    margin-right: 22px;
}

.glide:not(.glide--carousel) .reviews-slide:last-child{
    margin-right: 0;
}

.reviews-slide:before,
.reviews-slide:after {
    content: "\e904";
    font-family: 'rostok-public-icons';
    font-size: 50px;
    line-height: 38px;
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    position: absolute;
}

.reviews-slide:before{
    top: 20px;
    right: 20px;
}

.reviews-slide:after{
    bottom: 20px;
    left: 20px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.reviews-slide-stars{
    width: calc(100% - 100px);
    margin: 0 auto 30px;
    gap: 10px;
}

.reviews-slide-star i:before{
    font-size: 40px;
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
}

.reviews-slide-text,
.reviews-slide-name{
    font-size: var(--fontSizeText);
}

.reviews-slide-name{
    width: calc(100% - 100px);
    margin: 15px auto 0;
    font-style: italic;
}

.glide:not(.glide-infinity){
    padding: 8px;
    margin: -8px;
    overflow: hidden;
}

.glide.glide-center-accent.glide-arrows{
    padding-bottom: 80px;
}

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

.glide-center-accent .glide__slide .technology-slide-bg,
.glide-center-accent .glide__slide .glide__slide-content{
    max-width: 440px;
    height: auto;
    max-height: 310px;
    aspect-ratio: 1 / 0.7;
}

.glide__slide.glide-next{
    justify-content: flex-end;
}

.glide__slide.glide-prev{
    justify-content: flex-start;
}

.glide__slide-base,
.glide__slide-four{
    margin: 14px 0;
}

.glide__slide-base .glide__slide-content,
.glide__slide-four .glide__slide-content{
    box-shadow: 0 2.74px 8.23px 0 #00000040;
    border-radius: 25px;
    overflow: hidden;
}

.glide__slide-base .glide__slide-content{
    margin: 0 8px;
}

.glide__slide-four .glide__slide-content{
    margin: 0 4px;
}

.glide__slide-base .glide__slide-content{
    padding: 35px 27px;
    box-sizing: border-box;
}

.glide__track{
    overflow: visible !important;
}

.smooth-links-container.active{
    /*position: fixed;*/
/*    position: sticky;*/
    height: 50px;
    max-width: 1400px;
    top: 0;
    background: white;
    z-index: 100;
    margin: 0 auto;
}


.show-all-container .show-all-text-hidden,
.show-all-container.show-all-rows .show-row:nth-child(n + 5){
    display: none;
}

.show-all-btn{
    width: fit-content;
    margin-top: 20px;
}

.show-all-btn span:not(.not-border){
    border-bottom: 1px solid var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

.show-all-btn:hover span:not(.not-border){
    border-bottom: 1px solid transparent;
}

.show-all-container h2,
.show-all-container h3,
.smooth-container h2,
.smooth-container h3{
    margin-bottom: 20px;
}

.grid-col-2{
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 30px;
}

.grid-col-3{
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.grid-col-4{
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.attention-block{
    width: 100%;
    height: auto;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 90px 1fr;
    gap: 12px 30px;
    border-radius: 25px;
    margin: 55px 0;
    padding: 20px 30px;
    position: relative;
}

.attention-block .image{
    width: 90px;
    height: auto;
    grid-row: span 2;
}

.attention-block.green{
    background: var(--bgGreenLight);
}

.attention-block.green .image{
    max-height: 117px;
    aspect-ratio: 1 / 1.05;
    background: url('/local/templates/public/images/icons/attention-block-green.svg') no-repeat;
    background-size: contain;
    background-position: center;
}

.attention-block.orange{
    background: var(--bgOrangeLight);
}

.attention-block.orange .image{
    max-height: 84px;
    aspect-ratio: 1 / 0.94;
    background: url('/local/templates/public/images/icons/attention-block-orange.svg') no-repeat;
    background-size: contain;
    background-position: center;
}

.attention-block h3,
.attention-block > div:not(.image){
    width: 100%;
}

.attention-block h3{
    margin-bottom: 0;
    line-height: 1;
    align-self: flex-end;
}

.attention-block > div:not(.image){
    align-self: flex-start;
}

.double-block{
    width: 100%;
    margin: 55px 0;
    gap: 30px;
}

.double-block.reverse{
    flex-direction: row-reverse;
}

.double-block > .image{
    width: 33%;
    max-width: 460px;
    height: auto;
    max-height: 520px;
    aspect-ratio: 1 / 1.14;
    gap: 20px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.double-block > .image:not(.d-flex-center){
    max-height: 320px;
    aspect-ratio: 1 / 0.7;
}

.double-block > .image:not(.d-flex-center) > div{
    width: 100%;
    height: 100%;
    border-radius: 25px;
    overflow: hidden;
}

.double-block > .image.d-flex-center > div{
    border-radius: 25px;
    overflow: hidden;
}

.double-block > .image.d-flex-center > div:nth-child(1){
    width: 100%;
    max-width: 460px;
    height: auto;
    max-height: 320px;
    aspect-ratio: 1 / 0.7;
}

.double-block > .image.d-flex-center > div:nth-child(2),
.double-block > .image.d-flex-center > div:nth-child(3){
    width: calc((100% - 20px)/2);
    max-width: 220px;
    height: auto;
    max-height: 180px;
    aspect-ratio: 1 / 0.82;

}

.double-block > .text{
    width: auto;
    flex: 1;
}

.page-banner{
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 0.25;
    max-height: 350px;
    border-radius: 25px;
    overflow: hidden;
    position: relative;
}

.page-banner:not(.big, .small){
    margin-bottom: 60px;
}

.page-banner-img{
    width: 100%;
    height: 100%;
    position: relative;
}

.page-banner-img:before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
  /*  background: var(--bgBlack);*/
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.45) 100%);
}

.page-banner h1{
    margin: 0;
    color: #ffffff;
}

.page-banner:not(.big, .small) h1{
    width: 40%;
    max-width: calc(100% - 60px);
    position: absolute;
    bottom: 25px;
    left: 30px;
    z-index: 3;
}

.page-banners{
    display: grid;
    gap: 30px;
    grid-template-columns: auto 268px;
    margin: 40px 0;
    width: 100%;
    height: 360px;
   /* aspect-ratio: 1 / 0.32;
    max-height: 360px;*/
}

.page-banners .page-banner{
    aspect-ratio: unset;
    max-height: unset;
}

.small .page-banner-img:before{
    content: none;
}

.page-banner.small{
    background: var(--bgGreen);
    padding: 25px 20px 20px 20px;
}

.page-banner-wrap{
    position: absolute;
    bottom: 20px;
    left: 30px;
    width: calc(100% - 60px);
    max-width: 440px;
    z-index: 3;
}

.page-banner-wrap > *:not(.btn){
    color: #ffffff;
}

.small .page-banner-wrap{
    width: 100%;
    max-width: unset;
    height: calc(100% - 176px);
    position: unset;
    margin: 20px 0 0;
    padding-bottom: 60px;
    overflow: hidden;
}

.small .page-banner-wrap h3{
    font-size: clamp(24px, calc(26px + (24 - 26) * ((100vw - 768px) / (1920 - 768))), 26px);
    max-height: calc(1.1em * 3);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
    margin-bottom: 10px;
}

.small .page-banner-wrap .btn{
    position: absolute;
    width: Calc(100% - 40px);
    bottom: 20px;
    left: 20px;
}

.page-banner-wrap h1{
    margin-bottom: 25px;
    font-size: clamp(40px, calc(40px + (46 - 40) * ((100vw - 768px) / (1920 - 768))), 46px);
    max-height: calc(1.1em * 4);
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
}

.page-banner-wrap h2{
    margin-bottom: 15px;
}

.page-banner-wrap .btn{
    max-width: 290px;
}

.big .page-banner-wrap .btn.btn-white:before{
    background: var(--bgGreen);
}

.page-banner.small .page-banner-img{
    width: 96px;
    height: 96px;
    position: unset;
}

.double-container{
    width: 100%;
    gap: 30px;
}

.double-container .left{
    width: 267px;
}

.double-container .right{
    width: calc(100% - 297px);
}

.pagination-block{
    margin-top: 35px;
}

.pagination-text{
    text-align: center;
    font-size: var(--fontSizeText);
    margin-bottom: 35px;
}

.pagination-btn{
    max-width: 330px;
    margin: 0 auto;
}

.pagination{
    margin-top: 40px;
}

.pagination ul{
    gap: 18px;
}

.pagination ul a.prev{
    margin-right: 2px;
}

.pagination ul a.next{
    margin-left: 2px;
}

.pagination li{
    list-style: none;
    /*font-family: 'Montserrat Alternates';*/
    font-family: 'Roboto Regular';
    font-weight: 400;
    font-size: var(--fontSizeTextMain);
}

.pagination li.current{
    font-weight: 700;
}

.pagination-arrow{
    width: 40px;
    height: 40px;
    background: var(--bgGreen);
    border-radius: 7px;
    color: #fff;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}

.pagination-arrow.prev:before{
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.pagination-arrow:before{
    z-index: 3;
}

.pagination-arrow:after{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -1;
    background: var(--bgBrown);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.pagination-arrow:hover:after,
.pagination-arrow:active:after,
.pagination-arrow:focus:after{
    opacity: 1;
    z-index: 2;
}

.shadow-block{
    gap: 30px;
    display: grid;
    grid-template-rows: auto;
}

.shadow-block:not(.main-block){
    margin-bottom: 50px;
}

.grid-four,
.shadow-block.grid-four{
    grid-template-columns: repeat(4, 1fr) !important;
}

.grid-three,
.shadow-block.grid-three{
    grid-template-columns: repeat(3, 1fr) !important;
}

.shadow-block.grid-two{
    grid-template-columns: repeat(2, 1fr);
}

.shadow-block-el{
    box-shadow: var(--shadowMain);
    background: #fff;
    border-radius: 25px;
    padding: 20px;
    position: relative;
}

.shadow-block-el-img{
    width: 60px;
    height: 60px;
    margin-bottom: 20px;
}

.shadow-block-el.btn-block{
    padding: 20px 20px 90px;
}

.shadow-block h3{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    margin-bottom: 14px;
}


.shadow-block-el > div.d-flex-center:not(.order-final-steps){
    justify-content: flex-start;
    margin-bottom: 16px;
    width: auto;
    height: 50px;
}

.shadow-block-el .btn{
    position: absolute;
    width: calc(100% - 40px);
    bottom: 20px;
    left: 20px;
}

.accent-image .shadow-block-el > div.d-flex-center:not(.order-final-steps){
    width: 100px;
    height: 100px;
    position: relative;
}

.accent-image .shadow-block-el > div.d-flex-center:not(.order-final-steps):before{
    content: '';
    width: 140px;
    height: 140px;
    border-radius: 100%;
    background: radial-gradient(50% 50% at 50% 50%, rgba(6, 117, 38, 0.4) 0%, rgba(156, 204, 47, 0) 100%);
    position: absolute;
    left: -20px;
    top: -20px;
    z-index: 1;
}

.accent-image .shadow-block-el > div.d-flex-center img{
    position: relative;
    z-index: 2;
}

.shadow-block-el.bg h3,
.shadow-block-el.bg div:not(.btn){
    color: #ffffff;
}

.shadow-block-el.bg h3{
    padding-top: 116px;
}

.shadow-block-el.bg > div:not(.btn){
    font-size: var(--fontSizeTextMain);
}

.accent-block .shadow-block-el{
    background: var(--bgGreenLight);
}

.shadow-block-el-wrap{
    max-width: calc(100% - 277px);
}

.shadow-block-el-wrap .btn{
    max-width: 247px;
}

.shadow-block-el-bg{
    width: 247px;
    height: 165px;
    position: absolute;
    right: 20px;
    bottom: 20px;
}

.show-hidden-block-content{
    height: 150px;
    overflow: hidden;
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -ms-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s;
}

.show-hidden-block-btn{
    width: fit-content;
    margin-top: 20px;
    border-bottom: 1px solid var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

.show-hidden-block-btn:hover{
    border-bottom: 1px solid transparent;
}

.grid-accent-layout{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    gap: 30px;
}

.grid-accent-layout-el.main{
    grid-column: span 2;
}

.grid-accent-layout-el{
    position: relative;
    box-shadow: var(--shadowMain);
    border-radius: 25px;
    overflow: hidden;
}

.grid-accent-layout-el.main .image{
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 0.62;
    border-radius: 25px;
    max-height: 330px;
}

.grid-accent-layout-el.main:before,
.grid-accent-layout-el.image:before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    border-radius: 25px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
}

.main .grid-accent-layout-el-wrap{
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    position: absolute;
    top: 20px;
    left: 20px;
}

.main .grid-accent-layout-el-wrap *{
    color: #ffffff;
}

.grid-accent-layout-el-wrap .sticker{
    position: absolute;
    top: 0;
    left: 0;
    font-size: clamp(14px, calc(14px + (20 - 14) * ((100vw - 768px) / (1920 - 768))), 20px);
    line-height: 1.1;
    padding: 9px 23px;
    background: var(--bgOrange);
    border-radius: 25px;
}

.main .grid-accent-layout-el-wrap .title{
    position: absolute;
    bottom: 0;
    width: 100%;
    font-size: clamp(26px, calc(26px + (36 - 26) * ((100vw - 768px) / (1920 - 768))), 36px);
    font-weight: 700;
    max-width: 75%;
    max-height: calc(1.1em * 4);
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
}

.grid-accent-layout-el.bg{
    background: var(--bgOrange);
}

.grid-accent-layout-el.bg > *:not(.btn),
.grid-accent-layout-el.image > *:not(.btn){
    color: #ffffff;
}

.bg .grid-accent-layout-el-wrap,
.image .grid-accent-layout-el-wrap{
    width: calc(100% - 40px);
    position: absolute;
    bottom: 20px;
    left: 20px;
}

.bg .grid-accent-layout-el-wrap .title,
.image .grid-accent-layout-el-wrap .title{
    font-size: var(--fontSizeH3);
    font-weight: 700;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
    max-height: calc(1.1em * 3);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
}

.grid-accent-layout-el.image .image{
    width: 100%;
    height: 100%    ;
   /* aspect-ratio: 1 / 1.54;
    max-height: 410px;*/
    border-radius: 25px;
}

.grid-accent-layout-el:not(.main, .bg, .image) .image{
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 0.75;
    max-height: 200px;
}

.grid-accent-layout-el:not(.main, .bg, .image) .grid-accent-layout-el-wrap{
    padding: 20px 15px 90px;
}

.grid-accent-layout-el:not(.main, .bg, .image) .btn{
    position: absolute;
    bottom: 20px;
    left: 20px;
    width: calc(100% - 40px);
}

.grid-accent-layout-el:not(.main, .bg, .image) .title{
    font-size: var(--fontSizeH3);
    font-weight: 700;
    letter-spacing: -0.02em;
    margin-bottom: 16px;
    max-height: calc(1.1em * 3);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
}

.grid-accent-layout-el-wrap .info{
    gap: 10px;
    justify-content: space-between;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.grid-accent-layout-el-wrap .info > div{
    gap: 5px;
    width: fit-content;
    justify-content: flex-start;
}

.grid-accent-layout-el-wrap .info > div > span{
    font-size: clamp(12px, calc(12px + (14 - 12) * ((100vw - 768px) / (1920 - 768))), 14px);
}

.grid-accent-layout-el-wrap .info > div > i{
    width: 20px;
    height: 20px;
}

.grid-accent-layout-el-wrap .info > div > i:before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    padding: 1px;
}

.text-bold{
    font-weight: 700;
}

/*---------универсальные блоки - конец-----------*/


/*---------шапка - начало-----------*/

#header-all{
    /*position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 20;*/
}

.header-menu-btn{
    display: none;
    cursor: pointer;
    position: absolute;
    width: 36px;
    height: 58px;
    top: 0;
    right: 20px;
    background: #fff;
    z-index: 2;
}

.header-menu-btn:after{
    height: 0;
    width: 0;
    bottom: -7px;
    left: 0;
    border-left: 18px solid #ffffff;
    border-right: 18px solid #ffffff;
    border-bottom: 7px solid transparent;
    content: " ";
    position: absolute;
}

#header-all.invert .header-menu-btn{
    background: var(--bgGreen);
}

#header-all.invert .header-menu-btn i:before{
    color: #ffffff;
    background: none;
}

#header-all.invert .header-menu-btn:after{
    border-left: 18px solid #0a7726;
    border-right: 18px solid #0a7726;
    border-bottom: 7px solid transparent;
}

.header-nav {
    height: 52px;
    background: var(--bgGreenLight);
}

.header-nav ul{
    width: 100%;
    height: auto;
    min-height: 52px;
    justify-content: space-between;
    gap: 40px;
}

.header-nav ul *{
    font-family: 'Roboto Medium';
    font-size: var(--fontSizeMenuHeader);
}

.header-nav li:not(.phone) a{
    border-bottom: 1px solid transparent;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.header-nav li:not(.phone):hover a{
    border-bottom: 1px solid var(--colorMain);
}

.header-nav li.phone a{
    gap: 10px;
    padding-left: 30px;
    font-weight: 700;
}

.header-nav li.phone a i{
    width: var(--fontSizeMenuHeader);
    height: var(--fontSizeMenuHeader);
}

.header-nav li.phone a i,
.header-nav li.phone a i:before{
    font-size: var(--fontSizeMenuHeader);
}

.header-main{
    position: relative;
    width: 100%;
    top: 0;
    z-index: 20;
    left: 0;
    height: 100px;
    padding: 15px 0;
    background: var(--bgBrown);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.header-main > .container{
    justify-content: space-between;
}

.header-main * {
    font-family: 'Roboto Regular';
}

.header-main .btns-kit{
    margin-left: 28px;
}

.header-main .catalog-btn{
    height: 45px;
    margin: 0 20px 0 69px;
}

.header-main .catalog-btn a{
    height: 100%;
}

.header-main .smart-search-block{
   /* width: calc(100% - 850px);*/
    width: auto;
    flex: 1;
    margin-right: 69px;
}

/*#header-all.active .header-nav{
    opacity: 0;
}*/

#header-all.fixed .header-main{
    position: fixed;
    border-bottom: 1px solid #d7d7d7;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

#header-all.active .header-main{
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

.smart-search-row{
    width: 100%;
    height: 45px;
    border-radius: 10px;
    background: #fff;
    display: block;
    overflow: hidden;
    position: relative;
    padding: 0 15px;
}

.smart-search-row i{
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.smart-search-row i:before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    -webkit-background-clip: text;
    font-size: 23px;
}

.smart-search-row input{
    border: none;
    background: none;
}

header .btn-kit span:not(.counter){
    border-bottom: 1px solid transparent;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

header .btn-kit:hover span:not(.counter){
    border-bottom: 1px solid #ffffff;
}

header .btn-kit:hover i.btn-green{
    background: var(--bgOrange);
}

header .btn-kit:hover i:not(.btn-green):before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
}

.header-main .btn-kit-phone{
    display: none;
}

header.invert{
    box-shadow: var(--shadowMain);
}

.invert .header-main{
    background: #fff;
}

.invert .btn-kit:not(.btn-kit-status) i:before,
.invert .btn-kit span:not(.counter){
    color: var(--colorMain);
}

.invert .smart-search-row{
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgGreen) border-box;
    border: 2px solid transparent;
}

header.invert .btn-kit:hover span:not(.counter){
    border-bottom: 1px solid var(--colorMain);
}

header.invert .logo-block .invert-logo{
    display: flex;
}

header.invert .logo-block a:not(.invert-logo){
    display: none;
}

.search-placeholder{
    display: block;
    font-family: 'Roboto Regular';
    font-size: var(--fontSizeInput);
    font-weight: 400;
    line-height: 1;
    color: var(--colorGrey);
    height: 100%;
    align-content: center;
}

/*---------шапка - конец-----------*/

/*---------подвал - начало-----------*/

.footer-main-block{
    width: 100%;
    background: var(--bgBrown);
    padding: 60px 0 95px;
    color: #fff;
}

.footer-main-block *{
    font-family: 'Roboto Regular';
}

.footer-main-block > .d-flex{
    justify-content: space-between;
    gap: 24px;
}

footer .logo-block{
    width: 226px;
}

footer .policy-links{
    padding-top: 60px;
}

.footer-menu{
    width: Calc(100% - 250px);
    max-width: 1040px;
}

.footer-menu > nav{
    gap: 24px;
}

.footer-menu ul{
    width: calc(100%/3);
}

.footer-menu li.title{
    text-transform: capitalize;
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    font-size: 26px;
    line-height: 106%;
    letter-spacing: -0.055em;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 16px;
}

.footer-menu li.title:before{
    content: '';
    width: 75px;
    height: 3px;
    background: #fff;
    position: absolute;
    left: 0;
    top: 100%;
}

.footer-menu li:not(.title){
    font-size: var(--fontSizeMenu2);
    margin-bottom: 15px;
}

.footer-menu li:not(.title):last-child{
    margin-bottom: 0;
}

.footer-menu li:not(.title) a{
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.footer-menu li:not(.title, .contacts-block-socs) a{
    border-bottom: 1px solid transparent;
}

.footer-menu li:not(.title, .contacts-block-socs):hover a{
    border-bottom: 1px solid #ffffff;
}

.footer-menu li.contacts-block-socs a:hover{
    opacity: 0.6;
}

.footer-main-block .contacts-block-socs{
    margin-top: 44px;
}

.footer-main-block .contacts-block-soc img{
    filter: grayscale(1) brightness(1000%);
}

.footer-contacts-block{
    margin-bottom: 100px;
}

.footer-bar{
    position: fixed;
    bottom: 0;
    width: 100%;
    background: #ffffff;
    z-index: 20;
    box-shadow: var(--shadowMain);
    border-radius: 15px 15px 0 0;
    display: none;
    padding: 10px 20px;
    box-sizing: border-box;
    border-top: 1px solid transparent;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.footer-bar.active-bar{
    border-radius: unset;
    box-shadow: none;
    border-top: 1px solid #d7d7d7;
}

.footer-bar .btn-kit span:not(.counter){
    color: var(--colorMain);
    font-size: 12px;
    display: block;
    width: 100%;
    text-align: center;
}

.footer-bar .btns-kit{
    align-items: flex-start;
    justify-content: space-between;
}

.footer-bar .btn-kit span.counter{
    width: 17px;
    height: 17px;
    min-width: 17px;
    font-size: 11px;
    padding: 3px;
    top: -6px;
    right: -8px;
}

/*---------подвал - конец-----------*/




/*-------УНИВЕРСАЛЬНЫЕ УВЕДОМЛЕНИЯ - начало---------*/

.notification-popup{
    width: Calc(100% - 30px);
    max-width: 550px !important;
    background: #FFFFFF;
    padding: 30px;
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    z-index: -1;
    opacity: 0;
    -moz-opacity: 0;
}

.notification-popup.active{
    z-index: 1001;
    opacity: 1;
    -moz-opacity: 1;
}

.notification-popup-close-btn{
    width: 25px;
    height: 25px;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    background: linear-gradient(180deg, #F28B01 0%, #E15601 100%);
    position: absolute;
    top: 20px;
    right: 20px;
    cursor: pointer;
}

.notification-popup-close-btn i{
    width: 21px;
    height: 21px;
    position: absolute;
    top: 2px;
    left: 2px;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    background-color: #FFFFFF;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    font-style: normal;
}

.notification-popup-close-btn i:before{
    color: transparent;
    background: linear-gradient(180deg, #F28B01 0%, #E15601 100%);
    background-clip: text;
    -webkit-background-clip: text;
    font-size: 15px;
}

.notification-popup-name{
    width: Calc(100% - 40px);
    overflow: hidden;
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
    color: #583723;
    padding: 0 40px 12px 0;
    border-bottom: 2px solid #E4E4E2;
    margin-bottom: 22px;
}

.notification-popup-desc{
    font-size: 18px;
    line-height: 1.2;
    color: #583723;
}

/*-------УНИВЕРСАЛЬНЫЕ УВЕДОМЛЕНИЯ - конец---------*/



/*---------- стили для всех попапов - начало -----------*/
body.hidden,
html.hidden{
    overflow: hidden !important;
    /*position: fixed;*/
}

.popup-block {
    width: Calc(100% - 40px);
    max-width: 980px;
    background: #FFFFFF;
    padding: 40px;
    border-radius: 25px;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    z-index: -1;
    opacity: 0;
    -moz-opacity: 0;
}

.popup-block.add-basket-popup{
    max-width: 1160px;
    max-height: calc(100dvh - 40px);
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.popup-block.active {
    z-index: 1001;
    opacity: 1;
    -moz-opacity: 1;
}

.left-popup{
    top: 0;
    left: 0;
    -webkit-transform: translate(-100%, 0);
    -moz-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    -o-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
    z-index: 1001;
    opacity: 1;
    -moz-opacity: 1;
    border-radius: 0 25px 25px 0;
    -moz-border-radius: 0 25px 25px 0;
    -webkit-border-radius: 0 25px 25px 0;
}

.left-popup.active{
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.popup-block.middle{
    max-width: 687px;
}

.popup-bg{
    overflow: hidden;
}

.popup-banner{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 350px;
}

.popup-header{
    margin-bottom: 40px;
}

.popup-bg .popup-header{
    padding-top: 350px;
}

.popup-close-btn{
    width: 40px;
    height: 40px;
    position: absolute;
    top: 20px;
    right: 20px;
    cursor: pointer;
}

.popup-close-btn i {
    width: 100%;
    height: 100%;
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
    font-style: normal;
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
}

.popup-close-btn i:before {
    display: block;
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
    -webkit-background-clip: text;
    font-size: 22px;
    padding: 2px;
    -webkit-transition: inherit;
    -moz-transition: inherit;
    -ms-transition: inherit;
    -o-transition: inherit;
    transition: inherit;
    transform-origin: center;
}

.popup-close-btn:hover i {
    -webkit-transform: rotate(180deg) scale(1);
    -moz-transform: rotate(180deg) scale(1);
    -ms-transform: rotate(180deg) scale(1);
    -o-transform: rotate(180deg) scale(1);
    transform: rotate(180deg) scale(1);
}

.popup-bg .popup-close-btn{
    background: #fff;
    border-radius: 100%;
}

.popup-name {
    width: calc(100% - 20px);
    font-size: var(--fontSizePopup);
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    padding: 0 15px;
    overflow: hidden;
    color: var(--colorMain);
    text-align: center;
}

.popup-text{
    width: 100%;
    margin-bottom: 25px;
    font-size: 18px;
    line-height: 1;
    color: #583723;
}

.popup-form{
    width: 100%;
}

.popup-action-btn{
    max-width: 330px;
    margin: 0 auto;
}


/*---------- стили для всех попапов - конец -----------*/


/*ПОПАП "НЕ СПЕШИТЕ УХОДИТЬ" - начало*/

.subscribe-popup{
    max-width: 737px;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: auto;
}

.subscribe-popup-bg{
    width: 223px;
    height: 100%;
    position: relative;
}

.subscribe-popup-bg:before{
    content: '';
    width: 223px;
    height: 100%;
    background-image: url('/local/templates/public/images/other/gift-img.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 0 0;
    position: absolute;
    top: 0;
    left: 0;
}

.subscribe-popup-wrap{
    width: 100%;
    padding: 20px 20px 20px 0;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.subscribe-popup .popup-header{
    padding: 0;
}

.subscribe-popup .popup-name{
    width: Calc(100% - 35px);
    text-transform: unset;
    border-bottom: unset;
    padding: 0 10px 0 0;
    margin-bottom: 10px;
}

.subscribe-popup .popup-close-btn{
    top: 20px;
    right: 20px;
}

.subscribe-popup .popup-close-btn i{
    width: 21px;
    height: 21px;
    position: absolute;
    top: Calc((100% - 21px)/2);
    left: Calc((100% - 21px)/2);
}

.subscribe-popup .popup-text{
    font-size: 20px;
    line-height: 130%;
}

.subscribe-popup .popup-text span{
    font-weight: 700;
    color: #44A301;
}

.form-subscribe-news-fields span{
    width: auto;
    display: block;
    text-align: center;
    font-size: 18px;
    line-height: 18px;
    margin: 11px auto;
    color: #583723;
}

.subscribe-popup .agreement-block{
    margin-top: 20px;
    color: #583723;
}

.subscribe-popup .popup-form-btn{
    max-width: 220px !important;
    margin: 0 auto;
}

.subscribe-popup .popup-form .form-subscribe-news-field input{
    width: 100%;
    height: 45px;
    border-radius: 10px;
    background: #fff;
    display: block;
    overflow: hidden;
    position: relative;
    padding: 0 15px;
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgGreen) border-box;
    border: 2px solid transparent;
}

.subscribe-popup .popup-form button{
    margin-top: 20px;
}
.subscribe-popup .agreement-block .rostok-around-check-icon{
    display: none;
}

/*ПОПАП "НЕ СПЕШИТЕ УХОДИТЬ" - конец*/



/*---------- стили форм - начало -----------*/

.form-fields{
    margin-bottom: 30px;
}

.form-field{
    margin-bottom: 45px;
}

.form-field.grid-span-2{
    grid-column: span 2;
}

.form-field:last-child{
    margin-bottom: 0;
}

.form-field-label-btn{
    cursor: pointer;
}

.form-field-title{
    display: block;
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    font-size: var(--fontSizePopupH3);
    margin-bottom: 16px;
}

.form-field-double input:not(.active-input){
    display: none !important;
}

.form-field input:not([type='file']),
.form-field textarea{
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-radius: 30px;
    border: none;
    box-shadow: var(--shadowMain);
    padding: 0 20px;
    font-size: 18px;
    font-family: 'Roboto Regular';
    color: var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.form-field textarea{
    height: 100px;
    padding: 20px;
}

.form-field.error input{
    color: transparent;
    background: var(--bgRed);
    background-clip: text;
}

.input-checkbox{
    width: 25px;
    height: 25px;
    position: absolute;
    z-index: -1;
    opacity: 0;
    margin: 0;
    left: 0;
}

.label-checkbox{
    width: auto;
    cursor: pointer;
}

label.label-checkbox:before{
    content: '';
    width: 25px;
    height: 25px;
    display: block;
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgBrown) border-box;
    border: 2px solid transparent;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
}
label.label-checkbox.error:before{
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgRed) border-box;
}

input.input-checkbox + label.label-checkbox:after{
    content: '\e911';
    font-family: 'rostok-public-icons';
    width: 18px;
    height: 18px;
    line-height: 1;
    display: none;
    color: #ffffff;
    position: absolute;
    z-index: 1;
    font-size: 18px;
    top: 3.5px;
    left: 3.5px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

input.input-checkbox:checked + .label-checkbox:after{
    display: block;
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
}

input.input-checkbox:checked + label.label-checkbox:before{
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgGreen) border-box;
    border: 2px solid transparent;
}

.label-checkbox span{
    display: block;
    min-height: 25px;
    align-content: center;
    padding-left: 40px;
    font-size: clamp(12px, calc(12px + (16 - 12) * ((100vw - 768px) / (1920 - 768))), 16px);
}

.label-checkbox span a{
    border-bottom: 1px solid var(--colorMain);
}

.system-row{
    width: 100%;
    justify-content: space-between;
    position: relative;
    margin-bottom: 90px;
}

.system-row-error{
    opacity: 0;
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 20px;
    gap: 8px;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.system-row-error.active{
    opacity: 1;
}

.system-row-error i{
    width: 20px;
    height: 20px;
    border-radius: 100%;
    background: var(--bgRed);
    position: relative;
    text-align: center;
}

.system-row-error i:before{
    font-size: 8px;
    color: #ffffff;
    position: absolute;
    z-index: 2;
    line-height: 20px;
    text-align: center;
}

.system-row-error span{
    display: block;
    flex: 1;
    line-height: 20px;
}

.snovaForm{
    box-shadow: var(--shadowMain);
    border-radius: 25px;
    margin: 25px 0 80px;
    padding: 25px;
    position: relative;
}

.snovaForm .form-fields,
.snovaForm .form-field{
    margin-bottom: 0;
}

.snovaForm .form-fields{
    gap: 30px;
}

.snovaForm .form-field button{
    margin: 0 0 0 auto;
}

.snovaForm h2{
    margin-bottom: 40px;
}

.snovaForm .form-field input.hidden-input{
    display: none;
}

.snovaForm .form-fields-btns{
    margin-top: 30px;
}

.snovaForm .form-fields-btns .form-field:first-child{
    max-width: 330px;
}



.snovaForm .files-container {
    margin-top: 20px;
    max-width: 400px;
}

.snovaForm .files-list{
    gap: 6px;
    margin-top: 20px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.snovaForm .file-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    animation: slideIn 0.3s ease;
    gap: 10px;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.snovaForm .file-item span{
    font-size: 14px;
    line-height: 1;
    flex: 1;
}

.snovaForm .file-info {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
}

.snovaForm .file-icon {
    font-size: 20px;
    min-width: 24px;
    text-align: center;
}

.snovaForm .file-name {
    font-size: 14px;
    color: #495057;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}

.snovaForm .file-size {
    font-size: 12px;
    color: #868e96;
    white-space: nowrap;
    margin-right: 10px;
}

.snovaForm .remove-file {
    padding: 0;
    width: 20px;
    height: 20px;
    justify-content: center;
    background: var(--bgRed);
    background-clip: text;
    border: none;
    color: transparent;
    cursor: pointer;
    font-size: 18px;
    padding: 5px 10px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    transition: all 0.2s;
}


.snovaForm .no-files {
    width: 330px;
    color: #868e96;
    padding: 8px;
    text-align: center;
    border: 1px dashed #dee2e6;
    border-radius: 4px;
}

/*---------- стили форм - конец -----------*/

/*--------- ПОПАП АВТОРИЗАЦИИ - начало ----------*/


.auth-popup .form-auth-page{
    max-width: 100%;
}

.auth-popup .form-auth-page input[type="submit"]{
    width: 308px;
    margin: 0 auto;
    display: block;
}

.auth-popup-reg-btn{
    text-align: center;
    margin-top: 25px;
}

.auth-popup-reg-btn a{
    border-bottom: 1px solid var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.auth-popup-reg-btn:hover a{
    border-bottom: 1px solid transparent;
}

.auth-popup-reg-btn a{
    font-size: 16px;
    line-height: 16px;
    color: #583723;
}

.forgotpassword{
    border-bottom: 1px solid var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.forgotpassword:hover{
    border-bottom: 1px solid transparent;
}

.rememberme{
    position: relative;
}

/*--------- ПОПАП АВТОРИЗАЦИИ - конец ----------*/

/*--------- попап статуса заказа - начало ----------*/

.status-popup .form-fields{
    margin-bottom: 0;
}

.status-popup .system-row{
    margin-bottom: 60px;
}

.status-popup .popup-content{
    height: 0;
    opacity: 0;
    z-index: -1;
    position: relative;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.status-popup .popup-content.active{
    height: auto;
    opacity: 1;
    z-index: 1;
}

.status-popup-rows{
    width: 100%;
    height: auto;
    box-shadow: var(--shadowMain);
    border-radius: 30px;
    padding: 25px 20px;
}

.status-popup-row{
    margin-bottom: 20px;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}

.status-popup-row:last-child{
    margin-bottom: 0;
}

.status-popup-row .form-field-title{
    margin-bottom: 0;
}

.status-popup-row div:not(.form-field-title){
    font-size: var(--fontSizeText);
    text-align: right;
}

.status-popup-row.accent div:not(.form-field-title){
    font-family: 'Roboto Medium';
}

.status-popup-row.accent-main div:not(.form-field-title){
    font-family: 'Roboto Medium';
    border-bottom: 1px solid var(--colorOrange);
    color: var(--colorOrange);
}
.status-popup .btn.btn-orange span{
    font-size: var(--fontSizeText);
}
.status-popup .status-popup-row a.brown{

}

/*--------- попап статуса заказа - конец ----------*/

/*--------- попап мобильного меню - начало ----------*/

.mob-menu-popup{
    max-width: 400px;
    height: 100%;
    overflow: hidden;
}

.mob-menu-popup.popup-block{
    padding: 0 0 20px 0;
    z-index: 10000;
}

.mob-menu-popup .popup-header{
    width: 100%;
    height: 125px;
    position: fixed;
    background: #fff;
    z-index: 2;
    margin-bottom: 0;
    padding: 20px 20px 35px;
    top: 0;
    left: 0;
}

.mob-menu-popup .popup-content{
    padding-top: 125px;
    overflow-y: scroll;
    height: 100%;
}

.mob-menu-popup-footer{
    padding: 0 20px;
}

.mob-menu-popup-footer{
    margin-top: 20px;
}

.mob-menu-popup .contacts-block-rows{
    margin: 20px 0;
}

.mob-menu-popup-footer .btn,
.mob-menu-popup .contacts-block-row{
    margin-bottom: 10px;
}

.mob-menu-popup .contacts-block-row *{
    font-size: 18px;
}

.mob-menu-popup .contacts-block-row a{
    margin-bottom: 4px;
}

.mob-menu-popup-footer .btn:last-child,
.mob-menu-popup .contacts-block-row a:last-child{
    margin-bottom: 0;
}

.mob-menu-popup-footer .btn a{
    gap: 8px;
}

.mob-menu-popup-footer .btn a i{
    width: 14px;
    height: 14px;
}

.mob-menu-popup-footer .btn a i:before{
    font-size: 14px;
    line-height: 1;
}

.mob-menu-popup-footer .btn a span{
    display: block;
    font-size: 16px;
    line-height: 1;
}

.mob-menu-popup-footer .btn.btn-green-border a i:before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
}

.mob-menu-popup .logo-block{
    max-height: 70px;
}

.mob-menu-popup .logo-block a{
    display: flex;
}

.mob-menu-popup li *{
    /*font-family: 'Montserrat Alternates';*/
    font-family: 'Roboto Regular';
    font-weight: 400;
}

.mob-menu-popup li{
    list-style: none;
    position: relative;
    display: block;
}


.mob-menu-popup li a{
    width: 100%;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 20px;
    gap: 10px;
    font-size: 16px;
    text-transform: uppercase;
    border-bottom: 2px solid #d7d7d7;
}

.mob-menu-popup li:last-child a{
    border-bottom: 2px solid transparent;
}

.mob-menu-popup li .menu-img{
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.mob-menu-popup li.has-items .sub_menu{
    display: none;
    height: 100%;
}

.mob-menu-popup li.has-items.active .sub_menu{
    display: block;
}

.mob-menu-popup li.has-items a{
    flex: 1;
}

.mob-menu-popup ul > li.active > a,
.mob-menu-popup ul > li.instant-active > a{
    color: #ffffff;
    background: var(--bgGreen);
}

.mob-menu-popup ul > li.active a .menu-img path,
.mob-menu-popup ul > li.instant-active a .menu-img path{
    fill: #ffffff;
}

.hide-menu > li:not(.active){
    display: none;
}

.has-items.active{
    border-bottom: none !important;
}

.has-items-btn{
    width: auto;
    position: absolute;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    top: 17.5px;
    right: 20px;
}

.has-items-btn i:before{
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    font-size: 15px;
}

.has-items-btn span{
    display: none;
    color: #ffffff;
    font-size: 15px;
}

.has-items.active .has-items-btn span{
    display: block;
}

.has-items.active .has-items-btn i:before{
    color: #ffffff;
    background: none;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

/*--------- попап мобильного меню - конец ----------*/


/*---------карточка товара - начало-----------*/

.product-card-wrap > h2{
    display: none;
}

.product-card-wrap{
    gap: 24px;
    align-items: flex-start;
}

.product-card-wrap > div{
    width: calc((100% - 24px)/2);
}

.product-card h2.title{
    gap: 10px;
    margin-bottom: 10px;
    position: relative;
}

.product-card h2.title span{
    width: auto;
    flex: 1;
}

/*.product-card h2.title i{
    width: 40px;
    height: 40px;
    box-shadow: var(--shadowMain);
    border-radius: 100%;
}

.product-card h2.title i:before{
    font-size: 26px;
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
}

.product-card h2.title i:hover:before,
.product-card h2.title i.active:before{
    content: "\e916";
}*/

.product-card h2.title .product-action-btns{
    width: auto;
    position: relative;
    top: 0;
    right: 0;
    gap: 20px;
    justify-content: flex-end;
}

.product-card h2.title .product-action-btn{
    width: 40px;
    height: 40px;
    box-shadow: var(--shadowMain);
    background: #ffffff;
    margin: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.product-card h2.title .product-action-btn:before{
    width: 24px;
    height: 22px;
    font-size: 24px;
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
}

.product-card h2.title .product-action-btn:hover:before{
    background: var(--bgOrange);
    background-clip: text;
}

.product-card h2.title .product-action-btn.active{
    background: var(--bgGreen);
}

.product-card h2.title .product-action-btn.active:before{
    background: #ffffff;
    background-clip: text;
}

.product-card-info{
    margin-top: 14px;
}


.product-card-info-main-rows *,
.product-card-info-row .product-properties .show-all-rows *{
    font-size: var(--fontSizeText);
}

.product-card-info-row:last-child{
    margin-top: 30px;
    gap: 65px 24px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.product-card-info-row:not(.main) *{
    font-size: var(--fontSizeTextSmall);
}

.product-card-info .rating-row{
    margin-right: 30px;
}

.product-card-info-main{
    flex: 1;
}

.product-card-info-row .sale-cards{
    width: 330px;
}

.product-card-info-main-rows{
    margin-bottom: 20px;
}

.product-card-info-main-row{
    gap: 10px;
    margin-bottom: 14px;
}

.product-card-info-main-row:last-child{
    margin-bottom: 0;
}

.product-card-info-main-row i:before{
    color: transparent;
    background: var(--bgBrown);
    background-clip: text;
}

.product-card-info-main-row span{
    flex: 1;
}

.product-card-info-main .product-prices{
    margin: 20px 0 30px;
}

.product-btns > div:first-child{
    margin-bottom: 20px;
}

.product-card-info-main .product-add-count{
    width: 160px;
    height: 50px;
}

.product-card-info .product-properties .show-all-container.show-all-rows .show-row:nth-child(n + 5){
    display: flex;
}

.product-card-info .product-properties .show-all-container.show-all-rows .show-row:nth-child(n + 6){
    display: none;
}

.product-properties{
    width: 100%;
}

.product-properties h2{
    margin-bottom: 20px;
}

.product-properties-wrap *{
    font-size: var(--fontSizeText);
}

.product-property{
    width: 100%;
    align-items: baseline;
    justify-content: space-between;
    position: relative;
    margin-bottom: 10px;
    gap: 0 4px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.product-property:last-child{
    margin-bottom: 0;
}

.product-property:before{
    content: '';
    display: block;
    height: 1px;
    flex-grow: 1;
    order: 1;
    background: var(--colorMain);
    opacity: 0.5;
}

.product-property > div{
    width: auto;
}

.product-property > div.title{
    font-family: 'Roboto Medium';
    font-weight: 600;
}

.product-property > div:not(.title){
    overflow: hidden;
    order: 1;
    text-align: right;
}

/*.product-properties a{
    width: fit-content;
    display: block;
    margin-top: 20px;
    border-bottom: 1px solid var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.product-properties a:hover{
    border-bottom: 1px solid transparent;
}*/

.product-card-content{
    margin: 90px 0;
    position: relative;

}

.product-card-links{
    width: 100%;
    height: 50px;
    background: #ffffff;
    box-shadow: var(--shadowMain);
    border-radius: 30px;
    justify-content: space-between;
    overflow: hidden;
    margin-bottom: 45px;
}

.product-card-links a{
    width: 100%;
    height: 100%;
    padding: 0 30px;
    border-radius: 0;
    text-align: center;
    background: transparent;
    font-size: var(--fontSizeText);
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
    -ms-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

.product-card-links a:hover,
.product-card-links a.active{
    font-weight: 700;
    background: var(--bgGreen);
    color: #ffffff;
}

.product-card-section{
    margin-bottom: 95px;
}

.product-card-section:last-child{
    margin-bottom: 0;
}

.product-card-sections{
    margin-bottom: 95px;
}

.product-card-section .show-all-container{
    margin-bottom: 55px;
}

.product-card-section .show-all-container:last-child{
    margin-bottom: 0;
}

.btn.show-sort{
    width: 100%;
    max-width: 330px;
}

.product-card-section h2{
    margin-bottom: 20px;
}

/** Кастомная стилизация описаний в детальной карточке товара (начало) **/
.product-detail-desc-about-product p{
    margin-top: 10px;
}
.product-detail-desc-about-sort h2,
.product-detail-desc-about-product h2,
.product-detail-desc-about-posadka h2{
    margin-top: 20px;
    font-size: var(--fontSizeH6);
}
.product-detail-desc-about-sort b > span{
    color: var(--colorMain) !important;
    font-size: var(--fontSizeH6) !important;
    display: block;
    margin-top: 15px;
}
.product-detail-desc-about-sort span > b > span{
    display: inline-block;
}
.product-detail-desc-about-sort img[align=left],
.product-detail-desc-about-product img[align=left],
.product-detail-desc-about-posadka img[align=left]{
    margin-right: 20px;
    margin-bottom: 20px;
    margin-top: 20px;
}
.product-detail-desc-about-sort span > img[align=left],
.product-detail-desc-about-product span > img[align=left],
.product-detail-desc-about-posadka span > img[align=left]{
    margin: 0;
}
.product-detail-desc-about-sort img[align=right],
.product-detail-desc-about-product img[align=right],
.product-detail-desc-about-posadka img[align=right]{
    margin-left: 20px;
    margin-bottom: 20px;
    margin-top: 20px;
}
.product-detail-desc-about-sort ol,
.product-detail-desc-about-product ol,
.product-detail-desc-about-posadka ol,
.product-detail-desc-about-sort ul,
.product-detail-desc-about-product ul,
.product-detail-desc-about-posadka ul{
    margin: 15px 0 15px 15px;
    list-style-position: inside;
}
.product-detail-desc-about-posadka .block-important,
.product-detail-desc-about-posadka .block-attention {
    position: relative;
    padding: 15px 15px 15px 88px;
    border-radius: 10px;
    border: 4px solid red;
    margin: 30px 0 30px 0;
    background: transparent none no-repeat 20px center;
    display: block;
    width: 100%;
    clear: both;
}
.product-detail-desc-about-posadka .block-important {
    background-image: url('/local/templates/public/images/icons/_before_template_warning_icon.svg');
    border-color: #ff5a00;
}
.product-detail-desc-about-posadka .block-attention {
    background-image: url('/local/templates/public/images/icons/_before_template_thumbs-up.svg');
    border-color: #00a632;
}
.product-detail-desc-about-posadka .block-important p:last-child,
.product-detail-desc-about-posadka .block-attention p:last-child {
    margin-bottom: 0px;
}
.product-detail-desc-about-posadka .block-important h3,
.product-detail-desc-about-posadka .block-attention h3 {
    margin-bottom: 15px;
}
.product-detail-desc-about-posadka .block-beg {
    background: transparent url('/local/templates/public/images/icons/_before_template_icon-beg.svg') no-repeat left center;
    width: 50px;
    height: 40px;
    float: left;
}
.product-detail-desc-about-posadka  .block-attention.simple,
.product-detail-desc-about-posadka  .block-important.simple {
    background: none;
    padding: 10px;
}
.product-detail-desc-about-sort table,
.product-detail-desc-about-product table,
.product-detail-desc-about-posadka table{
    width: 100%;
    display: block;
    clear: both;
}
.product-detail-desc-about-sort table tbody,
.product-detail-desc-about-product table tbody,
.product-detail-desc-about-posadka table tbody{
    width: 100%;
    display: block;
}
.product-detail-desc-about-sort table tr,
.product-detail-desc-about-product table tr,
.product-detail-desc-about-posadka table tr{
    width: 100%;
    display: flex;
}
.product-detail-desc-about-sort table tr:nth-child(2n+1),
.product-detail-desc-about-product table tr:nth-child(2n+1),
.product-detail-desc-about-posadka table tr:nth-child(2n+1){
    background: #e2e2e2;
}
.product-detail-desc-about-sort table tr td,
.product-detail-desc-about-product table tr td,
.product-detail-desc-about-posadka table tr td{
    width: 100%;
    display: flex;
    padding: 10px 15px;
}
/** Кастомная стилизация описаний в детальной карточке товара (конец) **/

.product-card-bar{
    width: 100%;
    max-width: unset;
    left: 0;
    margin-top: 0;
    border-radius: 0;
    position: fixed;
   /* width: Calc(100% - 40px);*/
    height: 90px;
   /* max-width: 1400px;*/
    z-index: 19;
    top: 0;
    background: #fff;
    -webkit-transform: translateY(-150%);
    -moz-transform: translateY(-150%);
    -ms-transform: translateY(-150%);
    -o-transform: translateY(-150%);
    transform: translateY(-150%);
    box-shadow: var(--shadowMain);
    /*border-radius: 50px;*/
    padding: 15px 0;
    gap: 16px;
   /* margin-top: 25px;*/
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    overflow: hidden;
}

.product-card-bar.active{
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

.product-card-bar-info .image{
    width: 60px;
    height: 60px;
    border-radius: 30px;
    overflow: hidden;
}

/*.product-card-bar-btns{
    gap: 20px;
    width: 470px;
}

.product-card-bar-btns > .product-add-count{
    width: 160px;
    height: 50px;
}*/

.product-card-bar-wrap{
    width: 58%;
    gap: 50px;
    justify-content: flex-end;
}

.product-card-bar-info{
    gap: 15px;
    flex: 1;
}

.product-card-bar-info .title{
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: calc(1.1em * 2);
    font-size: clamp(22px, calc(22px + (26 - 22) * ((100vw - 768px) / (1920 - 768))), 26px);
}

.product-card-bar .product-price.d-flex-center{
    gap: 4px 16px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.product-card-bar .product-price.old span{
    margin-bottom: 0;
}

/*---------карточка товара - конец-----------*/

/*---------слайдер карточки товара - начало-----------*/

.product-card-slider{
    position: relative;
}

.glide.product-main-slider{
    padding: 0;
    margin: 0;
    position: unset;
    margin-bottom: 25px;
}

.glide.product-main-slider .glide__bullets{
    display: none;
}

.product-main-slider .glide__slide{
    width: 100%;
    height: auto;
    max-height: 688px;
    aspect-ratio: 1 / 1;
    border-radius: 25px;
    overflow: hidden;
    opacity: 0;
    transition: none;
}

.product-main-slider .glide__slide.glide__slide--active{
    opacity: 1;
}

.product-main-slider .glide__slide.glide__slide--prev,
.product-main-slider .glide__slide.glide__slide--next{
    opacity: 0;
}

.glide.product-nav-slider{
    width: calc(100% - 130px);
    padding: 0;
    margin: 0 auto;
}

.product-nav-slider .glide__slide{
    width: 170px;
    height: auto;
    aspect-ratio: 1 / 1;
    max-width: 170px;
    max-height: 170px;
    border-radius: 25px;
    overflow: hidden;
    border: 3px solid transparent;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.product-nav-slider .glide__slide.glide__slide--active{
    background: linear-gradient(#ffffff, #ffffff) padding-box, var(--bgOrange) border-box;
}

.product-card-slider .glide__arrows{
    width: 100%;
    bottom: 65px;
}

.product-card-slide{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.product-card-slide img{
    width: 100%;
    height: auto;
}

.product-nav-slider .product-card-slide img{
    width: auto;
    height: 100%;
}

/*---------слайдер карточки товара - конец-----------*/

/*---------мини-карточка товара (слайдеры, каталог) - начало-----------*/

.product-item{
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    border-radius: 25px;
    overflow: hidden;
    box-shadow: var(--shadowMain);
}

.glide__slide-content .product-item{
    border-radius: unset;
    overflow: unset;
    box-shadow: none;
}

.product-item .product-action-btns{
    top: 0px;
    right: 0px;
    width: 70px;
    height: 70px;
}
.product-item .product-action-btns .add-fav-btn{
    padding: 20px;
}

.product-item-img{
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    position: relative;
}

.product-item-img-container {
    width: 100%;
    height: 100%;
    display: flex;
    -webkit-box-align: stretch;
    align-items: stretch;
    position: relative;
}


.product-item-img .img {
    width: 100%;
    height: 100%;
    display: block;
    background-position: center;
    -ms-background-position-x: center;
    -ms-background-position-y: center;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
}

.product-item-img-wrap {
    -webkit-box-flex: 1;
    flex-grow: 1;
    z-index: 2;
}

.product-item-img-container .img {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    z-index: -1;
}

.product-item-img-wrap.child-1 + .img,
.product-item-img-wrap.child-2:hover + .img,
.product-item-img-wrap.child-3:hover + .img,
.product-item-img-wrap.child-4:hover + .img {
    opacity: 1;
    z-index: 1;
}

.sticker-icons{
    position: absolute;
    width: calc(100% - 80px);
    justify-content: flex-start;
    left: 20px;
    bottom: 20px;
    z-index: 2;
    gap: 15px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.sticker-icons:not(.bottom){
    top: 20px;
    bottom: unset;
}

.sticker-icon{
    width: auto;
    height: 30px;
    padding: 0 10px;
    border-radius: 30px;
}

.sticker-icon *{
    font-size: 16px;
    line-height: 1;
    color: #ffffff;
}

/*.sticker-icon.new{
    background: var(--bgGreen);
}

.sticker-icon.new{
    background: var(--bgGreen);
}

.sticker-icon.sale{
    background: var(--bgRed);
}

.sticker-icon.hit{
    background: var(--bgOrange);
}

.sticker-icon.temp{
    background: #ffffff;
    gap: 6px;
}

.sticker-icon.temp i:before,
.sticker-icon.temp span{
    font-family: 'Roboto Medium';
    font-weight: 700;
    color: transparent;
    background: var(--bgBlue);
    background-clip: text;
}

.sticker-icon.temp span{
    font-size: 18px;
}*/

.sticker-icon.transparent{
    box-shadow: 0 4px 10px 5px #00000066;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(6px);
    border-radius: 50px;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.sticker-icon.transparent span{
    font-family: 'Roboto Medium';
}

.product-item-wrap{
    padding: 20px 20px 90px;
}

.product-item > .add-basket-btn-wrap{
    width: Calc(100% - 40px);
    position: absolute;
    left: 20px;
    bottom: 20px;
}
.product-list.horizontal-layout .product-item > .add-basket-btn-wrap{
    right: 20px;
    left: unset;
}
.product-item-name{
    width: 100%;
    height: calc(1.1em * 3);
    /*max-height: calc(1.1em * 3);*/
    text-align: center;
    margin-bottom: 8px;
    font-size: clamp(16px, calc(16px + (24 - 16) * ((100vw - 768px) / (1920 - 768))), 24px);
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -0.02em;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.product-item .rating-row{
    justify-content: flex-start;
    margin-bottom: 12px;
}

.product-item .rating-row-text{
    line-height: 1;
    font-size: clamp(12px, calc(12px + (18 - 12) * ((100vw - 768px) / (1920 - 768))), 18px);
}

.product-item .product-prices{
    width: 100%;
    margin-bottom: 15px;
}

.product-item-info *{
    font-size: var(--fontSizeText);
}

.product-item-info-row{
    margin-bottom: 16px;
}

.product-item-info-row:last-child{
    margin-bottom: 0;
}

.product-item-info-row.d-flex-center{
    justify-content: flex-start;
    gap: 15px;
}

.product-item-info-row i:before{
    color: transparent;
    background: var(--bgBrown);
    background-clip: text;
    font-size: 25px;
}

.product-item-info-row span{
    flex: 1;
}

.product-item .product-price.old span{
    /*font-size: var(--fontSizeTextSmall);*/
    margin-bottom: 0;
}

.slider-block .product-item-info{
    display: none;
}

.slider-block .product-item .product-prices{
    margin-bottom: 0;
}

/*---------мини-карточка товара (слайдеры, каталог) - конец-----------*/

/*---------каталог - начало-----------*/

.sections-sort{
    margin-bottom: 20px;
}

.sections-sort ul{
    width: 100%;
    display: block;
    font-size: 0;
}

.sections-sort ul li{
    width: 50px;
    height: 50px;
    display: inline-block;
    font-size: var(--fontSizeTextMain);
    /*font-weight: 400;*/
    line-height: 1;
    list-style: none;
    margin: 0 -1px 10px 0;
    background: var(--bgGreen);
}

.sections-sort ul li a{
    padding: 10px 4px;
    display: block;
    align-content: center;
    width: Calc(100% - 2px);
    height: Calc(100% - 2px);
    box-sizing: border-box;
    position: relative;
    top: 1px;
    left: 1px;
    text-align: center;
    font-size: var(--fontSizeTextMain);
    color: var(--colorMain);
    background: #ffffff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    text-decoration: none;
}

.sections-sort ul li:hover a,
.sections-sort ul li.active a{
    background: var(--bgGreen);
    color: #fff;
}

.sections-sort ul li:first-child{
    width: 50px;
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}

.sections-sort ul li:first-child a{
    border-top-left-radius: 28px;
    border-bottom-left-radius: 28px;
}

.sections-sort ul li:last-child{
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
}

.sections-sort ul li:last-child a{
    border-top-right-radius: 28px;
    border-bottom-right-radius: 28px;
}

.sections-items{
    margin-top: 30px;
    display: grid;
    grid-template-rows: auto;
    /*grid-template-columns: repeat(3, 1fr);*/
    grid-template-columns: repeat(auto-fit, minmax(230px, calc((100% - 60px)/3)));
    gap: 30px;
}

.sections-items > div{
    width: 100%;
    height: auto;
    max-height: 230px;
    aspect-ratio: 1 / 0.7;
}

.sections-item > a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    border-radius: 25px;
    overflow: hidden;
}

.sections-item-img{
    width: 100%;
    height: 100%;
    position: relative;
}

.sections-item-img:before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: var(--bgBlack);
    z-index: 2;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.sections-item:hover .sections-item-img:before{
    filter: drop-shadow(2px 4px 6px black);
}

.sections-item-name{
    width: Calc(100% - 40px);
    position: absolute;
    left: 20px;
    bottom: 20px;
    z-index: 3;
    color: #ffffff;
}

.sections-item-name h3{
    font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1920 - 768))), 24px);
}

.catalog-page{
    margin-top: 60px;
}

.catalog-page .double-container{
    margin-bottom: 100px;
}

.catalog-menu{
    width: 100%;
}

.catalog-menu-item{
    margin-bottom: 14px;
    border-bottom: 1.5px solid rgb(84 63 46 / 50%);
}

.catalog-menu-item:last-child{
    margin-bottom: 0;
}

.catalog-menu-item:last-child{
    border-bottom: unset;
}

.catalog-menu-item a{
    width: 100%;
    padding-bottom: 14px;
    gap: 10px;
    align-items: center;
}

.catalog-menu-item:last-child a{
    padding-bottom: 0;
}

.catalog-menu-item a img{
    width: 25px;
    height: 25px;
}

.catalog-menu-item a span{
    flex: 1;
    display: block;
    font-size: 18px;
    line-height: 1;
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
}

/*---------каталог - конец-----------*/

/*---------каталог (листинг) - начало-----------*/


.catalog-page h2:not(.h2-slider){
    margin-bottom: 35px;
}

.catalog-filter{
    display: none;
}

.catalog-filter .btn i:before{
    background: var(--bgGreen);
    color: transparent;
    background-clip: text;
}

.catalog-filter span{
    font-size: var(--fontSizeText);
}

.top_filter{
    margin-bottom: 40px;
}

.top_filter-wrap{
    gap: 20px;
}

.catalog-sort{
    flex: 1;
}

.catalog-sort i{
    height: 50px;
    top: 0;
    position: absolute;
    right: 20px;
    z-index: 11;
}

.catalog-sort i:before{
    font-size: var(--fontSizeText);
    color: var(--colorMain);
    z-index: 11;
}

.catalog-sort.active i:before{
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.select-list-container{
    box-shadow: var(--shadowMain);
    border-radius: 30px;
    position: relative;
}

.select-list-container.active{
    border-radius: 0;
    box-shadow: none;
}

.select-list-title{
    height: 50px;
    align-content: center;
    padding: 0 0 0 20px;
    cursor: pointer;
    position: relative;
    z-index: 10;
    font-size: var(--fontSizeText);
}

.select-list ul{
    padding: 50px 20px 20px;
    /*-webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;*/
    height: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: none;
    height: 0;
    opacity: 0;
    -webkit-transition: height 0.3s;
    -moz-transition: height 0.3s;
    -ms-transition: height 0.3s;
    -o-transition: height 0.3s;
    transition: height 0.3s;
    z-index: 7;
}

.select-list-container.active .select-list ul{
    box-shadow: var(--shadowMain);
    height: auto;
    opacity: 1;
    border-radius: 30px;
    z-index: 9;
}

.select-list ul li{
    cursor: pointer;
    list-style: none;
    margin-bottom: 14px;
    text-transform: lowercase;
    font-size: var(--fontSizeText);
}

.select-list ul li::first-letter{
    text-transform: uppercase;
}

.select-list ul li:last-child{
    margin-bottom: 0;
}

.product-list{
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    position: relative;
    z-index: 8;
}

.product-banner{
    grid-column: span 2;
    border-radius: 25px;
}

.section-description{
    margin-top: 60px;
}
.section-description p{
    margin-bottom: 15px;
}
.section-description ul{
    margin: 20px;
}

/*---------каталог (листинг) - конец-----------*/

/*НОВАЯ ТОВАРНАЯ КАРТОЧКА (АЛЬТЕРНАТИВНЫЙ ВИД) - начало*/

.row-layout-container .catalog-sort-title{
    width: Calc(100% - 90px);
}

.row-layout-btns{
    display: none;
}

.row-layout-container .row-layout-btns{
    width: 120px;
    display: flex;
    gap: 20px;
}

.row-layout-btn{
    width: 50px;
    height: 50px;
    cursor: pointer;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.row-layout-btn i:before{
    font-size: 50px;
    color: #D9D9D9;
}

.row-layout-btn.active i:before{
    background: var(--bgGreen);
    color: transparent;
    background-clip: text;
}

.product-list.horizontal-layout{
    grid-template-columns: auto;
}

.horizontal-layout .product-item{
    height: 300px;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}

.horizontal-layout .product-item-img{
    width: 300px;
    position: unset;
}

.horizontal-layout .product-item-wrap{
    flex: 1;
    height: 100%;
}

.horizontal-layout .product-item-name{
    height: auto;
    max-height: calc(1.1em * 2);
    -webkit-line-clamp: 2;
    text-align: left;
}

.horizontal-layout .product-item-name,
.horizontal-layout .product-item .rating-row,
.horizontal-layout .product-item .product-prices{
    width: Calc(100% - 40px);
}

.horizontal-layout .product-item-info{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    gap: 8px 40px;
}

.horizontal-layout .product-item-info-row{
    margin-bottom: 0;
}

.horizontal-layout .product-item > .btn.btn-50{
    left: 320px;
}

.horizontal-layout .sticker-icons{
    width: calc(300px - 40px);
}

.horizontal-layout .btn{
    max-width: 290px;
}

.horizontal-layout .product-banner{
    display: none;
}

/*НОВАЯ ТОВАРНАЯ КАРТОЧКА (АЛЬТЕРНАТИВНЫЙ ВИД) - конец*/

/*ПОПАП ФИЛЬТРА - начало*/

.noUi-target {
    width: Calc(100% - 10px);
    margin: 0 auto;
    height: 2px;
    border: none;
    box-shadow: none;
    background: var(--bgBrown);
    position: relative;
}

.noUi-horizontal .noUi-handle {
    width: 10px;
    height: 10px;
    background: var(--bgGreen);
    box-shadow: none;
    border: none;
    right: -15px;
    border-radius: 100%;
    cursor: pointer;
    position: absolute;
    top: -14.5px;
    margin: 10px;
}

.noUi-handle:before {
    width: 4px;
    height: 4px;
    border-radius: 100%;
    background: #FFFFFF;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.noUi-handle:after {
    display: none;
}

.noUi-connect {
    background: #479AFF;
}

.filter-wrapper{
    float: left;
}

.filter-wrapper aside{
    float: unset;
}

.filter-popup.popup-block{
    width: 100%;
    max-width: 100%;
    position: unset;
    background: none;
    border-radius: unset;
    padding: 0;
    margin-top: 60px;
    -webkit-transform: unset;
    -moz-transform: unset;
    -ms-transform: unset;
    -o-transform: unset;
    transform: unset;
    opacity: 1;
}

.filter-popup .popup-header{
    display: none;
}

.filter-wrap{
    width: 100%;
    position: relative;
    color: var(--colorMain);
}

.filter-popup .title{
    width: 100%;
/*    font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    font-size: var(--fontSizeText);
    line-height: 1;
    margin-bottom: 15px;
    justify-content: flex-start !important;
    position: relative;
}

.filter-popup .title span{
    width: Calc(100% - 24px);
}

.filter-popup .title i{
    width: 10px;
    height: 10px;
    position: absolute;
    top: 4px;
    right: 0;
    cursor: pointer;
    z-index: -1;
    opacity: 0;
}

.filter-block.active .title i{
    z-index: 1;
    opacity: 1;
}

.filter-popup .title i:before{
    font-size: 10px;
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
}

.filter-del-btn span{
    display: none;
}

.filter-block{
    margin-bottom: 34px;
}

.filter-block:last-child{
    margin-bottom: 0;
}

.filter-prop{
    width: 100%;
    justify-content: flex-start !important;
    position: relative;
    margin-bottom: 10px;
}

.filter-prop:last-child{
    margin-bottom: 0;
}

.filter-prop:nth-child(n + 4){
    display: none;
}

.filter-props.open .filter-prop:nth-child(n + 4){
    display: flex;
}

.filter-prop input{
    width: 20px;
    height: 20px;
    top: 0;
    cursor: pointer;
}

.filter-prop label.label-checkbox{
    flex: 1;
}

.filter-prop label.label-checkbox:before{
    width: 20px;
    height: 20px;
    background: transparent;
    border: 2px solid var(--colorMain);
}

input.input-checkbox:checked + .filter-prop label.label-checkbox:before{
    border: 2px solid var(--bgGreen);
    background: var(--bgGreen);
}

.filter-prop label.label-checkbox span{
    width: Calc(100% - 30px);
    padding-left: 30px;
    min-height: 20px;
    font-size: var(--fontSizeFilter);
    font-family: 'Roboto Medium';
}

.filter-prop.icon-active label.label-checkbox span{
    width: Calc(100% - 55px);
    padding-left: 55px;
}

.filter-prop-icon{
    display: none;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 30px;
    top: 0;
}

.filter-prop-icon.colors{
    border-radius: 100%;
    overflow: hidden;
}

.filter-prop.icon-active .filter-prop-icon{
    display: flex;
}

.filter-length-bar-inputs{
    width: 100%;
    /*margin-top: 14px;*/
    margin-top: 22px;
    justify-content: space-between !important;
    flex-wrap: nowrap;
}

.filter-length-bar-inputs div{
    width: 60px;
    height: 30px;
    background: var(--bgGreen);
}

.filter-length-bar-input{
    width: 100%;
    height: 100%;
    position: relative;
    border: none;
    color: var(--colorMain);
    background: none;
    padding: 0;
    display: block;
 /*   font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    text-align: center;
}

.filter-length-bar-input[type='number'] {
    -moz-appearance: textfield;
}

.filter-length-bar-input::-webkit-outer-spin-button,
.filter-length-bar-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

.filter-length-bar-inputs > div{
    width: Calc(50% - 12px);
    max-width: 70px !important;
    height: 30px;
    background: var(--bgGreenLight);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 25px;
}

.filter-row-btn{
    width: 100%;
    /*font-family: 'Montserrat Alternates Bold';*/
    font-family: 'Roboto Medium';
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    color: var(--colorMain);
    margin-top: 18px;
    cursor: pointer;
    justify-content: flex-start !important;
}

.filter-row-btn i{
    width: 16px;
    height: 16px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.filter-row-btn i:before{
    color: inherit;
    font-size: 16px;
}

.filter-row-btn span{
    width: auto;
    max-width: Calc(100% - 26px);
    margin-right: 10px;
}

.filter-row-btn.active i{
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.filter-popup input.input-checkbox + label.label-checkbox:after {
    width: 16px;
    height: 16px;
    left: 2px;
    top: 2px;
    font-size: 16px;
}

.inform-popup input.input-checkbox + label.label-checkbox:after{
    width: 30px;
    height: 30px;
    font-size: 18px;
}

.filter-popup input.input-checkbox:checked + .label-checkbox:after,
.inform-popup input.input-checkbox:checked + label.label-checkbox:after{
    display: flex;
}

.inform-popup.active{
    z-index: 9999999999;
}

.filter-btns{
    width: 100%;
    margin-top: 36px;
}

.filter-btn-show,
.filter-btn-reset{
    display: none;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.filter-btn-show{
    width: 100%;
    background: var(--bgGreen);
    margin-bottom: 15px;
    font-size: var(--fontSizeMenu2);
    color: #FFF;
}

.filter-btn-reset i{
    width: 10px;
    height: 10px;
    margin-right: 10px;
}

.filter-btn-reset i:before{
    font-size: 10px;
    color: var(--colorGrey);
}

.filter-btn-reset span{
    width: auto;
    max-width: Calc(100% - 20px);
    font-size: var(--fontSizeMenu2);
    color: var(--colorGrey);
}

.filter-btns.active .filter-btn-show,
.filter-btns.active .filter-btn-reset
{
    display: flex;
}

.filter-btn-show input{
    width: 100%;
    height: 100%;
    border: unset;
    background: transparent;
    font-size: var(--fontSizeMenu2);
    color: #FFF;
    cursor: pointer;
}

.filter-sticker{
    width: 210px;
    position: absolute;
    top: 100%;
    left: 100%;
    z-index: -1;
    opacity: 0;
    background: #fff;
    padding: 16px 20px;
    box-sizing: border-box;
    box-shadow: var(--shadowMain);
    border-radius: 25px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.filter-sticker.active{
    z-index: 100;
    opacity: 1;
}

.filter-sticker-title{
    width: 100%;
    color: #000;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    line-height: 100%;
    margin-bottom: 12px;
}

.filter-sticker-btn button{
    width: 100%;
    height: 100%;
    background: none;
    color: #fff;
    position: relative;
    font-size: var(--fontSizeFilter);
    line-height: 1;
    text-decoration: none;
    border: none;
    cursor: pointer;
}

/*ПОПАП ФИЛЬТРА - конец*/

/*---------главная - начало-----------*/

.main-block .grid-accent-layout{
    margin-bottom: 40px;
}

.stocks-block .grid-accent-layout-el:not(.main, .bg, .image) .grid-accent-layout-el-wrap .info{
    justify-content: flex-start;
}

/*---------главная - конец-----------*/

/*---------карточка статьи агронома для слайдера - начало-----------*/

.agro-article-img{
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 0.8;
    max-height: 210px;
}

.agro-article-wrap{
    position: relative;
    padding: 20px 20px 86px;
}

.agro-article-wrap .btn{
    width: calc(100% - 40px);
    position: absolute;
    bottom: 20px;
    left: 20px;
}

.agro-article-row{
    justify-content: space-between;
    margin-bottom: 12px;
    gap: 10px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.agro-article-row *{
    font-size: clamp(13px, calc(13px + (16 - 13) * ((100vw - 768px) / (1920 - 768))), 16px);
}

.agro-article-row .date{
    flex: 1;
}

.agro-article-row > div:not(.date){
    width: fit-content;
    justify-content: flex-start;
    gap: 10px;
}

.agro-article-row .views,
.agro-article-row .favs{
    width: fit-content;
    gap: 5px;
}


.agro-article-row .views i:before,
.agro-article-row .favs i:before{
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
}

.agro-article-row .views i:before{
    font-size: 28px;
}

.agro-article-row .favs i:before{
    font-size: 20px;
}

.agro-article-name{
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.1;
    font-size: clamp(16px, calc(16px + (22 - 16) * ((100vw - 768px) / (1920 - 768))), 22px);
    height: calc(1.1em * 2);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*---------карточка статьи агронома для слайдера - конец-----------*/



/*---------популярные вопросы (главная) - начало-----------*/

.faq-items{
    margin-bottom: 40px;
}

.faq-item-wrap{
    box-shadow: var(--shadowMain);
    border-radius: 25px;
    padding: 17px 20px;
    position: relative;
}

.faq-item-wrap:nth-child(n + 7){
    display: none;
}

.faq-item-wrap .title{
    width: calc(100% - 42px);
    font-size: var(--fontSizeH3);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.1;
    height: calc(1.1em * 2);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.faq-item-wrap .image{
    width: 42px;
    height: 42px;
    position: absolute;
    top: 20px;
    right: 20px;
}

.faq-item-wrap .image i:before{
    font-size: 40px;
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
    line-height: 1;
    padding: 1px;
}

.faq-item-row{
    margin-bottom: 13px;
}

.faq-item-row:last-child{
    margin-bottom: 0;
    gap: 10px;
    justify-content: space-between;
}

.faq-item-row-btn{
    width: fit-content;
    border-bottom: 1px solid var(--colorMain);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.faq-item-row-btn:hover{
    border-bottom: 1px solid transparent;
}

.faq-item-row-info{
    gap: 10px;
}

.faq-item-row-info .views,
.faq-item-row-info .favs{
    width: fit-content;
    gap: 5px;
}


.faq-item-row-info .views i:before,
.faq-item-row-info .favs i:before{
    color: transparent;
    background: var(--bgOrange);
    background-clip: text;
}

.faq-item-row-info .views i:before{
    font-size: 28px;
}

.faq-item-row-info .favs i:before{
    font-size: 20px;
}

/*---------популярные вопросы (главная) - конец-----------*/

/*---------о питомнике (главная) - начало-----------*/

.about-block-wrap:not(.double) .image{
    width: 100%;
    height: 100%;
    border-radius: 25px;
}

.about-block-wrap.double{
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: repeat(2, 1fr);
    gap: 30px;
}

.about-block-row-item .image{
    width: 100%;
    height: 100%;
    border-radius: 25px;
}

.about-block-row-item:first-child{
    align-content: center;
    padding: 20px 0 20px 20px;
}

.about-block-row-item .title{
    max-height: calc(1.1em * 3);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.02em;
    font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1920 - 768))), 24px);
    margin-bottom: 8px;
}

.about-block-row-item .desc{
    max-height: calc(1.1em * 3);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 400;
    line-height: 1.1;
    font-size: clamp(16px, calc(16px + (18 - 16) * ((100vw - 768px) / (1920 - 768))), 18px);
}

.about-block-row{
    box-shadow: var(--shadowMain);
    border-radius: 25px;
}

.about-block-row:not(.grid-col-2){
    padding: 20px;
    gap: 15px 30px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}


.about-block-row-el .title{
    height: calc(1.1em * 1);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    color: transparent;
    background: var(--bgGreen);
    background-clip: text;
    font-weight: 700;
    line-height: 1.1;
    font-size: clamp(32px, calc(32px + (42 - 32) * ((100vw - 768px) / (1920 - 768))), 42px);
    margin-bottom: 4px;
}

.about-block-row-el .desc{
    height: calc(1.1em * 1);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.02em;
    font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1920 - 768))), 24px);
}

/*---------о питомнике (главная) - конец-----------*/

/*---------страница "спасибо за заказ" - начало-----------*/

main.order-final-page > .container > h1{
    display: none;
}

.order-final-block > .grid-col-2{
    grid-template-columns: 1fr 268px;
    aspect-ratio: 1 / 0.25;
    max-height: 280px;
    width: 100%;
}

.order-final-steps{
    width: 100%;
    align-items: flex-start;
}

.order-final-step{
    position: relative;
    flex: 1;
}

.order-final-step.current:before,
.order-final-step.current:after{
    content: '';
    width: 128px;
    height: 2px;
    display: block;
    border-radius: 5px;
    position: absolute;
    top: 63px;
}

.order-final-step.current:before{
    background: var(--bgGreen);
    left: -76px;
}

.order-final-step.current:after{
    background: var(--colorGreyBase);
    right: -76px;
}

/*.order-final-step:not(.complete) .order-final-step-icon:before{
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    border-radius: 5px;
    background: var(--colorGreyBase);
    position: absolute;
    left: -100%;
}

.order-final-step.current .order-final-step-icon:before{
    background: var(--bgGreen);
    left: calc(-100% - 21px);
}*/


.order-final-step-icon{
    width: 128px;
    height: 128px;
    margin: 0 auto 20px;
    position: relative;
}

.order-final-step-icon i{
    width: 80px;
    height: 80px;
    margin: 0 auto;
}

.current .order-final-step-icon i{
    width: 100px;
    height: 100px;
}

.order-final-step-icon i:before{
    font-size: 80px;
    color: transparent;
    background: var(--colorGreyBase);
    background-clip: text;
}

.complete .order-final-step-icon i,
.current .order-final-step-icon i{
    border-radius: 100%;
    background: var(--bgGreen);
}

.complete .order-final-step-icon i:before,
.current .order-final-step-icon i:before{
    background: #ffffff;
    background-clip: text;
}

.complete .order-final-step-icon i:before{
    font-size: 44px;
}

.current .order-final-step-icon i:before{
    font-size: 50px;
    z-index: 2;
}

.current .order-final-step-icon i:after{
    content: '';
    width: 128px;
    height: 128px;
    background: var(--bgGreen);
    opacity: 50%;
    position: absolute;
    border-radius: 100%;
    z-index: 1;
    left: 0;
    top: 0;
}

.order-final-step-text .title,
.order-final-step-text .subtitle{
    text-align: center;
    line-height: 1;
}

.order-final-step-text .title{
    text-align: center;
    font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1920 - 768))), 24px);
    line-height: 1;
}

.order-final-step-text .subtitle{
    margin-top: 5px;
    font-size: clamp(16px, calc(16px + (18 - 16) * ((100vw - 768px) / (1920 - 768))), 18px);
}

.order-final-block .shadow-block-el.bg h3{
    padding-top: 0;
}

.order-final-block .shadow-block-el.btn-block{
    align-content: end;
}

.order-final-block > .shadow-block > .shadow-block-el:not(.btn-block){
    align-content: center;
}

.order-final-detail{
    margin-bottom: 30px;
}

.order-pay-online{
    max-width: 330px;
    margin: 40px auto 80px;
}

.order-final-detail-row{
    margin-bottom: 13px;
}

.order-final-detail-row:last-child{
    margin-bottom: 0;
}

.order-final-block .accent-block{
    margin-top: 35px;
}

.order-final-block .accent-block .grid-col-2{
    gap: 25px 30px;
}

.order-final .attention-block{
    box-shadow: var(--shadowMain);
    margin: 30px 0 40px;
}

.order-pay-online-advantages.shadow-block{
    margin-bottom: 40px;
}

.order-pay-online-advantages .title{
    font-size: clamp(26px, calc(26px + (32 - 26) * ((100vw - 768px) / (1920 - 768))), 32px);
    line-height: 1;
    letter-spacing: -0.02em;
    margin-bottom: 30px;
}
.btn-pay-dublicate-btn{
    color: var(--colorOrange);
    text-decoration: underline;
    margin-left: 20px;
}
/*---------страница "спасибо за заказ" - конец-----------*/


/*---------попап "товар добален в корзину" - начало-----------*/

.add-basket-popup .popup-close-btn{
    top: 30px;
    right: 30px;
}

.add-basket-popup .popup-content{
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 330px;
    gap: 60px 24px;
}

.add-basket-popup .popup-product-info{
    width: 100%;
    max-width: 650px;
    gap: 40px;
    justify-content: flex-start;
}

.popup-product-info .product-item-img{
    border-radius: 25px;
    overflow: hidden;
    width: 202px;
}

.popup-product-info .product-item-img img{
    width: 100%;
}

.popup-product-info .popup-product-detail{
    width: calc(100% - 242px);
}

.add-basket-popup .popup-footer{
    width: 100%;
    position: relative;
}

.popup-product-info .product-item-name{
    height: auto;
    max-height: calc(1.1em * 2);
    text-align: left;
    margin-bottom: 24px;
    -webkit-line-clamp: 2;
    font-size: clamp(24px, calc(24px + (26 - 24) * ((100vw - 768px) / (1920 - 768))), 26px);
}

.popup-product-info .product-prices{
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    margin-bottom: 24px;
    gap: 10px;
}

.popup-product-info .product-price.old span{
    margin-bottom: 0;
    font-size: clamp(18px, calc(18px + (22 - 18) * ((100vw - 768px) / (1920 - 768))), 22px);
}

.popup-product-info .product-add-count{
    max-width: 185px;
}

.add-basket-popup .popup-footer-btn{
    margin-top: 20px;
}

.add-basket-popup .popup-footer-btn:first-child{
    margin-top: 0;
}

.add-basket-popup .basket-result{
    margin-top: 35px;
}

.add-basket-popup .basket-result,
.add-basket-popup .basket-result *{
    font-size: 22px;
}

.popup-product-info .product-price.new span,
.popup-product-info .product-price:not(.old) span{
    font-weight: 700;
    font-size: clamp(26px, calc(26px + (32 - 26) * ((100vw - 768px) / (1920 - 768))), 32px);
    letter-spacing: -0.015em;
}
.add-basket-popup .slider-block{
    grid-column: span 2;
    margin-bottom: 0;
}

.add-basket-popup .popup-footer .btn.btn-green *,
.add-basket-popup .popup-footer .btn.btn-white *{
    font-size: 18px;
}

/*---------попап "товар добален в корзину" - конец-----------*/



