@charset "UTF-8";
:root {
  --color-text-400: #666;
  --color-text-600: #5C6368;
  --color-text-800: #000;
  --color-primary-300: #41779E;
  --color-primary-600: #2E5877;
  --color-primary-800: #142937;
  --color-secondary-100: #F1F3F3;
  --color-secondary-200: #f5f6f7;
  --color-secondary-600: #CA8757;
  --color-secondary-800: #B26E3D;
  --shadow-primary: 0px 4px 50px rgba(20, 41, 55, 0.06);
  --shadow-secondary: 0px 4px 50px rgba(20, 41, 55, 0.18);
  --shadow-button: 0px 5px 15px rgba(202, 135, 87, 0.25);
  --color-line: #DBDEE0;
  --focus: #869791;
  --orange: #f4a70b;
  --red-600: #ff5400;
  --red-800: #d9534f;
  --white: #fff;
}

.breadcrumbs ol, .vertical-menu ul, .menu-top ul, .header__nav ul, .ul-custom ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

/* example:
@media only screen and (max-width: 425px) {
   @include cols(4, 0px);
}
@media only screen and (max-width: 320px) {
   @include cols(2, 20px);
}
 */
/*! modern-normalize v2.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */
/*
Document
========
*/
/**
Use a better box model (opinionated).
*/
*,
::before,
::after {
  box-sizing: border-box;
}

html {
  /* Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) */
  font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  line-height: 1.15; /* 1. Correct the line height in all browsers. */
  -webkit-text-size-adjust: 100%; /* 2. Prevent adjustments of font size after orientation changes in iOS. */
  -moz-tab-size: 4; /* 3. Use a more readable tab size (opinionated). */
  tab-size: 4; /* 3 */
}

/*
Sections
========
*/
body {
  margin: 0; /* Remove the margin in all browsers. */
}

/*
Grouping content
================
*/
/**
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
}

/*
Text-level semantics
====================
*/
/**
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr[title] {
  text-decoration: underline dotted;
}

/**
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
Tabular data
============
*/
/**
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
}

/*
Forms
=====
*/
/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
Remove the inner border and padding in Firefox.
*/
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
Restore the focus styles unset by the previous rule.
*/
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
Remove the additional ':invalid' styles in Firefox.
See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
*/
:-moz-ui-invalid {
  box-shadow: none;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/
legend {
  padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Interactive
===========
*/
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1360px) {
  .container {
    max-width: 1320px;
  }
}
.container .container {
  padding: 0;
}

.grid {
  display: grid;
  grid-template-columns: repeat(var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1))))), minmax(0, 1fr));
}
@media only screen and (min-width: 1930px) {
  .grid {
    grid-template-columns: repeat(var(--col-xxl, var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))))), minmax(0, 1fr));
  }
}
@media only screen and (max-width: 1359px) {
  .grid {
    grid-template-columns: repeat(var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))), minmax(0, 1fr));
  }
}
@media only screen and (max-width: 991px) {
  .grid {
    grid-template-columns: repeat(var(--col-md, var(--col-sm, var(--col, 1))), minmax(0, 1fr));
  }
}
@media only screen and (max-width: 767px) {
  .grid {
    grid-template-columns: repeat(var(--col-sm, var(--col, 1)), minmax(0, 1fr));
  }
}
@media only screen and (max-width: 575px) {
  .grid {
    grid-template-columns: repeat(var(--col, 1), minmax(0, 1fr));
  }
}

.grid-flex {
  display: flex;
  flex-wrap: wrap;
}
.grid-flex > :where(div, a, span, li) {
  max-width: calc((100% - (var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1))))) - 1) * var(--gap-xl, var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px)))))) / var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1))))));
  flex-basis: calc((100% - (var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1))))) - 1) * var(--gap-xl, var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px)))))) / var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1))))));
  flex-grow: 0;
  flex-shrink: 0;
}
@media only screen and (min-width: 1930px) {
  .grid-flex > :where(div, a, span, li) {
    max-width: calc((100% - (var(--col-xxl, var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))))) - 1) * var(--gap-xxl, var(--gap-xl, var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px))))))) / var(--col-xxl, var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))))));
    flex-basis: calc((100% - (var(--col-xxl, var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))))) - 1) * var(--gap-xxl, var(--gap-xl, var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px))))))) / var(--col-xxl, var(--col-xl, var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))))));
  }
}
@media only screen and (max-width: 1359px) {
  .grid-flex > :where(div, a, span, li) {
    max-width: calc((100% - (var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))) - 1) * var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px))))) / var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))));
    flex-basis: calc((100% - (var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))) - 1) * var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px))))) / var(--col-lg, var(--col-md, var(--col-sm, var(--col, 1)))));
  }
}
@media only screen and (max-width: 991px) {
  .grid-flex > :where(div, a, span, li) {
    max-width: calc((100% - (var(--col-md, var(--col-sm, var(--col, 1))) - 1) * var(--gap-md, var(--gap-sm, var(--gap, 30px)))) / var(--col-md, var(--col-sm, var(--col, 1))));
    flex-basis: calc((100% - (var(--col-md, var(--col-sm, var(--col, 1))) - 1) * var(--gap-md, var(--gap-sm, var(--gap, 30px)))) / var(--col-md, var(--col-sm, var(--col, 1))));
  }
}
@media only screen and (max-width: 767px) {
  .grid-flex > :where(div, a, span, li) {
    max-width: calc((100% - (var(--col-sm, var(--col, 1)) - 1) * var(--gap-sm, var(--gap, 15px))) / var(--col-sm, var(--col, 1)));
    flex-basis: calc((100% - (var(--col-sm, var(--col, 1)) - 1) * var(--gap-sm, var(--gap, 15px))) / var(--col-sm, var(--col, 1)));
  }
}
@media only screen and (max-width: 575px) {
  .grid-flex > :where(div, a, span, li) {
    max-width: calc((100% - (var(--col, 1) - 1) * var(--gap, 15px)) / var(--col, 1));
    flex-basis: calc((100% - (var(--col, 1) - 1) * var(--gap, 15px)) / var(--col, 1));
  }
}

.grid,
.grid-flex {
  gap: var(--gap-xl, var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px)))));
}
@media only screen and (min-width: 1930px) {
  .grid,
  .grid-flex {
    gap: var(--gap-xxl, var(--gap-xl, var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px))))));
  }
}
@media only screen and (max-width: 1359px) {
  .grid,
  .grid-flex {
    gap: var(--gap-lg, var(--gap-md, var(--gap-sm, var(--gap, 30px))));
  }
}
@media only screen and (max-width: 991px) {
  .grid,
  .grid-flex {
    gap: var(--gap-md, var(--gap-sm, var(--gap, 30px)));
  }
}
@media only screen and (max-width: 767px) {
  .grid,
  .grid-flex {
    gap: var(--gap-sm, var(--gap, 15px));
  }
}
@media only screen and (max-width: 575px) {
  .grid,
  .grid-flex {
    gap: var(--gap, 15px);
  }
}

.justify-content-end {
  justify-content: flex-end;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-around {
  justify-content: space-around;
}

.justify-content-evenly {
  justify-content: space-evenly;
}

.align-items-center {
  align-items: center;
}

html {
  font-size: 16px;
}

body {
  font-family: "roboto-my", "roboto-my Fallback", sans-serif;
  color: var(--color-text-600);
  line-height: 1.5;
  min-width: 320px;
  position: relative;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 0.875rem;
  }
}

