html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; vertical-align: baseline; }

body, html { height: 100%; }

img, fieldset, a img { border: none; }

input[type="submit"], button { cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="submit"]::-moz-focus-inner, button::-moz-focus-inner { padding: 0; border: 0; }

textarea { overflow: auto; }

input, button { margin: 0; padding: 0; border: 0; }

div, input, textarea, select, button, h1, h2, h3, h4, h5, h6, a, span, a:focus { outline: none; }

ul, ol { list-style-type: none; }

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) { * { -webkit-text-size-adjust: none; } }
table { border-spacing: 0; border-collapse: collapse; width: 100%; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-tap-highlight-color: rgba(255, 255, 255, 0); -webkit-tap-highlight-color: transparent; }

input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill, textarea:-webkit-autofill, textarea:-webkit-autofill:hover, textarea:-webkit-autofill:focus, select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus { -webkit-text-fill-color: inherit !important; -webkit-box-shadow: 0 0 0px 1000px #fff inset; }

a, a:before, a:after, a:hover, a:focus { text-decoration: none; color: inherit; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }

body { font-family: "Jost", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 12px; line-height: 1.2; color: #343E49; }

.out { width: 100%; min-width: 320px; margin: 0 auto; }

.container { width: 100%; max-width: 1200px; padding: 0 20px; margin: 0 auto; }

.mt { margin-top: 80px; }

.pt { padding-top: 80px; }

.ptb { padding-top: 80px; padding-bottom: 80px; }

.bg { background: #F0F0F4; }

.consent,
.consent-mailing { font-size: 12px; }
.consent a,
.consent-mailing a { color: #F15238; }
.consent a:hover,
.consent-mailing a:hover { color: #F55B51; }

.btn { font-size: 16px; font-weight: 500; padding: 5px 16px 5px; position: relative; display: flex; align-items: center; justify-content: center; width: fit-content; font-family: "Jost", sans-serif; font-optical-sizing: auto; font-style: normal; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; line-height: 1; }

.btn-xl { height: 60px; font-size: 20px; }

.btn-lg { height: 48px; }

.btn-default { background: transparent; color: #343E49; border: 1px solid #343E49; }
.btn-default:hover, .btn-default:focus { background: #F0F0F4; color: #525C67; border-color: #525C67; }
.btn-default:active { background: #F0F0F4; color: #343E49; border-color: #343E49; }

.btn-primary { background: #F15238; color: #fff; }
.btn-primary:hover, .btn-primary:focus { background: #F55B51; color: #fff; }
.btn-primary:active { background: #8C1008; color: #fff; }
/*
.useful__button .btn-primary {border:1px solid transparent;}
.useful__button .btn-primary:hover, .useful__button .btn-primary:focus { background: #fff; color: #F15238; border-color: #F15238; } */

.btn-arrow { background: #fff; width: 48px; padding: 5px; }
.btn-arrow i { background: url(../img/icons/arrow-right-red.svg) center no-repeat; background-size: contain; display: block; width: 11px; height: 18px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.btn-arrow:hover { background: #F15238; }
.btn-arrow:hover i { background: url(../img/icons/arrow-right-white.svg) center no-repeat; background-size: contain; }

form label { color: #4A4A4A; font-size: 12px; font-weight: 400; display: block; margin-bottom: 8px; }
form .form-control { background: transparent; height: 48px; border: 1px solid #C2C2C2; padding: 0 16px; font-family: "Jost", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 14px; line-height: 1.2; color: #343E49; width: 100%; outline: none; box-shadow: none; }
form .form-control:-moz-placeholder, form .form-control::-moz-placeholder { color: #A3A3A3; opacity: 1; }
form .form-control::-webkit-input-placeholder { color: #A3A3A3; }
form textarea.form-control { padding: 14px 16px; height: 100px; resize: none; }

.show-more a { color: #F15238; border-bottom: 1px solid #F15238; }
.show-more a:hover { border-color: transparent; }

.tooltip { display: inline-block; vertical-align: top; position: relative; width: 15px; height: 15px; }
.tooltip .tooltip__toggle { display: block; width: 16px; height: 16px; background: url(../img/icons/tooltip.svg) center center no-repeat; background-size: contain; cursor: pointer; position: relative; top: 1px; opacity: 0.6; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.tooltip .tooltip__toggle:hover { opacity: 1; z-index: 1; }
.tooltip .tooltip__popup { display: none; position: absolute; bottom: calc(100% + 8px); left: 50%; -webkit-transform: translateX(-50%); -o-transform: translateX(-50%); transform: translateX(-50%); max-width: 270px; width: max-content; background: #343E49; color: #fff; border-radius: 8px; padding: 20px; font-size: 12px; font-weight: 400; line-height: 1.3; }
.tooltip .tooltip__popup:after { content: ""; position: absolute; left: 50%; top: 100%; margin-left: -6px; margin-top: -3px; width: 14px; height: 10px; background: url(../img/icons/corner-tooltip.svg) center center no-repeat; background-size: contain; }

.title { margin-bottom: 40px; }
.title h1, .title h2 { font-weight: 600; line-height: 1; }
.title h1 { font-size: 38px; }
.title h2 { font-size: 32px; }

.title-flex { display: flex; align-items: center; justify-content: space-between; }
.title-flex .btn { margin-left: 40px; }

.tabs .tabs__buttons ul { display: flex; flex-wrap: wrap; margin: -2px; }
.tabs .tabs__buttons li { margin: 2px; }
.tabs .tabs__buttons .btn { width: 100%; }
.tabs .tabs__buttons .active .btn { background: #F15238; color: #fff; border-color: transparent; }
.tabs .tabs__panels { margin-top: 40px; }
.tabs .tabs__panel { opacity: 0; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.tabs .tabs__panel.open { opacity: 1; }

.swiper-pagination { position: static; margin-top: 24px; }
.swiper-pagination .swiper-pagination-bullet { background: #fff; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; width: 12px; height: 12px; opacity: 1; vertical-align: middle; position: relative; margin: 0 3px; border: 1px solid #F15238; border-radius: 0; }
.swiper-pagination .swiper-pagination-bullet-active { background: #F15238; }

.swiper-scrollbar.swiper-scrollbar-horizontal { position: static; height: 5px; width: 100%; margin-top: 30px; }
.swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag { background: #F15238; }

.progressbar { position: relative; height: 8px; background: #C2C2C2; }
.progressbar .progressbar__fill { background: #F15238; position: absolute; left: 0; top: 0; bottom: 0; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; width: 0; }
.progressbar .progressbar__fill:before, .progressbar .progressbar__fill:after { content: ""; position: absolute; z-index: 1; width: 12px; height: 12px; background: #fff; border: 1px solid #F15238; top: 50%; margin-top: -7px; transform: none; }
.progressbar .progressbar__fill:before { left: 0; }
.progressbar .progressbar__fill:after { right: 0; }

.openmenu { overflow: hidden; }

.mobmenu-toggle { display: none; position: relative; z-index: 11; width: 24px; height: 24px; margin-left: 20px; }
.mobmenu-toggle span { position: absolute; top: 50%; margin-top: -1px; display: block; height: 2px; width: 100%; background: #000; -moz-transition: background 0s 0.3s; -o-transition: background 0s 0.3s; -webkit-transition: background 0s; -webkit-transition-delay: 0.3s; transition: background 0s 0.3s; }
.mobmenu-toggle span:before, .mobmenu-toggle span:after { content: ""; position: absolute; left: 0; right: 0; height: 2px; background: #000; -moz-transition-duration: 0.3s, 0.3s; -o-transition-duration: 0.3s, 0.3s; -webkit-transition-duration: 0.3s, 0.3s; transition-duration: 0.3s, 0.3s; -moz-transition-delay: 0.3s, 0s; -o-transition-delay: 0.3s, 0s; -webkit-transition-delay: 0.3s, 0s; transition-delay: 0.3s, 0s; }
.mobmenu-toggle span:before { top: -8px; -moz-transition-property: top, -moz-transform, background; -o-transition-property: top, -o-transform, background; -webkit-transition-property: top, -webkit-transform, background; transition-property: top, transform, background; }
.mobmenu-toggle span:after { bottom: -8px; -moz-transition-property: bottom, -moz-transform, background; -o-transition-property: bottom, -o-transform, background; -webkit-transition-property: bottom, -webkit-transform, background; transition-property: bottom, transform, background; }

.mobmenu-toggle.active span { background: none !important; }
.mobmenu-toggle.active span:before { top: 0; -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
.mobmenu-toggle.active span:after { bottom: 0; -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
.mobmenu-toggle.active span:before, .mobmenu-toggle.active span:after { -moz-transition-delay: 0s, 0.3s; -o-transition-delay: 0s, 0.3s; -webkit-transition-delay: 0s, 0.3s; transition-delay: 0s, 0.3s; }

.mobmenu { background: #fff; display: none; position: fixed; left: 0; top: 0; height: 100%; width: 100%; overflow: hidden; z-index: 19; -webkit-transform: translateY(-120%); -o-transform: translateY(-120%); transform: translateY(-120%); -moz-transition: 0.6s; -o-transition: 0.6s; -webkit-transition: 0.6s; transition: 0.6s; }
.mobmenu .mobmenu__content { height: 100%; width: 100%; overflow: auto; position: relative; }
.mobmenu .container { padding: 110px 20px 0; height: 100%; display: flex; flex-direction: column; }
.mobmenu .container > div:last-child { padding-bottom: 20px; }
.mobmenu .mobmenu__catalog { font-weight: 500; }
.mobmenu .mobmenu__catalog .catalog-toggle { font-size: 16px; position: relative; padding-left: 20px; }
.mobmenu .mobmenu__catalog .catalog-toggle span { width: 12px; height: 2px; position: absolute; left: 0; top: 50%; margin-top: -1px; display: block; background: #343E49; -moz-transition: background 0s 0.15s; -o-transition: background 0s 0.15s; -webkit-transition: background 0s; -webkit-transition-delay: 0.15s; transition: background 0s 0.15s; }
.mobmenu .mobmenu__catalog .catalog-toggle span:before, .mobmenu .mobmenu__catalog .catalog-toggle span:after { content: ""; position: absolute; left: 0; right: 0; height: 2px; background: #343E49; -moz-transition-duration: 0.15s, 0.15s; -o-transition-duration: 0.15s, 0.15s; -webkit-transition-duration: 0.15s, 0.15s; transition-duration: 0.15s, 0.15s; -moz-transition-delay: 0.15s, 0s; -o-transition-delay: 0.15s, 0s; -webkit-transition-delay: 0.15s, 0s; transition-delay: 0.15s, 0s; }
.mobmenu .mobmenu__catalog .catalog-toggle span:before { top: -4px; -moz-transition-property: top, -moz-transform, background; -o-transition-property: top, -o-transform, background; -webkit-transition-property: top, -webkit-transform, background; transition-property: top, transform, background; }
.mobmenu .mobmenu__catalog .catalog-toggle span:after { bottom: -4px; -moz-transition-property: bottom, -moz-transform, background; -o-transition-property: bottom, -o-transform, background; -webkit-transition-property: bottom, -webkit-transform, background; transition-property: bottom, transform, background; }
.mobmenu .mobmenu__catalog .catalog-toggle.active span { background: none !important; }
.mobmenu .mobmenu__catalog .catalog-toggle.active span:before { top: 0; -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
.mobmenu .mobmenu__catalog .catalog-toggle.active span:after { bottom: 0; -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
.mobmenu .mobmenu__catalog .catalog-toggle.active span:before, 
.mobmenu .mobmenu__catalog .catalog-toggle.active span:after { -moz-transition-delay: 0s, 0.15s; -o-transition-delay: 0s, 0.15s; -webkit-transition-delay: 0s, 0.15s; transition-delay: 0s, 0.15s; }
.mobmenu .mobmenu__catalog > ul { display: none; padding: 0 0 10px 20px; font-size: 14px; }
.mobmenu .mobmenu__catalog > ul p { font-size: 16px; margin-bottom: 15px; }
.mobmenu .mobmenu__catalog > ul > li:first-child { padding-top: 20px; }
.mobmenu .mobmenu__catalog > ul > li + li { padding-top: 20px; }
.mobmenu .mobmenu__catalog > ul li + li { margin-top: 10px; }
.mobmenu .mobmenu__menu { font-weight: 500; font-size: 16px; margin-top: 18px; margin-bottom: auto; padding-bottom: 50px; }
.mobmenu .mobmenu__menu li {
    padding-top: 12px;
}
.mobmenu .mobmenu__menu li + li { 
    margin-top: 12px;
    border-top: 1px solid #dedede;
}
.mobmenu .mobmenu__address { font-size: 16px; display: flex; justify-content: space-between; align-items: baseline; width: 100%; margin-top: 15px; }
.mobmenu .mobmenu__address p br { display: none; }
.mobmenu .mobmenu__address a { font-size: 12px; white-space: nowrap; }
.mobmenu .mobmenu__time { font-size: 16px; margin-top: 15px; }
.mobmenu .mobmenu__tel { font-size: 16px; margin-top: 15px; display: flex; justify-content: space-between; align-items: baseline; }
.mobmenu .mobmenu__tel .openmodal { font-size: 12px; white-space: nowrap; }
.mobmenu .mobmenu__messengers { margin-top: 15px; font-size: 0; padding-bottom: 5px; }
.mobmenu .mobmenu__messengers ul { display: flex; align-items: center; margin: -10px -5px 0; }
.mobmenu .mobmenu__messengers li { margin: 10px 5px 0; }
.mobmenu .mobmenu__messengers span { display: none; }
.mobmenu .mobmenu__messengers img { max-width: 100%; height: 28px; }

.mobmenu .mobmenu__address p a {
    display:none;
}

.mobmenu.open { -webkit-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }


.mobmenu .mobmenu__catalog .catalog-button { font-size: 16px; position: relative; padding-left: 20px; }
.mobmenu .mobmenu__catalog .catalog-button span { width: 12px; height: 2px; position: absolute; left: 0; top: 50%; margin-top: -1px; display: block; background: #343E49; -moz-transition: background 0s 0.15s; -o-transition: background 0s 0.15s; -webkit-transition: background 0s; -webkit-transition-delay: 0.15s; transition: background 0s 0.15s; }
.mobmenu .mobmenu__catalog .catalog-button span:before, 
.mobmenu .mobmenu__catalog .catalog-button span:after { content: ""; position: absolute; left: 0; right: 0; height: 2px; background: #343E49; -moz-transition-duration: 0.15s, 0.15s; -o-transition-duration: 0.15s, 0.15s; -webkit-transition-duration: 0.15s, 0.15s; transition-duration: 0.15s, 0.15s; -moz-transition-delay: 0.15s, 0s; -o-transition-delay: 0.15s, 0s; -webkit-transition-delay: 0.15s, 0s; transition-delay: 0.15s, 0s; }
.mobmenu .mobmenu__catalog .catalog-button span:before { top: -4px; -moz-transition-property: top, -moz-transform, background; -o-transition-property: top, -o-transform, background; -webkit-transition-property: top, -webkit-transform, background; transition-property: top, transform, background; }
.mobmenu .mobmenu__catalog .catalog-button span:after { bottom: -4px; -moz-transition-property: bottom, -moz-transform, background; -o-transition-property: bottom, -o-transform, background; -webkit-transition-property: bottom, -webkit-transform, background; transition-property: bottom, transform, background; }
.mobmenu .mobmenu__catalog .catalog-button.active span { background: none !important; }
.mobmenu .mobmenu__catalog .catalog-button.active span:before { top: 0; -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
.mobmenu .mobmenu__catalog .catalog-button.active span:after { bottom: 0; -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
.mobmenu .mobmenu__catalog .catalog-button.active span:before, 
.mobmenu .mobmenu__catalog .catalog-button.active span:after { -moz-transition-delay: 0s, 0.15s; -o-transition-delay: 0s, 0.15s; -webkit-transition-delay: 0s, 0.15s; transition-delay: 0s, 0.15s; }

.topline { background: #F0F0F4; padding: 16px 0; }
.topline .container { display: flex; align-items: center; justify-content: space-between; }
.topline .topline__address { 
    display: flex; 
    align-items: flex-end;
}
.topline .topline__address p a { display:inline-block; margin-bottom:3px; font-size: 15px; font-weight: 500; color: #343E49; text-decoration:underline; }
.topline .topline__address p a:hover { color:#F15238; }
.topline .topline__address p { font-size: 16px; font-weight: 500; padding-left: 26px; position: relative; margin-right: 16px; }
.topline .topline__address p:before { content: ""; position: absolute; left: 0; top: 12px; width: 16px; height: 22px; margin-top: -12px; background: url(../img/icons/pointer.svg) center center no-repeat; background-size: contain; }
.topline .topline__address p br { x-display: none; }
.topline .topline__address a { color: #525C67; font-size: 12px; white-space: nowrap; margin-bottom:3px; }
.topline .topline__address a:hover { color: #F15238; }
.topline .topline__time { margin-right: auto; margin-left: 24px; padding-left: 24px; font-size: 16px; font-weight: 500; position: relative; }
.topline .topline__time:before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 22px; margin-top: -11px; background: #A3A3A3; }
.topline .topline__time p { padding-left: 34px; position: relative; white-space: nowrap; }
.topline .topline__time p:before { content: ""; position: absolute; left: 0; top: 50%; width: 22px; height: 22px; margin-top: -12px; background: url(../img/icons/time.svg) center center no-repeat; background-size: contain; }
.topline .topline__tel { margin-left: auto; padding-left: 30px; }
.topline .topline__tel a { font-size: 16px; font-weight: 500; white-space: nowrap; }
.topline .topline__tel a:hover { color: #F15238; }
.topline .topline__callback { margin-left: 16px; }
.topline .topline__callback a { color: #525C67; font-size: 12px; white-space: nowrap; }
.topline .topline__callback a:hover { color: #F15238; }

.topline .cf-modal .cf-modal-content { border-radius: 0; }
.topline .cf-cities.cf-show {
    display: flex;
    overflow: auto;
    height: 400px;
    width: 100%;
    flex-wrap: wrap;
    columns: unset;
    -webkit-columns: unset;
    -moz-columns: unset;
}
.topline .cf-modal-content .cf-cities li { margin-bottom: 22px; line-height: 1; width: 33%; }
.topline .cf-modal-content .cf-cities li .city_variant {
    color: #343e49;
    font-size: 16px;
    text-decoration: none;
    border-bottom: 1px solid #adadad;
    transition: 0.3s all ease;
}
.topline .cf-modal-content .cf-cities li .city_variant:hover {
    color: #f15238; border-bottom-color: #f15238;
}
.cf-modal .cf-modal-header .cf-btn-close:hover { opacity:1; color: #f15238; }

.header { position: sticky; top: 0; z-index: 20; -moz-transition: top 0.3s; -o-transition: top 0.3s; -webkit-transition: top 0.3s; transition: top 0.3s; }
.header .container { display: flex; align-items: center; justify-content: space-between; }
.header .header__top { padding: 16px 0; background: #fff; }
.header .header__logo { font-size: 0; width: 160px; }
.header .header__logo a { display: inline-block; }
.header .header__logo img { max-width: 100%; }
.header .header__button { margin-left: 40px; }
.header .catalog-toggle { padding: 5px 30px 4px 54px; font-size: 16px; font-weight: 500; background: #F15238; display: block; color: #fff; position: relative; height: 48px; display: flex; align-items: center; }
.header .catalog-toggle:hover { background: #F55B51; }
.header .catalog-toggle:active { background: #8C1008; }
.header .catalog-toggle span { width: 15px; height: 2px; position: absolute; left: 29px; top: 50%; margin-top: -1px; display: block; background: #fff; -moz-transition: background 0s 0.15s; -o-transition: background 0s 0.15s; -webkit-transition: background 0s; -webkit-transition-delay: 0.15s; transition: background 0s 0.15s; }
.header .catalog-toggle span:before, .header .catalog-toggle span:after { content: ""; position: absolute; left: 0; right: 0; height: 2px; background: #fff; -moz-transition-duration: 0.15s, 0.15s; -o-transition-duration: 0.15s, 0.15s; -webkit-transition-duration: 0.15s, 0.15s; transition-duration: 0.15s, 0.15s; -moz-transition-delay: 0.15s, 0s; -o-transition-delay: 0.15s, 0s; -webkit-transition-delay: 0.15s, 0s; transition-delay: 0.15s, 0s; }
.header .catalog-toggle span:before { top: -5px; -moz-transition-property: top, -moz-transform, background; -o-transition-property: top, -o-transform, background; -webkit-transition-property: top, -webkit-transform, background; transition-property: top, transform, background; }
.header .catalog-toggle span:after { bottom: -5px; -moz-transition-property: bottom, -moz-transform, background; -o-transition-property: bottom, -o-transform, background; -webkit-transition-property: bottom, -webkit-transform, background; transition-property: bottom, transform, background; }
.header .catalog-toggle.active span { background: none !important; }
.header .catalog-toggle.active span:before { top: 0; -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
.header .catalog-toggle.active span:after { bottom: 0; -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
.header .catalog-toggle.active span:before, 
.header .catalog-toggle.active span:after { -moz-transition-delay: 0s, 0.15s; -o-transition-delay: 0s, 0.15s; -webkit-transition-delay: 0s, 0.15s; transition-delay: 0s, 0.15s; }
.header .header__messengers { margin-left: 40px; }
.header .header__messengers ul { display: flex; align-items: center; }
.header .header__messengers li { position: relative; }
.header .header__messengers li + li { margin-left: 24px; padding-left: 24px; }
.header .header__messengers li + li:before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 28px; margin-top: -14px; background: #A3A3A3; }
.header .header__messengers a,
.header .header__messengers button { display: flex; align-items: center; font-size: 16px; font-weight: 500; white-space: nowrap; background:none; }
.header .header__messengers a:hover,
.header .header__messengers button:hover { color: #F15238; }
.header .header__messengers button {
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-size: 16px; font-weight: 500;
    font-style: normal;
    line-height: 1.2;
    color: #343E49;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.header .header__messengers img { margin-left: 10px; width: auto; height: 28px; }
.header .header__controls { margin-left: auto; padding-left: 30px; display: flex; align-items: center; }
.header .header__controls > div + div { margin-left: 8px; }
.header .header__controls a { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 10px; font-size: 0; border: 1px solid #C2C2C2; }
.header .header__controls a img { max-width: 100%; max-height: 100%; }
.header .header__controls a:hover { border-color: #F15238; }
.header .header__bottom { background: #F0F0F4; border-bottom: 1px solid #d9d9d9;}
.header .header__menu { font-size: 16px; font-weight: 500; width: 100%; }
.header .header__menu > ul { 
    display: flex; width: 100%; 
    justify-content: space-between;
    gap: 18px;
}
.header .header__menu > ul > li { x-flex-grow: 1; }
.header .header__menu > ul > li a { padding: 16px 22px; display: block; border-bottom: 1px solid transparent; text-align: center; }
.header .header__menu > ul ul {
    padding:5px 0 0 0;
}
.header .header__menu > ul ul li a { 
    text-align: left; 
    padding: 12px 18px;
}
.header .header__menu > ul > li a:hover { color: #F15238; border-color: #F15238; }
.header .header__catalog { 
    position: absolute; 
    z-index: 9988; left: 0; right: 0; top: 100%; padding: 60px 0; background: #fff; color: #525C67; display: none; 
    -webkit-box-shadow: 0px 5px 9px 1px rgba(34, 60, 80, 0.17);
    -moz-box-shadow: 0px 5px 9px 1px rgba(34, 60, 80, 0.17);
    box-shadow: 0px 5px 9px 1px rgba(34, 60, 80, 0.17);
    background: #f7f7f8;
}
.header .header__catalog .container > ul { display: flex; flex-wrap: wrap; margin: -30px -20px; }
.header .header__catalog .container > ul > li { width: 25%; padding: 30px 20px; font-size: 16px; font-weight: 500; }
.header .header__catalog .container > ul > li > p { font-size: 20px; margin-bottom: 25px; }
.header .header__catalog .container > ul > li ul li + li { margin-top: 20px; }
.header .header__catalog a:hover { color: #F15238; }
.header .header__catalog .categories .categories__tiles .category {
    width: calc(25% - 20px);
}

.header .catalog-button { padding: 5px 30px 4px 54px; font-size: 16px; font-weight: 500; background: #F15238; display: block; color: #fff; position: relative; height: 48px; display: flex; align-items: center; }
.header .catalog-button:hover { background: #F55B51; }
.header .catalog-button:active { background: #8C1008; }
.header .catalog-button span { width: 15px; height: 2px; position: absolute; left: 29px; top: 50%; margin-top: -1px; display: block; background: #fff; -moz-transition: background 0s 0.15s; -o-transition: background 0s 0.15s; -webkit-transition: background 0s; -webkit-transition-delay: 0.15s; transition: background 0s 0.15s; }
.header .catalog-button span:before, 
.header .catalog-button span:after { content: ""; position: absolute; left: 0; right: 0; height: 2px; background: #fff; -moz-transition-duration: 0.15s, 0.15s; -o-transition-duration: 0.15s, 0.15s; -webkit-transition-duration: 0.15s, 0.15s; transition-duration: 0.15s, 0.15s; -moz-transition-delay: 0.15s, 0s; -o-transition-delay: 0.15s, 0s; -webkit-transition-delay: 0.15s, 0s; transition-delay: 0.15s, 0s; }
.header .catalog-button span:before { top: -5px; -moz-transition-property: top, -moz-transform, background; -o-transition-property: top, -o-transform, background; -webkit-transition-property: top, -webkit-transform, background; transition-property: top, transform, background; }
.header .catalog-button span:after { bottom: -5px; -moz-transition-property: bottom, -moz-transform, background; -o-transition-property: bottom, -o-transform, background; -webkit-transition-property: bottom, -webkit-transform, background; transition-property: bottom, transform, background; }
.header .catalog-button.active span { background: none !important; }
.header .catalog-button.active span:before { top: 0; -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
.header .catalog-button.active span:after { bottom: 0; -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
.header .catalog-button.active span:before, 
.header .catalog-button.active span:after { -moz-transition-delay: 0s, 0.15s; -o-transition-delay: 0s, 0.15s; -webkit-transition-delay: 0s, 0.15s; transition-delay: 0s, 0.15s; }

@media screen and (max-width: 1199px) {
    .header .header__catalog .categories .categories__tiles .category {
        min-height: 120px;
    }
    .header .header__catalog .categories .categories__tiles .category span {
        font-size: 15px;
        padding: 16px;
    }
}

.offer .container { display: flex; }
.offer .offer__content { width: 50%; padding-right: 15px; display: flex; flex-direction: column; justify-content: space-between; }
.offer .offer__image { font-size: 0; width: 50%; padding-left: 15px; }
.offer .offer__image img { width: 100%; height: 100%; object-fit: cover; }
.offer .offer__title h1 { font-size: 48px; font-weight: 600; line-height: 1; }
.offer .offer__descr { margin-top: 25px; font-size: 16px; font-weight: 500; }
.offer .offer__advantages { margin-top: 30px; padding-right: 20px; }
.offer .offer__advantage { display: flex; align-items: flex-start; }
.offer .offer__advantage + .offer__advantage { margin-top: 10px; }
.offer .offer__advantage .offer__advantage-icon { width: 48px; height: 48px; padding: 10px; background: #F0F0F4; display: flex; align-items: center; justify-content: center; }
.offer .offer__advantage .offer__advantage-icon img { max-width: 100%; max-height: 100%; }
.offer .offer__advantage .offer__advantage-descr { font-size: 16px; font-weight: 500; flex: 1 0; margin-left: 15px; align-self: center; }
.offer .offer__button { margin-top: 30px; }
.offer .offer__button .btn { min-width: 200px; }

.telegram .telegram__wrapp { background: #F0F0F4; padding: 6px 6px 6px 24px; display: flex; align-items: center; }
.telegram .telegram__info { flex: 1 0; font-size: 20px; font-weight: 500; padding-right: 30px; line-height: 1; }
.telegram .telegram__button a,
.telegram .telegram__button button { font-size: 20px; font-weight: 500; background: #4797FF; padding: 4px 4px 4px 24px; display: flex; align-items: center; justify-content: space-between; color: #fff; white-space: nowrap; }
.telegram .telegram__button a span,
.telegram .telegram__button button span { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; font-size: 0; padding: 10px; background: #fff; margin-left: 24px; }
.telegram .telegram__button a span img,
.telegram .telegram__button button span img { max-width: 100%; max-height: 100%; }
.telegram .telegram__button a:hover,
.telegram .telegram__button button:hover { background: #3787ef; }

.products .products__button { margin-top: 40px; display: flex; justify-content: center; }
.products .products__button .btn { min-width: 300px; }
.products .products__carousel .swiper-slide { height: auto; }
.products .products__carousel .product { height: 100%; }

.product .product__wrapp { position: relative; }
.product .product__image { height: 250px; font-size: 0; overflow: hidden; }
.product .product__image a { display: block; width: 100%; height: 100%; }
.product .product__image img { width: 100%; height: 100%; object-fit: cover; }
.product .product__favorite { position: absolute; right: 6px; top: 6px; }
.product .product__favorite a { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; padding: 10px; background: #fff; border: 1px solid #fff; }
.product .product__favorite a img { max-width: 100%; max-height: 100%; }
.product .product__favorite a:hover { border-color: #F15238; }
.product .product__name { font-size: 16px; font-weight: 500; }
.product .product__name a:hover { color: #F15238; }
.product .product__prices .product__price-current { font-size: 28px; font-weight: 500; }
.product .product__prices .product__price-old { font-size: 16px; font-weight: 500; color: #525C67; text-decoration: line-through; }
.product .product__button .btn { width: 100%; }

.product-tile { display: flex; flex-direction: column; height: auto; }
.product-tile .product__name { margin-top: 25px; }
.product-tile .product__prices { margin-top: 16px; }
.product-tile .product__prices .product__price-old { margin-top: 10px; }
.product-tile .product__button { padding-top: 16px; margin-top: auto; }

.product-flat { display: flex; }
.product-flat + .product-flat { margin-top: 40px; }
.product-flat .product__wrapp { width: calc(50% - 20px); }
.product-flat .product__content { width: 50%; padding-left: 40px; display: flex; flex-direction: column; }
.product-flat .product__name { font-size: 24px; margin-bottom: auto; }
.product-flat .product__prices { display: flex; justify-content: space-between; margin-top: 24px; align-items: flex-end; }
.product-flat .product__prices .product__price-old { margin-left: 20px; }
.product-flat .product__button { margin-top: 24px; }

.categories .categories__tiles { display: flex; flex-wrap: wrap; margin: -10px; }
.categories .categories__tiles .category, .categories .categories__tiles .other { width: calc(33.33333333% - 20px); margin: 10px; min-height: 240px; }
.categories .categories__tiles .category span, 
.categories .categories__tiles .other span { font-size: 22px; font-weight: 500; color: #fff; }

.categories .categories__tiles .category span:first-letter, 
.categories .categories__tiles .other span:first-letter {
    text-transform: uppercase;
}

.category { font-size: 0; background-size: cover; background-position: center; position: relative; }
.category:before { content: ""; position: absolute; left: 0; top: 0; right: 0; bottom: 0; background: #000; opacity: 0.5; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.category:hover:before { opacity: 0.25; }
.category a { display: block; height: 100%; position: relative; z-index: 1; }
.category span { position: relative; z-index: 1; display: block; padding: 24px; background: rgba(0, 0, 0, 0.5); -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }

.other { background: #343E49; display: flex; flex-direction: column; justify-content: space-between; padding: 24px; }
.other span { margin-bottom: 20px; }

.communication .communication__wrapp { background: #F0F0F4; padding: 24px; }
.communication .communication__methods { display: flex; flex-wrap: wrap; margin: -6px; }
.communication .communication__methods .method { width: calc(33.33333333% - 12px); margin: 6px; }
.communication .communication__methods .method.phones-block {width: calc(31% - 12px);}
.communication .communication__methods .method.msg-block {width: calc(23% - 12px);}
.communication .communication__form { margin-top: 20px; }
.communication .communication__form form { display: flex; margin: -6px; align-items: flex-end; }
.communication .communication__form .form-group { width: 33.33333%; padding: 6px; }
.communication .communication__form .form-group.checkbox-group {width: 100%;margin-left:7px;}
.communication .communication__form .btn { width: 100%; }
.communication .communication__form .consent {
    margin-left: 0;
    margin-bottom: 0;
}

.communication.communication-min .communication__form { margin-top: 0; }

.communication-in-page { background: #F0F0F4; margin:36px 0; padding-top: 7px; }
.communication-in-page .form-msg h3 { font-size: 18px; margin-bottom: 9px; margin-top: 7px; }
.communication-in-page .form-msg div { font-size: 16px; margin-bottom: 0; }
.communication-in-page .form-msg div + div { margin-top: 7px; }
.communication-in-page .form-msg div:last-child { margin-bottom: 22px; }

.method a,
.method button { width: 100%; font-size: 20px; font-weight: 500; background: #fff; padding: 6px 6px 6px 22px; display: flex; align-items: center; justify-content: space-between; white-space: nowrap; }
.method a small,
.method button small { font-size: 15px; display: block; margin-top: 3px; }
.method a span,
.method button span { width: 52px; height: 52px; display: flex; align-items: center; justify-content: center; font-size: 0; padding: 10px; background: #fff; margin-left: 24px; }
.method a span img,
.method button span img { max-width: 100%; max-height: 100%; }
.method a:hover,
.method button:hover { background: #fbfbfb; }

.method.msg-block button {font-size: 16px; padding: 6px 6px 6px 18px;}
.method.msg-block button div, .method.msg-block button p {text-align: left;}
.method.msg-block button small { font-size: 14px; }
.method.msg-block.msg-max button span {padding: 14px;}
.method.msg-block.msg-max svg {color:#fff;}

.articles .articles__carousel .swiper-slide { height: auto; }

.article { padding: 24px; display: flex; flex-direction: column; border: 1px solid #C2C2C2; }
.article .article__name { font-size: 18px; font-weight: 500; }
.article .article__name a:hover { color: #F15238; }
.article .article__excerpt { font-size: 16px; color: #525C67; margin-top: 16px; }
.article .article__meta { margin-top: auto; padding-top: 30px; display: flex; justify-content: space-between; }
.article .article__read { margin-right: 20px; font-size: 16px; font-weight: 500; }
.article .article__read a { color: #F15238; border-bottom: 1px solid #F15238; line-height: 1; }
.article .article__read a:hover { border-color: transparent; }
.article .article__date { font-size: 14px; }
.article .article__more { font-size: 26px; font-weight: 600; }
.article .article__button { margin-top: auto; padding-top: 30px; }
.article .article__button .btn { width: 100%; }

.videos .videos__button { 
    margin-top: 40px;
    display: flex;
    justify-content: center;
}
.videos .videos__button .btn {
    padding: 7px 52px;
}

.video .video__poster { position: relative; overflow: hidden; }
.video .video__poster:before { content: ""; display: block; padding-top: 65%; }
.video .video__poster a { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.video .video__poster img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.video .video__name { margin-top: 24px; font-weight: 500; font-size: 20px; }

.video.video__element { margin-bottom:22px; }
.video.video__element .video__name { margin-top: 12px; }
.video.video__element:hover {opacity:0.8;}

.advantages .advantages__tiles { display: flex; flex-wrap: wrap; margin: -20px; }
.advantages .advantages__tiles .advantage { width: calc(25% - 40px); margin: 20px; }

.advantage { padding: 24px; border: 1px solid #A3A3A3; }
.advantage .advantage__icon { 
    width: 56px; height: 56px; 
    display: flex; align-items: center; justify-content: center; 
}
/* Крупные иконки на бэкграунде */
/*
.advantage .advantage__icon {
    width: 190px;
    height: 190px;
    background: #f6e6e3;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 50%;
    padding: 26px;
    margin: 0 auto;
}
*/
.advantage .advantage__icon img { max-width: 100%; max-height: 100%; }
.advantage .advantage__name { font-size: 18px; font-weight: 500; margin-top: 9px; }
.advantage .advantage__descr { font-size: 15px; color: #525C67; margin-top: 12px; }

.faq { background: #fff; border: 1px solid #C2C2C2; }
.faq + .faq { margin-top: 12px; }
.faq .faq__question { position: relative; cursor: pointer; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; padding: 24px 100px 24px 24px; font-size: 24px; font-weight: 500; }
.faq .faq__question:after, .faq .faq__question:before { content: ""; position: absolute; width: 40px; height: 40px; top: 50%; margin-top: -20px; right: 24px; border: 1px solid transparent; }
.faq .faq__question:after { border-color: #C2C2C2; }
.faq .faq__question:before { background: url(../img/icons/cross.svg) center no-repeat; background-size: 16px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; z-index: 1; }
.faq .faq__question:hover { color: #F15238; }
.faq .faq__answer { display: none; padding: 0 24px 24px; font-size: 16px; }
.faq .faq__answer p + p { margin-top: 12px; }
.faq.open .faq__question { color: #F15238; }
.faq.open .faq__question:before { -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }

.footer .footer__logo { font-size: 0; }
.footer .footer__logo a { display: inline-block; }
.footer .footer__logo img { max-width: 100%; }
.footer .footer__communication { margin-top: 40px; display: flex; align-items: flex-end; justify-content: space-between; }
.footer .footer__content { padding-right: 40px; max-width: 570px; }
.footer .footer__content .footer__title { font-size: 32px; font-weight: 600; }
.footer .footer__content .footer__descr { margin-top: 16px; font-size: 16px; font-weight: 500; }
.footer .footer__middle { border-top: 1px solid #C2C2C2; margin-top: 40px; padding-top: 40px; display: flex; justify-content: space-between; }
.footer .footer__middle .footer__title { font-size: 24px; font-weight: 500; margin-bottom: 20px; }
.footer .footer__form { width: 50%; padding-right: 40px; }
.footer .footer__form form { display: flex; align-items: flex-end; width: 100%; max-width: 440px; }
.footer .footer__form form .form-group:first-child { flex: 1 0; }
.footer .footer__form form button { margin-left: 12px; }
.footer .footer__nav, .footer .footer__contacts { padding-left: 40px; width: 25%; }
.footer .footer__nav ul, .footer .footer__contacts ul { font-size: 16px; font-weight: 500; }
.footer .footer__nav li + li, .footer .footer__contacts li + li { margin-top: 15px; }
.footer .footer__nav a:hover, .footer .footer__contacts a:hover { color: #F15238; }
.footer .footer__bottom { margin-top: 40px; padding: 40px 0; border-top: 1px solid #C2C2C2; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; font-size: 16px; font-weight: 500; }
.footer .footer__bottom a:hover { color: #F15238; }
.footer .footer__links { display: flex; }
.footer .footer__links > * { x-margin-right: 40px; }
.footer .footer__socials ul { display: flex; }
.footer .footer__socials li { margin-left: 40px; }

.footer .copyright {
    width: 360px;
}
.footer .copyright span {display:inline-block;margin:3px 0 0 0;}
.footer .links_col {width:100%;}
.footer .links_col ul {
    display: flex;
    flex-wrap: wrap;
}
.footer .links_col ul li {
    width: 50%;
    font-size: 14px;
    font-weight: 400;
    margin: 0 0 7px 0;
}

.modal { background: #F0F0F4; padding: 90px 50px 48px; max-width: 600px; width: 100%; }
.modal .fancybox-close-small { padding: 0; margin: 0; width: 48px; height: 48px; opacity: 1; right: 12px; top: 12px; background: url(../img/icons/close.svg) center center no-repeat #fff; border: 1px solid #C2C2C2; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.modal .fancybox-close-small svg { display: none; }
.modal .fancybox-close-small:hover { background-color: #fafafa; }
.modal .modal__methods .method + .method { margin-top: 12px; }
.modal .modal__methods + .modal__form { margin-top: 40px; }
.modal .modal__form .form-group + .form-group { margin-top: 12px; }
.modal .modal__form .form-group.checkbox-group + .form-group.checkbox-group { margin-top: 0; }
.modal .modal__form .btn { width: 100%; }
.modal .modal__title { text-align: center; margin-bottom: 24px; font-size: 32px; font-weight: 600; }
.modal.modal-dependences .modal__title { font-size: 22px; margin-bottom: 12px; }
.modal .modal__subtitle { margin: 24px 0; font-size: 24px; font-weight: 500; text-align: center; }
.modal .modal__qr { font-size: 0; }
.modal .modal__qr .modal__qr-code { max-width: 250px; margin: 0 auto; }
.modal .modal__qr .modal__qr-code img { max-width: 100%; }
.modal .modal__qr .modal__qr-text { margin-top: 24px; text-align: center; font-size: 24px; font-weight: 500; }
.modal .modal__qr .modal__qr-text span { color: #2B9429; }

.modal-dependences { max-width: 960px; padding: 90px 32px 32px; }
.modal-dependences .swiper-navigation { display: flex; margin-top: 7px;
/* position: absolute; z-index: 1; left: 0; bottom: 0; */ }
.modal-dependences .swiper-navigation a { min-width: 122px; }
.modal-dependences .swiper-navigation a + a { margin-left: 8px; }
.modal-dependences .swiper-navigation i { width: 11px; height: 17px; display: block; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.modal-dependences .swiper-navigation .swiper-prev i { background: url(../img/icons/arrow-left-gray.svg) center no-repeat; background-size: contain; margin-right: 15px; }
.modal-dependences .swiper-navigation .swiper-next i { background: url(../img/icons/arrow-right-white.svg) center no-repeat; background-size: contain; margin-left: 15px; }
.modal-dependences .swiper-navigation .swiper-button-disabled { pointer-events: none; background: #C2C2C2; color: #808080; border-color: transparent; }
.modal-dependences .swiper-navigation .swiper-button-disabled.swiper-prev i { background: url(../img/icons/arrow-left-gray.svg) center no-repeat; background-size: contain; }
.modal-dependences .swiper-navigation .swiper-button-disabled.swiper-next i { background: url(../img/icons/arrow-right-gray.svg) center no-repeat; background-size: contain; }

.dependence .dependence__wrapp { 
    display: flex; 
    align-items: center;
    gap: 18px;
}
.dependence .dependence__content { width: 50%; padding: 0 20px 18px 0; }
.dependence .dependence__image { width: 50%; font-size: 0; padding-left: 0; }
.dependence .dependence__image img { width: 100%; }
.dependence .dependence__title { text-align: left; }
.dependence .dependence__descr { font-size: 18px; color: #525C67; }

.up { position: fixed; z-index: 10; right: 28px; bottom: 100px; text-align: center; display: none; }
.up .up__icon { display: block; width: 48px; height: 48px; background: url(../img/icons/arrow-up.svg) center no-repeat #fff; border: 1px solid #343E49; margin: 0 auto 12px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; margin-bottom: -35px; }
.up .up__text { font-size: 16px; font-weight: 500; text-align: center; opacity: 0; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; position: relative; z-index: -1; display: block; margin-top: 12px; }
.up:hover { color: #F15238; }
.up:hover .up__icon { border-color: #F15238; margin: 0; }
.up:hover .up__text { opacity: 1; }

.catalog .title { display: flex; align-items: center; justify-content: space-between; }
.catalog .title h1 { margin-right: 30px; }
.catalog .catalog__wrapp { display: flex; }
.catalog .catalog__filter { width: 260px; }
.catalog .catalog__content { flex: 1 0; margin-left: 40px; }
.catalog .catalog__controls { margin-bottom: 24px; display: flex; align-items: center; justify-content: space-between; }
.catalog .catalog__sort { width: 220px; position: relative; z-index: 5; font-size: 16px; font-weight: 500; }
.catalog .catalog__sort .catalog__sort-current { border: 1px solid #C2C2C2; position: relative; cursor: pointer; width: 100%; overflow: hidden; text-overflow: ellipsis; line-height: 1.1; min-height: 40px; display: flex; align-items: center; padding: 5px 40px 5px 14px; }
.catalog .catalog__sort .catalog__sort-current:after { content: ""; position: absolute; right: 14px; top: 50%; width: 12px; height: 8px; margin-top: -4px; background: url(../img/icons/arrow-filter.svg) center center no-repeat; background-size: contain; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.catalog .catalog__sort .catalog__sort-list { border: 1px solid #C2C2C2; border-top: 0; display: none; position: absolute; left: 0; right: 0; top: 100%; background: #fff; }
.catalog .catalog__sort .catalog__sort-list P:first-child { padding-top: 4px; }
.catalog .catalog__sort .catalog__sort-list P:last-child { padding-bottom: 4px; }
.catalog .catalog__sort .catalog__sort-list a { padding: 10px 40px 10px 14px; position: relative; cursor: pointer; margin: 0; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; display: block; }
.catalog .catalog__sort .catalog__sort-list a:after { content: ""; width: 16px; height: 12px; position: absolute; right: 14px; top: 50%; margin-top: -6px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; opacity: 0; background: url(../img/icons/checkbox-check.svg) center center no-repeat; background-size: contain; }
.catalog .catalog__sort .catalog__sort-list a.active { background: #F0F0F4; }
.catalog .catalog__sort .catalog__sort-list a.active:after { opacity: 1; }
.catalog .catalog__sort.open .catalog__sort-current:after { -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); }
.catalog .catalog__search { width: 220px; border: 1px solid #C2C2C2; height: 40px; display: flex; justify-content: space-between; align-items: center; padding: 5px 43px 5px; background: url(../img/icons/search.svg) left 14px center no-repeat; background-size: 16px; position: relative; margin-left: 12px; margin-right: auto; }
.catalog .catalog__search form { flex: 1 0; }
.catalog .catalog__search input { width: 100%; height: 24px; font-size: 16px; font-family: "Jost", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; border: 0; background: transparent; color: #343E49; }
.catalog .catalog__search input:-moz-placeholder, .catalog .catalog__search input::-moz-placeholder { color: #525C67; opacity: 1; }
.catalog .catalog__search input::-webkit-input-placeholder { color: #525C67; }
.catalog .catalog__search .tooltip { position: absolute; right: 14px; top: 50%; margin-top: -9px; }
.catalog .catalog__view { margin-left: 12px; display: flex; }
.catalog .catalog__view a { width: 40px; height: 40px; background: #F0F0F4; display: flex; padding: 10px; font-size: 0; }
.catalog .catalog__view a img { max-width: 100%; max-height: 100%; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.catalog .catalog__view a + a { margin-left: 12px; }
.catalog .catalog__view .active { background: #F15238; }
.catalog .catalog__view .active img { -webkit-filter: brightness(0) invert(1); filter: brightness(0) invert(1); }

.uislider .ui-widget-content { border: 0; background: #C2C2C2; }
.uislider .ui-slider-horizontal { height: 8px; }
.uislider .ui-widget-header { background: #F15238; border-radius: 0; }
.uislider .ui-slider-handle { width: 12px; height: 12px; border: 0; top: 50%; background: #fff; border: 1px solid #F15238; margin-top: -6px; margin-left: -6px; }
.uislider .uislider__slider { margin: 0 6px; }
.uislider .uislider__slider:before { content: ""; position: absolute; left: -6px; right: -6px; top: 0; bottom: 0; background: #C2C2C2; }
.uislider .uislider__values { display: flex; }
.uislider .uislider__values .value { width: 50%; padding: 10px 14px; font-size: 16px; font-weight: 500; display: flex; align-items: center; }
.uislider .uislider__values .value span + span { margin-left: 4px; }
.uislider .uislider__values .value:last-child { justify-content: flex-end; position: relative; }
.uislider .uislider__values .value:last-child:before { content: ""; position: absolute; left: 0; top: 50%; margin-top: -10px; width: 1px; height: 20px; background: #C2C2C2; }

.filter-toggle { font-size: 0; display: none; }
.filter-toggle img { width: 32px; }

.filter input[type="checkbox"], .filter input[type="radio"] { display: none; }
.filter input[type="checkbox"] + label, .filter input[type="radio"] + label { font-family: "Jost", sans-serif; font-optical-sizing: auto; display: block; font-weight: 500; font-style: normal; font-size: 16px; padding: 10px 40px 10px 14px; position: relative; cursor: pointer; margin: 0; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.filter input[type="checkbox"] + label:after, .filter input[type="radio"] + label:after { content: ""; width: 16px; height: 12px; position: absolute; right: 14px; top: 50%; margin-top: -6px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; opacity: 0; background: url(../img/icons/checkbox-check.svg) center center no-repeat; background-size: contain; }
.filter input[type="checkbox"]:checked + label, .filter input[type="radio"]:checked + label { background: #F0F0F4; }
.filter input[type="checkbox"]:checked + label:after, .filter input[type="radio"]:checked + label:after { opacity: 1; }
.filter .filter__title { font-size: 24px; font-weight: 500; margin-bottom: 24px; height: 40px; display: flex; align-items: center; justify-content: space-between; }
.filter .filter__title .close { margin-left: 20px; font-size: 0; display: none; }
.filter .filter__section .filter__section-name { border: 1px solid #C2C2C2; font-size: 16px; font-weight: 500; position: relative; cursor: pointer; min-height: 40px; display: flex; align-items: center; padding: 5px 40px 5px 14px; }
.filter .filter__section .filter__section-name:after { content: ""; position: absolute; right: 14px; top: 50%; width: 12px; height: 8px; margin-top: -4px; background: url(../img/icons/arrow-filter.svg) center center no-repeat; background-size: contain; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.filter .filter__section + .filter__section { margin-top: 24px; }
.filter .filter__section .filter__section-content { border: 1px solid #C2C2C2; border-top: 0; display: none; }
.filter .filter__section .filter__section-content P:first-child { padding-top: 4px; }
.filter .filter__section .filter__section-content P:last-child { padding-bottom: 4px; }
.filter .filter__section.open .filter__section-name:after { -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); }

.breadcrumbs { margin: 40px 0; font-size: 14px; color: #525C67; position: relative; z-index: 1; }
.breadcrumbs ul { display: flex; flex-wrap: wrap; padding-right: 120px; }
.breadcrumbs li { position: relative; }
.breadcrumbs li:not(:last-child):after { content: "-"; display: inline-block; margin: 0 5px; }
.breadcrumbs a:hover { color: #F15238; }

.card .card__top { display: flex; align-items: center; justify-content: flex-end; margin-top: -72px; margin-bottom: 24px; }
.card .card__top > div + div { margin-left: 8px; }
.card .card__top a { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 10px; font-size: 0; border: 1px solid #343E49; }
.card .card__top a img { max-width: 100%; max-height: 100%; }
.card .card__top a:hover { border-color: #F15238; }
.card .card__title { display: none; }
.card .card__wrapp { display: flex; }
.card .card__images { width: 50%; padding-right: 20px; font-size: 0; }
.card .card__images .swiper img { width: 100%; }
.card .card__rating { margin-top: 24px; font-size: 0; text-align: center; background: #f8f8f8; padding: 10px; }
.card .card__rating img { max-width: 100%; }
.card .card__content { width: 50%; padding-left: 20px; }
.card .card__content .card__title { display: block; margin-bottom: 24px; }
.card .card__slideshow { position: relative; }
.card .card__slideshow .swiper-arrow { position: absolute; z-index: 1; top: 50%; margin-top: -24px; width: 48px; height: 48px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; border: 1px solid #fff; }
.card .card__slideshow .swiper-arrow:not(.swiper-button-disabled):hover { cursor: pointer; background: url(../img/icons/arrow-white.svg) center no-repeat; }
.card .card__slideshow .swiper-prev { background: url(../img/icons/arrow-prev-white.svg) center no-repeat; background-size: 38% !important; left: 10px; }
.card .card__slideshow .swiper-prev:not(.swiper-button-disabled):hover { cursor: pointer; background: url(../img/icons/arrow-prev-red.svg) center no-repeat; }
.card .card__slideshow .swiper-next { background: url(../img/icons/arrow-next-white.svg) center no-repeat; background-size: 38% !important; right: 10px; }
.card .card__slideshow .swiper-next:not(.swiper-button-disabled):hover { cursor: pointer; background: url(../img/icons/arrow-next-red.svg) center no-repeat; }
.card .card__slideshow .swiper-button-disabled { opacity: 0.6; }
.card .card__thumbs { margin-top: 12px; }
.card .card__thumb { position: relative; overflow: hidden; }
.card .card__thumb:before { content: ""; display: block; padding-top: 100%; }
.card .card__thumb img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.card .card__props { font-size: 16px; }
.card .card__props li + li { margin-top: 5px; }
.card .card__section + .card__section { margin-top: 24px; padding-top: 24px; border-top: 1px solid #F0F0F4; }
.card .card__prices { display: flex; align-items: center; justify-content: space-between; }
.card .card__prices .card__prices-current { font-size: 32px; font-weight: 600; margin-right: 20px; }

.card .card__prices .btn.btn-default { padding: 7px 72px; }

.card .card__communication { display: flex; }
.card .card__communication .card__communication-section:first-child { flex: 1 0; margin-right: 16px; }
.card .card__communication .btn { width: 100%; }
.card .card__communication p { margin-top: 10px; font-size: 14px; font-weight: 600; }
.card .card__messengers { display: flex; }
.card .card__messengers a,
.card .card__messengers button { 
    width: 60px; height: 60px; display: flex; padding: 10px; align-items: center; justify-content: center;
    transition:0.3s all ease;
}
.card .card__messengers a + a,
.card .card__messengers button + button { margin-left: 12px; }
.card .card__messengers a img,
.card .card__messengers button img { max-width: 100%; max-height: 100%; }
.card .card__messengers a:hover,
.card .card__messengers button:hover {opacity:0.8;}
.card .card__subtitle { margin-bottom: 16px; font-size: 24px; font-weight: 500; }
.card .card__materials { display: flex; flex-wrap: wrap; margin: -6px; }
.card .card__materials .material { width: calc(25% - 12px); margin: 6px; }
.card .material { border: 1px solid #C2C2C2; cursor: pointer; display: flex; flex-direction: column; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.card .material .material__image { position: relative; overflow: hidden; }
.card .material .material__image:before { content: ""; display: block; padding-top: 63%; }
.card .material .material__image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: center; }
.card .material .material__name { padding: 12px; font-size: 14px; font-weight: 500; flex: 1 0; }
.card .material.active { background: #F15238; border-color: #F15238; color: #fff; }
.card .card__text { color: #525C67; font-size: 16px; font-weight: 500; }

.information .tabs__buttons ul { margin: 0; }
.information .tabs__buttons li { margin: 0 0 -1px; }
.information .tabs__buttons li + li { margin-left: -1px; }
.information .tabs__buttons .btn { border-color: #C2C2C2; white-space: nowrap; }

.content { font-size: 16px; font-weight: 500; }
.content * + p, .content p + * { margin-top: 12px; }
.content li + li { margin-top: 5px; }
.content ul { list-style-type: circle; padding-left: 19px; }
.content ol { list-style-type: decimal; padding-left: 19px; }

.cemeteries .cemeteries__wrapp { background: url(../img/cemeteries-bg.png) center no-repeat; background-size: cover; padding: 32px; display: flex; }
.cemeteries .cemeteries__content { width: 58%; }
.cemeteries .cemeteries__image { font-size: 0; width: 42%; align-self: center; justify-content: center; padding: 40px 0 40px 40px; }
.cemeteries .cemeteries__image img { max-width: 100%; }
.cemeteries .cemeteries__title { margin-bottom: 24px; }
.cemeteries .cemeteries__info { font-size: 16px; font-weight: 500; color: #525C67; }
.cemeteries .cemeteries__button { margin-top: 24px; }

.stages .stages__wrapp { background: #F0F0F4; padding: 32px; }
.stages .progressbar { margin-bottom: 24px; }
.stages .stages__controls { margin-top: auto; padding-top: 40px; display: flex; justify-content: space-between; align-items: flex-end; }
.stages .swiper-navigation { margin-left: 40px; display: flex; }
.stages .swiper-navigation a { min-width: 122px; }
.stages .swiper-navigation a + a { margin-left: 8px; }
.stages .swiper-navigation i { width: 11px; height: 17px; display: block; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
.stages .swiper-navigation .swiper-prev i { background: url(../img/icons/arrow-left-gray.svg) center no-repeat; background-size: contain; margin-right: 15px; }
.stages .swiper-navigation .swiper-next i { background: url(../img/icons/arrow-right-white.svg) center no-repeat; background-size: contain; margin-left: 15px; }
.stages .swiper-navigation .swiper-button-disabled { pointer-events: none; background: #C2C2C2; color: #808080; border-color: transparent; }
.stages .swiper-navigation .swiper-button-disabled.swiper-prev i { background: url(../img/icons/arrow-left-gray.svg) center no-repeat; background-size: contain; }
.stages .swiper-navigation .swiper-button-disabled.swiper-next i { background: url(../img/icons/arrow-right-gray.svg) center no-repeat; background-size: contain; }

.stage .stage__head { display: flex; justify-content: space-between; font-size: 24px; font-weight: 600; }
.stage .stage__indexes { white-space: nowrap; margin-left: 40px; }
.stage .stage__descr { 
    margin-top: 18px; 
    font-size: 20px; 
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.stage .stage__descr .stage__descr_image img {
    max-width: 220px;
    height: auto;
    max-height: 200px;
}
.stage .stage__descr p + *, .stage .stage__descr * + p { margin-top: 12px; }
.stage .stage__descr ul > li { padding-left: 20px; position: relative; }
.stage .stage__descr ul > li + li { margin-top: 12px; }
.stage .stage__descr ul > li:before { content: ""; position: absolute; width: 8px; height: 8px; left: 0; top: 8px; background: #F15238; }
.stage .stage__descr ul ul { 
    padding-left: 9px;
    font-size: 17px;
    margin-top: 9px;
}
.stage .stage__descr ul ul li { padding-left: 12px; position: relative; }
.stage .stage__descr ul ul li:before { content: ""; position: absolute; left: 0; top: 11px; width: 3px; height: 3px; border-radius: 50%; background: #525C67; }
.stage .stage__descr ul ul li + li { margin-top: 4px; }

.usefuls .usefuls__grid { display: grid; gap: 20px; grid-template-columns: repeat(3, 1fr); }

.useful { min-height: 270px; padding: 24px; background: #F0F0F4; display: flex; flex-direction: column; position: relative; }
.useful .useful__title { font-size: 24px; font-weight: 500; line-height: 1.1; }
.useful .useful__descr { margin-top: 16px; font-size: 14px; color: #505F79; }
.useful .useful__button { margin-top: auto; padding-top: 50px; }
.useful .useful__icon { position: absolute; bottom: 24px; right: 0; width: 150px; background: #fff; padding: 8px; }
.useful .useful__icon .useful__icon-box { width: 58px; height: 58px; background: #F0F0F4; padding: 10px; display: flex; align-items: center; justify-content: center; }
.useful .useful__icon .useful__icon-box img { max-width: 100%; max-height: 100%; }
.useful.useful-lg .useful__title { font-size: 32px; font-weight: 600; }
.useful.useful-lg .useful__icon { bottom: auto; top: 50%; margin-top: -70px; right: 0; width: 277px; }
.useful.useful-lg .useful__icon .useful__icon-box { width: 124px; height: 124px; }
.useful.useful-row-1-2 { grid-row: 1/3; }
.useful.useful-col-3 { grid-column: 3; }

@media screen and (max-width: 1199px) { .container { max-width: 992px; }
  .btn-xl { height: 56px; }
  .mt { margin-top: 70px; }
  .pt { padding-top: 70px; }
  .ptb { padding-top: 70px; padding-bottom: 70px; }
  .tooltip .tooltip__popup { left: -15px; -webkit-transform: none; -o-transform: none; transform: none; }
  .tooltip .tooltip__popup:after { left: 15px; margin-left: 0; }
  .topline .topline__address p { font-size: 15px; padding-left: 24px; }
  .topline .topline__address p:before { width: 15px; height: 20px; margin-top: -11px; }
  .topline .topline__time { margin-left: 20px; padding-left: 20px; font-size: 15px; }
  .topline .topline__time:before { height: 20px; margin-top: -10px; }
  .topline .topline__time p { padding-left: 30px; }
  .topline .topline__time p:before { width: 18px; height: 18px; margin-top: -10px; }
  .topline .topline__tel a { font-size: 15px; }
  .title h1 { font-size: 36px; }
  .title h2 { font-size: 28px; }
  .header .header__logo { width: 140px; }
  .header .header__button { margin-left: 30px; }
  .header .catalog-toggle, .header .catalog-button { padding: 5px 25px 4px 46px; font-size: 15px; height: 44px; }
  .header .catalog-toggle span, .header .catalog-button span { width: 14px; left: 24px; }
  .header .header__messengers { margin-left: 30px; }
  .header .header__messengers li + li { margin-left: 20px; padding-left: 20px; }
  .header .header__messengers li + li:before { height: 24px; margin-top: -12px; }
  .header .header__messengers a { font-size: 15px; }
  .header .header__messengers img { height: 24px; }
  .header .header__controls a { width: 44px; height: 44px; }
  .header .header__menu { font-size: 15px; }
  .header .header__catalog { padding: 50px 0; }
  .header .header__catalog .container > ul { margin: -20px -15px; }
  .header .header__catalog .container > ul > li { padding: 20px 15px; font-size: 15px; }
  .header .header__catalog .container > ul > li > p { font-size: 18px; margin-bottom: 20px; }
  .header .header__catalog .container > ul > li ul li + li { margin-top: 15px; }
  .offer .offer__title h1 { font-size: 41px; }
  .offer .offer__advantage .offer__advantage-icon { width: 44px; height: 44px; }
  .offer .offer__advantage .btn { min-width: 180px; }
  .telegram .telegram__wrapp { padding: 6px 6px 6px 20px; }
  .telegram .telegram__info { font-size: 18px; }
  .telegram .telegram__button a,
  .telegram .telegram__button button { font-size: 18px; padding: 4px 4px 4px 20px; }
  .telegram .telegram__button a span,
  .telegram .telegram__button button span { width: 55px; height: 55px; margin-left: 20px; }
  .products .products__button .btn { min-width: 280px; }
  .product .product__prices .product__price-current { font-size: 26px; }
  .product-flat + .product-flat { margin-top: 35px; }
  .product-flat .product__wrapp { width: calc(50% - 15px); }
  .product-flat .product__content { padding-left: 30px; }
  .product-flat .product__name { font-size: 22px; }
  .categories .categories__tiles .category, .categories .categories__tiles .other { min-height: 220px; }
  .categories .categories__tiles .category span, .categories .categories__tiles .other span { font-size: 20px; }
  .category span { padding: 20px; }
  .other { padding: 20px; }
  .communication .communication__wrapp { padding: 20px; }
  .method a,
  .method button { font-size: 18px; padding: 6px 6px 6px 20px; }
  .method a small,
  .method button small { font-size: 15px; }
  .method a span,
  .method button span { width: 48px; height: 48px; margin-left: 20px; }
  .article { padding: 20px; }
  .article .article__name { font-size: 22px; }
  .article .article__more { font-size: 24px; }
  .video .video__name { margin-top: 20px; font-size: 22px; }
  .advantages .advantages__tiles { margin: -15px; }
  .advantages .advantages__tiles .advantage { width: calc(25% - 30px); margin: 15px; }
  .advantage { padding: 20px; }
  .advantage .advantage__icon { width: 52px; height: 52px; }
  .advantage .advantage__name { font-size: 22px; }
  
  .card .card__prices .btn.btn-default { padding: 7px 56px; }
  
  .faq .faq__question { padding: 20px 90px 20px 20px; font-size: 22px; }
  .faq .faq__question:after, .faq .faq__question:before { right: 20px; }
  .faq .faq__answer { padding: 0 20px 20px; }
  .footer .footer__communication { margin-top: 35px; }
  .footer .footer__content { padding-right: 30px; }
  .footer .footer__content .footer__title { font-size: 28px; }
  .footer .footer__middle { margin-top: 35px; padding-top: 35px; }
  .footer .footer__middle .footer__title { font-size: 22px; }
  .footer .footer__nav, .footer .footer__contacts { padding-left: 30px; }
  .footer .footer__bottom { margin-top: 35px; padding: 35px 0; }
  .footer .footer__links > * { x-margin-right: 30px; }
  .footer .footer__socials li { margin-left: 30px; }
  .modal { padding: 85px 40px 70px; max-width: 580px; }
  .modal .fancybox-close-small { width: 44px; height: 44px; }
  .modal .modal__title { font-size: 28px; margin-bottom: 20px; }
  .modal .modal__subtitle {
    margin: 26px 0 12px 0;
    font-size: 20px;
  }
  .modal .modal__qr .modal__qr-code { max-width: 220px; }
  .modal .modal__qr .modal__qr-text { margin-top: 20px; font-size: 22px; }
  .modal-dependences { max-width: 860px; padding: 85px 24px 24px; }
  .modal-dependences .swiper-navigation a { min-width: 120px; }
  .dependence .dependence__content { padding: 0 15px 18px 0; }
  .dependence .dependence__image { padding-left: 15px; }
  .dependence .dependence__descr { font-size: 18px; }
  .arow-up span { width: 44px; height: 44px; }
  .catalog .catalog__content { margin-left: 30px; }
  .catalog .catalog__controls { margin-bottom: 20px; }
  .catalog .catalog__sort { width: 200px; }
  .catalog .catalog__search { width: 200px; }
  .filter .filter__title { font-size: 22px; }
  .card .card__top { margin-top: -70px; }
  .card .card__top a { width: 44px; height: 44px; }
  .card .card__images { padding-right: 15px; }
  .card .card__content { padding-left: 15px; }
  .card .card__slideshow .swiper-arrow { margin-top: -22px; width: 44px; height: 44px; }
  .card .card__prices .card__prices-current { font-size: 28px; }
  .card .card__messengers a,
  .card .card__messengers button { width: 56px; height: 56px; }
  .card .card__subtitle { font-size: 22px; }
  .card .card__materials .material { width: calc(33.33333333% - 12px); }
  .cemeteries .cemeteries__wrapp { padding: 24px; }
  .cemeteries .cemeteries__content { width: 56%; }
  .cemeteries .cemeteries__image { width: 44%; padding: 40px 0 40px 30px; }
  .stages .stages__wrapp { padding: 24px; }
  .stages .swiper-navigation { margin-left: 30px; }
  .stages .swiper-navigation a { min-width: 120px; }
  .stage .stage__head { font-size: 28px; }
  .stage .stage__indexes { margin-left: 30px; }
  .stage .stage__descr { font-size: 18px; }
  .stage .stage__descr > ul > li:before { top: 7px; }
  .stage .stage__descr > ul ul li:before { top: 10px; }
  .useful { min-height: 260px; }
  .useful .useful__title { font-size: 22px; }
  .useful .useful__icon { width: 130px; }
  .useful .useful__icon .useful__icon-box { width: 54px; height: 54px; }
  .useful.useful-lg .useful__title { font-size: 28px; }
  .useful.useful-lg .useful__icon { margin-top: -58px; width: 200px; }
  .useful.useful-lg .useful__icon .useful__icon-box { width: 100px; height: 100px; } }
@media screen and (max-width: 991px) { 
    .container { max-width: 768px; }
  .btn-xl { height: 52px; font-size: 19px; }
  .mt { margin-top: 60px; }
  .pt { padding-top: 60px; }
  .ptb { padding-top: 60px; padding-bottom: 60px; }
  .topline .topline__address {
    align-items: flex-start;
    flex-direction: column;
    gap: 9px;
  }
  .topline .topline__address p { font-size: 14px; }
  .topline .topline__address p br { display: initial; }
  .topline .topline__address .contact_link {
        margin-left: 22px;
    }
  .topline .topline__time { font-size: 14px; }
  .topline .topline__tel a { font-size: 14px; }
  .title { margin-bottom: 35px; }
  .title h1 { font-size: 32px; }
  .title h2 { font-size: 26px; }
  
    .header .header__messengers li + li {
        margin-left: 12px;
        padding-left: 12px;
    }
    .header .header__messengers button {
        font-size: 14px;
    }
  
  .header .header__logo { width: 120px; }
  .header .header__button { margin-left: 20px; }
  .header .catalog-toggle, .header .catalog-button { padding: 5px 20px 4px 40px; font-size: 14px; height: 40px; }
  .header .catalog-toggle span, .header .catalog-button span { width: 12px; left: 19px; }
  .header .header__messengers { margin-left: 20px; }
  .header .header__messengers a { font-size: 14px; }
  .header .header__controls a { width: 40px; height: 40px; }
  .header .header__menu { font-size: 14px; }
  .header .header__menu > ul {
        gap: 9px;
    }
  .header .header__menu > ul > li a { padding: 15px 10px 14px; }
  .header .header__catalog { padding: 50px 0; }
  .header .header__catalog .container > ul { margin: -20px -15px; }
  .header .header__catalog .container > ul > li { padding: 20px 15px; font-size: 15px; }
  .header .header__catalog .container > ul > li > p { font-size: 18px; margin-bottom: 20px; }
  .header .header__catalog .container > ul > li ul li + li { margin-top: 15px; }
  .offer .offer__title h1 { font-size: 34px; }
  .offer .offer__advantage .offer__advantage-icon { width: 40px; height: 40px; }
  .offer .offer__advantage .btn { min-width: 160px; }
  .telegram .telegram__info { font-size: 16px; }
  .telegram .telegram__button a,
  .telegram .telegram__button button { font-size: 16px; }
  .telegram .telegram__button a span,
  .telegram .telegram__button button span { width: 50px; height: 50px; }
  .products .products__button .btn { min-width: 260px; }
  .product .product__prices .product__price-current { font-size: 24px; }
  .product-flat + .product-flat { margin-top: 30px; }
  .product-flat .product__wrapp { width: calc(50% - 10px); }
  .product-flat .product__content { padding-left: 20px; }
  .product-flat .product__name { font-size: 20px; }
  .product-flat .product__prices { display: block; }
  .product-flat .product__prices .product__price-old { margin: 8px 0 0; }
  .categories .categories__tiles .category, .categories .categories__tiles .other { min-height: 200px; }
  .categories .categories__tiles .category span, .categories .categories__tiles .other span { font-size: 18px; }
  .communication .communication__wrapp { padding: 40px; }
  .communication .communication__methods { 
      x-display: block;
      x-margin: 0;
      gap: 7px;
  }
  .communication .communication__methods .method { 
      x-width: 100%; 
      x-margin: 0; 
  }
  .communication .communication__methods .method.phones-block {
    width: calc(49% - 12px);
  }
  .communication .communication__methods .method.msg-block {
    width: calc(49% - 12px);
  }
  .communication .communication__methods .method + .method { 
      x-margin: 12px 0 0; 
  }
  .communication .communication__form { margin-top: 30px; }
  .communication .communication__form form { display: block; margin: 0; }
  .communication .communication__form .form-group { width: 100%; padding: 0; }
  .communication .communication__form .form-group + .form-group { margin-top: 12px; }
  .article .article__name { font-size: 20px; }
  .article .article__more { font-size: 22px; }
  .video .video__name { font-size: 20px; }
  .advantages .advantages__tiles { margin: -10px; }
  .advantages .advantages__tiles .advantage { width: calc(50% - 20px); margin: 10px; }
  .advantage .advantage__icon { width: 48px; height: 48px; }
  .advantage .advantage__name { font-size: 20px; }
  .faq .faq__question { padding: 20px 80px 20px 20px; font-size: 20px; }
  .faq .faq__question:after, .faq .faq__question:before { width: 36px; height: 36px; margin-top: -18px; }
  .footer .footer__communication { margin-top: 30px; }
  .footer .footer__content .footer__title { font-size: 24px; }
  .footer .footer__middle { margin-top: 30px; padding-top: 30px; }
  .footer .footer__middle .footer__title { font-size: 20px; }
  .footer .footer__bottom { margin-top: 30px; padding: 30px 0; }
  .footer .footer__links > * { x-margin-right: 20px; }
  .footer .footer__socials li { margin-left: 20px; }
  .modal { padding: 80px 30px 50px; max-width: 560px; }
  .modal .fancybox-close-small { width: 40px; height: 40px; }
  .modal .modal__title { font-size: 24px; }
  .modal .modal__subtitle { font-size: 20px; }
  .modal .modal__qr .modal__qr-code { max-width: 190px; }
  .modal .modal__qr .modal__qr-text { font-size: 20px; }
  .modal-dependences { max-width: 740px; padding: 80px 24px 24px; }
  .dependence .dependence__content { padding: 0 15px 18px 0; }
  .dependence .dependence__image { padding-left: 15px; }
  .dependence .dependence__descr { font-size: 16px; }
  .arow-up span { width: 40px; height: 40px; }
  .catalog .catalog__filter { width: 240px; }
  .catalog .catalog__sort { width: 170px; }
  .catalog .catalog__search { width: 170px; }
  .filter .filter__title { font-size: 20px; }
  .breadcrumbs { margin: 30px 0 40px; }
  .card .card__top { margin-top: -68px; }
  .card .card__top a { width: 40px; height: 40px; }
  .card .card__slideshow .swiper-arrow { margin-top: -20px; width: 40px; height: 40px; }
  .card .card__prices { display: block; }
  .card .card__prices .card__prices-current { font-size: 24px; margin: 0; padding: 0; }
  .card .card__prices .card__prices-button { margin-top: 16px; }
  .card .card__prices .card__prices-button .btn { width: 100%; }
  .card .card__communication { display: block; }
  .card .card__communication .card__communication-section:first-child { margin: 0; }
  .card .card__messengers { margin-top: 16px; }
  .card .card__messengers a,
  .card .card__messengers button { width: 52px; height: 52px; }
  .card .card__subtitle { font-size: 20px; }
  .card .material .material__name { font-size: 13px; padding: 10px; }
  .information .tabs__buttons li { flex: 1 0; }
  .stages .stages__wrapp { padding: 20px; }
  .stage .stage__head { font-size: 24px; }
  .stage .stage__descr { font-size: 16px; }
  .stage .stage__descr > ul > li:before { top: 6px; }
  .stage .stage__descr > ul ul li:before { top: 9px; }
  .useful { min-height: 250px; padding: 20px; }
  .useful .useful__title { font-size: 20px; }
  .useful .useful__icon { width: 110px; bottom: 20px; }
  .useful .useful__icon .useful__icon-box { width: 50px; height: 50px; }
  .useful.useful-lg .useful__title { font-size: 24px; }
  .useful.useful-lg .useful__icon { margin-top: -48px; width: 160px; }
  .useful.useful-lg .useful__icon .useful__icon-box { width: 80px; height: 80px; } 
    
    .footer .links_col ul li {width: 100%;}
}
@media screen and (max-width: 767px) { .mobmenu-toggle, .mobmenu { display: block; }
  .container { max-width: 575px; }
  .btn-xl { height: 48px; font-size: 18px; }
  .topline { x-display: none; padding: 9px 0; }
  .topline .address_short,
  .topline .contact_link,
  .topline .topline__time, 
  .topline .topline__tel,
  .topline .topline__callback { display: none; }
  .topline .topline__address p:before { top: 10px; }
  .topline .topline__address p a { font-size: 14px; }
  .out { padding-top: 90px; }
  .header { position: fixed; top: 0 !important; left: 0; right: 0; }
  .header .header__logo img { max-height: 58px; }
  .header .header__button { display: none; }
  .header .header__messengers { display: none; }
  .header .header__bottom { display: none; }
  .header .header__top { 
      padding: 16px 0; 
      background: #ececf0;
      border-bottom: 1px solid #dedede;
  }
  .header .phones-block .view span { padding: 0 9px 0 0; }
  .header button {background: none;}
  .header .header__controls > div + div { margin-left: 15px; }
  .header .header__controls a { width: auto; height: auto; padding: 0; border: 0; }
  .header .header__controls a img { height: 21px; }
  .header .header__catalog { display: none !important; }
  .mobmenu .mobmenu__address { gap: 16px; }
  .offer .container { display: block; }
  .offer .offer__content { width: 100%; padding: 0; display: block; }
  .offer .offer__image { width: 100%; padding: 30px 0 0; }
  .offer .offer__image img { width: 100%; height: auto; }
  .offer .offer__advantages { padding: 0; }
  .offer .offer__advantage { position: relative; }
  .offer .offer__advantage .tooltip { position: static; }
  .offer .offer__advantage .tooltip .tooltip__popup { left: 0; right: 0; max-width: unset; width: 100%; }
  .telegram .telegram__wrapp { display: block; padding: 20px; }
  .telegram .telegram__info { padding: 0 0 20px; }
  .product .product__prices .product__price-current { font-size: 22px; }
  .categories .categories__tiles .category, .categories .categories__tiles .other { width: calc(50% - 20px); }
  .communication .communication__wrapp { padding: 20px; }
  .method a,
  .method button { font-size: 16px; }
  .method a small,
  .method button small { font-size: 14px; }
  .method a span,
  .method button span { width: 44px; height: 44px; }
  .method.msg-block button {font-size: 14px;}
  .method.msg-block button small { font-size: 12px; }
  .article .article__name { font-size: 18px; }
  .article .article__more { font-size: 20px; }
  .video .video__name { font-size: 18px; }
  .advantage .advantage__icon { width: 44px; height: 44px; }
  .advantage .advantage__name { font-size: 18px; }
  .faq .faq__question { padding: 20px 70px 20px 20px; font-size: 18px; }
  .faq .faq__question:after, .faq .faq__question:before { width: 32px; height: 32px; margin-top: -16px; }
  .footer .footer__content .footer__title { font-size: 20px; }
  .footer .footer__middle { flex-wrap: wrap; }
  .footer .footer__middle .footer__title { font-size: 18px; }
  .footer .footer__form { padding-right: 0; width: 100%; margin-bottom: 30px; }
  .footer .footer__form form { max-width: 100%; }
  .footer .footer__nav, .footer .footer__contacts { padding: 0; width: 50%; }
  .footer .footer__nav { padding-right: 15px; }
  .footer .footer__contacts { padding-left: 15px; }
  .footer .footer__bottom { display: block; }
  .footer .footer__socials { margin-top: 30px; }
  .footer .footer__socials li { margin: 0 20px 0 0; }
  .modal { padding: 70px 20px 20px; max-width: 540px; }
  .modal .fancybox-close-small { width: 36px; height: 36px; }
  .modal .modal__title { font-size: 20px; }
  .modal .modal__subtitle { font-size: 18px; }
  .modal .modal__qr .modal__qr-code { max-width: 160px; }
  .modal .modal__qr .modal__qr-text { font-size: 18px; }
  .modal-dependences { max-width: 540px; padding: 70px 20px 20px; }
  .modal-dependences .swiper-navigation { position: static; margin-top: 30px; justify-content: center; }
  .dependence .dependence__wrapp { display: block; }
  .dependence .dependence__content { padding: 0; width: 100%; }
  .dependence .dependence__image { padding: 30px 0 0; width: 100%; }
  .filter-toggle { display: block; }
  .filter { background: #fff; position: fixed; z-index: 20; left: 0; top: 0; height: 100%; width: 100%; overflow: auto; -webkit-transform: translateY(-120%); -o-transform: translateY(-120%); transform: translateY(-120%); -moz-transition: -moz-transform 0.6s; -o-transition: -o-transform 0.6s; -webkit-transition: -webkit-transform 0.6s; transition: transform 0.6s; }
  .filter.open { -webkit-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }
  .filter .filter__content { max-width: 575px; padding: 20px; margin: 0 auto; }
  .filter .filter__title .close { display: block; }
  .catalog .catalog__wrapp { display: block; }
  .catalog .catalog__filter { width: 100%; }
  .catalog .catalog__content { margin: 0; }
  .catalog .catalog__sort { width: 180px; }
  .catalog .catalog__search { width: 180px; position: relative; padding: 5px 14px 5px 43px; }
  .catalog .catalog__search .tooltip { position: static; margin: 0; }
  .catalog .catalog__search .tooltip .tooltip__popup { left: 0; right: 0; max-width: unset; width: 100%; }
  .breadcrumbs ul { padding-right: 0; }
  .card .card__wrapp { display: block; }
  .card .card__title { display: block; }
  .card .card__images { width: 100%; padding: 0; }
  .card .card__content { width: 100%; padding: 30px 0 0; }
  .card .card__content .card__title { display: none; }
  .card .card__top { margin-top: 0; }
  .card .card__prices .card__prices-current { font-size: 20px; }
  .card .card__messengers a,
  .card .card__messengers button { width: 48px; height: 48px; }
  .cemeteries .cemeteries__wrapp { padding: 20px; display: block; }
  .cemeteries .cemeteries__content { width: 100%; }
  .cemeteries .cemeteries__image { width: 100%; padding: 30px 0 0; text-align: center; }
  .stage .stage__descr {
        flex-direction: column;
        gap: 22px;
        padding: 0 7px;
    }
  .stage .stage__head { font-size: 20px; padding: 0 7px; }
  .usefuls .usefuls__grid { grid-template-columns: repeat(2, 1fr); }
  .useful .useful__title { font-size: 18px; }
  .useful .useful__icon { width: 100px; }
  .useful .useful__icon .useful__icon-box { width: 46px; height: 46px; }
  .useful.useful-lg .useful__title { font-size: 20px; }
  .useful.useful-lg .useful__icon { margin-top: -38px; width: 110px; }
  .useful.useful-lg .useful__icon .useful__icon-box { width: 60px; height: 60px; }
  .useful.useful-row-1-2 { grid-row: unset; }
  .useful.useful-col-3 { grid-column: unset; } 
    
  .communication .communication__methods { 
      display: block;
      margin: 0;
      gap: 0;
  }
  .communication .communication__methods .method.phones-block {
    width: 100%; margin: 0;
  }
  .communication .communication__methods .method.msg-block {
    width: 100%; margin: 0;
  }
  .communication .communication__methods .method + .method { 
      margin: 12px 0 0; 
  }
  .communication__methods .phones-block .view { height: 18px; }
  
}
@media screen and (max-width: 574px) { .mobmenu-toggle, .mobmenu { display: block; }
  .container { max-width: 425px; }
  .title { margin-bottom: 30px; }
  .title h1 { font-size: 26px; }
  .title h2 { font-size: 22px; }
  .title-flex { display: block; }
  .title-flex .btn { display: none; }
  .offer .offer__title h1 { font-size: 28px; }
  .offer .offer__button .btn { width: 100%; }
  .products .products__button .btn { width: 100%; }
  .product .product__prices .product__price-current { font-size: 20px; }
  .product-flat { display: block; }
  .product-flat .product__wrapp { width: 100%; }
  .product-flat .product__content { width: 100%; padding: 20px 0 0; display: block; }
  .product-flat .product__prices { display: flex; }
  .product-flat .product__prices .product__price-old { margin: 0 0 0 20px; }
  .product-flat .product__button { margin-top: 20px; }
  .categories .categories__tiles { display: block; margin: 0; }
  .categories .categories__tiles .category, .categories .categories__tiles .other { width: 100%; min-height: 0; height: 200px; margin: 0; }
  .categories .categories__tiles .category + .category, .categories .categories__tiles .category + .other { margin-top: 20px; }
  .article .article__name { font-size: 16px; }
  .article .article__more { font-size: 18px; }
  .videos .videos__button { display: block; }
  .videos .videos__button .btn { width: 100%; }
  .video .video__name { font-size: 16px; }
  .advantages .advantages__tiles { margin: 0; }
  .advantages .advantages__tiles .advantage { width: 100%; margin: 0; }
  .advantages .advantages__tiles .advantage + .advantage { margin-top: 20px; }
  .advantage .advantage__icon { width: 40px; height: 40px; }
  .advantage .advantage__name { font-size: 16px; }
  .faq .faq__question { padding: 20px 60px 20px 20px; font-size: 16px; }
  .faq .faq__question:after, .faq .faq__question:before { width: 28px; height: 28px; margin-top: -14px; }
  .footer .footer__middle .footer__title { font-size: 16px; }
  .footer .copyright {
        width: 100%;
    }
  .footer .footer__links { 
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .footer .links_col ul li {
        margin: 0 0 12px 0;
    }
  .footer .footer__links > * + * { x-margin-top: 5px; }
  .footer .footer__socials ul { flex-wrap: wrap; }
  .catalog .catalog__controls { flex-wrap: wrap; }
  .catalog .catalog__sort { width: 100%; margin: 0; order: 2; margin: 12px 0 0; }
  .catalog .catalog__search { width: 100%; margin: 0; order: 1; }
  .catalog .catalog__view { display: none; }
  .cemeteries .cemeteries__button .btn { width: 100%; }
  .stages .stages__controls { display: block; }
  .stages .stages__controls > .btn { width: 100%; }
  .stages .swiper-navigation { margin: 20px 0 0; }
  .stages .swiper-navigation .btn { flex: 1 0; }
  .usefuls .usefuls__grid { display: block; }
  .useful { min-height: 200px; }
  .useful + .useful { margin-top: 20px; }
  .useful .useful__icon { width: 80px; }
  .useful .useful__icon .useful__icon-box { width: 42px; height: 42px; }
  .useful.useful-lg .useful__icon { margin-top: 0; top: auto; bottom: 20px; width: 80px; }
  .useful.useful-lg .useful__icon .useful__icon-box { width: 42px; height: 42px; } 
}
@media screen and (min-width: 768px) { .openmenu { overflow: auto !important; height: auto !important; position: static !important; } }


/* cookies */
.cookie{
    position:fixed;
    padding:22px 22px 18px 22px;
    right: 3%;
    left: 3%;
    bottom: 0;
    max-width: 100%;
    background:#e4e4e8;
    border-radius: 0;
    z-index: 91;
    display:none;
}
.cookie_inner {display:flex;}
.cookie_text {
    display: flex;
}
.cookie_inner svg {
    width: 32px;
    margin: 3px 7px 0 0;
}
.cookie p{
    margin:0;
    line-height:1.5;
    font-size:14px;
    color:#4c4c4c;
    padding-right:18px;
    width:100%;
}
.cookie p a {
    text-decoration: underline;
}
.cookie p a:hover {
    color:#F15238;
}
.cookie_button {
    display: flex;
    gap: 10px;
}
.cookie .btn-primary:hover,
.cookie .btn-secondary:hover {
    opacity: 0.8;
}
.cookie .btn-secondary {
    background: #343e49;
    color: #fff;
}
@media screen and (max-width: 768px){
    .cookie{
        padding:22px 70px 16px 20px;
        right: 0;left:0;
        max-width: 100%;
        border-radius: 0;
    }
    .cookie_inner {
        flex-wrap: wrap;
    }
    .cookie_text {width:100%;}
    .cookie_button {width:100%;margin: 16px 0 7px 24px;}
    .cookie_inner svg {
        width: 22px;
        margin: 3px 9px 0 0;
    }
}
@media screen and (max-width: 520px){
    .cookie{padding:22px 20px 16px 20px;}
}