@charset "UTF-8";
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

main {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden], .hidden {
  display: none;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

button {
  border: none;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  text-decoration: none;
}

a {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}

html {
  -webkit-tap-highlight-color: transparent;
}

html {
  /* ===== Footer ===== */
  --footer-layout-h-gap: clamp(32px, calc(32px + (32 - 32) * ((100vw - 768px) / (1440 - 768))), 32px);
  --footer-layout-v-gap: clamp(32px, calc(32px + (32 - 32) * ((100vw - 768px) / (1440 - 768))), 32px);
  --footer-block-v-paddings: clamp(32px, calc(32px + (32 - 32) * ((100vw - 768px) / (1440 - 768))), 32px);
  --footer-block-h-paddings: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --footer-block-v-gap: clamp(24px, calc(24px + (32 - 24) * ((100vw - 768px) / (1440 - 768))), 32px);
  /* ===== Review card ===== */
  --review-cards-v-gap: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --review-cards-h-gap: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  /* ===== Cards ===== */
  --card-h-padding-lg: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --card-v-padding-lg: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --card-h-padding-md: 0px;
  --card-v-padding-md: 0px;
  --card-h-gap: clamp(24px, calc(24px + (18 - 24) * ((100vw - 768px) / (1440 - 768))), 18px);
  --card-heading-padding-lg: clamp(16px, calc(16px + (20 - 16) * ((100vw - 768px) / (1440 - 768))), 20px);
  --card-heading-flower-padding-md: clamp(8px, calc(8px + (20 - 8) * ((100vw - 768px) / (1440 - 768))), 20px);
  --card-caption-padding: 8px;
  --card-caption-date-padding: 16px;
  --card-label-padding: 16px;
  --card-action-padding: clamp(24px, calc(24px + (32 - 24) * ((100vw - 768px) / (1440 - 768))), 32px);
  /* ===== Hero-banner ===== */
  --hero-card-margine-h-lg: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --hero-card-margine-v-lg: clamp(20px, calc(20px + (32 - 20) * ((100vw - 768px) / (1440 - 768))), 32px);
  --hero-card-gap: clamp(12px, calc(12px + (24 - 12) * ((100vw - 768px) / (1440 - 768))), 24px);
  --hero-button-hight: clamp(64px, calc(64px + (88 - 64) * ((100vw - 768px) / (1440 - 768))), 88px);
  --hero-card-margine-h-md: 16px;
  --hero-card-margine-v-md: 16px;
  /* ===== Burger menu ===== */
  --burger-menu-block-h-padding: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --burger-menu-block-v-padding: clamp(24px, calc(24px + (48 - 24) * ((100vw - 768px) / (1440 - 768))), 48px);
  --burger-menu-block-gap: clamp(16px, calc(16px + (18 - 16) * ((100vw - 768px) / (1440 - 768))), 18px);
  /* ===== Block-list ===== */
  --blocks-list-v-gap: clamp(32px, calc(32px + (72 - 32) * ((100vw - 768px) / (1440 - 768))), 72px);
  --blocks-list-items-v-gap: clamp(12px, calc(12px + (0 - 12) * ((100vw - 768px) / (1440 - 768))), 0px);
  --blocks-list-h-gap: 32px;
  /* ===== Grid ===== */
  --g-viewport: clamp(412px, calc(412px + (1920 - 412) * ((100vw - 768px) / (1440 - 768))), 1920px);
  --g-grid-margine-lg: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --g-grid-margine-md: clamp(8px, calc(8px + (18 - 8) * ((100vw - 768px) / (1440 - 768))), 18px);
  --g-block-margin: clamp(80px, calc(80px + (148 - 80) * ((100vw - 768px) / (1440 - 768))), 148px);
  /* ===== Cascade ===== */
  --cascade-margine-page-lg: clamp(36px, calc(36px + (56 - 36) * ((100vw - 768px) / (1440 - 768))), 56px);
  --cascade-margine-page-md: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1440 - 768))), 24px);
  --cascade-margine-block-lg: clamp(36px, calc(36px + (42 - 36) * ((100vw - 768px) / (1440 - 768))), 42px);
  --cascade-margine-block-md: clamp(20px, calc(20px + (24 - 20) * ((100vw - 768px) / (1440 - 768))), 24px);
  --cascade-margine-modal-lg: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --cascade-margine-modal-md: clamp(8px, calc(8px + (16 - 8) * ((100vw - 768px) / (1440 - 768))), 16px);
  --cascade-list-v-padding: 8px;
  --cascade-accordeon-h-padding: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --cascade-accordeon-v-top-padding: 16px;
  --cascade-accordeon-v-bottom-padding: clamp(16px, calc(16px + (24 - 16) * ((100vw - 768px) / (1440 - 768))), 24px);
  --cascade-accordeon-head-padding: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1440 - 768))), 24px);
  /* ===== Components ===== */
  --button-height: clamp(44px, calc(44px + (48 - 44) * ((100vw - 768px) / (1440 - 768))), 48px);
  --button-icon-size: clamp(20px, calc(20px + (24 - 20) * ((100vw - 768px) / (1440 - 768))), 24px);
  --button-icon-size-2: clamp(24px, calc(24px + (32 - 24) * ((100vw - 768px) / (1440 - 768))), 32px);
  --button-icon-size-3: clamp(36px, calc(36px + (40 - 36) * ((100vw - 768px) / (1440 - 768))), 40px);
  --button-text-margine: clamp(6px, calc(6px + (8 - 6) * ((100vw - 768px) / (1440 - 768))), 8px);
  --button-h-padding: clamp(12px, calc(12px + (16 - 12) * ((100vw - 768px) / (1440 - 768))), 16px);
  --breadcrumbs-height: clamp(32px, calc(32px + (36 - 32) * ((100vw - 768px) / (1440 - 768))), 36px);
  --breadcrumbs-icon-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 768px) / (1440 - 768))), 24px);
  /* ===== Tariff ===== */
  --tariff-tabs-gap: clamp(8px, calc(8px + (32 - 8) * ((100vw - 768px) / (1440 - 768))), 32px);
  --tariff-block-gap: clamp(32px, calc(32px + (56 - 32) * ((100vw - 768px) / (1440 - 768))), 56px);
  --tariff-block-h-padding-lg: clamp(0px, calc(0px + (166 - 0) * ((100vw - 768px) / (1440 - 768))), 166px);
  --tariff-block-h-padding-md: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
  --tariff-block-v-padding: clamp(16px, calc(16px + (32 - 16) * ((100vw - 768px) / (1440 - 768))), 32px);
}

html {
  --fs-display-2: clamp(32px, calc(32px + (64 - 32) * ((100vw - 999px) / (1440 - 999))), 64px);
  --fs-display-1: clamp(32px, calc(32px + (52 - 32) * ((100vw - 999px) / (1440 - 999))), 52px);
  --fs-heading-3: clamp(28px, calc(28px + (48 - 28) * ((100vw - 999px) / (1440 - 999))), 48px);
  --fs-heading-2: clamp(28px, calc(28px + (40 - 28) * ((100vw - 999px) / (1440 - 999))), 40px);
  --fs-heading-1: clamp(24px, calc(24px + (32 - 24) * ((100vw - 768px) / (1440 - 768))), 32px);
  --fs-subhead-3: clamp(28px, calc(28px + (40 - 28) * ((100vw - 768px) / (1440 - 768))), 40px);
  --fs-subhead-2: clamp(24px, calc(24px + (24 - 24) * ((100vw - 768px) / (1440 - 768))), 24px);
  --fs-subhead-2-2: clamp(20px, calc(20px + (24 - 20) * ((100vw - 768px) / (1440 - 768))), 24px);
  --fs-subhead-1: clamp(20px, calc(20px + (22 - 20) * ((100vw - 768px) / (1440 - 768))), 22px);
  --fs-body-3: clamp(16px, calc(16px + (20 - 16) * ((100vw - 768px) / (1440 - 768))), 20px);
  --fs-body-2: clamp(16px, calc(16px + (18 - 16) * ((100vw - 999px) / (1440 - 999))), 18px);
  --fs-body-1: clamp(14px, calc(14px + (16 - 14) * ((100vw - 768px) / (1440 - 768))), 16px);
  --fs-caption-2-2: clamp(14px, calc(14px + (14 - 14) * ((100vw - 768px) / (1440 - 768))), 14px);
  --fs-caption-2: clamp(12px, calc(12px + (14 - 12) * ((100vw - 768px) / (1440 - 768))), 14px);
  --fs-caption-1: clamp(10px, calc(10px + (12 - 10) * ((100vw - 768px) / (1440 - 768))), 12px);
  --lh-display-2: clamp(44px, 5.463vw + -0.303px, 77px);
  --lh-display-1: clamp(44px, 4.167vw + 11.998px, 64px);
  --lh-heading-3: clamp(34px, 5.0vw + -4.4px, 58px);
  --lh-heading-2: clamp(34px, 2.917vw + 11.598px, 48px);
  --lh-heading-1: clamp(29px, 2.083vw + 12.998px, 39px);
  --lh-subhead-3: clamp(34px, 2.917vw + 11.598px, 48px);
  --lh-subhead-2: 29px;
  --lh-subhead-1: clamp(24px, 0.625vw + 19.198px, 27px);
  --lh-body-3: clamp(24px, 3.333vw + -1.598px, 40px);
  --lh-body-3-short: clamp(20px, 1.875vw + 5.598px, 29px);
  --lh-body-2: clamp(24px, 0.833vw + 17.598px, 28px);
  --lh-body-1: 24px;
  --lh-body-1-short: clamp(18px, 0.417vw + 14.798px, 20px);
  --lh-caption-2: clamp(15px, 1.25vw + 5.398px, 21px);
  --lh-caption-2-short: clamp(15px, 0.417vw + 11.798px, 17px);
  --lh-caption-1: clamp(12px, 0.625vw + 7.198px, 15px);
  --button-icon-size: clamp(20px, calc(20px + (24 - 20) * ((100vw - 768px) / (1440 - 768))), 24px);
  --button-icon-size-2: clamp(24px, calc(24px + (32 - 24) * ((100vw - 768px) / (1440 - 768))), 32px);
  --button-icon-size-3: clamp(36px, calc(36px + (40 - 36) * ((100vw - 768px) / (1440 - 768))), 40px);
}

