

:root {
	--main_color: #fff;
	--black: #03110D;
	--gold: #DAA563;
	--main_bg: #03110d;
	--bg_footer: #010705;
	--red: #B50102;
	--green_color: #00b300;
	--dark_gray: #6A6C6D;
	--dark_green: #16302B;
	--blue: #4C82E0;
	--dark_blue: #245AB8;
	--light_blue: #4C82E0;
	--white: #fff;
	--white60: #FFFFFF99;
	--gray: #7D7E80;
	--yellow: #CEA862;
	--buryi: #390517;
}

::-webkit-scrollbar {
	width: 12px;               /* ширина scrollbar */
}
::-webkit-scrollbar-track {
	background: var(--dark_green);        /* цвет дорожки */
}
::-webkit-scrollbar-thumb {
	background: var(--gold);    /* цвет плашки */
	border-radius: 20px;       /* закругления плашки */
	border: 3px solid var(--dark_green);  /* padding вокруг плашки */
}

html, body {
	margin: 0;
	padding: 0;
	font-size: 18px;
	font-family: 'Onest', serif;
	font-weight: 300;
	line-height: 1.4;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: 'lnum' 1;
	color: var(--main_color);
	background-color: var(--main_bg);
}

.forum {
	font-family: 'Forum', serif;
}
.good_vibes_pro {
	font-family: 'Good Vibes Pro', serif;
}

img {
	border: 0;
	max-width: 100%;
}
iframe {
	max-width: 100%;
	border: 0;
}
a {
	color: var(--gold);
	transition: 0.3s color;
}
a:hover {
	color: var(--main_color);
}

*, :before, :after {
	box-sizing: border-box;
	outline: none;
	/*font-family: 'Onest', serif;*/
}

.hidden {
	display: none !important;
}
input[type="submit"],
input[type="button"],
input[type="reset"],
button {
	cursor: pointer;
}

.section.first_screen, .main_wrapper {
	padding-top: 214px;
}

