

/* Start:/local/templates/booking/styles.css?177080780315053*/
/* ===== ОСНОВНЫЕ СТИЛИ ДЛЯ БЛОКА ===== */
.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);
}

/* ===== БЛОК ПОДПИСКИ ===== */
.content_subscription {
    --container: var(--container-footer);
}

/* ===== БЛОК ИЗОБРАЖЕНИЕ-ТЕКСТ ===== */
.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--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--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);
}

/* ===== ТИПОГРАФИЯ ===== */
.f-h2 {
    font-size: clamp(26px, calc(26px + (36 - 26) * ((100vw - 1024px) / (1920 - 1024))), 36px);
    font-weight: 700;
    line-height: 1.25;
}

/* ===== СТИЛИ ДЛЯ КОНТЕНТА ===== */
.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 > 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;
}

/* ===== ФОРМА ===== */
.form fieldset {
    display: grid;
    padding: 0;
    border-color: transparent;
    grid-template-columns: 1fr;
    grid-gap: 16px;
}

/* ===== ФОРМА ПОДПИСКИ ===== */
.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;
}

/* ===== ПОЛЯ ФОРМЫ ===== */
.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 select {
    -webkit-appearance: none;
    background: url("data:image/svg+xml,%0A%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='M16.7072 7.70725L10.7073 13.7073C10.3163 14.0983 9.68425 14.0983 9.29325 13.7073L3.29325 7.70725C2.90225 7.31625 2.90225 6.68425 3.29325 6.29325C3.68425 5.90225 4.31625 5.90225 4.70725 6.29325L10.0002 11.5862L15.2933 6.29325C15.6842 5.90225 16.3162 5.90225 16.7072 6.29325C16.9022 6.48825 17.0002 6.74425 17.0002 7.00025C17.0002 7.25625 16.9022 7.51225 16.7072 7.70725Z' fill='%236d7175'/%3E%3C/svg%3E%0A") no-repeat right 16px center;
}

.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__checkbox {
    display: inline;
}

.form__checkbox span {
    display: inline !important;
    vertical-align: top;
    font-size: 16px;
    font-weight: 400;
    color: var(--c-text-secondary);
}

.form__checkbox a {
    margin: 0 !important;
    font-size: 16px !important;
}

/* ===== ПОЛИТИКА КОНФИДЕНЦИАЛЬНОСТИ ===== */
.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;
}

/* ===== КНОПКИ ===== */
.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;
}

/* Кнопка filled */
.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);
}

/* Кнопка accent */
.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);
}
/* End */


/* Start:/local/templates/booking/template_styles.css?176401064952*/
.content_booking {
    padding: var(--g-72) 0;
}

/* End */
/* /local/templates/booking/styles.css?177080780315053 */
/* /local/templates/booking/template_styles.css?176401064952 */
