/* styles */

body {
	min-width: 480px;
	background: #ddd;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 15px;
	line-height: 22px;
	color: #222;
	cursor: default;
}

.main_wrapper {
	margin: 0 auto;
	width: 480px;
	background: #fff;
}

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

img {
	max-width: 100%;
	height: auto;
}

b {
	font-weight: 700;
}

/* button */

.button {
	display: block;
	margin: 10px auto;
	width: 350px;
	height: 80px;
	border: none;
	-webkit-border-radius: 40px;
	-moz-border-radius: 40px;
	border-radius: 40px;
	background: #333333;
	-webkit-box-shadow: 0 0 0 10px #33333359;
	-moz-box-shadow: 0 0 0 10px #33333378;
	box-shadow: 0 0 0 10px #3333332b;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 80px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	cursor: pointer;
}

/* section */

section {
	padding: 30px 0;
}

.yellow_theme {
	background: #333333;
}

.dark_theme {
	background: #222;
	color: #fff;
}

.gray_theme {
	background: #cce3f3;
}

/* titles */

h2.title {
	margin: 0 0 30px;
	font-weight: 700;
	font-size: 32px;
	line-height: 40px;
	text-transform: uppercase;
}

h2.title:after {
	display: block;
	content: '';
	margin: 15px 0 0;
	width: 62px;
	height: 5px;
	background: url(../images/separator_red.png) center no-repeat;
}

h2.title span {
	color: #333333;
	white-space: nowrap;
}

.dark_theme h2.title span {
	color: #333333;
}

.cat {
    padding: 0;
}
.cat > img {
    display: block;
    margin: 0 auto;
    border-radius: 5px;
}
.catitem {
    width: 420px;
    margin: 0 auto 40px;
}
.catitem img {
    display: block;
    margin: 0 auto 20px;
}
.catitem > div {
    width: 420px;
    margin: 0 auto 30px;
    padding: 1px 0 0;
}
.catitem > div h3 {
    display: block;
    font-size: 20px;
    border-left: 4px solid #63c8d7;
    padding: 0 0 0 10px;
    line-height: 32px;
    width: 230px;
    float: left;
    margin: 7px 0 0;
}
.catprice {
    width: 190px;
    float: right;
    text-align: center;
		padding-top: 0px;
}
.cp-left {
    width: 70px;
    float: left;
    padding-top: 6px;
}
.cp-left span {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .7px;
    background: #e43315;
    color:#fff;
    border-radius: 4px;
    padding: 0 5px;
}
.cp-left p {
    font-size: 16px;
    font-weight: 700;
    line-height: 30px;
    text-decoration: line-through;
}
.cp-right {
    width: 120px;
    float: right;
}
.cp-right span {
    font-size: 14px;
}
.cp-right p {
    font-size: 32px;
    font-weight: 700;
    line-height: 30px;
}
/* separator */

.separator {
	width: 62px;
	height: 5px;
	background: url(../images/separator_red.png) center no-repeat;
}

.separator.white {
	background-image: url(../images/separator_white.png);
}

/* image */

section .image {
	display: block;
	margin: 0 auto 30px;
}

/* offer */

.offer_section {
	padding: 0;
}

.offer_section.offer1 {
	background: #222;
}

.offer_section.offer2 {
	background: #222;
}

.offer_section .main_title {
	padding: 10px 20px;
	font-weight: 700;
	font-size: 38px;
	line-height: 44px;
	text-align: center;
}

.offer_section.offer1 .main_title {
	background: #333333;
}

.offer_section.offer2 .main_title,
.offer_section.offer3 .main_title {
	background: #333333;
	color: #fff;
}

.offer_section .info_block {
	position: relative;
}

.offer_section .info_block img {
	display: block;
}

.offer_section .info_block .subtitle {
	padding: 12px 20px 10px;
	width: 100%;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
    letter-spacing: 1.6px;
	text-transform: uppercase;
	text-align: center;
}

.offer_section.offer1 .info_block .subtitle,
.offer_section.offer2 .info_block .subtitle {
	background: rgba(34,34,34,0.8);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.17);
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.17);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.17);
	color: #fff;
}

.offer_section.offer3 .info_block .subtitle {
	background: rgba(235,235,235,0.8);
}

.offer_section .info_block .discount {
	width: 112px;
	height: 112px;
	background: center no-repeat;
	font-weight: 700;
	font-size: 13px;
	line-height: 13px;
	text-transform: uppercase;
	position: absolute;
	top: 45px;
	right: 0;
}

.offer_section.offer1 .info_block .discount {
	background-image: url(../images/offer1__discount_bg.png);
	color: #fff;
}

.offer_section.offer3 .info_block .discount {
	background-image: url(../images/offer3__discount_bg.png);
}

.offer_section .info_block .discount b {
	display: block;
	width: 100px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	white-space: nowrap;
	position: absolute;
	top: 42px;
	left: 21px;
    color:#fff;
}

.offer_section.offer1 .price_block {
	margin: -42px 0 25px;
}

.offer_section.offer1 .price_old {
	float: left;
	padding: 15px 0 0 15px;
	width: 160px;
	height: 84px;
	background: #e43315;
	color: #fff;
	position: relative;
}

.offer_section.offer1 .price_old:before {
	display: block;
	content: '';
	border-right: 50px solid rgba(255,255,255,0);
	border-bottom: 84px solid #e43315;
	position: absolute;
	top: 0;
	right: -50px;
}

.offer_section.offer1 .price_old .text {
	margin: 0 0 2px;
	font-size: 14px;
}

.offer_section.offer1 .price_old .value {
	font-weight: 700;
	font-size: 26px;
	line-height: 26px;
	text-decoration: line-through;
}

.offer_section.offer1 .price_new {
	float: left;
	margin: 14px 0 0 16px;
	width: 130px;
	height: 56px;
	background: #333333;
	font-weight: 700;
	font-size: 24px;
	line-height: 56px;
	text-align: center;
	position: relative;
}

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

.offer_section.offer1 .price_new:before {
	border-left: 34px solid rgba(255,255,255,0);
	border-top: 56px solid #333333;
	left: -34px;
}

.offer_section.offer1 .price_new:after {
	border-right: 34px solid rgba(255,255,255,0);
	border-bottom: 56px solid #333333;
	right: -34px;
	z-index: 10;
}

.offer_section.offer1 .price_new span {
	position: relative;
	z-index: 99;
}

.offer_section.offer1 .timer {
	float: left;
	margin: 27px 0 0;
	padding: 0 0 0 62px;
	width: 174px;
	height: 30px;
	background: rgba(255,255,255,0.2) url(../images/offer1__timer_arrows.png) 30px center no-repeat;
	line-height: 32px;
	color: #fff;
	position: relative;
}

.offer_section.offer2 .price_block {
	margin: 0 0 34px;
	position: relative;
}

.offer_section.offer2 .price_item {
	float: left;
	width: 50%;
	height: 74px;
	text-align: center;
}

.offer_section.offer2 .price_item.old {
	padding: 13px 65px 0 0;
	background: #ebebeb;
}

.offer_section.offer2 .price_item.new {
	padding: 13px 0 0 65px;
	background: #333333;
}

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

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

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

.offer_section.offer2 .discount {
	padding: 19px 0 0 46px;
	width: 176px;
	height: 92px;
	background: url(../images/offer2__discount_bg.png) center no-repeat;
	color: #fff;
	position: absolute;
	top: -9px;
	left: 50%;
	margin-left: -88px;
}

.offer_section.offer2 .discount .text {
	margin: 0 0 5px;
	font-size: 18px;
	line-height: 18px;
	letter-spacing: 8px;
	text-transform: uppercase;
}

.offer_section.offer2 .discount .value {
	margin: 0 0 0 5px;
	font-weight: 700;
	font-size: 34px;
	line-height: 34px;
}

.offer_section.offer3 .price_block {
	margin: -23px 0 25px;
	padding: 0 75px;
	height: 80px;
	position: relative;
}

.offer_section.offer3 .price_block:before {
	display: block;
	content: '';
	width: 75px;
	height: 34px;
	background: #e43315;
	position: absolute;
	top: 50%;
	margin-top: -17px;
	left: 0;
}

.offer_section.offer3 .price_block:after {
	display: block;
	content: '';
	width: 56px;
	border-top: 34px solid #e43315;
	border-left: 22px solid rgba(255,255,255,0);
	position: absolute;
	top: 50%;
	margin-top: -17px;
	right: 0;
}

