:root {
	--white: #fff;
	--black: #272727;
	--black_rgb: 39, 39, 39;
	--red: #DB3732;
	--grey: #EEEEEE;
	--grey1: #565656;
	--grey2: #F4F4F4;
	--grey3: #8E8E8F;
}
.red {
	color: var(--red);
}
::selection {
	background: var(--red);
}
::-moz-selection {
	background: var(--red);
}
textarea:focus, input:focus, textarea, input {
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}
@-webkit-keyframes main-bg-anim {
	0% {
		transform: scale(1);
	}
	60% {
		transform: scale(1.3);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes main-bg-anim {
	0% {
		transform: scale(1);
	}
	60% {
		transform: scale(1.3);
	}
	100% {
		transform: scale(1);
	}
}
@-webkit-keyframes jump {
	0% {
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	25% {
		-webkit-transform: translate(-50%, -25%);
		transform: translate(-50%, -25%);
	}
	50% {
		-webkit-transform: translate(-50%, 0%);
		transform: translate(-50%, 0%);
	}
	75% {
		-webkit-transform: translate(-50%, -25%);
		transform: translate(-50%, -25%);
	}
	100% {
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}
@keyframes jump {
	0% {
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	25% {
		-webkit-transform: translate(-50%, -25%);
		transform: translate(-50%, -25%);
	}
	50% {
		-webkit-transform: translate(-50%, 0%);
		transform: translate(-50%, 0%);
	}
	75% {
		-webkit-transform: translate(-50%, -25%);
		transform: translate(-50%, -25%);
	}
	100% {
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}
@keyframes right_move {
	0% {
		-webkit-transform: translate(0%, 0%);
		transform: translate(0%, 0%);
	}
	50% {
		-webkit-transform: translate(25%, 0%);
		transform: translate(25%, 0%);
	}
	100% {
		-webkit-transform: translate(0%, 0%);
		transform: translate(0%, 0%);
	}
}
@keyframes left_move {
	0% {
		-webkit-transform: translate(0%, 0%);
		transform: translate(0%, 0%);
	}
	50% {
		-webkit-transform: translate(-25%, 0%);
		transform: translate(-25%, 0%);
	}
	100% {
		-webkit-transform: translate(0%, 0%);
		transform: translate(0%, 0%);
	}
}
@-moz-keyframes cycle {
	35% { transform: rotate(0) translate(0, 0); }
	40% { transform: rotate(5deg) translate(0, -2px); }
	45% { transform: rotate(-3deg) translate(0, -2px); }
	50% { transform: rotate(5deg) translate(0, -2px); }
	55% { transform: rotate(-3deg) translate(0, -2px); }
	60% { transform: rotate(5deg) translate(0, -2px); }
	65% { transform: rotate(-3deg) translate(0, -2px); }
	70% { transform: rotate(0) translate(0, 0); }
}
@-webkit-keyframes cycle {
	35% { transform: rotate(0) translate(0, 0); }
	40% { transform: rotate(5deg) translate(0, -2px); }
	45% { transform: rotate(-3deg) translate(0, -2px); }
	50% { transform: rotate(5deg) translate(0, -2px); }
	55% { transform: rotate(-3deg) translate(0, -2px); }
	60% { transform: rotate(5deg) translate(0, -2px); }
	65% { transform: rotate(-3deg) translate(0, -2px); }
	70% { transform: rotate(0) translate(0, 0); }
}
/* Анимация частые вопросы*/
@media (prefers-reduced-motion: reduce) {
	.collapsing {
		transition-property: height, visibility;
		transition-duration: .35s;
	}
}
@-webkit-keyframes animPulse {
	0% {
		transform: scale(1);
	}
	100% {
		opacity: 0;
		transform: scale(2);
	}
}
@keyframes animPulse {
	0% {
		transform: scale(1);
	}
	100% {
		opacity: 0;
		transform: scale(2);
	}
}
.custom_tooltip {
	--bs-tooltip-bg: var(--red);
	--bs-tooltip-color: var(--white);
	--bs-tooltip-font-size: 10px;
	--bs-tooltip-padding-x: 5px;
	--bs-tooltip-padding-y: 5px;
	--bs-tooltip-border-radius: 4px;
}
.form-check-input[type=checkbox] {
	padding: unset;
	width: 25px;
	height: 25px;
	margin-left: -10px;
}
.form-check-input:checked {
	background-color: var(--red);
	border-color: var(--red);
}
/* Кнопки */
.btn-red {
	background: var(--red);
	color: var(--white);
	padding: 10px 60px;
	border-radius: 10px;
	font-weight: bold;
	font-size: 12px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn-red:disabled, .btn-red:focus, .btn-red:active {
	background: var(--red) !important;
	color: var(--white) !important;
	border-color: var(--red) !important;
	opacity: .5;
}
.btn-red:focus {
	opacity: 1;
}
.btn-blink-anim:disabled:before {
	opacity: 0;
}
.btn-red img {
	margin-left: 5px;
}
.btn-red:hover {
	background: var(--red);
	color: var(--white);
	transform: scaleX(1.05) scaleY(1.05);
}
.btn-red:hover img {
	animation: right_move 1s infinite linear;
}
.btn-red-box-shadow {
	box-shadow: 0px 0px 5px var(--red);
	-webkit-box-shadow: 0px 0px 5px var(--red);
	-moz-box-shadow: 0px 0px 5px var(--red);
}
.btn-white-outline {
	background: none;
	color: var(--white);
	border: 1px solid var(--white);
	box-shadow: 0px 0px 4px 1px rgba(255, 255, 255, 0.35);
	padding: 10px 60px;
	border-radius: 10px;
	font-weight: bold;
}
.btn-red-outline {
	background: none;
	color: var(--red);
	border: 1px solid var(--red);
	padding: 10px 60px;
	border-radius: 10px;
	font-weight: bold;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn-red-outline:hover {
	background: none;
	color: var(--red);
	border: 1px solid var(--red);
	transform: scaleX(1.05) scaleY(1.05);
}
.btn-lg {
	font-size: 17px;
	padding: 15px 70px;
}
.modal .btn-lg {
	padding: 15px 0px;
}
.rad30 {
	border-radius: 30px;
}
@-webkit-keyframes slideme {
	0% { left: -30px; margin-left: 0px; }
	30% { left: 110%; margin-left: 80px; }
	100% { left: 110%; margin-left: 80px; }
}
.btn-blink-anim {
	overflow: hidden;
	position: relative;
	border: 0;
}
.btn-blink-anim:before {
	content: "";
	display: block;
	width: 20px;
	height: 300px;
	margin-left: 60px;
	background: var(--white);
	opacity: 0.8;
	position: absolute;
	left: -40px;
	top: -150px;
	z-index: 1;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.1s;
	transition: all 0.1s;
	-webkit-animation-name: slideme;
	animation-name: slideme;
	-webkit-animation-duration: 3s;
	animation-duration: 3s;
	-webkit-animation-delay: 0.05s;
	animation-delay: 0.05s;
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}
.btn-read-more {
	text-align: center;
	padding-top: 5px;
	cursor: pointer;
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 15px;
	display: inline-block;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn-read-more span {
	border-bottom: 1px dashed #DB3732;
	position: relative;
	padding: 0 20px;
	padding-bottom: 5px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn-read-more span:hover {
	color: var(--red);
}
.btn-read-more span:before, .btn-read-more span:after {
	content: '';
	position: absolute;
	top: 8px;
	background: url("data:image/svg+xml;charset=UTF-8,%3csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M4.61195 5.84044L0.161401 1.44059C-0.0538004 1.22784 -0.0538004 0.883817 0.161401 0.673331L0.68109 0.159562C0.896291 -0.0531875 1.24199 -0.0531875 1.45719 0.159562L4.99886 3.64504L8.54281 0.159562C8.75801 -0.0509242 9.10371 -0.0509242 9.31891 0.159562L9.8386 0.673331C10.0538 0.886081 10.0538 1.2301 9.8386 1.44059L5.38805 5.84044C5.17285 6.05319 4.82486 6.05319 4.61195 5.84044Z' fill='%23272727'/%3e%3c/svg%3e");
	width: 10px;
	height: 6px;
	-webkit-animation: jump 1s infinite linear;
	animation: jump 1s infinite linear;
}
.btn-red.btn-read-more span:before, .btn-red.btn-read-more span:after {
	background: url("data:image/svg+xml;charset=UTF-8,%3csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M4.61195 5.84044L0.161401 1.44059C-0.0538004 1.22784 -0.0538004 0.883817 0.161401 0.673331L0.68109 0.159562C0.896291 -0.0531875 1.24199 -0.0531875 1.45719 0.159562L4.99886 3.64504L8.54281 0.159562C8.75801 -0.0509242 9.10371 -0.0509242 9.31891 0.159562L9.8386 0.673331C10.0538 0.886081 10.0538 1.2301 9.8386 1.44059L5.38805 5.84044C5.17285 6.05319 4.82486 6.05319 4.61195 5.84044Z' fill='%23ffffff'/%3e%3c/svg%3e");
}
.btn-read-more span:before {
	left: 8px;
}
.btn-read-more span:after {
	right: 0px;
}
/* Базовые стили для всех кнопок */
.btn-whats,
.btn-telega,
.btn-vk,
.btn-max {
	border-radius: 20px;
	border: 0;
	font-size: 12px;
	font-weight: bold;
	color: var(--white);
	transition: all 0.3s ease-in-out;
}
/* Общие стили для иконок (псевдоэлемент :before) */
.btn-whats:before,
.btn-telega:before,
.btn-vk:before,
.btn-max:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 14px;
	height: 15px;
	margin-right: 5px;
	margin-top: -2px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
/* Уникальные стили для каждой кнопки */
.btn-whats {
	background: linear-gradient(180deg, #7DE777 0%, #5CC34D 100%);
}
.btn-whats:before {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='15' viewBox='0 0 14 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.470824 14.0401C0.844308 13.9429 2.61835 13.4568 3.17858 13.2624C3.92555 13.068 3.64543 13.068 4.3924 13.3596C6.16645 14.1373 8.31398 14.0401 9.90128 13.068C10.7416 12.5819 10.835 12.4847 11.3952 11.9015C13.9162 9.27679 13.8229 4.99953 11.3018 2.47206C10.1814 1.40274 8.59409 0.430637 6.35319 0.625058C2.52498 0.916689 -0.182772 4.7079 0.564195 8.4991C0.750937 9.56842 0.937679 9.66563 1.31116 10.4433C1.31116 10.6377 1.21779 10.9294 1.12442 11.1238C1.03105 11.6098 0.937679 12.0959 0.750937 12.5819C0.657566 12.9708 0.470824 13.554 0.470824 14.0401ZM1.96476 12.3875C2.24487 12.3875 2.71173 12.1931 3.08521 12.0959C3.27195 12.0959 3.45869 11.9987 3.64543 11.9987C3.83218 11.9015 3.92555 11.8043 4.11229 11.9987C4.67251 12.2903 5.41948 12.5819 6.16645 12.6792C7.66038 12.8736 9.34106 12.3875 10.3681 11.4154C10.835 10.9294 11.2085 10.4433 11.582 9.76284C11.8621 9.08237 12.1422 8.40189 12.1422 7.42979C12.1422 6.06884 11.7687 4.7079 10.9284 3.73579L9.80791 2.66648C8.8742 1.986 7.66038 1.69437 6.53993 1.69437C2.61835 1.986 0.190711 6.45768 2.33824 10.1517C2.52498 10.5405 2.43161 10.4433 2.24487 11.221C2.1515 11.6098 2.05813 12.0959 1.96476 12.3875ZM4.48577 4.22184C4.11229 4.31905 3.83218 4.80511 3.64543 5.19395C3.55206 5.77721 3.64543 6.26326 3.83218 6.74931C4.11229 7.42979 4.85926 8.40189 5.32611 8.79073C5.88634 9.374 6.44656 9.76284 7.38027 10.1517C7.84712 10.3461 8.22061 10.5405 8.8742 10.4433C9.5278 10.3461 10.088 9.76284 10.088 8.98516C10.088 8.69352 9.80791 8.69352 9.62117 8.59631C9.43443 8.4991 8.59409 7.91584 8.40735 8.11026C8.31398 8.11026 8.03387 8.4991 8.03387 8.59631C7.84712 8.79073 7.75375 8.98515 7.47364 8.88794C6.72667 8.59631 5.97971 8.01305 5.51285 7.33258C5.046 6.55489 5.23274 6.74931 5.60622 6.26326C5.88634 5.87442 5.69959 5.68 5.41948 4.90232C5.23274 4.51347 5.23274 4.02742 4.48577 4.22184Z' fill='%23FDFEFD'/%3E%3C/svg%3E");
}
.btn-telega {
	background: linear-gradient(180deg, #37AEE2 0%, #1E96C8 100%);
}
.btn-telega:before {
	background-image: url("data:image/svg+xml,%3Csvg width='13' height='11' viewBox='0 0 13 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.1225 0.0723276L0.60702 4.55255C-0.178866 4.87102 -0.174319 5.31334 0.462833 5.51059L3.41932 6.4411L10.2598 2.08669C10.5832 1.88814 10.8787 1.99495 10.6358 2.21251L5.09371 7.2589H5.09241L5.09371 7.25956L4.88977 10.3342C5.18854 10.3342 5.32039 10.1959 5.48795 10.0327L6.92398 8.62387L9.911 10.8499C10.4618 11.1559 10.8573 10.9986 10.9944 10.3355L12.9552 1.01201C13.1559 0.200109 12.648 -0.167509 12.1225 0.0723276Z' fill='white'/%3E%3C/svg%3E");
}
.btn-vk {
	background-color: #0077FF !important;
}
.btn-vk:before {
	background-image: url("data:image/svg+xml,%3Csvg width='13' height='11' viewBox='0 0 15 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.16985 10C3.04493 10 0.121799 6.24625 0 0H2.56715C2.65147 4.58458 4.54399 6.52653 6.04305 6.92693V0H8.46039V3.95395C9.94071 3.78378 11.4958 1.98198 12.0205 0H14.4378C14.0349 2.44244 12.3484 4.24424 11.1492 4.98498C12.3484 5.58559 14.2692 7.15716 15 10H12.3391C11.7676 8.0981 10.3436 6.62663 8.46039 6.42643V10H8.16985Z' fill='white'/%3E%3C/svg%3E%0A");
}
.btn-max {
	background-image: linear-gradient(180deg, #046ef4, #572dff);
}
.btn-max:before {
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.74638 15.1236C6.25795 15.1236 5.56624 14.9054 4.36391 14.0324C3.6034 15.0145 1.19509 15.7819 1.09007 14.4689C1.09007 13.4832 0.872781 12.6503 0.626519 11.741C0.333178 10.6207 0 9.37314 0 7.56543C0 3.24804 3.52734 0 7.70655 0C11.8894 0 15.1668 3.40808 15.1668 7.60544C15.1736 9.59013 14.396 11.4964 13.0048 12.9059C11.6136 14.3154 9.72245 15.113 7.74638 15.1236ZM7.80795 3.7318C5.77267 3.62632 4.18646 5.0412 3.83517 7.25991C3.54544 9.09671 4.0597 11.3336 4.4979 11.45C4.70795 11.5009 5.23669 11.0717 5.56624 10.7407C6.11117 11.1188 6.74577 11.3459 7.40596 11.3991C8.41969 11.448 9.41213 11.0956 10.1699 10.4175C10.9277 9.7394 11.3903 8.7898 11.4584 7.77276C11.498 6.7536 11.1377 5.75955 10.455 5.0045C9.77232 4.24945 8.82179 3.79374 7.80795 3.73543V3.7318Z' fill='white' /%3E%3C/svg%3E");
}
@media (hover: hover) {
	.btn-whats:hover, .btn-telega:hover, .btn-vk:hover, .btn-max:hover {
		color: var(--white);
		transform: scaleX(1.05) scaleY(1.05);
	}
}
.btn-phone {
	background: var(--red);
	border-radius: 20px;
	color: var(--white);
	border: 0;
	font-size: 12px;
	font-weight: bold;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn-phone:before {
	content: '';
	background-image: url("data:image/svg+xml,%3Csvg width='9' height='9' viewBox='0 0 9 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.5674 8.67305L8.98926 6.84497C9.03497 6.64634 8.93126 6.44243 8.74493 6.36158L6.77622 5.51784C6.60396 5.44402 6.40182 5.49324 6.28405 5.63913L5.41219 6.70434C4.06398 6.07154 2.94252 4.9659 2.29741 3.58956L3.36262 2.71771C3.50852 2.59818 3.55774 2.39779 3.48391 2.22553L2.64018 0.256819C2.55756 0.0687364 2.35366 -0.0349724 2.15503 0.0107297L0.326946 0.432596C0.137106 0.476541 0 0.645287 0 0.843916C0 5.34558 3.64738 9 8.15608 9C8.35295 9 8.52345 8.86465 8.5674 8.67305Z' fill='white'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	background-position: center;
	width: 14px;
	height: 15px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
}
.btn-phone:hover {
	background: var(--red);
}
.dashed_link {
	color: var(--black);
	text-decoration: none;
	display: inline-block;
	cursor: pointer;
}
.dashed_link:hover {
	color: var(--black);
}
.dashed_link span {
	position: relative;
	padding-bottom: 5px;
	display: inline-block;
}
.dashed_link span:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
	width: 100%;
	border-bottom: 1px dashed var(--red);
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.dashed_link span:hover:before {
	width: 30%;
}
.img_triger_hov:hover img {
	animation: right_move 0s infinite linear;
}
/* Кнопки */
/* Поля */
input, textarea {
	background: var(--white);
	border-radius: 30px;
	color: var(--black);
	border: 2px solid var(--white);
	padding: 15px 25px;
	margin-bottom: 15px;
	resize: none;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}
input[placeholder], [placeholder], *[placeholder] {
	color: var(--black);
}
input.required {
	border-color: var(--red) !important;
	-webkit-animation: 0.9s cycle ease-out;
	animation: 0.9s cycle ease-out;
}
/* UL списки*/
section ul {
	list-style: none;
	padding-left: 10px;
}
section ul li {
	position: relative;
	padding-left: 27px;
}
section ul li:before {
	content: '';
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='8' fill='%23DB3732'/%3E%3Cpath d='M13 6.367C13 6.52413 12.9458 6.65769 12.8374 6.76768L8.63355 11.0337L7.84387 11.835C7.73548 11.945 7.60387 12 7.44903 12C7.29419 12 7.16258 11.945 7.05419 11.835L6.26452 11.0337L4.16258 8.90067C4.05419 8.79068 4 8.65713 4 8.5C4 8.34287 4.05419 8.20932 4.16258 8.09933L4.95226 7.29798C5.06065 7.18799 5.19226 7.133 5.3471 7.133C5.50194 7.133 5.63355 7.18799 5.74194 7.29798L7.44903 9.0362L11.2581 5.16498C11.3665 5.05499 11.4981 5 11.6529 5C11.8077 5 11.9394 5.05499 12.0477 5.16498L12.8374 5.96633C12.9458 6.07632 13 6.20988 13 6.367Z' fill='white'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	width: 17px;
	height: 17px;
	top: 5px;
	position: absolute;
	left: 0px;
}
.breadcrumbs {
	padding-top: 12px;
	padding-bottom: 12px;
	overflow: hidden;
	border-bottom: 1px solid rgba(195, 195, 198, 0.4);
}
.breadcrumbs li, .breadcrumbs li a {
	color: var(--black);
	font-size: 12px;
	display: flex;
	float: left;
	padding-right: 2px;
}
.breadcrumbs li:before {
	content: '';
	background: var(--red);
	width: 4px;
	height: 4px;
	border-radius: 50%;
	margin: auto;
	float: left;
	margin-right: 5px;
}
.breadcrumbs li:last-child a {
	text-decoration: none;
}
.breadcrumbs li:first-child:before {
	display: none;
}
@media (max-width: 768px) {
	.breadcrumbs {
		padding: 8px 0;
	}
	.breadcrumbs li, .breadcrumbs li a {
		font-size: 11px;
	}
}
@media (max-width: 768px) {
	.breadcrumbs {
		white-space: nowrap;
		overflow-x: auto;
		padding: 8px 0;
		-webkit-overflow-scrolling: touch;
		padding: 6px 0 12px 0;
		position: relative;
	}
	.breadcrumbs ul {
		margin: 0;
		display: flex;
	}
	.breadcrumbs li {
		display: inline-flex;
		float: none;
		padding-right: 5px;
	}
	.breadcrumbs li:before {
		margin-right: 5px;
	}
}
* {
	margin: 0;
	padding: 0;
}
a {
	color: var(--red);
}
body {
	font-family: 'Century Gothic';
	font-display: swap;
	color: var(--black);
}
body > section {
	position: relative;
	overflow: hidden;
}
@media (max-width: 768px) {
	body {
		/*padding-top: 110px;*/
	}
	body.index-page {
		padding-top: 0;
	}
	body.index-page section:nth-of-type(1) {
		/*padding-top: 100px;*/
		padding-top: 0;
	}
}
header {
	top: 0px;
	z-index: 4;
	width: 100%;
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid rgba(195, 195, 198, 0.4);
	transition: top 1s;
	position: sticky;
	top: 0;
	background: var(--white);
}
body.index-page header {
	position: absolute;
	background: transparent;
}
@media (min-width: 769px) {
	body.index-page header {
		transition: .35s opacity linear, .35s top linear, padding 0s, background 0s, width 0s, top 0s;
	}
	body.index-page header.fixed {
		position: fixed;
		opacity: 0;
		visibility: hidden;
		background: var(--white);
	}
	header.fixed .messengers_block .icons_block img, header.fixed .menu-pc a:before {
		transition: none;
	}
	header.fixed.view .messengers_block .icons_block img, header.fixed.view .menu-pc a:before {
		transition: .3s all linear;
	}
	body.index-page header.fixed .logo.logo_small {
		display: block;
	}
	body.index-page header.fixed.view {
		opacity: 1;
		visibility: visible;
	}
	body.index-page header.fixed .menu-pc a, body.index-page header.fixed, body.index-page header.fixed .item-phone a, body.index-page header.fixed .item-phone .soc_call {
		color: var(--black);
	}
	body.index-page header.fixed .cart-block a svg path {
		stroke: var(--black);
	}
}


header .logo-block {
	display: flex;
}
header .logo-block a {
	margin: auto;
}
@media (min-width: 769px) {
	header .logo-block {
		flex: 0 0 auto;
		width: 15%;
	}
}
header .logo-block img {
	height: 100%;
	max-width: 100%;
}
header .menu-pc {
	margin: auto 0;
	padding: 0;
}
header .menu-pc a {
	font-size: 14px;
	color: var(--black);
	text-decoration: none;
	margin-right: clamp(1px, .8vw, 11px);
	position: relative;
	font-weight: bold;
}
header .menu-pc a:before {
	content: '';
	position: absolute;
	width: 0%;
	height: 1px;
	background: var(--red);
	bottom: -4px;
	transition: all 0.3s ease-in-out;
}
header .menu-pc a:hover:before, header .menu-pc a.active:before {
	width: 100%;
}
body:not(.index-page) header .menu-pc a.red {
	color: var(--red);
}
@media (max-width: 1180px) {
	header .menu-pc a {
		font-size: 1.1vw;
		margin-right: clamp(1px, 0.9vw, 15px);
	}
}
@media (min-width: 769px) {
	header .button-menu-mob, header .button-cart-mob {
		display: none;
	}
}
header .cart-block {
	flex: 0 0 auto;
	width: 3.5%;
	text-align: right;
	margin: auto 0;
	padding: 0;
}
header .cart-block a {
	position: relative;
}
header .cart-block a svg path {
	stroke: var(--black);
}
header .cart-block a .count_cart {
	background: var(--red);
	font-size: 10px;
	color: var(--white);
	min-width: 15px;
	height: 15px;
	text-align: center;
	position: absolute;
	right: -5px;
	top: -3px;
	padding: 0 2px;
	border-radius: 100px;
}
/* Телефоны в шапке */
header .phone-block {
	padding: 0;
	padding-top: 5px;
}
header .item-phone {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: auto;
	margin-right: 40px;
}
header .item-phone a {
	color: var(--black);
	display: block;
	text-align: right;
	position: relative;
	text-decoration: none;
	font-weight: 700;
}
header .item-phone a {
	font-size: 18px;
}
@media (hover: hover) {
	header .item-phone a:hover {
		text-decoration: underline;
	}
}
header .item-phone a img.icon-phone {
	width: 14px;
	display: inline-block;
	margin-right: 10px;
	margin-top: -5px;
}
header .item-phone .soc_call {
	color: var(--black);
	text-decoration: underline;
	font-weight: normal;
	cursor: pointer;
	font-size: 11px;
	padding-left: 2px;
	text-decoration: none;
	font-size: 16.9px;
	font-weight: 700;
}
/* Мессендежры в шапке */
header .messengers_block {
	padding: 0;
	width: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-right: 10px;
}
header .messengers_block .icons_block {
	display: flex;
	gap: 6px;
}
header .messengers_block .icons_block img {
	width: 26px;
	transition: all .3s;
}
header .messengers_block .desc {
	width: 100%;
	font-weight: 700;
	font-size: 12.5px;
	margin-top: 3px;
}
@media (hover: hover) {
	header .messengers_block .icons_block a:hover img {
		transform: scale(1.1);
	}
}
@media (min-width: 768px) and (max-width: 1290px) {
	header .logo-block {
		width: 13%;
	}
	header .menu-pc a {
		font-size: 1.1vw;
	}
	header .item-phone {
		margin-right: 20px;
		margin-right: 1vw;
	}
	header .item-phone a {
		font-size: 1.4vw;
	}
	header .item-phone a.soc_call {
		font-size: 1.3vw;
	}
	header .messengers_block .icons_block img {
		width: 2vw;
	}
	header .messengers_block .desc {
		font-size: 1vw;
	}
	header .item-phone a img.icon-phone {
		width: 1vw;
	}
	header .cart-block {
		text-align: center;
	}
}
@media (max-width: 768px) {
	header {
		padding: 0;
		position: fixed;
		background: var(--white)!important;
		border: 0px;
		position: sticky !important;
	}
	header .logo-block {
		flex: 1;
		padding: 10px 5px;
	}
	header .block-phone {
		padding: 10px 0;
		padding-right: 20px;
		width: 50%;
	}
	header .logo-block a {
		margin: unset;
	}
	header .item-phone {
		margin-left: auto;
		margin-right: 0px;
		display: flex;
		align-items: center;
	}
	header .item-phone:first-child {
		display: none;
	}
	header .item-phone a {
		font-size: 18px;
	}
	header .menu-pc, header .cart-block {
		display: none;
	}
	header .button-menu-mob {
		background: var(--red);
		color: #fff;
		padding: 10px 0;
		text-align: center;
		font-size: 15px;
		font-weight: bold;
	}
	header .button-cart-mob {
		background: var(--black);
		padding: 10px 0;
		text-align: center;
		font-size: 15px;
		font-weight: bold;
	}
	header .button-cart-mob a {
		text-decoration: none;
		color: var(--white);
	}
	header .button-cart-mob .icon-cart {
		position: relative;
	}
	header .button-cart-mob .icon-cart .count_cart {
		background: var(--red);
		font-size: 12.5px;
		color: var(--white);
		min-width: 18px;
		height: 18px;
		text-align: center;
		position: absolute;
		right: 0px;
		top: -6px;
		padding: 0 2px;
		border-radius: 100px;
		font-weight: normal;
	}
	header .messengers_block .desc, header .item-phone .soc_call {
		display: none;
	}
}
@media (max-width: 600px) {
	header .item-phone a {
		font-size: 16px;
	}
}
/* ------------ Мобильное меню (открытое) ------------  */
@media (min-width: 769px) {
	div.div-mobile-menu {
		display: none;
	}
}
@media (max-width: 768px) {
	.mobile-menu-fon {
		width: 100%;
		height: 100%;
		background: rgba(40, 40, 40, 0.8);
		opacity: 0;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		-webkit-transition: all .3s;
		-o-transition: all .3s;
		transition: all .3s;
	}
	body.open-menu-mob {
		overflow: hidden;
	}
	body.open-menu-mob .mobile-menu-fon {
		z-index: 9;
		opacity: 1;
	}
	div.div-mobile-menu {
		width: 100%;
		background-color: #ffffff;
		box-shadow: -4px 3px 25px rgba(42, 54, 122, 0.12);
		max-width: 320px;
		position: fixed;
		top: 0;
		left: -100vw;
		bottom: 0;
		overflow: auto;
		z-index: 10;
		-webkit-transition: all .3s;
		-o-transition: all .3s;
		transition: all .3s;
	}
	body.open-menu-mob div.div-mobile-menu {
		left: 0;
	}
	/* ------------ Лого в меню ------------  */
	div.div-mobile-menu .logo-mob-menu {
		padding: 10px 0;
		padding-left: 15px;
	}
	div.div-mobile-menu .logo-mob-menu img {
		width: 70%;
	}
	/* ------------ Пункты  меню ------------  */
	div.div-mobile-menu ul {
		padding: 0;
		list-style: none;
	}
	div.div-mobile-menu > ul.items-menu li.item {
		font-size: 16px;
	}
	div.div-mobile-menu > ul.items-menu li.item a {
		background: var(--grey);
		display: block;
		color: var(--black);
		font-weight: bold;
		padding: 10px 15px;
		border-bottom: 1px solid #fff;
		text-decoration: none;
	}
	div.div-mobile-menu > ul.items-menu li.item a.active {
		background: var(--red);
		color: var(--white);
	}
	/* раздел контактов в меню */
	div.div-mobile-menu .contact_us {
		padding-left: 15px;
		padding-bottom: 10px;
	}
	div.div-mobile-menu .contact_us .time_work {
		font-size: 13px;
		color: var(--grey1);
		font-weight: bold;
		margin-bottom: 10px;
		display: block;
	}
	div.div-mobile-menu .contact_us a.messenger_or_phone {
		text-decoration: none;
		display: block;
		position: relative;
		padding-left: 32px;
		margin-bottom: 6px;
		font-size: 16px;
		font-weight: bold;
		color: var(--black);
	}
	div.div-mobile-menu .contact_us a.messenger_or_phone img.icon-phone {
		position: absolute;
		top: 2px;
		left: 0;
		width: 20px;
	}
	/* Адрес */
	div.div-mobile-menu .adress {
		color: var(--grey1);
		font-size: 13px;
		padding: 15px 15px;
		border-top: 1px solid #e8edf1;
		border-bottom: 1px solid #e8edf1;
		text-align: center;
	}
	div.div-mobile-menu .adress > span {
		color: var(--black);
		font-weight: bold;
	}
	div.div-mobile-menu .adress a {
		display: block;
		text-decoration: none;
		padding-left: 20px;
		padding-top: 10px;
	}
	div.div-mobile-menu .adress a > span {
		color: var(--red);
		border-bottom: 1px solid var(--red);
	}
	div.div-mobile-menu .adress img {
		width: 14px;
		margin-right: 5px;
	}
}
/* Название и описание секции */
.section_name {
	padding-top: 20px;
	text-align: center;
	font-size: 40px;
	font-weight: bold;
	line-height: 100%;
}
.section_description {
	text-align: center;
	font-size: 17px;
	padding-bottom: 33px;
}
@media (max-width: 768px) {
	.section_name {
		font-size: 29px;
	}
	.section_description {
		font-size: 13px;
	}
}
/* Секция с кнопкой подробнее */
.btn-col {
	padding: 20px 10px;
}
@media (max-width: 768px) {
	.btn-col .btn {
		width: 100%;
	}
}
/* Контакты */
section.contact {
	padding-top: 0px;
	padding-bottom: 30px;
}
section.contact .item-contact {
	padding-bottom: 22px;
}
section.contact .item-contact img {
	width: 15px;
	margin-right: 5px;
}
section.contact .name-item {
	font-weight: 600;
	font-size: 14px;
	display: block;
	margin-bottom: 10px;
	color: var(--gold-light1);
}
section.contact .message_btn {
	display: block;
	padding-top: 14px;
}
section.contact .message_btn a {
	margin-right: 3px;
	margin-bottom: 5px;
}
section.contact p {
	margin: 0;
	font-weight: 500;
	font-size: 14px;
	line-height: 17px;
}
@media (max-width: 768px) {
	section.contact p {
		padding-bottom: 10px;
	}
	section.contact p a {
		display: block;
	}
}
@media (max-width: 400px) {
	section.contact .message_btn a {
		margin-bottom: 10px;
		width: calc(50% - 6px);
	}
}
section.contact .map-block {
	position: relative;
	padding: 0;
	background: url(images/map.jpg);
	background-position: center;
	background-size: cover;
	cursor: pointer;
}
section.contact .map-block .hover_map {
	position: relative;
	cursor: pointer;
	color: #fff;
	display: flex;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
section.contact .map-block .hover_map span {
	cursor: pointer;
	margin: auto;
	z-index: 2;
	opacity: 0;
	font-size: 18px;
	font-weight: bold;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
}
section.contact .map-block .hover_map:hover span {
	opacity: 1;
}
section.contact .map-block .hover_map:before {
	content: '';
	cursor: pointer;
	position: absolute;
	background: var(--red);
	right: 0;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: 1;
	text-align: center;
	height: 100%;
	opacity: 0;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
}
section.contact .map-block .hover_map:hover:before {
	opacity: .6;
}
section.contact .map-block img.map_img {
	width: auto;
	height: 100%;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
}
@media (max-width: 768px) {
	section.contact {
		padding-bottom: 0;
	}
	section.contact .map-block {
		height: 50vh;
	}
}
/* Футер */
footer {
	border-top: 1px solid rgba(195, 195, 198, 0.4);
	padding-top: 18px;
}
footer .item-footer .name-item {
	display: block;
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 10px;
}
footer .item-footer ul {
	padding: 0;
}
footer .item-footer li {
	list-style: none;
	font-size: 10px;
	display: block;
	padding-bottom: 4px;
}
@media (min-width: 768px) {
	footer .item-footer ul.col3 li {
		float: left;
		padding-right: 2px;
		width: 33%;
	}
}
footer .item-footer li a {
	color: var(--grey1);
	text-decoration: none;
}
footer .item-footer li:nth-child(3n+1) {
	clear: both;
}
footer .bottom-footer {
	margin-top: 18px;
	background: var(--red);
	color: var(--white);
	text-align: center;
	padding: 20px;
}
footer .bottom-footer .container {
	display: flex;
	justify-content: space-between;
	font-size: clamp(10px, 1.8vw, 14px);
}
footer .bottom-footer .container a {
	color: var(--white);
}
@media (max-width: 768px) {
	footer .bottom-footer .container {
		flex-direction: column;
		font-size: 14px;
	}
	footer .logo-footer {
		text-align: center;
		padding-bottom: 30px;
	}
	footer .item-footer {
		overflow: hidden;
		max-height: 30px;
		-webkit-transition: all 0.4s ease-in-out;
		-moz-transition: all 0.4s ease-in-out;
		-ms-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}
	footer .item-footer.open {
		max-height: 290px;
	}
	footer .name-item {
		font-size: 18px;
		position: relative;
	}
	footer .item-footer li {
		font-size: 14px;
		padding-left: 10px;
	}
	footer .item-footer .name-item:before {
		content: '';
		position: absolute;
		width: 18px;
		height: 10px;
		background-image: url("data:image/svg+xml,%3Csvg width='18' height='10' viewBox='0 0 17 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.693115 0.712891L8.23692 8.25669L15.7807 0.712888' stroke='%23DB3732' stroke-width='1.5'/%3E%3C/svg%3E%0A");
		background-repeat: no-repeat;
		right: 0;
		top: 4px;
		-webkit-transition: all 0.4s ease-in-out;
		-moz-transition: all 0.4s ease-in-out;
		-ms-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}
	footer .item-footer.open .name-item:before {
		transform: rotate(-180deg);
	}
}
/* Анимация Модальные окна */
@media (prefers-reduced-motion: reduce) {
	.fade {
		transition: opacity 0.15s linear;
	}
	.modal.fade .modal-dialog {
		transition: transform 0.3s ease-out;
		transform: translate(0, -50px);
	}
}
.modal.fade .modal-dialog {
	-webkit-transform: scale(0.1);
	-moz-transform: scale(0.1);
	-ms-transform: scale(0.1);
	transform: scale(0.1);
	opacity: 0;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
}
.modal.fade.show .modal-dialog {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}
/* Модальные окна */
#not_found_service .modal-head .section_name {
	font-size: 30px;
}
.modal-content {
	padding-top: 40px;
	padding: 35px 25px;
	border-radius: 20px;
	background: linear-gradient(0deg, rgba(20, 20, 20, 0.8), rgba(20, 20, 20, 0.8)), url('images/reviews-bg.jpg');
	border: none;
	overflow: hidden;
	color: var(--white);
	background-size: cover;
}
.modal-content .modal-title {
	margin-top: 15px;
	margin-bottom: 15px;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	background: var(--red);
	border-radius: 10px;
	text-transform: uppercase;
	display: inline-block;
	padding: 10px 20px;
}
.modal-content .section_description {
	display: block;
	padding: 5px 0;
	font-size: 13px;
	width: 80%;
	margin: auto;
}
.modal-content input, .modal-content textarea, .modal-content .btn {
	width: 100%;
	border-radius: 30px;
}
.modal-content .dropdown {
	display: flex;
	justify-content: center;
}
.modal-content .btn.dropdown-toggle {
	padding: 15px 15px;
	padding-left: 10px;
	border-radius: 30px;
	background: var(--white);
	margin-bottom: 15px;
	z-index: 2;
	position: relative;
	text-align: left;
	border: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.modal-content .btn.dropdown-toggle.show,
.modal-content .btn.dropdown-toggle:hover,
.modal-content .btn.dropdown-toggle:focus,
.modal-content .btn.dropdown-toggle:active {
	color: var(--red);
	border: 0;
}
.modal-content .dropdown-menu {
	border-radius: 20px;
	opacity: 0;
	z-index: 1;
	flex-direction: column;
	width: 90%;
	display: flex;
	visibility: hidden;
	overflow: hidden;
	transition: .4s all linear;
}
.modal-content .dropdown-menu:not(.show) {
	transform: translate3d(0px, 0px, 0px) !important;
}
.modal-content .dropdown-menu.show {
	visibility: visible;
	opacity: 1;
}
.modal-content .dropdown-menu label {
	display: flex;
	padding: 0px 10px;
	gap: 10px;
	align-items: center;
}
.modal-content .dropdown-menu label:not(:last-child) {
	margin-bottom: 10px;
}
@media (min-width: 990px) {
	.modal-content .dropdown-menu label:hover {
		color: var(--red);
		cursor: pointer;
	}
}
.modal-content .dropdown-menu .form-check-input {
	width: 15px;
	height: 15px;
	padding: 0;
	margin: 0 5px;
}
.modal-content textarea {
	height: 140px;
}
.modal-footer {
	display: block;
	border: 0;
	padding-top: 0;
}
.close-modal {
	z-index: 5;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 32px;
	height: 32px;
	opacity: 0.8;
	cursor: pointer;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.close-modal:hover {
	opacity: 1;
	transform: rotate(180deg);
}
.close-modal:before, .close-modal:after {
	position: absolute;
	left: 15px;
	content: ' ';
	height: 33px;
	width: 2px;
	background-color: var(--red);
}
.close-modal:before {
	transform: rotate(45deg);
}
.close-modal:after {
	transform: rotate(-45deg);
}
.modal .modal-dialog .modal-body .thanks {
	-webkit-transition: .4s ease-out;
	transition: .4s ease-out;
	transition-delay: 0.3s;
	max-height: 0vh;
	opacity: 0;
	position: relative;
	overflow: hidden;
}
.modal .modal-dialog .modal-body .thanks span.text {
	margin: 0;
	padding-bottom: 40px;
	display: block;
}
.modal .modal-dialog .modal-body.success .thanks {
	max-height: 200vh;
	opacity: 1;
}
.modal .modal-dialog .modal-body form {
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	max-height: 100vh;
	opacity: 1;
}
.modal .modal-dialog .modal-body.success form {
	max-height: 0vh;
	opacity: 0;
}
.modal .modal-content.success .section_description {
	opacity: 0;
	max-height: 0px;
}
@media (max-width: 768px) {
	.modal-content {
		padding: 35px 15px;
	}
	.modal-content input, .modal-content textarea, .modal-content .btn {
		width: 100%;
	}
}
#add_cart_modal:not(.gift) *[class*="info_gift"] {
	display: none;
}
#add_cart_modal.gift *[class*="info_calc"] {
	display: none;
}
#add_cart_modal.gift *[class*="info_gift"] a {
	color: var(--white);
}
#add_cart_modal.gift *[class*="info_gift"] a:hover {
	color: var(--red);
}
#add_cart_modal.gift .min_price {
	font-size: 12px;
	color: var(--red);
	font-weight: 500;
}
#modal_cashback .items_block {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 40px 0;
	font-size: 14px;
	font-weight: bold;
	margin-top: 10px;
}
#modal_cashback .items_block .item {
	display: flex;
	text-align: left;
}
#modal_cashback .items_block .item .itm_icon {
	margin-right: 26px;
}
#modal_cashback .items_block .red-bg {
	margin-top: 2px;
	display: inline-block;
	background: var(--red);
	border-radius: 20px;
	padding: 5px 10.5px;
	white-space: nowrap;
}
#modal_cashback .btn {
	border-radius: 10px;
}
/* */
.glightbox-clean .gslide-title {
	font-size: 20px;
	font-weight: bold;
}
/* Ориентация для мобильных */
.mobilerotateblock {
	display: none;
}
@media (max-width: 768px) {
	.mobilerotateblock {
		display: block;
		position: fixed;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
		top: -100vh;
		width: 100%;
		height: 100%;
		background: var(--black);
		z-index: 999;
		display: flex;
	}
	.mobilecontent {
		max-width: 500px;
		font-weight: 300;
		color: #fff;
		margin: auto;
	}
	.mobilerotateblocklogo {
		width: 150px;
		display: block;
		margin: 0 auto;
	}
	.mobilerotate-img {
		width: 100px;
		float: left;
		padding: 20px 20px;
	}
	.mobilerotate-text {
		padding-top: 10px;
	}
	.mobilerotate-text .title-mob {
		font-weight: bold;
		font-size: 25px;
		display: block;
	}
	/* горизонтальная ориентация */
	@media screen and (orientation: landscape) {
		.mobilerotateblock {
			top: 0;
		}
	}
}
@media (min-width: 768px) {
	.container {
		max-width: 96%;
	}
}
@media (min-width: 992px) {
	.container {
		max-width: 96%;
	}
}
@media (min-width: 1120px) {
	.container {
		max-width: 1320px;
	}
}
.contact_fixed {
	pointer-events: none;
	display: flex;
	flex-direction: column;
	justify-content: end;
	align-items: end;
	position: fixed;
	right: 0;
	bottom: 15px;
	padding: 15px;
	gap: 15px;
	z-index: 5;
	opacity: 0;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.contact_fixed * {
	pointer-events: auto;
}
.contact_fixed.view {
	opacity: 1;
	bottom: 0px;
	height: 100%;
	right: 0px;
}
.contact_fixed .gift_button {
	width: 56px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #e83630;
	border-radius: 12px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	right: -56px;
	bottom: 0;
	opacity: 0;
}
.contact_fixed .gift_button.view {
	right: 0;
	opacity: 1;
}
.contact_fixed.active .gift_button {
	overflow: hidden;
	opacity: 0;
	bottom: -50px;
}
.contact_fixed .gift_button:hover, .contact_fixed .contact_fixed_btn:hover {
	scale: 1.05;
}
.contact_fixed.active {
	background: rgba(30, 30, 30, .4);
	z-index: 6;
	height: 100%;
	width: 100%;
	backdrop-filter: blur(1px);
	-webkit-backdrop-filter: blur(1px);
}
.contact_fixed.active .contact_fixed_menu, .contact_fixed_menu.active {
	max-height: 500px;
	opacity: 1;
}
.contact_fixed.active .contact_fixed_btn {
	overflow: hidden;
	opacity: 0;
	bottom: -50px;
}
.contact_fixed_menu {
	position: absolute;
	right: 20px;
	bottom: 20px;
	white-space: nowrap;
	min-width: 226px;
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.contact_fixed_btn {
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	position: relative;
	display: block;
	width: 56px;
	height: 56px;
	padding: 0;
	border: 0;
	cursor: pointer;
	background-image: url(images/bg_icon.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-color: transparent;
	bottom: 0px;
	right: 0px;
}
.contact_fixed_btn-icon, .contact_fixed_btn-wrap {
	display: block;
	width: 100%;
	height: 100%;
	transform-style: preserve-3d;
}
.contact_fixed_btn-wrap {
	animation: wcm_button_change 4s infinite;
	position: relative;
}
.contact_fixed_btn-icon {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-repeat: no-repeat;
	background-position: center;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	transform: rotateY(180deg);
}
.contact_fixed_btn-icon-1 {
	background-image: url(images/icon-widget-btn-message.svg);
}
.contact_fixed_btn-icon-2 {
	background-image: url(images/icon-widget-btn-phone.svg);
	transform: rotateY(0);
}
.contact_fixed_menu-list {
	list-style: none;
	padding: 0;
	margin: 8px 0 0;
	background-color: #3b4651;
	border-radius: 6px;
	overflow: hidden;
}
.contact_fixed_menu-item:not(:last-child) {
	border-bottom: 1px solid var(--grey3);
}
.contact_fixed_menu-list:last-child {
	box-shadow: 0 3px 8px rgba(0, 0, 0, .06), 0 3px 1px rgba(0, 0, 0, .03);
}
.contact_fixed_menu-link {
	display: block;
	width: 100%;
	padding: 7.5px 16px 7.5px 51px;
	border: 0;
	color: #fff;
	font-size: 16px;
	line-height: 25px;
	background-repeat: no-repeat;
	background-position: center left 16px;
	background-size: 24px;
	cursor: pointer;
	background-color: transparent;
	text-decoration: none;
}
.contact_fixed_menu-link span {
	position: relative;
	z-index: 1;
}
.contact_fixed_menu-link span::after {
	content: "";
	position: absolute;
	bottom: 1px;
	right: 0;
	left: 0;
	opacity: .5;
	height: 1px;
	background-color: rgba(239, 239, 244, .33);
}
.contact_fixed_menu-link-whatsapp {
	background-image: url(images/icon-widget-wp.svg);
}
.contact_fixed_menu-link-max {
	background-image: url(images/icon-widget-max.svg);
}
.contact_fixed_menu-link-telegram {
	background-image: url(images/icon-widget-tg.svg);
}
.contact_fixed_menu-link-phone {
	background-image: url(images/icon-widget-phone.svg);
}
.contact_fixed_menu-link-message {
	background-image: url(images/messages.svg);
}
.contact_fixed_menu-link-close {
	font-weight: 500;
	padding-left: 16px;
	text-align: center;
}
@keyframes wcm_button_change {
	0%, 42.5%, to {
		transform: rotateY(0);
	}
	50%, 92.5% {
		transform: rotateY(180deg);
	}
}
@keyframes wcm_button_change_rev {
	0%, 42.5%, to {
		transform: rotateY(180deg);
	}
	50%, 92.5% {
		transform: rotateY(0);
	}
}
@media (min-width: 1200px) {
	.contact_fixed_menu-link:hover {
		color: #fff;
	}
}
@media (max-width: 1199px) {
	.contact_fixed {
		bottom: 0;
	}
	.contact_fixed.active {
		background: rgba(30, 30, 30, .9);
		z-index: 6;
		height: 100%;
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
	}
	.contact_fixed_menu {
		text-align: center;
		bottom: 35px;
		left: 10px;
		right: 10px;
	}
	.contact_fixed_menu-item {
		border-color: rgba(188, 188, 188, .33);
	}
	.contact_fixed_menu-list {
		border-radius: 14px;
		background-color: rgba(59, 70, 81, .7);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
	}
	.contact_fixed_menu-link {
		color: #fff;
		font-size: 20px;
		line-height: 24px;
		font-weight: 400;
		padding: 16px 14px 16px 67px;
		background-size: 29px;
		text-align: left;
	}
	.contact_fixed_menu-link-close {
		padding-left: 16px;
		text-align: center;
		font-weight: 600;
	}
	.contact_fixed_menu-link span::after {
		display: none;
	}
	.scroll-off {
		overflow: hidden;
		z-index: -1;
		height: 100%;
	}
}
@media (max-width: 325px) {
	.contact_fixed_menu-link {
		padding: 16px 14px 16px 60px;
		font-size: 17px;
	}
	.contact_fixed_menu-link-close {
		padding: 16px 0px;
	}
}
.cookie_banner {
	border-radius: 20px;
	background: linear-gradient(0deg, rgba(20, 20, 20, 0.8), rgba(20, 20, 20, 0.8)), url(images/reviews-bg.jpg);
	border: none;
	overflow: hidden;
	color: var(--white);
	border-radius: 8px;
	padding: 20px;
	position: fixed;
	bottom: 20px;
	left: -100vw;
	width: 400px;
	transition: .4s all linear;
	opacity: 0;
	z-index: 999;
	color: #fff;
	font-size: 13px;
}
.cookie_banner span {
	margin-bottom: 10px;
	line-height: 1.5;
	display: block;
}
.cookie_banner span a {
	color: #fff;
	text-decoration: underline;
}
.cookie_banner .agree_btn {
	width: 100%;
	margin-top: 15px;
}
@media (min-width: 970px) {
	.cookie_banner.view {
		opacity: 1;
		left: 20px;
	}
}
@media (max-width: 970px) {
	.cookie_banner {
		left: 0;
		right: 0;
		width: calc(100% - 20px);
		margin: auto;
	}
	.cookie_banner.view {
		opacity: 1;
		bottom: 10px;
	}
}
label.agree_personal_data {
	display: flex;
	text-align: left;
	margin-bottom: 15px;
	font-size: 14px;
	color: #fff;
}
label.agree_personal_data .form-check-input {
	width: 15px;
	height: 15px;
	min-width: 15px;
	margin-right: 10px;
	margin-left: 0px;
}

/* --- Блок промо фонда Алёша --- */

/* Блокировка скролла страницы, пока открыт большой круг */
html.alesha-no-scroll,
body.alesha-no-scroll {
	overflow: hidden !important;
}

/* Состояния оверлея:
   default        — полностью скрыт (до показа и после сворачивания в мини-круг)
   .visible       — большой круг открыт по центру экрана
   .visible.collapsed — идёт анимация "утекания" в мини-круг
   ВАЖНО: transform круга описан ТОЛЬКО в правиле .collapsed,
   иначе inline-переменные, которые выставляет JS, "прилипают" навсегда
   и при повторном открытии круг появляется уже смещённым/уменьшенным. */
.alesha-promo {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.4s ease, visibility 0.4s ease, background 0.4s ease, backdrop-filter 0.4s ease;
}
.alesha-promo.visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.alesha-promo.collapsed {
	background: transparent;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	pointer-events: none;
}
.alesha-promo-inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
.alesha-promo-circle {
	width: 400px;
	height: 400px;
	border-radius: 50%;
	background: #05AFFA;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 50px;
	text-align: center;
	box-shadow: 0 20px 60px rgba(5, 175, 250, 0.4);
	transition: transform 0.7s cubic-bezier(0.65, -0.35, 0.25, 1.3), opacity 0.3s ease;
	transform: translate(0, 0) scale(1);
	transform-origin: center center;
}
/* Целевые координаты для "утекания" считает JS и кладёт в эти переменные,
   но сам transform применяется ТОЛЬКО пока активен класс .collapsed.
   Этот же приём используется и при ПЕРВОМ открытии: перед показом круг
   мгновенно (без transition) ставится в позу "как будто он мини-круг",
   а затем класс .collapsed снимается — и круг "вырастает" из точки мини-круга,
   точно так же, как при повторном открытии. */
.alesha-promo.collapsed .alesha-promo-circle {
	transform: translate(var(--alesha-tx, 0px), var(--alesha-ty, 0px)) scale(var(--alesha-scale, 0.14));
}
.alesha-promo-logo {
	width: 170px;
	height: auto;
	object-fit: contain;
	pointer-events: none;
}
.alesha-promo-text {
	display: block;
	margin-top: 22px;
	font-size: 15px;
	line-height: 1.35;
	max-width: 260px;
	color: #fff;
}
.alesha-promo-text strong {
	font-weight: 700;
}
.alesha-promo-more {
	display: inline-block;
	margin-top: 20px;
	padding: 11px 30px;
	background: #fff;
	color: #05AFFA;
	font-weight: 700;
	font-size: 14px;
	border-radius: 30px;
	text-decoration: none;
	white-space: nowrap;
	transition: all 0.3s ease-in-out;
}
.alesha-promo-timer {
	display: block;
	margin-top: 14px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.75);
	min-height: 16px;
}
.alesha-promo-timer strong {
	color: #fff;
	font-weight: 700;
}
.alesha-promo-logo,
.alesha-promo-text,
.alesha-promo-more,
.alesha-promo-timer {
	transition: opacity 0.25s ease;
}
.alesha-promo.collapsed .alesha-promo-logo,
.alesha-promo.collapsed .alesha-promo-text,
.alesha-promo.collapsed .alesha-promo-more,
.alesha-promo.collapsed .alesha-promo-timer {
	opacity: 0;
}
/* Крестик — без фона и рамки, просто красный значок рядом с кругом.
   Появляется с задержкой 1с после открытия (управляется классом .show из JS),
   при сворачивании плавно скрывается вместе с остальным содержимым круга. */
.alesha-promo-close {
	position: absolute;
	top: -10px;
	right: 6px;
	width: 40px;
	height: 40px;
	border: 0;
	background: transparent;
	color: #E83630;
	font-size: 34px;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: transform 0.2s ease, opacity 0.35s ease;
	z-index: 10;
}
.alesha-promo-close.show {
	opacity: 1;
}
.alesha-promo.collapsed .alesha-promo-close {
	opacity: 0;
	pointer-events: none;
}
@media (hover: hover) and (pointer: fine) {
	.alesha-promo-close:hover {
		transform: scale(1.15);
	}
}

/* Мини-круг в правом нижнем углу, над кнопкой gift_button */
.alesha-promo-mini {
	position: fixed;
	right: 15px;
	bottom: 91px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #05AFFA;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9998;
	cursor: pointer;
	box-shadow: 0 4px 15px rgba(5, 175, 250, 0.4);
	opacity: 0;
	visibility: hidden;
	transform: scale(0.3);
	perspective: 200px;
	transition: opacity 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55), transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55), visibility 0.4s;
	pointer-events: none;
}
.alesha-promo-mini.visible {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
	pointer-events: auto;
}
/* Пульсация — привлекаем внимание к свёрнутому кружку (не останавливается при hover) */
.alesha-promo-mini::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: #05AFFA;
	opacity: 0;
	z-index: 0;
}
.alesha-promo-mini.visible::before {
	animation: aleshaPulseRing 2.4s ease-out infinite;
}
@keyframes aleshaPulseRing {
	0% { transform: scale(1); opacity: 0.55; }
	100% { transform: scale(1.9); opacity: 0; }
}
/* Флип-карточка внутри мини-круга: лого <-> текст "Подробнее" */
.alesha-promo-mini-flip {
	position: relative;
	width: 100%;
	height: 100%;
	transform-style: preserve-3d;
	transition: transform 0.5s ease;
}
.alesha-promo-mini-face {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	border-radius: 50%;
}
.alesha-promo-mini-face img {
	width: 34px;
	height: 34px;
	object-fit: contain;
	pointer-events: none;
}
.alesha-promo-mini-face-back {
	transform: rotateY(180deg);
	font-size: 8.5px;
	line-height: 1.15;
	font-weight: 700;
	color: #fff;
	text-align: center;
	padding: 0 6px;
}
@media (hover: hover) and (pointer: fine) {
	.alesha-promo-mini:hover {
		transform: scale(1.08);
	}
	.alesha-promo-mini:hover .alesha-promo-mini-flip {
		transform: rotateY(180deg);
	}
	.alesha-promo-more:hover {
		background: #fff;
		color: #05AFFA;
		transform: scaleX(1.05) scaleY(1.05);
		box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
	}
}

@media (max-width: 576px) {
	.alesha-promo-circle {
		width: 280px;
		height: 280px;
		padding: 28px;
	}
	.alesha-promo-logo {
		width: 120px;
	}
	.alesha-promo-text {
		font-size: 13px;
		max-width: 210px;
		margin-top: 14px;
	}
	.alesha-promo-more {
		margin-top: 14px;
		padding: 9px 24px;
		font-size: 13px;
	}
	.alesha-promo-timer {
		margin-top: 10px;
	}
	.alesha-promo-close {
		top: -6px;
		right: 2px;
		width: 34px;
		height: 34px;
		font-size: 28px;
	}
}
@media (max-width: 380px) {
	.alesha-promo-circle {
		width: 240px;
		height: 240px;
		padding: 22px;
	}
	.alesha-promo-logo {
		width: 100px;
	}
}
