/* ============================================================
   ТЕМА ЛЕНДИНГА
   --lp-accent* приходит из index.php (основной цвет товара из ti-home).
   Значения ниже — запасные, если цвет у товара не задан.
   ============================================================ */
:root{
  --lp-accent:       #db8228;
  --lp-accent-light: #e0913f;
  --lp-accent-dark:  #9e5d1d;
  --lp-accent-rgb:   219,130,40;

  /* цена со скидкой — приглушённый красный, не сигнальный */
  --lp-price-sale:    #d24234;

  --lp-gutter:        5px;
  --lp-radius:        20px;
  --lp-shadow-sm:     0 2px 6px rgba(20,20,30,.06), 0 8px 20px rgba(20,20,30,.07);
  --lp-shadow-md:     0 4px 10px rgba(20,20,30,.07), 0 14px 32px rgba(20,20,30,.10);
  --lp-shadow-accent: 0 6px 16px rgba(var(--lp-accent-rgb),.30), 0 14px 30px rgba(var(--lp-accent-rgb),.18);

  /* галочка списков — вместо удалённой images/tick.svg */
  --lp-tick: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M7.6 14.3 3.3 10l1.4-1.4 2.9 2.9 7.7-7.7L16.7 5z'/%3E%3C/svg%3E");
}

/* Страница свёрстана под фиксированную ширину (viewport width=480),
   поэтому мобильные браузеры после тапа ждут ~300 мс: вдруг это
   двойной тап для зума. Из-за этой паузы кнопки количества
   отзывались с задержкой. Говорим явно, что двойного тапа тут нет —
   нажатие срабатывает сразу, щипковый зум при этом остаётся. */
a,
button,
select,
label,
input[type="submit"],
.button,
.qty-tile,
.cs-qty__btn,
.thx-card,
.thx-dot{
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

    /* order steps 1 */
.ftco-section
{
    padding: 0 30px;
}



.otzv{
        background: #ffffff;
    padding: 13px 10px 50px;
    border-radius: 20px;
    width: 90%;
    margin: -20px auto 0px;
    box-shadow: 0 0 8px #00000012;
}

.pp {
    padding: 10px 10px 0;
    font-weight: 500;
    font-size: 25px;
    line-height: 27px;
    text-align: center;
    text-transform: uppercase;
    color: #565656;
    margin-top: 0px;
    margin-bottom: 10px;
    font-weight: 700;

}
.radio_form {
    display: flex
;
    justify-content: center;
    align-items: center;
    color: #fff;
    padding: 0px 0px 20px;
    height: 120px;
}
.checkbox {
    position: absolute;
    z-index: -1;
    opacity: 0;
}
.custom-checkbox+label {
    display: inline-flex;
    align-items: center;
    user-select: none;
    flex-direction: column;
    text-transform: uppercase;
    /* margin-right: 10px; */
       margin: 1px 59px;
    box-shadow: 0px 0px 3px 0px #00000054;
}

.color_box1 {
    width: 65px;
    height: 65px;
    background: #ffc701;
    border-radius: 5px;
    line-height: 50px;
}
.custom-checkbox:checked+label::before {
    border-color: #0b76ef;
    background-color: #35ada2;
    box-shadow: 0 0 2px 0px #00000052;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox+label::before {
    content: '';
    display: inline-block;
    width: 47px;
    height: 47px;
    flex-shrink: 0;
    flex-grow: 0;
    /* border: 1px solid #adb5bd; */
    border-radius: 0.25em;
    margin: 14%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 60% 60%;
}

.pf {
    padding: 20px 10px 0;
    font-weight: 400;
    font-size: 25px;
    line-height: 27px;
    text-align: center;
    text-transform: uppercase;
    color: #565656;
    margin-top: 30px;
    font-weight: 700;

}
.big-button {
    display: flex
;
    align-items: center;
    justify-content: center;
    background: linear-gradient(325deg, #1d4946, #64cdc0);
    border-radius: 25px;
    min-height: 70px;
    font-size: 25px;
    margin: 10px auto;
    font-weight: 700;
    color: #fff;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .6);
    text-decoration: none;
    box-shadow: var(--cr-shadow);
    border: none;
    text-transform: uppercase;
    width: 400px;
    cursor: pointer;
    text-shadow: 0 0 1px black;
    box-shadow: 0 0 7px #00000045;
}






















.order_steps1 {
  padding: 0;
  background: #fff;
  position: relative;
}




.button {
    display: block;
    max-width: none;
    height: 66px;
    border: none;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .22);
    box-shadow: var(--lp-shadow-accent);
    background: linear-gradient(160deg, var(--lp-accent-light), var(--lp-accent));
    transition: transform .12s ease, box-shadow .2s ease;
    font-family: "AvenirNextCyr", sans-serif;
    font-weight: 700;
    font-size: 21px;
    line-height: 66px;
    letter-spacing: 1px;
    color: #ffffff;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    border-radius: 20px;
}

.button:hover{
    box-shadow: 0 8px 20px rgba(var(--lp-accent-rgb), .38), 0 18px 40px rgba(var(--lp-accent-rgb), .22);
}
.button:active{ transform: translateY(1px); }





@keyframes blink {
    from {
        opacity: 1;
    }
    to {
        opacity: 0.5;
    }
}


.form{
    box-sizing: border-box;
    width: 100%;
    margin: 18px 0 0;
    padding: 0;
    background: none;
    border-radius: 0;
    box-shadow: none;
}


.otz{
    color: #fff;
}




section.dark_theme {
    color: #fff;
}


.video {
    margin: 0 auto;
    width: 100%;
}

.video .player {
    border-radius: 14px;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    height: auto;
    background: #ffffff00;
    text-align: center;
        box-shadow: 0 0 11px #000000cc;

}


.order_steps1:before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0)), to(rgba(2,2,2,0.1)));
  background-image: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  background-image: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  background-image: -o-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  background-image: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  top: 0;
}

.order_steps1:after {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(255,255,255,0)), to(rgba(2,2,2,0.1)));
  background-image: -webkit-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  background-image: -moz-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  background-image: -o-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  background-image: linear-gradient(to top, rgba(255,255,255,0) 0%, rgba(2,2,2,0.1) 100%);
  bottom: 0;
}

.order_steps1 .step_item {
  display: table;
  width: 100%;
  height: 110px;
  background: #fff url(../images/bg_light.jpg);
  position: relative;
}

.order_steps1 .step_item:before {
  display: block;
  content: '';
  width: 100%;
  height: 25px;
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(255,255,255,0)), to(rgba(2,2,2,0.05)));
  background-image: -webkit-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.05) 100%);
  background-image: -moz-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.05) 100%);
  background-image: -o-linear-gradient(bottom, rgba(255,255,255,0) 0%, rgba(2,2,2,0.05) 100%);
  background-image: linear-gradient(to top, rgba(255,255,255,0) 0%, rgba(2,2,2,0.05) 100%);
  position: absolute;
  top: 0;
  left: 0;
}

.order_steps1 .step_item .step_wrapper {
  display: table-cell;
  vertical-align: middle;
  padding: 0 300px 0 30px;
  position: relative;
}

.order_steps1 .step_item:nth-child(even) .step_wrapper {
  padding: 0 25px 0 300px;
}

.order_steps1 .step_item:nth-child(1) .step_wrapper {
  background: url(../images/order_steps1__step1_image.png) right center no-repeat;
}

.order_steps1 .step_item:nth-child(2) .step_wrapper {
  background: url(../images/order_steps1__step2_image.png) left center no-repeat;
}

.order_steps1 .step_item:nth-child(3) .step_wrapper {
  background: url(../images/order_steps1__step3_image.png) right center no-repeat;
}

.order_steps1 .step_item:nth-child(4) .step_wrapper {
  background: url(../images/order_steps1__step4_image.png) left center no-repeat;
}

.order_steps1 .step_item img {
  display: block;
  width: 72px;
  height: 52px;
  position: absolute;
  top: 50%;
  margin-top: -26px;
  left: 50%;
  margin-left: -36px;
}

.order_steps1 .step_item h4 {
  font-weight: 700;
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
}

