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
{
    overflow: visible;

    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    height: 0;
}

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

a
{
    background-color: transparent;
}

abbr[title]
{
            text-decoration: underline;
            text-decoration: underline dotted;

    border-bottom: none;

    -webkit-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: -.25em;
}

sup
{
    top: -.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: .35em .75em .625em;
}

legend
{
    display: table;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 100%;

    white-space: normal;

    color: inherit;
}

progress
{
    vertical-align: baseline;
}

textarea
{
    overflow: auto;
}

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

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

[type='search']
{
    outline-offset: -2px;

    -webkit-appearance: textfield;
}

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

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

    -webkit-appearance: button;
}

details
{
    display: block;
}

summary
{
    display: list-item;
}

template
{
    display: none;
}

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

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

button
{
    font: inherit;

    cursor: pointer;
    text-decoration: none;

    color: inherit;
    border: none;
    background: transparent;
}

a
{
    cursor: pointer;
    text-decoration: none;

    color: inherit;
}

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

html
{
    --container: 1180px;
    --container-header: 1180px;
    --container-footer: 1180px;
    --c-bg-accent: #8561cc;
    --c-bg-accent-hover: #653aba;
    --c-bg-accent-light: #fcfaee;
    --c-bg-light: #fcfaee;
    --c-bg-dark: #143346;
    --c-bg-gray: rgba(21, 44, 58, .02);
    --c-bg-white: #fff;
    --c-text-dark: #202223;
    --c-text-secondary: #6d7175;
    --c-text-ghost: #8c9196;
    --c-text-white: #fff;
    --c-text-accent: #8561cc;
    --c-text-hover: #653aba;
    --c-success: #008060;
    --c-error: #d72c0d;
    --shadow-card: 0 4px 16px rgba(0, 0, 0, .08);
    --border-color: rgba(21, 44, 58, .08);
    --border-corner-8: 8px;
    --border-corner-6: 6px;
    --border-corner-4: 4px;
    --border-corner-input: 6px;
    --g-20: 20px;
    --g-24: 24px;
    --g-32: 32px;
    --g-40: clamp(32px, calc(32px + (40 - 32) * ((100vw - 1024px) / (1920 - 1024))), 40px);
    --g-48: clamp(32px, calc(32px + (48 - 32) * ((100vw - 1024px) / (1920 - 1024))), 48px);
    --g-72: clamp(32px, calc(32px + (72 - 32) * ((100vw - 1024px) / (1920 - 1024))), 72px);
    --g-80: 80px;
    --g-84: 84px;
    --g-100: 100px;
    --g-120: 120px;
    --fs-16: 16px;
    --fs-18: clamp(16px, calc(16px + (18 - 16) * ((100vw - 1024px) / (1920 - 1024))), 18px);
    --fs-20: clamp(16px, calc(16px + (20 - 16) * ((100vw - 1024px) / (1920 - 1024))), 20px);
    --fs-24: clamp(20px, calc(20px + (24 - 20) * ((100vw - 1024px) / (1920 - 1024))), 24px);
    --fs-28: clamp(22px, calc(22px + (28 - 22) * ((100vw - 1024px) / (1920 - 1024))), 28px);
    --transition: .18s ease-in-out;
}
@media (max-width: 1260px)
{
    html
    {
        --container: calc(100vw - 80px);
        --container-header: calc(100vw - 80px);
        --container-footer: calc(100vw - 80px);
    }
}
@media (max-width: 992px)
{
    html
    {
        --container: calc(100vw - 32px);
        --container-header: calc(100vw - 32px);
        --container-footer: calc(100vw - 32px);
    }
}

@font-face
{
    font-family: 'TTNormsPro';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/Norms/TTNormsPro-Regular.eot');
    src: local('TT Norms Pro Regular'), local('TTNormsPro-Regular'), url('../fonts/Norms/TTNormsPro-Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/Norms/TTNormsPro-Regular.woff2') format('woff2'), url('../fonts/Norms/TTNormsPro-Regular.woff') format('woff'), url('../fonts/Norms/TTNormsPro-Regular.ttf') format('truetype');
}

@font-face
{
    font-family: 'TTNormsPro';
    font-weight: bold;
    font-style: normal;

    src: url('TTNormsPro-Bold.eot');
    src: local('TT Norms Pro Bold'), local('TTNormsPro-Bold'), url('../fonts/Norms/TTNormsPro-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/Norms/TTNormsPro-Bold.woff2') format('woff2'), url('../fonts/Norms/TTNormsPro-Bold.woff') format('woff'), url('../fonts/Norms/TTNormsPro-Bold.ttf') format('truetype');
}

@font-face
{
    font-family: 'TTNormsPro';
    font-weight: 500;
    font-style: normal;

    src: url('TTNormsPro-Medium.eot');
    src: local('TT Norms Pro Medium'), local('TTNormsPro-Medium'), url('../fonts/Norms/TTNormsPro-Medium.eot?#iefix') format('embedded-opentype'), url('../fonts/Norms/TTNormsPro-Medium.woff2') format('woff2'), url('../fonts/Norms/TTNormsPro-Medium.woff') format('woff'), url('../fonts/Norms/TTNormsPro-Medium.ttf') format('truetype');
}

html
{
    font-family: 'TTNormsPro', sans-serif;
    font-size: clamp(16px, calc(16px + (18 - 16) * ((100vw - 1024px) / (1920 - 1024))), 18px);
    line-height: 1.5;

    color: var(--c-text-dark);

       -moz-text-size-adjust: none;
        -ms-text-size-adjust: none;
            text-size-adjust: none;
    -webkit-text-size-adjust: none;
}

.f-h1
{
    font-size: clamp(32px, calc(32px + (44 - 32) * ((100vw - 1024px) / (1920 - 1024))), 44px);
    font-weight: 700;
    line-height: 1.25;
}

.f-h2
{
    font-size: clamp(26px, calc(26px + (36 - 26) * ((100vw - 1024px) / (1920 - 1024))), 36px);
    font-weight: 700;
    line-height: 1.25;
}

@font-face
{
    font-family: 'icomoon';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/icomoon/fonts/icomoon.eot');
    src: url('../fonts/icomoon/fonts/icomoon.eot') format('embedded-opentype'), url('../fonts/icomoon/fonts/icomoon.ttf') format('truetype'), url('../fonts/icomoon/fonts/icomoon.woff') format('woff'), url('../fonts/icomoon/fonts/icomoon.svg') format('svg');
    font-display: block;
}