.nowrap {
	white-space: nowrap;
}
.text_center {
	text-align: center;
}
.btn_gold, .btn_white {
	font-family: 'Onest', serif;
	min-height: 90px;
	text-align: center;
	/*background: linear-gradient(126.98deg, #FFE49A 0%, #A15812 104.19%);*/
	background: transparent;
	border: 2px solid transparent;
	position: relative;
	transition: 0.3s;
	color: var(--black);
	text-decoration: none;
	border-radius: 8px;
	overflow: hidden;
	display: flex;
	justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 1;
    font-weight: 400;
    text-transform: uppercase;
    padding: 0 40px;
    /*letter-spacing: 0.09em;*/
}
.btn_gold.middle, .btn_white.middle {
	min-height: 62px;
    padding: 0 24px;
}
.btn_gold.small, .btn_white.small {
	min-height: 40px;
    padding: 0 16px;
}
.btn_gold:before, .btn_gold:after,
.btn_white:before, .btn_white:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}
.btn_gold:before {
	background: linear-gradient(126.98deg, #FFE49A 0%, #A15812 104.19%);
	z-index: -2;
}
.btn_white:before {
	background: #fff;
	z-index: -2;
}
.btn_gold:after, .btn_white:after {
	background: linear-gradient(306.98deg, #FFE49A -4.19%, #A15812 100%);
	box-shadow: 0px 2px 20px 1px #F7CA4B4D;
	z-index: -1;
	opacity: 0;
	transition: 0.3s;
}
.btn_gold:hover, .btn_white:hover {
	border-color: #F7CA4B;
	color: var(--black);
}
.btn_gold:hover:after, .btn_white:hover:after {
	opacity: 1;
}

.w_fit_content {
	width: fit-content;
}
.uppercase {
	text-transform: uppercase;
}

img.alignleft {
	float: left;
	margin-right: 16px;
}
img.alignright {
	float: right;
	margin-left: 16px;
}
img.aligncenter {
	display: block;
	margin: 1em auto;
}
.ccenter {
	padding: 0 16px;
	margin: 0 auto;
	max-width: 1822px;
}

.el-animation {
	transition: 1s;
}
.animation-title {
	transition: 0.5s;
	opacity: 0;
}
.animation-scale {
	transform: scale(0.1);
}
.animation-scale.el-show {
	opacity: 1;
	transform: scale(1);
}

.size22 {
	font-size: 22px;
}
.size32 {
	font-size: 32px;
	line-height: 1;
}
.size52 {
	font-size: 52px;
	line-height: 1;
}

p {
	margin: 1em 0;
}
ul, ol {
	padding-left: 20px;
}
p:first-child, ul:first-child, ol:first-child {
	margin-top: 0;
}
p:last-child, ul:last-child, ol:last-child {
	margin-bottom: 0;
}

.grid {
	display: grid;
}
.grid.col2_auto {
	grid-template-columns: auto auto;
}
.grid.col2 {
	grid-template-columns: repeat(2, 1fr);
}
.grid.col3 {
	grid-template-columns: repeat(3, 1fr);
}
.grid.col4 {
	grid-template-columns: repeat(4, 1fr);
}
.grid.grid_3_2 {
	grid-template-columns: 3fr 2fr;
}
.flex {
	display: flex;
	justify-content: space-between;
	flex-direction: row;
}
.flex.column {
	flex-direction: column;
}
.flex.around {
	justify-content: space-around;
}

.flex.center, .grid.center {
	justify-content: center;
}
.flex.left {
	justify-content: flex-start;
}
.flex.right {
	justify-content: flex-end;
}
.flex.vcenter, .grid.vcenter {
	align-items: center;
}
.flex.vtop {
	align-items: flex-start;
}
.grid.vtop {
	align-content: flex-start;
}
.flex.vbottom, .grid.vbottom {
	align-items: flex-end;
}
.flex.wrap {
	flex-wrap: wrap;
}
.gap64 {
	gap: 64px;
}
.gap40 {
	gap: 40px;
}
.gap24 {
	gap: 24px;
}
.gap20 {
	gap: 20px;
}
.gap16 {
	gap: 16px;
}
.gap12 {
	gap: 12px;
}
.gap8 {
	gap: 8px;
}



.mb0 {
	margin-bottom: 0 !important;
}
.pt40 {
	padding-top: 40px;
}
.pb40 {
	padding-bottom: 40px;
}
.pt60 {
	padding-top: 60px;
}
.pb60 {
	padding-bottom: 60px;
}
.pt80 {
	padding-top: 80px;
}
.pb80 {
	padding-bottom: 80px;
}
.pt120 {
	padding-top: 120px;
}
.pb120 {
	padding-bottom: 120px;
}

.color_black {
	color: var(--black);
}
.color_blue {
	color: var(--blue);
}
.color_gold {
	color: var(--gold);
}
.color_yellow {
	color: var(--yellow);
}
.color_gray {
	color: var(--gray);
}
.color_white {
	color: var(--white);
}
.color_white60 {
	color: var(--white60);
}

strong, b {
	font-weight: 700;
}

h1, .h1 {
	font-size: 120px;
	line-height: 1;
	font-family: 'Forum', serif;
	font-weight: 400;
	text-transform: uppercase;
	margin: 0 0 0.8em;
	letter-spacing: 0.027em;
	text-transform: uppercase;
}

h2, .h2 {
	font-family: 'Forum', serif;
	font-size: 96px;
	font-weight: 400;
	line-height: 1;
	margin: 0 0 32px;
	letter-spacing: 0.027em;
	text-transform: uppercase;
}

h3, .h3 {
	font-family: 'Forum', serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
	margin: 0 0 20px;
	letter-spacing: 0.027em;
	text-transform: uppercase;
}
h1 i, .h1 i, h2 i, .h2 i , h3 i, .h3 i {
	font-family: 'Good Vibes Pro', serif;
	transform: translateX(-0.15em);
    display: inline-block;
}


input[type=text],
input[type=tel],
input[type=email],
select,
textarea {
	background: transparent;
	color: #fff;
	border: 0 none;
	border-bottom: 1px solid #fff;
	transition: 0.3s;
	width: 100%;
	padding: 0.73em 0;
	line-height: 1.3;
	font-size: 18px;
	font-weight: 300;
	font-family: 'Onest', serif;
	display: block;
}
textarea {
	height: 110px;
	resize: none;
}
.field:hover input[type=text],
.field:hover input[type=tel],
.field:hover input[type=email],
.field:hover select,
.field:hover textarea {
	border-color: var(--gold);
}
input[type=text]::placeholder,
input[type=tel]::placeholder,
input[type=email]::placeholder,
textarea::placeholder {
	color: var(--white60);
}

input[type=text][disabled],
input[type=tel][disabled],
input[type=email][disabled],
textarea[disabled] {
	background: #E1E3E5;
	border-color: #E1E3E5 !important;
	color: #BBBDBF;
}
input[type=text][disabled]::placeholder,
input[type=tel][disabled]::placeholder,
input[type=email][disabled]::placeholder,
textarea[disabled]::placeholder {
	color: var(--white60);
}

.field.policy.grid {
	grid-template-columns: 18px auto;
	gap: 16px;
	color: var(--main_color);
	margin: 16px 0;
}
.field.policy.grid a {
	text-decoration: none;
}
input[type=checkbox] {
	appearance: none;
	display: block;
	width: 24px;
	height: 24px;
	cursor: pointer;
	position: relative;
	margin: 0;
	background: #fff;
	border: 1px solid #00000099;
	border-radius: 4px;
}
input[type=checkbox]:after {
	content: '';
	display: block;
	width: 18px;
	height: 18px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: 0.3s;
}
input[type=checkbox]:before {
	border-radius: 4px;
	transition: 0.3s;
}
input[type=checkbox]:after {
	background: var(--gold) url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15 4.5L6.75 12.75L3 9" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center/cover;
	opacity: 0;
}
input[type=checkbox]:checked {
	background: var(--gold);
	border-color: var(--gold);
}
input[type=checkbox]:checked:after {
	opacity: 1;
}


input[type=radio] {
	appearance: none;
	display: block;
	width: 24px;
	height: 24px;
	cursor: pointer;
	position: relative;
	margin: 0;
	border-radius: 50%;
	border: 1px solid #00000099;
	transition: 0.3s border-color;
	background: #fff;
}
input[type=radio]:checked {
	border: 7px solid var(--gold);
}

button, input[type=submit], input[type=button], input[type=reset] {
	cursor: pointer;
}

.field.phone {
	position: relative;
}
.field.phone input {
	padding-left: 70px;
}
.field.phone .flags {
	position: absolute;
	z-index: 10;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	padding: 0 15px 0 0;
}
.field.phone .flags:after {
	display: block;
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -5px;
	height: 10px;
	width: 10px;
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23666" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/></svg>') no-repeat center/cover;
	transition: 0.3s;
}
.field.phone .flags img {
	display: block;
	width: 30px;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
}
.field.phone .flags .list {
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 2;
	opacity: 0;
	pointer-events: none;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	transform: translate(-10px, 10px);
}
.field.phone .flags.opened:after {
	transform: scaleY(-1);
}
.field.phone .flags.opened .list {
	opacity: 1;
	pointer-events: all;
}
.field.phone .flags .list .item {
	padding: 5px 10px;
	background: #fff;
	white-space: nowrap;
	font-size: 12px;
	grid-template-columns: 30px auto;
	color: var(--main_color);
}
.field.phone .flags .list .item span.code {
	color: var(--gray);
}
/*.modal .field.phone .flags .list .item span.name {
	display: none;
}
.modal .field.phone .flags .list .item span.code {
	color: inherit;
}*/

.required_invalid {
	-webkit-animation: empty 0.8s ease infinite;
	animation: empty 0.8s ease infinite;
	display: block;
	color: var(--red);
}

.upload_dragover {
	grid-template-columns: auto 192px;
	gap: 16px;
	position: relative;
	padding: 18px 15px;
	border: 1px dashed #fff;
}
.upload_dragover input {
	position: absolute;
	pointer-events: none;
	opacity: 0;
}
.upload_dragover .hint {
	max-width: 400px;
}
.upload_dragover label {
	font-family: 'Onest', serif;
	background: transparent;
	border: 2px solid transparent;
	position: relative;
	padding: 16px 0;
	text-align: center;
    font-weight: 400;
	text-transform: uppercase;
	width: 192px;
	border-radius: 8px;
	overflow: hidden;
	transition: 0.3s;
    z-index: 1;
    color: var(--main_bg);
}
.upload_dragover label:before, .upload_dragover label:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}
.upload_dragover label:before {
	background: #fff;
	z-index: -2;
}
.upload_dragover label:after {
	background: linear-gradient(306.98deg, #FFE49A -4.19%, #A15812 100%);
	box-shadow: 0px 2px 20px 1px #F7CA4B4D;
	z-index: -1;
	opacity: 0;
	transition: 0.3s;
}
.upload_dragover label:hover {
	border-color: #F7CA4B;
	color: var(--black);
}
.upload_dragover label:hover:after {
	opacity: 1;
}
.field button[type=submit] {
	width: 100%;
}

.bg_lazy, .bg_lazy:before, .bg_lazy:after {
	background-image: none !important;
}

/* блок со скроллом для таблиц и прочего */
div.scr {
	overflow: auto;
	padding: 0 0 10px;
}
div.scr::-webkit-scrollbar {
	width: 12px; /* ширина scrollbar */
}
div.scr::-webkit-scrollbar-track {
	background: #eee; /* цвет дорожки */
}
div.scr::-webkit-scrollbar-thumb { /* плашка */
	background-color: #42a327;
	border-radius: 20px;
	border: 3px solid #555;
}

header {
	position: fixed;
	z-index: 2;
	left: 0;
	top: 0;
	width: 100%;
	transition: background ease 0.3s;
}
body.scrolled header {
	background: #03110d99;
	box-shadow: 0 10px 40px rgba(255, 255, 255, 0.2);
	backdrop-filter: blur(5px);
}
body:has( #wpadminbar) header {
	top: 32px;
}

header .row2 {
	border-bottom: 1px solid #FFFFFF99;
	padding: 27px 0;
	transition: 0.3s;
}
header .row2 nav {
	width: 60%;
}
body.scrolled header .row2 {
	padding: 5px 0;
}
form.search_form {
	position: relative;
}
header form.search_form {
	width: 480px;
}
form.search_form input[type=text], #mobile_menu_container input[type=text] {
	width: 100%;
	height: 48px;
	padding: 10px 40px 10px 14px;
	border: 2px solid #EFEFEF;
	background: #EFEFEF;
	color: #7D7E80;
	border-radius: 8px;
	font-size: 16px;
	transition: 0.3s all;
}
form.search_form input[type=text]::placeholder, #mobile_menu_container input[type=text]::placeholder {
	color: #7D7E80;
}
form.search_form button, #mobile_menu_container form button {
	border: 0 none;
	background: transparent;
	padding: 12px 16px;
	position: absolute;
	top: 0;
	right: 0;
}
form.search_form button svg, #mobile_menu_container form button svg {
	display: block;
}
form.search_form button svg path, #mobile_menu_container form button svg path {
	transition: all 0.3s;
}
form.search_form button:hover svg path, #mobile_menu_container form button:hover svg path {
	fill: var(--blue);
}
form.search_form:hover input[type=text], #mobile_menu_container form:hover input[type=text] {
	border-color: var(--blue);
}