@font-face {
  font-family: "TT Tricks";
  src: url("/local/templates/main/assets/fonts/TT Tricks/TTTricks-Light.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
}
@font-face {
  font-family: "TT Tricks";
  src: url("/local/templates/main/assets/fonts/TT Tricks/TTTricks-Regular.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Suisse";
  src: url("/local/templates/main/assets/fonts/suisse/SuisseIntl-Light.otf") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
}
@font-face {
  font-family: "Suisse";
  src: url("/local/templates/main/assets/fonts/suisse/SuisseIntl-Regular.otf") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Suisse";
  src: url("/local/templates/main/assets/fonts/suisse/SuisseIntl-Medium.otf") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 500;
}
@font-face {
  font-family: "Suisse";
  src: url("/local/templates/main/assets/fonts/suisse/SuisseIntl-SemiBold") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 600;
}
html {
  font-size: var(--fs-body-2);
  line-height: var(--lh-body-2);
  font-family: "Suisse", sans-serif;
  font-weight: 400;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  scroll-behavior: smooth;
}

body {
  color: var(--text-neutral-primary);
  position: relative;
  background: var(--bg-page);
}

main {
  background: var(--bg-page);
  position: relative;
  z-index: 1;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 300;
}

.f-h1 {
  font-size: var(--display-2);
}

.f-h2 {
  font-size: var(--heading-2);
}

.f-h3 {
  font-size: var(--heading-3);
}

.f-h4 {
  font-size: var(--heading-4);
}

.f-h5 {
  font-size: var(--heading-5);
}

@media (max-width: 768px) {
  .-desk {
    display: none !important;
  }
}

.-mob {
  display: initial;
}
@media (min-width: 769px) {
  .-mob {
    display: none !important;
  }
}

.hidden {
  display: none !important;
}

@font-face {
  font-family: "icomoon";
  src: url("/local/templates/main/assets/fonts/icomoon/fonts/icomoon.eot");
  src: url("/local/templates/main/assets/fonts/icomoon/fonts/icomoon.eot") format("embedded-opentype"), url("/local/templates/main/assets/fonts/icomoon/fonts/icomoon.ttf") format("truetype"), url("/local/templates/main/assets/fonts/icomoon/fonts/icomoon.woff") format("woff"), url("/local/templates/main/assets/fonts/icomoon/fonts/icomoon.svg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=icon-], [class*=" icon-"] {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-ic-alert:before {
  content: "\e900";
}

.icon-ic-calendar:before {
  content: "\e901";
}

.icon-ic-chevron-down:before {
  content: "\e902";
}

.icon-ic-chevron-left:before {
  content: "\e903";
}

.icon-ic-chevron-right:before {
  content: "\e904";
}

.icon-ic-chevron-up:before {
  content: "\e905";
}

.icon-ic-close:before {
  content: "\e906";
}

.icon-ic-close-menu:before {
  content: "\e907";
}

.icon-ic-copy:before {
  content: "\e908";
}

.icon-ic-done:before {
  content: "\e909";
}

.icon-ic-email:before {
  content: "\e90a";
}

.icon-ic-eye:before {
  content: "\e90b";
}

.icon-ic-google:before {
  content: "\e90c";
}

.icon-ic-link:before {
  content: "\e90d";
}

.icon-ic-location:before {
  content: "\e90e";
}

.icon-ic-menu:before {
  content: "\e90f";
}

.icon-ic-minus:before {
  content: "\e910";
}

.icon-ic-notification:before {
  content: "\e911";
}

.icon-ic-phone:before {
  content: "\e912";
}

.icon-ic-play:before {
  content: "\e913";
}

.icon-ic-plus:before {
  content: "\e914";
}

.icon-ic-reply:before {
  content: "\e915";
}

.icon-ic-search:before {
  content: "\e916";
}

.icon-ic-share:before {
  content: "\e917";
}

.icon-ic-socials-max:before {
  content: "\e918";
}

.icon-ic-socials-rutube:before {
  content: "\e91a";
}

.icon-ic-socials-telegram:before {
  content: "\e91b";
}

.icon-ic-socials-vk:before {
  content: "\e91c";
}

.icon-ic-time:before {
  content: "\e91d";
}

.icon-ic-uniq-arrow-left:before {
  content: "\e91e";
}

.icon-ic-uniq-arrow-right:before {
  content: "\e91f";
}

.icon-ic-weather-cloud:before {
  content: "\e920";
}

.icon-ic-weather-moon:before {
  content: "\e921";
}

.icon-ic-weather-rain:before {
  content: "\e922";
}

.icon-ic-weather-snow:before {
  content: "\e923";
}

.icon-ic-weather-storm:before {
  content: "\e924";
}

.icon-ic-weather-sun:before {
  content: "\e925";
}

.icon-ic-weather-wind:before {
  content: "\e926";
}

.icon-dot:before {
  content: "\e949";
}

html {
  --container: 16px;
  --headerHeight: 64px;
  --header-side-width: 64px;
  --g-container-vertical: clamp(60px, calc(60px + (72 - 60) * ((100vw - 768px) / (1440 - 768))), 72px);
  --border-corner-s: 0;
  --border-corner: 0;
  --border-corner-button: 0;
  --g-16: 16px;
  --g-12: 12px;
  --g-8: 8px;
  --g-outline: clamp(4px, calc(4px + (8 - 4) * ((100vw - 768px) / (1440 - 768))), 8px);
  --g-xxxs: clamp(8px, calc(8px + (20 - 8) * ((100vw - 768px) / (1440 - 768))), 20px);
  --g-xxs: clamp(16px, calc(16px + (24 - 16) * ((100vw - 992px) / (1440 - 992))), 24px);
  --g-s: clamp(16px, calc(16px + (32 - 16) * ((100vw - 992px) / (1440 - 992))), 32px);
  --g-m: clamp(32px, calc(32px + (48 - 32) * ((100vw - 992px) / (1440 - 992))), 48px);
  --g-l: clamp(16px, calc(16px + (58 - 16) * ((100vw - 992px) / (1440 - 992))), 58px);
  --g-xl: clamp(32px, calc(32px + (72 - 32) * ((100vw - 992px) / (1440 - 992))), 72px);
  --g-xxl: clamp(32px, calc(32px + (112 - 32) * ((100vw - 992px) / (1440 - 992))), 112px);
  --transition: 0.18s ease-out;
}
@media (min-width: 769px) {
  html {
    --container: clamp(16px, calc(16px + (32 - 16) * ((100vw - 1240px) / (1440 - 1240))), 32px);
    --headerHeight: 88px;
  }
}
@media (min-width: 1241px) {
  html {
    --header-side-width: 88px;
  }
}

html {
  /* Text */
  --text-neutral-primary: #482F0C;
  --text-neutral-secondary: rgba(72, 47, 12, 0.8);
  --text-neutral-tertiary: rgba(72, 47, 12, 0.6);
  --text-neutral-quatemary: rgba(72, 47, 12, 0.3);
  --text-fixed-light-primary: #FFFFFF;
  --text-softlight-primary: rgba(255, 255, 255, 0.6);
  --text-accent-primary: #E54A4A;
  --text-accent-secondary: #E54A4A;
  --text-neutral-black: #060606;
  /* Button Dark Theme - Primary filled */
  --button-dark-primary-text-rest: #482F0C;
  --button-dark-primary-text-hover: rgba(72, 47, 12, 0.5);
  --button-dark-primary-text-disabled: rgba(255, 255, 255, 0.3);
  --button-dark-primary-bg-rest: #FFFFFF;
  --button-dark-primary-bg-hover: #FFFFFF;
  --button-dark-primary-bg-disabled: rgba(81, 55, 31, 0.15);
  /* Button Dark Theme - Secondary filled */
  --button-dark-secondary-text-rest: #FFFFFF;
  --button-dark-secondary-text-hover: #FFFFFF;
  --button-dark-secondary-text-disabled: rgba(255, 255, 255, 0.3);
  --button-dark-secondary-bg-rest: rgba(0, 0, 0, 0.3);
  --button-dark-secondary-bg-hover: rgba(255, 255, 255, 0.3);
  --button-dark-secondary-bg-disabled: rgba(81, 55, 31, 0.15);
  /* Button Dark Theme - Outlined */
  --button-dark-outlined-text-rest: #FFFFFF;
  --button-dark-outlined-text-hover: #FFFFFF;
  --button-dark-outlined-text-disabled: rgba(255, 255, 255, 0.4);
  --button-dark-outlined-bg-rest: #FFFFFF;
  --button-dark-outlined-bg-hover: rgba(255, 255, 255, 0.1);
  --button-dark-outlined-bg-disabled: rgba(255, 255, 255, 0.4);
  /* Button Dark Theme - Flat compact */
  --button-dark-flat-text-rest: #FFFFFF;
  --button-dark-flat-text-hover: #FFFFFF;
  --button-dark-flat-text-disabled: rgba(255, 255, 255, 0.3);
  /* Button Dark Theme - Brand Primary */
  --button-dark-brand-primary-text-rest: #FFFFFF;
  --button-dark-brand-primary-text-hover: rgba(255, 255, 255, 0.7);
  --button-dark-brand-primary-text-disabled: rgba(255, 255, 255, 0.3);
  --button-dark-brand-primary-bg-rest: #E54A4A;
  --button-dark-brand-primary-bg-hover: #E54A4A;
  --button-dark-brand-primary-bg-disabled: rgba(81, 55, 31, 0.15);
  /* Button Dark Theme - Brand Secondary */
  --button-dark-brand-secondary-text-rest: #E54A4A;
  --button-dark-brand-secondary-text-hover: #E54A4A;
  --button-dark-brand-secondary-text-disabled: rgba(255, 255, 255, 0.3);
  --button-dark-brand-secondary-bg-rest: rgba(255, 255, 255, 0.5);
  --button-dark-brand-secondary-bg-hover: rgba(255, 255, 255, 0.8);
  --button-dark-brand-secondary-bg-disabled: rgba(81, 55, 31, 0.15);
  /* Button Dark Theme - Brand Outlined */
  --button-dark-brand-outlined-text-rest: #FFFFFF;
  --button-dark-brand-outlined-text-hover: #FFFFFF;
  --button-dark-brand-outlined-text-disabled: rgba(255, 255, 255, 0.4);
  --button-dark-brand-outlined-bg-rest: #FFFFFF;
  --button-dark-brand-outlined-bg-hover: rgba(255, 255, 255, 0.1);
  --button-dark-brand-outlined-bg-disabled: rgba(255, 255, 255, 0.4);
  /* Button Dark Theme - Brand Flat compact */
  --button-dark-brand-flat-text-rest: #FFFFFF;
  --button-dark-brand-flat-text-hover: #FFFFFF;
  --button-dark-brand-flat-text-disabled: rgba(255, 255, 255, 0.3);
  /* Button Light Theme - Primary filled */
  --button-light-primary-text-rest: #FFFFFF;
  --button-light-primary-text-hover: #FFFFFF;
  --button-light-primary-text-disabled: #CBC3BC;
  --button-light-primary-bg-rest: #51371F;
  --button-light-primary-bg-hover: #745F4C;
  --button-light-primary-bg-disabled: #EEEBE9;
  /* Button Light Theme - Secondary filled */
  --button-light-secondary-text-rest: #482F0C;
  --button-light-secondary-text-hover: #482F0C;
  --button-light-secondary-text-disabled: #CBC3BC;
  --button-light-secondary-bg-rest: #DCD7D2;
  --button-light-secondary-bg-hover: #C6C1BD;
  --button-light-secondary-bg-disabled: #EEEBE9;
  /* Button Light Theme - Outlined */
  --button-light-outlined-text-rest: #482F0C;
  --button-light-outlined-text-hover: #745F4C;
  --button-light-outlined-text-disabled: #CBC3BC;
  --button-light-outlined-bg-rest: #A59379;
  --button-light-outlined-bg-hover: rgba(255, 255, 255, 0.2);
  --button-light-outlined-bg-disabled: #CBC3BC;
  /* Button Light Theme - Flat compact */
  --button-light-flat-text-rest: #482F0C;
  --button-light-flat-text-hover: #745F4C;
  --button-light-flat-text-disabled: #CBC3BC;
  /* Button Light Theme - Brand Primary */
  --button-light-brand-primary-text-rest: #FFFFFF;
  --button-light-brand-primary-text-hover: rgba(255,255,255,0.7);
  --button-light-brand-primary-text-disabled: #CBC3BC;
  --button-light-brand-primary-bg-rest: #E54A4A;
  --button-light-brand-primary-bg-hover: #E54A4A;
  --button-light-brand-primary-bg-disabled: #EEEBE9;
  /* Button Light Theme - Brand Secondary */
  --button-light-brand-secondary-text-rest: #E54A4A;
  --button-light-brand-secondary-text-hover: #E54A4A;
  --button-light-brand-secondary-text-disabled: #F2A4A4;
  --button-light-brand-secondary-bg-rest: #FADBDB;
  --button-light-brand-secondary-bg-hover: #F5B7B7;
  --button-light-brand-secondary-bg-disabled: #FCEDED;
  /* Button Light Theme - Brand Outlined */
  --button-light-brand-outlined-text-rest: #E54A4A;
  --button-light-brand-outlined-text-hover: #E54A4A;
  --button-light-brand-outlined-text-disabled: rgba(229, 74, 74, 0.6);
  --button-light-brand-outlined-bg-rest: #FFFFFF;
  --button-light-brand-outlined-bg-hover: rgba(229, 74, 74, 0.1);
  --button-light-brand-outlined-bg-disabled: rgba(229, 74, 74, 0.3);
  /* Button Light Theme - Brand Flat compact */
  --button-light-brand-flat-text-rest: #E54A4A;
  --button-light-brand-flat-text-hover: #F2A4A4;
  --button-light-brand-flat-text-disabled: #FADBDB;
  /* Bg */
  --bg-page: #FFFFFF;
  --bg-illustration: #B3A48D;
  --bg-illustration-red: #E54A4A;
  --bg-illustration-light: #F3ECE4;
  --bg-card: #DFD7CB;
  --bg-card-loading: rgba(69, 59, 21, 0.1);
  /* Line */
  --line-primary: #A59379;
  --line-primary-dark: #482F0C;
  --line-illustration: #E54A4A;
  --line-secondary: rgba(165, 147, 121, 0.8);
  --line-tertiary: rgba(165, 147, 121, 0.6);
  --line-quatemary: rgba(165, 147, 121, 0.3);
  --line-secondary-filled: #A59379;
  --line-tertiary-filled: #B3A48D;
  --line-quatemary-filled: #DFD7CB;
  --line-light-primary: #FFFFFF;
  --line-light-secondary: rgba(255, 255, 255, 0.6);
  --line-light-secondary-filled: #FFFFFF;
  /* Icons */
  --icon-primary: #482F0C;
  --icon-secondary: rgba(72, 47, 12, 0.8);
  --icon-tertiary: rgba(72, 47, 12, 0.6);
  --icon-quatemary: rgba(72, 47, 12, 0.3);
  --icon-light-primary: #FFFFFF;
  --icon-light-secondary: rgba(255, 255, 255, 0.6);
  /* Blocks - Footer */
  --footer-text-primary: #453B15;
  --footer-illustration: #453B15;
  --footer-text-hover: #453B15;
  --footer-button-rest: #482F0C;
  /* Blocks - Hero */
  --hero-button-uniq-rest: #DFD7CB;
  --hero-button-uniq-hover: #E54A4A;
}

.page-fest {
  /* Text */
  --text-accent-primary: #456234;
  --text-fixed-light-primary: #FFF8F8;
  --text-softlight-primary: #FFF8F8;
  /* Button Dark Theme - Brand Primary */
  --button-dark-brand-primary-bg-rest: #456234;
  --button-dark-brand-primary-bg-hover: #456234;
  --button-dark-brand-primary-bg-disabled: rgba(69, 98, 52, 0.15);
  /* Button Dark Theme - Brand Secondary */
  --button-dark-brand-secondary-text-rest: #F299B1;
  --button-dark-brand-secondary-text-hover: #F299B1;
  --button-dark-brand-secondary-bg-rest: rgba(59, 59, 59, 0.5);
  --button-dark-brand-secondary-bg-hover: rgba(59, 59, 59, 0.8);
  --button-dark-brand-secondary-bg-disabled: rgba(242, 153, 177, 0.15);
  /* Button Dark Theme - Brand Outlined */
  --button-dark-brand-outlined-text-rest: #F299B1;
  --button-dark-brand-outlined-text-hover: #F299B1;
  --button-dark-brand-outlined-text-disabled: rgba(242, 153, 177, 0.4);
  --button-dark-brand-outlined-bg-rest: #F299B1;
  --button-dark-brand-outlined-bg-hover: rgba(242, 153, 177, 0.1);
  --button-dark-brand-outlined-bg-disabled: rgba(242, 153, 177, 0.4);
  /* Button Dark Theme - Brand Flat compact */
  --button-dark-brand-flat-text-rest: #F299B1;
  --button-dark-brand-flat-text-hover: #CA6D86;
  --button-dark-brand-flat-text-disabled: rgba(242, 153, 177, 0.6);
  /* Button Light Theme - Brand Primary */
  --button-light-brand-primary-bg-rest: #456234;
  --button-light-brand-primary-bg-hover: #456234;
  --button-light-brand-primary-bg-disabled: #EEEBE9;
  /* Button Light Theme - Brand Secondary */
  --button-light-brand-secondary-text-rest: #456234;
  --button-light-brand-secondary-text-hover: #456234;
  --button-light-brand-secondary-text-disabled: rgba(69, 98, 52, 0.3);
  --button-light-brand-secondary-bg-rest: #DCE5D7;
  --button-light-brand-secondary-bg-hover: #C7D0C2;
  --button-light-brand-secondary-bg-disabled: rgba(199, 208, 194, 0.4);
  /* Button Light Theme - Brand Outlined */
  --button-light-brand-outlined-text-rest: #F299B1;
  --button-light-brand-outlined-text-hover: #F299B1;
  --button-light-brand-outlined-text-disabled: rgba(242, 153, 177, 0.6);
  --button-light-brand-outlined-bg-rest: #F299B1;
  --button-light-brand-outlined-bg-hover: rgba(242, 153, 177, 0.1);
  --button-light-brand-outlined-bg-disabled: rgba(242, 153, 177, 0.3);
  /* Button Light Theme - Brand Flat compact */
  --button-light-brand-flat-text-rest: #F299B1;
  --button-light-brand-flat-text-hover: #F299B1;
  --button-light-brand-flat-text-disabled: rgba(242, 153, 177, 0.4);
  /* Bg */
  --bg-page: #FFF8F8;
  --bg-illustration: #456234;
  --bg-illustration-light: #FFF8F8;
  --bg-card: #FFF8F8;
  --bg-card-loading: #FFF8F8;
  /* Line */
  --line-light-secondary-filled: rgba(255, 255, 255, 0.6);
  /* Blocks - Footer */
  --footer-illustration: #E54A4A;
  /* Blocks - Hero */
  --hero-button-uniq-rest: #FFFFFF;
  --hero-button-uniq-hover: #FFFFFF;
}

body {
  min-height: 100vh;
  scrollbar-gutter: stable;
}

html {
  scrollbar-gutter: stable;
}

a {
  cursor: pointer;
  transition: var(--transition);
}

/* Chrome, Edge and Safari */
[data-poster] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
[data-poster].not_visible {
  opacity: 0;
}

img {
  width: 100%;
  height: 100%;
  display: block;
}

[data-fancybox] {
  cursor: pointer;
}

@media (max-width: 768px) {
  .-desk {
    display: none;
  }
}

@media (min-width: 769px) {
  .-mob {
    display: none;
  }
}

.ui_grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 40px;
  gap: 28px;
}

.ui_grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin: 40px;
  gap: 28px;
}

.ui_grid-5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin: 40px;
  gap: 28px;
}

.ui_grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin: 40px;
  gap: 28px;
}

body {
  position: relative;
}

.page-accommodation .block_banner.block_banner-hero {
  margin-bottom: 0;
}

.page-fest .block:not(.content_accommodation) .block--wrapper > .block--head
{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: var(--g-xxs);
    .block--head_subtitle{
        writing-mode: vertical-lr;
        text-orientation: upright;
        grid-column: 1;
        color: var(--text-fixed-light-primary);
        background: var(--button-dark-brand-primary-bg-rest);
        font-size: var(--fs-body-3);
        line-height: 1;
        padding: clamp(6px, 6px + 4 * (100vw - 575px) / 665, 10px);
        height: max-content;
        letter-spacing: 0.2em;
    }
}
.page-fest .block_list .block--head_title, .page-fest .block_list .block--head_caption,
.page-fest .content_gallery .block--head_title,
.page-fest .content_gallery .block--head_caption {
  grid-column: 2;
}
.page-fest .block_list .block--head .block--actions,
.page-fest .content_gallery .block--head .block--actions {
  grid-column: span 2;
}
.page-fest .image_text_first_in_fest {
  position: relative;
}
.page-fest .image-text-first-bck {
  position: absolute;
  z-index: -1;
  top: calc(var(--g-container-vertical) * -1);
  left: 0;
  right: 0;
  bottom: calc(var(--g-container-vertical) * -1 * 2);
  margin: 0;
  aspect-ratio: initial;
}
.page-fest .block--head_title {
  font-family: "Suisse", sans-serif;
}
.page-fest .block--head_title > * {
  font-weight: 400;
}
.page-fest .content_gallery .gallery .swiper-wrapper {
  align-items: center;
}
.page-fest .content_gallery .gallery .gallery--item:nth-child(odd) {
  aspect-ratio: 1/1;
}
.page-fest .content_gallery .gallery .gallery--item:nth-child(even) {
  aspect-ratio: 3/4;
}
.page-fest .image_text_first_in_fest .block--content {
  max-width: 590px;
  margin: 0 auto;
}
.page-fest .block_info_fest .block--wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 992px) {
  .page-fest .block_info_fest .block--wrapper {
    display: grid;
    grid-template-columns: 1fr minmax(400px, 1fr);
  }
}
.page-fest .block_info_fest .block--content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 769px) {
  .page-fest .block_info_fest .block--content {
    display: grid;
    grid-template-columns: 4fr 2fr;
  }
}
.page-fest .block_info_fest .block--content .block_info_fest_first-img {
  height: auto;
  aspect-ratio: 1/1;
  margin-bottom: var(--g-m);
}
@media (min-width: 769px) {
  .page-fest .block_info_fest .block--content .block_info_fest_first-img {
    aspect-ratio: 608/360;
  }
}
.page-fest .block_info_fest .block--content .block--head, .page-fest .block_info_fest .block--content p {
  margin-bottom: 16px;
}
@media (min-width: 769px) {
  .page-fest .block_info_fest .block--content .block--head, .page-fest .block_info_fest .block--content p {
    padding-right: var(--g-m);
  }
}
.page-fest .block_info_fest .block--content .block_info_fest_second-img {
  aspect-ratio: 1/1;
}
.page-fest .block_info_fest .block--content div:last-child {
  display: flex;
  align-items: end;
}
.page-fest .block_info_fest .block--content div:last-child img {
  height: auto;
}
.page-fest .block_info_fest .block--image img {
  aspect-ratio: 1/1;
  height: auto;
  position: sticky;
  top: var(--headerHeight);
}
.page-fest .block_info_fest img {
  object-fit: cover;
}

.is_cascade--accordion {
  display: flex;
  flex-direction: column;
}

.accordion {
  position: relative;
  padding: var(--cascade-accordeon-head-padding) 0;
  border-bottom: 1px solid var(--line-tertiary);
}
.accordion:first-child {
  border-top: 1px solid var(--line-tertiary);
}
.accordion.is_open .accordion--content {
  pointer-events: auto;
  grid-template-rows: 1fr;
  opacity: 1;
  padding-top: 16px;
}
.accordion.is_open span[class^=icon-]:before {
  content: "\e910";
}
.accordion--button {
  transition: var(--transition);
  cursor: pointer;
  display: flex;
  align-items: center;
  position: relative;
  gap: 24px;
}
.accordion--button .accordion--button_text {
  transition: var(--transition);
  font-size: var(--fs-subhead-1);
  margin-bottom: 0;
}
.accordion--button span[class^=icon-] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  flex-grow: 0;
  transition: var(--transition);
  aspect-ratio: 1/1;
  font-size: 1.2em;
}
.accordion--button:hover .accordion--button_text {
  color: var(--fs-body-2);
}
.accordion--content {
  opacity: 0;
  display: grid;
  grid-template-rows: 0fr;
  line-height: 1.5;
  pointer-events: none;
  overflow: hidden;
  transition: grid-template-rows 0.21s ease-out;
  color: var(--text-neutral-secondary);
}
.accordion--content .is_cascade {
  width: 100%;
  grid-row: 1/span 2;
  overflow: hidden;
    padding: 0 var(--g-s);
}
.accordion--content .is_cascade > *:first-child {
  margin-top: 0;
}

/* Buttons */
.button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  gap: 8px;
  flex-shrink: 0;
  cursor: pointer;
  z-index: 1;
  overflow: hidden;
  transition: var(--transition);
  padding: var(--button-padding);
  font-size: var(--button-fs);
  background: var(--button-bg-color, transparent);
  color: var(--button-color);
  --button-fs: var(--fs-body-1);
  line-height: var(--lh-body-1);
  --button-padding: 14px;
}
.button span {
  color: inherit;
}
.button span:not([class]) {
  white-space: nowrap;
  text-align: center;
}
.button span[class^=icon-],
.button span[class*=" icon-"],
.button svg[class^=icon],
.button svg {
  color: inherit;
  line-height: 1;
  font-size: var(--button-icon-size);
  display: flex;
  align-items: center;
  justify-content: center;
}
.button:has(span[class^=icon-]:only-child) {
  aspect-ratio: 1/1;
  padding: 0;
  justify-content: center;
}
.button[disabled], .button.is_disabled, .button.swiper-button-disabled {
  cursor: initial;
  pointer-events: none;
  opacity: 0.8;
}
.button[disabled] span, .button.is_disabled span, .button.swiper-button-disabled span {
  opacity: 0.7;
}

.button-filled-primary, .button-filled-secondary, .button-outlined, .button-flat {
  border-radius: var(--border-corner-button);
  position: relative;
  overflow: hidden;
  --button-padding: 12px 16px;
  text-transform: uppercase;
  justify-content: space-between;
}

.button-outlined, .button-filled-primary, .button-filled-secondary {
  border: 1px solid var(--button-border-color, transparent);
}

.button-flat {
  --button-padding: 0;
}

/* Button  colors  */
.button-neutral.button-filled-primary {
  --button-bg-color: var(--button-light-primary-bg-rest);
  --button-border-color: var(--button-light-primary-bg-rest);
  --button-color: var(--button-light-primary-text-rest);
}
.button-neutral.button-filled-primary:hover, .button-neutral.button-filled-primary:focus, .button-neutral.button-filled-primary:active {
  --button-bg-color: var(--button-light-primary-bg-hover);
  --button-border-color: var(--button-light-primary-bg-hover);
  --button-color: var(--button-light-primary-text-hover);
}
.button-neutral.button-filled-primary[disabled], .button-neutral.button-filled-primary.is_disabled, .button-neutral.button-filled-primary.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: var(--button-light-primary-bg-disabled);
  --button-color: var(--button-light-primary-text-disabled);
}
.button-neutral.button-filled-secondary {
  --button-bg-color: var(--button-light-secondary-bg-rest);
  --button-border-color: var(--button-light-secondary-bg-rest);
  --button-color: var(--button-light-secondary-text-rest);
}
.button-neutral.button-filled-secondary:hover, .button-neutral.button-filled-secondary:focus, .button-neutral.button-filled-secondary:active {
  --button-bg-color: var(--button-light-secondary-bg-hover);
  --button-border-color: var(--button-light-secondary-bg-hover);
  --button-color: var(--button-light-secondary-text-hover);
}
.button-neutral.button-filled-secondary[disabled], .button-neutral.button-filled-secondary.is_disabled, .button-neutral.button-filled-secondary.swiper-button-disabled {
  --button-bg-color: var(--button-light-secondary-bg-disabled);
  --button-border-color: var(--button-light-secondary-bg-disabled);
  --button-color: var(--button-light-secondary-text-disabled);
}
.button-neutral.button-flat {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-flat-text-rest);
}
.button-neutral.button-flat:hover, .button-neutral.button-flat:focus, .button-neutral.button-flat:active {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-flat-text-hover);
}
.button-neutral.button-flat[disabled], .button-neutral.button-flat.is_disabled, .button-neutral.button-flat.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-flat-text-disabled);
}
.button-neutral.button-outlined {
  --button-bg-color: transparent;
  --button-border-color: var(--button-light-outlined-bg-rest);
  --button-color: var(--button-light-outlined-text-rest);
}
.button-neutral.button-outlined:hover, .button-neutral.button-outlined:focus, .button-neutral.button-outlined:active {
  --button-bg-color: var(--button-light-outlined-bg-hover);
  --button-border-color: var(--button-light-outlined-bg-rest);
  --button-color: var(--button-light-outlined-text-hover);
}
.button-neutral.button-outlined[disabled], .button-neutral.button-outlined.is_disabled, .button-neutral.button-outlined.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: var(--button-light-outlined-bg-disabled);
  --button-color: var(--button-light-outlined-text-disabled);
}
.button-neutral.button-link {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-flat-text-rest);
}
.button-neutral.button-link:hover, .button-neutral.button-link:focus, .button-neutral.button-link:active {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-flat-text-hover);
}
.button-neutral.button-link[disabled], .button-neutral.button-link.is_disabled, .button-neutral.button-link.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-flat-text-disabled);
}