[class^='icon-'],
[class*=' icon-']
{
    font-family: 'icomoon' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    text-transform: none;

    speak: never;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-ic24-alarm:before
{
    content: '\e900';
}

.icon-ic24-alarm-add:before
{
    content: '\e901';
}

.icon-ic24-alert:before
{
    content: '\e902';
}

.icon-ic24-alert-full:before
{
    content: '\e903';
}

.icon-ic24-align-center:before
{
    content: '\e904';
}

.icon-ic24-align-justify:before
{
    content: '\e905';
}

.icon-ic24-align-left:before
{
    content: '\e906';
}

.icon-ic24-align-right:before
{
    content: '\e907';
}

.icon-ic24-anchor:before
{
    content: '\e908';
}

.icon-ic24-apple:before
{
    content: '\e909';
}

.icon-ic24-apps:before
{
    content: '\e90a';
}

.icon-ic24-archive:before
{
    content: '\e90b';
}

.icon-ic24-arrow-circle-down:before
{
    content: '\e90c';
}

.icon-ic24-arrow-circle-left:before
{
    content: '\e90d';
}

.icon-ic24-arrow-circle-right:before
{
    content: '\e90e';
}

.icon-ic24-arrow-circle-top:before
{
    content: '\e90f';
}

.icon-ic24-arrow-down:before
{
    content: '\e910';
}

.icon-ic24-arrow-left:before
{
    content: '\e911';
}

.icon-ic24-arrow-right:before
{
    content: '\e912';
}

.icon-ic24-arrow-up:before
{
    content: '\e913';
}

.icon-ic24-aspect-ratio:before
{
    content: '\e914';
}

.icon-ic24-attachment:before
{
    content: '\e915';
}

.icon-ic24-audio-next:before
{
    content: '\e916';
}

.icon-ic24-audio-prev:before
{
    content: '\e917';
}

.icon-ic24-battery-charging:before
{
    content: '\e918';
}

.icon-ic24-battery-empty:before
{
    content: '\e919';
}

.icon-ic24-battery-full:before
{
    content: '\e91a';
}

.icon-ic24-battery-low:before
{
    content: '\e91b';
}

.icon-ic24-battery-medium:before
{
    content: '\e91c';
}

.icon-ic24-block:before
{
    content: '\e91d';
}

.icon-ic24-bluetooth:before
{
    content: '\e91e';
}

.icon-ic24-bolt:before
{
    content: '\e91f';
}

.icon-ic24-book:before
{
    content: '\e920';
}

.icon-ic24-bookmark:before
{
    content: '\e921';
}

.icon-ic24-bookmark-add:before
{
    content: '\e922';
}

.icon-ic24-bookmark-full:before
{
    content: '\e923';
}

.icon-ic24-border-all:before
{
    content: '\e924';
}

.icon-ic24-border-bottom:before
{
    content: '\e925';
}

.icon-ic24-border-horizontal:before
{
    content: '\e926';
}

.icon-ic24-border-inner:before
{
    content: '\e927';
}

.icon-ic24-border-left:before
{
    content: '\e928';
}

.icon-ic24-border-outline:before
{
    content: '\e929';
}

.icon-ic24-border-right:before
{
    content: '\e92a';
}

.icon-ic24-border-style:before
{
    content: '\e92b';
}

.icon-ic24-border-top:before
{
    content: '\e92c';
}

.icon-ic24-border-vertical:before
{
    content: '\e92d';
}

.icon-ic24-brightness-auto:before
{
    content: '\e92e';
}

.icon-ic24-brightness-high:before
{
    content: '\e92f';
}

.icon-ic24-brightness-low:before
{
    content: '\e930';
}

.icon-ic24-brightness-medium:before
{
    content: '\e931';
}

.icon-ic24-bug:before
{
    content: '\e932';
}

.icon-ic24-bulb:before
{
    content: '\e933';
}

.icon-ic24-calendar:before
{
    content: '\e934';
}

.icon-ic24-calendar-add:before
{
    content: '\e935';
}

.icon-ic24-calendar-days:before
{
    content: '\e936';
}

.icon-ic24-calendar-edit:before
{
    content: '\e937';
}

.icon-ic24-calendar-remove:before
{
    content: '\e938';
}

.icon-ic24-calendar-select-day:before
{
    content: '\e939';
}

.icon-ic24-camera:before
{
    content: '\e93a';
}

.icon-ic24-car:before
{
    content: '\e93b';
}

.icon-ic24-chart-bar:before
{
    content: '\e93c';
}

.icon-ic24-chart-pie:before
{
    content: '\e93d';
}

.icon-ic24-chat:before
{
    content: '\e93e';
}

.icon-ic24-check:before
{
    content: '\e93f';
}

.icon-ic24-chevron-down:before
{
    content: '\e940';
}

.icon-ic24-chevron-left:before
{
    content: '\e941';
}

.icon-ic24-chevron-right:before
{
    content: '\e942';
}

.icon-ic24-chevron-up:before
{
    content: '\e943';
}

.icon-ic24-close:before
{
    content: '\e944';
}

.icon-ic24-cloud:before
{
    content: '\e945';
}

.icon-ic24-column-2-vertical:before
{
    content: '\e946';
}

.icon-ic24-comment:before
{
    content: '\e947';
}

.icon-ic24-comment-add:before
{
    content: '\e948';
}

.icon-ic24-company:before
{
    content: '\e949';
}

.icon-ic24-copy:before
{
    content: '\e94a';
}

.icon-ic24-credit-card:before
{
    content: '\e94b';
}

.icon-ic24-crop:before
{
    content: '\e94c';
}

.icon-ic24-dashboard:before
{
    content: '\e94d';
}

.icon-ic24-delete:before
{
    content: '\e94e';
}

.icon-ic24-desktop:before
{
    content: '\e94f';
}

.icon-ic24-difference:before
{
    content: '\e950';
}

.icon-ic24-direction:before
{
    content: '\e951';
}

.icon-ic24-dns:before
{
    content: '\e952';
}

.icon-ic24-dollar:before
{
    content: '\e953';
}

.icon-ic24-download:before
{
    content: '\e954';
}

.icon-ic24-drag-indicator:before
{
    content: '\e955';
}

.icon-ic24-edit:before
{
    content: '\e956';
}

.icon-ic24-email:before
{
    content: '\e957';
}

.icon-ic24-email-alt:before
{
    content: '\e958';
}

.icon-ic24-equalizer:before
{
    content: '\e959';
}

.icon-ic24-euro:before
{
    content: '\e95a';
}

.icon-ic24-explore:before
{
    content: '\e95b';
}

.icon-ic24-extension:before
{
    content: '\e95c';
}

.icon-ic24-facebook:before
{
    content: '\e95d';
}

.icon-ic24-file:before
{
    content: '\e95e';
}

.icon-ic24-file-add:before
{
    content: '\e95f';
}

.icon-ic24-file-edit:before
{
    content: '\e960';
}

.icon-ic24-file-remove:before
{
    content: '\e961';
}

.icon-ic24-filter:before
{
    content: '\e962';
}

.icon-ic24-flag:before
{
    content: '\e963';
}

.icon-ic24-flip-to-back:before
{
    content: '\e964';
}

.icon-ic24-flip-to-front:before
{
    content: '\e965';
}

.icon-ic24-folder:before
{
    content: '\e966';
}

.icon-ic24-folder-add:before
{
    content: '\e967';
}

.icon-ic24-format-bold:before
{
    content: '\e968';
}

.icon-ic24-format-indent-decrease:before
{
    content: '\e969';
}

.icon-ic24-format-indent-increase:before
{
    content: '\e96a';
}

.icon-ic24-format-italic:before
{
    content: '\e96b';
}

.icon-ic24-format-line-spacing:before
{
    content: '\e96c';
}

.icon-ic24-format-strikethrough:before
{
    content: '\e96d';
}

.icon-ic24-format-underline:before
{
    content: '\e96e';
}

.icon-ic24-franc:before
{
    content: '\e96f';
}

.icon-ic24-fullscreen:before
{
    content: '\e970';
}

.icon-ic24-fullscreen-exit:before
{
    content: '\e971';
}

.icon-ic24-functions:before
{
    content: '\e972';
}

.icon-ic24-globe:before
{
    content: '\e973';
}

.icon-ic24-google:before
{
    content: '\e974';
}

.icon-ic24-gps:before
{
    content: '\e975';
}

.icon-ic24-gps-fixed:before
{
    content: '\e976';
}

.icon-ic24-gps-off:before
{
    content: '\e977';
}

.icon-ic24-health:before
{
    content: '\e978';
}

.icon-ic24-heart:before
{
    content: '\e979';
}

.icon-ic24-heart-full:before
{
    content: '\e97a';
}

.icon-ic24-help:before
{
    content: '\e97b';
}

.icon-ic24-home:before
{
    content: '\e97c';
}

.icon-ic24-horizontal-align-center:before
{
    content: '\e97d';
}

.icon-ic24-horizontal-align-left:before
{
    content: '\e97e';
}

.icon-ic24-horizontal-align-right:before
{
    content: '\e97f';
}

.icon-ic24-hourglass-empty:before
{
    content: '\e980';
}

.icon-ic24-hourglass-full:before
{
    content: '\e981';
}

.icon-ic24-hourglass-progress:before
{
    content: '\e982';
}

.icon-ic24-import-export:before
{
    content: '\e983';
}

.icon-ic24-inbox:before
{
    content: '\e984';
}

.icon-ic24-info:before
{
    content: '\e985';
}

.icon-ic24-insert-emoticon:before
{
    content: '\e986';
}

.icon-ic24-instagram:before
{
    content: '\e987';
}

.icon-ic24-intersect:before
{
    content: '\e988';
}

.icon-ic24-invert-color:before
{
    content: '\e989';
}

.icon-ic24-key:before
{
    content: '\e98a';
}

.icon-ic24-keyboard:before
{
    content: '\e98b';
}

.icon-ic24-label:before
{
    content: '\e98c';
}

.icon-ic24-layer-align-bottom-center:before
{
    content: '\e98d';
}

.icon-ic24-layer-align-horizontal:before
{
    content: '\e98e';
}

.icon-ic24-layer-align-left-center:before
{
    content: '\e98f';
}

.icon-ic24-layer-align-right-center:before
{
    content: '\e990';
}

.icon-ic24-layer-align-top-center:before
{
    content: '\e991';
}

.icon-ic24-layer-align-vertical:before
{
    content: '\e992';
}

.icon-ic24-layers:before
{
    content: '\e993';
}

.icon-ic24-link:before
{
    content: '\e994';
}

.icon-ic24-linkedin:before
{
    content: '\e995';
}

.icon-ic24-list-bullet:before
{
    content: '\e996';
}

.icon-ic24-lock:before
{
    content: '\e997';
}

.icon-ic24-map:before
{
    content: '\e998';
}

.icon-ic24-medium:before
{
    content: '\e999';
}

.icon-ic24-menu:before
{
    content: '\e99a';
}

.icon-ic24-mic:before
{
    content: '\e99b';
}

.icon-ic24-mic-off:before
{
    content: '\e99c';
}

.icon-ic24-minus:before
{
    content: '\e99d';
}

.icon-ic24-minus-circle:before
{
    content: '\e99e';
}

.icon-ic24-mobile:before
{
    content: '\e99f';
}

.icon-ic24-more-hor:before
{
    content: '\e9a0';
}

.icon-ic24-more-ver:before
{
    content: '\e9a1';
}

.icon-ic24-mouse:before
{
    content: '\e9a2';
}

.icon-ic24-navigation:before
{
    content: '\e9a3';
}

.icon-ic24-near-me:before
{
    content: '\e9a4';
}

.icon-ic24-notification:before
{
    content: '\e9a5';
}

.icon-ic24-opacity:before
{
    content: '\e9a6';
}

.icon-ic24-open-in-browser:before
{
    content: '\e9a7';
}

.icon-ic24-open-in-new:before
{
    content: '\e9a8';
}

.icon-ic24-parking:before
{
    content: '\e9a9';
}

.icon-ic24-pause:before
{
    content: '\e9aa';
}

.icon-ic24-pause-circle:before
{
    content: '\e9ab';
}

.icon-ic24-performance:before
{
    content: '\e9ac';
}

.icon-ic24-phone:before
{
    content: '\e9ad';
}

.icon-ic24-phone-callback:before
{
    content: '\e9ae';
}

.icon-ic24-phone-forwarded:before
{
    content: '\e9af';
}

.icon-ic24-phone-in-talk:before
{
    content: '\e9b0';
}

.icon-ic24-phone-missed:before
{
    content: '\e9b1';
}

.icon-ic24-phone-paused:before
{
    content: '\e9b2';
}

.icon-ic24-photo:before
{
    content: '\e9b3';
}

.icon-ic24-photo-add:before
{
    content: '\e9b4';
}

.icon-ic24-photos:before
{
    content: '\e9b5';
}

.icon-ic24-plane:before
{
    content: '\e9b6';
}

.icon-ic24-play:before
{
    content: '\e9b7';
}

.icon-ic24-play-circle:before
{
    content: '\e9b7';
}

.icon-ic24-plugin:before
{
    content: '\e9b9';
}

.icon-ic24-plus:before
{
    content: '\e9ba';
}

.icon-ic24-plus-circle:before
{
    content: '\e9bb';
}

.icon-ic24-pound:before
{
    content: '\e9bc';
}

.icon-ic24-protect:before
{
    content: '\e9bd';
}

.icon-ic24-publish:before
{
    content: '\e9be';
}

.icon-ic24-quote:before
{
    content: '\e9bf';
}

.icon-ic24-redo:before
{
    content: '\e9c0';
}

.icon-ic24-refresh:before
{
    content: '\e9c1';
}

.icon-ic24-remove:before
{
    content: '\e9c2';
}

.icon-ic24-reply:before
{
    content: '\e9c3';
}

.icon-ic24-report:before
{
    content: '\e9c4';
}

.icon-ic24-rotate:before
{
    content: '\e9c5';
}

.icon-ic24-ruble:before
{
    content: '\e9c6';
}

.icon-ic24-search:before
{
    content: '\e9c7';
}

.icon-ic24-select-all:before
{
    content: '\e9c8';
}

.icon-ic24-settings:before
{
    content: '\e9c9';
}

.icon-ic24-share:before
{
    content: '\e9ca';
}

.icon-ic24-shopping-cart:before
{
    content: '\e9cb';
}

.icon-ic24-shuffle:before
{
    content: '\e9cc';
}

.icon-ic24-slider:before
{
    content: '\e9cd';
}

.icon-ic24-sort:before
{
    content: '\e9ce';
}

.icon-ic24-star:before
{
    content: '\e9cf';
}

.icon-ic24-star-empty:before
{
    content: '\e9d0';
}

.icon-ic24-stopwatch:before
{
    content: '\e9d1';
}

.icon-ic24-substract:before
{
    content: '\e9d2';
}

.icon-ic24-success:before
{
    content: '\e9d3';
}

.icon-ic24-suitcase:before
{
    content: '\e9d4';
}

.icon-ic24-sync:before
{
    content: '\e9d5';
}

.icon-ic24-tablet:before
{
    content: '\e9d6';
}

.icon-ic24-tag:before
{
    content: '\e9d7';
}

.icon-ic24-text-fields:before
{
    content: '\e9d8';
}

.icon-ic24-thumb-down:before
{
    content: '\e9d9';
}

.icon-ic24-thumb-up:before
{
    content: '\e9da';
}

.icon-ic24-ticket:before
{
    content: '\e9db';
}

.icon-ic24-time:before
{
    content: '\e9dc';
}

.icon-ic24-transaction:before
{
    content: '\e9dd';
}

.icon-ic24-trending-down:before
{
    content: '\e9de';
}

.icon-ic24-trending-up:before
{
    content: '\e9df';
}

.icon-ic24-trophy:before
{
    content: '\e9e0';
}

.icon-ic24-turn-off:before
{
    content: '\e9e1';
}

.icon-ic24-tv:before
{
    content: '\e9e2';
}

.icon-ic24-twitter:before
{
    content: '\e9e3';
}

.icon-ic24-undo:before
{
    content: '\e9e4';
}

.icon-ic24-unfold-less:before
{
    content: '\e9e5';
}

.icon-ic24-unfold-more:before
{
    content: '\e9e6';
}

.icon-ic24-union:before
{
    content: '\e9e7';
}

.icon-ic24-unlink:before
{
    content: '\e9e8';
}

.icon-ic24-unlock:before
{
    content: '\e9e9';
}

.icon-ic24-upload:before
{
    content: '\e9ea';
}

.icon-ic24-user:before
{
    content: '\e9eb';
}

.icon-ic24-user-add:before
{
    content: '\e9ec';
}

.icon-ic24-user-delete:before
{
    content: '\e9ed';
}

.icon-ic24-users:before
{
    content: '\e9ee';
}

.icon-ic24-verified:before
{
    content: '\e9ef';
}

.icon-ic24-vertical-align-bottom:before
{
    content: '\e9f0';
}

.icon-ic24-vertical-align-center:before
{
    content: '\e9f1';
}

.icon-ic24-vertical-align-top:before
{
    content: '\e9f2';
}

.icon-ic24-video:before
{
    content: '\e9f3';
}

.icon-ic24-view-boxes:before
{
    content: '\e9f4';
}

.icon-ic24-view-day:before
{
    content: '\e9f5';
}

.icon-ic24-view-lp:before
{
    content: '\e9f6';
}

.icon-ic24-view-schedule:before
{
    content: '\e9f7';
}

.icon-ic24-view-slider:before
{
    content: '\e9f8';
}

.icon-ic24-view-table:before
{
    content: '\e9f9';
}

.icon-ic24-view-three-columns:before
{
    content: '\e9fa';
}

.icon-ic24-view-two-columns:before
{
    content: '\e9fb';
}

.icon-ic24-view-week:before
{
    content: '\e9fc';
}

.icon-ic24-visibility:before
{
    content: '\e9fd';
}

.icon-ic24-visibility-off:before
{
    content: '\e9fe';
}

.icon-ic24-voice:before
{
    content: '\e9ff';
}

.icon-ic24-volume-max:before
{
    content: '\ea00';
}

.icon-ic24-volume-mid:before
{
    content: '\ea01';
}

.icon-ic24-volume-min:before
{
    content: '\ea02';
}

.icon-ic24-volume-off:before
{
    content: '\ea03';
}

.icon-ic24-wallet:before
{
    content: '\ea04';
}

.icon-ic24-warning:before
{
    content: '\ea05';
}

.icon-ic24-wifi:before
{
    content: '\ea06';
}

.icon-ic24-yen:before
{
    content: '\ea07';
}

.icon-ic24-zoom-in:before
{
    content: '\ea08';
}

.icon-ic24-zoom-out:before
{
    content: '\ea09';
}

img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}

a[href],
.button
{
    cursor: pointer;
    -webkit-transition: .3s ease-out;
         -o-transition: .3s ease-out;
            transition: .3s ease-out;

    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
}

.disabled
{
    cursor: default;
    pointer-events: none;

    opacity: .5;
}

.hidden
{
    display: none;
}

.ux_col
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    padding: 180px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 24px;
}

.ui_grid_head
{
    margin: 24px auto;
}

.ui_grid_buttons
{
    display: grid;

    max-width: 1440px;
    margin: 24px auto;
    padding: 24px;

    grid-template-columns: repeat(3, 1fr);
    place-items: center;
    gap: 24px;
}
.ui_grid_buttons_title
{
    margin: 48px 24px 24px;

    grid-column: span 3;
}
.ui_grid_buttons .theme-dark
{
    padding: 24px;

    background-color: black;
}

/* Common styles for button */
.button
{
    font-size: clamp(14px, calc(14px + (18 - 14) * ((100vw - 1024px) / (1920 - 1024))), 18px);
    line-height: 1.5;

    position: relative;
    z-index: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    width: -webkit-fit-content;
    width:    -moz-fit-content;
    width:         fit-content;
    padding: 12px 24px;

    cursor: pointer;
    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    border: 2px solid transparent;
    border-radius: var(--border-corner-8);

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 4px;
}
.button span
{
    font-size: clamp(14px, calc(14px + (18 - 14) * ((100vw - 1024px) / (1920 - 1024))), 18px);
    font-weight: 500;
    line-height: 1.33;

    position: relative;
    z-index: 2;

    text-align: center;

    color: inherit;
}
.button span[class^='icon'],
.button span[class*=' icon-'],
.button svg[class^='icon'],
.button svg[class*='icon']
{
    line-height: 1.5;

    width: 1.5em;
    height: 1.5em;

    color: inherit;
    display: flex;
    align-items: center;
    justify-content: center;

    aspect-ratio: 1 / 1;

}
.button span[class^='icon']:only-child,
.button span[class*=' icon-']:only-child,
.button svg[class^='icon']:only-child,
.button svg[class*='icon']:only-child
{
    margin: 0 -0.75em;
}
.button svg
{
    max-width: fit-content !important;
}