.order_steps1 .step_item p {
  line-height: 20px;
}
/* styles */
@import url("../css2.html");
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Bold.woff2') format('woff2'),
        url('../fonts/Gilroy-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Black.woff2') format('woff2'),
        url('../fonts/Gilroy-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-HeavyItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-HeavyItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ExtraBoldItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-ExtraBoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Medium.woff2') format('woff2'),
        url('../fonts/Gilroy-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Heavy.woff2') format('woff2'),
        url('../fonts/Gilroy-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Light.woff2') format('woff2'),
        url('../fonts/Gilroy-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-SemiBold.woff2') format('woff2'),
        url('../fonts/Gilroy-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-BoldItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Regular.woff2') format('woff2'),
        url('../fonts/Gilroy-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-BlackItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-BlackItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-MediumItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy-RegularItalic';
    src: url('../fonts/Gilroy-RegularItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-RegularItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-LightItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ExtraBold.woff2') format('woff2'),
        url('../fonts/Gilroy-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-SemiBoldItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-UltraLight.woff2') format('woff2'),
        url('../fonts/Gilroy-UltraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ThinItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-ThinItalic.woff') format('woff');
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-UltraLightItalic.woff2') format('woff2'),
        url('../fonts/Gilroy-UltraLightItalic.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Thin.woff2') format('woff2'),
        url('../fonts/Gilroy-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

.title span{
  color:#fb6d2e;
}

.element p{

  margin: 10px 20px;

}

.element h2{
  margin: 40px 0 20px 0!important;
}

.element{
  padding:0px!important;
}
/* .description_section больше не оборачивает контент — оставлено для старых блоков */

body {
  min-width: 480px;
  margin: 0;
  background: #f2f3f5;
  font-family: "Gilroy", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #333!important;
  cursor: default;
}

.payment-form .pf-options {
    display: flex;
    flex-direction: column;
    position: relative;
}

.pf-option.active .pf-content {
    display: block;
    border-radius: 0 0 6px 6px;
}

.pf-option .pf-content {
    text-align: center;
    box-sizing: border-box;
    width: 100%;
    zoom: 1;
    position: relative;
    background-color: #fafafa;
    font-size: 14px;
    font-weight: 500;
    font-family: inherit;
    min-height: 100px;
    padding: 5px;
}

.pf-option .pf-content p {
    margin: 0 10px 15px;
    line-height: 1.8;
    font-size: 16px;
    color: #7a7a7a;
    font-style: italic;
}

.pf-option:first-child .pf-header {
    border-radius: 6px 6px 0 0;
}

.pf-option.active .pf-header {
    border-radius: 0;
    border-color: #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
}

.pf-option .pf-header {
    position: relative;
    cursor: pointer;
    display: flex;
    background-color: #fff;
    color: inherit;
    padding: 10px;
    font-size: 14px;
    font-weight: 600;
    font-family: inherit;
    min-height: 44px;
    align-items: center;
    text-align: start;
}

.pf-option .pf-header input {
    width: 18px;
    height: 18px;
    transition: all .2s ease-in-out;
    position: relative;
    cursor: pointer;
    padding: 0;
    margin: 0 10px;
    box-shadow: 0 0 0 0 #f4743c inset;
    outline: 0;
    border-radius: 50%;
    color: inherit;
    font: inherit;
    -webkit-appearance: none;
    -webkit-font-smoothing: inherit;
    background: 0 0;
    line-height: normal;
    border: 1px solid #d9d9d9;
}






.main_wrapper {
  margin: 0 auto;
  width: 100%;
  max-width: 480px;
  background: transparent;
}

section {
  padding: 30px 0;
}

/* секции единой сетки свой паддинг задают сами */
section.lp-section { padding: 18px; }


.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/* Базовое правило для картинок — нейтральное.
   Раньше здесь висели border-radius: 20px, margin: 10px auto,
   тяжёлая тень и max-width: 96%. Они прилетали КАЖДОЙ картинке на сайте
   и ломали вёрстку в блоках, где у фото своя геометрия. Скругление,
   тень и отступы теперь задаёт тот блок, которому они нужны. */
img {
  max-width: 100%;
  height: auto;
}

b {
  font-weight: 700;
}

.owl-height {
  -webkit-transition: height 0.3s ease-in-out;
  -o-transition: height 0.3s ease-in-out;
  -moz-transition: height 0.3s ease-in-out;
  transition: height 0.3s ease-in-out;
}

/* button */


/* titles */

h2.title {
  margin: 0 0 30px;
  font-weight: 700;
  font-size: 30px;
  line-height: 36px;
  text-align: center;
      color: #fff;
  text-transform: uppercase;

}

/* header */

.offer_section {
  padding: 0 0 ;
}

.offer_section.offer1 {
  background: #333;
}

.offer_section .title_block {
  text-transform: uppercase;
  text-align: center;
}

.offer_section.offer3 .title_block {
  display: flex;
  flex-direction: column;
  padding: 15px 10px 7px 15px;
  background: #036ee6;
  color: #fff;
  text-align: center;
}

.offer_section .title_block .main_title {
  font-weight: 700;
  font-size: 35px;
  line-height: 47px;
  text-align: center;
}

.offer_section.offer1 .title_block .main_title {
  padding: 12px 0;
  background: #41944b;
  color: #fff;
}

.offer_section.offer2 .title_block .main_title {
  padding: 12px 0;
}

/* .offer_section.offer3 .title_block .main_title {
  margin: 0 0 5px;
} */

.offer_section .title_block .subtitle {
    letter-spacing: 1px;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    text-transform: uppercase;
    text-align: center;
    /* margin-left: -11px; */
    width: 100%;
    padding-bottom: 6px;
}

.offer_section.offer1 .title_block .subtitle {
  padding: 10px 0;
  color: #fff;
}

.offer_section.offer2 .title_block .subtitle {
  padding: 10px 0;
  background: #41944b;
  color: #fff;
}

.offer_section .offer_image {
  display: block;
}

.offer_image,
.description_section .text_block img{
  border-radius: var(--lp-radius);
  box-shadow: var(--lp-shadow-sm);
}

.offer_section.offer3 .image_block {
  position: relative;
}

.offer_section.offer3 .discount_block {
  padding: 18px 0 0;
  width: 79px;
  height: 101px;
  background: url("../images/offer3__discount_bg.png") center no-repeat;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 0;
  right: 20px;
}

.offer_section.offer3 .discount_block .value {
  font-weight: 700;
  font-size: 24px;
  line-height: 24px;
}

.offer_section.offer3 .discount_block .text {
  line-height: 20px;
}

.offer_section.offer1 .price_block {
  background: #fff;
  text-align: center;
}

.offer_section.offer1 .price_item {
  float: left;
  padding: 16px 0 0;
  width: 170px;
  height: 80px;
}

.offer_section.offer1 .price_item.new {
  background: #41944b;
  color: #fff;
}

.offer_section.offer1 .price_item .text {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 14px;
}

.offer_section.offer1 .price_item .value {
  font-weight: 700;
  font-size: 28px;
  line-height: 28px;
}

.offer_section.offer1 .price_item.old .value {
  text-decoration: line-through;
}

.offer_section.offer1 .discount_block {
  float: left;
  padding: 12px 0 0;
  width: 140px;
  height: 80px;
  background: #ffd800;
  position: relative;
}

.offer_section.offer1 .discount_block:before,
.offer_section.offer1 .discount_block:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
}

.offer_section.offer1 .discount_block:before {
  border-top: 40px solid #ffd800;
  border-bottom: 40px solid #ffd800;
  border-left: 20px solid #fff;
  left: -10px;
}

.offer_section.offer1 .discount_block:after {
  border-top: 40px solid #41944b;
  border-bottom: 40px solid #41944b;
  border-left: 20px solid #ffd800;
  right: -10px;
}

.offer_section.offer1 .discount_block .text {
  margin: 0 0 5px;
  line-height: 16px;
  letter-spacing: 2px;
}

.offer_section.offer1 .discount_block .value {
  font-weight: 700;
  font-size: 34px;
  line-height: 34px;
}

.offer_section.offer2 .price_block {
  margin: -16px 0 25px;
  height: 126px;
  background: url("../images/offer2__price_bg.png")
    center no-repeat;
  text-align: center;
  position: relative;
}

.offer_section.offer2 .price_item {
  float: left;
  padding: 40px 0 0;
  width: 170px;
}

.offer_section.offer2 .price_item .text {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 14px;
  text-transform: uppercase;
}

.offer_section.offer2 .price_item .value {
  font-size: 34px;
  line-height: 34px;
}

.offer_section.offer2 .price_item.old .value {
  text-decoration: line-through;
}

.offer_section.offer2 .price_item.new .value {
  font-weight: 700;
}

.offer_section.offer2 .discount_block {
  float: left;
  padding: 33px 0 0;
  width: 140px;
  font-weight: 700;
  color: #fff;
}

.offer_section.offer2 .discount_block .text {
  margin: 0 0 5px;
  font-size: 24px;
  line-height: 24px;
  letter-spacing: 2px;
}

.offer_section.offer2 .discount_block .value {
  font-size: 40px;
  line-height: 40px;
}

.offer_section.offer3 .price_block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  margin: 16px 0 0;
  padding: 14px 4px 0;
  border-top: 1px solid #eceef0;
}

.offer_section.offer3 .price_item {
  float: none;
  padding: 0;
  width: auto;
  /* height: 90px; */
  text-align: left;
color: #1a1a1ac7;

}
.offer_section.offer3 .price_item.old {
    width: auto;
}
.offer_section.offer3 .price_item:last-child {
  border: none;
}

.offer_section.offer3 .price_item.new {
  padding-top: 0;
  float: none;
  text-align: right;
}

.offer_section.offer3 .price_item.new .text {
  margin: 0 0 5px;
  color: #202020;
}
.offer_section.offer3 .price_item .text {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 14px;
}

.offer_section.offer3 .price_item.new .text {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.offer_section.offer3 .price_item.new .text span {
  padding: 5px 14px;
  border-radius: 999px;
  background: var(--lp-accent);
  color: #fff;
  font-weight: 400;
  line-height: 12px;
}

.offer_section.offer3 .price_item.old .value {
  font-weight: 700;
  font-size: 39px;
  line-height: 30px;
  text-decoration: line-through;
    color: #636363c7;
}

.sale_price {
  font-style: normal;
  font-weight: 400;
  font-size: 10px;
  line-height: 12px;

  color: #202020;
}

.offer_section.offer3 .price_item.new .value {
  font-weight: 700;
  font-size: 45px;
  line-height: 51px;

  color: #1e1e1ee3;
}

.offer_section ul,
.description_section ul {
      margin: 25px 0;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: center;
}

.offer_section.offer1 ul:after {
  display: block;
  content: "";
  margin: 25px 0 0;
  height: 8px;
  background: url("../images/offer1__separator.png")
    center no-repeat;
}
/* description_section */
.offer_section ul li,
.description_section ul li
 {
  position: relative;
  margin: 0 17px 12px;
  padding: 0 0 0 32px;
  flex: 1 0 40%;
  max-width: 85%;
  background-size: 20px;
      text-align: left;
}

.offer_section.offer1 ul li {
  color: #fff;
}

/* .offer_section ul li:last-child {
    margin: 0 40px;
} */

.offer_section.offer1 .timer_block {
  margin: 25px auto;
  width: 400px;
  color: #fff;
  text-align: center;
}

.offer_section.offer1 .timer_block p {
  margin: 0 0 15px;
  font-size: 18px;
  line-height: 18px;
}

.offer_section.offer1 .timer_item {
  float: left;
  margin: 0 32px 0 0;
  width: 112px;
  position: relative;
}

.offer_section.offer1 .timer_item:last-child {
  margin: 0;
}

.offer_section.offer1 .timer_item:before {
  display: block;
  content: ":";
  width: 32px;
  font-weight: 700;
  font-size: 36px;
  line-height: 52px;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 0;
  right: -32px;
}

.offer_section.offer1 .timer_item:last-child:before {
  display: none;
}

.offer_section.offer1 .timer_item .count {
  margin: 0 0 10px;
  height: 60px;
  font-weight: 700;
  font-size: 25.2782px;
  line-height: 31px;
}

.offer_section.offer1 .timer_item .count span {
  display: block;
  float: left;
  margin: 0 4px 0 0;
  width: 54px;
  height: 60px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background-image: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(rgba(0, 0, 0, 0.3)),
    color-stop(50%, rgba(0, 0, 0, 0.3)),
    color-stop(50%, #4a4a4a),
    color-stop(51%, #4a4a4a),
    color-stop(51%, rgba(0, 0, 0, 0.3)),
    to(rgba(0, 0, 0, 0.3))
  );
  background-image: -webkit-linear-gradient(
    bottom,
    rgba(0, 0, 0, 0.3) 0%,
    rgba(0, 0, 0, 0.3) 50%,
    #4a4a4a 50%,
    #4a4a4a 51%,
    rgba(0, 0, 0, 0.3) 51%,
    rgba(0, 0, 0, 0.3) 100%
  );
  background-image: -moz-linear-gradient(
    bottom,
    rgba(0, 0, 0, 0.3) 0%,
    rgba(0, 0, 0, 0.3) 50%,
    #4a4a4a 50%,
    #4a4a4a 51%,
    rgba(0, 0, 0, 0.3) 51%,
    rgba(0, 0, 0, 0.3) 100%
  );
  background-image: -o-linear-gradient(
    bottom,
    rgba(0, 0, 0, 0.3) 0%,
    rgba(0, 0, 0, 0.3) 50%,
    #4a4a4a 50%,
    #4a4a4a 51%,
    rgba(0, 0, 0, 0.3) 51%,
    rgba(0, 0, 0, 0.3) 100%
  );
  background-image: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.3) 0%,
    rgba(0, 0, 0, 0.3) 50%,
    #4a4a4a 50%,
    #4a4a4a 51%,
    rgba(0, 0, 0, 0.3) 51%,
    rgba(0, 0, 0, 0.3) 100%
  );
  -webkit-box-shadow: inset 0 -2px 0 #4a4a4a;
  -moz-box-shadow: inset 0 -2px 0 #4a4a4a;
  box-shadow: inset 0 -2px 0 #4a4a4a;
}

.offer_section.offer1 .timer_item .count span:last-child {
  margin: 0;
}

.offer_section.offer1 .timer_item .text {
  line-height: 16px;
}

.offer_section.offer2 .timer_block {
  margin: 0 auto 25px;
  width: 400px;
  text-align: center;
}

.offer_section.offer2 .timer_block p {
  margin: 0 0 15px;
  font-weight: 700;
  font-size: 18px;
  line-height: 18px;
}

.offer_section.offer2 .timer_item {
  float: left;
  margin: 0 32px 0 0;
  width: 112px;
  position: relative;
}

.offer_section.offer2 .timer_item:last-child {
  margin: 0;
}

.offer_section.offer2 .timer_item:before {
  display: block;
  content: ":";
  width: 32px;
  font-weight: 700;
  font-size: 36px;
  line-height: 52px;
  color: #41944b;
  text-align: center;
  position: absolute;
  top: 0;
  right: -32px;
}

.offer_section.offer2 .timer_item:last-child:before {
  display: none;
}

.offer_section.offer2 .timer_item .count {
  margin: 0 0 6px;
  height: 60px;
  font-weight: 700;
  font-size: 36px;
  line-height: 60px;
  color: #41944b;
}