.button-brand.button-filled-primary {
  --button-bg-color: var(--button-light-brand-primary-bg-rest);
  --button-border-color: var(--button-light-brand-primary-bg-rest);
  --button-color: var(--button-light-brand-primary-text-rest);
}
.button-brand.button-filled-primary:hover, .button-brand.button-filled-primary:focus, .button-brand.button-filled-primary:active {
  --button-bg-color: var(--button-light-brand-primary-bg-hover);
  --button-border-color: var(--button-light-brand-primary-bg-hover);
  --button-color: var(--button-light-brand-primary-text-hover);
}
.button-brand.button-filled-primary[disabled], .button-brand.button-filled-primary.is_disabled, .button-brand.button-filled-primary.swiper-button-disabled {
  --button-bg-color: var(--button-light-brand-primary-bg-disabled);
  --button-border-color: var(--button-light-brand-primary-bg-disabled);
  --button-color: var(--button-light-brand-primary-text-disabled);
}
.button-brand.button-filled-secondary {
  --button-bg-color: var(--button-light-brand-secondary-bg-rest);
  --button-border-color: var(--button-light-brand-secondary-bg-rest);
  --button-color: var(--button-light-brand-secondary-text-rest);
}
.button-brand.button-filled-secondary:hover, .button-brand.button-filled-secondary:focus, .button-brand.button-filled-secondary:active {
  --button-bg-color: var(--button-light-brand-secondary-bg-hover);
  --button-border-color: var(--button-light-brand-secondary-bg-hover);
  --button-color: var(--button-light-brand-secondary-text-hover);
}
.button-brand.button-filled-secondary[disabled], .button-brand.button-filled-secondary.is_disabled, .button-brand.button-filled-secondary.swiper-button-disabled {
  --button-bg-color: var(--button-light-brand-secondary-bg-disabled);
  --button-border-color: var(--button-light-brand-secondary-bg-disabled);
  --button-color: var(--button-light-brand-secondary-text-disabled);
}
.button-brand.button-flat {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-brand-flat-text-rest);
}
.button-brand.button-flat:hover, .button-brand.button-flat:focus, .button-brand.button-flat:active {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-brand-flat-text-hover);
}
.button-brand.button-flat[disabled], .button-brand.button-flat.is_disabled, .button-brand.button-flat.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-brand-flat-text-disabled);
}
.button-brand.button-outlined {
  --button-bg-color: transparent;
  --button-border-color: var(--button-light-brand-outlined-bg-rest);
  --button-color: var(--button-light-brand-outlined-text-rest);
}
.button-brand.button-outlined:hover, .button-brand.button-outlined:focus, .button-brand.button-outlined:active {
  --button-bg-color: var(--button-light-brand-outlined-bg-hover);
  --button-border-color: var(--button-light-brand-outlined-bg-rest);
  --button-color: var(--button-light-brand-outlined-text-hover);
}
.button-brand.button-outlined[disabled], .button-brand.button-outlined.is_disabled, .button-brand.button-outlined.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: var(--button-light-brand-outlined-bg-disabled);
  --button-color: var(--button-light-brand-outlined-text-disabled);
}
.button-brand.button-link {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-brand-flat-text-rest);
}
.button-brand.button-link:hover, .button-brand.button-link:focus, .button-brand.button-link:active {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-brand-flat-text-hover);
}
.button-brand.button-link[disabled], .button-brand.button-link.is_disabled, .button-brand.button-link.swiper-button-disabled {
  --button-bg-color: transparent;
  --button-border-color: transparent;
  --button-color: var(--button-light-brand-flat-text-disabled);
}

.block_banner .button,
.content_gallery [data-fancybox-trigger],
.content_contacts .block--actions {
  --button-light-primary-text-rest: var(--button-dark-primary-text-rest);
  --button-light-primary-text-hover: var(--button-dark-primary-text-hover);
  --button-light-primary-text-disabled: var(--button-dark-primary-text-disabled);
  --button-light-primary-bg-rest: var(--button-dark-primary-bg-rest);
  --button-light-primary-bg-hover: var(--button-dark-primary-bg-hover);
  --button-light-primary-bg-disabled: var(--button-dark-primary-bg-disabled);
  --button-light-secondary-text-rest: var(--button-dark-secondary-text-rest);
  --button-light-secondary-text-hover: var(--button-dark-secondary-text-hover);
  --button-light-secondary-text-disabled: var(--button-dark-secondary-text-disabled);
  --button-light-secondary-bg-rest: var(--button-dark-secondary-bg-rest);
  --button-light-secondary-bg-hover: var(--button-dark-secondary-bg-hover);
  --button-light-secondary-bg-disabled: var(--button-dark-secondary-bg-disabled);
  --button-light-outlined-text-rest: var(--button-dark-outlined-text-rest);
  --button-light-outlined-text-hover: var(--button-dark-outlined-text-hover);
  --button-light-outlined-text-disabled: var(--button-dark-outlined-text-disabled);
  --button-light-outlined-bg-rest: var(--button-dark-outlined-bg-rest);
  --button-light-outlined-bg-hover: var(--button-dark-outlined-bg-hover);
  --button-light-outlined-bg-disabled: var(--button-dark-outlined-bg-disabled);
  --button-light-flat-text-rest: var(--button-dark-flat-text-rest);
  --button-light-flat-text-hover: var(--button-dark-flat-text-hover);
  --button-light-flat-text-disabled: var(--button-dark-flat-text-disabled);
  --button-light-brand-primary-text-rest: var(--button-dark-brand-primary-text-rest);
  --button-light-brand-primary-text-hover: var(--button-dark-brand-primary-text-hover);
  --button-light-brand-primary-text-disabled: var(--button-dark-brand-primary-text-disabled);
  --button-light-brand-primary-bg-rest: var(--button-dark-brand-primary-bg-rest);
  --button-light-brand-primary-bg-hover: var(--button-dark-brand-primary-bg-hover);
  --button-light-brand-primary-bg-disabled: var(--button-dark-brand-primary-bg-disabled);
  --button-light-brand-secondary-text-rest: var(--button-dark-brand-secondary-text-rest);
  --button-light-brand-secondary-text-hover: var(--button-dark-brand-secondary-text-hover);
  --button-light-brand-secondary-text-disabled: var(--button-dark-brand-secondary-text-disabled);
  --button-light-brand-secondary-bg-rest: var(--button-dark-brand-secondary-bg-rest);
  --button-light-brand-secondary-bg-hover: var(--button-dark-brand-secondary-bg-hover);
  --button-light-brand-secondary-bg-disabled: var(--button-dark-brand-secondary-bg-disabled);
  --button-light-brand-outlined-text-rest: var(--button-dark-brand-outlined-text-rest);
  --button-light-brand-outlined-text-hover: var(--button-dark-brand-outlined-text-hover);
  --button-light-brand-outlined-text-disabled: var(--button-dark-brand-outlined-text-disabled);
  --button-light-brand-outlined-bg-rest: var(--button-dark-brand-outlined-bg-rest);
  --button-light-brand-outlined-bg-hover: var(--button-dark-brand-outlined-bg-hover);
  --button-light-brand-outlined-bg-disabled: var(--button-dark-brand-outlined-bg-disabled);
  --button-light-brand-flat-text-rest: var(--button-dark-brand-flat-text-rest);
  --button-light-brand-flat-text-hover: var(--button-dark-brand-flat-text-hover);
  --button-light-brand-flat-text-disabled: var(--button-dark-brand-flat-text-disabled);
}