/* Button appearance */
.button.button-filled
{
    position: relative;

    color: var(--filled-c-base);
    border-color: var(--filled-bc-base);
    background: var(--filled-bgc-base);
}
.button.button-filled:hover,
.button.button-filled:focus,
.button.button-filled:active
{
    color: var(--filled-c-hover);
    border-color: var(--filled-bc-hover);
    background: var(--filled-bgc-hover);
}

.button.button-outlined
{
    color: var(--outlined-c-base);
    border-color: var(--outlined-bc-base);
    background-color: #fff;
}
.button.button-outlined:hover,
.button.button-outlined:focus,
.button.button-outlined:active
{
    color: var(--outlined-c-hover);
    border-color: var(--outlined-bc-hover);
    background-color: var(--outlined-bgc-hover);
}

.button.button-link
{
    color: var(--link-c-base);
    border-color: transparent;
    background: #fff;

    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.button.button-link:visited
{
    opacity: .8;
}
.button.button-link:hover,
.button.button-link:focus,
.button.button-link:active
{
    color: var(--link-c-hover);
}

/* Button  colors  */
.button.button-accent
{
    --filled-bgc-base: var(--c-bg-accent);
    --filled-bc-base: var(--c-bg-accent);
    --filled-c-base: #fff;
    --filled-bgc-hover: var(--c-bg-accent-hover);
    --filled-bc-hover: var(--c-bg-accent-hover);
    --filled-c-hover: #fff;
    --outlined-bc-base: #f3f1f8;
    --outlined-c-base: var(--c-bg-accent);
    --outlined-bgc-hover: var(--c-bg-accent);
    --outlined-bc-hover: var(--c-bg-accent-hover);
    --outlined-c-hover: #fff;
    --link-c-base: var(--c-bg-accent);
    --link-bgc-hover: transparent;
    --link-bc-hover: transparent;
    --link-c-hover: var(--c-bg-accent-hover);
}

.button.button-primary
{
    --filled-bgc-base: #fafbfb;
    --filled-bc-base: #fafbfb;
    --filled-c-base: var(--c-text-secondary);
    --filled-bgc-hover: #f6f6f7;
    --filled-bc-hover: #f6f6f7;
    --filled-c-hover: var(--c-text-dark);
    --outlined-bc-base: #edeeef;
    --outlined-c-base: var(--c-text-secondary);
    --outlined-bgc-hover: #f6f6f7;
    --outlined-bc-hover: #edeeef;
    --outlined-c-hover: #202223;
    --link-bgc-hover: transparent;
    --link-bc-hover: transparent;
    --link-c-base: #202223;
    --link-c-hover: #6d7175;
}

.button.button-secondary
{
    --filled-bgc-base: #fff;
    --filled-bc-base: #fff;
    --filled-c-base: #202223;
    --filled-bgc-hover: #f6f6f7;
    --filled-bc-hover: #f6f6f7;
    --filled-c-hover: #202223;
    --outlined-bc-base: #edeeef;
    --outlined-c-base: #6d7175;
    --outlined-bgc-hover: #fff;
    --outlined-bc-hover: #999ea4;
    --outlined-c-hover: #202223;
    --link-bgc-hover: transparent;
    --link-bc-hover: transparent;
    --link-c-base: #8c9196;
    --link-c-hover: #202223;
}

.page-article article,
.page-vacancy article
{
    --container: 780px;
}
@media (max-width: 992px)
{
    .page-article article,
    .page-vacancy article
    {
        --container: calc(100vw - 32px);
    }
}

.is_cascade h1,
.is_cascade h2,
.is_cascade h3
{
    font-size: var(--fs-28);
    font-weight: 700;

    margin: var(--g-48) 0 var(--g-24);
}

.is_cascade h4
{
    font-size: var(--fs-24);
    font-weight: 700;

    margin: var(--g-48) 0 var(--g-24);
}

.is_cascade h5,
.is_cascade h6
{
    font-size: var(--fs-20);
    font-weight: 700;

    margin: var(--g-48) 0 var(--g-24);
}

.is_cascade > p
{
    font-size: var(--fs-20);
    line-height: 1.5;
}
.is_cascade > p + p
{
    margin-top: var(--g-24);
}

.is_cascade a:not(.button)
{
    font-size: var(--fs-20);

    margin: 0 .5em;

    text-decoration: underline;
}
.is_cascade a:not(.button):hover,
.is_cascade a:not(.button):active
{
    text-decoration: none;
}
.is_cascade a:not(.button):visited
{
    opacity: .8;
}

.is_cascade > span
{
    font-size: var(--fs-20);
    line-height: 1.5;
}

.is_cascade strong
{
    font-size: var(--fs-20);
    font-weight: 500;
}

.is_cascade > ul,
.is_cascade ol
{
    margin: var(--g-24) 0;
    padding-left: var(--g-24);
}
.is_cascade > ul li,
.is_cascade ol li
{
    font-size: var(--fs-20);
    line-height: 1.5;
}
.is_cascade > ul li:not(:last-of-type),
.is_cascade ol li:not(:last-of-type)
{
    margin-bottom: 8px;
}

.is_cascade figure
{
    margin: var(--g-48) 0;
}
.is_cascade figure img,
.is_cascade figure figcaption
{
    font-size: 14px;

    margin-top: 8px;

    color: var(--c-text-secondary);
}

.is_cascade > img,
.is_cascade > video,
.is_cascade > iframe,
.is_cascade > object
{
    margin: var(--g-48) 0;
}

.is_cascade video,
.is_cascade img,
.is_cascade iframe,
.is_cascade object
{
    overflow: hidden;

    width: 100%;
    height: auto;

    border-radius: var(--border-corner-8);

    aspect-ratio: 780 / 372;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}

.is_cascade .is_cascade__slider .gallery__item
{
    min-width: 100%;
}

.is_cascade .is_cascade__slider figure
{
    margin: 0;
}

.is_cascade .is_cascade__slider img
{
    aspect-ratio: 780 / 372;
}

.is_cascade .is_cascade__slider .swiper-button-next,
.is_cascade .is_cascade__slider .swiper-button-prev
{
    width: 36px;
    height: 36px;
}

.is_cascade blockquote
{
    padding-left: 24px;

    border-left: 1px solid var(--c-text-accent);
}
.is_cascade blockquote p
{
    font-size: var(--fs-20);
    line-height: 1.5;
}
.is_cascade blockquote span
{
    color: var(--c-text-secondary);
}

.is_cascade .button_wrapper,
.is_cascade .block--actions
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: var(--g-40) 0;

    border-top: 1px solid rgba(0, 0, 0, .08);
    border-bottom: 1px solid rgba(0, 0, 0, .08);

    gap: 8px;
}

.is_cascade .accordion
{
    margin: var(--g-32) 0;
}

.is_cascade p + .button,
.is_cascade ul + .button
{
    margin-top: var(--g-24);
}

.header
{
    position: sticky;
    z-index: 10000;
    top: 0;
    left: 0;

    width: 100%;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    border-bottom: 1px solid #edeeef;
    background: #fff;
}
.header.scrolled
{
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%);
}
.header.scrolled + .header__mobile_panel
{
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
}

.header__logo svg path
{
    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    fill: #8561cc;
}

.header__logo:hover svg path,
.header__logo:focus svg path,
.header__logo:active svg path
{
    fill: #653aba;
}

@media (max-width: 992px)
{
    .header__logo svg
    {
        height: 36px;
    }
}

