 html {
 	font-size: 16px;
 	scroll-behavior: smooth;
 }

 .col-xl, .col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg, .col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md, .col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm, .col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col, .col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
 	padding-left: var(--gap);
 	padding-right: var(--gap);
 }

 .row {
 	margin-right: calc(0px - var(--gap));
 	margin-left: calc(0px - var(--gap));
 }

 /*
body {
	background: var(--color-white);
	color: inherit;
	line-height: inherit;
	position: relative;
	margin: 0;
	line-height: 1.2;
	font-size: var(--font-size-m);
	font-family: var(--font-main), var(--fonts);
} */

 /* h1, .page-title{
	font-size: var(--font-size-h1);
	font-weight: 800;
	text-align: center;
	margin-bottom: 0.5em;
	text-transform: uppercase;
	display: block;
}
.not-front h1,
.not-front    .page-title{
	font-size: var(--font-size-h1-page);
}
h2, .block-title{
	font-size: var(--font-size-h2);
	font-weight: 800;
	text-align: center;
	margin-bottom: 1em;
}
h3{
	font-size: var(--font-size-h3);
	font-weight: 800;
}
h4 {
	font-size: var(--font-size-h4);
}
h5{
	font-size: var(--font-size-h5);
} */


 main.main {
 	min-height: 40vh;
 }

 p {
 	margin: 0;
 }

 img {
 	max-width: 100%;
 	height: auto;
 }

 .ui-dialog .ui-dialog-content a {
 	color: var(--color-main);
 }

 .ui-dialog-buttonset {
 	display: flex;
 }

 .ui-dialog-buttonset .button,
 .more-link a,
 .btn.form-submit,
 .btn {
 	line-height: 1;
 	border-radius: var(--border-radius);
 	font-weight: 800;
 	flex-shrink: 0;
 	box-shadow: none;
 	appearance: none;

 	display: flex;
 	align-items: center;
 }

 .more-link a:active,
 .btn:active {
 	outline: 0;
 }

 .ui-dialog-buttonset .button,
 .form-actions .btn,
 .btn-default {
 	color: var(--color-white);
 	background-color: var(--color-main);
 	border-color: var(--color-main);
 	border-radius: var(--border-radius);
 	border: 2px solid var(--color-main)
 }

 .ui-dialog-buttonset .button:is(:focus, :active, :hover),
 .form-actions .btn:is(:focus, :active, :hover),
 .btn-default:is(:focus, :active, :hover) {

 	color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main);

 	/* color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main); */
 }

 a.link--previous {
 	color: var(--color-white);
 	background-color: var(--color-main);
 	border-radius: var(--border-radius);
 	flex-shrink: 0;
 	align-items: center;
 	padding: 14px 20px;
 	font-size: 16px;
 	font-weight: 400;
 	line-height: 1;
 	border: 2px solid var(--color-main)
 }

 a.link--previous:hover {
 	color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main);
 }

 /* переопределение стандартных active и focus */
 .page :is(:active, :focus),
 .ui-dialog :is(:active, :focus),
 .page .form-control:is(:active, :focus),
 .page .form-checkbox:is(:active, :focus) {
 	outline: none;
 	box-shadow: none;
 }

 .page .form-control:focus,
 .page .form-checkbox:focus {
 	/* background-color: inherit; */
 	border-color: inherit;
 }

 .page :focus,
 .ui-dialog :focus {
 	outline: 1px dotted var(--color-focus);
 	outline-offset: 1px;
 }

 .page .form-control:focus,
 .page .form-checkbox:focus {
 	outline: 1px dotted var(--color-focus);
 	outline-offset: 0px;
 }


 .view-content>div {
 	position: relative;
 }

 .ajax-progress-throbber {
 	position: fixed !important;
 	left: 0;
 	right: 0;
 	top: 0;
 	bottom: 0;
 	z-index: 1000;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	width: 100%;
 	height: 100%;
 }


 #mobile-header {
 	display: none;
 	position: fixed;
 	top: 0;
 	left: 0;
 	width: 100%;
 	height: 45px;
 	background-color: var(--color-white);
 	z-index: 100;
 	box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
 }

 #mobile-header .page-header {
 	flex-grow: 1;
 	font-weight: 300;
 	align-self: center;
 	text-overflow: ellipsis;
 	white-space: nowrap;
 	overflow: hidden;
 	padding: 0 5px;
 }

 #mobile-header>a {
 	color: inherit;
 	font-size: 32px;
 	line-height: 1;
 	text-decoration: none;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	padding: 5px;
 	min-width: 45px;
 }

 .region-header {
 	display: flex;
 	justify-content: space-between;
 	align-items: center;

 }

 .header-mobile-block {
 	display: none;
 }

 #open-mobile-menu {
 	/* display: block; */
 }

 .region-navigation {
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 }

 .search-api-page-block-form form {
 	display: flex;
 }

 .search-api-page-block-form .form-type-search {
 	width: 100%;
 }

 .search-api-page-block-form .form-search:focus {
 	outline-offset: -1px;
 }

 .search-api-page-block-form-search {
 	display: flex;
 	gap: 20px;
 	align-items: center;
 	margin-bottom: 30px;
 }

 .search-api-page-block-form .form-actions .btn {
 	padding: 0;
 	/* color: var(--color-white); */
 	background-color: var(--color-main);
 	background-repeat: no-repeat;
 	background-position: left 5px center;
 	background-size: 20px;
 	background-image: url(../image/search.svg);
 	font-size: 18px;
 	height: 32px;
 	padding-left: 30px;
 	padding-right: 15px;
 	font-weight: 400;
 	/* line-height: 32px; */
 	transition: background 0.3s ease;
 }





 /* кнопка поиск без лупы */
 /* .search-api-page-block-form .form-actions .btn {
 	background-image: none;
 	background-color: var(--color-main);
 	color: var(--color-white);
 	font-size: 18px;
 	font-weight: 400;
 	height: 32px;
 	line-height: 32px;
 	padding: 0 15px;
 	text-align: center;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 } */


 .search-api-page-block-form .form-actions .btn:is(:hover) {
 	color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main);
 	/* background-image: url(../image/search.svg); */
 	background-image: url(../image/search_orange.svg);

 }




 .search-api-page-block-form .form-actions .btn:is(:active), .search-api-page-block-form .form-actions .btn.btn-primary:is(:active) {
 	color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main);
 	background-image: url(../image/search_orange.svg);

 }

 .search-api-page-block-form .form-actions .btn:is(:focus), .search-api-page-block-form .form-actions .btn.btn-primary:is(:focus) {
 	color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main);
 	background-image: url(../image/search_orange.svg);
 	/* background-image: url(../image/search.svg); */
 }

 /* 
 .search-api-page-block-form .form-actions .btn:is(:active) {
 	color: var(--color-main);
 	background-color: var(--color-white);
 	border-color: var(--color-main);

 } */



 #superfish-main .is-active {
 	pointer-events: none;
 }

 /*
#superfish-main .active-trail,
#superfish-main a:hover {
	background: rgba(0, 0, 0, 0.1);
}
 */
 .cart--cart-block .cart-block--link__expand {
 	display: flex;
 	align-items: center;
 	gap: 5px;
 	position: relative;
 }

 .node--type-slide {
 	/* display: grid;
 	align-items: center;
 	color: var(--color-white); */
 }

 .node--type-slide div[data-once="contextual-render"] {
 	top: 36px;
 }

 .node--type-slide .field--name-field-image {
 	grid-area: 1/1;
 }

 .node--type-slide .field--name-field-image img {
 	min-height: 290px;
 }

 .node--type-slide .content {
 	grid-area: 1/1;
 	display: flex;
 	flex-direction: column;
 	/* gap: 1rem; */
 }

 .node--type-slide::after {
 	content: none;
 }

 #map-block {
 	margin: 0;
 }

 #map-block .field--name-body {
 	display: flex;
 }

 .footer {
 	padding: 2rem 0 0;
 }

 .footer .vesta {
 	padding: 1.125em;
 	font-size: 14px;
 	color: var(--color-white);
 	display: flex;
 	justify-content: center;
 }

 #drupal-modal .form-type-checkbox {
 	display: flex;
 	align-items: flex-start;
 }

 #drupal-modal .form-type-checkbox input {
 	margin: 5px 0 0 0;
 }

 #drupal-modal .form-type-checkbox .description {
 	margin: 0 0 0 5px;
 }

 .form-control {
 	border-radius: var(--border-radius);
 }

 .form-type-checkbox {
 	display: flex;
 }

 .form-type-checkbox .description {
 	margin-left: .4em;
 }

 .form-item {
 	margin: 0;
 }

 .form-control {
 	border-radius: var(--border-radius);
 }

 .form-control::placeholder {
 	color: var(--color-text-placeholder);
 }

 .form-type-checkbox {
 	display: flex;
 	flex-wrap: wrap;
 }

 .form-type-checkbox .description {
 	margin-left: .4em;
 	flex: 1;
 }

 /* ### WEBFORM DIALOG ### */
 body .ui-dialog :is(.ui-dialog-titlebar, .ui-dialog-buttonpane) {
 	background-color: transparent;
 }

 .ui-dialog .webform-submission-form {
 	display: flex;
 	flex-direction: column;
 	gap: 1rem;
 }

 .ui-dialog .webform-submission-form .form-type-processed-text {
 	margin-top: 1rem;
 	font-size: 13px;
 }


 .view-grid .view-content {
 	display: grid;
 	grid-template-columns: repeat(auto-fill, minmax(var(--grid-col-w), 1fr));
 	gap: var(--gap);
 }

 .view-news.view-display-id-page_1 .content {
 	background-color: var(--color-bg-gray);
 	padding: 10px;
 	display: flex;
 	flex-direction: column;
 	gap: 15px;
 }


 /* .mm-navbar{} */
 .region-navigation-mobile .menu {
 	display: grid;
 }

 .region-navigation-mobile .menu a {
 	background-color: transparent;
 	color: var(--color-black);
 }

 .region-navigation-mobile .menu .is-active {
 	color: var(--color-white);
 	background-color: var(--color-main);
 	pointer-events: none;
 }

 .region-navigation-mobile .menu .menuparent+ul {
 	display: none;
 }

 .nav-tabs {
 	gap: 2px;
 }

 .nav-tabs .nav-item a,
 .nav-tabs .nav-item.active a:hover {
 	padding: 1ch;
 	border: 1px solid var(--color-main);
 	border-radius: var(--border-radius) var(--border-radius) 0 0;
 	color: var(--color-main);
 }

 .nav-tabs .nav-item.active a,
 .nav-tabs .nav-item a:hover {
 	background-color: var(--color-main);
 	color: var(--color-white);
 }

 #scrollToTop {
 	appearance: none;
 	display: flex;
 	width: 3rem;
 	height: 3rem;
 	cursor: pointer;
 	font-size: 0;
 	transition: .2s;
 	background-image: url('../image/i_totop.svg');
 	background-repeat: no-repeat;
 	background-position: center;
 	background-size: contain;
 	background-color: transparent;
 	border: none;
 	opacity: 0.8;

 	position: fixed;
 	right: 6vw;
 	bottom: 3vh;
 	z-index: 10;
 }

 .social-field:hover,
 #scrollToTop:hover {
 	opacity: 1;
 	transform: scale(1.05);
 }

 .social-field:active,
 #scrollToTop:active {
 	transform: scale(0.9);
 	transition-duration: 0s;
 }


 /* ### ADAPTIVE ### */
 @media screen and (max-width: 1199px) {}

 @media screen and (max-width: 991px) {
 	html {
 		font-size: 14px;
 	}

 	/* ### MOBILE MENU ### */
 	.footer .menu--main,
 	.header-block,
 	.navigation {
 		display: none;
 	}

 	#mobile-nav .navigation {
 		display: block;
 	}

 	.mm-page {
 		padding-top: 0 !important;
 		/* 64px */
 	}

 	/* #header{
		position: sticky;
		top: 0;
		z-index: 500;
		padding: 0;
	} */

 	#block-vesta-theme-osnovnayanavigaciya-2 :is(.sf-accordion-toggle, #superfish-main-accordion) {
 		display: none;
 	}

 	#block-vesta-theme-osnovnayanavigaciya-2 #superfish-main {
 		display: flex !important;
 	}

 	.header-mobile-block {
 		display: block;
 		padding: 8px 0;
 		width: 100%;
 		z-index: 400;
 		/* background-color: var(--color-white);
 		box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); */
 	}

 	.header-mobile-block .region-header-mobile {
 		display: flex;
 	}
 }

 @media screen and (max-width: 767px) {
 	html {
 		font-size: 12px;
 	}

 	body {
 		padding-top: 0 !important;
 		padding: 0 !important;
 	}

 	/* ### webform ### */
 	.webform-submission-form {
 		grid-template-columns: 1fr;
 	}
 }

 @media screen and (max-width: 576px) {
 	html {
 		font-size: 13px;
 	}
 }

 /* ### contextual-region ### */
 .contextual-region .contextual {
 	display: none;
 	top: -8px;
 	right: 8px;
 }

 .contextual-region .contextual-region .contextual {
 	top: 8px;
 }

 .contextual-region:hover .contextual {
 	display: block;
 }

 .contextual-region .contextual .trigger {
 	width: 22px !important;
 	height: 22px !important;
 	background-size: 14px 14px;
 }

 /* ### commerce ### */
 .view-commerce-cart-form .form-actions {
 	display: flex;
 	justify-content: flex-end;
 	gap: 10px;
 }

 .view-commerce-cart-form .btn-primary {
 	background-color: var(--color-main);
 	border-color: var(--color-main);
 }

 .view-commerce-cart-form .btn-primary:hover {
 	background-color: var(--color-white);
 	color: var(--color-main);
 }

 .view-commerce-cart-form .table-wrapper {
 	overflow-x: auto;
 }