.card {
  flex-shrink: 0;
  flex-grow: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  height: 100%;
  transition: none;
  border-radius: var(--border-corner);
  overflow: hidden;
}
.card--content {
  display: flex;
  flex-direction: column;
  z-index: 2;
}
.card--title {
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  transition: var(--transition);
  text-transform: uppercase;
}
.card--text {
  line-height: 1.3;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.card--action {
  display: flex;
  align-items: center;
  gap: 8px;
  transition: var(--transition);
}
.card--action .button {
  height: var(--button-height);
}
.card:hover .button {
  --button-bg-color: var(--button-light-outlined-bg-hover);
  --button-border-color: var(--button-light-outlined-bg-rest);
  --button-color: var(--button-light-outlined-text-hover);
}
.card--image {
  display: flex;
  align-items: flex-start;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}
.card--image img, .card--image video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

[href],
[data-popup_cascade],
[data-openpopup] {
  cursor: pointer;
}

[data-popup_cascade] .card--action,
[data-openpopup] .card--action {
  opacity: 1;
}
[data-popup_cascade] .card--action .icon:after,
[data-openpopup] .card--action .icon:after {
  content: "\e949";
}

.content_cards .card--image,
.content_article .card--image,
.content_services .card--image,
.content_calendar.block_list .card--image {
  aspect-ratio: 440/541;
  overflow: hidden;
}
.content_cards .card--price,
.content_article .card--price,
.content_services .card--price,
.content_calendar.block_list .card--price {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: flex;
  align-items: flex-end;
}
.content_cards .card--price span,
.content_article .card--price span,
.content_services .card--price span,
.content_calendar.block_list .card--price span {
  color: #fff;
  background: #E54A4A;
  padding: clamp(8px, 8px + 4 * (100vw - 768px) / 672, 12px);
}
.content_cards .card--title,
.content_article .card--title,
.content_services .card--title,
.content_calendar.block_list .card--title {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
}
.content_cards .card--content,
.content_article .card--content,
.content_services .card--content,
.content_calendar.block_list .card--content {
  font-size: var(--fs-body-1);
  line-height: var(--fs-body-3);
}
.content_cards .card--content:has(.card--action),
.content_article .card--content:has(.card--action),
.content_services .card--content:has(.card--action),
.content_calendar.block_list .card--content:has(.card--action) {
  padding-right: calc(16px + var(--button-height));
}
.content_cards .card--content:has(.card--action) .card--action,
.content_article .card--content:has(.card--action) .card--action,
.content_services .card--content:has(.card--action) .card--action,
.content_calendar.block_list .card--content:has(.card--action) .card--action {
  position: absolute;
  bottom: 0;
  right: 0;
  left: auto;
}
.content_cards .card--captions,
.content_article .card--captions,
.content_services .card--captions,
.content_calendar.block_list .card--captions {
  display: flex;
  align-content: center;
  margin-top: var(--card-caption-date-padding);
  align-items: center;
}
.content_cards .card .labels,
.content_article .card .labels,
.content_services .card .labels,
.content_calendar.block_list .card .labels {
  margin-top: var(--card-label-padding);
}
.content_cards .card--title,
.content_article .card--title,
.content_services .card--title,
.content_calendar.block_list .card--title {
  margin-top: var(--card-heading-padding-lg);
}
.content_cards .card--text,
.content_article .card--text,
.content_services .card--text,
.content_calendar.block_list .card--text {
  color: var(--text-neutral-secondary);
  margin-top: var(--card-caption-padding);
}
.content_cards .card--image img,
.content_article .card--image img,
.content_services .card--image img,
.content_calendar.block_list .card--image img {
  transition: var(--transition);
}
@media (min-width: 769px) {
  .content_cards .card[href]:hover .card--image, .content_cards .card[data-popup_cascade]:hover .card--image, .content_cards .card[data-openpopup]:hover .card--image,
  .content_article .card[href]:hover .card--image,
  .content_article .card[data-popup_cascade]:hover .card--image,
  .content_article .card[data-openpopup]:hover .card--image,
  .content_services .card[href]:hover .card--image,
  .content_services .card[data-popup_cascade]:hover .card--image,
  .content_services .card[data-openpopup]:hover .card--image,
  .content_calendar.block_list .card[href]:hover .card--image,
  .content_calendar.block_list .card[data-popup_cascade]:hover .card--image,
  .content_calendar.block_list .card[data-openpopup]:hover .card--image {
    overflow: hidden;
  }
  .content_cards .card[href]:hover .card--image img, .content_cards .card[data-popup_cascade]:hover .card--image img, .content_cards .card[data-openpopup]:hover .card--image img,
  .content_article .card[href]:hover .card--image img,
  .content_article .card[data-popup_cascade]:hover .card--image img,
  .content_article .card[data-openpopup]:hover .card--image img,
  .content_services .card[href]:hover .card--image img,
  .content_services .card[data-popup_cascade]:hover .card--image img,
  .content_services .card[data-openpopup]:hover .card--image img,
  .content_calendar.block_list .card[href]:hover .card--image img,
  .content_calendar.block_list .card[data-popup_cascade]:hover .card--image img,
  .content_calendar.block_list .card[data-openpopup]:hover .card--image img {
    scale: 1.1;
  }
}

.content_calendar.block_list .card--title {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
}
.content_calendar.block_list .card--text {
  font-size: var(--fs-body-1);
  line-height: var(--fs-body-3);
}

.content_calendar.block_element .card {
  border: 1px solid var(--line-quatemary-filled);
  transition: var(--transition);
  aspect-ratio: 190/160;
}
@media (min-width: 769px) {
  .content_calendar.block_element .card {
    height: 400px;
    aspect-ratio: inherit;
  }
}
.content_calendar.block_element .card--content {
  position: absolute;
  justify-content: space-between;
  inset: 8px;
}
@media (min-width: 769px) {
  .content_calendar.block_element .card--content {
    inset: 20px;
  }
    .content_calendar.block_element .card--title {
        max-width: 80%;
    }
}
@media (min-width: 1024px) {
    max-width: 60%;
}
.content_calendar.block_element .card--title {
  font-size: clamp(12px, calc(12px + (24 - 12) * ((100vw - 575px) / (1440 - 575))), 24px);;
  line-height: 1.2;
    position: relative;
    overflow: inherit;

}
@media (max-width: 768px) {
    .content_calendar.block_element .card--title {
        text-shadow: 2px 2px 3px white;
    }
}

.content_calendar.block_element .card--text {
  text-transform: uppercase;
  order: -1;
  font-size: var(--fs-body-2);
  line-height: 1.2;
  color: var(--text-neutral-tertiary);
}
.content_calendar.block_element .card--image {
  height: 100%;
    justify-content: flex-end;
    align-items: flex-end;
    picture{
        display: flex;
        height: 100%;
    }
}

.content_calendar.block_element .card--image img {
  /*object-position: right bottom;*/
    @media (min-width: 769px) {
        object-fit: cover;
    }
}


.content_calendar.block_element .card:hover {
  background: #DFD7CB;
}

.content_tariffs .card,
.content_docs .card {
  border-right: 1px solid var(--line-quatemary);
  padding: var(--card-h-padding-lg) var(--card-v-padding-lg);
}
.content_tariffs .card--title,
.content_docs .card--title {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
}
.content_tariffs .card--tariff,
.content_docs .card--tariff {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.content_tariffs .card--tariff_list,
.content_docs .card--tariff_list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.content_tariffs .card--tariff_list .item,
.content_docs .card--tariff_list .item {
  display: flex;
  gap: 8px;
}
.content_tariffs .card--content,
.content_docs .card--content {
  gap: var(--card-h-padding-lg);
}
/*.content_tariffs .card--content:has(.card--action),*/
/*.content_docs .card--content:has(.card--action) {*/
/*  padding-right: calc(16px + var(--button-height));*/
/*}*/
.content_tariffs .card--content:has(.card--action) .card--action,
.content_docs .card--content:has(.card--action) .card--action {
  /*position: absolute;*/
  /*bottom: var(--card-h-padding-lg);*/
  /*right: var(--card-v-padding-lg);*/
  /*left: auto;*/
    margin-left: auto;
}

.content_offers .card {
  padding: var(--g-s) 0;
  --offers-gap: clamp(20px, calc(20px + (32 - 20) * ((100vw - 768px) / (1440 - 768))), 32px);
  gap: var(--offers-gap);
  border-bottom: 1px solid var(--line-tertiary);
  border-top: 1px solid var(--line-tertiary);
  transition: var(--transition);
  border-color: var(--line-quatemary);
}
@media (min-width: 1025px) {
  .content_offers .card {
    border-top: none;
    border-color: var(--line-tertiary);
    padding: var(--card-action-padding);
    display: grid;
    grid-template-columns: 1fr 1fr 2fr;
    min-height: 258px;
  }
}
.content_offers .card--date {
  text-transform: uppercase;
}
.content_offers .card--image {
  aspect-ratio: 380/180;
}
@media (min-width: 1025px) {
  .content_offers .card--image {
    aspect-ratio: initial;
    position: relative;
  }
  .content_offers .card--image img {
    position: absolute;
    inset: 0;
  }
}
.content_offers .card--content {
  row-gap: var(--offers-gap);
}
@media (min-width: 1025px) {
  .content_offers .card--content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: var(--offers-gap);
    row-gap: 0;
  }
}
.content_offers .card--title {
  font-size: var(--fs-subhead-1);
  line-height: 1.5;
}
.content_offers .card--text {
  font-size: var(--fs-body-1);
  -webkit-line-clamp: 6;
  grid-row: span 2;
  height: max-content;
  line-height: 1.6;
}
.content_offers .card--action {
  align-items: end;
}
.content_offers .card--action .button {
  text-transform: uppercase;
  height: max-content;
}
@media (min-width: 769px) {
  .content_offers .card:hover {
    color: var(--text-neutral-primary);
    background: var(--bg-card);
  }
  .content_offers .card:hover .button {
    --button-bg-color: transparent;
    --button-border-color: transparent;
    --button-color: var(--text-neutral-primary);
  }
}
.content_offers .card:first-child {
  border-top: 1px solid var(--line-tertiary);
}

.content_advantages .card {
  text-align: center;
  gap: 12px;
}
@media (min-width: 769px) {
  .content_advantages .card {
    padding: 0 var(--g-m);
  }
}
.content_advantages .card--image {
  padding: 0 25px;
}
@media (min-width: 769px) {
  .content_advantages .card--image {
    padding: 0;
  }
}
.content_advantages .card--content {
  container-type: inline-size;
}
.content_advantages .card--title {
  font-weight: 500;
  /*font-size: var(--fs-subhead-2-2);*/
  font-size: 12.6cqw;
  line-height: var(--lh-subhead-2);
}

@media (min-width: 640px) {
  .content_special {
    --col: 1;
  }
}
.content_special .card {
  /*padding: 0 clamp(0px, 0px + 32 * (100vw - 768px) / 672, 32px);*/
  gap: clamp(16px, calc(16px + (64 - 16) * ((100vw - 768px) / (1440 - 768))), 64px);
}
@media (min-width: 769px) {
  .content_special .card {
    display: grid;
    grid-template-columns: 1fr 1.7fr;
  }
}
.content_special .card--content {
  gap: clamp(18px, 18px + 6 * (100vw - 768px) / 672, 24px);
}
@media (min-width: 769px) {
  .content_special .card--content {
      justify-content: center;
      align-items: flex-start;
  }
}
.content_special .card--image {
  justify-content: center;
}
.content_special .card--image img {
  aspect-ratio: 1/1;
  height: auto;
  /*max-width: 606px;*/
}
.content_special .card--title {
  font-size: var(--fs-heading-1);
  line-height: var(--lh-heading-1);
}
.content_special .card--action .button {
  width: 100%;
  max-width: 283px;
  --button-bg-color: var(--button-light-primary-bg-rest);
  --button-border-color: var(--button-light-primary-bg-rest);
  --button-color: var(--button-light-primary-text-rest);
}
.content_special .card:hover .button {
  --button-bg-color: var(--button-light-primary-bg-hover);
  --button-border-color: var(--button-light-primary-bg-hover);
  --button-color: var(--button-light-primary-text-hover);
}

.content_cards-fest .card {
  gap: clamp(16px, 16px + 4 * (100vw - 768px) / 672, 20px);
}
.content_cards-fest .card--title {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
  margin-bottom: 8px;
}
.content_cards-fest .card--text {
  font-size: var(--fs-body-1);
  line-height: var(--fs-body-3);
}
.content_cards-fest .card--action {
  margin-top: var(--g-s);
}
.content_cards-fest .card--image {
  aspect-ratio: 912/541;
}
.content_cards-fest .card--image img {
  transition: var(--transition);
}
.content_cards-fest .card:hover .card--image img {
  scale: 1.1;
}

.dropdown {
  position: relative;
}
@media (min-width: 769px) {
  .dropdown:hover .dropdown--wrapper {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
}
@media (max-width: 768px) {
  .dropdown > a {
    pointer-events: none;
  }
}
.dropdown.is_active .dropdown--wrapper {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.dropdown--wrapper {
  position: absolute;
  top: 100%;
  padding-top: 8px;
  right: 0;
  min-width: 320px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  transform: translateY(-10px);
  z-index: 1000;
}
@media (max-width: 768px) {
  .dropdown--wrapper {
    position: fixed;
    top: auto;
    left: 0;
    right: 0;
    min-width: auto;
    width: 100%;
    border-radius: 24px 24px 0 0;
    max-height: 80vh;
    overflow-y: auto;
  }
}
.dropdown--list {
  background: #FFFFFF;
  border-radius: 24px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.dropdown--item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #203750;
}
.dropdown--item .button span[class*=icon-] {
  font-size: 2em;
}
.dropdown--item > span {
  font-size: var(--subtitle-s);
  color: #64788F;
  font-weight: 500;
}
.dropdown--item > p {
  font-size: var(--caption-s);
}
.dropdown--item > p + a {
  margin-top: 4px;
  font-weight: 500;
}
.dropdown--item > div {
  display: flex;
  gap: 12px;
  align-items: center;
}

.is_cascade {
  --m-head-top: var(--cascade-margine-page-lg);
  --m-bottom: var(--cascade-margine-page-md);
  --m-text-top: var(--cascade-margine-page-md);
  color: var(--color-text-basic-main-1);
}
.is_cascade > * {
  margin: var(--m-text-top) 0 var(--m-bottom);
}
.is_cascade > *:first-child {
  margin-top: 0;
}
.is_cascade > *:last-child {
  margin-bottom: 0;
}
.is_cascade h1, .is_cascade h2, .is_cascade h3, .is_cascade h4, .is_cascade h5, .is_cascade h6 {
  margin: var(--m-head-top) 0 var(--m-bottom);
  text-transform: uppercase;
  font-weight: 400;
}
.is_cascade h1 {
  font-size: var(--fs-display-1);
  line-height: var(--lh-display-1);
}
.is_cascade h2 {
  font-size: var(--fs-heading-1);
  line-height: var(--lh-heading-1);
}
.is_cascade h3 {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
}
.is_cascade h4, .is_cascade h5, .is_cascade h6 {
  font-size: var(--fs-body-3);
  line-height: var(--lh-body-3);
}
.is_cascade b, .is_cascade strong {
  font-weight: 500;
}
.is_cascade p > a:not([class]) {
  text-decoration: underline;
}
.is_cascade p > a:not([class]):hover, .is_cascade p > a:not([class]):focus {
  color: var(--accent-2);
}
.is_cascade img,
.is_cascade video {
  height: auto;
  border-radius: var(--border-corner);
  aspect-ratio: 16/9;
  width: 100%;
  object-fit: cover;
}
.is_cascade ul, .is_cascade ol {
  margin: 0 0 var(--m-bottom);
  padding-left: 24px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.is_cascade figure img, .is_cascade figure video {
  aspect-ratio: 16/9;
}
.is_cascade figure figcaption {
  margin-top: 8px;
  color: var(--text-neutral-tertiary);
}
.is_cascade hr {
  border-color: var(--line-quatemary);
}
.is_cascade .button_wrapper, .is_cascade .block--actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 12px;
}
.is_cascade .is_cascade--table {
  width: 100%;
  margin: var(--m-text-top) 0 var(--m-bottom);
  overflow: auto;
}
.is_cascade .is_cascade--table table {
  width: 100%;
  border-collapse: collapse;
  border-radius: var(--border-corner);
  overflow: hidden;
  outline: 1px solid var(--line-quatemary);
  outline-offset: -1px;
}
.is_cascade .is_cascade--table thead {
  background-color: var(--bg-illustration-light);
}
.is_cascade .is_cascade--table tr {
  border-bottom: 1px solid var(--line-quatemary);
}
.is_cascade .is_cascade--table tr:last-child {
  border-bottom: none;
}
.is_cascade .is_cascade--table td,
.is_cascade .is_cascade--table th {
  text-align: center;
  padding: 16px 24px;
}
.is_cascade .is_cascade--table td:not(:last-child),
.is_cascade .is_cascade--table th:not(:last-child) {
  border-right: 1px solid var(--line-quatemary);
}
.is_cascade .is_cascade--table .table-subhead {
  background-color: #F2F9FA;
  text-align: center;
}
.is_cascade .is_cascade--table tbody td:first-child:not(.table-subhead) {
  text-align: left;
}
.is_cascade .block--actions {
  margin: var(--m-text-top) 0 var(--m-bottom);
}

.list-table {
  display: flex;
  flex-direction: column;
  text-transform: uppercase;
  font-size: var(--fs-body-1);
  line-height: var(--lh-body-1);
}
.list-table .item {
  display: grid;
  align-items: center;
  grid-template-columns: 2fr 2fr;
  gap: 16px;
  padding: 24px 0;
}
@media (min-width: 769px) {
  .list-table .item {
    grid-template-columns: 4fr 2.5fr;
  }
}
.list-table .item:not(:last-child) {
  border-bottom: 1px solid var(--text-neutral-tertiary);
}
.list-table .item span {
  text-align: right;
}

.is_cascade:has(.gallery) {
  overflow: hidden;
}
.is_cascade:has(.gallery) .gallery {
  aspect-ratio: 800/533;
  border-radius: var(--border-corner);
  overflow: hidden;
}
.is_cascade:has(.gallery) .gallery .slider_controls {
  bottom: 16px;
  right: 16px;
  gap: 8px;
}
.is_cascade:has(.gallery) .gallery .slider_controls .swiper--next,
.is_cascade:has(.gallery) .gallery .slider_controls .swiper--prev {
  width: 44px;
  height: 44px;
  font-size: 1.4em;
}
.is_cascade:has(.gallery) .gallery .slider_controls .swiper--next:before,
.is_cascade:has(.gallery) .gallery .slider_controls .swiper--prev:before {
  content: none;
}

.is_cascade--video {
  overflow: hidden;
  margin: var(--margin-m) 0;
}

.video {
  width: 100%;
  height: auto;
  position: relative;
}
.video video {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}

.blockquote {
  margin: 16px 0;
  border-left: 10px solid var(--color-line-brand-main-1);
  padding-left: var(--g-m);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.blockquote--decor:after {
  content: "";
  display: flex;
  width: 60px;
  aspect-ratio: 60/44;
  background-color: var(--color-text-brand-light-main-4);
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='61' height='45' viewBox='0 0 61 45' fill='none'%3E%3Cpath d='M59.9834 2.58594C58.4549 2.58598 56.4986 2.89412 54.1143 3.50977C51.7296 4.06393 49.3753 4.9258 47.0518 6.0957C44.7284 7.26555 42.802 8.7428 41.2734 10.5283C38.9499 13.2376 37.7881 15.4546 37.7881 17.1787C38.2772 16.5014 39.3778 15.9164 41.0898 15.4238C42.8018 14.8697 44.6362 14.5928 46.5928 14.5928C49.2832 14.5928 51.6375 15.2392 53.6553 16.5322C55.673 17.8253 57.2631 19.5802 58.4248 21.7969C59.5865 23.9519 60.167 26.3534 60.167 29.001C60.167 33.4343 58.7609 37.0982 55.9482 39.9922C53.1968 42.8861 49.4668 44.333 44.7588 44.333C41.5792 44.333 38.7048 43.5326 36.1367 41.9316C33.5688 40.3307 31.674 38.1136 30.4512 35.2812C29.2894 38.1137 27.4849 40.3307 25.0391 41.9316C22.5933 43.5324 19.6277 44.333 16.1426 44.333C11.5568 44.333 7.70429 42.7623 4.58594 39.6221C1.52896 36.4202 0 31.8328 0 25.8604C5.63006e-05 21.1193 1.25385 16.8088 3.76074 12.9297C6.32872 8.98921 9.96701 5.84951 14.6748 3.50977C19.444 1.17 24.3971 4.79028e-05 29.5332 0L31.3682 2.58594C29.8395 2.58594 27.8827 2.89403 25.498 3.50977C23.1134 4.06393 20.7591 4.92579 18.4355 6.0957C16.1122 7.26557 14.1858 8.74278 12.6572 10.5283C10.3337 13.2376 9.17188 15.4546 9.17188 17.1787C9.661 16.5014 10.7618 15.9164 12.4736 15.4238C14.1857 14.8697 16.0209 14.5928 17.9775 14.5928C22.8689 14.5929 26.599 16.6247 29.167 20.6885C30.0842 16.563 31.9184 12.9605 34.6699 9.88184C37.4825 6.80328 40.9069 4.40175 44.9424 2.67773C49.039 0.892196 53.4414 0 58.1494 0L59.9834 2.58594Z' fill='%23FF7C22' fill-opacity='0.5'/%3E%3C/svg%3E");
}
.blockquote--text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.blockquote--text p {
  font-size: var(--subtitle-m);
  font-weight: 600;
}
.blockquote--text span {
  font-size: var(--caption-xl);
  color: var(--color-text-basic-main-3);
}

.block--content .is_cascade {
  --m-head-top: var(--cascade-margine-block-lg);
  --m-bottom: var(--cascade-margine-block-md);
  --m-text-top: var(--cascade-margine-block-md);
}

.popup .is_cascade {
  --m-head-top: var(--cascade-margine-modal-lg);
  --m-bottom: var(--cascade-margine-modal-md);
  --m-text-top: var(--cascade-margine-modal-md);
}

.block_html_code .block--content.is_cascade {
  margin-top: var(--g-xl);
}

.labels {
  display: flex;
  align-items: center;
  gap: 6px;
}
.labels .label {
  background: #E54A4A;
  color: #fff;
  padding: 4px 8px;
}

.button_wrapper,
.block--actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 16px;
}
.button_wrapper:empty,
.block--actions:empty {
  display: none;
}
.button_wrapper .button,
.block--actions .button {
  width: 100%;
}
@media (min-width: 769px) {
  .button_wrapper .button,
  .block--actions .button {
    max-width: 283px;
  }
}

.block--selection {
  display: flex;
  align-items: center;
  flex-grow: 1;
  position: relative;
  padding: 0 16px;
  margin: 12px -16px 0;
  color: currentColor;
  overflow: auto;
  gap: 8px;
  text-transform: uppercase;
}
@media (min-width: 769px) {
  .block--selection {
    gap: 18px;
  }
}
.block--selection:empty {
  display: none;
}
.block--selection a {
  white-space: nowrap;
  font-size: var(--fs-body-1);
  line-height: var(--lh-body-2);
  padding: 12px 18px;
  border-bottom: 1px solid var(--line-primary);
}
.block--selection a:hover {
  border-color: var(--line-tertiary);
}
.block--selection a.is_active {
  border-color: var(--line-illustration);
  color: var(--text-accent-primary);
}

.block--head {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 12px + 4 * (100vw - 768px) / 672, 16px);
  align-content: center;
}
.block--head_subtitle {
  text-transform: uppercase;
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
}
.block--head_title {
  font-size: var(--fs-display-1);
  text-transform: uppercase;
  line-height: var(--lh-display-1);
  font-family: "TT Tricks", sans-serif;
}
.block--head_caption {
  font-size: var(--fs-body-3);
  line-height: 1.5;
}

.block--pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  margin-top: var(--g-l);
  color: rgba(0, 0, 0, 0.7);
  grid-column: span var(--col);
}
.block--pagination .button {
  aspect-ratio: 1/1;
}
@media (min-width: 769px) {
  .block--pagination .button {
    width: 40px;
  }
}
.block--pagination .button:not(:only-child) {
  padding: 0;
  justify-content: center;
}
.block--pagination .button.is_active {
  --button-color: var(--text-fixed-light-primary);
  --button-bg-color: var(--text-neutral-primary);
  --button-border-color: var(--text-neutral-primary);
}
.block--pagination .button:hover, .block--pagination .button:focus, .block--pagination .button:active {
  --button-color: var(--text-neutral-primary);
  --button-bg-color: var(--text-neutral-quatemary);
  --button-border-color: var(--text-neutral-quatemary);
}
.block--pagination .button:only-child {
  width: max-content;
  aspect-ratio: initial;
}
.block--pagination .button span[class^=icon-]:only-child {
  font-size: var(--button-icon-size-2);
}

.block--link {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
@media (min-width: 1024px) {
  .block--link span[class^=icon-] {
    display: none;
  }
}
@media (max-width: 1023px) {
  .block--link span:not([class^=icon-]) {
    display: none;
  }
}
@media (min-width: 769px) {
  .block--link .button {
    height: 40px;
  }
}

.block_banner {
  overflow: hidden;
  position: relative;
  padding: 0;
  margin: 0;
  height: calc(100vh - var(--headerHeight));
}
.block_banner .block--wrapper {
  height: 100%;
  position: relative;
  padding: 0;
}
.block_banner .block--head_title {
  font-size: clamp(28px, calc(28px + (64 - 28) * ((100vw - 999px) / (1440 - 999))), 64px);
    line-height: clamp(38px, calc(38px + (77 - 38) * ((100vw - 999px) / (1440 - 999))), 77px);
}

.block_banner.block_banner-hero {

  height: 100vh;
}

.banner {
  display: flex;
  flex-direction: column;
  padding: var(--g-m) var(--container);
  flex-shrink: 0;
  flex-grow: 0;
  height: 100%;
  overflow: hidden;
  position: relative;
  justify-content: end;
  color: var(--text-fixed-light-primary);
}
.banner .block--head {
  max-width: 920px;
}
.banner .block--head,
.banner .block--actions {
  z-index: 3;
  position: relative;
}
.banner .block--content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
}
.banner .block--content img, .banner .block--content video {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  z-index: 1;
}
.banner .block--content:after {
  content: "";
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.36) 100%);
}


.block_banner-group .slider_controls {
  display: flex;
  color: #fff;
  left: auto;
  width: max-content;
  right: calc(var(--header-side-width) + var(--container));
  z-index: 11;
}
@media (max-width: 1140px) {
  .block_banner-group .block--head {
    padding-bottom: 56px;
  }
}

.block_banner:not(.block_banner-no_media) {
  min-height: 600px;
}
@media (min-width: 999px) {
  .block_banner:not(.block_banner-no_media){
    min-height: 720px;
  }
}

.block_banner.block_banner-hero {
    margin-bottom: 0;
}
@media (min-width: 999px) {
    .block_banner.block_banner-hero {
        margin-bottom: var(--g-container-vertical);
    }
}
.block_banner.block_banner-hero .block--head {
  padding-right: calc(var(--header-side-width) + var(--container) / 2);
}

.block_banner:not(.block_banner-hero) {
  height: initial;
  padding: clamp(32px, 32px + 48 * (100vw - 768px) / 472, 80px) var(--container);
}
.block_banner:not(.block_banner-hero) .banner {
  height: max-content;
  overflow: hidden;
  border-radius: var(--border-corner);
  justify-content: flex-start;
  padding: clamp(32px, 32px + 48 * (100vw - 768px) / 472, 80px) var(--container);
}
.block_banner:not(.block_banner-hero) .banner .block--head {
  max-width: 1200px;
}
.block_banner:not(.block_banner-hero) .banner .block--head_caption {
  max-width: 800px;
}

.block_banner-no_media .banner {
  min-height: auto;
}
.block_banner-no_media .banner .block--content:after {
  content: none;
}