.header__top
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: var(--container-header);
    margin: 0 auto;
    padding: 16px 0;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--g-32);
}
@media (max-width: 992px)
{
    .header__top
    {
        max-width: 100%;
        padding: 12px 16px;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .header__top .header__logo
    {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .header__top .header__nav
    {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
}

.header__nav
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header__nav .button
{
    padding: 12px 16px;
}
@media (max-width: 992px)
{
    .header__nav
    {
        position: absolute;
        left: 16px;
    }
    .header__nav a.button
    {
        display: none;
    }
    .header__nav [data-openpopup='popup_menu']
    {
        padding: 8px;
    }
    .header__nav [data-openpopup='popup_menu'] span
    {
        font-size: 24px;
    }
    .header__nav [data-openpopup='popup_menu'] span:not(.icon-ic24-menu)
    {
        display: none;
    }
}

.header__actions
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-left: auto;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}
@media (max-width: 992px)
{
    .header__actions
    {
        display: none;
    }
}

.header__contacts
{
    position: relative;

    overflow: visible;

    padding: 12px 16px;
}
.header__contacts:hover .header__contacts-list,
.header__contacts:focus .header__contacts-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.header__contacts-list
{
    position: absolute;
    z-index: 10;
    top: 100%;
    left: 0;

    display: none;
        flex-direction: column;

    min-width: 100%;
    padding-top: 8px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
.header__contacts-list ul
{
    padding: 8px;

    list-style: none;

    border: 1px solid #edeeef;
    border-radius: 8px;
    background: #fff;
    -webkit-box-shadow: 0 3px 6px -3px rgba(23, 24, 24, .08), 0 8px 20px -4px rgba(23, 24, 24, .12);
            box-shadow: 0 3px 6px -3px rgba(23, 24, 24, .08), 0 8px 20px -4px rgba(23, 24, 24, .12);
}
.header__contacts-list-item
{
    font-weight: 500;

    width: 100%;
    padding: 8px;

    text-align: left;
    white-space: nowrap;

    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.header__mobile_panel
{
    position: fixed;
    z-index: 50;
    right: 0;
    bottom: 0;
    left: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    padding: 0 8px 8px;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);
    -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
            transform: translateY(100%);

    border-top: 1px solid rgba(0, 0, 0, .06);
    background-color: #fff;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 992px)
{
    .header__mobile_panel
    {
        display: none;
    }
}
.header__mobile_panel .button
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    padding: 6px 2px 2px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 4px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
        flex: 0 0 30%;
}
.header__mobile_panel span.icon path
{
    opacity: .6;

    fill: var(--c-text-dark);
}
.header__mobile_panel .button--booking
{
    color: var(--c-text-accent);
}
.header__mobile_panel .button--booking span.icon path
{
    opacity: 1;

    fill: var(--c-text-accent);
}
.header__mobile_panel .header__contacts-list
{
    display: none;
}
.header__mobile_panel .header__contacts-list.active
{
    position: absolute;
    top: 0;
    left: 16px;

    display: block;

    max-width: var(--container);

    -webkit-transform: translateY(calc(-100% - 16px));
        -ms-transform: translateY(calc(-100% - 16px));
            transform: translateY(calc(-100% - 16px));

    border-radius: var(--border-corner-8);
}
.header__mobile_panel .header__contacts-list .button
{
    padding: 8px;

    text-align: start;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
}

.breadcrumbs
{
    z-index: 45;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: var(--container);
    margin: 0 auto;
    padding: var(--g-32) 0;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    --main-color: #8c9196;
    --non-active-color: var(--c-text-dark);
    --hover-color: #6d7175;
}
@media (max-width: 768px)
{
    .breadcrumbs
    {
        overflow-x: auto;

        width: 100vw;
        margin: 0;
        padding: 20px 16px;

        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}
.breadcrumbs a
{
    font-size: clamp(14px, calc(14px + (16 - 14) * ((100vw - 1024px) / (1920 - 1024))), 16px);
    line-height: 1.5;

    position: relative;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);
    white-space: nowrap;

    color: var(--main-color);
}
.breadcrumbs a:not(:last-child):after
{
    margin-left: 8px;

    content: '/';
}
.breadcrumbs a:last-child
{
    pointer-events: none;

    color: var(--non-active-color);
}
.breadcrumbs a:hover,
.breadcrumbs a:focus,
.breadcrumbs a:active
{
    color: var(--hover-color);
}

.header--transparent + .breadcrumbs
{
    position: absolute;
    top: var(--headerHeight);
    left: calc( ( 100vw - var(--container) )/ 2);

    --main-color: rgba(255,255,255, .36);
    --non-active-color: #fff;
    --hover-color: rgba(255,255,255, .6);
}
@media (max-width: 768px)
{
    .header--transparent + .breadcrumbs
    {
        left: 0;
    }
}

.accordion__item
{
    position: relative;

    cursor: pointer;
}
.accordion__item + .accordion__item
{
    margin-top: 24px;
}
.accordion__item.active .accordion__item-content
{
    height: auto;

    -webkit-transition: opacity .3s ease-out;
         -o-transition: opacity .3s ease-out;
            transition: opacity .3s ease-out;
    pointer-events: auto;

    opacity: 1;
}
.accordion__item.active .icon-ic24-chevron-down
{
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);

    opacity: 1;
    color: var(--c-text-accent);
}
.accordion__item-button
{
    font-size: clamp(16px, calc(16px + (20 - 16) * ((100vw - 1024px) / (1920 - 1024))), 20px);

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-left: 42px;

    cursor: pointer;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
}
.accordion__item-button .accordion__item-button-text
{
    font-weight: 500;
    line-height: 1.4;

    color: var(--c-text-dark);
}
.accordion__item-button .icon-ic24-chevron-down
{
    position: absolute;
    top: 0;
    left: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 24px;
    height: 24px;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);
    -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
            transform: rotate(0);

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.accordion__item-content
{
    height: 0;
    padding-left: 42px;

    -webkit-transition: height .2s ease-in-out;
         -o-transition: height .2s ease-in-out;
            transition: height .2s ease-in-out;
    pointer-events: none;

    opacity: 0;
}
.accordion__item-content > *:first-child
{
    padding-top: 12px;
}

.block--wrapper
{
    max-width: var(--container);
    margin: 0 auto;
    padding: 0 0 var(--g-72);
}

.block:not(:first-child):not(.banner-group) .block--wrapper
{
    border-top: 1px solid rgba(0, 0, 0, .08);
}
#block-search ~ .block:not(:first-child):not(.banner-group):first-of-type .block--wrapper
{
    border-top: none;
}

.block:not(:first-child) .block--wrapper
{
    padding: var(--g-72) 0;
}

.block--content:not(:first-child)
{
    margin-top: var(--g-40);
}

.block--content > img
{
    height: auto;

    aspect-ratio: 1880 / 900;
}

.block--head
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    max-width: 580px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.block--head_subtitle
{
    width: -webkit-fit-content;
    width:    -moz-fit-content;
    width:         fit-content;
    margin-bottom: 8px;

    text-transform: uppercase;

    color: var(--c-text-accent);
}
.block--head_subtitle:empty
{
    display: none;
}
.block--head_subtitle p
{
    font-size: clamp(12px, calc(12px + (14 - 12) * ((100vw - 1024px) / (1920 - 1024))), 14px);
    font-weight: 700;
    line-height: 1.33;
}
.block--head_subtitle p:empty
{
    display: none;
}
.block--head_caption
{
    margin-top: 16px;
}
.block--head_caption:empty
{
    display: none;
}
.block--head_caption p
{
    font-size: clamp(16px, calc(16px + (20 - 16) * ((100vw - 1024px) / (1920 - 1024))), 20px);
    line-height: 1.5;

    color: var(--c-text-gray);
}
.block--head_caption p:empty
{
    display: none;
}
.block--head_title a h1,
.block--head_title a h2
{
    position: relative;
}
.block--head_title a h1:after,
.block--head_title a h2:after
{
    font-family: 'icomoon' !important;
    font-size: .5em;

    margin-left: .2em;

    content: '\e942';

    color: currentColor;
}
.block--head_title a:hover,
.block--head_title a:focus,
.block--head_title a:active
{
    color: var(--c-text-accent);
}

.block--actions,
.button_wrapper
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-top: var(--g-40);

    gap: 12px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.block--actions:empty
{
    display: none;
}

.block--pagination
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: var(--g-48);

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
@media (max-width: 768px)
{
    .block--pagination
    {
        grid-column: span 1;
    }
}
.block--pagination .button
{
    width: -webkit-fit-content;
    width:    -moz-fit-content;
    width:         fit-content;
}

.block--sections
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: var(--g-24) 0 var(--g-40);

    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (max-width: 768px)
{
    .block--sections
    {
        overflow-x: auto;

        width: 100vw;
        margin: 0 -16px;
        padding: 20px 16px;

        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}
.block--sections a
{
    font-size: var(--fs-18);
    font-weight: 500;

    text-align: center;
    white-space: nowrap;

    color: var(--c-text-ghost);
}
.block--sections a:hover,
.block--sections a:focus,
.block--sections a:active
{
    color: var(--c-text-dark);
}
.block--sections a.active
{
    color: var(--c-text-accent);
}

.block-banner
{
    position: relative;

    overflow: hidden;
}
@media (min-width: 1024px)
{
    .block-banner .swiper-pagination
    {
        display: none;
    }
}
.block-banner .block--wrapper
{
    height: 100%;
}
.block-banner .block--head
{
    z-index: 2;
}
.block-banner .block--actions
{
    position: relative;
    z-index: 2;
}
.block-banner .block--content
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
    height: 100%;
    margin: 0;
}
.block-banner .block--content img,
.block-banner .block--content video
{
    width: 100%;
    height: 100%;

    -o-object-position: center;
       object-position: center;
    -o-object-fit: cover;
       object-fit: cover;
}
.block-banner .block--head
{
    color: var(--c-text-white);
    text-shadow: 0 0 16px rgba(0, 0, 0, .15);
}
.block-banner .block--head > *
{
    position: relative;
    z-index: 2;
}
.block-banner .block--head_subtitle
{
    color: #fff;
}
.block-banner .banner
{
    display: grid;
}

.block-banner:not(.banner-group):not(.banner-hero) .banner
{
    margin: auto;
}

.block-banner:not(.banner-hero) .block--wrapper
{
    max-width: 100vw;
}

.block-banner:not(.banner-hero) .banner
{
    position: relative;

    overflow: hidden;

    width: var(--container);
    min-width: var(--container);
    height: auto;
    padding: var(--g-40);

    border-radius: var(--border-corner-8);

    aspect-ratio: 1180 / 540;
    place-content: end start;
    place-items: end start;
}
@media (max-width: 768px)
{
    .block-banner:not(.banner-hero) .banner
    {
        min-width: calc(100vw - 32px - 8px);
        padding: 24px 16px;

        aspect-ratio: 320 / 420;
    }
}

.block-banner:not(.banner-hero) .block--content:before
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    opacity: .55;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(6.67%, rgba(0, 0, 0, .0086472)), color-stop(13.33%, rgba(0, 0, 0, .03551)), color-stop(20%, rgba(0, 0, 0, .0816599)), color-stop(26.67%, rgba(0, 0, 0, .147411)), color-stop(33.33%, rgba(0, 0, 0, .231775)), color-stop(40%, rgba(0, 0, 0, .331884)), color-stop(46.67%, rgba(0, 0, 0, .442691)), color-stop(53.33%, rgba(0, 0, 0, .557309)), color-stop(60%, rgba(0, 0, 0, .668116)), color-stop(66.67%, rgba(0, 0, 0, .768225)), color-stop(73.33%, rgba(0, 0, 0, .852589)), color-stop(80%, rgba(0, 0, 0, .91834)), color-stop(86.67%, rgba(0, 0, 0, .96449)), color-stop(93.33%, rgba(0, 0, 0, .991353)), to(#000));
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .0086472) 6.67%, rgba(0, 0, 0, .03551) 13.33%, rgba(0, 0, 0, .0816599) 20%, rgba(0, 0, 0, .147411) 26.67%, rgba(0, 0, 0, .231775) 33.33%, rgba(0, 0, 0, .331884) 40%, rgba(0, 0, 0, .442691) 46.67%, rgba(0, 0, 0, .557309) 53.33%, rgba(0, 0, 0, .668116) 60%, rgba(0, 0, 0, .768225) 66.67%, rgba(0, 0, 0, .852589) 73.33%, rgba(0, 0, 0, .91834) 80%, rgba(0, 0, 0, .96449) 86.67%, rgba(0, 0, 0, .991353) 93.33%, #000 100%);
    background:    linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .0086472) 6.67%, rgba(0, 0, 0, .03551) 13.33%, rgba(0, 0, 0, .0816599) 20%, rgba(0, 0, 0, .147411) 26.67%, rgba(0, 0, 0, .231775) 33.33%, rgba(0, 0, 0, .331884) 40%, rgba(0, 0, 0, .442691) 46.67%, rgba(0, 0, 0, .557309) 53.33%, rgba(0, 0, 0, .668116) 60%, rgba(0, 0, 0, .768225) 66.67%, rgba(0, 0, 0, .852589) 73.33%, rgba(0, 0, 0, .91834) 80%, rgba(0, 0, 0, .96449) 86.67%, rgba(0, 0, 0, .991353) 93.33%, #000 100%);

    background-blend-mode: multiply;
}

.block-banner:not(.banner-hero) .block--actions
{
    margin-top: 16px;
}

.block-banner:not(.banner-hero) .block--head
{
    max-width: 584px;
}

.block-banner:not(.banner-hero) .block--head_caption
{
    margin-top: 8px;
}

.block-banner:not(.banner-hero) .swiper-button-next
{
    right: calc( ( 100vw - var(--container) ) / 2);

    -webkit-transform: translate(50%, -50%);
        -ms-transform: translate(50%, -50%);
            transform: translate(50%, -50%);
}