@media (min-width: 992px) {
	#btn_mobile_menu {
		display: none;
	}
}


#btn_mobile_menu {
	border: 0 none;
	border-radius: 50%;
	background: #FFFFFF99;
	height: 48px;
	width: 48px;
}
header .row_mobile .social {
	background: #fff;
	border-radius: 50%;
	height: 48px;
	width: 48px;
}
header .row_mobile .social svg, header .row_mobile .social img {
	height: 27px;
	width: 27px;
}

.now_online {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	margin: 0 auto;
}
.now_online:before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 10px;
	background: #12b912;
	animation: pulse 2s infinite;
}
@keyframes pulse {
	0%  { opacity: 0;}
	50% { opacity: 1; }
	100% { opacity: 0; }
}


.no_list_style, #primary-menu, #primary-menu ul, #mobile_menu_container ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

html body .block, svg {
	display: block;
}

button#menu-toggle {
	display: none;
}
#primary-menu {
	position: relative;
	display: flex;
	gap: 16px;
}
body.scrolled #primary-menu {
	gap: 5px 24px;
}
#primary-menu > li > a {
	font-weight: 400;
	display: block;
	transition: 0.3s all;
	color: var(--main_color);
	text-decoration: none;
	text-transform: uppercase;
}
#primary-menu  ul li a {
	font-weight: 500;
	display: block;
	transition: 0.3s all;
	color: var(--main_color);
	text-decoration: none;
}
#primary-menu li:hover > a {
	color: var(--gold);
}
#primary-menu > li.menu-item-has-children {
	position: relative;
}
#primary-menu > li.menu-item-has-children ul {
	display: none;
	position: absolute;
	z-index: 10;
	top: 100%;
	left: 0;
	padding: 8px 0;
	box-shadow: 0px 0px 10px 0px #FFFFFF50 inset;
	backdrop-filter: blur(40px);
	min-width: 300px;
	/*background: #fff;*/
	border-radius: 8px;
}
#primary-menu > li.menu-item-has-children > a {
	display: flex;
	gap: 4px;
	align-items: center;
}
#primary-menu li.menu-item-has-children > a:after {
	display: block;
	content: '';
	height: 24px;
	width: 24px;
	background: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18 9L12 15L6 9" stroke="%23E0E0E0"/></svg>') no-repeat center/cover;
}
#primary-menu li.menu-item-has-children:hover > a:after {
	background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18 9L12 15L6 9" stroke="%23daa563"/></svg>');
}
#primary-menu li.menu-item-has-children:hover > ul {
	display: block;
}
#primary-menu li.menu-item-has-children ul a {
	display: block;
	padding: 8px 16px;
	position: relative;
}
#primary-menu li ul a > span {
	display: block;
}
#primary-menu ul li + li > a > span:before {
	display: block;
	background: #FFFFFF33;
	height: 1px;
	position: relative;
	top: -8px;
	left: 0;
	width: 100%;
	content: '';
}
#primary-menu ul li.menu-item-has-children > a:after {
	top: 8px;
	right: 8px;
	position: absolute;
	transform: rotate(-90deg);
}
#primary-menu > li.menu-item-has-children ul ul {
	top: 0;
	left: 100%;
}
li.current-menu-item > a {
	pointer-events: none;
}