.page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.page__offset-top {
  margin-top: 80px;
}
@media only screen and (max-width: 1359px) {
  .page__offset-top {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 991px) {
  .page__offset-top {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 575px) {
  .page__offset-top {
    margin-top: 20px;
  }
}

.main {
  flex: 1 0 auto;
}

.page__two-columns {
  flex: 1 0 auto;
  display: grid;
  grid-template-areas: "aside main";
  gap: 0 50px;
  grid-template-columns: 280px minmax(0, 1fr);
}
@media only screen and (max-width: 1359px) {
  .page__two-columns {
    gap: 0 30px;
    grid-template-columns: 210px minmax(0, 1fr);
  }
}
@media only screen and (max-width: 991px) {
  .page__two-columns {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main" "aside";
  }
}
.page__two-columns .main {
  flex: none;
  grid-area: main;
}

.aside {
  grid-area: aside;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media only screen and (max-width: 991px) {
  .aside {
    display: none;
  }
}
@media only screen and (max-width: 575px) {
  .aside {
    gap: 15px;
  }
}

.widgets-right {
  position: absolute;
  top: 0;
  right: 0;
  width: calc((100% - 1320px) / 2);
  height: 100%;
}
@media only screen and (max-width: 1359px) {
  .widgets-right {
    width: calc((100% - 960px) / 2);
  }
}
@media only screen and (max-width: 991px) {
  .widgets-right {
    width: calc((100% - 720px) / 2);
  }
}
@media only screen and (max-width: 767px) {
  .widgets-right {
    display: none;
  }
}

.mb:not(:last-child),
.tpl-block-list-objects:not(:last-child) {
  margin-bottom: 30px;
}
@media only screen and (max-width: 575px) {
  .mb:not(:last-child),
  .tpl-block-list-objects:not(:last-child) {
    margin-bottom: 15px;
  }
}

/* ОТСТУПЫ И ДР СТИЛИ БЛОКОВ */
.section_mb {
  margin-bottom: var(--section-mb, 50px);
}
@media only screen and (max-width: 1359px) {
  .section_mb {
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 991px) {
  .section_mb {
    margin-bottom: 30px !important;
  }
}

.section_mb-sm {
  margin-bottom: var(--section-mb-sm, 30px);
}
@media only screen and (max-width: 1359px) {
  .section_mb-sm {
    margin-bottom: 50px;
  }
}
@media only screen and (max-width: 991px) {
  .section_mb-sm {
    margin-bottom: 30px !important;
  }
}

.section_mb-disabled {
  margin-bottom: 0 !important;
}

.section_p {
  padding-top: var(--section-p, 50px);
  padding-bottom: var(--section-p, 50px);
}
@media only screen and (max-width: 991px) {
  .section_p {
    padding-top: 40px !important;
  }
}
@media only screen and (max-width: 767px) {
  .section_p {
    padding-top: 30px !important;
  }
}
@media only screen and (max-width: 991px) {
  .section_p {
    padding-bottom: 40px !important;
  }
}
@media only screen and (max-width: 767px) {
  .section_p {
    padding-bottom: 30px !important;
  }
}

.section_p-sm {
  padding-top: var(--section-p-sm, 30px);
  padding-bottom: var(--section-p-sm, 30px);
}
@media only screen and (max-width: 767px) {
  .section_p-sm {
    padding-top: 30px !important;
  }
}
@media only screen and (max-width: 767px) {
  .section_p-sm {
    padding-bottom: 30px !important;
  }
}

.section_p-disabled {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.page__two-columns .main .section_p,
.page__two-columns .main .section_p-sm,
.page__two-columns .main .section_p-disabled {
  padding-left: 30px;
  padding-right: 30px;
}
@media only screen and (max-width: 767px) {
  .page__two-columns .main .section_p,
  .page__two-columns .main .section_p-sm,
  .page__two-columns .main .section_p-disabled {
    padding-left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .page__two-columns .main .section_p,
  .page__two-columns .main .section_p-sm,
  .page__two-columns .main .section_p-disabled {
    padding-right: 15px;
  }
}

.section_dark {
  --color-text-400: #fff;
  --color-text-600: #fff;
  --color-text-800: #fff;
  --color-primary-600: #fff;
  --color-primary-800: #231F20;
  --color-secondary-200: #58595B;
  --color-secondary-600: #414042;
  --color-secondary-800: #231F20;
  --white: #000;
}
body .section_dark {
  color: #fff;
}
.section_dark .form-control:focus-visible {
  border-color: var(--orange);
}
.section_dark .checkbox__input {
  accent-color: #fff;
}
.section_dark .checkbox_custom .checkbox__input {
  width: 18px;
  height: 18px;
  position: static;
  overflow: visible;
  clip: auto;
}
.section_dark .checkbox_custom .checkbox__ico {
  display: none;
}
.section_dark .radio__input {
  accent-color: #fff;
}
.section_dark .radio_custom .radio__input {
  width: 18px;
  height: 18px;
  position: static;
  overflow: visible;
  clip: auto;
}
.section_dark .radio_custom .radio__ico {
  display: none;
}

.section_bg {
  background-position: top center;
}

[data-bg]:not(.loaded) {
  background-color: var(--color-primary-800);
}

.section_bg-repeat {
  background-repeat: repeat;
}

.section_bg-no-repeat {
  background-repeat: no-repeat;
  background-size: cover;
}

.section_bg-parallax {
  background-position: center;
  background-attachment: fixed;
}
@media only screen and (max-width: 767px) {
  .section_bg-parallax {
    background-attachment: scroll;
  }
}

.video-bg {
  position: relative;
}

.video-bg-block {
  z-index: -1 !important;
}
.video-bg-block iframe {
  transition: opacity 500ms ease-in-out;
  transition-delay: 250ms;
}

/* /ОТСТУПЫ И ДР СТИЛИ БЛОКОВ */
.combine-block.section_mb-disabled .tpl-block-list-objects > div:last-child .section_mb,
.combine-block.section_mb-disabled .tpl-block-list-objects > div:last-child .section_p-sm {
  margin-bottom: 0 !important;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  font-weight: normal;
  line-height: 1.1;
  color: var(--color-text-800);
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
  margin-top: 0;
  text-overflow: ellipsis;
  overflow-x: clip;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1359px) {
  h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
    margin-bottom: 25px;
  }
}
@media only screen and (max-width: 991px) {
  h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
    margin-bottom: 1rem;
  }
}

h1, .h1 {
  font-size: clamp(1.625rem, 1.325rem + 1.5vw, 3.125rem);
}

h2, .h2 {
  font-size: clamp(1.5rem, 1.3625rem + 0.6875vw, 2.1875rem);
}

h3, .h3 {
  font-size: clamp(1.375rem, 1.3rem + 0.375vw, 1.75rem);
}

h4, .h4 {
  font-size: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem);
}

h5, .h5 {
  font-size: clamp(1.125rem, 1.1rem + 0.125vw, 1.25rem);
}

h6, .h6 {
  font-size: clamp(1rem, 0.975rem + 0.125vw, 1.125rem);
}

.h-reset {
  font-size: inherit;
  font-weight: inherit;
  margin-bottom: inherit;
  color: inherit;
}

.sub-title {
  font-style: italic;
  color: var(--color-text-600);
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .sub-title {
    margin-bottom: 1rem;
  }
}
.sub-title:before {
  content: "";
  display: flex;
  background: var(--color-primary-600);
  height: 3px;
  width: 190px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 991px) {
  .sub-title:before {
    width: 140px;
  }
}
@media only screen and (max-width: 767px) {
  .sub-title:before {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 991px) {
  .sub-title:before {
    margin-top: 10px;
  }
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}
p:last-child {
  margin-bottom: 0;
}

address {
  font-style: normal;
}

.text-left {
  text-align: left !important;
}
.text-left.title-wrapper > * {
  text-align: left !important;
}
.text-left.title-wrapper .sub-title:before {
  margin-left: inherit !important;
  margin-right: inherit !important;
}

.text-right {
  text-align: right !important;
}
.text-right.title-wrapper > * {
  text-align: right !important;
}
.text-right.title-wrapper .sub-title:before {
  margin-left: auto !important;
  margin-right: inherit !important;
}

.text-center {
  text-align: center !important;
}
.text-center.title-wrapper > * {
  text-align: center !important;
}
.text-center.title-wrapper .sub-title:before {
  margin-left: auto !important;
  margin-right: auto !important;
}

.text-justify {
  text-align: justify !important;
}
.text-justify.title-wrapper > * {
  text-align: justify !important;
}
.text-justify.title-wrapper .sub-title:before {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ФОРМАТИРОВАНИЕ ТЕКСТА И ЭЛЕМЕНТОВ В ТЕКСТЕ */
.text-elements > *:not(:last-child, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .sub-title) {
  margin-bottom: 1rem;
}
.text-elements img:not([class]) {
  max-width: 100%;
  height: auto;
}
.text-elements .img-container {
  text-align: center;
}
.text-elements .img-container[href] {
  display: inline-block;
}
.text-elements .img-container[href] img {
  transition: box-shadow 0.1s ease-in-out;
}
.text-elements .img-container[href]:hover img {
  box-shadow: var(--shadow-primary);
}
.text-elements ul {
  margin-top: 0;
  padding-left: 0;
}
.text-elements ul li {
  position: relative;
  left: 20px;
  margin-right: 20px;
}
.text-elements ul > li:not(:last-child) {
  margin-bottom: 0.25rem;
}
.text-elements ul ul, .text-elements ul ol {
  margin-top: 0.25rem;
}
.text-elements ol {
  margin-top: 0;
  padding-left: 0;
}
.text-elements ol li {
  position: relative;
  left: 20px;
  margin-right: 20px;
}
.text-elements ol > li::marker {
  color: var(--color-primary-600);
  font-weight: bold;
}
.text-elements ol > li:not(:last-child) {
  margin-bottom: 0.25rem;
}
.text-elements:after {
  display: block;
  clear: both;
  content: "";
}

/*
Если такой стиль списка нужен в блоке text-elements,
то оттуда убрать стандартный стиль ul
*/
.ul-custom ul {
  margin-left: -30px;
}
.ul-custom ul > li {
  margin-left: 30px;
  position: relative;
  left: 30px;
  margin-right: 30px;
}
.ul-custom ul > li:before {
  top: 1px;
  content: "";
  float: left;
  position: relative;
  background: url("../img/sprite.svg#ul-marker") no-repeat;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  margin-left: -30px;
}
.ul-custom ul > li:not(:last-child) {
  margin-bottom: 0.25rem;
}
.ul-custom ul ul, .ul-custom ul ol {
  margin-top: 0.25rem;
}

/* /ФОРМАТИРОВАНИЕ ТЕКСТА И ЭЛЕМЕНТОВ В ТЕКСТЕ */
/*==========  TABLE  ==========*/
table {
  border-collapse: collapse;
}

.table-responsive > .overflow > table, .text-elements table {
  background: var(--white);
}
.table-responsive > .overflow > table td, .text-elements table td, .table-responsive > .overflow > table th, .text-elements table th {
  text-align: center;
  padding: 5px 10px;
  border: 1px solid var(--color-line);
  height: 49px;
}
@media only screen and (max-width: 767px) {
  .table-responsive > .overflow > table td, .text-elements table td, .table-responsive > .overflow > table th, .text-elements table th {
    height: 40px;
  }
}
.table-responsive > .overflow > table th, .text-elements table th {
  background: var(--color-secondary-200);
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .table-responsive > .overflow > table th, .text-elements table th {
    line-height: 1.1;
  }
}
.table-responsive > .overflow > table tr td, .text-elements table tr td {
  transition: background 0.1s ease-in-out, border 0.1s ease-in-out;
}
.table-responsive > .overflow > table tr:hover td, .text-elements table tr:hover td {
  background-color: var(--color-secondary-100);
}

.table-striped tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-responsive > .overflow > table {
  max-width: 100%;
}
.table-responsive .overflow {
  overflow-x: auto;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
.table-responsive .table-responsive-arrow {
  display: none;
}

@media only screen and (max-width: 991px) {
  .table-responsive {
    position: relative;
    overflow: hidden;
  }
  .table-responsive .table-responsive-arrow {
    display: block;
    position: absolute;
    top: 0;
    width: 40px;
    height: 100%;
    transition: left 0.5s ease-in-out, right 0.5s ease-in-out;
    z-index: 1;
  }
  .table-responsive .table-responsive-arrow:before {
    content: "";
    position: absolute;
    top: 0;
    width: 5px;
    height: 100%;
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0.3) 75%, transparent), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.4), transparent);
  }
  .table-responsive .table-responsive-arrow:after {
    content: "";
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 50%;
    margin-top: -40px;
    left: 0;
  }
  .table-responsive .table-responsive-arrow svg {
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 16px;
    z-index: 1;
    transform: scaleX(-1);
    width: 15px;
    height: 30px;
  }
  .table-responsive .table-responsive-arrow svg use {
    fill: #fff;
  }
  .table-responsive .table-responsive-arrow.arrow-left {
    left: -100%;
    transform: scale(-1, 1);
  }
  .table-responsive .table-responsive-arrow.arrow-left:before {
    right: 0;
  }
  .table-responsive .table-responsive-arrow.arrow-right {
    right: -100%;
  }
  .table-responsive .table-responsive-arrow.arrow-right:before {
    right: 0;
  }
  .table-responsive.table-responsive-arrow-left-on .table-responsive-arrow.arrow-left {
    left: 0;
  }
  .table-responsive.table-responsive-arrow-right-on .table-responsive-arrow.arrow-right {
    right: 0;
  }
}
/*==========  TABLE  ==========*/
::placeholder {
  color: #999;
}

:focus {
  outline: none;
}

:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
}

a,
input[type=button],
button {
  transition: background 0.1s ease-in-out, border 0.1s ease-in-out, box-shadow 0.1s ease-in-out, opacity 0.1s ease-in-out, color 0.1s ease-in-out;
}

a {
  text-decoration: none;
}

a:where(:not([class]),
[class=""],
[class=ext-Select-like-a-Boss],
[class=nowrap],
.link) {
  color: var(--color-secondary-600);
  text-decoration: none;
}
a:where(:not([class]),
[class=""],
[class=ext-Select-like-a-Boss],
[class=nowrap],
.link):visited {
  color: var(--color-secondary-800);
}
a:where(:not([class]),
[class=""],
[class=ext-Select-like-a-Boss],
[class=nowrap],
.link):hover {
  text-decoration: underline;
}

.button2, .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  max-width: 100%;
  font-size: 16px;
  min-height: 50px;
  width: 210px;
  line-height: 1.1;
  padding: 5px 10px;
  text-decoration: none;
  font-weight: 700;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .button2, .button {
    font-size: 14px;
  }
}
@media only screen and (max-width: 1359px) {
  .button2, .button {
    min-height: 40px;
  }
}
@media only screen and (max-width: 1359px) {
  .button2, .button {
    width: 190px;
  }
}
.button2:hover, .button:hover {
  text-decoration: none;
}
.button2 svg, .button svg {
  flex-shrink: 0;
  transition: fill 0.1s ease-in-out, stroke 0.1s ease-in-out;
}
.button2 svg:not([class]), .button svg:not([class]) {
  margin-left: 10px;
}
.button2 svg.left, .button svg.left {
  margin-right: 10px;
}