.block-banner:not(.banner-hero) .swiper-button-prev
{
    left: calc( ( 100vw - var(--container) ) / 2);

    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

.banner-hero
{
    height: calc(100vh - var(--headerHeight, 88px));
}
@media (max-width: 768px)
{
    .banner-hero
    {
        height: auto;

        aspect-ratio: 360 / 420;
    }
}
.banner-hero .block--wrapper
{
    max-width: 100%;
    padding: 0;
}
.banner-hero .banner
{
    position: relative;

    min-width: 100%;
    height: 100%;
    padding: 24px 16px;

    place-items: center;
    place-content: center;
}
.banner-hero h1,
.banner-hero h2
{
    font-size: clamp(32px, calc(32px + (64 - 32) * ((100vw - 1024px) / (1920 - 1024))), 64px);
}
.banner-hero .block--head
{
    position: relative;

    text-align: center;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.banner-hero .block--head:before
{
    position: absolute;
    top: -10%;
    left: -10%;

    display: block;

    width: 120%;
    height: 120%;

    content: '';

    background: rgba(0, 0, 0, .55);

    -webkit-filter: blur(125px);
            filter: blur(125px);
}
@media(max-width: 768px){
    .banner-hero .block--head:before{
        top: -40%;
        left: 0;
        width: 100%;
        height: 180%;
        background: rgba(0, 0, 0, .55);
    }
}
.banner-hero .block--head,
.banner-hero .block--actions
{
    max-width: 780px;
}
.banner-hero .block--head_caption
{
    max-width: 580px;
}
.banner-hero .swiper-button-next
{
    right: var(--g-80);
}
.banner-hero .swiper-button-prev
{
    left: var(--g-80);
}

.block_image_text .block--wrapper
{
    display: grid;

    grid-template-columns: 1fr 1fr;
    place-content: start;
    grid-gap: 0 20px;
    grid-template-rows: auto auto 1fr;
}
@media (max-width: 768px)
{
    .block_image_text .block--wrapper
    {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }
}

.block_image_text .block--head
{
    grid-column: 1;
}
.block_image_text .block--head .block--head_title
{
    max-width: 480px;
}

.block_image_text .block--content,
.block_image_text .block--actions
{
    grid-column: 2;
}
@media (max-width: 768px)
{
    .block_image_text .block--content,
    .block_image_text .block--actions
    {
        grid-column: 1;
    }
}

.block_image_text .block--image ~ .block--head,
.block_image_text .block--image ~ .block--content,
.block_image_text .block--image ~ .block--actions
{
    width: 100%;
    margin: 0 auto;

    grid-column: 1;
}
@media (min-width: 769px)
{
    .block_image_text .block--image ~ .block--head,
    .block_image_text .block--image ~ .block--content,
    .block_image_text .block--image ~ .block--actions
    {
        padding-right: var(--g-100);
    }
}

.block_image_text .block--image ~ .block--head
{
    padding-top: var(--g-32);

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.block_image_text .block--image
{
    max-width: 100%;
    min-height: 100%;

    grid-column: 2;
    grid-row: 1 / span 3;
}
@media (max-width: 768px)
{
    .block_image_text .block--image
    {
        grid-column: 1;
        grid-row: 1 / span 1;
    }
}
.block_image_text .block--image img
{
    height: auto;

    border-radius: var(--border-corner-8);

    aspect-ratio: 580 / 530;
    -o-object-fit: cover;
       object-fit: cover;
}
@media (min-width: 769px)
{
    .block_image_text .block--image img
    {
        position: sticky;
        top: calc(var(--headerHeight) + 40px);
    }
}

.block_image_text .block--head
{
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.block_image_text .block--head .block--head_caption
{
    margin-top: 8px;
}
.block_image_text .block--head .block--head_caption p
{
    text-align: left;
}
.block_image_text .block--head .block--head_subtitle
{
    padding: 0;
}

.block_image_text .block--content
{
    margin-top: 0;
    padding-top: 8px;
}
@media (max-width: 768px)
{
    .block_image_text .block--content
    {
        padding-top: 8px;
    }
}
.block_image_text .block--content.is_cascade
{
    margin-bottom: 0;
}

.block_image_text .block--actions
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
}

.block_image_text.block_image_text-reversed .block--wrapper .block--image
{
    grid-column: 1;
}

.block_image_text.block_image_text-reversed .block--wrapper .block--head,
.block_image_text.block_image_text-reversed .block--wrapper .block--content,
.block_image_text.block_image_text-reversed .block--wrapper .block--actions
{
    padding-right: 0;

    grid-column: 2;
}
@media (min-width: 769px)
{
    .block_image_text.block_image_text-reversed .block--wrapper .block--head,
    .block_image_text.block_image_text-reversed .block--wrapper .block--content,
    .block_image_text.block_image_text-reversed .block--wrapper .block--actions
    {
        padding-left: var(--g-100);
    }
}
@media (max-width: 768px)
{
    .block_image_text.block_image_text-reversed .block--wrapper .block--head,
    .block_image_text.block_image_text-reversed .block--wrapper .block--content,
    .block_image_text.block_image_text-reversed .block--wrapper .block--actions
    {
        grid-column: 1;
    }
}

.block_list:not(.block_list-slider) .block--elements
{
    display: grid;

    max-width: var(--container);
    margin: var(--g-40) auto 0;

    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
@media (max-width: 768px)
{
    .block_list:not(.block_list-slider) .block--elements
    {
        grid-template-columns: 1fr;
    }
}

.block_list.block_list-slider .block--wrapper
{
    overflow: hidden;

    max-width: 100vw;
}

.block_list.block_list-slider .block--head
{
    max-width: var(--container);
    margin: 0 auto;
}

.block_list.block_list-slider .block--elements
{
    position: relative;

    margin-top: var(--g-40);
}

.card .card__title
{
    display: -webkit-box;
    overflow: hidden;

       text-overflow: ellipsis;

    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

@media (max-width: 768px)
{
    .card
    {
        min-width: 320px;
    }
}

.card--media
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.card--media .card__image
{
    overflow: hidden;

    border-radius: var(--border-corner-8);

    aspect-ratio: 380 / 280;
}
.card--media .card__content
{
    padding: 12px 0;
}
.card--media .card__title
{
    font-size: var(--fs-20);
    font-weight: 500;
    line-height: 1.4;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);
}
.card--media .card__text
{
    font-size: 16px;

    margin-top: 4px;
}
.card--media:hover .card__title,
.card--media:focus .card__title,
.card--media:active .card__title
{
    color: var(--c-text-ghost);
}

.card--room
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 100%;
    max-width: calc((100% - 40px) / 3);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
@media (min-width: 769px)
{
    .card--room
    {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 3 - 40px);
            flex: 0 0 calc(100% / 3 - 40px);
    }
}
@media (max-width: 768px)
{
    .card--room
    {
        max-width: calc(100vw - 32px);
    }
}
.card--room .card__image
{
    position: relative;

    overflow: hidden;

    width: 100%;
    height: unset;

    border-radius: var(--border-corner-8);

    aspect-ratio: 380 / 280;
}
.card--room .card__image .card__image_slide
{
    min-width: 100%;
    height: 100%;
}
.card--room .card__image .card__image_slide img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
.card--room .card__content
{
    padding: 12px 0;
}
.card--room .card__title
{
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
}
.card--room .card__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 4px;

    list-style: none;

    gap: 8px;
}
.card--room .card__list li
{
    font-size: 16px;
    line-height: 1.5;

    position: relative;
}
.card--room .card__list li:not(:first-child)
{
    padding-left: 8px;
}
.card--room .card__list li:not(:first-child):before
{
    position: absolute;
    top: 50%;
    left: 0;

    display: block;

    width: 3px;
    height: 3px;

    content: '';

    border-radius: 50%;
    background: var(--c-text-dark);
}
.card--room .card__price
{
    font-size: 18px;
    font-weight: 500;

    margin-top: 8px;
}
.card--room .card__price span
{
    font-size: 16px;
    font-weight: 400;

    color: var(--c-text-ghost);
}
.card--room:hover .card__title,
.card--room:focus .card__title,
.card--room:active .card__title
{
    color: var(--c-text-ghost);
}

.card--offer
{
    display: grid;

    width: var(--container);
    min-width: var(--container);

    border-radius: var(--border-corner-8);
    background-color: #fafbfb;

    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
@media (max-width: 768px)
{
    .card--offer
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;
        justify-content: space-between;

        min-width: 320px;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        gap: 0;
    }
}
.card--offer .card__content
{
    padding: var(--g-84) var(--g-84) var(--g-84) var(--g-80);
}
@media (max-width: 768px)
{
    .card--offer .card__content
    {
        padding: 24px 16px;
    }
}
.card--offer .card__title
{
    font-size: var(--fs-28);
    font-weight: 700;
    line-height: 1.29;

    margin-bottom: 16px;
}
.card--offer .card__text
{
    font-size: var(--fs-20);
    line-height: 1.5;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.card--offer .card__image
{
    overflow: hidden;

    border-radius: var(--border-corner-8);
}
@media (max-width: 768px)
{
    .card--offer .card__image
    {
        aspect-ratio: 320 / 240;
    }
}
.card--offer .card__buttons
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: var(--g-32);

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.card--link,
.card--infrustructure,
.card--services,
.card--gallery
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
        flex-direction: column;

    min-width: calc((var(--container) - 40px) / 3);
    height: auto;

    border-radius: var(--border-corner-8);

    aspect-ratio: 380 / 452;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
@media (max-width: 768px)
{
    .card--link,
    .card--infrustructure,
    .card--services,
    .card--gallery
    {
        min-width: 320px;
    }
}
.card--link .card__content,
.card--infrustructure .card__content,
.card--services .card__content,
.card--gallery .card__content
{
    position: relative;
    z-index: 3;

    padding: 24px;
}
.card--link .card__content .card__title,
.card--infrustructure .card__content .card__title,
.card--services .card__content .card__title,
.card--gallery .card__content .card__title
{
    font-size: var(--fs-24);
    font-weight: 500;

    color: var(--c-text-white);
}
.card--link .card__image,
.card--infrustructure .card__image,
.card--services .card__image,
.card--gallery .card__image
{
    position: absolute;
    z-index: 1;

    width: 100%;
    height: 100%;

    -o-object-position: center;
       object-position: center;
    -o-object-fit: cover;
       object-fit: cover;
}
.card--link .card__image:after,
.card--infrustructure .card__image:after,
.card--services .card__image:after,
.card--gallery .card__image:after
{
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 40%;

    content: '';

    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, .35)));
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .35) 100%);
    background:    linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .35) 100%);
}
.card--link:before,
.card--infrustructure:before,
.card--services:before,
.card--gallery:before
{
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';
    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    opacity: 0;
    background: rgba(0, 0, 0, .35);
}
.card--link:hover:before,
.card--link:focus:before,
.card--link:active:before,
.card--infrustructure:hover:before,
.card--infrustructure:focus:before,
.card--infrustructure:active:before,
.card--services:hover:before,
.card--services:focus:before,
.card--services:active:before,
.card--gallery:hover:before,
.card--gallery:focus:before,
.card--gallery:active:before
{
    opacity: 1;
}

.card--vacancy
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 100%;
    padding: var(--g-24) 0;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
.card--vacancy + .card--vacancy
{
    border-top: 1px solid rgba(0, 0, 0, .08);
}
.card--vacancy .card__actions
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    gap: 8px;
}
.card--vacancy .card__title
{
    font-size: var(--fs-24);
    font-weight: 700;

    margin-bottom: 16px;
}
.card--vacancy .card__text
{
    font-size: var(--fs-20);
}
.card--vacancy .card__content
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: var(--g-24);

    gap: var(--g-24);
}

.card--tour
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 100%;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.card--tour .card__image
{
    overflow: hidden;

    width: 100%;
    height: unset;

    border-radius: var(--border-corner-8);

    aspect-ratio: 380 / 280;
}
.card--tour .card__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
.card--tour .card__content
{
    padding: 12px 0;
}
.card--tour .card__title
{
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
}
.card--tour .card__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 4px;

    list-style: none;

    gap: 8px;
}
.card--tour .card__list li
{
    font-size: 16px;
    line-height: 1.5;

    position: relative;
}
.card--tour .card__list li:not(:first-child)
{
    padding-left: 8px;
}
.card--tour .card__list li:not(:first-child):before
{
    position: absolute;
    top: 50%;
    left: 0;

    display: block;

    width: 3px;
    height: 3px;

    content: '';

    border-radius: 50%;
    background: var(--c-text-dark);
}
.card--tour .card__price
{
    font-size: 18px;
    font-weight: 500;

    margin-top: 8px;
}
.card--tour .card__price span
{
    font-size: 16px;
    font-weight: 400;

    color: var(--c-text-ghost);
}
.card--tour:hover .card__title,
.card--tour:focus .card__title,
.card--tour:active .card__title
{
    color: var(--c-text-ghost);
}