.offer_section.offer2 .timer_item .count span {
  display: block;
  float: left;
  margin: 0 4px 0 0;
  width: 54px;
  height: 60px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #f5f5f5;
}

.offer_section.offer2 .timer_item .count span:last-child {
  margin: 0;
}

.offer_section.offer2 .timer_item .text {
  line-height: 16px;
}

.offer_section.offer3 .timer_block {
  padding: 23px 10px 7px 20px;
  margin-bottom: 25px;
}

.offer_section.offer3 .timer_block p {
  float: left;
  margin: 6px 0 0;
  padding: 0 0 0 45px;
  width: 170px;
  background: url("../images/offer_benefit3.svg") left center no-repeat;
  background-size: contain;
  font-size: 14px;
  line-height: 16px;
}

.offer_section.offer3 .timer {
  float: right;
  border-bottom: 2px solid;
  padding-bottom: 8px;
}

.offer_section.offer3 .timer_item {
  float: left;
  width: 60px;
  text-align: center;
  margin-right: 10px;
}
.offer_section.offer3 .timer_item:last-child{
    margin-right: 0;
}
.offer_section.offer3 .timer_item .text {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 12px;
}

.offer_section.offer3 .timer_item .count {
  font-weight: 700;
  font-size: 40px;
  line-height: 30px;
  position: relative;
}

.offer_section.offer3 .timer_item .count:before {
  display: block;
  content: ":";
  width: 10px;
  line-height: 24px;
  position: absolute;
  top: 0;
  right: -8px;
}

.offer_section.offer3 .timer_item:last-child .count:before {
  display: none;
}

.offer_section.offer3 .benefits_list {
  padding: 12px 0 12px 18px;
  background: #1bbfdf;
  color: #fff;
}

.offer_section.offer3 .benefits_list .benefit_item {
  float: left;
  padding: 0 0 0 44px;
  width: 160px;
  font-size: 14px;
  line-height: 16px;
  position: relative;
}

.offer_section.offer3 .benefits_list .benefit_item:last-child {
  width: 130px;
}

.offer_section.offer3 .benefits_list .benefit_item:before {
  display: block;
  content: "";
  width: 34px;
  height: 34px;
  /* border: 1px solid rgba(255, 255, 255, 0.2); */
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: white center no-repeat;
  position: absolute;
  top: -2px;
  left: 0;
      box-shadow: 0 0 20px 1px #00000017;
}

.offer_section.offer3 .benefits_list .benefit_item:nth-child(1):before {
  background-image: url("../images/offer_benefit1.svg");
}

.offer_section.offer3 .benefits_list .benefit_item:nth-child(2):before {
  background-image: url("../images/offer_benefit2.svg");
}

.offer_section.offer3 .benefits_list .benefit_item:nth-child(3):before {
  background-image: url("../images/offer_benefit3.svg");
}

.products_count {
  margin: 20px 0 0;
  text-align: center;
}

.offer_section.offer1 .products_count {
  color: #fff;
}

.products_count span {
  margin: 0 3px;
  padding: 3px 5px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #41944b;
  color: #fff;
}