.button {
  background-color: var(--color-secondary-600);
  color: #fff;
  box-shadow: var(--shadow-button);
}
.button svg use {
  fill: #fff;
}
.button:hover {
  background-color: var(--color-secondary-800);
  box-shadow: none;
}
.button:active {
  background-color: var(--color-secondary-600);
  box-shadow: var(--shadow-button);
}
.button[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
  box-shadow: none;
  color: rgba(0, 0, 0, 0.8);
  background-color: #E6E6E6;
  border: none;
}
.button[disabled] svg use {
  fill: rgba(0, 0, 0, 0.8);
}

.button2 {
  color: var(--color-primary-300);
  border: 2px solid var(--color-primary-300);
}
.button2 svg use {
  fill: var(--color-primary-300);
}
.button2:hover {
  color: var(--white);
  background-color: var(--color-primary-300);
}
.button2:hover svg use {
  fill: var(--white);
}
.button2:active {
  color: var(--color-primary-300);
  background-color: transparent;
}
.button2:active svg use {
  fill: var(--color-primary-300);
}

.button-container {
  text-align: center;
  margin-top: 40px;
}
@media only screen and (max-width: 991px) {
  .button-container {
    margin-top: 0;
  }
}

button {
  border: none;
  background-color: transparent;
  padding: 0;
  cursor: pointer;
}
button:focus {
  outline: none;
}
button:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
}

blockquote {
  padding-left: 30px;
  margin-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  border-left: 2px solid var(--color-primary-300);
}
@media only screen and (max-width: 767px) {
  blockquote {
    padding-left: 15px;
  }
}
blockquote p:last-child {
  margin-bottom: 0;
}

.hidden {
  display: none;
}

.nowrap {
  white-space: nowrap;
}

address {
  margin-bottom: 0;
}

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

.red-color {
  color: var(--red-600);
}

.float-start {
  float: left;
}

.float-end {
  float: right;
}

.float-none {
  float: none;
}

.lazy:not(.loaded),
.swiper-lazy-bg:not(.swiper-lazy-loaded) {
  background: url("data:image/gif;base64,R0lGODlhCgAIAIABAN3d3f///yH5BAEAAAEALAAAAAAKAAgAAAINjAOnyJv2oJOrVXrzKQA7");
}

/*
TODO: переверстать legacy
 */
/* ВИДЕОГАЛЕРЕЯ И ОТДЕЛЬНЫЙ БЛОК */
iframe, object, embed {
  border: 0;
}