.offer_section.offer3 .price_item {
	float: left;
	width: 50%;
	height: 80px;
	color: #fff;
	position: relative;
}

.offer_section.offer3 .price_item.old {
	padding: 17px 0 0 17px;
	background: #222;
}

.offer_section.offer3 .price_item.new {
	padding: 17px 0 0 37px;
	background: #333333;
}

.offer_section.offer3 .price_item.old:before {
	display: block;
	content: '';
	border-left: 44px solid rgba(255,255,255,0);
	border-top: 80px solid #222;
	position: absolute;
	top: 0;
	left: -44px;
}

.offer_section.offer3 .price_item.old:after {
	display: block;
	content: '';
	border-left: 44px solid #222;
	border-top: 80px solid #333333;
	position: absolute;
	top: 0;
	right: -22px;
	z-index: 10;
}

.offer_section.offer3 .price_item.new:before {
	display: block;
	content: '';
	border-right: 44px solid rgba(255,255,255,0);
	border-bottom: 80px solid #333333;
	position: absolute;
	top: 0;
	right: -44px;
}

.offer_section.offer3 .price_item .text {
	margin: 0 0 5px;
	font-size: 14px;
	line-height: 14px;
	position: relative;
	z-index: 99;
}

.offer_section.offer3 .price_item .value {
	font-weight: 700;
	font-size: 26px;
	line-height: 26px;
	position: relative;
	z-index: 99;
}

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

.offer_section ul {
	padding: 0 55px 25px;
}

.offer_section ul li {
	margin: 0 0 15px;
	padding: 0 0 0 25px;
	color: #fff;
	position: relative;
}

.offer_section ul li:last-child {
	margin: 0;
}

.offer_section.offer1 ul li:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	border: 1px solid #333333;
	background: #333333;
	-webkit-box-shadow: 0 0 0 2px #222 inset;
	-moz-box-shadow: 0 0 0 2px #222 inset;
	box-shadow: 0 0 0 2px #222 inset;
	position: absolute;
	top: 4px;
	left: 0;
}

.offer_section.offer2 ul li:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	content: '';
	border-top: 8px solid #333333;
	border-left: 8px solid rgba(255,255,255,0);
	border-right: 8px solid rgba(255,255,255,0);
	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	-o-transform: rotate(30deg);
	transform: rotate(30deg);
	position: absolute;
	top: 8px;
	left: -2px;
}

.offer_section .benefits_block {
	margin: 0 auto 25px;
	width: 402px;
}

.offer_section .benefits_block .benefit_item {
	float: left;
	padding: 0 5px;
	width: 33.333333%;
	text-align: center;
}

.offer_section .benefits_block img {
	display: block;
	margin: 0 auto 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.offer_section .timer_block {
	margin: 0 0 35px;
	padding: 20px;
	text-transform: uppercase;
	text-align: center;
}

.offer_section.order .timer_block {
	margin: 0 0 25px;
}

.offer_section.offer2 .timer_block {
	border-top: 1px dashed rgba(255,255,255,0.1);
	border-bottom: 1px dashed rgba(255,255,255,0.1);
	background: #292929;
	color: #999;
}

.offer_section.offer3 .timer_block {
	border-top: 1px dashed rgba(0,0,0,0.1);
	border-bottom: 1px dashed rgba(0,0,0,0.1);
	background: #f4f4f4;
}

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

.offer_section .timer_block .timer {
	margin: 0 auto;
	width: 370px;
}

.offer_section .timer_block .timer_item {
	float: left;
	margin: 0 35px 0 0;
	width: 100px;
}

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

.offer_section .timer_block .count {
	margin: 0 0 10px;
	height: 60px;
}

.offer_section .timer_block .count span {
	display: block;
	float: left;
	margin: 0 8px 0 0;
	width: 46px;
	height: 60px;
	background: #333333;
	font-weight: 700;
	font-size: 36px;
	line-height: 60px;
	color: #fff;
}

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

.offer_section .timer_block .text {
	font-size: 13px;
	line-height: 13px;
}

.offer_section .products_count {
	padding: 25px;
	font-size: 16px;
	line-height: 24px;
	color: #fff;
	text-align: center;
}

.offer_section.offer3 .products_count {
	color: #222;
}

.offer_section .products_count b {
	margin: 0 4px;
	padding: 3px 6px;
	background: #333333;
	font-size: 18px;
	color: #fff;
}

.offer_section.order .text_block {
	margin: 0 55px 25px;
	text-align: center;
}

.offer_section.order .text_block h4 {
	margin: 0 0 10px;
	font-weight: 700;
	font-size: 26px;
	line-height: 32px;
	color: #fff;
}

.offer_section.order .text_block p {
	color: #999;
}

.offer_section .field {
	display: block;
	margin: 0 auto 20px;
	padding: 0 20px 0 62px;
	width: 370px;
	height: 72px;
	border: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 16px;
	color: #777;
}
select, input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}
select[name="comment"] {
    display: block;
    width: 370px;
    border: 1px solid #dedede;
	height: 72px;
    background-color: #ebebeb;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    margin: 0 auto 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
	color: #777;
    padding: 0 20px 0 62px;
}

select[name="comment1"] {
    display: block;
    width: 370px;
    border: 1px solid #dedede;
	height: 72px;
    background-color: #ebebeb;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    margin: 0 auto 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
	color: #777;
    padding: 0 20px 0 62px;
}

select[name="comment2"] {
    display: block;
    width: 370px;
    border: 1px solid #dedede;
	height: 72px;
    background-color: #ebebeb;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    margin: 0 auto 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
	color: #777;
    padding: 0 20px 0 62px;
}

select[name="comment3"] {
    display: block;
    width: 370px;
    border: 1px solid #dedede;
	height: 72px;
    background-color: #ebebeb;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    margin: 0 auto 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
	color: #777;
    padding: 0 20px 0 62px;
}

select {
  background-image: url(../images/select.png);
  background-repeat: no-repeat;
  background-position: -2px center;
  overflow: hidden;
  /* for FF */
  text-indent: 0.01px;
  text-overflow: '';
  /* for IE */
  -ms-appearance: none;
  appearance: none!important;
}
select::-ms-expand {
    display: none;
}
.offer_section .field[name='name'] {
	background: #ebebeb url(../images/offer__name_icon.png) 22px center no-repeat;
}

.offer_section .field[name='phone'] {
	margin: 0 auto 35px;
	background: #ebebeb url(../images/offer__phone_icon.png) 20px center no-repeat;
}

.offer_section.offer3 .field {
	border: 1px solid #dedede;
}

.offer_section.offer3 .field[name='name'] {
	background: #f0f0f0 url(../images/offer__name_icon.png) 22px center no-repeat;
}

.offer_section.offer3 .field[name='phone'] {
	margin: 0 auto 35px;
	background: #f0f0f0 url(../images/offer__phone_icon.png) 20px center no-repeat;
}

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

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

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

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

.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;
}

/* video */

.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;
}

/* description */

.description_section {
	padding: 30px 0 15px;
}

.description_section h2.title {
	padding: 0 30px;
}

.description_section p {
	padding: 0 30px 15px;
}

/* social proof */

.social_proof_block {
	padding: 0 30px 30px;
}

.social_proof_block .info_item {
	float: left;
	padding: 20px 0;
	width: 50%;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
}

.social_proof_block .info_item:nth-child(even) {
	border-right: none;
}

.social_proof_block .info_item:nth-last-child(2),
.social_proof_block .info_item:last-child {
	border-bottom: none;
}

.social_proof_block .info_item .icon_block {
	float: right;
	margin: 0 15px;
	width: 50px;
	height: 50px;
	font-size: 0;
	line-height: 50px;
	letter-spacing: -1px;
	text-align: center;
}

.social_proof_block .info_item:nth-child(even) .icon_block {
	float: left;
}

.social_proof_block .info_item img {
	display: inline-block;
	vertical-align: middle;
	max-height: 50px;
}

.social_proof_block .info_item .text_block {
	float: left;
	margin: -2px 0 0;
	width: 129px;
}

.social_proof_block .info_item:nth-child(odd) .text_block {
	text-align: right;
}

.social_proof_block .info_item .number {
	margin: 0 0 5px;
	font-weight: 700;
	font-size: 34px;
	line-height: 34px;
	color: #e43315;
}

.social_proof_block .info_item .text {
	font-size: 12px;
	line-height: 12px;
	text-transform: uppercase;
}

/* list 1 */

.list1 {
	padding: 0 30px 15px;
	font-size: 0;
	line-height: 0;
	letter-spacing: -1px;
}