.block_image_text .block--wrapper {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (min-width: 992px) {
  .block_image_text .block--wrapper {
    gap: var(--g-xxxs);
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "content image";
  }
}
@media (min-width: 992px) {
  .block_image_text .block--image ~ .block--content {
    grid-area: content;
  }
  .block_image_text .block--image {
    grid-area: image;
  }
}
.block_image_text .block--head {
  text-align: left;
  margin: 0;
}
@media (min-width: 992px) {
  .block_image_text .block--head {
    gap: var(--g-xxs);
  }
}
.block_image_text .block--head_subtitle {
  color: var(--color-text-brand-dark-main-1);
  font-size: var(--body-s);
}
.block_image_text .block--image {
  height: auto;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  position: relative;
  min-width: 0;
}
.block_image_text .block--image .gallery {
  min-width: 0;
  border-radius: var(--border-corner);
  overflow: hidden;
  display: flex;
  width: 100%;
  aspect-ratio: 1/1;
  max-height: calc(100vh - var(--headerHeight) - 16px);
}
@media (min-width: 992px) {
  .block_image_text .block--image .gallery {
    position: sticky;
    top: var(--headerHeight);
  }
}
.block_image_text .block--image img, .block_image_text .block--image video {
  overflow: hidden;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.block_image_text .block--content {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: var(--g-xxs);
}
.block_image_text .block--content:only-child {
  display: grid;
  gap: var(--g-16);
}
@media (min-width: 992px) {
  .block_image_text .block--content:only-child {
    gap: var(--g-xxl);
    grid-column: span 2;
    grid-template-columns: 1fr 1fr;
  }
  .block_image_text .block--content:only-child .block--head {
    grid-column: 1;
  }
  .block_image_text .block--content:only-child > .is_cascade {
    grid-column: 2;
  }
}
@media (min-width: 992px) {
  .block_image_text.block_image_text-reversed .block--wrapper {
    grid-template-areas: "image content";
  }
}
@media (min-width: 992px) {
  .block_image_text.block_image_text-reversed .block--content:only-child .block--head {
    grid-column: 2;
  }
  .block_image_text.block_image_text-reversed .block--content:only-child .is_cascade {
    order: -1;
    grid-column: 1;
  }
}
@media (min-width: 992px) {
  .block_image_text.block_image_text-ratio-fill .block--image {
    position: relative;
  }
  .block_image_text.block_image_text-ratio-fill .gallery {
    position: absolute;
    inset: 0;
    aspect-ratio: initial;
  }
}
.block_image_text.block_image_text_ar-16-9 .gallery {
  aspect-ratio: 16/9;
}
.block_image_text.block_image_text_ar-4-3 .gallery {
  aspect-ratio: 4/3;
}
.block_image_text.block_image_text_ar-3-4 .gallery {
  aspect-ratio: 3/4;
}
.block_image_text.block_image_text_ar-1-1 .gallery {
  aspect-ratio: 1/1;
}
.block_image_text.block_image_text-centered .block--content {
  justify-content: center;
}

.block_list {
  --col: 1;
}
@media (min-width: 640px) {
  .block_list {
    --col: 2;
  }
}
@media (min-width: 998px) {
  .block_list {
    --col: 3;
  }
}
@media (min-width: 1440px) {
  .block_list {
    --col: 4;
  }
}
@media (min-width: 1140px) {
  .block_list.-col-3 .block--elements {
    --col: 3;
  }
  .block_list.-col-3 .block--elements .card .card--image {
    aspect-ratio: 597/541;
  }
}
.block_list .block--elements {
  grid-area: elements;
  display: grid;
  place-items: start;
  grid-auto-rows: minmax(min-content, max-content);
  grid-template-columns: repeat(var(--col, 4), 1fr);
  gap: 14px;
  overflow: initial;
  min-width: 0;
}
@media (min-width: 998px) {
  .block_list .block--elements {
    gap: 20px;
  }
}
.block_list .block--wrapper {
  display: grid;
  gap: 0 var(--g-s);
  grid-template-columns: 1fr auto;
  grid-template-areas: "heading heading" "showAll slider-controls" "selection selection" "elements elements";
}
@media (min-width: 1024px) {
  .block_list .block--wrapper {
    grid-template-columns: 1fr auto auto;
    grid-template-areas: "heading showAll slider-controls" " heading showAll slider-controls" "selection showAll slider-controls" "elements elements elements";
  }
}
.block_list .block--head {
  grid-area: heading;
  max-width: 928px;
}
.block_list .block--selection {
  grid-area: selection;
  margin-top: 16px;
}
.block_list .slider_controls {
  align-items: flex-end;
  justify-content: flex-end;
  grid-area: slider-controls;
  margin-left: 6px;
  margin-top: 16px;
}
@media (min-width: 998px) {
  .block_list .slider_controls {
    margin-top: 0;
  }
}
.block_list .slider_controls:has(.swiper-button-lock) {
  display: none;
}
.block_list .block--link {
  grid-area: showAll;
}
.block_list .block--filter {
  margin-top: 24px;
  grid-area: filter;
}
.block_list.block_list-slider .block--wrapper {
  overflow: hidden;
}
.block_list.block_list-slider .block--elements {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .block_list.block_list-slider .block--elements {
    overflow: hidden;
  }
}
.block_list.block_list-slider .block--pagination {
  order: 1;
}

.block--elements {
  margin-top: var(--g-xl);
}

.block--wrapper {
  padding: var(--g-container-vertical) var(--container);
}

.breadcrumbs {
  --breadcrumbs-color: var(--text-neutral-tertiary);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  max-width: 100vw;
  padding: clamp(30px, 40px + 42 * (100vw - 992px) / 448, 72px) var(--container) 0;
  gap: 4px;
  position: relative;
  z-index: 10;
  color: var(--breadcrumbs-color);
  text-transform: uppercase;
}
.breadcrumbs a {
  transition: var(--transition);
  display: flex;
  align-items: center;
  position: relative;
  white-space: nowrap;
  flex-shrink: 0;
  flex-grow: 0;
  text-overflow: ellipsis;
  overflow: hidden;
  font-size: var(--fs-body-1);
  padding: 4px 0;
  line-height: 1em;
  gap: 6px 0;
}
@media (min-width: 1024px) {
  .breadcrumbs a {
    padding: 8px 0;
    gap: 6px;
  }
}
.breadcrumbs a:not(:last-child):hover, .breadcrumbs a:not(:last-child):focus, .breadcrumbs a:not(:last-child):active {
  opacity: 0.7;
}
.breadcrumbs a:not(:last-child):after {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.3em;
  height: 1.3em;
  content: "\e904";
  font-family: "icomoon" !important;
}
.breadcrumbs a:last-child {
  pointer-events: none;
  color: var(--text-neutral-primary);
}

body:has(.header-transparent) .breadcrumbs {
  padding-top: 0;
  position: absolute;
  z-index: 10;
  top: calc(var(--headerHeight) + var(--g-m));
  left: 0;
  right: 0;
  --breadcrumbs-color: var(--text-softlight-primary);
}
@media (max-width: 1140px) {
  body:has(.hero-content) .breadcrumbs {
    top: calc(var(--headerHeight) + 120px);
    max-width: calc(100% - var(--header-side-width));
  }

}
body:has(.header-transparent) .breadcrumbs a:last-child {
  color: var(--text-fixed-light-primary);
}

.nav {
  display: flex;
  flex-direction: column;
}
.nav--item {
  display: flex;
  flex-direction: column;
  padding: 24px var(--g-s);
  text-transform: uppercase;
  gap: 24px;
}
@media (min-width: 769px) {
  .nav--item {
    padding: var(--g-m) var(--g-s);
    display: grid;
    grid-template-columns: 3fr 1fr;
  }
}
.nav--item_title {
  font-family: "TT Tricks", sans-serif;
  font-size: var(--fs-heading-1);
  line-height: var(--lh-heading-2);
}
.nav--item_link {
  display: flex;
  flex-direction: column;
  padding: 7.5px 0;
  font-size: var(--fs-caption-1);
  line-height: var(--lh-caption-2);
}
.nav--item_link:hover {
  color: var(--text-neutral-tertiary);
}
.nav--item:not(:last-child) {
  border-bottom: 1px solid #C7C4B9;
}

.form--input {
  display: flex;
  flex-direction: column;
  margin-bottom: 24px;
  gap: 0;
}
.form--input > input, .form--input textarea {
  transition: var(--transition);
  width: 100%;
  padding: 10px 0;
  border: none;
  border-bottom: 1px solid var(--line-quatemary);
  color: var(--text-neutral-quatemary);
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  font-size: var(--fs-body-2);
  line-height: var(--lh-body-1);
}
.form--input > input::placeholder, .form--input > input:placeholder-shown, .form--input textarea::placeholder, .form--input textarea:placeholder-shown {
  color: var(--text-neutral-quatemary);
  font-weight: 400;
}
.form--input > input:not(:placeholder-shown), .form--input textarea:not(:placeholder-shown) {
  color: var(--text-neutral-primary);
}
.form--input > input:hover, .form--input > input:focus, .form--input > input:focus-within, .form--input textarea:hover, .form--input textarea:focus, .form--input textarea:focus-within {
  border-bottom-color: var(--line-secondary);
}
.form--input > input[required] ~ span:after, .form--input textarea[required] ~ span:after {
  content: "*";
}
.form--input.error .form--input_error {
  opacity: 1;
  max-height: fit-content;
  height: auto;
  visibility: inherit;
  margin-top: 8px;
}
.form--input_error {
  color: var(--text-accent-primary);
  font-size: var(--fs-caption-2);
  max-height: 0;
  opacity: 0;
  height: 0;
  overflow: hidden;
  transition: opacity 0.03s 0.15s ease-out, max-height 0.18s linear;
}
.form--input_hint {
  color: var(--text-subnead);
  font-size: 16px;
  line-height: 20px;
}
.form--input > label {
  display: flex;
  align-items: flex-start;
}

.form--input {
  position: relative;
}
.form--input input[type=radio],
.form--input input[type=checkbox] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  order: -1;
}
.form--input input[type=radio] ~ span,
.form--input input[type=checkbox] ~ span {
  order: 1;
  line-height: 1.5;
  margin-left: 16px;
  font-size: var(--fs-body-1);
}
.form--input input[type=radio] ~ .radio, .form--input input[type=radio] ~ .checkbox, .form--input input[type=radio] ~ .toggle,
.form--input input[type=checkbox] ~ .radio,
.form--input input[type=checkbox] ~ .checkbox,
.form--input input[type=checkbox] ~ .toggle {
  flex-shrink: 0;
  flex-grow: 0;
  cursor: pointer;
}
.form--input input[type=checkbox] ~ .checkbox {
  transition: var(--transition);
  width: 20px;
  height: 20px;
  border: 1px solid var(--line-quatemary);
  background-color: transparent;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: none;
}
@media (min-width: 768px) {
  .form--input input[type=checkbox] ~ .checkbox {
    width: 24px;
    height: 24px;
  }
}
.form--input input[type=checkbox] ~ .checkbox:after {
  content: "\e909";
  font-family: "icomoon" !important;
  font-size: 20px;
  line-height: 1;
  color: #482F0C;
  transition: 0.18s cubic-bezier(0.36, 0.25, 0.56, 1);
  scale: 0;
  position: absolute;
  translate: -50% -50%;
  top: 50%;
  left: 50%;
}
.form--input input[type=checkbox] ~ .checkbox:hover, .form--input input[type=checkbox] ~ .checkbox:focus {
  border-color: var(--line-primary);
}
.form--input input[type=checkbox] ~ .toggle {
  width: 46px;
  height: 24px;
  border: 1px solid var(--line-quatemary);
  position: relative;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background-color: transparent;
  border-radius: 50px;
}
.form--input input[type=checkbox] ~ .toggle:after {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  position: absolute;
  left: 4px;
  top: 5px;
  border-radius: 50px;
  background-color: #482F0C;
  transition: var(--transition);
  z-index: 2;
  flex-shrink: 0;
  flex-grow: 0;
}
.form--input input[type=checkbox] ~ .toggle:hover, .form--input input[type=checkbox] ~ .toggle:focus {
  border-color: var(--line-primary);
}
.form--input input[type=checkbox]:checked ~ .checkbox {
  border-color: var(--line-quatemary);
}
.form--input input[type=checkbox]:checked ~ .checkbox:after {
  transition: 0.18s cubic-bezier(0.36, 0.25, 0.56, 1.82);
  scale: 1;
}
.form--input input[type=checkbox]:checked ~ .toggle {
  background-color: transparent;
  border-color: var(--line-primary);
}
.form--input input[type=checkbox]:checked ~ .toggle:after {
  transform: translateX(20px);
}
.form--input input[type=radio] ~ .radio {
  transition: var(--transition);
  width: 20px;
  height: 20px;
  border: 1px solid var(--line-quatemary);
  background-color: transparent;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media (min-width: 769px) {
  .form--input input[type=radio] ~ .radio {
    width: 24px;
    height: 24px;
  }
}
.form--input input[type=radio] ~ .radio:after {
  content: "";
  position: absolute;
  translate: -50% -50%;
  top: 50%;
  left: 50%;
  transition: 0.18s cubic-bezier(0.36, 0.25, 0.56, 1);
  scale: 0;
  width: 16px;
  height: 16px;
  background-color: #482F0C;
  border-radius: 50px;
}
@media (min-width: 768px) {
  .form--input input[type=radio] ~ .radio:after {
    width: 16px;
    height: 16px;
  }
}
.form--input input[type=radio] ~ .radio:hover, .form--input input[type=radio] ~ .radio:focus {
  border-color: var(--line-primary);
}
.form--input input[type=radio]:checked ~ .radio {
  border-color: var(--line-quatemary);
}
.form--input input[type=radio]:checked ~ .radio:after {
  transition: 0.18s cubic-bezier(0.36, 0.25, 0.56, 1.82);
  scale: 1;
}

.form--input_date,
.form--input_date-range {
  transition: var(--transition);
  width: 100%;
  position: relative;
  border-bottom: 1px solid var(--line-quatemary);
  border-radius: 0;
  background-color: transparent;
  display: flex;
  align-items: center;
}
.form--input_date:after,
.form--input_date-range:after {
  content: "\e901";
  font-family: "icomoon";
  font-size: 18px;
  color: var(--icon-primary);
}
.form--input_date input,
.form--input_date-range input {
  line-height: 1.5;
  font-size: 16px;
  background-color: transparent;
  transition: var(--transition);
  width: 100%;
  padding: 8px 0;
  color: var(--text-neutral-quatemary);
}
@media (min-width: 768px) {
  .form--input_date input,
  .form--input_date-range input {
    padding: 12px 0;
  }
}
.form--input_date input::placeholder, .form--input_date input:placeholder-shown,
.form--input_date-range input::placeholder,
.form--input_date-range input:placeholder-shown {
  color: var(--text-neutral-quatemary);
}
.form--input_date input:not(:placeholder-shown),
.form--input_date-range input:not(:placeholder-shown) {
  color: var(--text-neutral-primary);
}
.form--input_date:hover, .form--input_date:focus, .form--input_date:focus-within,
.form--input_date-range:hover,
.form--input_date-range:focus,
.form--input_date-range:focus-within {
  border-color: var(--line-secondary);
}

.air-datepicker {
  color: var(--text-neutral-primary);
  --adp-font-family: inherit;
  --adp-font-size: var(--fs-button-l);
  --adp-width: 288px;
  --adp-z-index: 60;
  --adp-padding: 12px;
  --adp-grid-areas: "nav" "body" "timepicker" "buttons";
  --adp-transition-duration: .3s;
  --adp-transition-ease: ease-out;
  --adp-transition-offset: 8px;
  --adp-background-color: #fff;
  --adp-background-color-hover: transparent;
  --adp-background-color-active: transparent;
  --adp-background-color-in-range: var(--surface-brand);
  --adp-background-color-in-range-focused: var(--surface-brand);
  --adp-background-color-selected-other-month-focused: var(--neutral-default);
  --adp-background-color-selected-other-month: var(--neutral-default);
  --adp-color: var(--text-neutral-primary);
  --adp-color-secondary: #9c9c9c;
  --adp-accent-color: var(--surface-brand);
  --adp-color-current-date: var(--text-link);
  --adp-color-other-month: var(--text-neutral-primary);
  --adp-color-disabled: var(--text-neutral-quatemary);
  --adp-color-disabled-in-range: var(--text-neutral-quatemary);
  --adp-color-other-month-hover: var(--text-neutral-primary);
  --adp-border-color: transparent;
  --adp-border-color-inner: transparent;
  --adp-border-radius: 0;
  --adp-border-color-inline: var(--neutral-container-default);
  --adp-nav-height: 32px;
  --adp-nav-arrow-color: var(--fg-default);
  --adp-nav-action-size: 32px;
  --adp-nav-color-secondary: var(--fg-default);
  --adp-day-name-color: #818080;
  --adp-day-name-color-hover: #818080;
  --adp-day-cell-width: 1fr;
  --adp-day-cell-height: 36px;
  --adp-month-cell-height: 36px;
  --adp-year-cell-height: 36px;
  --adp-pointer-size: 10px;
  --adp-poiner-border-radius: 0;
  --adp-pointer-offset: 14px;
  --adp-cell-border-radius: 0;
  --adp-cell-background-color-hover: transparent;
  --adp-cell-background-color-selected: var(--text-neutral-primary);
  --adp-cell-background-color-selected-hover: var(--text-neutral-primary);
  --adp-cell-background-color-in-range: var(--neutral-container-soft);
  --adp-cell-background-color-in-range-hover: var(--neutral-container-soft);
  --adp-cell-border-color-in-range: var(--neutral-default);
  --adp-btn-height: 36x;
  --adp-btn-color: var(--accent-on-accent);
  --adp-btn-color-hover: var(--accent-on-accent);
  --adp-btn-border-radius: var(--adp-border-radius);
  --adp-btn-background-color-hover: #1212121A;
  --adp-btn-background-color-active: var(--accent-default);
  --adp-time-track-height: 1px;
  --adp-time-track-color: #dedede;
  --adp-time-track-color-hover: #b1b1b1;
  --adp-time-thumb-size: 12px;
  --adp-time-padding-inner: 10px;
  --adp-time-day-period-color: var(--adp-color-secondary);
  --adp-mobile-font-size: 16px;
  --adp-mobile-nav-height: 36px;
  --adp-mobile-width: 220px;
  --adp-mobile-day-cell-height: 36px;
  --adp-mobile-month-cell-height: 36px;
  --adp-mobile-year-cell-height: 36px;
  --adp-border-color-inline: rgba(255, 252, 250, 0.15);
}

.air-datepicker {
  background-color: var(--bg-page);
  border: 1px solid var(--line-quatemary);
  color: var(--text-neutral-primary);
}

.air-datepicker-body--day-name {
  height: 36px;
  font-size: 12px;
  font-weight: 400;
  text-transform: unset;
}

.air-datepicker--content {
  padding: 0;
}

.air-datepicker-nav {
  padding: 10px 0 2px;
}

.air-datepicker-nav--title {
  font-size: 14px;
}

.air-datepicker-cell.-day- {
  font-size: 12px;
  color: var(--text-neutral-primary);
  border: 1px solid transparent;
}

.air-datepicker-cell.-day-.-current-:not(.-selected-):not(.-range-from-):not(.-range-to-) {
  border-color: var(--line-tertiary);
}

.air-datepicker-cell.-day-.-other-month- {
  color: var(--text-neutral-primary);
}

.air-datepicker-cell.-day-.-disabled-,
.air-datepicker-cell.-day-.-disabled-.-other-month- {
  color: var(--text-neutral-quatemary);
}

.air-datepicker-cell.-day-.-focus-:not(.-selected-):not(.-range-from-):not(.-range-to-),
.air-datepicker-cell.-day-:hover:not(.-selected-):not(.-range-from-):not(.-range-to-) {
  color: var(--text-neutral-primary);
  background-color: transparent;
  border-color: var(--line-quatemary);
}

.air-datepicker-cell.-day-.-range-to-.-focus-,
.air-datepicker-cell.-day-.-range-to-:hover {
  color: var(--text-neutral-primary);
  background-color: transparent;
  border-color: var(--line-quatemary);
}

.air-datepicker-cell.-day-.-selected-,
.air-datepicker-cell.-day-.-selected-.-range-from-,
.air-datepicker-cell.-day-.-selected-.-range-to-,
.air-datepicker-cell.-selected-.-focus- {
  color: var(--text-fixed-light-primary);
  background-color: var(--text-neutral-primary);
  border-color: var(--text-neutral-primary);
}

.air-datepicker-cell.-day-.-in-range- {
  background-color: var(--text-neutral-quatemary);
}

.air-datepicker-body {
  padding: 8px;
}

/* clears the 'X' from Chrome */
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none;
}

/* clears the 'X' from Internet Explorer */
input[type=search]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

input[type=search]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.form--input_select {
  max-width: 100%;
  display: flex;
}
.form--input_select + .form--input_select {
  margin-top: 12px;
}
.form--input_select option {
  display: none;
}

.select {
  position: relative;
  width: 100%;
}
.select:hover .select--button {
  border-bottom-color: var(--line-secondary);
}
.select--button {
  position: relative;
  cursor: pointer;
  transition: var(--transition);
  color: var(--text-neutral-quatemary);
  font-size: var(--fs-body-2);
  line-height: var(--lh-body-1);
  width: 100%;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
  border: none;
  border-bottom: 1px solid var(--line-quatemary);
  border-radius: 0;
  padding: 10px 0;
  background-color: transparent;
  box-shadow: none;
}
.select--button:after {
  font-family: "icomoon" !important;
  content: "\e902";
  transform: scaleY(1);
  transition: var(--transition);
  transform-origin: center;
  font-size: 1.2em;
  width: 1em;
  height: 1em;
  display: flex;
  align-items: center;
  color: var(--icon-primary);
}
.select--button p {
  margin: 0;
  max-width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.select:has(option[selected]:not([value=""])) .select--button {
  color: var(--text-neutral-primary);
}
.select--option_wrapper {
  opacity: 0;
  pointer-events: none;
  padding-top: 8px;
  position: absolute;
  width: 100%;
  max-width: 100%;
  height: fit-content;
  max-height: 320px;
  z-index: 3;
}
.select--option_wrapper.is_opened {
  opacity: 1;
  pointer-events: all;
}
.select--option_wrapper.is_opened .select--option_list {
  transform: translateY(0);
}
.select--option_list {
  width: 100%;
  background-color: #FFFFFF;
  transition: var(--transition);
  transform: translateY(-8px);
  border-radius: var(--border-corner-s);
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line-quatemary);
  overflow: hidden;
  max-height: 320px;
  overflow-y: auto;
}
.select--option_list_title {
  padding: 20px 20px 8px;
  font-weight: 500;
  font-size: var(--body-s);
}
.select--option {
  padding: 10px 12px;
  transition: var(--transition);
  cursor: pointer;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .select--option {
    padding: 12px 16px;
  }
}
.select--option:hover, .select--option:active, .select--option:focus {
  background-color: var(--bg-illustration-light);
}
.select--option.is_selected {
  background-color: var(--line-quatemary);
}
.select--option[data-disabled=true] {
  pointer-events: none;
  opacity: 0.4;
}

select:has(option[selected]) ~ .select .select--button {
  color: var(--text-neutral-primary);
}

.form--input.error .select--button {
  border-bottom-color: var(--color-text-semantic-critical-main);
}

input, textarea, select {
  border: none;
  outline: none;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

textarea {
  resize: vertical;
}

input[type=date] {
  appearance: none;
}

.form fieldset {
  padding: 0;
  border-color: transparent;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.form--input > span {
  order: -1;
  font-size: var(--fs-caption-1);
  transition: var(--transition);
  margin-bottom: 4px;
  text-transform: uppercase;
}
.form--input label + label {
  margin-top: 16px;
}
.form--title {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
  text-transform: uppercase;
  margin: 0 0 16px;
  font-weight: 400;
}
.form--subscription {
  display: flex;
  border-bottom: 1px solid var(--line-quatemary);
}
.form--subscription .form--input {
  margin-bottom: 0;
  width: 100%;
}
.form--subscription .form--input input {
  border-bottom: none;
}

.form--policy {
  font-size: var(--fs-body-1);
  margin: 18px 0 8px;
}
.form--policy a:not(.button) {
  color: var(--accent);
  text-decoration: underline;
}
.form--policy .form--input {
  margin-bottom: 0;
}

.form--button {
  display: flex;
  gap: var(--g-16);
  margin-top: var(--g-xxs);
}
.form--button .button {
  width: 100%;
}
@media (min-width: 769px) {
  .form--button .button {
    max-width: 283px;
  }
}

.is_sending button[type=submit] {
  background: var(--surface-accent-3-disabled) !important;
  pointer-events: none;
  cursor: wait;
}

@media (min-width: 1025px) {
  .form:has(.half) fieldset {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 var(--g-xxs);
  }
  .form:has(.half) .form--input:not(.half) {
    grid-column: span 2;
  }
  .form:has(.half) .form--policy {
    grid-column: span 2;
  }
}
.popup {
  place-items: end center;
  background-color: rgba(0, 0, 0, 0.3);
  padding: var(--headerHeight) 8px;
  overflow: auto;
  --p-content-x: var(--g-xxs);
  --p-content-y: var(--g-xxs);
}
@media (max-width: 768px) {
  .popup {
    place-items: center;
    height: calc(100 * var(--vh, 1lvh));
  }
}
@media (min-width: 1024px) {
  .popup {
    place-items: start center;
    padding: calc(var(--headerHeight) + var(--g-s)) var(--container);
  }
}
.popup--content {
  width: 100%;
  max-width: 720px;
  background-color: var(--bg-page);
  color: var(--text-neutral-primary);
  max-height: 100%;
  border-radius: var(--border-corner);
  gap: 0;
    overflow-y: auto;
}
.popup--content_wrapper {
  padding: var(--p-content-x) var(--p-content-y);
}
.popup--close {
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: var(--transition);
  border-bottom: 1px solid var(--line-quatemary);
  padding: 16px 24px;
}
.popup--close .icon-ic-close {
  cursor: pointer;
  margin-left: auto;
  font-size: var(--button-icon-size-2);
}
.popup--title {
  font-size: var(--fs-body-3);
  text-transform: uppercase;
}
.popup--actions {
  padding: 16px var(--g-xxs);
  border-top: 1px solid var(--line-quatemary);
}
.popup .is_cascade .gallery {
  margin-block: 0 calc(clamp(16px, 16px + 24 * (100vw - 768px) / 672, 40px) * -1);
  max-inline-size: 100%;
}
@media (max-width: 1023px) {
  .popup .is_cascade .gallery {
    max-width: 100vw;
  }
}

.popup-menu {
  z-index: 40;
  width: 100%;
  top: 0;
  height: 100dvh;
  background: transparent;
  overflow-x: hidden;
  padding: 0;
  transition: none;
  scrollbar-width: none;
  opacity: 1;
}
@media (min-width: 1140px) {
  .popup-menu {
    grid-template-columns: 1fr var(--headerActionsWidth, 1068px);
  }
}
.popup-menu .popup--background {
  display: none;
}
@media (min-width: 1140px) {
  .popup-menu .popup--background {
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(10px);
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.1s linear;
  }
}
.popup-menu .popup--content {
  display: grid;
  grid-template-columns: 1fr var(--header-side-width);
  grid-template-rows: auto auto;
  background: var(--bg-page);
  translate: 100% 0;
  height: 100%;
  width: 100%;
  padding: var(--headerHeight) 0 0;
  max-width: initial;
  border-left: 1px solid var(--line-quatemary-filled);
  transition: 0.3s translate ease-in-out;
  opacity: 1;
}
@media (min-width: 1140px) {
  .popup-menu .popup--content {
    display: flex;
  }
}
.popup-menu .popup--content .nav {
  opacity: 0;
  translate: 0 20px;
  transition: 0.1s 0.3s linear;
  width: 100%;
  grid-column: span 2;
  position: relative;
}
@media (max-width: 1139px) {
  .popup-menu .popup--content .nav {
    grid-column: 1;
  }
}
.popup-menu .popup--content .hero-decor {
  border-left: 1px solid var(--line-quatemary-filled);
    position: sticky;
    top: 0;
}
.popup-menu  .popup--content::-webkit-scrollbar {
    display: none;   
}
.popup-menu .popup--content .info {
  grid-column: 1;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 1140px) {
  .popup-menu .popup--content .info {
    display: none;
  }
}
.popup-menu .popup--content .info .item {
  display: flex;
  gap: 6px;
  justify-content: center;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid var(--line-quatemary-filled);
  font-size: var(--fs-body-1);
  line-height: var(--lh-body-1);
}
.popup-menu .popup--content .info .item [class^=icon-] {
  font-size: 1.4em;
}
.popup-menu .popup--content .info .item:nth-child(odd) {
  border-right: 1px solid var(--line-quatemary-filled);
}
@media (max-width: 1139px) {
  .popup-menu .popup--content .hero-decor {
    grid-row: 1/span 2;
    grid-column: 2;
  }
}

[data-popup=popup_for_menu].is_active {
  z-index: 40;
}
[data-popup=popup_for_menu].is_active .popup--background {
  opacity: 1;
  transition: opacity 0.3s 0.5s linear;
}
[data-popup=popup_for_menu].is_active .popup--content {
  transition: 0.5s translate ease-in-out;
  translate: 0;
}
[data-popup=popup_for_menu].is_active .popup--content .nav {
  transition: 0.3s 0.5s linear;
  opacity: 1;
  translate: 0 0;
}

[data-popup=popup_for_cookies] {
  display: flex;
  place-items: end center;
  background: transparent;
  justify-content: end;
  padding: 12px;
}
@media (min-width: 769px) {
  [data-popup=popup_for_cookies] {
    display: grid;
  }
}
[data-popup=popup_for_cookies] .popup--content {
  width: 100%;
  z-index: 101;
  border: 1px solid var(--line-quatemary);
  display: flex;
  flex-direction: column;
}
@media (min-width: 769px) {
  [data-popup=popup_for_cookies] .popup--content {
    width: auto;
    max-width: 640px;
  }
}
[data-popup=popup_for_cookies] .popup--content_wrapper {
  font-size: var(--fs-body-2);
}

[data-popup=popup_for_cookies].is_active {
  pointer-events: none;
}
[data-popup=popup_for_cookies].is_active .popup--content {
  pointer-events: all;
}

[data-popup=popup_for_confirmation].error .popup--title {
  color: var(--text-accent-primary);
}

.preloader {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: #fff;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
    animation: hidePreloader 0.3s 2s  linear forwards;
}
.preloader.is_active {
  opacity: 1;
  visibility: visible;
}
.preloader__inner {
  display: flex;
  align-items: center;
  justify-content: center;
}
.preloader__svg {
  width: min(395px, 90vw);
  height: auto;
  display: block;
}
.preloader__circle-rise {
  transform: scaleY(0);
  transform-box: fill-box;
  transform-origin: 50% 100%;
  animation: preloader-circle-fill 2s ease-in-out forwards;
}

@keyframes preloader-circle-fill {
  to {
    transform: scaleY(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .preloader__circle-rise {
    animation: none;
    transform: scaleY(1);
  }
}
@keyframes hidePreloader {
    to {
        opacity: 0;
        pointer-events: 0;
    }
}
.swiper-slide,
.card,
.gallery--item,
.banner-group .banner {
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
}

.swiper-wrapper {
  -webkit-transform-style: preserve-3d;
}

.swiper--prev.swiper-button-lock, .swiper--next.swiper-button-lock,
.swiper-pagination-lock {
  display: none;
}

.swiper-notification {
  display: none;
}

.block_list .slider_controls,
.content_gallery .slider_controls {
  gap: 4px;
  border: 1px solid var(--line-tertiary);
  border-radius: 100px;
  position: static;
  overflow: hidden;
  height: max-content;
}
.block_list .block--wrapper > .slider_controls,
.content_gallery .block--wrapper > .slider_controls {
  margin-top: auto;
}

.slider_controls {
  position: absolute;
  bottom: var(--g-m);
  right: var(--g-s);
  left: var(--g-s);
  z-index: 3;
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none;
  gap: 8px;
}

.swiper--prev, .swiper--next {
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: all;
  transition: var(--transition);
  width: var(--container);
  height: var(--container);
  aspect-ratio: 1/1;
  min-width: 36px;
  min-height: 36px;
  color: var(--text-neutral-primary);
}
@media (min-width: 769px) {
  .swiper--prev, .swiper--next {
    width: 40px;
    height: 40px;
  }
}
.swiper--prev:hover, .swiper--next:hover {
  background-color: var(--text-neutral-quatemary);
}
.swiper--prev.swiper-button-disabled, .swiper--next.swiper-button-disabled {
  pointer-events: none;
  color: var(--line-quatemary);
}
.swiper--prev span, .swiper--next span {
  font-size: var(--button-icon-size-2);
}

.swiper-pagination {
  display: flex;
  align-items: center;
  z-index: 10;
  gap: 2px;
}
.swiper-pagination-bullet {
  width: 6px;
  aspect-ratio: 1/1;
  background-color: rgba(243, 236, 228, 0.5019607843);
}
.swiper-pagination-bullet-active {
  background-color: var(--bg-page);
}

.block_banner .swiper--prev, .block_banner .swiper--next{
  color: #fff;
  border: 1px solid var(--line-light-secondary);
}
.block_banner .swiper--prev:hover, .block_banner .swiper--next:hover,
.block_image_text .swiper--prev:hover,
.block_image_text .swiper--next:hover,
.is_cascade .gallery .swiper--prev:hover,
.is_cascade .gallery .swiper--next:hover {
  background: rgba(0, 0, 0, 0.3019607843);
}

.block_image_text .slider_controls,
.is_cascade .gallery .slider_controls {
  justify-content: center;
    gap: 4px;
    border: 1px solid var(--line-light-secondary);
    border-radius: 100px;
    overflow: hidden;
    height: max-content;
    position: absolute;
    width: max-content;
    translate: -50% 0;
    left: 50%;
}
.block_image_text .slider_controls .swiper--prev,
.is_cascade .gallery .slider_controls .swiper--prev{
    order: -1;
}
.block_image_text .slider_controls .swiper--prev,
.is_cascade .gallery .slider_controls .swiper--prev,
.block_image_text .slider_controls .swiper--next,
.is_cascade .gallery .slider_controls .swiper--next {
    color: #fff;
}
/*.block_image_text .slider_controls .swiper--next,*/
/*.is_cascade .gallery .slider_controls .swiper--next {*/
/*  position: absolute;*/
/*  translate: 0 -50%;*/
/*  top: 50%;*/
/*  left: auto;*/
/*  right: 0;*/
/*}*/
.block_image_text .slider_controls .swiper-pagination,
.is_cascade .gallery .slider_controls .swiper-pagination {
  /*position: absolute;*/
  /*translate: -50% 0;*/
  /*bottom: 16px;*/
  /*left: 50%;*/
    color: #fff;
}
.block_image_text:has(.slider_controls) .gallery:after,
.is_cascade .gallery:has(.slider_controls):after{
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(0deg,rgba(0, 0, 0, 0.47) 6%, rgba(0, 0, 0, 0) 31%);
    z-index: 2;

}

.footer {
  overflow: hidden;
}
@media (min-width: 769px) {
  .footer {
    position: sticky;
    bottom: 0;
  }
}
.footer a:hover {
  color: var(--text-neutral-tertiary);
}
.footer--main {
  position: relative;
  z-index: 1;
  border-top: 1px solid var(--line-quatemary-filled);
}
@media (min-width: 769px) {
  .footer--main_wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.footer--col {
  display: flex;
  flex-direction: column;
}
.footer--col > * {
  padding: 32px var(--container);
}
.footer--nav {
  gap: var(--container);
}
@media (min-width: 769px) {
  .footer--nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.footer--nav_group {
  display: flex;
  gap: 32px;
}
.footer--nav_group_title {
  writing-mode: vertical-lr;
  text-orientation: upright;
  padding: 8px;
  color: var(--text-fixed-light-primary);
  background: var(--bg-illustration);
  height: max-content;
  font-size: var(--fs-caption-2);
  line-height: 1;
  letter-spacing: 0.2em;
}
.footer--nav_list {
  font-size: var(--fs-body-2);
  line-height: 1.5;
}
.footer--nav_list_item {
  padding: 8px 0;
  list-style-type: none;
}
@media (min-width: 769px) {
  .footer--nav_list_item {
    padding: 6px 0;
  }
}
.footer--contacts {
  gap: 32px;
  margin-top: auto;
  font-size: var(--fs-body-1);
}
@media (min-width: 769px) {
  .footer--contacts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.footer--contacts div {
  display: flex;
  flex-direction: column;
}
.footer--contacts div:first-child {
  padding: 4px 0;
  color: var(--text-neutral-tertiary);
}
.footer--contacts div:last-child .button {
  padding: 8px 0;
  gap: 20px;
  font-size: var(--fs-body-2);
}
.footer .form--title {
  font-size: var(--fs-body-2);
}
.footer--info {
  display: flex;
  flex-direction: column;
  gap: var(--container);
  border-top: 1px solid var(--line-quatemary-filled);
}
.footer--info_title {
  text-transform: uppercase;
}
.footer--info_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: var(--fs-body-1);
  line-height: 1.5;
}
.footer--note {
  border-top: 1px solid var(--line-quatemary-filled);
  margin-top: auto;
  display: flex;
  color: var(--text-neutral-tertiary);
  font-size: var(--fs-body-1);
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 769px) {
  .footer--note {
    flex-direction: row;
    justify-content: space-between;
  }
}
.footer--note .developer {
  color: var(--text-neutral-tertiary);
}
.footer--note .developer span {
  color: var(--text-neutral-primary);
}
.footer--col:first-child {
  border-right: 1px solid var(--line-quatemary-filled);
}

.footer--top {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr 1fr;
  justify-items: center;
  position: relative;
  z-index: 2;
  padding: clamp(16px, 16px + 28 * (100vw - 768px) / 200, 148px) var(--container) 48px;
}
@media (min-width: 1024px) {
  .footer--top {
    display: flex;
    justify-content: space-between;
  }
}
.footer--top .item {
  display: flex;
}
.footer--top img {
  width: auto;
}

.header {
  position: sticky;
  top: -1px;
  left: 0;
  width: 100%;
  max-width: 100vw;
  transition: 0.18s linear;
  z-index: 50;
  color: var(--text-neutral-primary);
  --c-border: var(--line-quatemary-filled);
  background: var(--bg-page);
}
.header--logo {
  border-bottom: 1px solid var(--c-border);
  padding-left: var(--container);
  padding-right: 16px;
  width: 100%;
  display: flex;
  align-items: center;
}
.header--logo .logo {
  display: flex;
  align-items: center;
  width: 100%;
  aspect-ratio: 174/50;
  max-width: 174px;
}
.header.header-transparent {
  position: fixed;
  background: transparent;
  color: var(--text-fixed-light-primary);
  --c-border: var(--line-quatemary-filled);
}
@media (min-width: 1140px) {
  .header.header-transparent .header--logo {
    border-color: transparent;
  }
}
.header.is_scrolled {
  color: var(--text-neutral-primary);
  --c-border: var(--line-quatemary-filled);
  background: var(--bg-page);
}
.header.is_scrolled .header--logo {
  border-color: var(--c-border);
}
.header--main {
  display: flex;
  justify-content: space-between;
}
.header--actions {
  display: flex;
  align-items: center;
  gap: 0;
  border-bottom: 1px solid var(--c-border);
  position: relative;
  transition: none;
}
@media (min-width: 1140px) {
  .header--actions {
    border-left: 1px solid var(--c-border);
  }
}
.header--actions .item {
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 160px;
  height: var(--header-side-width);
  white-space: nowrap;
}
@media (min-width: 1240px) {
  .header--actions .item {
    width: 190px;
  }
}
.header--actions .item [class^=icon-] {
  font-size: var(--fs-subhead-2);
}
.header--actions .item.-ac {
  background: var(--button-dark-brand-primary-bg-rest);
  color: var(--button-light-brand-primary-text-rest);
  flex-shrink: 1;
  padding: 0 var(--g-m);
}
@media (min-width: 1140px) {
  .header--actions .item.-ac {
    width: 219px;
  }
}
.header--actions .item.-ac:hover {
  background: var(--button-light-brand-primary-bg-hover);
  color: var(--button-light-brand-primary-text-hover);
}
@media (max-width: 1140px) {
  .header--actions .item:not(.btn-openMenu) {
    display: none;
  }
}
.header--actions .item:not(:first-child) {
  border-left: 1px solid var(--c-border);
}
.header--actions .item.btn-openMenu {
  width: var(--header-side-width);
  position: relative;
  cursor: pointer;
}
.header--actions .item.btn-openMenu .btn-openMenu__icon {
  position: relative;
  display: block;
  width: 28px;
  height: 16px;
  color: currentColor;
}
.header--actions .item.btn-openMenu .btn-openMenu__icon::before, .header--actions .item.btn-openMenu .btn-openMenu__icon::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
  transform-origin: 50% 50%;
  transition: transform 0.24s ease, top 0.24s ease, opacity 0.24s ease, background-color 0.24s ease;
}
.header--actions .item.btn-openMenu .btn-openMenu__icon::before {
  top: 2px;
}
.header--actions .item.btn-openMenu .btn-openMenu__icon::after {
  top: 13px;
}

@media (min-width: 999px) {
  body:has(.popup-menu.is_active) .header-transparent:not(.is_scrolled) .header--logo {
    opacity: 0;
  }
}
body:has(.popup-menu.is_active) .header {
  color: var(--text-neutral-primary);
  --c-border: var(--line-quatemary-filled);
  background: var(--bg-page);
}
body:has(.popup-menu.is_active) .header .btn-openMenu__icon::before {
  top: 7px;
  transform: rotate(30deg);
}
body:has(.popup-menu.is_active) .header .btn-openMenu__icon::after {
  top: 7px;
  transform: rotate(-30deg);
}
body:has(.popup-menu.is_active) .header .header--actions {
  background: var(--bg-page);
  transition: background 0.1s 0.5s linear;
}

#map,
.map {
  width: 100%;
  height: 100%;
}

.block--map {
    height: calc(100vh - var(--headerHeight) -  clamp(30px, 40px + 42 * (100vw - 992px) / 448, 72px) - var(--breadcrumbs-height));
  width: 100%;
}
@media (min-width: 999px) {
    .block--map {
        height: calc(100vh - var(--headerHeight) -  clamp(30px, 40px + 42 * (100vw - 992px) / 448, 72px) - var(--breadcrumbs-height));
    }
}

.ymaps3--controls {
  z-index: -1 !important;
}

.marker-image {
  position: relative;
  width: var(--marker-size, 54px);
  height: var(--marker-size, 54px);
  transform: translate(-50%, -100%);
}

.marker-image__icon {
  display: block;
  width: 100%;
  height: 100%;
}

.content_gallery {
  overflow: hidden;
}
.content_gallery .block--wrapper {
  overflow: hidden;
}
@media (min-width: 769px) {
  .content_gallery .block--wrapper {
    display: grid;
    gap: 0 16px;
    grid-template-columns: 1fr auto auto;
    grid-template-areas: "heading showAll slider-controls" " heading showAll slider-controls" "selection selection filter" "elements elements elements";
  }
}
.content_gallery .slider_controls {
  align-items: flex-end;
}
@media (max-width: 769px) {
  .content_gallery .slider_controls {
    display: none;
  }
}
.content_gallery .block--elements {
  grid-area: elements;
}
.content_gallery .gallery:not(.js-gallerySwiper) {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (min-width: 769px) {
  .content_gallery .gallery:not(.js-gallerySwiper) {
    display: grid;
    gap: var(--g-16);
    grid-template-columns: 6fr 3fr 3fr;
    grid-template-rows: repeat(2, 1fr);
  }
  .content_gallery .gallery:not(.js-gallerySwiper):has(.gallery--item:nth-child(2)):not(:has(.gallery--item:nth-child(5))) .gallery--item:nth-child(2) {
    grid-column: span 2;
  }
  .content_gallery .gallery:not(.js-gallerySwiper) .gallery--item {
    border-radius: var(--border-corner);
    transition: var(--transition);
  }
  .content_gallery .gallery:not(.js-gallerySwiper) .gallery--item:first-child {
    aspect-ratio: 920/695;
    grid-row: span 2;
  }
  .content_gallery .gallery:not(.js-gallerySwiper) .gallery--item:last-child:nth-child(2) {
    grid-row: span 2;
  }
  .content_gallery .gallery:not(.js-gallerySwiper) .gallery--item:last-child:nth-child(3) {
    grid-column: span 2;
  }
  .content_gallery .gallery:not(.js-gallerySwiper) .gallery--item:nth-child(n+6) {
    display: none;
  }
  .content_gallery .gallery:not(.js-gallerySwiper) .gallery--item:not(:first-child) a {
    position: absolute;
    inset: 0;
  }
}
.content_gallery .gallery:not(.js-gallerySwiper) [data-fancybox-trigger] {
  width: 100%;
  justify-content: center;
}
@media (min-width: 769px) {
  .content_gallery .gallery:not(.js-gallerySwiper) [data-fancybox-trigger] {
    position: absolute;
    left: auto;
    right: 16px;
    bottom: 16px;
    top: auto;
    width: max-content;
  }
}
.content_gallery .gallery.js-gallerySwiper .gallery--item {
  aspect-ratio: 1544/868;
}

.gallery {
  position: relative;
}
.gallery .gallery--item {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  flex-grow: 0;
  display: flex;
}
.gallery .gallery--item img, .gallery .gallery--item video, .gallery .gallery--item a {
  display: inherit;
  max-width: 100% !important;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.block--search {
  width: max-content;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 49;
  margin: auto;
  --booking-text-color: var(--mos-beige-solid-085);
  background: var(--mos-beige-solid-005);
  border-radius: var(--border-corner);
  box-shadow: 0 6px 32px 0 rgba(150, 36, 14, 0.1019607843);
}
.block--search_title {
  color: var(--mos-beige-solid-085);
  font-weight: 900;
  font-size: var(--heading-6);
  text-align: center;
  padding: var(--g-xxs) var(--g-xxs) 12px;
  border-bottom: 1px solid rgba(58, 43, 38, 0.2);
  width: 100%;
  text-transform: uppercase;
}
.block--search .booking {
  width: 100%;
  position: relative;
  transition: var(--transition);
  display: flex;
  gap: 8px;
  padding: 6px;
  flex-direction: column;
  border-radius: var(--border-corner);
}
@media (min-width: 769px) {
  .block--search .booking {
    flex-direction: row;
    gap: 4px;
    padding: 8px;
  }
}
.block--search .booking input {
  text-align: left;
  border: none;
  outline: none;
}
.block--search .booking input[type=number] {
  -webkit-appearance: textarea;
  -moz-appearance: textfield;
  background-color: transparent;
}
.block--search .booking input::-webkit-outer-spin-button, .block--search .booking input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}
.block--search .booking__input_title {
  display: none;
}
@media (min-width: 769px) {
  .block--search .booking__input_title {
    text-transform: uppercase;
    opacity: 0.6;
    display: flex;
    font-size: 14px;
    color: #463E3B;
    margin-bottom: 4px;
  }
}
.block--search .booking__calendar {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  height: max-content;
  grid-column: span 2;
}
.block--search .booking__calendar_wrapper {
  display: flex;
  flex-direction: column;
}
.block--search .booking__calendar-item {
  display: flex;
  width: 100%;
  min-height: 100%;
  cursor: pointer;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  background-color: transparent;
  color: var(--booking-text-color);
}
.block--search .booking__calendar-item:placeholder-shown, .block--search .booking__calendar-item::placeholder {
  color: var(--booking-text-color);
  opacity: 0.8;
}
.block--search .booking__calendar--item {
  display: flex;
  flex-direction: column;
  min-height: auto;
  width: max-content;
  max-width: 8ch;
}
.block--search .booking__calendar [class^=icon-] {
  font-size: 1.2em;
  color: var(--mos-beige-alpha-mid-080);
}
.block--search .booking__guests {
  position: relative;
  padding: 0 var(--g-xxs);
}
.block--search .booking__guests-input {
  font-weight: 400;
  display: flex;
  gap: 4px;
  align-items: center;
  width: 100%;
  min-height: 100%;
  cursor: pointer;
  text-overflow: ellipsis;
  overflow: hidden;
  justify-content: center;
  line-height: 1em;
}
.block--search .booking__guests-input #booking__guests_input {
  width: 100%;
}
.block--search .booking__guests-input [class^=icon-] {
  font-size: 1.2em;
  color: var(--mos-beige-alpha-mid-080);
}
.block--search .booking__guests-popover {
  position: absolute;
  display: none;
  background-color: var(--mos-beige-solid-005);
  padding: 12px;
  border-radius: var(--border-corner-s);
  z-index: 10;
}
.block--search .booking__guests-popover input {
  text-align: center;
}
.block--search .booking__guests-popover.is_active {
  display: block;
}
.block--search .booking__guests-popover-input {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  justify-content: space-between;
  white-space: nowrap;
}
.block--search .booking__guests-popover-input-number {
  width: 4em;
  text-align: center;
}
.block--search .booking__guests-popover-item {
  margin-bottom: 16px;
}
.block--search .booking__guests-popover-children {
  margin: 16px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.block--search .booking__guests-popover-children.is_hidden {
  display: none;
}
.block--search .booking__guests-popover-children-select {
  display: flex;
  align-items: center;
  gap: 12px;
}
.block--search .booking__guests-popover-children-select span {
  white-space: nowrap;
}
.block--search .booking__guests-popover-children-select-item {
  font-weight: 400;
  display: flex;
  min-height: 100%;
  padding: 12px 16px;
  cursor: pointer;
  align-items: center;
  justify-content: flex-start;
  text-overflow: ellipsis;
  overflow: hidden;
  outline: none;
  border: none;
  flex-grow: 1;
  background-color: transparent;
}
.block--search .booking__guests-popover-children-selects {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.block--search .booking__guests-popover-button {
  width: 100%;
}
.block--search .booking__guests-popover-button .button {
  width: 100%;
}
.block--search .booking__guests__button--button {
  padding-bottom: 12px;
  gap: 8px;
}
.block--search .booking__inputs {
  font-size: var(--tag-m);
  border-radius: 50px;
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--mos-beige-solid-085);
  padding: 0 var(--g-s);
}
.block--search .booking__button .button {
  border-radius: var(--border-corner-s);
}
@media (max-width: 768px) {
  .block--search .booking__button .button {
    width: 100%;
  }
}

.block_banner-hero + .block--search {
  position: relative;
  z-index: 5;
  flex-direction: column;
  margin: -60px auto var(--g-container-vertical);
}
@media (min-width: 769px) {
  .block_banner-hero + .block--search {
    margin: 0;
    position: absolute;
    translate: var(--container) calc(-100% - var(--g-m));
  }
}
.block_banner-hero + .block--search .booking {
  border-radius: 0;
  flex-direction: column;
}
.block_banner-hero + .block--search .booking__inputs {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  padding: 0;
}
.block_banner-hero + .block--search .booking__input_title {
  display: none;
}
.block_banner-hero + .block--search .booking__calendar_wrapper, .block_banner-hero + .block--search .booking__guests {
  padding: clamp(10px, 10px + 10 * (100vw - 768px) / 672, 20px) 16px;
}
.block_banner-hero + .block--search .booking__button .button {
  width: 100%;
}

.block_image_text .block--content {
  overflow: inherit;
}
.block_image_text .block--search {
  width: 100%;
}
@media (min-width: 769px) {
  .block_image_text .block--search {
    position: sticky;
    bottom: 16px;
  }
}
.block_image_text .block--search_title {
  display: none;
}
@media (min-width: 769px) and (max-width: 1240px) {
  .block_image_text .block--search .booking {
    flex-wrap: wrap;
  }
}
.block_image_text .block--search .booking__inputs {
  width: 100%;
  padding: 0;
}
@media (max-width: 768px) {
  .block_image_text .block--search .booking__inputs {
    display: none;
  }
}
.block_image_text .block--search .booking__input_title {
  display: none;
}
.block_image_text .block--search .booking__calendar_wrapper,
.block_image_text .block--search .booking__guests {
  width: 100%;
  padding: 14px 12px;
  background: rgba(238, 236, 229, 0.4117647059);
  border-radius: var(--border-corner-s);
}
.block_image_text .block--search #booking__guests_input {
  width: auto;
}
@media (min-width: 769px) and (max-width: 1240px) {
  .block_image_text .block--search .booking__button {
    width: 100%;
    margin-top: 6px;
  }
}
.block_image_text .block--search .booking__button .button {
  height: 100%;
  width: 100%;
}

.polaroids .block--search,
.banner-hero .block--search {
  z-index: 1;
}
@media (max-width: 768px) {
  .polaroids .block--search,
  .banner-hero .block--search {
    flex-direction: column;
    order: 1;
    margin-top: var(--g-xl);
  }
  .polaroids .block--search .booking,
  .banner-hero .block--search .booking {
    border-radius: 0;
    flex-direction: column;
  }
}
@media (max-width: 768px) and (min-width: 769px) {
  .polaroids .block--search .booking,
  .banner-hero .block--search .booking {
    align-items: center;
  }
}
@media (max-width: 768px) {
  .polaroids .block--search .booking__inputs,
  .banner-hero .block--search .booking__inputs {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 0;
  }
  .polaroids .block--search .booking__input_title,
  .banner-hero .block--search .booking__input_title {
    display: none;
  }
  .polaroids .block--search .booking__calendar_wrapper, .polaroids .block--search .booking__guests,
  .banner-hero .block--search .booking__calendar_wrapper,
  .banner-hero .block--search .booking__guests {
    padding: clamp(10px, 10px + 10 * (100vw - 768px) / 672, 20px) 16px;
  }
  .polaroids .block--search .booking__button .button,
  .banner-hero .block--search .booking__button .button {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .polaroids .block--search .booking__inputs,
  .banner-hero .block--search .booking__inputs {
    flex-direction: column;
  }
}
@media (min-width: 769px) {
  .polaroids .block--search_title,
  .banner-hero .block--search_title {
    display: none;
  }
}
@media (min-width: 769px) {
  .polaroids .block--search .icon-calendar,
  .polaroids .block--search .icon-user,
  .banner-hero .block--search .icon-calendar,
  .banner-hero .block--search .icon-user {
    display: none;
  }
}

.content_error {
  height: calc(100lvh - var(--headerHeight) - 60px);
  min-height: min-content;
}
.content_error .block--wrapper {
  max-width: 1046px;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: var(--g-container-vertical);
}
.content_error .block--head {
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: var(--g-s);
}
.content_error .block--actions {
  width: 100%;
  justify-content: center;
}
.content_error.error-500 .block--head_subtitle {
  color: var(--text-accent-primary);
  font-size: clamp(48px, 48px + 48 * (100vw - 768px) / 672, 96px);
  line-height: 1.2;
}

.content_article:not(.block_list) .block--wrapper {
  max-width: calc(960px + var(--container) * 2);
  margin: 0 auto;
}

.content_contacts {
  overflow: hidden;
}
.content_contacts .block--wrapper {
  position: relative;
  height: 100%;
  padding:  0;
}
.content_contacts .block--wrapper .block--actions {
  position: absolute;
  top: auto;
  bottom: var(--g-s);
  left: var(--g-s);
  right: var(--g-s);
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 8px + 24 * (100vw - 992px) / 448, 32px);
}
@media (min-width: 769px) {
  .content_contacts .block--wrapper .block--actions {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}
.content_contacts .block--wrapper .block--actions .button {
  width: 100%;
  justify-content: space-between;
  max-width: initial;
}
@media (max-width: 575px) {
  .content_contacts .block--wrapper .block--actions .button span {
    white-space: wrap;
    text-align: left;
  }
}

.contacts-content {
  display: flex;
  flex-direction: column;
  border-radius: var(--border-corner);
  background: #fff;
  box-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.2);
  min-width: 434px;
  padding: 8px;
}
.contacts-content_title {
  font-weight: 900;
  text-transform: uppercase;
  padding: 16px;
  color: var(--mos-beige-solid-085);
}
.contacts-content_list {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 12px + 12 * (100vw - 768px) / 672, 24px);
  padding: 4px 16px 16px;
  list-style: none;
  margin: 0;
}
.contacts-content_item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.contacts-content_item > a:not(:hover) {
  color: #5C4C47;
}
.contacts-content_item-title {
  font-size: var(--tag-m);
  font-weight: 600;
  color: rgba(64, 17, 0, 0.4509803922);
}
.contacts-content_text {
  color: #5C4C47;
}
.contacts-content_social {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 14px;
  line-height: 0;
  color: #FF7C22;
}
.contacts-content_social a:has(span[class^=icon-]:only-child) {
  font-size: 16px;
  --button-padding: 0;
}
.contacts-content_social a:has(span[class^=icon-]:only-child):hover {
  rotate: 13deg;
}
.contacts-content_actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-top: 4px;
}
.contacts-content_actions .button {
  width: 100%;
}

@media (min-width: 993px) {
  .content_reviews {
    --col: 1;
  }
}
@media (min-width: 1240px) {
  .content_reviews {
    --col: 2;
  }
}

.review {
  height: auto;
  gap: 16px;
  padding-right: 16px;
}
@media (min-width: 993px) {
  .review {
    display: grid;
    grid-template-columns: 1fr 2fr;
    align-items: start;
    gap: 0;
  }
}
.review:after {
  content: "";
  width: 1px;
  background-color: var(--line-quatemary-filled);
  top: 0;
  bottom: 0;
  right: 0;
  position: absolute;
}
@media (min-width: 993px) {
  .review:after {
    right: 16px;
  }
}
.review__stars {
  --inactive_stars: #482F0C56;
  --star-color: #E54A4A;
  display: flex;
  align-items: center;
}
.review__stars .star-rate {
  height: 22px;
}
.review_description--clamper {
  overflow: hidden;
  max-height: 240px;
}
.review__content {
  display: flex;
  flex-direction: column;
  gap: var(--review-cards-v-gap);
  padding: 0 var(--review-cards-h-gap);
}
.review__content .is_cascade > *:first-child {
  margin-top: 0;
}
.review__action {
  display: none;
}
.review__action.is_visible {
  display: block;
}
.review__action .button {
  width: 100%;
  justify-content: space-between;
  text-transform: uppercase;
}
.review__image {
  cursor: pointer;
}
@media (max-width: 994px) {
  .review__image {
    order: 1;
    margin-top: auto;
  }
}
.review__image img {
  width: 100%;
  aspect-ratio: 312/246;
  object-fit: cover;
  object-position: center;
}
@media (min-width: 993px) {
  .review__image img {
    aspect-ratio: 272/325;
  }
}
.review.active .review_description--clamper {
  max-height: unset;
}

.popup-review .review__action {
  display: none;
}
.popup-review .popup--content {
  max-width: 640px;
  padding: 0;
}

.content_accommodation {
  position: relative;
  margin: 0 0 var(--g-container-vertical);
}
.content_accommodation.block_element {
  margin: var(--g-container-vertical) 0;
}
.content_accommodation .block--wrapper {
  display: flex;
  flex-direction: column;
  padding: var(--g-s) var(--container);
  gap: 16px;
}
@media (min-width: 999px) {
  .content_accommodation .block--wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.content_accommodation .block--head {
  color: var(--text-fixed-light-primary);
  position: relative;
  z-index: 2;
}
@media (max-width: 998px) {
  .content_accommodation .block--head {
    aspect-ratio: 412/404;
  }
}
.content_accommodation .block--image {
  position: absolute;
  top: 0;
  left: 0;
  aspect-ratio: 412/404;
  width: 100%;
}
@media (min-width: 999px) {
  .content_accommodation .block--image {
    aspect-ratio: inherit;
    inset: 0;
  }
}
.content_accommodation .block--image:after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0) 31.25%, rgba(0, 0, 0, 0.3) 100%);
}
.content_accommodation .block--image img {
  object-fit: cover;
}
.content_accommodation .block--elements {
  margin-top: 0;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.content_accommodation .block--elements .item {
  background: var(--bg-page);
  padding: var(--card-v-padding-lg) 0;
}
@media (min-width: 999px) {
  .content_accommodation .block--elements .item {
    padding: var(--card-v-padding-lg) var(--card-h-padding-lg);
  }
}
.content_accommodation .block--elements .item.is_open .item--content {
  pointer-events: auto;
  grid-template-rows: 1fr;
  opacity: 1;
  padding-top: 16px;
}
.content_accommodation .block--elements .item.is_open .item--title span[class^=icon-]:before {
  content: "\e910";
}
.content_accommodation .block--elements .item--title {
  display: flex;
  gap: 16px;
  justify-content: space-between;
  align-items: center;
  font-size: var(--fs-heading-1);
  line-height: var(--lh-heading-1);
  font-family: "TT Tricks", sans-serif;
  cursor: pointer;
  transition: var(--transition);
  font-weight: 300;
}
.content_accommodation .block--elements .item--title p {
  text-transform: uppercase;
  margin: 0;
}
.content_accommodation .block--elements .item--title span[class^=icon-] {
  flex-shrink: 0;
  transition: var(--transition);
}
.content_accommodation .block--elements .item--content {
  opacity: 0;
  display: grid;
  grid-template-rows: 0fr;
  pointer-events: none;
  overflow: hidden;
  transition: grid-template-rows 0.41s ease-out, opacity 0.41s ease-out;
}
.content_accommodation .block--elements .item--content_inner {
  overflow: hidden;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.content_accommodation .block--elements .item--text {
  font-size: var(--fs-body-2);
  line-height: 1.2;
  color: var(--text-neutral-secondary);
}
@media (min-width: 999px) {
  .content_accommodation .block--elements .item--text {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}
.content_accommodation .block--elements .item .block--actions {
  margin-top: 0;
}
.content_accommodation .block--elements .item--images {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
  grid-template-rows: repeat(2, 1fr);
  gap: 8px;
}
.content_accommodation .block--elements .item--image {
  aspect-ratio: 123/144;
  display: flex;
  object-fit: cover;
}
@media (min-width: 999px) {
  .content_accommodation .block--elements .item--image {
    aspect-ratio: 227/234;
  }
}
.content_accommodation .block--elements .item--image:nth-child(2) {
  grid-column: 1;
}
.content_accommodation .block--elements .item--image:last-child {
  grid-column: 2;
  grid-row: 1/span 2;
  aspect-ratio: 248/298;
}
@media (min-width: 999px) {
  .content_accommodation .block--elements .item--image:last-child {
    aspect-ratio: 563/476;
  }
}

.block-detail.content_accommodation .block--wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 769px) {
  .block-detail.content_accommodation .block--wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 769px) {
  .block-detail.content_accommodation .accommodation_content {
    margin-right: var(--g-m);
  }
}
.block-detail.content_accommodation .accommodation_sidebar {
  height: 100%;
}
@media (min-width: 769px) {
  .block-detail.content_accommodation .accommodation_sidebar--sticky {
    top: calc(var(--headerHeight) + 16px);
    position: sticky;
  }
}
.block-detail.content_accommodation .accommodation_sidebar .block--actions {
  margin-top: var(--g-s);
}
.block-detail.content_accommodation .accommodation_sidebar .block--actions .button {
  width: 100%;
  justify-content: space-between;
}
.block-detail.content_accommodation .accommodation_sidebar .list-table .item span {
  text-align: left;
}

.content_offers {
  --col: 1;
  overflow: hidden;
}
.content_offers .block--elements {
  gap: 0;
}
@media (min-width: 769px) {
  .content_offers .block--elements {
    --col: 2;
  }
}
@media (min-width: 999px) {
  .content_offers .block--elements {
    --col: 1;
  }
}

.content_advantages {
  --col: 2;
}
@media (min-width: 641px) {
  .content_advantages {
    --col: 3;
  }
}
@media (min-width: 641px) {
  .content_advantages {
    --col: 3;
  }
}
@media (min-width: 769px) {
  .content_advantages {
    --col: 5;
  }
}
@media (min-width: 1241px) {
  .content_advantages {
    --col: 6;
  }
}
.content_advantages .block--elements {
  justify-items: center;
}
.content_advantages .swiper-wrapper {
  justify-content: space-between;
}

.content_tariffs.block_html-code .block--elements {
  display: flex;
  flex-direction: column;
    margin-top: 0;
}
@media (min-width: 999px) {
  .content_tariffs.block_html-code .block--elements {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "head head" "selection selection" "content widget" "info widget";
    gap: 0 var(--g-xl);
  }
}
.content_tariffs.block_html-code .block--selection {
  grid-area: selection;
  margin-bottom: 32px;
}
.content_tariffs.block_html-code .block--head {
  grid-area: head;
}
.content_tariffs.block_html-code .block--widget {
  grid-area: widget;
}
.content_tariffs.block_html-code .block--content {
  grid-area: content;
  padding: var(--g-s) 0;
}
.content_tariffs.block_html-code .block--info {
  margin-top: var(--g-s);
  grid-area: info;
  color: var(--text-neutral-tertiary);
}

.content_faq .block--wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--g-xl);
}
@media (min-width: 999px) {
  .content_faq .block--wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--g-xl) var(--g-xl);
  }
}
.content_faq .block--image {
  grid-column: 1;
}
.content_faq .block--image:not(:has(img)) {
  display: none;
}
.content_faq .block--image img {
  aspect-ratio: 16/9;
  height: auto;
  position: sticky;
  top: var(--headerHeight);
}
.content_faq .block--content {
  grid-column: 2;
}
.content_special {
  --col: 1;
}
@media (min-width: 640px) {
  .content_special {
    --col: 1;
  }
}
@media (min-width: 998px) {
  .content_special {
    --col: 1;
  }
}
@media (min-width: 1440px) {
  .content_special {
    --col: 1;
  }
}