.text-elements iframe, .text-elements object, .text-elements embed {
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
  .text-elements iframe, .text-elements object, .text-elements embed {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .text-elements iframe,
  .text-elements iframe .aspect_ratio_16by9, .text-elements object,
  .text-elements object .aspect_ratio_16by9, .text-elements embed,
  .text-elements embed .aspect_ratio_16by9 {
    height: 286.88px;
  }
}
@media only screen and (max-width: 575px) {
  .text-elements iframe,
  .text-elements iframe .aspect_ratio_16by9, .text-elements object,
  .text-elements object .aspect_ratio_16by9, .text-elements embed,
  .text-elements embed .aspect_ratio_16by9 {
    height: 306.56px;
  }
}
@media only screen and (max-width: 425px) {
  .text-elements iframe,
  .text-elements iframe .aspect_ratio_16by9, .text-elements object,
  .text-elements object .aspect_ratio_16by9, .text-elements embed,
  .text-elements embed .aspect_ratio_16by9 {
    height: 222.19px;
  }
}
@media only screen and (max-width: 375px) {
  .text-elements iframe,
  .text-elements iframe .aspect_ratio_16by9, .text-elements object,
  .text-elements object .aspect_ratio_16by9, .text-elements embed,
  .text-elements embed .aspect_ratio_16by9 {
    height: 194.06px;
  }
}
@media only screen and (max-width: 320px) {
  .text-elements iframe,
  .text-elements iframe .aspect_ratio_16by9, .text-elements object,
  .text-elements object .aspect_ratio_16by9, .text-elements embed,
  .text-elements embed .aspect_ratio_16by9 {
    height: 163.13px;
  }
}
@media only screen and (max-width: 767px) {
  .text-elements iframe.aspect_ratio_21by9, .text-elements object.aspect_ratio_21by9, .text-elements embed.aspect_ratio_21by9 {
    height: 218.56px;
  }
}
@media only screen and (max-width: 575px) {
  .text-elements iframe.aspect_ratio_21by9, .text-elements object.aspect_ratio_21by9, .text-elements embed.aspect_ratio_21by9 {
    height: 233.56px;
  }
}
@media only screen and (max-width: 425px) {
  .text-elements iframe.aspect_ratio_21by9, .text-elements object.aspect_ratio_21by9, .text-elements embed.aspect_ratio_21by9 {
    height: 169.28px;
  }
}
@media only screen and (max-width: 375px) {
  .text-elements iframe.aspect_ratio_21by9, .text-elements object.aspect_ratio_21by9, .text-elements embed.aspect_ratio_21by9 {
    height: 147.84px;
  }
}
@media only screen and (max-width: 320px) {
  .text-elements iframe.aspect_ratio_21by9, .text-elements object.aspect_ratio_21by9, .text-elements embed.aspect_ratio_21by9 {
    height: 124.28px;
  }
}
@media only screen and (max-width: 767px) {
  .text-elements iframe.aspect_ratio_4by3, .text-elements object.aspect_ratio_4by3, .text-elements embed.aspect_ratio_4by3 {
    height: 382.5px;
  }
}
@media only screen and (max-width: 575px) {
  .text-elements iframe.aspect_ratio_4by3, .text-elements object.aspect_ratio_4by3, .text-elements embed.aspect_ratio_4by3 {
    height: 408.75px;
  }
}
@media only screen and (max-width: 425px) {
  .text-elements iframe.aspect_ratio_4by3, .text-elements object.aspect_ratio_4by3, .text-elements embed.aspect_ratio_4by3 {
    height: 296.25px;
  }
}
@media only screen and (max-width: 375px) {
  .text-elements iframe.aspect_ratio_4by3, .text-elements object.aspect_ratio_4by3, .text-elements embed.aspect_ratio_4by3 {
    height: 258.75px;
  }
}
@media only screen and (max-width: 320px) {
  .text-elements iframe.aspect_ratio_4by3, .text-elements object.aspect_ratio_4by3, .text-elements embed.aspect_ratio_4by3 {
    height: 217.5px;
  }
}
@media only screen and (max-width: 767px) {
  .text-elements iframe.aspect_ratio_1by1, .text-elements object.aspect_ratio_1by1, .text-elements embed.aspect_ratio_1by1 {
    height: 510px;
  }
}
@media only screen and (max-width: 575px) {
  .text-elements iframe.aspect_ratio_1by1, .text-elements object.aspect_ratio_1by1, .text-elements embed.aspect_ratio_1by1 {
    height: 545px;
  }
}
@media only screen and (max-width: 425px) {
  .text-elements iframe.aspect_ratio_1by1, .text-elements object.aspect_ratio_1by1, .text-elements embed.aspect_ratio_1by1 {
    height: 395px;
  }
}
@media only screen and (max-width: 375px) {
  .text-elements iframe.aspect_ratio_1by1, .text-elements object.aspect_ratio_1by1, .text-elements embed.aspect_ratio_1by1 {
    height: 345px;
  }
}
@media only screen and (max-width: 320px) {
  .text-elements iframe.aspect_ratio_1by1, .text-elements object.aspect_ratio_1by1, .text-elements embed.aspect_ratio_1by1 {
    height: 290px;
  }
}
.text-elements iframe.float-start, .text-elements object.float-start, .text-elements embed.float-start {
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .text-elements iframe.float-start, .text-elements object.float-start, .text-elements embed.float-start {
    margin-right: 0;
  }
}
.text-elements iframe.float-end, .text-elements object.float-end, .text-elements embed.float-end {
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  .text-elements iframe.float-end, .text-elements object.float-end, .text-elements embed.float-end {
    margin-left: 0;
  }
}
.text-elements iframe.center, .text-elements object.center, .text-elements embed.center {
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.text-elements iframe.fullwidth, .text-elements object.fullwidth, .text-elements embed.fullwidth {
  width: 100%;
}

.ckeditor-html5-video {
  max-width: 100%;
}
.ckeditor-html5-video.float-start {
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .ckeditor-html5-video.float-start {
    margin-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .ckeditor-html5-video.float-start {
    float: none;
  }
}
.ckeditor-html5-video.float-end {
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  .ckeditor-html5-video.float-end {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .ckeditor-html5-video.float-end {
    float: none;
  }
}
.ckeditor-html5-video.center {
  display: table;
  margin-left: auto;
  margin-right: auto;
}
.ckeditor-html5-video.aspect_ratio_original {
  overflow: hidden;
}
.ckeditor-html5-video.aspect_ratio_original video {
  display: block;
}
.ckeditor-html5-video:not(.aspect_ratio_original) {
  position: relative;
  overflow: hidden;
  background: #000;
}
.ckeditor-html5-video:not(.aspect_ratio_original):before {
  content: "";
  display: block;
}
.ckeditor-html5-video:not(.aspect_ratio_original) video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.ckeditor-html5-video:not(.aspect_ratio_original).aspect_ratio_16by9 {
  aspect-ratio: 16/9;
}
.ckeditor-html5-video:not(.aspect_ratio_original).aspect_ratio_21by9 {
  aspect-ratio: 21/9;
}
.ckeditor-html5-video:not(.aspect_ratio_original).aspect_ratio_4by3 {
  aspect-ratio: 4/3;
}
.ckeditor-html5-video:not(.aspect_ratio_original).aspect_ratio_1by1 {
  aspect-ratio: 1/1;
}

.video-container {
  max-width: 100%;
  position: relative;
  overflow: hidden;
  background: #000;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.video-container, .video-container.aspect_ratio_16by9 {
  aspect-ratio: 16/9;
}
.video-container.aspect_ratio_21by9 {
  aspect-ratio: 21/9;
}
.video-container.aspect_ratio_4by3 {
  aspect-ratio: 4/3;
}
.video-container.aspect_ratio_1by1 {
  aspect-ratio: 1/1;
}
.video-container.float-start {
  width: 100%;
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .video-container.float-start {
    margin-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .video-container.float-start {
    float: none;
  }
}
.video-container.float-end {
  width: 100%;
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  .video-container.float-end {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .video-container.float-end {
    float: none;
  }
}
.video-container.center {
  margin-left: auto;
  margin-right: auto;
}
.video-container.fullwidth {
  width: 100%;
}

.video-block .item {
  display: flex;
  flex-direction: column;
}
.video-block .item .name {
  line-height: 1.2;
  padding: 10px;
  color: #fff;
  background: var(--color-primary-600);
  text-overflow: ellipsis;
  overflow-x: clip;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-grow: 1;
}

.video-block-fancybox .item {
  display: flex;
  flex-direction: column;
}
.video-block-fancybox .item .img-container {
  display: flex;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.video-block-fancybox .item .img-container, .video-block-fancybox .item .img-container.aspect_ratio_16by9 {
  aspect-ratio: 16/9;
}
.video-block-fancybox .item .img-container.aspect_ratio_21by9 {
  aspect-ratio: 21/9;
}
.video-block-fancybox .item .img-container.aspect_ratio_21by9 img {
  height: 100%;
}
.video-block-fancybox .item .img-container.aspect_ratio_4by3 {
  aspect-ratio: 4/3;
}
.video-block-fancybox .item .img-container.aspect_ratio_1by1 {
  aspect-ratio: 1/1;
}
.video-block-fancybox .item .img-container img {
  margin: auto;
  width: auto;
  max-height: 100%;
}
.video-block-fancybox .item .name {
  line-height: 1.2;
  text-align: center;
  padding: 10px;
  color: #fff;
  background: var(--color-primary-600);
  text-overflow: ellipsis;
  overflow-x: clip;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
}
.video-block-fancybox .item video {
  display: none;
}

.video-block-fancybox .item[data-fancybox] .img-container,
.video-container-fancybox.img-container {
  position: relative;
}
.video-block-fancybox .item[data-fancybox] .img-container:after,
.video-container-fancybox.img-container:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-image: url("../img/sprite.svg#zoom");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 45px;
  filter: drop-shadow(2px 4px 3px rgba(0, 0, 0, 0.3));
  pointer-events: none;
  transition: opacity 0.1s ease-in-out;
  opacity: 0;
}
.video-block-fancybox .item[data-fancybox] .img-container:after,
.video-container-fancybox.img-container:after {
  background-image: url("../img/sprite.svg#play");
  opacity: 1;
}

.video-block-fancybox .item[data-fancybox]:hover .img-container:after {
  opacity: 0.8;
}

.video-container-fancybox {
  max-width: 100%;
}
.video-container-fancybox.float-start {
  width: 100%;
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .video-container-fancybox.float-start {
    margin-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .video-container-fancybox.float-start {
    float: none;
  }
}
.video-container-fancybox.float-end {
  width: 100%;
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  .video-container-fancybox.float-end {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .video-container-fancybox.float-end {
    float: none;
  }
}
.video-container-fancybox.center {
  margin-left: auto;
  margin-right: auto;
  display: table;
}
.video-container-fancybox.fullwidth {
  display: block;
}
.video-container-fancybox.fullwidth img {
  width: 100%;
}

/* /ВИДЕОГАЛЕРЕЯ И ОТДЕЛЬНЫЙ БЛОК */
/* video-gallery-fancybox */
.video-gallery-fb video {
  display: none;
}

.video-gallery-fb__item {
  display: flex;
  flex-direction: column;
}

.video-gallery-fb__img-container {
  display: flex;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.video-gallery-fb__img-container, .video-gallery-fb__img-container.aspect_ratio_16by9 {
  aspect-ratio: 16/9;
}
.video-gallery-fb__img-container.aspect_ratio_21by9 {
  aspect-ratio: 21/9;
}
.video-gallery-fb__img-container.aspect_ratio_21by9 img {
  height: 100%;
}
.video-gallery-fb__img-container.aspect_ratio_4by3 {
  aspect-ratio: 4/3;
}
.video-gallery-fb__img-container.aspect_ratio_1by1 {
  aspect-ratio: 1/1;
}

.video-gallery-fb__img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.video-gallery-fb__title {
  line-height: 1.2;
  text-align: center;
  padding: 10px;
  color: #fff;
  background-color: var(--color-primary-600);
  text-overflow: ellipsis;
  overflow-x: clip;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
}

.video-gallery-fb__img-container,
.video-container-fancybox {
  position: relative;
  /*&:before{
    content: '';
    @include img-centered;
    width: 30px;
    height: 30px;
    background-color: #fff;
  }*/
}
.video-gallery-fb__img-container:after,
.video-container-fancybox:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-image: url("../img/sprite.svg#play");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 70px;
  pointer-events: none;
  transition: transform 0.1s ease-in-out;
}

.video-gallery-fb__item:hover .video-gallery-fb__img-container:after,
.video-container-fancybox:hover:after {
  transform: scale(1.1);
}

/* /video-gallery-fancybox */
/* video-container-fancybox (in video-gallery-fancybox, in WYSIWYG)*/
.video-container-fancybox {
  display: inline-flex;
  max-width: 100%;
}
.video-container-fancybox.float-start {
  width: 100%;
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .video-container-fancybox.float-start {
    margin-right: 0;
    float: none;
  }
}
.video-container-fancybox.float-end {
  width: 100%;
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  .video-container-fancybox.float-end {
    margin-left: 0;
    float: none;
  }
}
.video-container-fancybox.center {
  margin-left: auto;
  margin-right: auto;
  display: flex;
}
.video-container-fancybox.fullwidth {
  display: block;
}
.video-container-fancybox.fullwidth img {
  width: 100%;
}

/* /video-container-fancybox (in video-gallery-fancybox, in WYSIWYG)*/
.header {
  flex: none;
  position: sticky;
  z-index: 4;
  top: -143px;
}
@media only screen and (max-width: 1359px) {
  .header {
    top: -140px;
  }
}
@media only screen and (max-width: 991px) {
  .header {
    top: -220px;
  }
}
@media only screen and (max-width: 767px) {
  .header {
    top: 0;
  }
}
body.is-autorized .header {
  top: -88px;
}
@media only screen and (max-width: 1359px) {
  body.is-autorized .header {
    top: -85px;
  }
}
@media only screen and (max-width: 991px) {
  body.is-autorized .header {
    top: -165px;
  }
}
@media only screen and (max-width: 767px) {
  body.is-autorized .header {
    top: 0;
  }
}

.header_sm .header__desktop {
  padding-bottom: 0;
}
.header_sm .header__grid {
  grid-template-columns: minmax(0, 1fr);
}
.header_sm .header__logo {
  display: none;
}

.header__desktop {
  color: #fff;
  transition: background 0.1s ease-in-out;
  padding-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .header__desktop {
    display: none;
  }
}
@media only screen and (max-width: 1359px) {
  .header__desktop {
    padding-bottom: 20px;
  }
}

body:not(.index-page) .header__desktop,
.header__desktop_active {
  background-color: var(--color-primary-800);
}

.header__desktop-top {
  min-height: 40px;
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 5px 30px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
@media only screen and (max-width: 991px) {
  .header__desktop-top {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}
@media only screen and (max-width: 991px) {
  .header__desktop-top {
    padding-top: 5px;
  }
}

.header__text {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 12px;
  line-height: 1.2;
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
}

.header__text2 {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  margin-left: -136px;
}
@media only screen and (max-width: 1359px) {
  .header__text2 {
    margin-left: 0;
  }
}

.header__nav {
  position: relative;
  z-index: 5;
}
@media only screen and (max-width: 991px) {
  .header__nav {
    grid-column: 1/-1;
  }
}
.header__nav ul.level1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media only screen and (max-width: 991px) {
  .header__nav ul.level1 {
    justify-content: space-between;
  }
}
.header__nav ul.level1 > li {
  position: relative;
}
.header__nav ul.level1 > li > .item, .header__nav ul.level1 > li.flexMenu-viewMore > a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  min-height: 40px;
  font-size: 14px;
  color: #fff;
  line-height: 1.2;
  position: relative;
  gap: 10px;
}
.header__nav ul.level1 > li > .item:before, .header__nav ul.level1 > li.flexMenu-viewMore > a:before {
  content: "";
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: var(--color-primary-600);
  width: 0;
  transition: width 0.1s ease-in-out;
}
.header__nav ul.level1 > li > .item .submenu, .header__nav ul.level1 > li.flexMenu-viewMore > a .submenu {
  width: 7px;
  height: 12px;
  transform: rotate(-90deg);
}
.header__nav ul.level1 > li > .item .submenu use, .header__nav ul.level1 > li.flexMenu-viewMore > a .submenu use {
  fill: #fff;
}
.header__nav ul.level1 > li:where(:hover, .active, .selected) > .item:before, .header__nav ul.level1 > li.flexMenu-viewMore:where(:hover, .active) > a:before {
  width: 100%;
}
.header__nav ul.level1 > li.flexMenu-viewMore > a {
  font-weight: bold;
}
.header__nav ul.level1 > li:not(:last-child) > .item, .header__nav ul.level1 > li:not(:last-child).flexMenu-viewMore > a {
  margin-right: 30px;
}
.header__nav ul.level2 {
  display: none;
  position: absolute;
  min-width: 100%;
  max-width: 300px;
  width: max-content;
}
.header__nav ul.level1 > li:where(:hover, :focus-within) > ul.level2 {
  display: block !important;
}
.header__nav ul.level2, .header__nav ul.flexMenu-popup {
  background-color: #fff;
  box-shadow: var(--shadow-primary);
}
.header__nav ul.level2 > li, .header__nav ul.flexMenu-popup > li {
  position: relative;
}
.header__nav ul.level2 > li > .item, .header__nav ul.flexMenu-popup > li > .item {
  display: flex;
  align-items: center;
  font-size: 14px;
  min-height: 40px;
  padding: 6px 13px;
  line-height: 1.2;
  color: var(--color-text-800);
  text-decoration: none;
}
.header__nav ul.level2 > li:where(:hover, .active, .selected) > .item, .header__nav ul.flexMenu-popup > li:where(:hover, .active, .selected) > .item {
  background-color: var(--color-primary-600);
  color: #fff;
}
.header__nav ul.level2 > li:not(:last-child), .header__nav ul.flexMenu-popup > li:not(:last-child) {
  border-bottom: 1px solid var(--color-line);
}
.header__nav ul.level2 > li .submenu, .header__nav ul.flexMenu-popup > li .submenu {
  display: none;
}
.header__nav ul ul.level2:not(.level2-fullwidth-column) ul.level3 {
  display: none;
  top: 0;
  left: 100%;
  position: absolute;
  max-width: 300px;
  width: max-content;
  background-color: #fff;
  box-shadow: var(--shadow-primary);
}
.header__nav ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li {
  position: relative;
}
.header__nav ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li > .item {
  display: flex;
  align-items: center;
  font-size: 14px;
  min-height: 40px;
  padding: 6px 13px;
  line-height: 1.2;
  color: var(--color-text-800);
  text-decoration: none;
}
.header__nav ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li:where(:hover, .active, .selected) > .item {
  background-color: var(--color-primary-600);
  color: #fff;
}
.header__nav ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li:not(:last-child) {
  border-bottom: 1px solid var(--color-line);
}
.header__nav ul ul.level2:not(.level2-fullwidth-column).level2 > li:where(:hover, :focus-within) > ul.level3 {
  display: block !important;
}
.header__nav ul.flexMenu-popup {
  right: 0;
}
.header__nav ul.flexMenu-popup > li > ul.level2 {
  display: block;
  padding-left: 15px;
  top: 0;
  left: 0;
  position: relative;
  box-shadow: none;
}
.header__nav ul.flexMenu-popup > li:hover > ul.level2 {
  display: block !important;
}
.header__nav ul.flexMenu-popup > li > ul.level2 > li > ul.level3 {
  display: block;
  padding-left: 15px;
  top: 0;
  left: 0;
  position: relative;
  box-shadow: none;
}
.header__nav ul.flexMenu-popup > li:hover > ul.level3 {
  display: block !important;
}

.header__grid {
  margin-top: 20px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.header__logo {
  align-self: flex-start;
  min-width: 100px;
}
.header__logo[href]:hover {
  opacity: 0.8;
}

.header__grid2 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, auto));
  gap: 10px 20px;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 991px) {
  .header__grid2 {
    grid-template-columns: repeat(3, minmax(0, auto));
  }
}

.header__slogan {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.header__slogan[href]:hover {
  opacity: 0.8;
}

.header__slogan-name {
  font-weight: 700;
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
  font-size: clamp(1rem, 0.9rem + 0.5vw, 1.5rem);
  text-transform: uppercase;
  color: #fff;
  line-height: 1;
}

.header__slogan-text {
  font-size: 12px;
  line-height: 120%;
  color: rgba(255, 255, 255, 0.6);
}

.header__address {
  display: flex;
  flex-direction: column;
  gap: 5px;
  line-height: 1;
}

.header__address-name {
  font-weight: 700;
}

.header__address-text {
  color: rgba(255, 255, 255, 0.6);
  font-size: 14px;
}

.header__email {
  font-weight: 700;
  color: #fff;
}
@media only screen and (max-width: 991px) {
  .header__email {
    font-size: 13px;
  }
}
.header__email:hover {
  color: var(--color-secondary-600);
  text-decoration: none;
}

.header__time {
  color: rgba(255, 255, 255, 0.6);
  font-size: 14px;
}

.header__phone-wrap {
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: flex-end;
}
@media only screen and (max-width: 991px) {
  .header__phone-wrap {
    grid-column: 2/2;
  }
}

.header__phone {
  font-weight: 700;
  line-height: 1;
  color: #fff;
}
.header__phone:hover {
  color: var(--color-secondary-600);
  text-decoration: none;
}

.header__cart {
  position: relative;
}
@media only screen and (max-width: 991px) {
  .header__cart {
    display: flex;
    justify-self: flex-end;
  }
}
.header__cart span {
  position: absolute;
  top: -8px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background-color: var(--color-text-800);
  font-weight: 700;
  color: var(--color-primary-300);
}
.header__cart svg {
  width: 44px;
  height: 40px;
}
.header__cart svg use {
  fill: #fff;
}
.header__cart:hover {
  opacity: 0.8;
}

.header__mobile {
  display: none;
}

@media only screen and (max-width: 767px) {
  .header {
    position: sticky;
    top: 0;
    z-index: 10;
  }
  .header__mobile {
    background-color: var(--color-primary-600);
    color: var(--white);
    justify-content: space-between;
    height: 85px;
    display: flex;
  }
  .header__mobile-buttons {
    height: 100%;
    display: flex;
    align-items: center;
  }
  .header__mobile-button {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-shrink: 0;
    text-decoration: none;
    width: 40px;
    height: 100%;
    color: inherit;
  }
  .header__mobile-button svg {
    width: 55%;
    max-height: 55%;
  }
  .header__mobile-button svg use {
    fill: var(--white);
  }
  .header__mobile-button.active {
    background: rgba(255, 255, 255, 0.4);
  }
  .header__mobile-button_cart {
    position: relative;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: var(--color-primary-300);
  }
  .header__mobile-button_cart .count {
    display: flex;
    position: absolute;
    text-align: center;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    top: 50%;
    margin-top: -20px;
    right: -3px;
    width: 20px;
    height: 20px;
    font-size: 12px;
    background-color: var(--color-text-800);
    font-weight: 700;
    color: var(--color-primary-300);
  }
  /** Selector for the root */
  /** Selector for the button. */
  /** Selector for the button with the "collapse" effect. */
  /** Selector for the button with the "spin" effect. */
  /** Selector for the button with the "squeeze" effect. */
  /** Selector for the button with the "tornado" effect. */
  /** Selector for the button when the menu is opened. */
  /** Selector for the button with the "collapse" effect when the menu is opened. */
  /** Selector for the button with the "spin" effect when the menu is opened. */
  /** Selector for the button with the "squeeze" effect when the menu is opened. */
  /** Selector for the button with the "tornado" effect when the menu is opened. */
  /** Timeout before starting the animation, ensures the animation starts after the menu is fully opened. */
  /** Whether or not to include the CSS for the "collapse" animation. */
  /** Whether or not to include the CSS for the "spin" animation. */
  /** Whether or not to include the CSS for the "squeeze" animation. */
  /** Whether or not to include the CSS for the "tornado" animation. */
  :root {
    /** Size for the button. */
    --mb-button-size: 60px;
    /** Width for the bars, relative to the button. */
    --mb-bar-width: 0.6;
    /** Height for the bars.*/
    --mb-bar-height: 4px;
    /** Distance between bars (approximately). */
    --mb-bar-spacing: 10px;
    /** Timeout before starting the animation, ensures the animation starts after the menu is fully opened. */
    --mb-animate-timeout: 0.4s;
  }
  .mburger {
    background: transparent;
    border: none;
    border-radius: 0;
    color: inherit;
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    height: var(--mb-button-size);
    padding: 0 0 0 var(--mb-button-size);
    margin: 0;
    line-height: var(--mb-button-size);
    vertical-align: middle;
    appearance: none;
    outline: none;
    cursor: pointer;
  }
  .mburger b {
    display: block;
    position: absolute;
    left: calc(var(--mb-button-size) * (1 - var(--mb-bar-width)) / 2);
    width: calc(var(--mb-button-size) * var(--mb-bar-width));
    height: var(--mb-bar-height);
    border-radius: calc(var(--mb-bar-height) / 2);
    background: currentColor;
    color: inherit;
    opacity: 1;
  }
  .mburger b:nth-of-type(1) {
    bottom: calc(50% + var(--mb-bar-spacing));
    transition: bottom 0.2s ease, transform 0.2s ease, width 0.2s ease;
  }
  .mburger b:nth-of-type(2) {
    top: calc(50% - var(--mb-bar-height) / 2);
    transition: opacity 0.2s ease;
  }
  .mburger b:nth-of-type(3) {
    top: calc(50% + var(--mb-bar-spacing));
    transition: top 0.2s ease, transform 0.2s ease, width 0.2s ease;
  }
  .mm-wrapper_opened .mburger b:nth-of-type(1) {
    bottom: calc(50% - var(--mb-bar-height) / 2);
    transform: rotate(45deg);
  }
  .mm-wrapper_opened .mburger b:nth-of-type(2) {
    opacity: 0;
  }
  .mm-wrapper_opened .mburger b:nth-of-type(3) {
    top: calc(50% - var(--mb-bar-height) / 2);
    transform: rotate(-45deg);
  }
  .mburger--squeeze b:nth-of-type(1) {
    transition-delay: 0.1s, 0s;
  }
  .mburger--squeeze b:nth-of-type(2) {
    transition-delay: 0.1s;
  }
  .mburger--squeeze b:nth-of-type(3) {
    transition-delay: 0.1s, 0s;
  }
  .mm-wrapper_opened .mburger--squeeze b:nth-of-type(1) {
    transition-delay: calc(var(--mb-animate-timeout) + 0s), calc(var(--mb-animate-timeout) + 0.1s);
  }
  .mm-wrapper_opened .mburger--squeeze b:nth-of-type(2) {
    transition-delay: calc(var(--mb-animate-timeout) + 0s);
  }
  .mm-wrapper_opened .mburger--squeeze b:nth-of-type(3) {
    transition-delay: calc(var(--mb-animate-timeout) + 0s), calc(var(--mb-animate-timeout) + 0.1s);
  }
  .mburger {
    --mb-button-size: 40px;
    --mb-bar-width: 0.6;
    --mb-bar-height: 2px;
    --mb-bar-spacing: 6px;
  }
  .mm-wrapper_opened .mburger {
    background: rgba(255, 255, 255, 0.4);
  }
  .header__mobile-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
    gap: 5px;
    overflow-x: clip;
    line-height: 1.2;
    color: inherit;
    text-decoration: none;
  }
  .header__mobile-logo:hover, .header__mobile-logo:active {
    text-decoration: none;
  }
  .header__mobile-logo img {
    flex-shrink: 0;
  }
  .header__mobile-logo-text {
    overflow-x: clip;
    text-overflow: ellipsis;
    font-size: 12px;
    line-height: 1.2;
    color: rgba(255, 255, 255, 0.6);
  }
  .header__mobile-logo-text span {
    display: block;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 12px;
    line-height: 1.2;
    font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
    color: #fff;
  }
  .header__mobile-button-container {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    padding: 10px 15px;
    background: inherit;
  }
}
.mm-navbars_top a, .mm-navbars_top button {
  height: 44px;
}
.mm-navbars_top svg {
  width: 50%;
  max-height: 50%;
}
.mm-navbars_top svg use {
  fill: var(--mm-color-text-dimmed);
}

/* mmenu */
.mm-menu_theme-dark {
  --mm-color-border: rgba(0, 0, 0, 0.3);
  --mm-color-button: rgba(255, 255, 255, 0.4);
  --mm-color-text: rgba(255, 255, 255, 0.85);
  --mm-color-text-dimmed: rgba(255, 255, 255, 0.4);
  --mm-color-background: var(--color-primary-600);
  --mm-color-background-highlight: rgba(255, 255, 255, 0.08);
  --mm-color-background-emphasis: var(--color-primary-300);
  --mm-shadow: 0 0 20px rgba(0, 0, 0, 0.5) ;
}

/* /Переменные mmenu */
.mm-listitem_vertical > .mm-panel {
  padding-top: 0;
  padding-bottom: 0;
}

.mm-listitem_vertical > .mm-listitem__btn {
  height: inherit;
}

.mm-panel {
  margin-bottom: -1px;
}
.mm-panel:after {
  display: none;
}

.mm-listitem_opened:not(.mm-listitem_selected) > .mm-panel > .mm-listview > .mm-listitem:first-child:before {
  content: "";
  border-color: inherit;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}

.menu-top {
  grid-column: 1/-1;
  background-color: var(--color-primary-600);
}
.menu-top ul.level1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.menu-top ul.level1 > li {
  position: relative;
  z-index: 3;
  flex-grow: 1;
}
.menu-top ul.level1 > li.position-static {
  position: static;
}
.menu-top ul.level1 > li > .item, .menu-top ul.level1 > li.flexMenu-viewMore > a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  min-height: 40px;
  padding: 6px 10px;
  color: #fff;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: 700;
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
  gap: 10px;
}
@media only screen and (max-width: 991px) {
  .menu-top ul.level1 > li > .item, .menu-top ul.level1 > li.flexMenu-viewMore > a {
    font-size: 14px;
  }
}
.menu-top ul.level1 > li > .item .submenu, .menu-top ul.level1 > li.flexMenu-viewMore > a .submenu {
  width: 7px;
  height: 12px;
  transform: rotate(-90deg);
}
.menu-top ul.level1 > li > .item .submenu use, .menu-top ul.level1 > li.flexMenu-viewMore > a .submenu use {
  fill: #fff;
}
.menu-top ul.level1 > li:where(:hover, .active, .selected) > .item, .menu-top ul.level1 > li.flexMenu-viewMore:where(:hover, .active) > a {
  background-color: var(--color-primary-300);
}
.menu-top ul.level1 > li.flexMenu-viewMore > a {
  font-weight: bold;
}
.menu-top ul.level2 {
  display: none;
  position: absolute;
  min-width: 100%;
  max-width: 300px;
  width: max-content;
}
.menu-top ul.level1 > li:where(:hover, :focus-within) > ul.level2 {
  display: block !important;
}
.menu-top ul.level2, .menu-top ul.flexMenu-popup {
  background-color: var(--color-primary-300);
  box-shadow: var(--shadow-primary);
}
.menu-top ul.level2 > li, .menu-top ul.flexMenu-popup > li {
  position: relative;
}
.menu-top ul.level2 > li > .item, .menu-top ul.flexMenu-popup > li > .item {
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 6px 13px;
  line-height: 1.2;
  color: #fff;
  text-decoration: none;
}
.menu-top ul.level2 > li:where(:hover, .active, .selected) > .item, .menu-top ul.flexMenu-popup > li:where(:hover, .active, .selected) > .item {
  background-color: var(--color-primary-600);
}
.menu-top ul.level2 > li .submenu, .menu-top ul.flexMenu-popup > li .submenu {
  display: none;
}
.menu-top ul ul.level2:not(.level2-fullwidth-column) ul.level3 {
  display: none;
  top: 0;
  left: 100%;
  position: absolute;
  max-width: 300px;
  width: max-content;
  background-color: var(--color-primary-300);
  box-shadow: var(--shadow-primary);
}
.menu-top ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li {
  position: relative;
}
.menu-top ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li > .item {
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 6px 13px;
  line-height: 1.2;
  color: #fff;
  text-decoration: none;
}
.menu-top ul ul.level2:not(.level2-fullwidth-column) ul.level3 > li:where(:hover, .active, .selected) > .item {
  background-color: var(--color-primary-600);
}
.menu-top ul ul.level2:not(.level2-fullwidth-column).level2 > li:where(:hover, :focus-within) > ul.level3 {
  display: block !important;
}
.menu-top ul.flexMenu-popup {
  right: 0;
}
.menu-top ul.flexMenu-popup > li > ul.level2 {
  display: block;
  padding-left: 15px;
  top: 0;
  left: 0;
  position: relative;
  box-shadow: none;
}
.menu-top ul.flexMenu-popup > li:hover > ul.level2 {
  display: block !important;
}
.menu-top ul.flexMenu-popup > li > ul.level2 > li > ul.level3 {
  display: block;
  padding-left: 15px;
  top: 0;
  left: 0;
  position: relative;
  box-shadow: none;
}
.menu-top ul.flexMenu-popup > li:hover > ul.level3 {
  display: block !important;
}

@media only screen and (max-width: 1359px) {
  .vertical-menu ul {
    font-size: 14px;
  }
}
.vertical-menu ul.level1 > li > .item-wrap > .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 50px;
  padding: 6px 25px 6px 20px;
  text-decoration: none;
  color: #fff;
  line-height: 1.1;
  background-color: var(--color-primary-300);
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
}
@media only screen and (max-width: 1359px) {
  .vertical-menu ul.level1 > li > .item-wrap > .item {
    min-height: 42px;
  }
}
@media only screen and (max-width: 1359px) {
  .vertical-menu ul.level1 > li > .item-wrap > .item {
    padding: 6px 20px 6px 12px;
  }
}
.vertical-menu ul.level1 > li > .item-wrap > .item span {
  text-overflow: ellipsis;
  overflow-x: clip;
}
.vertical-menu ul.level1 > li > .item-wrap > .item:hover, .vertical-menu ul.level1 > li:where(.active, .selected) > .item-wrap > .item {
  background-color: var(color-primary-600);
}
.vertical-menu ul.level1 > li > .item-wrap {
  position: relative;
}
.vertical-menu ul.level1 > li > .item-wrap .submenu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 0;
  text-decoration: none;
  width: 30px;
  height: 100%;
}
@media only screen and (max-width: 1359px) {
  .vertical-menu ul.level1 > li > .item-wrap .submenu-btn {
    width: 25px;
  }
}
.vertical-menu ul.level1 > li > .item-wrap .submenu-btn svg {
  width: 7px;
  height: 12px;
  transform: rotate(180deg);
}
.vertical-menu ul.level1 > li > .item-wrap .submenu-btn svg use {
  fill: #fff;
}
.vertical-menu ul.level1 > li > .item-wrap .submenu-btn:hover {
  opacity: 0.8;
}
.vertical-menu ul.level1 > li > .item-wrap .submenu-btn.submenu-btn-show svg {
  transform: rotate(-90deg);
}
.vertical-menu ul.level1 > li > .item-wrap .submenu-btn.submenu-btn-hide svg {
  transform: rotate(180deg);
}
.vertical-menu ul.level1 > li:where(.active, .selected) > .item-wrap > .submenu-btn svg {
  transform: rotate(-90deg);
}
.vertical-menu ul.level1 > li:where(.active, .selected) ul.level2 {
  display: block;
}
.vertical-menu ul.level1 > li:not(:last-child) {
  margin-bottom: 10px;
}
.vertical-menu ul.level2 {
  display: none;
  border-top: none;
  background-color: var(--color-secondary-100);
}
.vertical-menu ul.level2 > li > .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  padding: 6px 20px;
  color: var(--color-text-800);
  line-height: 1.1;
  min-height: 40px;
  font-size: 14px;
}
@media only screen and (max-width: 1359px) {
  .vertical-menu ul.level2 > li > .item {
    padding: 6px 12px;
  }
}
.vertical-menu ul.level2 > li > .item span {
  text-overflow: ellipsis;
  overflow-x: clip;
}
.vertical-menu ul.level2 > li > .item:hover, .vertical-menu ul.level2 > li:where(.active, .selected) > .item {
  color: var(--color-primary-300);
  background-color: rgba(255, 255, 255, 0.5);
}
.vertical-menu ul.level2 > li:not(:last-child) {
  border-bottom: 1px solid var(--color-line);
}
.vertical-menu ul > li:not(.selected) a span {
  display: block;
  transition: transform 0.1s ease-in-out;
}
.vertical-menu ul > li:not(.selected) a:hover span {
  transform: translateX(10px);
}

.breadcrumbs {
  flex: none;
  padding-top: 20px;
}
@media only screen and (max-width: 767px) {
  .breadcrumbs {
    display: none;
  }
}
.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 0;
}
.breadcrumbs ol li {
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 1;
}
.breadcrumbs ol li a {
  color: var(--color-text-800);
}
.breadcrumbs ol li a:hover {
  color: var(--color-secondary-600);
  text-decoration: none;
}
.breadcrumbs ol li a, .breadcrumbs ol li span {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 450px;
  overflow-x: clip;
}
.breadcrumbs ol li:not(:last-child):after {
  margin: 0 8px;
  content: "";
  background: url("../img/sprite.svg#fire") no-repeat;
  width: 13px;
  height: 14px;
  display: block;
}
.breadcrumbs ol li.active {
  color: var(--color-text-600);
}

/*
TODO: переверстать legacy
 */
.text-block .text-block-item:not(:last-child),
.text-block-two-columns .text-block-item:not(:last-child),
.text-block-three-columns .text-block-item:not(:last-child),
.text-block-float .text-block-item:not(:last-child) {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .text-block .text-block-item:not(:last-child),
  .text-block-two-columns .text-block-item:not(:last-child),
  .text-block-three-columns .text-block-item:not(:last-child),
  .text-block-float .text-block-item:not(:last-child) {
    margin-bottom: 10px;
  }
}
.text-block .text-block-item > *:last-child,
.text-block-two-columns .text-block-item > *:last-child,
.text-block-three-columns .text-block-item > *:last-child,
.text-block-float .text-block-item > *:last-child {
  margin-bottom: 0;
}

.text-block-two-columns .text-block-grid {
  display: grid;
  gap: 1rem 30px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.text-block-two-columns .text-block-grid.text-block-grid-2-3 {
  grid-template-columns: minmax(0, 32%) minmax(0, 68%);
}
.text-block-two-columns .text-block-grid.text-block-grid-3-2 {
  grid-template-columns: minmax(0, 68%) minmax(0, 32%);
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns .text-block-grid, .text-block-two-columns .text-block-grid.text-block-grid-2-3, .text-block-two-columns .text-block-grid.text-block-grid-3-2 {
    grid-template-columns: minmax(0, 1fr);
  }
}

.combine-block .text-block-two-columns h1, .combine-block .text-block-two-columns .h1 {
  margin-bottom: 0 !important;
}
.combine-block .text-block-two-columns p {
  color: rgba(255, 255, 255, 0.6);
}
.combine-block .text-block-two-columns blockquote {
  margin-left: -15px;
  margin-right: 0;
  padding-left: 90px;
}
@media only screen and (max-width: 1359px) {
  .combine-block .text-block-two-columns blockquote {
    padding-left: 50px;
  }
}
@media only screen and (max-width: 1359px) {
  .combine-block .text-block-two-columns blockquote {
    padding-left: 30px;
  }
}
@media only screen and (max-width: 991px) {
  .combine-block .text-block-two-columns blockquote {
    margin-left: 0;
  }
}
@media only screen and (max-width: 575px) {
  .combine-block .text-block-two-columns blockquote {
    padding-left: 15px;
  }
}
.combine-block .text-block-two-columns .text-bottom {
  text-align: center;
}
.combine-block .text-block-two-columns .link {
  display: inline-block;
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
  font-size: clamp(1.125rem, 0.9125rem + 1.0625vw, 2.1875rem);
  line-height: 1;
  margin-top: 60px;
}
@media only screen and (max-width: 1359px) {
  .combine-block .text-block-two-columns .link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 991px) {
  .combine-block .text-block-two-columns .link {
    margin-top: 30px;
  }
}
.combine-block .text-block-two-columns .link:hover {
  text-decoration: none;
  color: #fff;
}

.text-block-three-columns .text-block-grid {
  display: grid;
  gap: 1rem 30px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media only screen and (max-width: 767px) {
  .text-block-three-columns .text-block-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.text-block-two-columns2 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.text-block-two-columns2 .text-block-item {
  width: 100%;
}
.text-block-two-columns2 .text-block-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.text-block-two-columns2 .text-block-grid.text-block-grid-2-3 {
  grid-template-columns: minmax(0, 32%) minmax(0, 68%);
}
.text-block-two-columns2 .text-block-grid.text-block-grid-3-2 {
  grid-template-columns: minmax(0, 68%) minmax(0, 32%);
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .text-block-grid, .text-block-two-columns2 .text-block-grid.text-block-grid-2-3, .text-block-two-columns2 .text-block-grid.text-block-grid-3-2 {
    grid-template-columns: minmax(0, 1fr);
  }
}
.text-block-two-columns2 .text-block-grid + .container {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .text-block-grid + .container {
    margin-top: 15px;
  }
}
.text-block-two-columns2 .img-container-bg {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 952/560;
}
.text-block-two-columns2 .video-container,
.text-block-two-columns2 .video-container-fancybox {
  width: auto !important;
  height: 100%;
}
.text-block-two-columns2 .video-container-fancybox {
  display: block;
}
.text-block-two-columns2 .video-container-fancybox img {
  height: 100%;
  object-fit: cover;
}
.text-block-two-columns2 .ckeditor-html5-video {
  height: 100%;
}
.text-block-two-columns2 .ckeditor-html5-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.text-block-two-columns2 .text-col {
  display: flex;
  align-items: center;
  min-height: 560px;
}
@media only screen and (max-width: 1359px) {
  .text-block-two-columns2 .text-col {
    min-height: 400px;
  }
}
@media only screen and (max-width: 991px) {
  .text-block-two-columns2 .text-col {
    min-height: 292px;
  }
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .text-col {
    min-height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .text-col {
    order: -1;
  }
}
.text-block-two-columns2 .text-container {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media only screen and (max-width: 1359px) {
  .text-block-two-columns2 .text-container {
    padding-top: 60px;
  }
}
@media only screen and (max-width: 991px) {
  .text-block-two-columns2 .text-container {
    padding-top: 30px;
  }
}
@media only screen and (max-width: 1359px) {
  .text-block-two-columns2 .text-container {
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 991px) {
  .text-block-two-columns2 .text-container {
    padding-bottom: 30px;
  }
}
.text-block-two-columns2 .col .text-container {
  width: 645px;
}
@media only screen and (max-width: 1359px) {
  .text-block-two-columns2 .col .text-container {
    width: 465px;
  }
}
@media only screen and (max-width: 991px) {
  .text-block-two-columns2 .col .text-container {
    width: 345px;
  }
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .col .text-container {
    width: 510px;
  }
}
.text-block-two-columns2 .col:nth-child(1).text-col {
  justify-content: flex-end;
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .col:nth-child(1).text-col {
    justify-content: center;
  }
}
.text-block-two-columns2 .col:nth-child(1) .text-container {
  padding-left: 15px;
  padding-right: 120px;
}
@media only screen and (max-width: 1359px) {
  .text-block-two-columns2 .col:nth-child(1) .text-container {
    padding-right: 80px;
  }
}
@media only screen and (max-width: 991px) {
  .text-block-two-columns2 .col:nth-child(1) .text-container {
    padding-right: 15px;
  }
}
.text-block-two-columns2 .col:nth-child(2).text-col {
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .text-block-two-columns2 .col:nth-child(2).text-col {
    justify-content: center;
  }
}
.text-block-two-columns2 .col:nth-child(2) .text-container {
  padding-right: 15px;
  padding-left: 120px;
}
@media only screen and (max-width: 1359px) {
  .text-block-two-columns2 .col:nth-child(2) .text-container {
    padding-left: 80px;
  }
}
@media only screen and (max-width: 991px) {
  .text-block-two-columns2 .col:nth-child(2) .text-container {
    padding-left: 15px;
  }
}

.news-inner .img-container, .text-block-float .img-container {
  margin-bottom: 30px;
}
@media only screen and (max-width: 1359px) {
  .news-inner .img-container, .text-block-float .img-container {
    max-width: 40%;
  }
}
@media only screen and (max-width: 767px) {
  .news-inner .img-container, .text-block-float .img-container {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 575px) {
  .news-inner .img-container, .text-block-float .img-container {
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: inherit !important;
    display: block;
    text-align: center;
  }
}
.news-inner .img-container.float-start, .text-block-float .img-container.float-start {
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .news-inner .img-container.float-start, .text-block-float .img-container.float-start {
    margin-right: 15px;
  }
}
.news-inner .img-container.float-end, .text-block-float .img-container.float-end {
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  .news-inner .img-container.float-end, .text-block-float .img-container.float-end {
    margin-left: 15px;
  }
}
.news-inner .img-container[href], .text-block-float .img-container[href] {
  z-index: 1;
}
.news-inner .img-container[href] img, .text-block-float .img-container[href] img {
  transition: box-shadow 0.1s ease-in-out;
}
.news-inner .img-container[href]:hover img, .text-block-float .img-container[href]:hover img {
  box-shadow: var(--shadow-primary);
}

.news-inner .text {
  margin-bottom: 1rem;
}

.news-inner__date {
  display: block;
  font-size: 12px;
  margin-bottom: 1rem;
}

.news-inner__author {
  font-size: 12px;
  margin-bottom: 1rem;
}

.slider-index {
  margin-top: -217px;
  padding-top: 217px;
  padding-bottom: 170px;
  margin-bottom: -170px !important;
}
@media only screen and (max-width: 1359px) {
  .slider-index {
    margin-top: -207px;
    padding-top: 207px;
    margin-bottom: -100px !important;
    padding-bottom: 100px;
  }
}
@media only screen and (max-width: 991px) {
  .slider-index {
    margin-top: -280px;
    padding-top: 280px;
    margin-bottom: -70px !important;
    padding-bottom: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .slider-index {
    margin-bottom: -50px !important;
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 35px;
  }
}
.slider-index .swiper {
  overflow: visible;
  overflow-x: clip;
}
.slider-index .swiper-slide {
  box-sizing: border-box;
}
.slider-index .swiper-slide-wrap {
  aspect-ratio: 1920/580;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media only screen and (max-width: 991px) {
  .slider-index .swiper-slide-wrap {
    padding-bottom: 55px;
  }
}
@media only screen and (max-width: 575px) {
  .slider-index .swiper-slide-wrap {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.slider-index .text-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  justify-self: flex-end;
  gap: 20px;
  color: #FFFFFF;
  width: 645px;
}
@media only screen and (max-width: 1359px) {
  .slider-index .text-container {
    width: 465px;
  }
}
@media only screen and (max-width: 991px) {
  .slider-index .text-container {
    width: 345px;
  }
}
@media only screen and (max-width: 767px) {
  .slider-index .text-container {
    width: 255px;
  }
}
@media only screen and (max-width: 575px) {
  .slider-index .text-container {
    width: 100%;
  }
}
.slider-index .title {
  font-family: "PTSerif-my", "PTSerif-my Fallback", sans-serif;
  font-size: clamp(1.125rem, 0.725rem + 2vw, 3.125rem);
  line-height: 100%;
  text-overflow: ellipsis;
  overflow-x: clip;
}
.slider-index .text {
  line-height: 130%;
  font-size: clamp(0.875rem, 0.7375rem + 0.6875vw, 1.5625rem);
  font-weight: 300;
  text-overflow: ellipsis;
  overflow-x: clip;
}
.slider-index .button {
  width: 200px;
  margin-top: 80px;
}
@media only screen and (max-width: 1359px) {
  .slider-index .button {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .slider-index .button {
    margin-top: 0;
  }
}
.slider-index .img-container {
  display: inline-block;
  aspect-ratio: 807/540;
  background-size: cover;
  position: relative;
}
.slider-index .img-container:before {
  content: "";
  width: 100%;
  aspect-ratio: 710/430;
  background-color: var(--color-primary-300);
  opacity: 0.5;
  position: absolute;
  top: calc(50% + 50px);
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  z-index: -1;
  filter: blur(75px);
}
.slider-index .nav-blocks {
  position: absolute;
  bottom: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
@media only screen and (max-width: 575px) {
  .slider-index .nav-blocks {
    left: 0;
    right: 0;
    margin: auto;
  }
}
.slider-index .swiper-button-prev-custom,
.slider-index .swiper-button-next-custom {
  z-index: 10;
}
.slider-index .swiper-button-prev-custom svg,
.slider-index .swiper-button-next-custom svg {
  width: 40px;
  height: 14px;
}
.slider-index .swiper-button-prev-custom svg use,
.slider-index .swiper-button-next-custom svg use {
  fill: #fff;
  transition: fill 0.1s ease-in-out;
}
.slider-index .swiper-button-prev-custom:hover svg use,
.slider-index .swiper-button-next-custom:hover svg use {
  fill: var(--color-secondary-600);
}
.slider-index .swiper-button-prev-custom:active svg use,
.slider-index .swiper-button-next-custom:active svg use {
  fill: #fff;
}
.slider-index .swiper-button-next-custom {
  transform: scale(-1, 1);
}
.slider-index .swiper-pagination-custom2 {
  gap: 10px;
  min-width: 65px;
  display: flex;
  justify-content: center;
  z-index: 10;
}
.slider-index .swiper-pagination-bullet-custom {
  width: 14px;
  height: 14px;
  border: 2px solid #FFFFFF;
  transition: background 0.1s ease-in-out, border 0.1s ease-in-out;
}
.slider-index .swiper-pagination-bullet-custom:hover,
.slider-index .swiper-pagination-bullet-active-custom {
  background-color: var(--color-primary-600);
  border: 2px solid var(--color-primary-600);
}
/*# sourceMappingURL=maps/critical.min.css.map */