.offer_section .field {
  display: block;
  margin: 0 auto 12px;
  padding: 0 18px;
  width: 100%;
  height: 58px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background-color: #ffffff;
  font-family: "AvenirNextCyr", sans-serif;
  font-weight: 400;
  /* Safari на iPhone зумит страницу к полю, если текст в нём мельче
     16pt на экране. Страница свёрстана под ширину 480, то есть
     на телефоне 390pt всё ужимается примерно в 0.81 раза —
     значит в CSS нужно 16 / 0.81 ≈ 20px. Берём 22px с запасом
     (хватает вплоть до узких 350pt экранов). */
  font-size: 22px;
  color: #333;
  box-shadow: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.offer_section .field:focus{
  outline: none;
  border-color: var(--lp-accent);
  box-shadow: 0 0 0 3px rgba(var(--lp-accent-rgb), .16);
}

.offer_section.offer1 .field {
  border: none;
  background-color: #fff;
}

.offer_section .field[name="name"] {
  margin-top: 0;
}

.offer_section .field::-webkit-input-placeholder {
  opacity: 1;
  color: #333;
}

.offer_section .field:-moz-placeholder {
  opacity: 1;
  color: #333;
}

.offer_section .field::-moz-placeholder {
  opacity: 1;
  color: #333;
}

.offer_section .field:-ms-input-placeholder {
  opacity: 1;
  color: #333;
}

.offer_section .field:focus::-webkit-input-placeholder {
  opacity: 0;
}

.offer_section .field:focus:-moz-placeholder {
  opacity: 0;
}

.offer_section .field:focus::-moz-placeholder {
  opacity: 0;
}

.offer_section .field:focus:-ms-input-placeholder {
  opacity: 0;
}

/* problems */

.problems_section h2 span {
  /* display: block; */
  color: #373737;
  background: #ffffff;
  border-radius: 6px;
  padding:8px 10px 3px;
  line-height: 1.5;
}

/* video */

.video_section {
  padding: 30px 0 0;
  background: #f2f2f2;
}

.video_section h2 span {
  display: block;
  color: #ffd706;
}

.video_block {
  width: 480px;
  height: 270px;
  background-color: #000;
  overflow: hidden;
  position: relative;
}

.video_block iframe,
.video_block object,
.video_block embed {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/* slider */

.slider .owl-prev,
.slider .owl-next {
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #41944b url("../images/slider__arrows.png") no-repeat;
  position: absolute;
  top: 50%;
  margin-top: -20px;
}

.slider .owl-prev {
  background-position: left center;
  left: 20px;
}

.slider .owl-next {
  background-position: right center;
  right: 20px;
}

/* image */

img.image {
  display: block;
}

/* description */

.description_section h2 span {
  color: #1a1a1ac7;
}

.description_section img {
    width: 460px;
  display: block;
  margin: 0 auto 30px;
}
.description_section .products_count {
    margin-bottom: 30px;
}
.description_section .image_block img {
  margin: 0 auto;
  border-radius: var(--lp-radius);
}

.description_section .text_block {
  margin: 0 0 30px;
}

.description_section .text_block p {
  margin: 0 20px 46px;
      font-size: 18px;
    padding: 0px 25px;
        color: #1a1a1ac7;
        font-weight: 400;
}

.description_section .text_block p:last-child {
  margin: 0 10px;
}

.description_section .benefit {
  background: #1bbfdf;
  border-radius: 5px;
  padding: 20px 5px;
  margin: 0 20px 15px;
}

.description_section .benefit .benefit_text {
  text-align: center;
  font-weight: 400;
  color: white;
}
/* list 1 */

.list1 {
  padding: 20px 0;
  background: #fb6d2e;
}

section .list1 {
  padding: 0;
}

.list1 li {
  margin: 0 0 12px;
  padding: 0 20px 16px 50px;
  background: url("../images/yellow_tick_icon.png")
    20px 2px no-repeat;
  color: #fff;
  position: relative;
}

.list1 li:last-child {
  margin: 0;
  padding: 0 20px 0 50px;
}

.list1 li:before {
  display: block;
  content: "";
  width: 100%;
  height: 4px;
  background: url("../images/list1__separator.png")
    center no-repeat;
  position: absolute;
  bottom: 0;
  left: 0;
}

.list1 li:last-child:before {
  display: none;
}

/* list 2 */

.list2 {
  padding: 20px 0;
  background: #333;
}

section .list2 {
  padding: 0;
}

.list2 li {
  margin: 0 0 12px;
  padding: 0 20px 0 50px;
  background: url("../images/yellow_tick_icon.png")
    20px 2px no-repeat;
  color: #fff;
  position: relative;
}

.list2 li:last-child {
  margin: 0;
}

/* list 3 */

.list3 li {
  padding: 14px 20px 14px 50px;
  background: url("../images/blue_tick_icon.png") 20px 16px no-repeat;
}

.list3 li:nth-child(odd) {
  background-color: #f5f5f5;
}

/* list 4 */

.list4 {
  padding: 20px 0;
}

section .list4 {
  padding: 0;
}

.list4 li {
  margin: 0 0 10px;
  padding: 0 16px 0 44px;
  position: relative;
}

/* галочка списков — рисуется маской, картинка не нужна */
.list4 li::before,
.offer_section ul li::before,
.description_section ul li::before{
  content: '';
  position: absolute;
  left: 18px;
  top: 3px;
  width: 18px;
  height: 18px;
  background: var(--lp-accent);
  -webkit-mask: var(--lp-tick) no-repeat center / contain;
          mask: var(--lp-tick) no-repeat center / contain;
}
.offer_section ul li::before,
.description_section ul li::before{ left: 2px; top: 2px; }

.list4 li:last-child {
/*  margin: 0;*/
}

/* characteristics 1 */

.characteristics_list1 {
  margin: 0 20px;
}

.characteristics_list1 .characteristic_item {
  display: table;
  margin: 0 0 4px;
  width: 100%;
  height: 64px;
  border-left: 3px solid #1396bf;
  background: #f5f5f5;
}

.characteristics_list1 .characteristic_item:last-child {
  margin: 0;
}

.characteristics_list1 .characteristic_item .text {
  display: table-cell;
  vertical-align: middle;
  padding: 0 20px;
  font-weight: 700;
}

.characteristics_list1 .characteristic_item .value {
  display: table-cell;
  vertical-align: middle;
  padding: 0 20px 0 0;
  text-align: right;
}

/* characteristics 2 */

.characteristics_list2 {
  margin: 0 20px;
  font-size: 0;
  line-height: 0;
  letter-spacing: -1px;
}

.characteristics_list2 .characteristic_item {
  display: inline-block;
  vertical-align: top;
  margin: 0 20px 15px 0;
  padding: 0 0 0 30px;
  width: 210px;
  background: url("../images/blue_tick_icon.png") left 2px no-repeat;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: normal;
}

.characteristics_list2 .characteristic_item:nth-child(even) {
  margin: 0 0 15px;
}

.characteristics_list2 .characteristic_item:nth-last-child(2) {
  margin: 0 20px 0 0;
}

.characteristics_list2 .characteristic_item:last-child {
  margin: 0;
}

.characteristics_list2 .characteristic_item .text {
  font-weight: 700;
}

/* benefits 1 */

.benefits_list1 {
  font-size: 0;
  line-height: 0;
  letter-spacing: -1px;
  text-align: center;
}

.benefits_list1 .benefit_item {
  display: inline-block;
  vertical-align: top;
  margin: 0 20px 30px 0;
  width: 210px;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: normal;
}

.benefits_list1 .benefit_item:nth-child(even) {
  margin: 0 0 30px;
}

.benefits_list1 .benefit_item:nth-last-child(2) {
  margin: 0 20px 0 0;
}

.benefits_list1 .benefit_item:last-child {
  margin: 0;
}

.benefits_list1 img {
  display: block;
  margin: 0 auto 15px;
  width: 150px;
  border: 3px solid #e6e6e6;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #e6e6e6;
}

.dark_theme .benefits_list1 img {
  border: 3px solid #fff;
  background: #fff;
}

.benefits_list1.image_rounded img {
  width: 170px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.benefits_list1 h4 {
  font-weight: 700;
}

.dark_theme .benefits_list1 h4 {
  color: #ffd800;
}

.benefits_list1 h4 + p {
  margin: 5px 0 0;
}

/* benefits 3 */

.benefits_list3 .benefit_item {
  display: table;
    margin: 0 auto 30px;

  width: 440px;
  min-height: 150px;
  position: relative;
}

.benefits_list3 .benefit_item:last-child {
     margin: 0 auto 30px;

}

.benefits_list3 .benefit_item img {
  display: block;
  width: 150px;
  border: 3px solid #e6e6e6;
  border-radius: 14px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
  background: #e6e6e6;
  position: absolute;
  top: 50%;
  margin-top: -75px;
  left: 0;
}

.dark_theme .benefits_list3 .benefit_item img {
  border: 3px solid #fff;
  background: #fff;
}

.benefits_list3 .benefit_item:nth-child(even) img {
  left: auto;
  right: 0;
}

.benefits_list3 .benefit_item .text_block {
  display: table-cell;
  vertical-align: middle;
  padding: 0 0 0 170px;
}

.benefits_list3 .benefit_item:nth-child(even) .text_block {
  padding: 0 170px 0 0;
  text-align: right;
}

.benefits_list3 .benefit_item .text_block h4 {
  font-weight: 700;
}

.dark_theme .benefits_list3 .benefit_item .text_block h4 {
        color: #fff;
    text-transform: uppercase;
    font-size: 18px;
    text-align: center;
}

.benefits_list3 .benefit_item .text_block h4 + p {
  margin: 5px 0 0;
}

/* benefits 4 */

.benefits_list4 .benefit_item {
  margin: 0 20px 30px;
  padding: 0 0 2px;
  border: 3px solid #f5f5f5;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #f5f5f5;
  -webkit-box-shadow: 0 2px 0 #d9d9d9;
  -moz-box-shadow: 0 2px 0 #d9d9d9;
  box-shadow: 0 2px 0 #d9d9d9;
  color: #333;
  text-align: center;
  overflow: hidden;
}

.dark_theme .benefits_list4 .benefit_item {
  border: 3px solid #fff;
  background: #fff;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.benefits_list4 .benefit_item:last-child {
  margin: 0 20px 10px;
}

.benefits_list4 .benefit_item img {
  display: block;
}

.benefits_list4 .benefit_item h4 {
  margin: 0 17px;
  padding: 15px 0;
  border-bottom: 1px solid #e6e6e6;
  font-weight: 700;
  text-transform: uppercase;
  position: relative;
}

.benefits_list4 .benefit_item h4:before {
  display: block;
  content: "";
  width: 46px;
  height: 46px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #ffd800
    url("../images/benefits__plus_icon.png")
    center no-repeat;
  position: absolute;
  top: -23px;
  right: 10px;
}

.benefits_list4 .benefit_item p {
  margin: 15px;
}

/* benefits 5 */

.benefits_list5 .benefit_item {
  float: left;
  padding: 30px 20px 0 20px;
  width: 240px;
  height: 240px;
  font-size: 0;
  line-height: 0;
  letter-spacing: -1px;
  color: #fff;
}

.benefits_list5 .benefit_item:nth-child(4n-3) {
  background: #41944b;
}

.benefits_list5 .benefit_item:nth-child(4n-2) {
  background: #1394bd;
}

.benefits_list5 .benefit_item:nth-child(4n-1) {
  background: #128cb3;
}

.benefits_list5 .benefit_item:nth-child(4n) {
  background: #107d9f;
}

.benefits_list5 .benefit_item .icon_block {
  margin: 0 0 20px;
  width: 60px;
  height: 60px;
  border: 1px solid #fff;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  line-height: 58px;
  text-align: center;
}

.benefits_list5 .benefit_item .icon_block img {
  display: inline-block;
  vertical-align: middle;
}

.benefits_list5 .benefit_item p {
  font-size: 16px;
  line-height: 24px;
  letter-spacing: normal;
}

/* use steps */

.use_steps_section {
  padding: 30px 0 0;
}

.use_steps_section h2.title {
  padding: 0 20px;
}

/* use steps 1 */

.use_steps1_list .step_item {
  display: table;
  width: 100%;
  height: 204px;
  border-top: 4px solid #d9d9d9;
  background: #f5f5f5;
  position: relative;
}

.use_steps1_list .step_item img {
  display: block;
  width: 220px;
  position: absolute;
  top: 0;
  right: 0;
}

.use_steps1_list .step_item:nth-child(even) img {
  right: auto;
  left: 0;
}

.use_steps1_list .step_item .text_block {
  display: table-cell;
  vertical-align: middle;
  padding: 0 240px 0 20px;
  text-align: center;
}

.use_steps1_list .step_item:nth-child(even) .text_block {
  padding: 0 20px 0 240px;
}

.use_steps1_list .step_item .number {
  margin: 0 auto 10px;
  width: 40px;
  height: 40px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #41944b;
  font-weight: 700;
  font-size: 24px;
  line-height: 40px;
  color: #fff;
}

/* use steps 2 */

.use_steps2_list {
  background: #333;
}

.use_steps2_list .step_item {
  display: table;
  padding: 20px;
  width: 100%;
  border-bottom: 1px solid #5c5c5c;
  color: #fff;
}

.use_steps2_list .step_item:last-child {
  margin: 0;
}

.use_steps2_list .step_item .number_block {
  display: table-cell;
  vertical-align: middle;
  width: 40px;
  position: relative;
}

.use_steps2_list .step_item .number_block:before {
  display: block;
  content: "";
  border-left: 7px solid #41944b;
  border-top: 7px solid rgba(255, 255, 255, 0);
  border-bottom: 7px solid rgba(255, 255, 255, 0);
  position: absolute;
  top: 50%;
  margin-top: -7px;
  right: -7px;
}

.use_steps2_list .step_item .number {
  width: 40px;
  height: 40px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #41944b;
  -webkit-box-shadow: 2px 0 2px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 2px 0 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 0 2px rgba(0, 0, 0, 0.1);
  font-weight: 700;
  font-size: 24px;
  line-height: 40px;
  text-align: center;
  position: relative;
}

.use_steps2_list .step_item p {
  display: table-cell;
  vertical-align: middle;
  padding: 0 0 0 27px;
}

/* comparison */

.comparison_section {
  padding: 30px 0 0;
}

.comparison_section h2.title {
  padding: 0 20px;
}

.comparison_section .titles_block h4 {
  float: left;
  margin: 0 4px 0 0;
  padding: 20px 0;
  width: 238px;
  background: #333;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
}

.comparison_section .titles_block h4:last-child {
  margin: 0;
  background: #41944b;
}

.comparison_section .images_block {
  margin: 0 0 4px;
}

.comparison_section .images_block img {
  display: block;
  float: left;
  margin: 0 4px 0 0;
  width: 238px;
}

.comparison_section .images_block img:last-child {
  margin: 0;
}

.comparison_section .row {
  display: table;
  margin: 0 0 4px;
  width: 100%;
}

.comparison_section .row:last-child {
  margin: 0;
}

.comparison_section .row .column {
  display: table-cell;
  vertical-align: top;
  padding: 10px 20px;
  width: 50%;
  border-right: 2px solid #fff;
  background: #f5f5f5;
}

.comparison_section .row .column:last-child {
  border-right: none;
  border-left: 2px solid #fff;
}

.comparison_section .row:last-child .column:first-child {
  padding-bottom: 16px;
  -webkit-box-shadow: 0 -6px 0 0 #333 inset;
  -moz-box-shadow: 0 -6px 0 0 #333 inset;
  box-shadow: 0 -6px 0 0 #333 inset;
}

.comparison_section .row:last-child .column:last-child {
  padding-bottom: 16px;
  -webkit-box-shadow: 0 -6px 0 0 #41944b inset;
  -moz-box-shadow: 0 -6px 0 0 #41944b inset;
  box-shadow: 0 -6px 0 0 #41944b inset;
}

/* opinion 1 */

.opinion1_section {
  padding: 30px 20px 40px;
  background: #f5f5f5;
}

.opinion1_section h2.title {
  margin: 0 0 50px;
}

.opinion1_section .opinion_block {
  padding: 60px 20px 20px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #fff
    url("../images/opinion1__bg_top.jpg")
    center top no-repeat;
  -webkit-box-shadow: 0 0 9px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 9px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 9px rgba(0, 0, 0, 0.1);
  text-align: center;
  position: relative;
}

.opinion1_section .opinion_block:before {
  display: block;
  content: "";
  width: 60px;
  height: 60px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #41944b
    url("../images/opinion1__quote_icon.png")
    center no-repeat;
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -30px;
}

.opinion1_section .photo {
  display: block;
  margin: 0 auto 15px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.opinion1_section .author_info {
  margin: 0 0 15px;
  padding: 0 0 20px;
  background: url("../images/opinion__stars_icon.png") center bottom no-repeat;
}

.opinion1_section .author_info .name {
  font-weight: 700;
}

.opinion1_section .author_info .text {
  font-size: 14px;
  line-height: 22px;
}

.opinion1_section .text_block p {
  margin: 0 0 15px;
}

.opinion1_section .text_block p:last-child {
  margin: 0;
}

/* opinion 2 */

.opinion2_section {
  padding: 0;
  text-align: center;
}

.opinion2_section h2.title {
  padding: 12px 20px;
  background: #fb6d2e;
  color: #fff;
}

.opinion2_section .image_block {
  margin: 0 auto 15px;
  width: 170px;
  position: relative;
}

.opinion2_section .image_block:before {
  display: block;
  content: "";
  width: 30px;
  height: 21px;
  background: url("../images/opinion2__quote_icon.png") center no-repeat;
  position: absolute;
  top: 20px;
  right: 5px;
}

.opinion2_section .photo {
  display: block;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.opinion2_section .author_info {
  margin: 0 0 30px;
  padding: 0 20px 20px;
  background: url("../images/opinion__stars_icon.png") center bottom no-repeat;
}

.opinion2_section .author_info .name {
  font-weight: 700;
}

.opinion2_section .author_info .text {
  font-size: 14px;
  line-height: 22px;
}

.opinion2_section .text_block {
  padding: 25px 20px;
  background: #41944b;
  color: #fff;
  position: relative;
}

.opinion2_section .text_block:before {
  display: block;
  content: "";
  border-top: 14px solid #fff;
  border-left: 12px solid rgba(255, 255, 255, 0);
  border-right: 12px solid rgba(255, 255, 255, 0);
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -12px;
}

.opinion2_section .text_block p {
  margin: 0 0 15px;
}

.opinion2_section .text_block p:last-child {
  margin: 0;
}

.opinion2_section .image_bottom {
  display: block;
}

/* reviews stats */

.reviews_stats_block {
  margin: 0 0 40px;
  text-align: center;
}

.reviews_stats_block .line {
  margin: 5px auto 0;
  width: 330px;
  height: 10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background: #e6e6e6;
  overflow: hidden;
}

.reviews_stats_block .line:before {
  display: block;
  content: "";
  width: 98%;
  height: 10px;
  -webkit-border-radius: 0 5px 5px 0;
  -moz-border-radius: 0 5px 5px 0;
  border-radius: 0 5px 5px 0;
  background: #41944b;
}

/* reviews 1 */

.reviews1_section {
  padding: 30px 0 0;
}

.reviews1_section .image_bottom {
  display: block;
}

.reviews_list1 {
  margin: 0 auto 20px;
  width: 420px;
}

.reviews_list1 .author_block {
  margin: 0 0 30px;
}

.reviews_list1 .author_block .avatar {
      box-shadow: 0 0 0px #ffffff;
  display: block;
  float: left;
  width: 80px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.reviews_list1 .author_block .author_info_block {
  float: left;
  margin: 15px 0 0 20px;
  width: 320px;
}

.reviews_list1 .author_block .author_info {
  font-weight: 700;
}

.reviews_list1 .author_block .text {
  font-size: 14px;
  line-height: 22px;
}

.reviews_list1 .author_block .text:before {
  display: inline-block;
  vertical-align: middle;
  margin: -5px 8px 0 0;
  content: "";
  width: 17px;
  height: 16px;
  background: url("../images/reviews__like_icon.png") center no-repeat;
}

.reviews_list1 .text_block {
  padding: 20px 40px 67px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #f5f5f5;
  -webkit-box-shadow: 0 -3px 0 #d9d9d9 inset;
  -moz-box-shadow: 0 -3px 0 #d9d9d9 inset;
  box-shadow: 0 -3px 0 #d9d9d9 inset;
  text-align: center;
  position: relative;
}

.reviews_list1 .text_block:before {
  display: block;
  content: "";
  border-bottom: 14px solid #f5f5f5;
  border-left: 10px solid rgba(255, 255, 255, 0);
  border-right: 10px solid rgba(255, 255, 255, 0);
  position: absolute;
  top: -14px;
  left: 30px;
}

.reviews_list1 .text_block:after {
  display: block;
  content: "";
  width: 30px;
  height: 21px;
  background: url("../images/reviews__quote_icon.png") center no-repeat;
  position: absolute;
  top: -10px;
  right: 40px;
}

.reviews_list1 .text_block p {
  margin: 0 0 15px;
}

.reviews_list1 .text_block p:last-child {
  margin: 0;
}

.reviews_list1 .text_block .photo {
  display: block;
  margin: 24px auto 0;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.reviews_list1 .owl-prev,
.reviews_list1 .owl-next {
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #417cd3 url("../images/slider__arrows.png") no-repeat;
  position: absolute;
  top: 240px;
}

.reviews_list1 .owl-prev {
  background-position: left center;
  left: -20px;
}

.reviews_list1 .owl-next {
  background-position: right center;
  right: -20px;
}

.reviews_list1 .owl-dots {
  width: 100%;
  font-size: 0;
  line-height: 0;
  letter-spacing: -1px;
  text-align: center;
  position: absolute;
  bottom: 33px;
  left: 0;
}

.reviews_list1 .owl-dot {
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
  width: 10px;
  height: 10px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #333;
}

.reviews_list1 .owl-dot.active {
  width: 20px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background: #417cd3;
}

/* reviews 2*/

.reviews2_section {
  padding: 30px 20px 40px;
}

.reviews2_section .reviews_list1 .author_block .author_info_block {
  width: 280px;
}

.reviews2_section .reviews_list1 .text_block {
  padding: 20px 30px 73px;
}

.reviews2_section .reviews_list1 .text_block:after {
  right: 30px;
}

.reviews2_section .reviews_list1 .owl-prev {
  display: none;
}

.reviews2_section .reviews_list1 .owl-next {
  top: 20px;
  right: 0;
}

/* reviews 3 */

.reviews3_section {
  padding: 30px 20px 40px;
  background: #fb6d2e;
}

.reviews3_section h2 {
  color: #fff;
}

.reviews3_section .reviews_stats_block {
  color: #fff;
}

.reviews3_section .reviews_stats_block .line {
  background: #fff;
}

.reviews3_section .reviews_stats_block .line:before {
  background: #ffd800;
}

.reviews_list3 .owl-stage-outer {
  padding: 30px 0 0;
}

.reviews_list3 .review_item {
  padding: 30px 40px 67px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #fff;
  -webkit-box-shadow: 0 -3px 0 #1185a9 inset;
  -moz-box-shadow: 0 -3px 0 #1185a9 inset;
  box-shadow: 0 -3px 0 #1185a9 inset;
  position: relative;
}

.reviews_list3 .review_item:before {
  display: block;
  content: "";
  width: 60px;
  height: 60px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #fff url("../images/reviews__quote_icon.png") center no-repeat;
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -30px;
}

.reviews_list3 .author_block {
  margin: 0 0 15px;
  padding: 0 0 20px;
  border-bottom: 1px solid #ccc;
  position: relative;
  z-index: 10;
}

.reviews_list3 .author_block .avatar {
  display: block;
  float: left;
  width: 60px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.reviews_list3 .author_block .author_info {
  float: left;
  margin: 8px 0 0 20px;
  width: 280px;
  line-height: 22px;
}

.reviews_list3 .author_block .name {
  font-weight: 700;
}

.reviews_list3 .text_block {
  text-align: center;
}

.reviews_list3 .text_block p {
  margin: 0 0 15px;
}

.reviews_list3 .text_block p:last-child {
  margin: 0;
}

.reviews_list3 .owl-dots {
  width: 100%;
  font-size: 0;
  line-height: 0;
  letter-spacing: -1px;
  text-align: center;
  position: absolute;
  bottom: 33px;
  left: 0;
}

.reviews_list3 .owl-dot {
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
  width: 10px;
  height: 10px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #333;
}

.reviews_list3 .owl-dot.active {
  width: 20px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background: #41944b;
}

.reviews_list3 .owl-prev,
.reviews_list3 .owl-next {
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #41944b url("../images/slider__arrows.png") no-repeat;
  position: absolute;
  top: 50%;
  margin-top: -7px;
}

.reviews_list3 .owl-prev {
  background-position: left center;
  left: -20px;
}

.reviews_list3 .owl-next {
  background-position: right center;
  right: -20px;
}

/* reviews 4 */

.reviews4_section {
  padding: 30px 20px 40px;
  background: #fb6d2e;
}

.reviews4_section h2 {
  color: #fff;
}

.reviews4_section .reviews_stats_block {
  color: #fff;
}

.reviews4_section .reviews_stats_block .line {
  background: #fff;
}

.reviews4_section .reviews_stats_block .line:before {
  background: #ffd800;
}

.reviews_list4 .review_item {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #fff;
  -webkit-box-shadow: 0 -3px 0 #1185a9 inset;
  -moz-box-shadow: 0 -3px 0 #1185a9 inset;
  box-shadow: 0 -3px 0 #1185a9 inset;
  text-align: center;
  overflow: hidden;
}

.reviews_list4 .text_block {
  padding: 20px 30px 67px;
}

.reviews_list4 .text_block .author_info {
  margin: 0 0 10px;
  font-weight: 700;
}

.reviews_list4 .owl-dots {
  width: 100%;
  font-size: 0;
  line-height: 0;
  letter-spacing: -1px;
  text-align: center;
  position: absolute;
  bottom: 33px;
  left: 0;
}

.reviews_list4 .owl-dot {
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
  width: 10px;
  height: 10px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #333;
}

.reviews_list4 .owl-dot.active {
  width: 20px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background: #41944b;
}

.reviews_list4 .owl-prev,
.reviews_list4 .owl-next {
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #41944b url("../images/slider__arrows.png") no-repeat;
  position: absolute;
  top: 100px;
}

.reviews_list4 .owl-prev {
  background-position: left center;
  left: -20px;
}

.reviews_list4 .owl-next {
  background-position: right center;
  right: -20px;
}

/* order steps 1 */
section.order_steps_section{
  padding: 0!important;
}
.order_steps_section {
 
}

.order_steps_section h2 {
  font-weight: 700;
  font-size: 28px;
  line-height: 34px;
  color: #1a1a1ac7;
}

.order_steps_list1 .step_item {
  float: left;
  margin: 0 10px 12px 0;
  padding: 23px 20px 0 30px;
  width: 215px;
  height: 140px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #f5f5f5;
  -webkit-box-shadow: 0 2px 0 #d9d9d9;
  -moz-box-shadow: 0 2px 0 #d9d9d9;
  box-shadow: 0 2px 0 #d9d9d9;
  position: relative;
}

.dark_theme .order_steps_list1 .step_item {
  background: #fff;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
  color: #333;
}

.order_steps_list1 .step_item:nth-child(even) {
  margin: 0 0 11px;
}

.order_steps_list1 .step_item:before {
  display: block;
  content: "";
  width: 32px;
  height: 32px;
  background: center no-repeat;
  position: absolute;
  top: 19px;
  right: 19px;
}

.order_steps_list1 .step_item:nth-child(1):before {
  background-image: url("../images/order_steps1__step1_icon.png");
}

.order_steps_list1 .step_item:nth-child(2):before {
  background-image: url("../images/order_steps1__step2_icon.png");
}

.order_steps_list1 .step_item:nth-child(3):before {
  background-image: url("../images/order_steps1__step3_icon.png");
}

.order_steps_list1 .step_item:nth-child(4):before {
  background-image: url("../images/order_steps1__step4_icon.png");
}

.order_steps_list1 .step_item h4 {
  margin: 0 0 7px;
  font-weight: 700;
  text-transform: uppercase;
}

.order_steps_list1 .step_item h4:after {
  display: block;
  content: "";
  margin: 12px 0 0;
  width: 30px;
  height: 2px;
  background: #e6e6e6;
}

/* order steps 2 */

.order_steps_list2 .step_item {
  float: left;
  padding: 50px 20px 0 20px;
  width: 240px;
  height: 240px;
  color: #fff;
  text-align: center;
  position: relative;
}

.order_steps_list2 .step_item:nth-child(1) {
  background: #41944b;
}

.order_steps_list2 .step_item:nth-child(2) {
  background: #1394bd;
}

.order_steps_list2 .step_item:nth-child(3) {
  background: #128cb3;
}

.order_steps_list2 .step_item:nth-child(4) {
  background: #107d9f;
}

.order_steps_list2 .step_item .number {
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  font-weight: 700;
  font-size: 24px;
  line-height: 40px;
  position: absolute;
  top: 20px;
  left: 20px;
}

.order_steps_list2 .step_item:before {
  display: block;
  content: "";
  margin: 0 auto 10px;
  width: 60px;
  height: 60px;
  border: 1px solid #fff;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: center no-repeat;
}

.order_steps_list2 .step_item:nth-child(1):before {
  background-image: url("../images/order_steps2__step1_icon.png");
}

.order_steps_list2 .step_item:nth-child(2):before {
  background-image: url("../images/order_steps2__step2_icon.png");
}

.order_steps_list2 .step_item:nth-child(3):before {
  background-image: url("../images/order_steps2__step3_icon.png");
}

.order_steps_list2 .step_item:nth-child(4):before {
  background-image: url("../images/order_steps2__step4_icon.png");
}

.order_steps_list2 .step_item h4 {
  font-weight: 700;
  text-transform: uppercase;
}

/* order info 1 */

.benefits_section h2 span {
  display: block;
  color: #fb6d2e;
}

.order_info1_section {
  padding: 30px 0;
}

.order_info_list1 .info_item {
  padding: 0 20px 20px;
  display: table;
  width: 100%;
}

.order_info_list1 .info_item:last-child {
  margin: 0 0 10px;
}

.order_info_list1 .info_item h4 {
  margin: 0 0 5px;
  font-weight: 700;
  color: #41944b;
  text-transform: uppercase;
}

.dark_theme .order_info_list1 .info_item h4 {
  color: #ffd800;
}

.order_info_list1 .info_item .icon_block {
  display: table-cell;
  vertical-align: middle;
  width: 80px;
  height: 80px;
  -webkit-border-radius: 20px 4px;
  -moz-border-radius: 20px 4px;
  border-radius: 20px 4px;
  background: #41944b;
  font-size: 0;
  line-height: 80px;
  letter-spacing: 1px;
  text-align: center;
}

.dark_theme .order_info_list1 .info_item .icon_block {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: #333;
  line-height: 78px;
}

.order_info_list1 .info_item .icon_block img {
  display: inline-block;
  vertical-align: middle;
}

.order_info_list1 .info_item .text_block {
  display: table-cell;
  vertical-align: middle;
  padding: 0 0 0 20px;
}

/* order info 2 */

.order_info2_section {
  padding: 30px 0 0;
}

.order_info2_section h2.title {
  padding: 0 20px;
}

.order_info_list2 .info_item {
  display: table;
  width: 100%;
  height: 204px;
  border-top: 4px solid #d9d9d9;
  position: relative;
}

.order_info_list2 .info_item img {
  display: block;
  width: 220px;
  position: absolute;
  top: 0;
  right: 0;
}

.order_info_list2 .info_item:nth-child(even) img {
  right: auto;
  left: 0;
}

.order_info_list2 .info_item .text_block {
  display: table-cell;
  vertical-align: middle;
  padding: 0 240px 0 20px;
  text-align: center;
}

.order_info_list2 .info_item:nth-child(even) .text_block {
  padding: 0 20px 0 240px;
}

.order_info_list2 .info_item h4 {
  margin: 0 0 5px;
  font-weight: 700;
  color: #fb6d2e;
}

/* set */

.set_section {
  text-align: center;
}

.set_section h2 span {
  display: block;
  margin: 0 auto;
  padding: 12px 10px 4px;
  background: none;
  box-shadow: none;
  color: #1a1a1a;
  text-align: center;
  text-shadow: none;
}

.set_section .list4 li{
  padding-top: 4px;
  padding-bottom: 12px;
  border-bottom: 1px solid #f0f1f3;
}
.set_section .list4 li:last-child{ border-bottom: 0; }

.set_section .set_item {
  float: left;
  padding: 0 10px 30px;
  width: 50%;
  text-align: center;
}

.set_section .set_item img {
  display: block;
  margin: 0 auto;
}

.set_section .set_item p {
  padding: 0 10px;
}

.set_section .image_bottom {
  display: block;
  margin: 0 auto;
}

/* footer */

.footer_section {
  padding: 25px 0;
  background: #f2f2f2;
  font-size: 14px;
  line-height: 22px;
  text-align: center;
}

.footer_section img {
  display: block;
  margin: 0 auto 10px auto;
}

.footer_section a {
  color: #111;
}

.sale {
  /* width: 85px;
  height: 85px; */
  width: 110px;
  height: 116px;
  background: url("../images/svg.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 1;
  position: absolute;
  /* top: -37px;
  left: 100px; */
  top: 20%;
  left: 75%;
  overflow: hidden;
}

.sale_text {
  font-family: "Bebas Neue";
  font-style: normal;
}

.sale_item {
  /* font-family: "Bebas Neue", cursive;
  width: 54px;
  color: rgba(255, 255, 255, 1);
  position: absolute;
  top: -7px;
  left: 117px;
  font-weight: Bold;
  font-size: 31px;
  opacity: 1;
  text-align: left; */
  font-family: "Bebas Neue", cursive;
  width: 54px;
  color: rgba(255, 255, 255, 1);
  position: absolute;
  top: -7px;
  left: 40px;
  font-weight: Bold;
  font-size: 40px;
  opacity: 1;
  text-align: left;
}

.rotate {
  animation: rotation 4s infinite linear;
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

.rating_img {
    /* filter: brightness(0) saturate(100%) invert(41%) sepia(89%) saturate(400%) hue-rotate(175deg) brightness(96%) contrast(95%); */
    box-shadow: 0 0 11px #ffffff00;
    margin: 0px 1px;
}

.how-order-img {

    height: 100px;
    background-size: 100%;
    padding: 20px 40px 20px 60px;
    border-radius: 20px;
    margin-bottom: 17px;
    box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 31%);

}
.how-order-img.img1 {
  background-image: url("../images/111.jpg");
}

.how-order-img.img2 {
  background-image: url("../images/222.jpg");
}
.how-order-img.img3 {
  background-image: url("../images/333.jpg");
}
.how-order-img.img4 {
  background-image: url("../images/444.jpg");
}

.how-order-img .title {
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
}

.how-order-img .description {

  font-style: normal;
  font-weight: 400;
  color: #ffffff;
  max-width: 160px;
  font-size: 13px;
  line-height: 16px;
}

.how-order-img .right {
float: right;
}

.b3 {
    padding-bottom: 45px;
    color: black;

}
.char-wrapper {
    width: 100%;
    border-radius: 45px;
    display: flex;
    justify-content: space-around;
    margin-bottom: 20px;
}
.char-column {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.char-item {
    margin: 10px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 10px 25px 0 rgba(0,0,0,0.15);
    width: 200px;
    height: 130px;
    border-radius: 15px;


}
.char-item i{
    font-size: 40px;
    padding-top: 15px;

}
.char-title {
    font-weight: 700;
    margin: 10px 0 5px 0;
}
.char-subtitle {
    text-align: center;
}
/* ============================================================
   ОТЗЫВЫ (блок .otz) — карточки вместо картинок
   ============================================================ */

.otz .rv-score{ font-size: 18px; margin-bottom: 6px; }
.rv-stars{ display: inline-flex; gap: 2px; vertical-align: -3px; margin-left: 6px; }

.otz .mainSliderClass{ width: 92%; margin: 0 auto; padding-bottom: 10px; }
.otz .otzivSlide{ padding: 6px 8px 4px; }

.rv-card{
  background: #fff;
  color: #333;
  text-shadow: none;
  border-radius: 16px;
  padding: 16px 16px 14px;
  box-shadow: none;
  text-align: left;
}

.rv-head{ display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }

.rv-ava{
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: linear-gradient(180deg, var(--lp-accent-light), var(--lp-accent));
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rv-meta{ flex: 1 1 auto; min-width: 0; }
.rv-name{ font-weight: 700; font-size: 16px; line-height: 1.2; }
.rv-meta .rv-stars{ margin-left: 0; margin-top: 2px; }
.rv-meta .rv-stars svg path[fill^="rgba"]{ fill: #dcdcdc; }

.rv-check{
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #2ea44f;
  color: #fff;
  font-size: 13px;
  line-height: 22px;
  text-align: center;
}

.rv-text{ font-size: 15px; line-height: 1.5; margin: 0; }

/* фото отзыва — крупно, сверху карточки */
.rv-photo--top{ margin: -16px -16px 14px; }
.rv-photo--top img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px 16px 0 0;
  box-shadow: none;
}

.rv-reply{
  margin-top: 12px;
  padding: 10px 12px;
  background: #f5f6f8;
  border-left: 3px solid var(--lp-accent);
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.45;
}
.rv-reply b{ display: block; margin-bottom: 4px; color: var(--lp-accent); }
.rv-reply p{ margin: 0; }

/* точки slick не используем — вместо них счётчик со стрелками */
.otz .slick-dots{ display: none; }

.rv-nav{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 14px 0 0;
}
.rv-arrow{
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 0;
  background: rgba(255, 255, 255, .92);
  color: var(--lp-accent);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .18);
}
.rv-arrow:active{ transform: translateY(1px); }
.rv-counter{
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  min-width: 56px;
  text-align: center;
}


/* ============================================================
   ВЫБОР КОЛИЧЕСТВА
   ============================================================ */

.qty-pick{
  width: 100%;
  margin: 4px 0 14px;
  padding: 14px;
  background: #f7f8fa;
  border: 1px solid #eceef0;
  border-radius: 16px;
  box-shadow: none;
  text-align: left;
  box-sizing: border-box;
}

.qty-pick__head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
}
.qty-pick__title{ font-size: 20px; font-weight: 800; line-height: 1.2; color: #2f2320; }
.qty-pick__sub{ font-size: 14px; line-height: 1.3; color: #9aa0a6; margin-top: 4px; }

.qty-pick__badge{
  flex: 0 0 auto;
  padding: 7px 12px;
  border-radius: 10px;
  background: var(--lp-accent);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.qty-pick__tiles{
  display: flex;
  gap: 8px;
  padding: 8px 2px 6px;
}

.qty-tile{
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  padding: 12px 4px 10px;
  border: 1px solid #e8eaee;
  border-radius: 14px;
  background: #fbfbfc;
  text-align: center;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
/* подсветка при наведении — только там, где есть мышь: на телефоне
   она залипает после тапа и плитка выглядит выбранной */
@media (hover: hover) and (pointer: fine){
  .qty-tile:hover{ border-color: rgba(var(--lp-accent-rgb), .5); }
}

/* отклик на нажатие сразу, не дожидаясь пересчёта сумм */
.qty-tile:active{
  transform: scale(.97);
  transition-duration: .05s;
}

.qty-tile__num{
  display: block;
  font-size: 24px;
  font-weight: 800;
  line-height: 1;
  color: #2f2320;
}
.qty-tile__num small{ font-size: 13px; font-weight: 600; margin-left: 3px; color: #8b9096; }

.qty-tile__price{
  display: block;
  margin-top: 7px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  color: #8b9096;
}

.qty-tile__check{
  position: absolute;
  top: -8px;
  right: -8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--lp-accent);
  color: #fff;
  font-size: 12px;
  line-height: 22px;
  text-align: center;
  display: none;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .2);
}

.qty-tile.is-active{
  background: var(--lp-accent);
  border-color: var(--lp-accent);
  box-shadow: 0 6px 16px rgba(var(--lp-accent-rgb), .28);
}
.qty-tile.is-active .qty-tile__num,
.qty-tile.is-active .qty-tile__num small,
.qty-tile.is-active .qty-tile__price{ color: #fff; }
.qty-tile.is-active .qty-tile__check{ display: block; }

.qty-pick__total{
  margin-top: 12px;
  padding: 12px 14px;
  background: #fff;
  border-radius: 12px;
}
.qty-pick__total-label{ font-size: 14px; line-height: 1.2; color: #8b9096; }
.qty-pick__total-value{ font-size: 26px; font-weight: 800; line-height: 1.2; color: #2f2320; margin-top: 3px; }

/* настоящий select остаётся полем формы, но не виден */
.offer_section .field.qty-pick__select,
.qty-pick__select{
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  min-height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
}


/* ============================================================
   ФУТЕР
   ============================================================ */

.main_wrapper > footer{
  margin-top: 26px;
  padding: 22px 16px 26px;
  background: #fff;
  border-radius: var(--lp-radius) var(--lp-radius) 0 0;
  box-shadow: var(--lp-shadow-sm);
}
.main_wrapper > footer a{ color: var(--lp-accent); }
.main_wrapper > footer p{ margin: 14px 0; line-height: 1.6; }

/* картинка над списком характеристик */
.set_section__photo{
  display: block;
  width: 90%;
  margin: 14px auto 16px;
  border-radius: 14px;
  box-shadow: var(--lp-shadow-sm);
}

/* видео товара */
.video video{
  display: block;
  width: 100%;
  height: auto;
}

/* список характеристик — обычный список, без flex-раскладки .description_section ul */
.set_section .list4{
  display: block;
  margin: 6px 0 0;
  padding: 0 14px;
  list-style: none;
}
.set_section .list4 li{
  flex: none;
  max-width: none;
  margin: 0;
  text-align: left;
}

/* кнопка и даты акции в шапке — без «дыры» между блоками */
.offer_section .button{ width: 100%; max-width: none; margin: 18px 0 0; }

/* даты акции — только в футере */
.promo-dates{
  margin: 0 0 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eceef0;
  text-align: center;
  font-size: 14px;
  color: #8b9096;
}

/* заголовок над видео */
.description_section > h2.title{ margin-bottom: 18px; }


/* ============================================================
   ЕДИНАЯ СЕКЦИЯ
   Все блоки страницы — карточки одинаковой ширины, с одинаковым
   отступом от краёв, одинаковым радиусом и тенью.
   ============================================================ */

.lp-section{
  box-sizing: border-box;
  width: calc(100% - var(--lp-gutter) * 2);
  max-width: none;
  margin: 16px auto;
  padding: 18px;
  background: #fff;
  border-radius: var(--lp-radius);
  box-shadow: var(--lp-shadow-sm);
}

.lp-section--accent{
  background: linear-gradient(348deg, var(--lp-accent), var(--lp-accent-light));
  box-shadow: var(--lp-shadow-md);
  color: #fff;
}

/* заголовок секции */
.lp-title{
  margin: 0 0 14px;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  color: #1a1a1a;
}
.lp-title--light{
  color: #fff;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .18);
}

/* текст под видео */
.lp-lead{
  margin: 14px 0 0;
  font-size: 18px;
  line-height: 1.55;
  text-align: center;
  color: #3d4247;
}
.lp-lead b{ color: #1a1a1a; }


/* ---------- секция «фото + текст» ---------- */

.desc-block{ text-align: center; }

.desc-block__img{
  display: block;
  width: 100%;
  height: auto;
  margin: 0 0 14px;
  border-radius: 14px;
  box-shadow: none;
}
.desc-block__text{
  margin: 0;
  font-size: 18px;
  line-height: 1.55;
  text-align: center;
  color: #3d4247;
}
.desc-block__text b{ color: #1a1a1a; }


/* ---------- шапка и нижний блок заказа ---------- */

.offer_section.lp-section .offer_image{
  width: 100%;
  height: auto;
  margin: 0;
  border-radius: 14px;
  box-shadow: none;
}
.offer_section.lp-section .image_block{ margin: 0; }

.offer_section.offer3 .price_item .text{
  margin: 0 0 6px;
  font-size: 14px;
  line-height: 1.2;
  color: #8b9096;
}
.offer_section.offer3 .price_item .value{ line-height: 1.1; }
.offer_section.offer3 .price_item.old .value{
  font-size: 26px;
  color: #9aa0a6;
  text-decoration: line-through;
}
.offer_section.offer3 .price_item.new .value{
  font-size: 34px;
  font-weight: 800;
  color: #1a1a1a;
}


/* ---------- переваги ---------- */

.benefits_section .benefits_list3{ margin: 0; }
.benefits_section .benefit_item h4{
  text-transform: uppercase;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .2);
  color: #fff;
}
.benefits_section .benefit_item p{ color: #fff; }


/* ---------- характеристики ---------- */

.set_section .lp-title{ margin-bottom: 12px; }
.set_section .set_list{ text-align: left; }


/* ---------- отзывы: геометрию задаёт .lp-section ---------- */

.otz .lp-title{ margin-bottom: 12px; }
.otz .reviews_stats_block{ margin: 0 0 16px; }
.otz .mainSliderClass{ width: 100%; margin: 0; padding-bottom: 0; }
.otz .otzivSlide{ padding: 2px; }
.rv-card{ box-shadow: none; }
.rv-nav{ margin: 16px 0 0; }


/* ---------- футер ---------- */

.main_wrapper > footer{
  box-sizing: border-box;
  width: calc(100% - var(--lp-gutter) * 2);
  max-width: none;
  margin: 16px auto 0;
  padding: 18px;
  border-radius: var(--lp-radius) var(--lp-radius) 0 0;
}

/* поля и блоки внутри секций считают ширину вместе с паддингом */
.lp-section,
.lp-section *,
.offer_section .field,
.form,
.qty-pick,
.qty-tile{
  box-sizing: border-box;
}


/* ============================================================
   ПЕРЕВАГИ — строки с разделителями, фото не вылезает за секцию
   ============================================================ */

.benefits_list3{
  display: flex;
  flex-direction: column;
}

.benefits_list3 .benefit_item,
.benefits_list3 .benefit_item:last-child{
  display: flex;
  align-items: center;
  gap: 14px;
  position: static;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .3);
}
.benefits_list3 .benefit_item:first-child{ padding-top: 4px; }
.benefits_list3 .benefit_item:last-child{
  padding-bottom: 4px;
  border-bottom: 0;
}
.benefits_list3 .benefit_item:nth-child(even){ flex-direction: row-reverse; }

.benefits_list3 .benefit_item img,
.dark_theme .benefits_list3 .benefit_item img{
  position: static;
  flex: 0 0 116px;
  width: 116px;
  height: 116px;
  margin: 0;
  object-fit: cover;
  border: 3px solid #fff;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .18);
}

.benefits_list3 .benefit_item .text_block,
.benefits_list3 .benefit_item:nth-child(even) .text_block{
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  text-align: left;
}
.benefits_list3 .benefit_item:nth-child(even) .text_block{ text-align: right; }

.dark_theme .benefits_list3 .benefit_item .text_block h4{
  margin: 0;
  font-size: 19px;
  line-height: 1.25;
  text-align: inherit;
}
.benefits_list3 .benefit_item .text_block h4 + p{
  margin: 6px 0 0;
  font-size: 18px;
  line-height: 1.4;
  opacity: .92;
}


/* ============================================================
   ЦЕНЫ — по центру, новая цена крупнее
   ============================================================ */

.offer_section.offer3 .price_block{
  display: flex;
  align-items: flex-end;
  justify-content: space-around;
  width: 100%;
  margin: 16px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid #eceef0;
}

.offer_section.offer3 .price_item,
.offer_section.offer3 .price_item.old,
.offer_section.offer3 .price_item.new{
  float: none;
  width: auto;
  padding: 0;
  text-align: center;
}

.offer_section.offer3 .price_item .text{
  margin: 0 0 6px;
  font-size: 13px;
  line-height: 1.2;
  color: #9aa0a6;
}
.offer_section.offer3 .price_item.new .text{
  display: flex;
  justify-content: center;
  align-items: center;
}
.offer_section.offer3 .price_item.old .value{
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  color: #a8adb3;
  text-decoration: line-through;
}
.offer_section.offer3 .price_item.new .value{
  font-size: 40px;
  font-weight: 800;
  line-height: 1;
  color: #1a1a1a;
}


/* ============================================================
   ИСПРАВЛЕНИЯ ГЕОМЕТРИИ
   ============================================================ */

/* .clearfix:after внутри flex-контейнера становится третьим
   flex-элементом и сдвигает цены с центра */
.price_block.clearfix:after,
.offer_section.offer3 .price_block:after{
  display: none;
}

/* зазор задаёт space-around, отдельный gap не нужен */


/* ============================================================
   4 КОРОТКИЕ ПЕРЕВАГИ — сетка 2x2 под фото
   ============================================================ */

.adv-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 16px 0 0;
}

.adv-cell{
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 11px 12px;
  background: #f7f8fa;
  border: 1px solid #eceef0;
  border-radius: 12px;
}

.adv-cell__icon{
  flex: 0 0 auto;
  font-size: 19px;
  line-height: 1;
}

.adv-cell__text{
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  color: #3d4247;
}

/* если переваг нечётное число — последняя занимает всю ширину */
.adv-cell:last-child:nth-child(odd){ grid-column: 1 / -1; }

/* отдельная кнопка между секциями — выравниваем по сетке секций */
.main_wrapper > .button{
  margin: 18px var(--lp-gutter);
}

/* сумма экономии в блоке количества */
.qty-pick__total{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.qty-pick__total-main{ min-width: 0; }

.qty-pick__save{
  flex: 0 0 auto;
  padding: 7px 12px;
  border-radius: 10px;
  background: var(--lp-accent);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}


/* отступ 5px сверху страницы — как и по бокам секций */
.main_wrapper > *:first-child{ margin-top: var(--lp-gutter); }

/* кнопка внутри блока характеристик — по ширине содержимого секции */
.set_section__cta{
  width: 100%;
  max-width: none;
  margin: 18px 0 0;
}

/* рекламная фраза — короткий заголовок между фото и перевагами */
.hero-slogan{
  margin: 16px 0 0;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
  color: #1a1a1a;
}


/* ============================================================
   СТРАНИЦА «ДЯКУЄМО»
   ============================================================ */

.thx-hero{ text-align: center; }

.thx-hero__icon{
  width: 56px;
  height: 56px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: linear-gradient(160deg, var(--lp-accent-light), var(--lp-accent));
  box-shadow: var(--lp-shadow-accent);
  color: #fff;
  font-size: 28px;
  line-height: 56px;
}

.thx-hero__title{
  margin: 0 0 6px;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.25;
  color: #1a1a1a;
}

.thx-hero__sub{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 1.5;
  color: #6b7075;
}

.thx-hero__data{
  padding: 4px 14px;
  background: #f7f8fa;
  border: 1px solid #eceef0;
  border-radius: 16px;
  text-align: left;
}

.thx-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid #eceef0;
}
.thx-row:last-child{ border-bottom: 0; }
.thx-row__label{ font-size: 15px; color: #8b9096; }
.thx-row__value{ font-size: 16px; font-weight: 700; color: #1a1a1a; }

.thx-hero__back{
  width: 100%;
  max-width: none;
  margin: 16px 0 0;
}

/* сетка товаров */
.thx-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

/* Длинный список показываем тремя рядами, остальное открывается
   кнопкой. Вложенной прокрутки здесь больше нет: на телефоне она
   забирала жест себе и страница из-под неё не листалась. */
.thx-grid.is-collapsed .thx-card:nth-child(n + 10){ display: none; }

.thx-more{
  display: block;
  width: 100%;
  max-width: none;
  height: 52px;
  margin: 12px 0 0;
  font-size: 15px;
  line-height: 52px;
  letter-spacing: .5px;
  border-radius: 14px;
  box-shadow: none;
  background: #fff;
  border: 1px solid var(--lp-accent);
  color: var(--lp-accent);
}
.thx-more:active{ transform: scale(.99); }

.thx-card{
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid #eceef0;
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.thx-card:hover{
  border-color: var(--lp-accent);
  box-shadow: 0 6px 16px rgba(var(--lp-accent-rgb), .18);
  transform: translateY(-2px);
}

.thx-card__thumb{
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #fff;
  border-radius: 13px 13px 0 0;
  line-height: 0;
}
.thx-card__thumb img{
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  margin: 0;
  object-fit: cover;
}

.thx-card__name{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 36px;
  margin: 8px 0 6px;
  padding: 0 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  color: #2f2320;
}

.thx-card__prices{
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 6px;
  margin: auto 0 0;
  padding: 0 6px 10px;
}
.thx-card__old{
  font-size: 15px;
  font-weight: 600;
  color: #a8adb3;
  text-decoration: line-through;
}
.thx-card__new{
  font-size: 19px;
  font-weight: 800;
  color: #1a1a1a;
}

/* кнопка «Детальніше» в карточке карусели */
/* кнопки «Детальніше» больше нет — нажимается вся карточка */
.cs-card[data-product-id]{ cursor: pointer; }

/* листалка страниц товаров: сетка 3x3, остальное свайпом */
.thx-pager{
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.thx-pager::-webkit-scrollbar{ display: none; }

.thx-pager__page{
  flex: 0 0 100%;
  min-width: 100%;
  scroll-snap-align: start;
}

.thx-dots{
  display: flex;
  justify-content: center;
  gap: 6px;
  margin: 14px 0 0;
}
.thx-dot{
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #cfd4da;
  cursor: pointer;
  transition: width .2s ease, background .2s ease;
}
.thx-dot.is-active{
  width: 18px;
  background: var(--lp-accent);
}


/* ============================================================
   МОДАЛКА ТОВАРА
   ============================================================ */

.pm-overlay{
  position: fixed;
  inset: 0;
  /* На iPhone высота экрана «дышит» вместе с панелями Safari, и от
     inset: 0 затемнение не закрывало полосу сверху. dvh — это высота
     видимой части, она пересчитывается вместе с панелями. */
  height: 100%;
  z-index: 9999;
  display: none;
  padding: 16px 5px 40px;
  background: rgba(20, 20, 30, .6);
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
@supports (height: 100dvh){
  .pm-overlay{ height: 100dvh; }
}
.pm-overlay.is-open{ display: block; }

/* Пока открыта модалка, страницу под ней держим на месте.
   overflow: hidden на body в Safari не работает — страница всё равно
   уезжает, поэтому фиксируем её и запоминаем позицию прокрутки. */
body.pm-lock{
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  overflow: hidden;
}

.pm{
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 470px;
  margin: 0 auto;
  padding: 18px;
  background: #fff;
  border-radius: var(--lp-radius);
  box-shadow: var(--lp-shadow-md);
}

/* Крестик держим на экране, а не в углу карточки: иначе, чтобы
   закрыть, приходится сначала листать модалку обратно вверх. */
.pm__close{
  position: fixed;
  top: calc(12px + env(safe-area-inset-top, 0px));
  right: calc(12px + env(safe-area-inset-right, 0px));
  z-index: 10001;
  width: 50px;
  height: 50px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(20, 20, 30, .78);
  box-shadow: 0 4px 14px rgba(0, 0, 0, .35);
  color: #fff;
  font-size: 32px;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
}
.pm__close:active{ transform: scale(.94); }

.pm__loading{
  padding: 40px 0;
  text-align: center;
  color: #8b9096;
}

.pm__title{
  margin: 14px 0 0;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
  color: #1a1a1a;
}
.pm__slogan{
  margin: 6px 0 0;
  font-size: 17px;
  line-height: 1.4;
  text-align: center;
  color: #8b9096;
}
.pm__text{
  margin: 14px 0 0;
  font-size: 18px;
  line-height: 1.55;
  text-align: center;
  color: #3d4247;
}
.pm__adv{ margin-top: 14px; }

/* в модалке текста мало — набираем его крупнее, чем в сетке лендинга */
.pm__adv .adv-cell__text{ font-size: 15px; }
.pm__adv .adv-cell__icon{ font-size: 21px; }

/* каркас, пока грузится товар */
.pm-load{ padding: 2px 0 0; }

.pm-load__bar{
  position: relative;
  height: 3px;
  margin: 0 0 14px;
  overflow: hidden;
  border-radius: 999px;
  background: #eceef0;
}
.pm-load__bar i{
  position: absolute;
  top: 0;
  left: 0;
  width: 40%;
  height: 100%;
  border-radius: 999px;
  background: var(--lp-accent);
  animation: pm-bar 1.1s ease-in-out infinite;
}
@keyframes pm-bar{
  0%   { left: -40%; }
  100% { left: 100%; }
}

.pm-skel{
  margin: 0 0 10px;
  border-radius: 10px;
  background: linear-gradient(90deg, #f0f2f4 25%, #e6e9ec 37%, #f0f2f4 63%);
  background-size: 400% 100%;
  animation: pm-shine 1.3s ease infinite;
}
@keyframes pm-shine{
  0%   { background-position: 100% 50%; }
  100% { background-position: 0 50%; }
}

.pm-skel--photo{ height: 260px; margin-bottom: 16px; border-radius: 14px; }
.pm-skel--title{ height: 26px; width: 70%; margin: 0 auto 12px; }
.pm-skel--line{ height: 14px; }
.pm-skel--short{ width: 60%; }
.pm-skel--price{ height: 46px; margin: 18px 0 14px; }
.pm-skel--button{ height: 58px; border-radius: 14px; }

.pm-skel-row{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 14px 0;
}
.pm-skel--cell{ height: 44px; margin: 0; }

/* фото */
.pm-gallery-wrap{ position: relative; }

/* Высоту задаёт JS по активному кадру: у фото разные пропорции,
   и без этого контейнер тянулся по самому высокому — под низкими
   оставалось пустое место. */
.pm-gallery{
  display: flex;
  align-items: flex-start;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  border-radius: 14px;
  cursor: grab;
  transition: height .2s ease;
}
.pm-gallery.is-drag{ cursor: grabbing; scroll-snap-type: none; }
.pm-gallery::-webkit-scrollbar{ display: none; }
.pm-gallery__slide{
  flex: 0 0 100%;
  min-width: 100%;
  scroll-snap-align: start;
  line-height: 0;
}
.pm-gallery__slide img{
  width: 100%;
  height: auto;
  display: block;
  -webkit-user-drag: none;
  user-select: none;
}
.pm-dots{
  display: flex;
  justify-content: center;
  gap: 6px;
  margin: 10px 0 0;
}

/* стрелки — только для мыши, на тач-экранах листаем свайпом */
.pm-gallery__arrow{
  position: absolute;
  top: 50%;
  z-index: 2;
  display: none;
  width: 38px;
  height: 38px;
  margin-top: -19px;
  padding: 0;
  border: 1px solid #e3e6ea;
  border-radius: 50%;
  background: rgba(255, 255, 255, .92);
  color: #2f2320;
  font-size: 20px;
  line-height: 36px;
  text-align: center;
  cursor: pointer;
  transition: border-color .15s ease, color .15s ease;
}
.pm-gallery__arrow:hover{
  border-color: var(--lp-accent);
  color: var(--lp-accent);
}
.pm-gallery__arrow--prev{ left: 8px; }
.pm-gallery__arrow--next{ right: 8px; }
@media (hover: hover) and (pointer: fine){
  .pm-gallery__arrow{ display: block; }
}

/* переваги с картинками */
.pm-benefits{ margin: 16px 0 0; }
.pm-benefit{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #eceef0;
}
.pm-benefit:last-child{ border-bottom: 0; }
.pm-benefit img{
  flex: 0 0 84px;
  width: 84px;
  height: 84px;
  object-fit: cover;
  border-radius: 12px;
}
.pm-benefit h4{
  margin: 0;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.25;
  color: #1a1a1a;
}
.pm-benefit p{
  margin: 4px 0 0;
  font-size: 18px;
  line-height: 1.4;
  color: #3d4247;
}

/* цена и форма */
.pm-form{ margin: 18px 0 0; }

/* цены — той же раскладкой, что в шапке лендинга:
   две колонки от центра, разнесённые по краям */
.pm-price{
  display: flex;
  align-items: flex-end;
  justify-content: space-around;
  width: 100%;
  padding: 16px 0;
  border-top: 1px solid #eceef0;
}
.pm-price__item{ text-align: center; }

.pm-price__label{
  margin: 0 0 6px;
  font-size: 13px;
  line-height: 1.2;
  color: #9aa0a6;
}
.pm-price__value{
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  color: #a8adb3;
  text-decoration: line-through;
}
.pm-price__item--new .pm-price__value{
  font-size: 40px;
  font-weight: 800;
  line-height: 1;
  color: var(--lp-price-sale);
  text-decoration: none;
}

.pm-form .field{
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 58px;
  margin: 0 0 12px;
  padding: 0 18px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  /* тот же расчёт, что у полей лендинга: мельче — и iPhone зумит */
  font-size: 22px;
  color: #333;
}
.pm-form .field:focus{
  outline: none;
  border-color: var(--lp-accent);
  box-shadow: 0 0 0 3px rgba(var(--lp-accent-rgb), .16);
}
.pm-form .qty-pick{ margin-bottom: 14px; }
.pm-form__submit{
  width: 100%;
  max-width: none;
  margin: 0;
}


/* ============================================================
   КОШИК на странице «дякуємо»
   Товары из модалок копятся внизу и уходят одной заявкой.
   ============================================================ */

/* Пустую корзину прячем. Без этой строки атрибут hidden не работает:
   у браузера [hidden]{display:none} слабее, чем наш .cart-bar{display:flex},
   и полоса продолжала висеть со старым количеством. */
.cart-bar[hidden]{ display: none; }

/* парит над страницей: отступы от краёв, своя тень, скруглённая карточка */
.cart-bar{
  position: fixed;
  left: 50%;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  z-index: 9998;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  box-sizing: border-box;
  width: calc(100% - 24px);
  max-width: 456px;
  padding: 9px 10px 9px 16px;
  background: #fff;
  border: 1px solid #eceef0;
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(20, 20, 30, .18);
  animation: cart-up .22s ease;
}
@keyframes cart-up{
  from { transform: translate(-50%, 130%); }
  to   { transform: translate(-50%, 0); }
}

.cart-bar__info{
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-width: 0;
  line-height: 1.2;
  white-space: nowrap;
}
.cart-bar__count{
  font-size: 13px;
  color: #8b9096;
}
.cart-bar__sum{
  font-size: 20px;
  font-weight: 800;
  color: #1a1a1a;
}

/* кнопка компактнее — иначе она съедает место под сумму */
.cart-bar__btn{
  flex: 0 1 auto;
  width: auto;
  max-width: none;
  height: 46px;
  margin: 0;
  padding: 0 16px;
  font-size: 13px;
  line-height: 46px;
  letter-spacing: .3px;
  border-radius: 13px;
  box-shadow: none;
}

/* чтобы полоса не накрывала футер */
body.has-cart .main_wrapper{ padding-bottom: 78px; }

/* пока открыта любая модалка, полосу прячем — она светилась
   поверх затемнения */
body.pm-lock .cart-bar{ display: none; }

/* список заказа держим по центру экрана — и по горизонтали, и по вертикали */
.cart-overlay.is-open{
  display: flex;
  align-items: center;
  justify-content: center;
  /* отступы одинаковые сверху и снизу, иначе «центр» уезжает вверх */
  padding: 16px 5px;
}
.cart-overlay .cart{
  margin: auto;   /* если содержимое выше экрана — прокрутка, а не обрезка */
}

/* ---------- модалка со списком ---------- */

.cart-promo{
  margin: 14px 0 0;
  padding: 12px 14px;
  background: #f7f8fa;
  border: 1px solid #eceef0;
  border-radius: 14px;
}
.cart-promo__head{
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.cart-promo__icon{ font-size: 22px; line-height: 1; }
.cart-promo__text{
  font-size: 15px;
  line-height: 1.3;
  color: #3d4247;
}
.cart-promo__text b{ color: #1a1a1a; }

.cart-promo__bar{
  position: relative;
  height: 6px;
  overflow: hidden;
  background: #e6e9ec;
  border-radius: 999px;
}
.cart-promo__bar i{
  display: block;
  width: 0;
  height: 100%;
  border-radius: 999px;
  background: var(--lp-accent);
  transition: width .25s ease;
}

.cart-promo.is-done{
  background: rgba(47, 125, 79, .08);
  border-color: rgba(47, 125, 79, .35);
}
.cart-promo.is-done .cart-promo__bar i{ background: #2f7d4f; }
.cart-promo.is-done .cart-promo__text b{ color: #2f7d4f; }

.cart-list{ margin: 14px 0 0; }

.cart-item{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #eceef0;
}
.cart-item:last-child{ border-bottom: 0; }

.cart-item__thumb{
  flex: 0 0 66px;
  width: 66px;
  height: 88px;
  overflow: hidden;
  background: #f2f4f7;
  border-radius: 12px;
  line-height: 0;
}
.cart-item__thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cart-item__main{ flex: 1 1 auto; min-width: 0; }

.cart-item__name{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  color: #2f2320;
}

.cart-item__row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.cart-item__sum{
  font-size: 18px;
  font-weight: 800;
  color: #1a1a1a;
  white-space: nowrap;
}

.cart-qty{
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 3px;
  background: #f7f8fa;
  border: 1px solid #eceef0;
  border-radius: 10px;
}
.cart-qty__btn{
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid #e3e6ea;
  border-radius: 8px;
  background: #fff;
  color: #2f2320;
  font-size: 19px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}
.cart-qty__btn:active{ transform: scale(.92); }
.cart-qty__val{
  min-width: 30px;
  font-size: 16px;
  font-weight: 800;
  text-align: center;
  color: #2f2320;
}

.cart-item__del{
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #f2f4f7;
  color: #8b9096;
  font-size: 20px;
  line-height: 30px;
  cursor: pointer;
}
.cart-item__del:hover{ background: #f0d6d3; color: var(--lp-price-sale); }

.cart-total{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 14px 0;
  border-top: 1px solid #eceef0;
}
.cart-total__label{
  font-size: 15px;
  color: #8b9096;
}
.cart-total__value{
  font-size: 28px;
  font-weight: 800;
  color: var(--lp-price-sale);
}

.cart-form{ margin-top: 0; }

/* кнопка «Додати в замовлення» после нажатия */
.pm-form__submit.is-added{
  background: #2f7d4f;
  box-shadow: none;
}