@media (min-width: 991.98px) {
	header .row_mobile {
		display: none;
	}
	#primary-menu > li.menu-item-has-children.full_width {
		position: static;
	}
	#primary-menu > li.menu-item-has-children.full_width > ul {
		width: 100%;
		max-width: 1200px;
		left: 50%;
		transform: translateX(-50%);
		column-width: calc((100% - 80px) / 3);
		column-count: 3;
		padding: 40px;
		gap: 40px;
	}
	#primary-menu > li.menu-item-has-children.full_width ul ul {
		display: block;
		position: static;
		box-shadow: none;
		min-width: auto;
		padding: 0;
	}
	#primary-menu > li.menu-item-has-children.full_width ul > li + li {
		padding-top: 20px;
		margin-top: 20px;
		border-top: 1px solid var(--gray);
	}
	#primary-menu > li.menu-item-has-children.full_width ul a {
		padding: 8px 0;
	}
	#primary-menu > li.menu-item-has-children.full_width ul a:after {
		display: none;
	}
	#primary-menu > li.menu-item-has-children.full_width ul ul li a {
		font-weight: 400;
		padding: 0;
	}
}



header .site-branding img {
	display: block;
}
header .site-branding a {
	text-decoration: none;
	color: var(--main_color);
	font-size: 18px;
	font-weight: 500;
}