.content_cards-fest {
  --col: 1;
  overflow: hidden;
}
@media (min-width: 769px) {
  .content_cards-fest .block--elements {
    --col: 2;
  }
}

.content_scheme {
  --scheme-mini-left: 0%;
  --scheme-mini-right: 100%;
  --scheme-mini-width: 100%;
  overflow: hidden;
}
.content_scheme .block--wrapper {
  padding: var(--g-container-vertical) 0;
}
.content_scheme .block--content {
  position: relative;
}
.content_scheme .scheme_svg {
  position: relative;
}
@media (max-width: 1472px) {
  .content_scheme .scheme_svg {
    overflow-x: auto;
  }
}
.content_scheme svg {
  max-width: inherit;
  aspect-ratio: 1920/1080;
}
@media (max-width: 768px) {
  .content_scheme svg {
    height: 80vh;
  }
}
.content_scheme svg image {
  width: 100%;
  height: 100%;
}
.content_scheme .placemark {
  translate: 0 -72px;
}
.content_scheme .scheme--tooltip {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 6;
  padding: 4px;
  background: #E54A4A;
  transform: translate(0, calc(var(--scheme-pin-height, 72px) * -1));
  max-width: 160px;
  width: max-content;
}
.content_scheme .scheme--tooltip:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: -5px;
  width: 5px;
  background-image: url("data:image/svg+xml,%3Csvg width='5' height='36' viewBox='0 0 5 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0H4.66919L0 18L4.66919 36H0V0Z' fill='%23E54A4A'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left center;
}
.content_scheme .scheme--tooltip p {
  text-transform: uppercase;
  color: #FFFFFF;
  font-weight: 600;
  line-height: 1.2;
  font-size: 50%;
}
@media (min-width: 769px) {
  .content_scheme .scheme--tooltip p {
    font-size: 0.625vw;
  }
}
.content_scheme .scheme-mini {
  position: absolute;
  bottom: var(--g-m);
  left: 50%;
  translate: -50% 0;
  width: 33%;
  z-index: 5;
  border: 1px solid #51371F;
  background: #FFFFFF;
  box-shadow: 0px 2px 4px 0px rgba(81, 55, 31, 0.1411764706), 0px 7px 7px 0px rgba(81, 55, 31, 0.1215686275), 0px 17px 10px 0px rgba(81, 55, 31, 0.0705882353), 0px 30px 12px 0px rgba(81, 55, 31, 0.0196078431), 0px 46px 13px 0px rgba(81, 55, 31, 0);
  pointer-events: none;
}
@media (min-width: 769px) {
  .content_scheme .scheme-mini {
    display: none;
  }
}
.content_scheme .scheme-mini__image {
  display: block;
  width: 100%;
  height: auto;
}
.content_scheme .scheme-mini__shade {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.55);
  -webkit-mask-image: linear-gradient(90deg, #000 0, #000 var(--scheme-mini-left), transparent var(--scheme-mini-left), transparent var(--scheme-mini-right), #000 var(--scheme-mini-right), #000 100%);
  mask-image: linear-gradient(90deg, #000 0, #000 var(--scheme-mini-left), transparent var(--scheme-mini-left), transparent var(--scheme-mini-right), #000 var(--scheme-mini-right), #000 100%);
}
.content_scheme .scheme-mini__viewport {
  position: absolute;
  top: -2px;
  bottom: -2px;
  left: var(--scheme-mini-left);
  width: var(--scheme-mini-width);
  border: 2px solid #E54A4A;
  box-sizing: border-box;
}
.content_scheme .scheme-mini__viewport:after, .content_scheme .scheme-mini__viewport:before {
  font-family: "icomoon";
  position: absolute;
  bottom: 0;
  color: var(--text-accent-secondary);
  z-index: 5;
  font-size: 6vw;
  aspect-ratio: 1/1;
  display: flex;
}
.content_scheme .scheme-mini__viewport:after {
  content: "\e904";
  right: 0;
}
.content_scheme .scheme-mini__viewport:before {
  content: "\e903";
  left: 0;
}

.vertical-cards {
  overflow: hidden;
}
.vertical-cards .block--elements {
  position: relative;
  --vertical-cards-line-progress: 0;
  --vertical-cards-line-softness: 18%;
}
.vertical-cards .block--elements:after {
  content: "";
  position: absolute;
  width: calc(100% + var(--container));
  background: var(--bg-illustration);
  height: 1px;
  top: 0;
  left: 0;
}
@media (min-width: 769px) {
  .vertical-cards .block--elements:after {
    left: 50%;
    top: 0;
    translate: -50%;
    width: 1px;
    height: 100%;
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
    mask-image: linear-gradient(to bottom, var(--bg-illustration) 0, var(--bg-illustration) calc(var(--vertical-cards-line-progress) * 100%), var(--bg-illustration) calc(var(--vertical-cards-line-progress) * 100% + var(--vertical-cards-line-softness) * 0.45), transparent calc(var(--vertical-cards-line-progress) * 100% + var(--vertical-cards-line-softness)), transparent 100%);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-image: linear-gradient(to bottom, var(--bg-illustration) 0, var(--bg-illustration) calc(var(--vertical-cards-line-progress) * 100%), var(--bg-illustration) calc(var(--vertical-cards-line-progress) * 100% + var(--vertical-cards-line-softness) * 0.45), transparent calc(var(--vertical-cards-line-progress) * 100% + var(--vertical-cards-line-softness)), transparent 100%);
  }
}
.vertical-cards .card {
  gap: 24px;
  transition: 0.3s ease-out;
}
@media (min-width: 769px) {
  .vertical-cards .card {
    display: grid;
    grid-template-columns: 6fr 6fr;
    grid-template-areas: " image content";
    gap: 0;
  }
}
@media (max-width: 768px) {
  .vertical-cards .card {
    padding-top: 160px;
  }
}
.vertical-cards .card--content {
  display: flex;
  justify-content: center;
  gap: clamp(18px, 18px + 6 * (100vw - 992px) / 448, 24px);
}
@media (min-width: 769px) {
  .vertical-cards .card--content {
    position: relative;
    grid-area: content;
  }
}
.vertical-cards .card--content:after {
  content: "";
  position: absolute;
  left: 50%;
  width: 1px;
  height: 120px;
  background: var(--bg-illustration);
  top: 0;
  translate: -50% 0;
}
@media (min-width: 769px) {
  .vertical-cards .card--content:after {
    left: auto;
    right: 0;
    width: 17%;
    height: 1px;
    top: 50%;
    translate: 0 -50%;
  }
}
.vertical-cards .card--content:before {
  content: "";
  position: absolute;
  width: 16px;
  aspect-ratio: 1/1;
  border-radius: 50px;
  background: var(--bg-illustration);
  left: 50%;
  top: 110px;
  translate: -50% 0;
}
@media (min-width: 769px) {
  .vertical-cards .card--content:before {
    left: auto;
    right: 17%;
    top: 50%;
    translate: 0 -50%;
    width: 24px;
  }
}
.vertical-cards .card--image {
  flex-shrink: 0;
}
@media (min-width: 769px) {
  .vertical-cards .card--image {
    grid-area: image;
  }
}
.vertical-cards .card--title {
  font-size: var(--fs-subhead-2);
  line-height: var(--lh-subhead-2);
  display: flex;
}
.vertical-cards .card--text {
  display: flex;
}
@media (min-width: 769px) {
  .vertical-cards .card:nth-child(odd) {
    grid-template-areas: "  content image";
  }
  .vertical-cards .card:nth-child(odd) .card--content {
    padding-right: 33%;
  }
  .vertical-cards .card:nth-child(odd) .card--image {
    padding-left: 20%;
  }
}
@media (min-width: 769px) {
  .vertical-cards .card:nth-child(even) .card--image {
    padding-right: 20%;
  }
  .vertical-cards .card:nth-child(even) .card--content {
    padding-left: 33%;
  }
  .vertical-cards .card:nth-child(even) .card--content:after {
    left: 0;
    right: auto;
  }
  .vertical-cards .card:nth-child(even) .card--content:before {
    left: 17%;
    right: auto;
  }
}

.hero-content {
  position: absolute;
  left: auto;
  right: 0;
  top: calc(var(--headerHeight) - 1px);
  bottom: 0;
  z-index: 2;
  display: flex;
  color: var(--text-fixed-light-primary);
  width: 100%;
  pointer-events: none;
}
@media (min-width: 1140px) {
  .hero-content {
    width: auto;
  }
}

.hero--info {
  width: 100%;
  height: max-content;
}
@media (min-width: 1140px) {
  .hero--info {
    width: 219px;
  }
}
.hero--info .item {
  border-bottom: 1px solid var(--line-quatemary-filled);
  padding: var(--g-s) 8px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 413px) {
  .hero--info .item {
    padding: var(--g-s);
  }
}
@media (min-width: 1140px) {
  .hero--info .item {
    width: 219px;
    border-left: 1px solid var(--line-quatemary-filled);
  }
}
.hero--info .item:not(:first-child) {
  border-left: 1px solid var(--line-quatemary-filled);
}
.hero--info .item p {
  font-size: var(--fs-body-1);
  line-height: var(--lh-body-1);
}
.hero--info .item span {
  font-family: "TT Tricks", sans-serif;
}
@media (max-width: 1140px) {
  .hero--info-secondary {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.hero--info-secondary .item {
  gap: var(--g-xxs);
}
.hero--info-secondary .item p {
  color: var(--text-softlight-primary);
}
@media (max-width: 575px) {
  .hero--info-secondary .item p {
    font-size: var(--fs-caption-2);
  }
}
.hero--info-secondary .item span {
  font-size: var(--fs-body-2);
  line-height: var(--lh-body-2);
}
@media (max-width: 1140px) {
  .hero--info-main {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}
.hero--info-main span {
  font-size: var(--fs-heading-1);
  line-height: var(--lh-heading-1);
}
@media (min-width: 999px) {
  .hero--info-main span {
    font-size: var(--fs-heading-2);
    line-height: var(--lh-heading-2);
  }
}

.hero-decor {
  width: var(--header-side-width);
  border-left: 1px solid var(--line-quatemary-filled);
  padding: var(--g-s) 0;
  writing-mode: vertical-lr;
  text-orientation: upright;
  height: 100%;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
/*.hero-decor span {*/
/*  position: sticky;*/
/*  top: calc(var(--headerHeight) + var(--g-s));*/
/*}*/

.content_calendar.block_element .block--elements {
  display: grid;
  border: 1px solid var(--line-quatemary-filled);
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 1240px) {
  .content_calendar.block_element .block--elements {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1240px) {
  .content_calendar.block_element .block--elements .card:nth-child(7),
  .content_calendar.block_element .block--elements .card:nth-child(8),
  .content_calendar.block_element .block--elements .card:nth-child(9),
  .content_calendar.block_element .block--elements .card:nth-child(12) {
    grid-column: span 2;
  }
}
@media (max-width: 1239px) {
  .content_calendar.block_element .block--elements .card:nth-child(7) .card--image img,
  .content_calendar.block_element .block--elements .card:nth-child(8) .card--image img,
  .content_calendar.block_element .block--elements .card:nth-child(9) .card--image img,
  .content_calendar.block_element .block--elements .card:nth-child(12) .card--image img {
    object-fit: cover;
    object-position: center;
  }
}


.creator {
    overflow: hidden;
    border-bottom: 1px solid var(--line-secondary);
    margin: var(--g-container-vertical) 0;
}
.creator .block--head {
    align-items: center;
    text-align: center;
    margin-bottom: 48px;
}
@media (min-width: 1241px) {
    .creator .block--head {
        margin-bottom: var(--g-m);
    }
}
.creator .block--head_title h2 {
    display: none;
    opacity: 0;
    transition: 0.5s var(--transition);
}
.creator .block--head_title h2.is_active {
    display: flex;
    opacity: 1;
}
.creator .block--head_subtitle p {
    font-size: var(--fs-subhead-2-2);
    display: none;
    opacity: 0;
    transition: 0.5s var(--transition);
}
.creator .block--head_subtitle p.is_active {
    display: flex;
    opacity: 1;
}
.creator .block--wrapper {
    position: relative;
    padding: 0 var(--container) 32px;
}
@media (min-width: 1241px) {
    .creator .block--wrapper {
        padding: 56px var(--container) 40px;
    }
}
.creator .block_text {
    padding: 0 var(--container);
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    font-size: 40vw;
    filter: blur(4px);
    position: absolute;
    inset: 0;
    line-height: 1;
    z-index: -1;
    pointer-events: none;
    transition: 0.6s translate linear;
    gap: 10vh;
}
@media (min-width: 769px) {
    .creator .block_text {
        font-size: 20vw;
    }
}
.creator .block_text span:nth-child(even) {
    margin-left: auto;
}
.creator .block_text span {
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(180deg, rgba(157, 150, 128, 0.2) 0%, rgba(206, 201, 189, 0.2) 100%);
}
.creator .block--content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--g-xxs);
    position: relative;
}
.creator .block--content .circle {
    position: absolute;
    width: 100%;
    min-width: 1920px;
    top: 0;
    transition: 0.7s ease-in-out;
    z-index: 2;
}
.creator .block--content .circle svg {
    display: block;
    width: 100%;
    height: auto;
}
.creator .block--content .circle .circle-dot_fill {
    fill: var(--button-dark-brand-primary-bg-rest);
    r: 0;
}
.creator .block--content .circle .circle-dot.is_filling .circle-dot_fill {
    animation: circle-fill var(--creator-fill-duration, 5s) linear forwards;
}
.creator .block--content .circle .circle-dot.is_reset .circle-dot_fill {
    animation: circle-fill-reset var(--creator-reset-duration, 0.5s) cubic-bezier(0.4, 0, 1, 0.2) forwards;
}

@keyframes circle-fill {
    0% {
        r: 0;
        animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
    }
    80% {
        r: 11.5;
        animation-timing-function: ease-out;
    }
    86% {
        r: 16.5;
        animation-timing-function: ease-in-out;
    }
    92% {
        r: 10;
        animation-timing-function: ease-in-out;
    }
    97% {
        r: 13.2;
    }
    100% {
        r: 11.5;
    }
}
@keyframes circle-fill-reset {
    from {
        r: 11.5;
    }
    to {
        r: 0;
    }
}
.creator .block--content .images {
    aspect-ratio: 231/416;
    width: 100%;
    max-width: 142px;
    position: relative;
    margin-top: 80px;
    box-shadow: 10.82px 6.49px 27.4px 0px rgba(122, 116, 98, 0.4509803922), 42.55px 24.52px 49.76px 0px rgba(122, 116, 98, 0.3882352941), 96.63px 55.53px 67.07px 0px rgba(122, 116, 98, 0.231372549), 171.63px 99.52px 79.33px 0px rgba(122, 116, 98, 0.0705882353), 268.27px 155.05px 86.54px 0px rgba(122, 116, 98, 0.0117647059);
    border-radius: 100px;
}
.creator .block--content .images:after {
    content: "";
    position: absolute;
    translate: -50% 0;
    left: 50%;
    bottom: 100%;
    width: 1px;
    background: #B3A48D;
    height: 66px;
}
.creator .block--content .images_item {
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='231' height='416' viewBox='0 0 231 416' fill='none'%3E%3Crect width='231' height='416' rx='115.5' fill='%23E54A4A'/%3E%3C/svg%3E");
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center;
    position: absolute;
    inset: 0;
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    transition: 0.7s 0.7s ease-in-out;
    will-change: transform;
}
.creator .block--content .images_item img {
    object-fit: cover;
}
.creator .block--content .images_item.is_active {
    z-index: 1;
    transition: 0.7s ease-in-out;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.creator .block--content .content {
    max-width: 640px;
    text-align: center;
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-top: var(--g-s);
}
.creator .block--content .content_item {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex-shrink: 0;
    width: 100%;
    height: auto;
}
.creator .block--content .content_item:not(.swiper-slide-active) {
    opacity: 0 !important;
}
.creator .block--content .content p {
    font-size: var(--fs-subhead-2);
    line-height: var(--lh-subhead-2);
    font-weight: 500;
    text-transform: uppercase;
}
.creator .block--content .content span {
    line-height: 1.5;
}
.creator .controls {
    gap: 4px;
    border: 1px solid var(--line-tertiary);
    border-radius: 100px;
    overflow: hidden;
    height: max-content;
    margin-top: auto;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 5;
}
.creator .controls .swiper--prev,
.creator .controls .swiper--next {
    position: static;
    min-width: 36px;
    min-height: 36px;
    width: 36px;
    height: 36px;
}
.creator .controls .swiper-pagination {
    position: static;
    padding: 0 12px;
    font-size: var(--fs-body-2);
    line-height: 1;
    color: var(--text-neutral-secondary);
    gap: 4px;
}
.creator .controls .swiper-pagination-current {
    color: var(--text-neutral-primary);
}