.list1 li {
	display: inline-block;
	vertical-align: top;
	margin: 0 20px 15px 0;
	padding: 0 0 0 25px;
	width: 200px;
	font-size: 15px;
	line-height: 22px;
	letter-spacing: normal;
	position: relative;
}

.list1 li:nth-child(even) {
	margin: 0 0 10px;
}

.list1 li:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	content: '';
	border-left: 8px solid rgba(255,255,255,0);
	border-right: 8px solid rgba(255,255,255,0);
	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	-o-transform: rotate(30deg);
	transform: rotate(30deg);
	position: absolute;
	top: 8px;
	left: -2px;
}

.list1.marker1 li:before {
	border-top: 8px solid #333333;
}

.list1.marker2 li:before {
	border-top: 8px solid #e43315;
}

/* list 2 */

.list2 {
	padding: 0 30px 15px;
}

.list2 li {
	margin: 0 0 15px;
	padding: 0 0 0 25px;
	position: relative;
}

.list2 li:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	-webkit-box-shadow: 0 0 0 2px #fff inset;
	-moz-box-shadow: 0 0 0 2px #fff inset;
	box-shadow: 0 0 0 2px #fff inset;
	position: absolute;
	top: 4px;
	left: 0;
}

.list2.marker1 li:before {
	border: 1px solid #e43315;
	background: #e43315;
}

.list2.marker2 li:before {
	border: 1px solid #333333;
	background: #333333;
}

.list2_section {
	padding: 30px 0 0;
}

.dark_theme .list2 li:before {
	-webkit-box-shadow: 0 0 0 2px #222 inset;
	-moz-box-shadow: 0 0 0 2px #222 inset;
	box-shadow: 0 0 0 2px #222 inset;
}

/* slider */

.slider .owl-prev,
.slider .owl-next {
	width: 50px;
	height: 36px;
	background: url(../images/slider__arrows.png) no-repeat;
	position: absolute;
	top: 50%;
	margin-top: -18px;
}

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

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

/* image */

.result_image {
	display: block;
	margin: 0 auto;
}

/* benefits 1 */

.benefits_section {
	padding: 30px 0 0;
}

.benefits_section h2.title {
	padding: 0 30px;
}

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

.benefits_list1 .benefit_item {
	display: inline-block;
	vertical-align: top;
	padding: 0 10px 30px;
	width: 33.333333%;
	font-size: 15px;
	line-height: 22px;
	letter-spacing: normal;
}