.gap15 {
	gap: 15px;
}

.breadcrumbs {
	font-size: 14px;
	margin: 0 0 40px;
}
.breadcrumbs a {
	color: var(--main_color);
	text-decoration: none;
}

.btn_blue {
	display: inline-block;
	border: 0 none;
	background: var(--blue);
	padding: 17px 24px;
	color: #fff;
	transition: 0.3s background;
	border-radius: 8px;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.4;
	text-decoration: none;
	text-align: center;
	white-space: nowrap;
}
.btn_blue:hover {
	background: var(--dark_blue);
}
.btn_blue.hover_white:hover {
	background: var(--white);
	color: var(--main_color);
}

.modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999998;
	display: none;
	width: 100%;
	height: 100%;
	overflow: hidden;
	outline: 0;
	background: rgba(0, 0, 0, 0.5);
	padding: 0 15px;
}

.error-404 {
	text-align: center;
}
.error-404 form.search_form {
	max-width: 480px;
	margin: 0 auto 60px;
}

.buttons_right {
	position: fixed;
	z-index: 10;
	right: 64px;
	bottom: 64px;
}
.buttons_right .social {
	padding: 28px;
	background: #fff;
	border-radius: 50%;
}
.buttons_right .social svg {
	display: block;
}

@media (max-width: 1400px) {
	header form.search_form {
		width: 30vw;
	}
	header .flex {
		gap: 20px;
	}
	.size22 {
		font-size: 20px;
	}
	.size32 {
		font-size: 28px;
	}
	.size52 {
		font-size: 46px;
	}
}