.swiper-button-next,
.swiper-button-prev
{
    position: absolute;
    top: 50%;

    width: 48px;
    height: 48px;

    cursor: pointer;
    -webkit-transition: color .18s ease-in-out;
         -o-transition: color .18s ease-in-out;
            transition: color .18s ease-in-out;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);

    color: #8c9196;
    border-radius: 50%;
    background: #fff;

    -webkit-filter: drop-shadow(0px 1px 0px rgba(0, 0, 0, .05));
            filter: drop-shadow(0px 1px 0px rgba(0, 0, 0, .05));
}
.swiper-button-next:after,
.swiper-button-prev:after
{
    font-family: 'icomoon' !important;
    font-size: 24px;
}
.swiper-button-next:hover,
.swiper-button-next:focus,
.swiper-button-next:active,
.swiper-button-prev:hover,
.swiper-button-prev:focus,
.swiper-button-prev:active
{
    color: #000;
}
@media (max-width: 1023px)
{
    .swiper-button-next,
    .swiper-button-prev
    {
        display: none;
    }
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled
{
    opacity: 0;
}

.swiper-button-prev:after
{
    content: '\e941';
}

.swiper-button-next:after
{
    content: '\e942';
}

.swiper-pagination
{
    top: unset;
    bottom: 12px;

    width: 100%;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 4px;
    --swiper-pagination-bottom: 12px;
}
.swiper-pagination .swiper-pagination-bullet
{
    width: 6px;
    height: 6px;
    margin: 0;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    opacity: .5;
    border-radius: 50%;
    background-color: #f6f6f7;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 6px;
        flex: 0 0 6px;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active
{
    -webkit-transform: scale(1.33);
        -ms-transform: scale(1.33);
            transform: scale(1.33);

    opacity: 1;
    background-color: #fff;
}
@media (min-width: 1024px)
{
    .swiper-pagination .swiper-pagination
    {
        display: none;
    }
}

.content_offers:not(.block_list-slider) .block--elements
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 20px;
}

.content_offers.block_list-slider .block--elements
{
    position: relative;

    overflow: hidden;
}
@media (max-width: 768px)
{
    .content_offers.block_list-slider .block--elements
    {
        margin: var(--g-40) 0 0;
    }
}

.block_list-slider .swiper-button-next
{
    right: calc( ( 100vw - var(--container) ) / 2);

    -webkit-transform: translate(50%, -50%);
        -ms-transform: translate(50%, -50%);
            transform: translate(50%, -50%);
}

.block_list-slider .swiper-button-prev
{
    left: calc( ( 100vw - var(--container) ) / 2);

    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

.content_infrustructure:not(.block_list-slider) .block--elements,
.content_services:not(.block_list-slider) .block--elements,
.content_galleries:not(.block_list-slider) .block--elements,
.content_news:not(.block_list-slider) .block--elements,
.content_blog:not(.block_list-slider) .block--elements,
.content_tour:not(.block_list-slider) .block--elements
{
    display: grid;

    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
@media (max-width: 768px)
{
    .content_infrustructure:not(.block_list-slider) .block--elements,
    .content_services:not(.block_list-slider) .block--elements,
    .content_galleries:not(.block_list-slider) .block--elements,
    .content_news:not(.block_list-slider) .block--elements,
    .content_blog:not(.block_list-slider) .block--elements,
    .content_tour:not(.block_list-slider) .block--elements
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}
.content_infrustructure:not(.block_list-slider) .block--elements .block--pagination,
.content_services:not(.block_list-slider) .block--elements .block--pagination,
.content_galleries:not(.block_list-slider) .block--elements .block--pagination,
.content_news:not(.block_list-slider) .block--elements .block--pagination,
.content_blog:not(.block_list-slider) .block--elements .block--pagination,
.content_tour:not(.block_list-slider) .block--elements .block--pagination
{
    grid-column: span 3;
}

@media (max-width: 768px)
{
    .content_infrustructure.block_list-slider .block--elements,
    .content_services.block_list-slider .block--elements,
    .content_galleries.block_list-slider .block--elements,
    .content_news.block_list-slider .block--elements,
    .content_blog.block_list-slider .block--elements,
    .content_tour.block_list-slider .block--elements
    {
        margin: var(--g-40) -16px;
    }
}

.content_accommodation:not(.block_list-slider) .block--elements
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
}

.content_accommodation.block_list-slider .card--room
{
    max-width: calc((var(--container) - 40px) / 3);
}

.content_subscription
{
    --container: var(--container-footer);
}

.content_faq .block--wrapper
{
    display: grid;

    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
@media(max-width: 992px){
    .content_faq .block--wrapper {
        grid-template-columns: 1fr;
    }
}
.content_faq .block--wrapper .block--head
{
    grid-column: 1;
}
.content_faq .block--wrapper .block--elements,
.content_faq .block--wrapper .block--actions
{
    grid-column: 2;
}
@media(max-width: 992px){
    .content_faq .block--wrapper .block--elements,
    .content_faq .block--wrapper .block--actions
    {
        grid-column: 1;
    }
}
.content_faq .block--wrapper .block--actions
{
    padding: 0;

    grid-row: 2;
}
.content_faq .block--wrapper .block--actions:empty
{
    display: none;
}
.content_faq .block--wrapper .block--elements
{
    width: 100%;
    margin-top: 0;

    grid-template-columns: 1fr;
}

.block_list:not(.block_list-slider).content_advantages .block--elements
{
    display: grid;

    margin: 0 auto;

    grid-template-columns: 1fr 1fr;
    grid-template-areas: 'text image';
    place-items: start;
    gap: 8px var(--g-120);
}
@media (max-width: 768px)
{
    .block_list:not(.block_list-slider).content_advantages .block--elements
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        margin: 0 auto;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}
.block_list:not(.block_list-slider).content_advantages .block--elements .advantages_item_wrapper
{
    grid-area: text;
}
@media (max-width: 768px)
{
    .block_list:not(.block_list-slider).content_advantages .block--elements .advantages_item_wrapper
    {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
}
.block_list:not(.block_list-slider).content_advantages .block--elements .advantages_image
{
    grid-area: image;
}
@media (max-width: 768px)
{
    .block_list:not(.block_list-slider).content_advantages .block--elements .advantages_image
    {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
}

.advantages_item_wrapper
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 8px;
}

.advantages_item
{
    padding: 24px 32px;

    cursor: pointer;

    border-bottom: 1px solid #feecfa;
    border-radius: 0;

    background-color: transparent;
}
@media (max-width: 768px)
{
    .advantages_item
    {
        padding: 0;
    }
}
.advantages_item:hover .advantages_item__button p
{
    color: var(--c-text-dark);
}
@media (min-width: 768px)
{
    .advantages_item.active
    {
        border-bottom-color: #fafbfb;
        background-color: #fafbfb;
        border-radius: var(--border-corner-8);
    }
}
.advantages_item.active .advantages_item__content
{
    height: auto;
    padding-top: 8px;

    -webkit-transition: opacity .3s ease-out;
         -o-transition: opacity .3s ease-out;
            transition: opacity .3s ease-out;
    pointer-events: auto;

    opacity: 1;
}
.advantages_item.active .advantages_item__button p
{
    font-weight: 700;

    color: var(--c-text-dark);
}
@media (max-width: 768px)
{
    .advantages_item.active .advantages_item__image
    {
        display: block;

        margin-bottom: 8px;
    }
    .advantages_item.active .advantages_item__button,
    .advantages_item.active .advantages_item__content
    {
        background-color: #fafbfb;
    }
    .advantages_item.active .advantages_item__button
    {
        border-radius: 8px 8px 0 0;
    }
    .advantages_item.active .advantages_item__content
    {
        border-radius: 0 0 8px 8px;
    }
}
.advantages_item__button
{
    font-size: clamp(20px, calc(20px + (24 - 20) * ((100vw - 1024px) / (1920 - 1024))), 24px);

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
}
@media (max-width: 768px)
{
    .advantages_item__button
    {
        padding: 16px 20px 0;
    }
}
.advantages_item__button p
{
    font-weight: 500;
    line-height: 1.45;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-transition: color .2s ease-in-out;
         -o-transition: color .2s ease-in-out;
            transition: color .2s ease-in-out;

    color: var(--c-text-ghost);

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.advantages_item__content
{
    font-size: clamp(16px, calc(16px + (20 - 16) * ((100vw - 1024px) / (1920 - 1024))), 20px);
    line-height: 1.5;

    height: 0;

    -webkit-transition: height .2s ease-in-out;
         -o-transition: height .2s ease-in-out;
            transition: height .2s ease-in-out;
    pointer-events: none;

    opacity: 0;
    color: var(--c-text-dark);
}
@media (min-width: 768px)
{
    .advantages_item__content .advantages_item__image
    {
        display: none;
    }
}
@media (max-width: 768px)
{
    .advantages_item__content
    {
        padding: 8px 20px;
    }
}
.advantages_item__content div,
.advantages_item__content p,
.advantages_item__content li,
.advantages_item__content span
{
    margin: 0;
}
.advantages_item__content div:not(:first-child):not(.button),
.advantages_item__content p:not(:first-child),
.advantages_item__content li:not(:first-child),
.advantages_item__content span:not(:first-child)
{
    margin-bottom: 1em;
}
.advantages_item__content .button_wrapper{
    border: none;
    padding: 0;
    margin: 1em 0;
}
.advantages_item__content ul
{
    padding-left: 24px;
}

.advantages_image
{
    height: 100%;
}
@media (max-width: 768px)
{
    .advantages_image
    {
        display: none;
    }
}
.advantages_image__item
{
    overflow: hidden;

    width: 100%;
    height: auto;

    border-radius: var(--border-corner-8);

    aspect-ratio: 580 / 530;
}
.advantages_image__item img
{
    width: 100%;
    height: 100%;
}
@media (max-width: 768px)
{
    .advantages_image__item img
    {
        aspect-ratio: 344 / 333;
    }
}
@media (min-width: 993px)
{
    .advantages_image__item
    {
        position: sticky;
        top: calc(var(--headerHeight) + 40px);
    }
}
.advantages_image__item.active
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    opacity: 1;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.advantages_image__item:not(.active)
{
    display: none;

    -webkit-transition: opacity .24s .14s ease-in-out;
         -o-transition: opacity .24s .14s ease-in-out;
            transition: opacity .24s .14s ease-in-out;

    opacity: 0;
}

.advantages_item__image
{
    display: none;
    overflow: hidden;

    height: auto;

    border-radius: 8px;

    aspect-ratio: 328 / 300;
}

.content_contacts .block--content
{
    display: grid;

    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
@media (max-width: 768px)
{
    .content_contacts .block--content
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column-reverse;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
    }
}

.content_contacts .is_cascade .button_wrapper
{
    margin-top: 0;
    padding: var(--g-24) 0;

    border: none;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (max-width: 768px)
{
    .content_contacts .is_cascade .button_wrapper
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.content_contacts__map
{
    overflow: hidden;

    border-radius: var(--border-corner-8);
}
@media (max-width: 768px)
{
    .content_contacts__map
    {
        aspect-ratio: 380 /  280;
    }
}
.content_contacts__map iframe,
.content_contacts__map #map
{
    width: 600px;
    height: 600px;
}
@media (max-width: 768px)
{
    .content_contacts__map iframe,
    .content_contacts__map #map
    {
        width: 100%;
        height: 100%;
    }
}

.content_contacts__description p
{
    margin: var(--g-24) 0;
}

.accommodation_description
{
    display: grid;

    grid-template-columns: 7fr 1fr 4fr;
    grid-template-areas: 'content . aside';
    gap: 20px;
    grid-auto-flow: column;
    grid-auto-rows: auto;
}
@media (max-width: 768px)
{
    .accommodation_description
    {
        grid-template-columns: 1fr;
        grid-template-areas: 'aside' 'content';
    }
}
.accommodation_description aside
{
    margin-top: var(--g-48);

    grid-area: aside;
}
@media (min-width: 769px)
{
    .accommodation_description aside > *:first-child
    {
        position: sticky;
        top: calc(var(--headerHeight) + 40px);
    }
}
.accommodation_description__content
{
    grid-area: content;
}
.accommodation_description hr
{
    margin: var(--g-48) 0;

    opacity: .08;
}

.js-hidden-content
{
    font-size: var(--fs-20);
    line-height: 1.5;

    /*text-overflow: ellipsis;*/
    overflow: hidden;
    /*display: -webkit-box;*/
    /*-webkit-line-clamp: 3;*/
    /*-webkit-box-orient: vertical;*/
    height: 4.5em;
}
.js-hidden-content.active
{
    /*-webkit-line-clamp: unset;*/
    height: auto;
}

.js-show-content
{
    font-weight: 500;

    margin-top: 1em;
}

ul.accommodation_description__advantages
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    margin: 0;
    padding: 0;

    list-style: none;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: var(--g-24);
}
ul.accommodation_description__advantages li
{
    position: relative;

    padding-left: 44px;
}
ul.accommodation_description__advantages li:before
{
    position: absolute;
    top: 2px;
    left: 0;

    width: 24px;
    height: 24px;

    content: '';

    background: url('data:image/svg+xml,%3Csvg width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cpath fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M9.91007 17.4959L3.70711 11.2929C3.31658 10.9024 2.68342 10.9024 2.29289 11.2929C1.90237 11.6835 1.90237 12.3166 2.29289 12.7071L9.29289 19.7071C9.71682 20.1311 10.4159 20.0893 10.7863 19.6179L21.7863 5.61786C22.1275 5.18359 22.0521 4.55494 21.6178 4.21372C21.1835 3.87251 20.5549 3.94795 20.2137 4.38222L9.91007 17.4959Z\' fill=\'%238561CC\'/%3E%3C/svg%3E%0A');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
ul.accommodation_description__advantages li strong
{
    line-height: 24px;
}
ul.accommodation_description__advantages li p
{
    color: var(--c-text-secondary);
}

ul.accommodation_description__beds
{
    display: grid;

    padding: 0;

    list-style: none;

    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
@media (max-width: 768px)
{
    ul.accommodation_description__beds
    {
        grid-template-columns: 1fr;
    }
}
ul.accommodation_description__beds li
{
    padding: 24px 32px;
    margin: 0!important;
    border: 1px solid #edeeef;
    border-radius: var(--border-corner-8);
}
ul.accommodation_description__beds strong
{
    font-size: var(--fs-18);
}
ul.accommodation_description__beds p
{
    font-size: var(--fs-18);

    color: var(--c-text-secondary);
}

.room_content__advantages_list
{
    display: grid;

    margin: 24px 0;

    list-style: none;

    grid-template-columns: 1fr 1fr;
    gap: 24px 32px;
}
@media (max-width: 768px)
{
    .room_content__advantages_list
    {
        margin: 16px 0;

        grid-template-columns: 1fr;
    }
}
.room_content__advantages_list li
{
    font-size: var(--fs-20);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
}
.room_content__advantages_list li span
{
    line-height: 32px;
}
.room_content__advantages_list li span:nth-child(1)
{
    font-size: 32px;

    width: 32px;
    height: 32px;
}
.room_content__advantages_list li span:nth-child(1) img,
.room_content__advantages_list li span:nth-child(1) svg
{
    width: 32px;
    height: 32px;
    border-radius: 0;

    -o-object-fit: contain;
       object-fit: contain;
}
.room_content__advantages_list li:nth-child(n+7)
{
    display: none;
}

.room_content__advantages button
{
    margin-top: var(--g-48);
}

.content_vacancies .block--wrapper
{
    display: grid;

    grid-template-columns: 280px 1fr;
    grid-column-gap: var(--g-120);
    place-content: start;
    place-items: start;
}
@media (max-width: 768px)
{
    .content_vacancies .block--wrapper
    {
        grid-template-columns: 1fr;
        grid-column-gap: 20px;
    }
}
@media (min-width: 769px)
{
    .content_vacancies .block--wrapper .block--head
    {
        grid-column: span 2;
    }
}
.content_vacancies .block--wrapper .block--elements
{
    width: 100%;
    margin: 0;

    gap: 0;
    grid-template-columns: 1fr;
}

.content_vacancies .block--sections
{
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.content_vacancies .block--sections a
{
    font-weight: 400;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}
.content_vacancies .block--sections a:before
{
    display: block;

    width: 24px;
    height: 24px;

    content: '';

    background-image: url('data:image/svg+xml,%3Csvg width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Crect x=\'2.5\' y=\'2.5\' width=\'19\' height=\'19\' rx=\'3.5\' stroke-width=\'2px\' stroke=\'%238C9196\'/%3E%3Cpath fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M9.91006 14.4959L7.7071 12.2929C7.31658 11.9024 6.68342 11.9024 6.29289 12.2929C5.90237 12.6834 5.90237 13.3166 6.29289 13.7071L9.29288 16.7071C9.7168 17.131 10.4159 17.0892 10.7863 16.6178L17.7863 8.61786C18.1275 8.18359 18.0521 7.55494 17.6178 7.21372C17.1835 6.87251 16.5549 6.94795 16.2136 7.38222L9.91006 14.4959Z\' fill=\'white\'/%3E%3C/svg%3E');
}
.content_vacancies .block--sections a.active
{
    color: var(--c-text-dark);
}
.content_vacancies .block--sections a.active:before
{
    background-image: url('data:image/svg+xml,%3Csvg width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Crect x=\'2.5\' y=\'2.5\' width=\'19\' height=\'19\' rx=\'3.5\' fill=\'%238561CC\' stroke=\'%238561CC\'/%3E%3Cpath fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M9.91006 14.4959L7.7071 12.2929C7.31658 11.9024 6.68342 11.9024 6.29289 12.2929C5.90237 12.6834 5.90237 13.3166 6.29289 13.7071L9.29288 16.7071C9.7168 17.131 10.4159 17.0892 10.7863 16.6178L17.7863 8.61786C18.1275 8.18359 18.0521 7.55494 17.6178 7.21372C17.1835 6.87251 16.5549 6.94795 16.2136 7.38222L9.91006 14.4959Z\' fill=\'white\'/%3E%3C/svg%3E');
}
@media (max-width: 768px)
{
    .content_vacancies .block--sections a
    {
        display: none;
    }
}
.content_vacancies .block--sections button
{
    width: 100%;
}
@media (min-width: 769px)
{
    .content_vacancies .block--sections button
    {
        display: none;
    }
}

.content_scheme
{
    overflow: hidden;
}
@media (max-width: 1280px)
{
    .content_scheme .block--content
    {
        overflow-x: auto;
        overflow-y: hidden;
    }
}
.content_scheme .content_scheme__svg
{
    position: relative;

    width: 100%;

    aspect-ratio: 1181 / 904;
}
@media (max-width: 1280px) {
    .content_scheme .content_scheme__svg
    {
        aspect-ratio: 1181 / 904;
        width: auto;
        height: 74vh;
    }
}
.content_scheme .content_scheme__svg .decor_plane
{
    position: absolute;
    z-index: 5;
    top: 0;

    max-width: 606px;
    height: auto;
    pointer-events: none;

    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);

    aspect-ratio: 606 / 644;
}
@media (max-width: 1280px)
{
    .content_scheme .content_scheme__svg .decor_plane
    {
        display: none;
    }
}
.content_scheme .content_scheme__svg .scheme_points
{
    position: relative;
    z-index: 4;
}
.content_scheme .scheme_tabs
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: var(--g-24);

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2px;
}
.content_scheme .scheme_tabs__item
{
    font-size: var(--fs-18);
    font-weight: 500;

    padding: 12px 16px;

    cursor: pointer;
    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    color: var(--c-text-ghost);
}
.content_scheme .scheme_tabs__item:hover,
.content_scheme .scheme_tabs__item:focus
{
    color: var(--c-text-dark);
}
.content_scheme .scheme_tabs__item.active
{
    color: var(--c-text-accent);
}

[data-placemark='building'] rect
{
    fill: #3C41C0
}
[data-placemark='building'] path
{
    fill: var(--c-text-white)
}
[data-placemark='kpp'] rect {
    fill: #8561CC
    /*fill: #f1f1f1*/
}
[data-placemark='kpp'] path {
    fill: var(--c-text-white)
}
[data-placemark='kpp'],
[data-placemark='building'] {
    cursor: pointer;
}
[data-placemark='misc'],
[data-placemark='kids'],
[data-placemark='restaurants'],
[data-placemark='mice'],
[data-placemark='sports'],
[data-placemark='entertainment'],
[data-placemark='health']
{
    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    opacity: 1;
}
[data-placemark='misc'].not_visible,
[data-placemark='kids'].not_visible,
[data-placemark='restaurants'].not_visible,
[data-placemark='mice'].not_visible,
[data-placemark='sports'].not_visible,
[data-placemark='entertainment'].not_visible,
[data-placemark='health'].not_visible
{
    opacity: 0;
    pointer-events: none;
}

symbol
{
    cursor: pointer;
}


.location_tooltip
{
    font-size: 14px;
    line-height: 1.4;
    text-align: center;

    position: absolute;
    z-index: 5;

    width: -webkit-fit-content;
    width:    -moz-fit-content;
    width:         fit-content;
    padding: 8px 12px;

    -webkit-transform: translate(-50%, calc(-100% - 12px));
    -ms-transform: translate(-50%, calc(-100% - 12px));
    transform: translate(-50%, calc(-100% - 12px));
    /*white-space: nowrap;*/
    pointer-events: none;

    opacity: 0;
    color: var(--c-text-dark);
    border-radius: 100px;
    background: var(--c-bg-light);
    max-width: 180px;
    box-shadow: var(--shadow-card);
}

.location_tooltip.active
{
    opacity: 1;
}

@media (max-width: 1023px)
{
    .location_tooltip
    {
        font-size: 10px;

        max-width: 100px;
        padding: 2px 4px;

        white-space: normal;

        border-radius: 8px;
    }
    .location_tooltip.active
    {
        opacity: .3;
    }
}

.content_scheme__svg
{
    position: relative;
}


.content_404 .block--wrapper
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    padding: var(--g-72) 0;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.content_404 .block--head
{
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.content_404 h1
{
    font-size: clamp(32px, calc(32px + (96 - 32) * ((100vw - 1024px) / (1920 - 1024))), 96px);

    text-align: center;
}

.popup
{
    padding: var(--g-40, 40px) 0;

    background-color: rgba(0, 0, 0, .35);
}
@media (max-width: 768px)
{
    .popup
    {
        height: -webkit-fill-available;
        height: calc(100 * var(--vh, 1vh));
        padding: 0;

        place-items: start;
    }
}
.popup__content
{
    max-width: 780px;

    border-radius: var(--border-corner-8);
    background-color: var(--c-bg-white);
}
.popup__close
{
    position: absolute;
    z-index: 42;
    top: var(--g-24);
    right: var(--g-40);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    cursor: pointer;
    -webkit-transition: .3s ease-out;
         -o-transition: .3s ease-out;
            transition: .3s ease-out;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.popup__close .icon-ic24-close
{
    /*font-size: 24px;*/
}
@media (max-width: 768px)
{
    .popup__close
    {
        top: 16px;
        right: 16px;
        left: unset;
    }
}

.popup.popup--menu
{
    padding: 0;

    place-items: start;
}
.popup.popup--menu .popup__content
{
    width: clamp(325px, 25vw, 360px);
    height: 100%;
    padding: 24px 20px;

    -webkit-transition: .24s ease-out;
         -o-transition: .24s ease-out;
            transition: .24s ease-out;
    -webkit-transition-delay: .05s;
         -o-transition-delay: .05s;
            transition-delay: .05s;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%);
}
@media (max-width: 768px)
{
    .popup.popup--menu .popup__content
    {
        width: 100%;
        padding-bottom: 124px;
    }
}
.popup.popup--menu.active .popup__content
{
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
}

[data-popup='popup_for_room_advantages'],
.popup--form,
.popup--confirmation
{
    padding: 16px;
}
[data-popup='popup_for_room_advantages'] .popup__content,
.popup--form .popup__content,
.popup--confirmation .popup__content
{
    width: 100%;
    max-width: 512px;
    padding: var(--g-80) var(--g-40);
}
@media (max-width: 768px)
{
    [data-popup='popup_for_room_advantages'] .popup__content,
    .popup--form .popup__content,
    .popup--confirmation .popup__content
    {
        min-height: 100%;
        padding: 64px 16px;
    }
}
[data-popup='popup_for_room_advantages'] .popup__content .popup__content-title,
.popup--form .popup__content .popup__content-title,
.popup--confirmation .popup__content .popup__content-title
{
    font-size: var(--fs-28);
    font-weight: 700;
}
[data-popup='popup_for_room_advantages'] .popup__content .popup__content-text,
.popup--form .popup__content .popup__content-text,
.popup--confirmation .popup__content .popup__content-text
{
    font-size: var(--fs-20);
    line-height: 1.5;

    margin: 8px 0 var(--g-24);

    color: var(--c-text-secondary);
}
[data-popup='popup_for_room_advantages'] .room_content__advantages_list,
.popup--form .room_content__advantages_list,
.popup--confirmation .room_content__advantages_list
{
    grid-template-columns: 1fr;
}
[data-popup='popup_for_room_advantages'] .room_content__advantages_list li:nth-child(n+7),
.popup--form .room_content__advantages_list li:nth-child(n+7),
.popup--confirmation .room_content__advantages_list li:nth-child(n+7)
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.popup--sheme
{
    padding: 16px;
}
.popup--sheme .popup__content
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
        flex-direction: column;

    max-width: 512px;

    border-radius: var(--border-corner-8);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
.popup--sheme .popup__close
{
    top: 16px;
    right: 24px;
}
.popup--sheme .popup__close .button
{
    color: #fff;
    border-color: transparent;
    background: transparent;
}
.popup--sheme .popup__content-image
{
    position: relative;

    width: 100%;

    aspect-ratio: 512 / 320;
    display: flex;
    align-items: flex-start;
}
.popup--sheme .popup__content-image:after
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .25);

    background-blend-mode: difference;
}
.popup--sheme .popup__content-image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
.popup--sheme .popup__content-buttons
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: var(--g-40);

    gap: 8px;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.popup--sheme .popup__content_description
{
    padding: var(--g-24) var(--g-40);
}
.popup--sheme .popup__content-title
{
    font-size: var(--fs-28);
}
.popup--sheme .popup__content-text
{
    font-size: var(--fs-20);
    line-height: 1.5;

    color: var(--c-text-secondary);
}

[data-popup='popup_for_filters'] .popup__content
{
    position: relative;

    width: 100%;
    height: 100%;
    padding: 48px 16px 64px;
}

[data-popup='popup_for_filters'] .block--sections
{
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
[data-popup='popup_for_filters'] .block--sections a
{
    font-weight: 400;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}
[data-popup='popup_for_filters'] .block--sections a:before
{
    display: block;

    width: 24px;
    height: 24px;

    content: '';

    background-image: url('data:image/svg+xml,%3Csvg width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Crect x=\'2.5\' y=\'2.5\' width=\'19\' height=\'19\' rx=\'3.5\' stroke-width=\'2px\' stroke=\'%238C9196\'/%3E%3Cpath fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M9.91006 14.4959L7.7071 12.2929C7.31658 11.9024 6.68342 11.9024 6.29289 12.2929C5.90237 12.6834 5.90237 13.3166 6.29289 13.7071L9.29288 16.7071C9.7168 17.131 10.4159 17.0892 10.7863 16.6178L17.7863 8.61786C18.1275 8.18359 18.0521 7.55494 17.6178 7.21372C17.1835 6.87251 16.5549 6.94795 16.2136 7.38222L9.91006 14.4959Z\' fill=\'white\'/%3E%3C/svg%3E');
}
[data-popup='popup_for_filters'] .block--sections a.active
{
    color: var(--c-text-dark);
}
[data-popup='popup_for_filters'] .block--sections a.active:before
{
    background-image: url('data:image/svg+xml,%3Csvg width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Crect x=\'2.5\' y=\'2.5\' width=\'19\' height=\'19\' rx=\'3.5\' fill=\'%238561CC\' stroke=\'%238561CC\'/%3E%3Cpath fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M9.91006 14.4959L7.7071 12.2929C7.31658 11.9024 6.68342 11.9024 6.29289 12.2929C5.90237 12.6834 5.90237 13.3166 6.29289 13.7071L9.29288 16.7071C9.7168 17.131 10.4159 17.0892 10.7863 16.6178L17.7863 8.61786C18.1275 8.18359 18.0521 7.55494 17.6178 7.21372C17.1835 6.87251 16.5549 6.94795 16.2136 7.38222L9.91006 14.4959Z\' fill=\'white\'/%3E%3C/svg%3E');
}
@media (max-width: 768px)
{
    [data-popup='popup_for_filters'] .block--sections a
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
[data-popup='popup_for_filters'] .block--sections button
{
    display: none;
}

[data-popup='popup_for_filters'] .popup__content-buttons
{
    position: absolute;
    bottom: 12px;
    left: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100vw;
    padding: 8px;

    gap: 8px;
}
[data-popup='popup_for_filters'] .popup__content-buttons .button
{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50% - 4px);
        flex: 0 0 calc(50% - 4px);
}

.form__input-file
{
    width: 100%;
    padding: 12px 16px;

    cursor: pointer;

    border: 1px dashed #edeeef;
    border-radius: 4px;
}
.form__input-file p,
.form__input-file span
{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;

    margin: 0;

    color: var(--c-text-secondary);
}
.form__input-file p span,
.form__input-file span span
{
    text-transform: none;

    color: var(--c-text-dark);
}
.form__input-file .js-clearFile
{
    display: none;
}
.form__input-file.loaded
{
    position: relative;

    border-color: var(--c-text-dark);
}
.form__input-file.loaded .js-changeDescriptionText
{
    position: relative;

    color: var(--c-text-dark);
}
.form__input-file.loaded .js-changeDescriptionText:before
{
    font-family: 'icomoon' !important;
    font-size: 20px;
    line-height: 1;

    margin-right: 6px;

    content: '\e95e';
    vertical-align: middle;
}
.form__input-file.loaded .js-clearFile
{
    position: absolute;
    top: 12px;
    right: 8px;

    display: block;

    width: 24px;
    height: 24px;

    background-image: url('data:image/svg+xml,%3Csvg width=\'20\' height=\'20\' viewBox=\'0 0 20 20\' fill=\'none\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cpath fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M13.707 12.293C14.098 12.684 14.098 13.316 13.707 13.707C13.512 13.902 13.256 14 13 14C12.744 14 12.488 13.902 12.293 13.707L10 11.414L7.707 13.707C7.512 13.902 7.256 14 7 14C6.744 14 6.488 13.902 6.293 13.707C5.902 13.316 5.902 12.684 6.293 12.293L8.586 10L6.293 7.707C5.902 7.316 5.902 6.684 6.293 6.293C6.684 5.902 7.316 5.902 7.707 6.293L10 8.586L12.293 6.293C12.684 5.902 13.316 5.902 13.707 6.293C14.098 6.684 14.098 7.316 13.707 7.707L11.414 10L13.707 12.293ZM10 2C5.582 2 2 5.582 2 10C2 14.418 5.582 18 10 18C14.418 18 18 14.418 18 10C18 5.582 14.418 2 10 2Z\' fill=\'%23010812\' fill-opacity=\'0.35\'/%3E%3C/svg%3E');
    background-repeat: no-repeat;
    background-position: center;
}

input[type='number']
{
    -webkit-appearance: textarea;
       -moz-appearance: textfield;
}

.form fieldset
{
    display: grid;

    padding: 0;

    border-color: transparent;

    grid-template-columns: 1fr;
    grid-gap: 16px;
}

.form__title
{
    font-size: var(--fs-28);
    font-weight: 700;
}

.form__text
{
    font-size: var(--fs-20);

    color: var(--c-text-secondary);
}

.form__input
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 8px;
}
.form__input span
{
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;

    color: var(--c-text-dark);
}
.form__input input,
.form__input textarea,
.form__input select
{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;

    padding: 12px 16px;

    -webkit-transition: .3s ease-out;
         -o-transition: .3s ease-out;
            transition: .3s ease-out;

    border: 1px solid #edeeef;
    border-radius: 4px;
    outline: none;
    background-color: transparent;
}
.form__input input::-webkit-input-placeholder,
.form__input textarea::-webkit-input-placeholder,
.form__input select::-webkit-input-placeholder
{
    color: var(--c-text-secondary);
}
.form__input input::-moz-placeholder,
.form__input textarea::-moz-placeholder,
.form__input select::-moz-placeholder
{
    color: var(--c-text-secondary);
}
.form__input input:-ms-input-placeholder,
.form__input textarea:-ms-input-placeholder,
.form__input select:-ms-input-placeholder
{
    color: var(--c-text-secondary);
}
.form__input input::-ms-input-placeholder,
.form__input textarea::-ms-input-placeholder,
.form__input select::-ms-input-placeholder
{
    color: var(--c-text-secondary);
}
.form__input input:-moz-placeholder-shown,
.form__input textarea:-moz-placeholder-shown,
.form__input select:-moz-placeholder-shown
{
    color: var(--c-text-secondary);
}
.form__input input:-ms-input-placeholder,
.form__input textarea:-ms-input-placeholder,
.form__input select:-ms-input-placeholder
{
    color: var(--c-text-secondary);
}
.form__input input::placeholder,
.form__input input:placeholder-shown,
.form__input textarea::placeholder,
.form__input textarea:placeholder-shown,
.form__input select::placeholder,
.form__input select:placeholder-shown
{
    color: var(--c-text-secondary);
}
.form__input input:not(:-moz-placeholder-shown),
.form__input textarea:not(:-moz-placeholder-shown),
.form__input select:not(:-moz-placeholder-shown)
{
    color: var(--c-dark);
}
.form__input input:not(:-ms-input-placeholder),
.form__input textarea:not(:-ms-input-placeholder),
.form__input select:not(:-ms-input-placeholder)
{
    color: var(--c-dark);
}
.form__input input:not(:placeholder-shown),
.form__input textarea:not(:placeholder-shown),
.form__input select:not(:placeholder-shown)
{
    color: var(--c-dark);
}
.form__input input:focus,
.form__input textarea:focus,
.form__input select:focus
{
    border-color: var(--c-text-dark);
}
.form__input input:invalid:not(:-moz-placeholder-shown),
.form__input textarea:invalid:not(:-moz-placeholder-shown),
.form__input select:invalid:not(:-moz-placeholder-shown)
{
    border-color: var(--c-error);
}
.form__input input:invalid:not(:-ms-input-placeholder),
.form__input textarea:invalid:not(:-ms-input-placeholder),
.form__input select:invalid:not(:-ms-input-placeholder)
{
    border-color: var(--c-error);
}
.form__input input:invalid:not(:placeholder-shown),
.form__input textarea:invalid:not(:placeholder-shown),
.form__input select:invalid:not(:placeholder-shown)
{
    border-color: var(--c-error);
}
.form__input input:invalid:not(:-moz-placeholder-shown) ~ .form__input-error,
.form__input textarea:invalid:not(:-moz-placeholder-shown) ~ .form__input-error,
.form__input select:invalid:not(:-moz-placeholder-shown) ~ .form__input-error
{
    height: auto;
}
.form__input input:invalid:not(:-ms-input-placeholder) ~ .form__input-error,
.form__input textarea:invalid:not(:-ms-input-placeholder) ~ .form__input-error,
.form__input select:invalid:not(:-ms-input-placeholder) ~ .form__input-error
{
    height: auto;
}
.form__input input:invalid:not(:placeholder-shown) ~ .form__input-error,
.form__input textarea:invalid:not(:placeholder-shown) ~ .form__input-error,
.form__input select:invalid:not(:placeholder-shown) ~ .form__input-error
{
    height: auto;
}
.form__input input:valid:not(:-moz-placeholder-shown),
.form__input textarea:valid:not(:-moz-placeholder-shown),
.form__input select:valid:not(:-moz-placeholder-shown)
{
    border-color: var(--c-text-dark);
}
.form__input input:valid:not(:-ms-input-placeholder),
.form__input textarea:valid:not(:-ms-input-placeholder),
.form__input select:valid:not(:-ms-input-placeholder)
{
    border-color: var(--c-text-dark);
}
.form__input input:valid:not(:placeholder-shown),
.form__input textarea:valid:not(:placeholder-shown),
.form__input select:valid:not(:placeholder-shown)
{
    border-color: var(--c-text-dark);
}
.form__input.error .form__input-error
{
    height: auto;
}
.form__input-error
{
    font-size: 14px;

    overflow: hidden;

    height: 0;

    -webkit-transition: .3s linear;
         -o-transition: .3s linear;
            transition: .3s linear;

    color: var(--c-error);
}

.form__policy
{
    font-size: 16px;
    font-weight: 400;

    color: var(--c-text-secondary);
}
.form__policy a
{
    margin: 0 .5em;

    color: var(--c-text-dark);
}

.form__button
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.form__button .button
{
    -ms-flex-item-align: start;
    align-self: flex-start;
}

.form--subscription fieldset
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    gap: 8px;
}
@media (max-width: 768px)
{
    .form--subscription fieldset
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
    .form--subscription fieldset .form__input,
    .form--subscription fieldset .form__button,
    .form--subscription fieldset .form__button .button
    {
        width: 100%;
    }
}
.form--subscription fieldset .form__input
{
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.form--subscription .form__policy,
.form--subscription .form__input span
{
    display: none;
}

.form.sending button[type='submit']
{
    pointer-events: none;

    opacity: .5;
}

.content_gallery
{
    overflow: hidden;

    max-width: 100%;
}

.gallery:not(.js-gallerySwiper)
{
    display: grid;

    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
@media (max-width: 992px)
{
    .gallery:not(.js-gallerySwiper)
    {
        grid-template-columns: 1fr;
    }
}
.gallery:not(.js-gallerySwiper) .gallery__item
{
    height: 280px;
}
@media (min-width: 992px)
{
    .gallery:not(.js-gallerySwiper) .gallery__item:nth-child(6n+1),
    .gallery:not(.js-gallerySwiper) .gallery__item:nth-child(6n+6)
    {
        grid-column: span 2;
    }
}

.gallery.js-gallerySwiper
{
    position: relative;

    width: 100%;
}
.gallery.js-gallerySwiper .gallery__item
{
    width: 100%;
    min-width: 100%;

    aspect-ratio: 1180 /540;
}
@media(max-width: 768px){
    .gallery.js-gallerySwiper .gallery__item
    {
        aspect-ratio: 1 /1;
    }
}
.gallery.js-gallerySwiper .gallery__item:not(.swiper-slide-active) {
    pointer-events: none;
}
.gallery.js-gallerySwiper .swiper-button-next
{
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.gallery.js-gallerySwiper .swiper-button-prev
{
    -webkit-transform: translate(50%, 0);
        -ms-transform: translate(50%, 0);
            transform: translate(50%, 0);
}

.gallery__item
{
    overflow: hidden;

    border-radius: var(--border-corner-8);
}

@media (max-width: 992px)
{
    .footer
    {
        padding-bottom: 72px;
    }
}

.footer__top,
.footer__bottom
{
    max-width: var(--container-footer);
    margin: 0 auto;
    padding: var(--g-40) 0;

    border-top: 1px solid rgba(0, 0, 0, .08);
}

.footer__top
{
    display: grid;

    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
@media (max-width: 768px)
{
    .footer__top
    {
        grid-template-columns: 1fr;
    }
}

.footer__bottom
{
    font-size: clamp(14px, calc(14px + (18 - 14) * ((100vw - 1024px) / (1920 - 1024))), 18px);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
}
@media (max-width: 768px)
{
    .footer__bottom
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}
.footer__bottom .copyright
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--g-20);
}
@media (max-width: 768px)
{
    .footer__bottom .copyright
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}
.footer__bottom .copyright span
{
    color: var(--c-text-ghost);
}
.footer__bottom .developer
{
    color: var(--c-text-ghost);
}
.footer__bottom .developer a
{
    color: var(--c-text-dark);
}
.footer__bottom .developer a:hover,
.footer__bottom .developer a:focus,
.footer__bottom .developer a:active
{
    color: var(--c-text-ghost);
}

.footer__contacts
{
    max-width: 100%;
}
@media (min-width: 992px)
{
    .footer__contacts
    {
        width: 380px;
    }
}
.footer__contacts .footer__contacts_phone
{
    margin-bottom: 12px;
}
.footer__contacts .footer__contacts_phone a
{
    font-size: clamp(24px, calc(24px + (32 - 24) * ((100vw - 1024px) / (1920 - 1024))), 32px);
    font-weight: 500;
}
.footer__contacts .footer__contacts_phone a:hover,
.footer__contacts .footer__contacts_phone a:focus,
.footer__contacts .footer__contacts_phone a:active
{
    color: var(--c-text-ghost);
}
.footer__contacts .footer__contacts_links
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    gap: 12px;
}
.footer__contacts .footer__contacts_links a
{
    font-size: var(--fs-18);
    font-weight: 500;
}
.footer__contacts .footer__contacts_links a:hover,
.footer__contacts .footer__contacts_links a:focus,
.footer__contacts .footer__contacts_links a:active
{
    color: var(--c-text-ghost);
}
.footer__contacts p
{
    margin: var(--g-24) 0;

    color: var(--c-text-secondary);
}

.footer__nav
{
    display: grid;

    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
}
@media (max-width: 768px)
{
    .footer__nav
    {
        grid-template-columns: 1fr 1fr;
    }
}
.footer__nav_item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 12px;
}
.footer__nav_item span
{
    font-weight: 500;

    margin-bottom: 4px;
}
.footer__nav_item a:hover,
.footer__nav_item a:focus,
.footer__nav_item a:active
{
    color: var(--c-text-ghost);
}

.menu__actions
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-bottom: 16px;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
}

.nav
{
    padding: 4px 0;
}

.nav__item
{
    border-bottom: 1px solid rgba(0, 0, 0, .04);
}
.nav__item-button
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: var(--fs-20) 0;

    cursor: pointer;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}
.nav__item-button span[class^='icon-'],
.nav__item-button [class*=' icon-']
{
    font-size: var(--fs-24);
    line-height: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 2em;
    height: 2em;

    color: #8c9196;

    aspect-ratio: 1 / 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.nav__item-button .icon-ic24-menu_item:before
{
    content: '\e9ba';
}
.nav__item-button p
{
    font-size: 18px;
    font-weight: 500;
    line-height: 1.33;

    color: #000;
}
.nav__item-content
{
    height: 0;

    -webkit-transition: height .2s ease-in-out;
         -o-transition: height .2s ease-in-out;
            transition: height .2s ease-in-out;
    pointer-events: none;

    opacity: 0;
}
.nav__item.active .nav__item-button .icon-ic24-menu_item:before
{
    content: '\e99d';

    color: #000;
}
.nav__item.active .nav__item-content
{
    height: auto;

    -webkit-transition: opacity .24s ease-out;
         -o-transition: opacity .24s ease-out;
            transition: opacity .24s ease-out;
    pointer-events: auto;

    opacity: 1;
}
.nav__item.active .nav__item-content ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    padding-top: 8px;
    padding-left: 56px;

    list-style: none;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 10px;
}
.nav__item.active .nav__item-content ul a
{
    font-size: clamp(14px, calc(14px + (18 - 14) * ((100vw - 1024px) / (1920 - 1024))), 18px);
    line-height: 1.56;

    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;

    -webkit-transition: var(--transition);
         -o-transition: var(--transition);
            transition: var(--transition);

    color: #52525b;
}
.nav__item.active .nav__item-content ul a:hover,
.nav__item.active .nav__item-content ul a:focus,
.nav__item.active .nav__item-content ul a:active
{
    color: #000;
}
.nav__item-link
{
    margin: 10px 0 20px 32px;

    color: #000;
}

.menu__links
{
    margin-top: 24px;
}
.menu__links p
{
    margin-bottom: 16px;

    color: var(--c-text-ghost);
}
.menu__links ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    list-style: none;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}
.menu__links path
{
    fill: #5c5f62;
}
.menu__links a:hover path
{
    fill: #000;
}

.accommodation_description--aside {
    background-color: #fff;
    box-shadow: 0 3px 6px -3px rgba(23, 24, 24, 0.08), 0 8px 20px -4px rgba(23, 24, 24, 0.12);
    border-radius: 8px;
    border: 1px solid #EDEEEF;
    padding: 40px 0 0;
}
.accommodation_description--price{
    padding: 0 32px ;
}
.accommodation_description--price strong {
    font-size: var(--fs-24);
}
.accommodation_description--aside .button {
    width: 100%;
    margin-top: 24px;
}

.popup.popup--3d_tour {
    padding: 16px;
    max-height: calc(100 * var(--vh, 1vh));
    
}
@media (max-width:768px) {
    .popup.popup--3d_tour{
        padding: 8px;
    }
}
.popup.popup--3d_tour .popup__close{
    z-index: 2;
}
.popup--3d_tour .popup__content{
    width: calc(100vw - 32px);
    max-width: 100vw;
    height: 100%;
    min-height: calc((100 * var(--vh, vh)) - 32px);
    padding: 0;
    overflow: hidden;
}
.popup--3d_tour iframe {
    width: 100%;
    min-height: calc(100 * var(--vh, vh) - 48px);
    border: none;
    height: 100%;
}

@media(min-width: 768px) {
    .page--booking .header__nav {
        display: none;
    }
}
@media (max-width:768px) {
    .popup.popup--3d_tour{
        padding: 8px;
    }
    .popup--3d_tour .popup__content{
        width: calc(100vw - 16px);
        min-height: calc((100 * var(--vh, vh)) - 16px);
    }
    .popup--3d_tour iframe {
        min-height: calc(100 * var(--vh, vh) - 16px);
        height: calc(100 * var(--vh, vh) - 16px);
    }
}