.benefits_list1 .benefit_item img {
	display: block;
	margin: 0 auto 15px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.benefits_list1 .benefit_item h4 {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

/* benefits 2 */

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

.benefits_list2 .benefit_item {
	display: inline-block;
	vertical-align: top;
	padding: 0 10px 30px;
	width: 50%;
	font-size: 15px;
	line-height: 22px;
	letter-spacing: normal;
}

.benefits_list2 .benefit_item img {
	display: block;
	margin: 0 auto 15px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.benefits_list2 .benefit_item h4 {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

/* benefits 3 */

.benefits_list3 .benefit_item {
	display: table;
	padding: 0 30px 30px;
	width: 100%;
}

.benefits_list3 .image_block {
	display: table-cell;
	vertical-align: top;
	width: 110px;
}

.benefits_list3.va_middle .image_block {
	vertical-align: middle;
}

.benefits_list3 .image_block img {
	display: block;
	width: 110px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.benefits_list3 .text_block {
	display: table-cell;
	vertical-align: top;
	padding: 0 0 0 20px;
}

.benefits_list3.va_middle .text_block {
	vertical-align: middle;
}

.benefits_list3 .text_block h4 {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

/* benefits 4 */

.components_section {
	padding: 30px;
}

.benefits_list4 .benefit_item {
	margin: 0 auto 30px;
	width: 420px;
	background: #fff;
	-webkit-box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
	-moz-box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
	box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
}

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

.benefits_list4 .benefit_item img {
	display: block;
}

.benefits_list4 .text_block {
	padding: 25px 30px;
}

.benefits_list4 .text_block h4 {
	margin: 0 0 15px;
	padding: 0 0 0 20px;
	border-left: 4px solid #63c8d7;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	text-transform: uppercase;
}
.benefits_list4 .text_block li {
    background: url(../images/check.png) no-repeat 0 4px;
    padding: 0 0 10px 22px;
}
/* benefits 5 */

.benefits_list5 {
	background: url(../images/bg_light.jpg);
	overflow: hidden;
}

.benefits_list5.dark {
	background: #222;
}

.benefits_list5 .benefit_item {
	float: left;
	margin: 0 2px 2px 0;
	padding: 29px 15px 0 25px;
	width: 239px;
	height: 239px;
	-webkit-box-shadow: 0 0 0 1px #ebebeb;
	-moz-box-shadow: 0 0 0 1px #ebebeb;
	box-shadow: 0 0 0 1px #ebebeb;
}

.benefits_list5 .benefit_item:nth-child(even) {
	margin: 0 0 2px;
}

.benefits_list5 .benefit_item:nth-last-child(2),
.benefits_list5 .benefit_item:last-child {
	margin-bottom: 0;
}

.benefits_list5.dark .benefit_item {
	-webkit-box-shadow: 0 0 0 1px #4b4b4b;
	-moz-box-shadow: 0 0 0 1px #4b4b4b;
	box-shadow: 0 0 0 1px #4b4b4b;
	color: #fff;
}

.benefits_list5 .benefit_item img {
	display: block;
}

.benefits_list5 .benefit_item .separator {
	margin: 20px 0 14px;
}

.benefits_list5 .benefit_item h4 {
	font-weight: 700;
	text-transform: uppercase;
}

/* benefits 6 */

.benefits_list6 {
	padding: 20px 0;
	background: #ebebeb;
	overflow: hidden;
}

.benefits_list6 .benefit_item {
	margin: 0 0 20px;
	background: #fff url(../images/bg_light.jpg);
	-webkit-box-shadow: 0 0 20px rgba(2, 2, 2, 0.1);
	-moz-box-shadow: 0 0 20px rgba(2, 2, 2, 0.1);
	box-shadow: 0 0 20px rgba(2, 2, 2, 0.1);
}

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

.benefits_list6 .benefit_item .text_block {
	float: left;
	padding: 16px 25px 0 25px;
	width: 280px;
}

.benefits_list6 .benefit_item h4 {
	font-weight: 700;
	margin: 0 0 5px;
	font-size: 16px;
	line-height: 24px;
	text-transform: uppercase;
}

.benefits_list6 .benefit_item .image_block {
	float: left;
	width: 200px;
	position: relative;
}

.benefits_list6 .benefit_item img {
	display: block;
}

.benefits_list6 .benefit_item .number {
	width: 30px;
	height: 36px;
	background: #e43315;
	font-weight: 700;
	font-size: 26px;
	line-height: 36px;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 20px;
	left: -15px;
}

.benefits_list6 .benefit_item .number:before,
.benefits_list6 .benefit_item .number:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
}

.benefits_list6 .benefit_item .number:before {
	border-top: 36px solid rgba(255,255,255,0);
	border-right: 10px solid #e43315;
	left: -10px;
}

.benefits_list6 .benefit_item .number:after {
	border-bottom: 36px solid rgba(255,255,255,0);
	border-left: 10px solid #e43315;
	right: -10px;
}

/* benefits 7 */

.benefits_list7 .benefit_item {
	background: #333333;
}

.benefits_list7 .benefit_item:nth-child(odd) {
	background: #222;
	color: #fff;
}

.benefits_list7 .benefit_item img {
	display: block;
	float: left;
	width: 240px;
}

.benefits_list7 .benefit_item:nth-child(even) img {
	float: right;
}

.benefits_list7 .benefit_item .text_block {
	float: left;
	padding: 20px 20px 0;
	width: 240px;
}

.benefits_list7 .benefit_item h4 {
	margin: 0 0 15px;
	padding: 0 0 0 10px;
	border-left: 4px solid #e43315;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	text-transform: uppercase;
}

/* characteristics */

.characteristics_section {
	padding: 30px 0 0;
}

.characteristics_section h2.title {
	padding: 0 30px;
}

.characteristics__list li {
	padding: 15px 30px 15px 52px;
	text-align: right;
	position: relative;
}

.characteristics__list li:nth-child(odd) {
	background: #f4f4f4;
}

.characteristics__list li:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	border: 1px solid #e43315;
	background: #e43315;
	-webkit-box-shadow: 0 0 0 2px #fff inset;
	-moz-box-shadow: 0 0 0 2px #fff inset;
	box-shadow: 0 0 0 2px #fff inset;
	position: absolute;
	top: 20px;
	left: 30px;
}

.characteristics__list li:nth-child(odd):before {
	-webkit-box-shadow: 0 0 0 2px #f4f4f4 inset;
	-moz-box-shadow: 0 0 0 2px #f4f4f4 inset;
	box-shadow: 0 0 0 2px #f4f4f4 inset;
}

.characteristics__list li b {
	float: left;
}

/* comparison */

.comparison_section {
	padding: 30px 0 0;
}

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

.comparison_block .images_block {
	margin: 0 0 15px;
}

.comparison_block .images_block img {
	display: block;
	float: left;
	width: 240px;
}

.comparison_block .titles_block h4 {
	float: left;
	padding: 20px;
	width: 240px;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	text-transform: uppercase;
	text-align: center;
}

.comparison_block .titles_block h4:first-child {
	background: #222;
	color: #fff;
}

.comparison_block .titles_block h4:last-child {
	background: #333333;
}

.comparison_block .row {
	display: table;
	width: 100%;
}

.comparison_block .row:nth-child(odd) {
	background: #f4f4f4;
}

.comparison_block .row .column {
	display: table-cell;
	vertical-align: top;
	padding: 10px 10px 10px 32px;
	width: 50%;
	position: relative;
}

.comparison_block .row .column:first-child {
	border-right: 1px solid #fff;
}

.comparison_block .row .column:last-child {
	border-left: 1px solid #fff;
}

.comparison_block .row .column:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	border: 1px solid #000;
	background: #000;
	-webkit-box-shadow: 0 0 0 2px #fff inset;
	-moz-box-shadow: 0 0 0 2px #fff inset;
	box-shadow: 0 0 0 2px #fff inset;
	position: absolute;
	top: 15px;
	left: 10px;
}

.comparison_block .row .column:last-child:before {
	border: 1px solid #e43315;
	background: #e43315;
}

.comparison_block .row:nth-child(odd) .column:before {
	-webkit-box-shadow: 0 0 0 2px #f4f4f4 inset;
	-moz-box-shadow: 0 0 0 2px #f4f4f4 inset;
	box-shadow: 0 0 0 2px #f4f4f4 inset;
}

/* vote */

.vote_section {
	padding: 30px;
}

.vote_section .vote_block {
	padding: 40px;
	background: #fff;
	-webkit-box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
	-moz-box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
	box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
}

.vote_section .questions_list {
	margin: 0 0 22px;
}

.vote_section .question_item {
	margin: 0 0 20px;
	height: 50px;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
	background: #f0f0f0;
	-webkit-box-shadow: 0 0 0 1px #dedede inset;
	-moz-box-shadow: 0 0 0 1px #dedede inset;
	box-shadow: 0 0 0 1px #dedede inset;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

.vote_section .question_item:last-child {
	margin: 0;
}

.vote_section .question_item .line {
	display: none;
	width: 0%;
	height: 50px;
	position: absolute;
	top: 0;
	left: 0;
}

.vote_section .questions_list.active .question_item .line {
	display: block;
}

.vote_section .question_item:nth-child(1) .line {
	background: #7ac700;
}

.vote_section .question_item:nth-child(2) .line {
	background: #e43315;
}

.vote_section .question_item:nth-child(3) .line {
	background: #333333;
}

.vote_section .question_item .question_text {
	float: left;
	padding: 0 0 0 20px;
	line-height: 50px;
	position: relative;
}

.vote_section .question_item .question_text:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
	content: '';
	margin: -2px 10px 0 -5px;
	width: 18px;
	height: 18px;
	border: 4px solid #fff;
	-webkit-border-radius: 9px;
	-moz-border-radius: 9px;
	border-radius: 9px;
}

.vote_section .questions_list.active .question_item .question_text:before {
	display: none;
}

.vote_section .question_item:nth-child(1) .question_text:before {
	background: #7ac700;
}

.vote_section .question_item:nth-child(2) .question_text:before {
	background: #e43315;
}

.vote_section .question_item:nth-child(3) .question_text:before {
	background: #333333;
}

.vote_section .question_item .percents {
	display: none;
	float: right;
	padding: 0 20px 0 0;
	font-weight: 700;
	line-height: 50px;
	text-align: right;
	position: relative;
}

.vote_section .questions_list.active .question_item .percents {
	display: block;
}

.vote_section .voice_count {
	text-align: center;
}

.vote_section .voice_count b {
	margin: 0 0 0 5px;
	padding: 3px 5px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	background: #7ac700;
	color: #fff;
}

/* opinion 1 */

.opinion1_section {
	padding: 30px;
	position: relative;
}

.opinion1_section:before {
	display: block;
	content: '';
	border-top: 115px solid #333333;
	border-left: 115px solid rgba(255,255,255,0);
	position: absolute;
	top: 0;
	right: 0;
}

.opinion1_section h2.title {
	margin: 0 60px 30px 0;
}

.opinion1_section .author_block {
	margin: 0 0 20px;
	padding: 0 65px 0 0;
	background: url(../images/quote2_icon.png) right 48px no-repeat;
}

.opinion1_section .author_block img {
	display: block;
	float: left;
	width: 120px;
	position: relative;
	z-index: 10;
}

.opinion1_section .author_block .author_info {
	float: left;
	margin: 34px 0 0 -20px;
	width: 255px;
	font-size: 0;
	line-height: 0;
	letter-spacing: -1px;
}

.opinion1_section .author_block .name {
	display: inline-block;
	vertical-align: top;
	padding: 0 10px 0 35px;
	background: #333333;
	font-weight: 700;
	font-size: 16px;
	line-height: 34px;
	letter-spacing: normal;
	position: relative;
}

.opinion1_section .author_block .name:after {
	display: block;
	content: '';
	border-top: 34px solid #333333;
	border-right: 20px solid rgba(255,255,255,0);
	position: absolute;
	top: 0;
	right: -20px;
}

.opinion1_section .author_block .text {
	display: inline-block;
	vertical-align: top;
	padding: 0 10px 2px 35px;
	background: #222;
	font-size: 15px;
	line-height: 27px;
	color: #fff;
	position: relative;
}

.opinion1_section .author_block .text:after {
	display: block;
	content: '';
	border-top: 29px solid #222;
	border-right: 16px solid rgba(255,255,255,0);
	position: absolute;
	top: 0;
	right: -16px;
}

/* opinion 2 */

.opinion2_section {
	padding: 30px;
	background: #222 url(../images/opinion2_bg.jpg) center top no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.opinion2_section h2.title {
	color: #fff;
}

.opinion2_section h2.title span {
	color: #333333;
}

.opinion2_section .opinion_block {
	background: #fff;
}

.opinion2_section .author_block {
	position: relative;
}

.opinion2_section .author_block img {
	display: block;
}

.opinion2_section .author_block .author_info {
	font-size: 0;
	line-height: 0;
	letter-spacing: -1px;
	position: absolute;
	bottom: 20px;
	left: 0;
}

.opinion2_section .author_block .name {
	display: inline-block;
	vertical-align: top;
	padding: 0 10px 0 30px;
	background: #333333;
	font-weight: 700;
	font-size: 16px;
	line-height: 34px;
	letter-spacing: normal;
	position: relative;
}

.opinion2_section .author_block .name:after {
	display: block;
	content: '';
	border-top: 34px solid #333333;
	border-right: 20px solid rgba(255,255,255,0);
	position: absolute;
	top: 0;
	right: -20px;
}

.opinion2_section .author_block .text {
	display: inline-block;
	vertical-align: top;
	padding: 0 10px 2px 30px;
	background: #222;
	font-size: 15px;
	line-height: 27px;
	color: #fff;
	position: relative;
}

.opinion2_section .author_block .text:after {
	display: block;
	content: '';
	border-top: 29px solid #222;
	border-right: 16px solid rgba(255,255,255,0);
	position: absolute;
	top: 0;
	right: -16px;
}

.opinion2_section .text_block {
	padding: 20px 30px;
}

.opinion2_section .text_block h4 {
	margin: 0 0 15px;
	padding: 0 50px 0 20px;
	border-left: 4px solid #e43315;
	background: url(../images/quote1_icon.png) right 4px no-repeat;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	text-transform: uppercase;
}

/* reviews 1 */

.reviews1_section {
	padding: 30px;
	position: relative;
}

.reviews1_section:before {
	display: block;
	content: '';
	border-top: 115px solid #333333;
	border-left: 115px solid rgba(255,255,255,0);
	position: absolute;
	top: 0;
	right: 0;
}

.reviews1_section h2.title {
	margin: 0 60px 30px 0;
}

.reviews1_section .review_item {
	margin: 0 0 30px;
	padding: 25px;
	background: #fff;
	-webkit-box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
	-moz-box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
	box-shadow: 0 0 27px rgba(2, 2, 2, 0.1);
}

.reviews1_section .review_item:last-child {
	margin: 0;
}

.reviews1_section .review_item h4 {
	margin: 0 0 15px -25px;
	padding: 0 0 0 21px;
	border-left: 4px solid #999;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	text-transform: uppercase;
}

.reviews1_section .review_item p {
	margin: 0 0 25px;
}

.reviews1_section .author_block {
	padding: 0 50px 0 0;
	background: url(../images/quote1_icon.png) right center no-repeat;
}

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

.reviews1_section .author_block .author_info {
	float: left;
	margin: 6px 0 0 20px;
	width: 240px;
}

.reviews1_section .author_block .name {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

/* reviews 2 */

.reviews2_section {
	padding: 30px;
}

.reviews2_section .reviews_list {
	background: #fff;
}

.reviews2_section .review_item {
	padding: 30px;
}

.reviews2_section .review_item .photo {
	margin: 0 0 25px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.reviews2_section .review_item p {
	margin: 0 0 25px;
}

.reviews2_section .author_block {
	padding: 0 50px 0 0;
	background: url(../images/quote1_icon.png) right center no-repeat;
}

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

.reviews2_section .author_block .author_info {
	float: left;
	margin: 6px 0 0 20px;
	width: 230px;
}

.reviews2_section .author_block .name {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

.reviews2_section .owl-prev,
.reviews2_section .owl-next {
	width: 40px;
	height: 36px;
	background: url(../images/reviews2__arrows.png) no-repeat;
	position: absolute;
	top: 135px;
}

.reviews2_section .owl-prev {
	background-position: left center;
	left: -30px;
}

.reviews2_section .owl-next {
	background-position: right center;
	right: -30px;
}

/* reviews 3 */

.reviews3_section {
	padding: 30px;
}

.reviews3_section h2.title {
	padding: 0 50px 0 0;
	background: url(../images/quote1_icon.png) right 7px no-repeat;
}

.reviews3_section .review_item {
	margin: 0 0 30px;
}

.reviews3_section .review_item:last-child {
	margin: 0;
}

.reviews3_section .author_block {
	margin: 0 0 20px;
}

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

.reviews3_section .author_block .author_info {
	float: left;
	margin: 6px 0 0 20px;
	width: 260px;
}

.reviews3_section .author_block .name {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

.reviews3_section .author_block .info {
	margin: 12px 0 0;
	float: right;
	text-align: right;
}

.reviews3_section .author_block .rating {
	margin: 0 0 6px;
	width: 76px;
	height: 12px;
	background: url(../images/reviews3__stars.png) center no-repeat;
}

.reviews3_section .review_item p {
	margin: 0 0 20px;
}

.reviews3_section .images_block img {
	display: block;
	float: left;
	margin: 0 10px 0 0;
	width: 133px;
}

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

.tlt {
    padding: 0 30px;
}
.tlt h2 {
    margin-bottom: 10px;
}
/* reviews 4 */

.reviews4_section {
	padding: 30px;
	background: #333333 url(../images/reviews4_bg.png) right top no-repeat;
}

.reviews4_section h2.title {
	margin: 0 140px 30px 0;
}

.reviews4_section .reviews_list {
	background: #fff;
}

.reviews4_section .review_item {
	padding: 0 0 25px;
}

.reviews4_section .author_block {
	margin: 30px 30px 20px;
	padding: 0 50px 0 0;
	background: url(../images/quote1_icon.png) right center no-repeat;
}

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

.reviews4_section .author_block .author_info {
	float: left;
	margin: 6px 0 0 20px;
	width: 230px;
}

.reviews4_section .author_block .name {
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
}

.reviews4_section .review_item p {
	margin: 0 30px;
}

.reviews4_section .owl-prev,
.reviews4_section .owl-next {
	width: 40px;
	height: 36px;
	background: url(../images/reviews4__arrows.png) no-repeat;
	position: absolute;
	top: 132px;
}

.reviews4_section .owl-prev {
	background-position: left center;
	left: 0;
}

.reviews4_section .owl-next {
	background-position: right center;
	right: 0;
}

/* order info */

.order_info {
	background: url(../images/bg_light.jpg);
	overflow: hidden;
}

.order_info .info_item {
	float: left;
	margin: 0 2px 2px 0;
	padding: 25px 15px 0 25px;
	width: 239px;
	height: 239px;
	-webkit-box-shadow: 0 0 0 1px #ebebeb;
	-moz-box-shadow: 0 0 0 1px #ebebeb;
	box-shadow: 0 0 0 1px #ebebeb;
}

.order_info .info_item:nth-child(even) {
	margin: 0 0 2px;
}

.order_info .info_item:nth-last-child(2) {
	margin-bottom: 0;
}

.order_info .info_item:last-child {
	margin-bottom: 0;
	padding: 0;
}

.order_info .info_item .icon {
	display: block;
	height: 39px;
}

.order_info .info_item .separator {
	margin: 20px 0 14px;
}

.order_info .info_item h4 {
	text-transform: uppercase;
}

.order_info .info_item .product_image {
	display: block;
}

/* order steps 1 */

.order_steps1 {
	padding: 20px 0;
	background: #ffffff;
	position: relative;
}

.order_steps1:before,
.order_steps1:after {
	display: block;
	content: '';
	width: 100%;
	height: 20px;
	position: absolute;
	left: 0;
}

.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;
}

/* order steps 2 */

.order_steps2 {
	background: url(../images/bg_light.jpg);
	overflow: hidden;
}

.order_steps2 .step_item {
	float: left;
	margin: 0 2px 2px 0;
	padding: 30px 60px 0 30px;
	width: 239px;
	height: 239px;
	-webkit-box-shadow: 0 0 0 1px #ebebeb;
	-moz-box-shadow: 0 0 0 1px #ebebeb;
	box-shadow: 0 0 0 1px #ebebeb;
}

.order_steps2 .step_item:nth-child(even) {
	margin: 0 0 2px;
}

.order_steps2 .step_item:nth-last-child(2),
.order_steps2 .step_item:last-child {
	margin-bottom: 0;
}

.order_steps2.dark .step_item {
	background: #222 center no-repeat;
	-webkit-box-shadow: 0 0 0 1px #4b4b4b;
	-moz-box-shadow: 0 0 0 1px #4b4b4b;
	box-shadow: 0 0 0 1px #4b4b4b;
	color: #fff;
}

.order_steps2.dark .step_item:nth-child(1) {
	background-image: url(../images/order_steps2__step1_bg.jpg);
}

.order_steps2.dark .step_item:nth-child(2) {
	background-image: url(../images/order_steps2__step2_bg.jpg);
}

.order_steps2.dark .step_item:nth-child(3) {
	background-image: url(../images/order_steps2__step3_bg.jpg);
}

.order_steps2.dark .step_item:nth-child(4) {
	background-image: url(../images/order_steps2__step4_bg.jpg);
}

.order_steps2 .step_item img {
	display: block;
}

.order_steps2 .step_item .separator {
	margin: 20px 0 14px;
}

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

/* footer */

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

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

.footer_section a {
	color: #222;
}

/* =========================================================
   REBORN DOLL THEME — soft pink + lilac palette
   Added for the interactive doll offer
   ========================================================= */
:root {
    --reborn-bg: #fff7fb;
    --reborn-surface: #ffffff;
    --reborn-pink: #e84d8a;
    --reborn-pink-dark: #c93673;
    --reborn-pink-soft: #fbd8e8;
    --reborn-lilac: #8b5cf6;
    --reborn-lilac-dark: #7042d8;
    --reborn-plum: #5b2948;
    --reborn-text: #34252f;
    --reborn-muted: #7d6875;
    --reborn-border: #efd6e3;
}

body {
    background: #f3e9f0;
    color: var(--reborn-text);
}

.main_wrapper {
    background: var(--reborn-surface);
}

/* Main CTA */
.button {
    background: linear-gradient(135deg, var(--reborn-pink) 0%, var(--reborn-lilac) 100%);
    box-shadow: 0 0 0 10px rgba(232, 77, 138, 0.16), 0 10px 24px rgba(139, 92, 246, 0.22);
    color: #fff;
}

.button:hover {
    background: linear-gradient(135deg, var(--reborn-pink-dark) 0%, var(--reborn-lilac-dark) 100%);
}

/* Titles and accents */
h2.title,
.tlt h2 {
    color: var(--reborn-plum);
}

h2.title span,
.dark_theme h2.title span,
.opinion2_section h2.title span {
    color: var(--reborn-pink);
}

h2.title:after,
.separator {
    background: none;
    border-radius: 5px;
    background-color: var(--reborn-lilac);
}

.yellow_theme,
.reviews4_section {
    background-color: var(--reborn-pink-soft);
}

.gray_theme {
    background: #f6ecff;
}

.dark_theme {
    background: var(--reborn-plum);
}

/* Hero offer */
.offer_section.offer3 .main_title,
.offer_section.offer2 .main_title,
.offer_section.offer1 .main_title {
    background: linear-gradient(135deg, var(--reborn-pink) 0%, var(--reborn-lilac) 100%);
    color: #fff;
}

.offer_section.offer3 .info_block .subtitle {
    background: rgba(255, 242, 248, 0.93);
    color: var(--reborn-plum);
}

.offer_section.offer3 .price_block:before {
    background: var(--reborn-pink);
}

.offer_section.offer3 .price_block:after {
    border-top-color: var(--reborn-pink);
}

.offer_section.offer3 .price_item.old {
    background: var(--reborn-plum);
}

.offer_section.offer3 .price_item.old:before {
    border-top-color: var(--reborn-plum);
}

.offer_section.offer3 .price_item.old:after {
    border-left-color: var(--reborn-plum);
    border-top-color: var(--reborn-lilac);
}

.offer_section.offer3 .price_item.new {
    background: var(--reborn-lilac);
}

.offer_section.offer3 .price_item.new:before {
    border-bottom-color: var(--reborn-lilac);
}

.offer_section.offer3 .products_count {
    color: var(--reborn-plum);
}

.offer_section .products_count b {
    background: var(--reborn-pink);
    color: #fff;
    border-radius: 6px;
}

/* Product cards */
.catitem {
    padding: 18px;
    border: 1px solid var(--reborn-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(91, 41, 72, 0.08);
}

.catitem img {
    border-radius: 14px;
}

.catitem > div h3,
.benefits_list4 .text_block h4,
.benefits_list7 .benefit_item h4 {
    border-left-color: var(--reborn-pink);
    color: var(--reborn-plum);
}

.cp-left span {
    background: var(--reborn-pink);
}

.cp-right p {
    color: var(--reborn-lilac-dark);
}

/* Characteristics */
.characteristics__list li:nth-child(odd) {
    background: var(--reborn-bg);
}

.characteristics__list li:before {
    border-color: var(--reborn-pink);
    background: var(--reborn-pink);
}

.characteristics__list li:nth-child(odd):before {
    box-shadow: 0 0 0 2px var(--reborn-bg) inset;
}

/* Forms */
select[name="comment"],
select[name="comment1"],
select[name="comment2"],
select[name="comment3"],
.offer_section.offer3 .field,
.offer_section.offer3 .field[name='name'],
.offer_section.offer3 .field[name='phone'] {
    background-color: #fff7fb;
    border-color: var(--reborn-border);
    color: var(--reborn-text);
}

select[name="comment"]:focus,
select[name="comment1"]:focus,
select[name="comment2"]:focus,
select[name="comment3"]:focus,
.offer_section.offer3 .field:focus {
    border-color: var(--reborn-lilac);
    box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12);
}

/* Reviews */
.reviews3_section {
    background: #fffafd;
}

.reviews3_section .review_item {
    padding: 20px;
    border: 1px solid var(--reborn-border);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(91, 41, 72, 0.06);
}

.reviews3_section .author_block .name {
    color: var(--reborn-plum);
}

/* Order steps */
.order_steps1 {
    background: var(--reborn-bg);
}

.order_steps1 .step_item {
    background-color: #fffafd;
}

.order_steps1 .step_item h4 {
    color: var(--reborn-pink-dark);
}

/* Footer */
.footer_section {
    background: #f8edf4;
    color: var(--reborn-muted);
}

.footer_section a {
    color: var(--reborn-plum);
}

/* Product card layout fix */
.catitem {
    box-sizing: border-box;
    width: 420px;
}

.catitem > div {
    box-sizing: border-box;
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.catitem > div h3 {
    float: none;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    margin: 7px 0 0;
    padding-left: 10px;
    overflow-wrap: anywhere;
}

.catitem .catprice {
    float: none;
    flex: 0 0 178px;
    width: 178px;
}

.catitem .cp-left {
    width: 68px;
}

.catitem .cp-right {
    width: 110px;
}

.catitem .cp-right p {
    font-size: 29px;
    white-space: nowrap;
}

.catitem .button {
    box-sizing: border-box;
    width: 100%;
    max-width: 350px;
}

/* FINAL FIX: product card header and price must never overlap */
.catitem > div.clearfix {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto 24px !important;
}

.catitem > div.clearfix h3 {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 4px 0 4px 12px !important;
    box-sizing: border-box !important;
    line-height: 30px !important;
}

.catitem .catprice {
    float: none !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.catitem .cp-left,
.catitem .cp-right {
    float: none !important;
}

.catitem .cp-left {
    width: 92px !important;
    text-align: center !important;
}

.catitem .cp-right {
    width: 150px !important;
    text-align: center !important;
}

.catitem .cp-right p {
    font-size: 32px !important;
    line-height: 34px !important;
    white-space: nowrap !important;
}

.catitem .button {
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin: 10px auto 18px !important;
}

/* V3 symmetric product card layout */
.catitem {
    box-sizing: border-box;
    width: 420px;
    margin: 0 auto 40px;
    padding: 0 12px 18px;
    border: 1px solid var(--reborn-border);
    border-radius: 24px;
    background: var(--reborn-surface);
    box-shadow: 0 10px 28px rgba(91, 41, 72, 0.08);
}

.catitem > div.clearfix {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 auto 20px !important;
    padding: 0 6px !important;
    box-sizing: border-box !important;
}

.catitem > div.clearfix h3 {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-left: none !important;
    text-align: center !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
    color: var(--reborn-plum) !important;
}

.catitem .catprice {
    float: none !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 28px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.catitem .cp-left,
.catitem .cp-right {
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    text-align: center !important;
}

.catitem .cp-left {
    width: 92px !important;
    padding-top: 0 !important;
}

.catitem .cp-left span {
    margin-bottom: 8px;
    border-radius: 6px;
    padding: 3px 10px;
}

.catitem .cp-left p {
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
}

.catitem .cp-right {
    width: 150px !important;
}

.catitem .cp-right span {
    display: block;
    margin-bottom: 6px;
    font-size: 14px !important;
    line-height: 1.2 !important;
    color: var(--reborn-text) !important;
}

.catitem .cp-right p {
    margin: 0 !important;
    font-size: 34px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    letter-spacing: -0.5px;
}

.catitem .button {
    display: block;
    box-sizing: border-box;
    width: 360px !important;
    max-width: 100% !important;
    height: 76px;
    line-height: 76px;
    margin: 0 auto 8px !important;
    border-radius: 999px;
}

/* V4: slightly wider product card and slightly smaller current price */
.catitem {
    width: 440px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
}

.catitem .button {
    width: 372px !important;
}

.catitem .catprice {
    gap: 24px !important;
}

.catitem .cp-right {
    width: 142px !important;
}

.catitem .cp-right p {
    font-size: 30px !important;
    line-height: 1.05 !important;
}


/* V5 FINAL: compact, symmetric product card */
.catitem {
    width: 440px !important;
    box-sizing: border-box !important;
    padding: 0 14px 18px !important;
}

.catitem > div.clearfix {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 190px !important;
    align-items: center !important;
    column-gap: 14px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 82px !important;
    margin: 0 auto 18px !important;
    padding: 8px 4px 0 !important;
    box-sizing: border-box !important;
}

.catitem > div.clearfix::after,
.catitem .catprice.clearfix::after {
    display: none !important;
    content: none !important;
}

.catitem > div.clearfix h3 {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 2px 0 2px 12px !important;
    border-left: 4px solid var(--reborn-pink) !important;
    text-align: left !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
    color: var(--reborn-plum) !important;
    overflow-wrap: normal !important;
}

.catitem .catprice {
    float: none !important;
    display: grid !important;
    grid-template-columns: 72px 110px !important;
    align-items: end !important;
    justify-content: end !important;
    gap: 8px !important;
    width: 190px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.catitem .cp-left,
.catitem .cp-right {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

.catitem .cp-left span {
    display: inline-block !important;
    margin: 0 0 5px !important;
    padding: 2px 8px !important;
    font-size: 13px !important;
    line-height: 20px !important;
}

.catitem .cp-left p {
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 22px !important;
    white-space: nowrap !important;
}

.catitem .cp-right span {
    display: block !important;
    margin: 0 0 4px !important;
    font-size: 13px !important;
    line-height: 18px !important;
    white-space: nowrap !important;
}

.catitem .cp-right p {
    margin: 0 !important;
    font-size: 28px !important;
    line-height: 30px !important;
    letter-spacing: -0.5px !important;
    white-space: nowrap !important;
}

.catitem .button {
    width: 372px !important;
    max-width: calc(100% - 16px) !important;
    margin: 8px auto 8px !important;
}

/* V6: balanced spacing above image sections */
.description_section + .cat {
    padding-top: 24px !important;
}

.description_section + .cat .catitem:first-child {
    margin-top: 0 !important;
}

/* V7: clean and balanced reviews layout */
.reviews3_section {
    padding: 30px 20px !important;
}

.reviews3_section .review_item {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 0 24px !important;
    padding: 20px !important;
    border-radius: 18px !important;
}

.reviews3_section .author_block {
    display: grid !important;
    grid-template-columns: 60px minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 14px !important;
    width: 100% !important;
    margin: 0 0 18px !important;
}

.reviews3_section .author_block::after {
    display: none !important;
    content: none !important;
}

.reviews3_section .author_block img {
    float: none !important;
    width: 60px !important;
    height: 60px !important;
    margin: 0 !important;
    object-fit: cover !important;
}

.reviews3_section .author_block .author_info {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.reviews3_section .author_block .name {
    margin: 0 0 3px !important;
    font-size: 16px !important;
    line-height: 22px !important;
}

.reviews3_section .author_block .author_info .text {
    font-size: 13px !important;
    line-height: 18px !important;
    color: var(--reborn-muted) !important;
}

.reviews3_section .author_block .info {
    float: none !important;
    align-self: center !important;
    margin: 0 !important;
    text-align: right !important;
}

.reviews3_section .author_block .rating {
    margin: 0 0 5px auto !important;
}

.reviews3_section .author_block .date {
    font-size: 12px !important;
    line-height: 16px !important;
    color: var(--reborn-muted) !important;
    white-space: nowrap !important;
}

.reviews3_section .review_item p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: var(--reborn-text) !important;
}

/* UNIVERSAL KIDS THEME — blue, aqua, yellow and orange */
:root {
    --reborn-bg: #eef7fb;
    --reborn-surface: #ffffff;
    --reborn-pink: #19a7ce;
    --reborn-pink-dark: #087f9e;
    --reborn-pink-soft: #dff6ff;
    --reborn-lilac: #3b82f6;
    --reborn-lilac-dark: #1d4ed8;
    --reborn-plum: #183153;
    --reborn-text: #243447;
    --reborn-muted: #6a7b8c;
    --reborn-border: #cfe7f2;
    --kids-yellow: #ffd166;
    --kids-orange: #ff8a3d;
    --kids-green: #3ccf91;
    --kids-sky: #67d6f4;
}

body {
    background: linear-gradient(135deg, #e8f7ff 0%, #fff8df 55%, #eafbf4 100%) !important;
    color: var(--reborn-text) !important;
}

.main_wrapper {
    background: #ffffff !important;
    box-shadow: 0 0 34px rgba(24, 49, 83, 0.10) !important;
}

.button {
    background: linear-gradient(135deg, #19a7ce 0%, #3b82f6 55%, #3ccf91 100%) !important;
    box-shadow: 0 0 0 10px rgba(25, 167, 206, 0.16), 0 12px 24px rgba(29, 78, 216, 0.20) !important;
    color: #fff !important;
}

.button:hover {
    background: linear-gradient(135deg, #087f9e 0%, #1d4ed8 55%, #22a96f 100%) !important;
}

h2.title,
.catitem > div.clearfix h3,
.reviews3_section .author_block .name {
    color: var(--reborn-plum) !important;
}

h2.title span,
.dark_theme h2.title span {
    color: #1597bd !important;
}

h2.title:after,
.separator {
    background: none !important;
    border-radius: 10px !important;
    background-color: var(--kids-yellow) !important;
}

.yellow_theme {
    background: var(--kids-yellow) !important;
}

.gray_theme {
    background: #e7f7fc !important;
}

.dark_theme {
    background: #183153 !important;
}

.offer_section.offer3 .main_title,
.offer_section.offer2 .main_title,
.offer_section.offer1 .main_title {
    background: linear-gradient(135deg, #1597bd 0%, #3b82f6 55%, #3ccf91 100%) !important;
    color: #fff !important;
}

.offer_section.offer3 .info_block .subtitle {
    background: rgba(235, 249, 255, 0.94) !important;
    color: #183153 !important;
}

.offer_section.offer3 .price_block:before {
    background: var(--kids-orange) !important;
}

.offer_section.offer3 .price_block:after {
    border-top-color: var(--kids-orange) !important;
}

.offer_section.offer3 .price_item.old {
    background: #183153 !important;
}

.offer_section.offer3 .price_item.old:before {
    border-top-color: #183153 !important;
}

.offer_section.offer3 .price_item.old:after {
    border-left-color: #183153 !important;
    border-top-color: #3b82f6 !important;
}

.offer_section.offer3 .price_item.new {
    background: #3b82f6 !important;
}

.offer_section.offer3 .price_item.new:before {
    border-bottom-color: #3b82f6 !important;
}

.offer_section .products_count b,
.cp-left span {
    background: var(--kids-orange) !important;
    color: #fff !important;
}

.catitem {
    border-color: var(--reborn-border) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7fcff 100%) !important;
    box-shadow: 0 12px 28px rgba(24, 49, 83, 0.10) !important;
}

.catitem > div.clearfix h3,
.benefits_list4 .text_block h4,
.benefits_list7 .benefit_item h4 {
    border-left-color: var(--kids-orange) !important;
}

.cp-right p,
.social_proof_block .info_item .number {
    color: #1d4ed8 !important;
}

.characteristics__list li:nth-child(odd) {
    background: #edf9fd !important;
}

.characteristics__list li:before,
.list2.marker1 li:before,
.comparison_block .row .column:last-child:before {
    border-color: #19a7ce !important;
    background: #19a7ce !important;
}

.reviews3_section {
    background: linear-gradient(180deg, #f6fcff 0%, #ffffff 100%) !important;
}

.reviews3_section .review_item {
    background: #fff !important;
    border: 1px solid #d4ebf4 !important;
    box-shadow: 0 10px 24px rgba(24, 49, 83, 0.08) !important;
}

.reviews3_section .author_block .author_info .text,
.reviews3_section .author_block .date {
    color: #6a7b8c !important;
}

.reviews3_section .author_block .rating {
    filter: hue-rotate(150deg) saturate(1.15) !important;
}

.offer_section.offer3 .field,
.offer_section.offer3 .field[name='name'],
.offer_section.offer3 .field[name='phone'],
select[name='comment'],
select[name='comment1'],
select[name='comment2'],
select[name='comment3'] {
    background-color: #f1f9fd !important;
    border-color: #c8e6f2 !important;
    color: #334155 !important;
}

.offer_section.offer3 .field:focus,
select:focus {
    border-color: #19a7ce !important;
    box-shadow: 0 0 0 3px rgba(25, 167, 206, 0.14) !important;
}

.order_steps1 .step_item h4,
.tlt h2.title span {
    color: #1597bd !important;
}

.footer_section a {
    color: #1d4ed8 !important;
}

/* MEN'S TRANSITIONAL VESTS — graphite outdoor theme */
:root {
    --vest-bg: #111411;
    --vest-surface: #f4f2ec;
    --vest-card: #ffffff;
    --vest-graphite: #1b201d;
    --vest-graphite-soft: #292f2b;
    --vest-olive: #4f5f46;
    --vest-olive-dark: #35402f;
    --vest-accent: #e77624;
    --vest-accent-dark: #c85b12;
    --vest-sand: #d9cbb7;
    --vest-text: #202521;
    --vest-muted: #6b736d;
    --vest-border: #d8dbd6;
}

html {
    scroll-behavior: smooth;
}

body {
    min-width: 320px !important;
    background:
        radial-gradient(circle at 20% 0, rgba(79, 95, 70, .28), transparent 36%),
        linear-gradient(145deg, #0d100e 0%, #1b211d 48%, #101310 100%) !important;
    color: var(--vest-text) !important;
}

.main_wrapper {
    width: 100% !important;
    max-width: 480px !important;
    background: var(--vest-surface) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .42) !important;
    overflow: hidden;
}

section {
    position: relative;
}

.button {
    width: min(350px, calc(100% - 48px)) !important;
    height: 72px !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, var(--vest-accent) 0%, #f08a38 100%) !important;
    box-shadow: 0 8px 0 var(--vest-accent-dark), 0 16px 28px rgba(200, 91, 18, .24) !important;
    font-size: 19px !important;
    line-height: 72px !important;
    letter-spacing: .7px;
    text-transform: uppercase;
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.button:hover {
    background: linear-gradient(135deg, #f08736 0%, var(--vest-accent) 100%) !important;
    box-shadow: 0 6px 0 var(--vest-accent-dark), 0 13px 24px rgba(200, 91, 18, .28) !important;
    filter: none !important;
    transform: translateY(2px);
}

.button:active {
    box-shadow: 0 2px 0 var(--vest-accent-dark), 0 8px 18px rgba(200, 91, 18, .24) !important;
    transform: translateY(6px);
}

.yellow_theme {
    background: var(--vest-sand) !important;
}

.gray_theme {
    background: #e7e6df !important;
}

.dark_theme,
.offer_section.offer1,
.offer_section.offer2 {
    background: var(--vest-graphite) !important;
    color: #fff !important;
}

h2.title {
    color: var(--vest-graphite) !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    letter-spacing: -.5px;
}

h2.title span,
.dark_theme h2.title span,
.tlt h2.title span {
    color: var(--vest-olive) !important;
}

.dark_theme h2.title {
    color: #fff !important;
}

.dark_theme h2.title span {
    color: #aabb9e !important;
}

h2.title:after,
.separator,
.separator.white {
    width: 70px !important;
    height: 4px !important;
    border-radius: 0 !important;
    background: var(--vest-accent) !important;
}

.offer_section .main_title,
.offer_section.offer1 .main_title,
.offer_section.offer2 .main_title,
.offer_section.offer3 .main_title {
    padding: 16px 24px !important;
    background: linear-gradient(135deg, #171b18 0%, var(--vest-olive-dark) 100%) !important;
    color: #fff !important;
    font-size: 34px !important;
    line-height: 1.16 !important;
    letter-spacing: -.6px;
    text-transform: uppercase;
}

.offer_section .info_block .subtitle,
.offer_section.offer1 .info_block .subtitle,
.offer_section.offer2 .info_block .subtitle,
.offer_section.offer3 .info_block .subtitle {
    background: rgba(20, 24, 21, .92) !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, .08) !important;
    color: #fff !important;
    letter-spacing: 1.3px !important;
}

.offer_section .info_block img,
.catitem img,
section .image {
    filter: contrast(1.02) saturate(.92);
}

.offer_section.offer1 .price_old,
.offer_section.offer3 .price_block:before {
    background: var(--vest-graphite-soft) !important;
}

.offer_section.offer1 .price_old:before {
    border-bottom-color: var(--vest-graphite-soft) !important;
}

.offer_section.offer1 .price_new,
.offer_section.offer2 .price_item.new,
.offer_section.offer3 .price_item.new {
    background: var(--vest-accent) !important;
    color: #fff !important;
}

.offer_section.offer1 .price_new:before {
    border-top-color: var(--vest-accent) !important;
}

.offer_section.offer1 .price_new:after {
    border-bottom-color: var(--vest-accent) !important;
}

.offer_section.offer3 .price_block:after {
    border-top-color: var(--vest-graphite-soft) !important;
}

.offer_section.offer3 .price_item.old {
    background: var(--vest-graphite) !important;
}

.offer_section.offer3 .price_item.old:before {
    border-top-color: var(--vest-graphite) !important;
}

.offer_section.offer3 .price_item.old:after {
    border-left-color: var(--vest-graphite) !important;
    border-top-color: var(--vest-accent) !important;
}

.offer_section.offer3 .price_item.new:before {
    border-bottom-color: var(--vest-accent) !important;
}

.offer_section .products_count b,
.cp-left span {
    background: var(--vest-accent) !important;
    color: #fff !important;
    border-radius: 3px !important;
}

.offer_section.offer1 ul li:before,
.characteristics__list li:before,
.list2.marker1 li:before,
.comparison_block .row .column:last-child:before {
    border-color: var(--vest-accent) !important;
    background-color: var(--vest-accent) !important;
}

.offer_section.offer2 ul li:before {
    border-top-color: var(--vest-accent) !important;
}

.catitem {
    width: calc(100% - 40px) !important;
    padding: 10px 10px 18px;
    border: 1px solid var(--vest-border) !important;
    border-radius: 10px;
    background: var(--vest-card) !important;
    box-shadow: 0 12px 30px rgba(27, 32, 29, .12) !important;
}

.catitem > div {
    width: 100% !important;
    margin-bottom: 16px !important;
    padding: 0 8px !important;
}

.catitem > div h3,
.catitem > div.clearfix h3,
.benefits_list4 .text_block h4,
.benefits_list7 .benefit_item h4 {
    border-left-color: var(--vest-accent) !important;
    color: var(--vest-graphite) !important;
}

.cp-right p,
.social_proof_block .info_item .number,
.order_steps1 .step_item h4 {
    color: var(--vest-olive-dark) !important;
}

.characteristics__list li:nth-child(odd) {
    background: #e4e6df !important;
}

.characteristics__list li:nth-child(even) {
    background: #f7f6f1 !important;
}

.reviews3_section {
    background: linear-gradient(180deg, #e8e9e3 0%, var(--vest-surface) 100%) !important;
}

.reviews3_section .review_item {
    background: #fff !important;
    border: 1px solid var(--vest-border) !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 26px rgba(27, 32, 29, .10) !important;
}

.reviews3_section .author_block .name {
    color: var(--vest-graphite) !important;
}

.reviews3_section .author_block .author_info .text,
.reviews3_section .author_block .date,
.reviews3_section .review_item p {
    color: var(--vest-muted) !important;
}

.reviews3_section .author_block .rating {
    filter: sepia(1) saturate(4) hue-rotate(340deg) !important;
}

.offer_section.offer3 .field,
.offer_section.offer3 .field[name='name'],
.offer_section.offer3 .field[name='phone'],
select[name='comment'],
select[name='comment1'],
select[name='comment2'],
select[name='comment3'] {
    background-color: #f7f6f1 !important;
    border: 1px solid #cdd1ca !important;
    border-radius: 6px !important;
    color: var(--vest-graphite) !important;
}

.offer_section.offer3 .field:focus,
select:focus {
    border-color: var(--vest-olive) !important;
    box-shadow: 0 0 0 3px rgba(79, 95, 70, .16) !important;
}

.footer_section {
    background: #111411 !important;
    color: #aeb5af !important;
}

.footer_section a {
    color: #d5a471 !important;
}

@media (max-width: 479px) {
    .main_wrapper {
        max-width: 100% !important;
    }

    .offer_section .main_title,
    .offer_section.offer1 .main_title,
    .offer_section.offer2 .main_title,
    .offer_section.offer3 .main_title {
        padding: 14px 16px !important;
        font-size: clamp(25px, 8vw, 34px) !important;
    }

    h2.title {
        font-size: clamp(25px, 7vw, 30px) !important;
        line-height: 1.18 !important;
    }

    .button {
        width: calc(100% - 48px) !important;
        font-size: 17px !important;
    }

    .catitem > div h3 {
        width: 54% !important;
        font-size: 18px !important;
    }

    .catprice {
        width: 46% !important;
    }

    .offer_section .field,
    select[name='comment'],
    select[name='comment1'],
    select[name='comment2'],
    select[name='comment3'] {
        width: calc(100% - 48px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .button {
        transition: none;
    }
}

/* Discount badge: keep it above the product image and one line lower */
.offer_section .info_block {
    isolation: isolate;
}

.offer_section .info_block img {
    position: relative;
    z-index: 1;
}

.offer_section .info_block .discount {
    top: 70px !important;
    z-index: 3 !important;
    pointer-events: none;
}