@media (max-width: 1200px) {
	h1, .h1 {
		font-size: 45px;
	}
	.pt60 {
		padding-top: 50px;
	}
	.pb60 {
		padding-bottom: 50px;
	}
	.pt120 {
		padding-top: 80px;
	}
	.pb120 {
		padding-bottom: 80px;
	}
	.size22 {
		font-size: 18px;
	}
	.size32 {
		font-size: 24px;
	}
	.size52 {
		font-size: 40px;
	}
}

@media (max-width: 1100px) {
	h1, .h1 {
		font-size: 40px;
	}
	header form.search_form {
		width: 25vw;
	}
	header .row1 .flex {
		gap: 15px;
	}
	header .socials svg {
		width: 24px;
		height: 24px;
	}
	header .block_phone a {
		font-size: 20px;
	}
	.btn_black_border {
		font-size: 11px;
	}
}

@media (max-width: 991.98px) {
	.section.first_screen, .main_wrapper {
		padding-top: 120px;
	}
	.size22 {
		font-size: 16px;
	}
	.size32 {
		font-size: 20px;
	}
	.size52 {
		font-size: 36px;
	}
	.ccenter {
		padding: 0 24px;
	}
	.buttons_right {
		display: none;
	}
	#wpadminbar {
		display: none;
	}
	html[lang] {
		margin-top: 0 !important;
	}
	
	body:has( #wpadminbar) header {
		top: 0;
	}
	.pt60 {
		padding-top: 30px;
	}
	.pb60 {
		padding-bottom: 30px;
	}
	.pt120 {
		padding-top: 60px;
	}
	.pb120 {
		padding-bottom: 60px;
	}
	h1, .h1 {
		font-size: 84px;
	}
	h2, .h2 {
		font-size: 70px;
	}
	h3, .h3 {
		font-size: 36px;
	}
	header {
		padding: 24px 0;
	}
	header .address_block,
	header .row2 {
		display: none;
	}
	header form.search_form {
		width: calc(100vw - 480px);
	}
	
	.pt40 {
		padding-top: 30px;
	}
	.pb40 {
		padding-bottom: 30px;
	}
	.pt80 {
		padding-top: 60px;
	}
	.pb80 {
		padding-bottom: 60px;
	}
	.field.policy.grid {
		font-size: 14px;
	}
	.field.policy.grid input[type=checkbox] {
		transform: translateY(-2px);
	}
}

@media (max-width: 767.98px) {
	html, body {
		font-size: 16px;
	}
	.ccenter {
		padding: 0 16px;
	}

	h1, .h1 {
		font-size: 80px;
	}
	h2, .h2 {
		font-size: 54px;
		margin: 0 0 24px;
	}
	h3, .h3 {
		font-size: 24px;
		margin: 0 0 16px;
	}
	button#menu-toggle {
		display: block;
		width: 40px;
		height: 40px;
		border: 0 none;
		padding: 10px 5px;
		background: transparent;
	}
	button#menu-toggle span.line {
		display: block;
		height: 2px;
		width: 100%;
		background: var(--main_color);
		margin: 0 0 6px;
	}
	#primary-menu-container {
		position: absolute;
		display: none;
		top: 100%;
		left: 0;
		width: 100%;
		z-index: 10;
		padding: 15px;
		background: #fff;
		box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
	}
	#primary-menu {
		flex-direction: column;
	}
	
	.mobile_table_wrapper {
		overflow: auto;
	}
	.mobile_table_wrapper table.mobile_wrap {
		width: 100%;
	}
	
	/* полосы прокрутки на мобилах*/
	::-webkit-scrollbar {
		-webkit-appearance: none;
	}

	::-webkit-scrollbar:vertical {
		width: 12px;
	}

	::-webkit-scrollbar:horizontal {
		height: 12px;
	}

	::-webkit-scrollbar-thumb {
		background-color: rgba(0, 0, 0, .5);
		border-radius: 10px;
		border: 2px solid #ffffff;
	}

	::-webkit-scrollbar-track {
		border-radius: 10px;
		background-color: #ffffff;
	}
}

@media (max-width: 650px) {
	header .row1 form {
		display: none;
	}
}

@media (max-width: 575.98px) {

	html, body {
		font-size: 14px;
	}
	.btn_gold, .btn_gold.middle, .btn_white, .btn_white.middle {
		min-height: 56px;
	}
	.btn_gold.small, .btn_white.small {
		min-height: 30px;
	}
	.pt40 {
		padding-top: 20px;
	}
	.pb40 {
		padding-bottom: 20px;
	}
	.pt60 {
		padding-top: 20px;
	}
	.pb60 {
		padding-bottom: 20px;
	}
	.pt80, .pt120 {
		padding-top: 40px;
	}
	.pb80, .pb120 {
		padding-bottom: 40px;
	}
	
	.size22 {
		font-size: 14px;
	}
	.size32 {
		font-size: 16px;
	}
	.size52 {
		font-size: 28px;
	}
	h2, .h2 {
		font-size: 32px;
		margin: 0 0 16px;
	}
	h3, .h3 {
		font-size: 18px;
		margin: 0 0 12px;
	}
	input[type=text],
	input[type=tel],
	input[type=email],
	select,
	textarea {
		font-size: 14px;
	}
	.buttons_right {
		right: 20px;
	}
	.upload_dragover {
		grid-template-columns: 1fr;
		gap: 12px;
		padding: 12px;
	}
	.upload_dragover label {
		width: 100%;
	}
}

@media (max-width: 480px) {

	h1, .h1 {
		font-size: 24px;
	}
	header .row1 .block_phone,
	header .row1 .socials {
		display: none;
	}
	
	
	.field.policy.grid {
		font-size: 12px;
	}
	.field.policy.grid input[type=checkbox] {
		transform: translateY(-4px);
	}
}

@media (max-width: 415px) {

	h2, .h2 {
		font-size: 25px;
	}
}