#jGrowl {
    display:none !important;
}

.checkboxes sup {
  font-size: 0.7em;
  vertical-align: top;
  line-height: 1;
  color:#F55B51;
}


.ajax_form .error .error {margin-top: 5px; display: inline-block;}

.btn:disabled, .btn.disabled { opacity: 0.7; cursor: default; }

.consent { width: 100%; text-align: left; margin-top: 18px; margin-left: 1px; }
.consent-mailing { width: 100%; text-align: left; margin-top: 9px; margin-left: 1px; }
.consent input[type="checkbox"],
.consent-mailing input[type="checkbox"] { display: none; }
.consent input[type="checkbox"] + label:before,
.consent-mailing input[type="checkbox"] + label:before { 
    content: ""; position: absolute; left: 0; top: 0;
    width: 18px; height: 18px; 
    border-radius: 0px; border: 1px solid rgba(38, 38, 38, 0.2);
}
.consent input[type="checkbox"]:checked + label:before,
.consent-mailing input[type="checkbox"]:checked + label:before { background: url(../img/icons/checkbox-check.svg) center center no-repeat; }
.consent label,
.consent-mailing label { padding-left: 32px; position: relative; cursor: pointer; display: inline-block; color: #4A4A4A; font-size: 13px; font-weight: 400; line-height: 1.5; }
.consent label a,
.consent-mailing label a {text-decoration:none;}
.consent label a:hover,
.consent-mailing label a:hover {text-decoration:underline;}

.communication .communication__form form { flex-wrap: wrap; }
.communication__form .consent {
    margin-top: 14px;
    margin-left: 8px;
    margin-bottom: 7px;
}


.cf-city .cf-confirm {
    width: 200px;
    box-shadow: 1px 1px 3px rgb(153 153 153 / 32%);
}
.cf-city .cf-confirm .cf-city-label {
    font-size: 14px;
}
.cf-city .cf-confirm .cf-city-current {
    font-size: 14px;
    font-weight: 500;
}
.cf-city .cf-confirm .cf-btn-group .cf-btn-primary {
    color: #fff;
    background-color: #f15238;
    border-color: #f15238;
    border-radius: 0;
    font-size: 14px;
    font-weight: 500;
}
.cf-city .cf-confirm .cf-btn-group .cf-btn-default {
    color: #333;
    background-color: #fff;
    border-color: #ccc;
    border-radius: 0;
    font-size: 14px;
    font-weight: 400;
}
.cf-city .cf-confirm .cf-btn-group .cf-btn-primary:hover {
    background-color: #333;
    border-color: #333;
}
.cf-city .cf-confirm .cf-btn-group .cf-btn-default:hover {
    background-color: #ccc;
    border-color: #ccc;
}
.cf-modal .cf-modal-title {
    margin: 0;
    line-height: 1.4;
    font-size: 18px;
    font-weight: 500;
}
.cf-modal .cf-modal-content {
    border-radius: 0;
}


/* header menu */
.menu-2levels,
.menu-2levels ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.menu-2levels li {
    position: relative;
}
.menu-2levels .submenu-toggle {
    border: 0;
    background: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
    font-size: 0;
    line-height: 1;
}
.menu-2levels .submenu-toggle::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: all .2s ease;
}
.menu-2levels li.is-open > .submenu-toggle::before {
    transform: rotate(-135deg);
}
.menu-2levels .has-submenu:hover .submenu-toggle::before {border-right-color:#F55B51;border-bottom-color:#F55B51;}

.mobmenu__content .mobmenu__catalog {display:none;}

@media (min-width: 768px) {
    .header__menu .menu-2levels li > ul {
        position: absolute;
        top: 100%;
        left: 0;
        min-width: 220px;
        background: #fff;
        box-shadow: 0 8px 20px rgba(0,0,0,.08);
        opacity: 0;
        visibility: hidden;
        transform: translateY(8px);
        transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
        z-index: 1000;
    }
    .header__menu .menu-2levels li:hover > ul {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .header__menu .menu-2levels li.has-submenu > a {
        display: block;
    }
    .header__menu .menu-2levels .submenu-toggle {
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -1px;
        width: 14px;
        height: 14px;
        transform: translateY(-50%);
        pointer-events: none;
    }
}
@media screen and (max-width: 991px) {
    .header__menu .menu-2levels .submenu-toggle {right: -12px;}
}
@media (max-width: 767px) {
    .mobmenu__menu .menu-2levels li > ul {
        display: none;
        padding-left: 12px;
        margin: 9px 0 0 0;
        x-border-left: 2px solid #dedede;
    }
    .menu-2levels li.is-open > .submenu-toggle::before {
        transform: rotate(-135deg);
    }
    .mobmenu__menu .menu-2levels .submenu-toggle {
        position: absolute;
        top: 3px;
        right: 0;
        width: 32px;
        height: 32px;
    }
    .mobmenu__menu .menu-2levels li.has-submenu > a {
        display: block;
        padding-right: 40px;
    }
    .mobmenu__menu .menu-2levels li > ul li {
        padding:9px 0;
        font-weight: 400;
        font-size: 15px;
    }
    .mobmenu__menu .menu-2levels li > ul li + li {margin:0;border-top:1px dotted #dedede;}
    .mobmenu__menu .menu-2levels .has-submenu.is-open > a {
        border-bottom: 1px solid #F55B51;
        padding-bottom: 5px;
    }
}


.footer .footer__form .consent label,
.footer .footer__form .consent-mailing label { font-size: 12px; }
.footer .footer__form .consent-mailing { margin-top: 0; margin-left: 3px; }
.footer .footer__form form { flex-wrap: wrap; }
.footer .footer__form .consent {
    margin-top: 18px;
    margin-left: 3px;
    margin-bottom: 7px;
}


@media screen and (max-width: 1199px) {
    .categories .categories__tiles .category.service_row {
        min-height: 290px;
    }
}
.categories .categories__tiles .category.service_row {
    width: calc(50% - 20px);
    margin: 10px;
    min-height: 280px;
}



.catalog-tiles {display:flex;flex-wrap: wrap;justify-content: space-between;}
.catalog-tiles .product-flat {width:100%;}
.catalog-tiles .product-sq {width:31%;margin-bottom: 40px;}

.catalog .catalog__search {margin-left: 0;}



#mse2_filters .ui-widget.ui-widget-content {
    border: 1px solid #ffffff;
}
.uislider .uislider__values {
    flex-wrap: wrap;
    justify-content: space-between;
}
.uislider .uislider__values .value:last-child {
    justify-content: flex-start;
}
#mse2_filters .filter__section .mse2_number_inputs label {
    display: flex;
    align-items: center;
    width: 100%;
}
.filter__section .mse2_number_inputs label {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    display: block;
    margin-bottom: inherit;
}
.uislider .uislider__values .value input {
    padding-left: 12px;
    font-size: 16px;
    font-weight: 500;
    width: 86px;
}
.catalog #mse2_filters .mse2_number_slider {
    margin: 7px 5px 12px 5px;
}
#mse2_filters .ui-slider-horizontal .ui-slider-handle {
    top: 3px;
    margin-left: -1px;
}
#mse2_filters .ui-slider-horizontal .ui-slider-handle + .ui-slider-handle {
    margin-left: -11px;
}
#mse2_filters .ui-slider .ui-slider-handle {
    width: 12px;
    height: 12px;
}
.uislider .uislider__slider:before {
    left:0;
    right:0;
}
.catalog .ui-corner-all, .catalog .ui-corner-bottom, .catalog .ui-corner-right, .catalog .ui-corner-br {
    border-bottom-right-radius: 0;
}
.catalog .ui-corner-all, .catalog .ui-corner-bottom, .catalog .ui-corner-left, .catalog .ui-corner-bl {
    border-bottom-left-radius: 0;
}
.catalog .ui-corner-all, .catalog .ui-corner-top, .catalog .ui-corner-right, .catalog .ui-corner-tr {
    border-top-right-radius: 0;
}
.catalog .ui-corner-all, .catalog .ui-corner-top, .catalog .ui-corner-left, .catalog .ui-corner-tl {
    border-top-left-radius: 0;
}
.catalog .ui-state-default, 
.catalog .ui-widget-content .ui-state-default, 
.catalog .ui-widget-header .ui-state-default, 
.catalog .ui-button {
    border: 1px solid #f15238;
}

.filter .filter-color-row .filter-color-label {
    display: flex;align-items: center;
}
.filter .filter-color-row .filter-color-label img {margin-right:12px;border-radius:50%;}
.filter .filter-color-row .filter-color-label span {font-size:15px;}

.catalog__filter .btn.btn-light {
    margin-top:16px;
    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;
}

.filter__sections {
    x-display: flex;
    x-flex-direction: column-reverse;
}

.articles .articles__tiles {
    display: flex;
    flex-wrap: wrap;
    margin: -10px;
}
.articles .articles__tiles .article {
    width: calc(50% - 20px);
    margin: 10px;
    min-height: 240px;
}
@media screen and (max-width: 574px) {
    .articles .articles__tiles .article {
        width: calc(100% - 20px);
        margin: 10px;
        min-height: 240px;
    }
}

.videos .video__tiles{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.videos .video__tiles .video__element {
    display: flex;
    flex-direction: column;
}
.videos .video__tiles .video__element img{
    width:100%;
    height:100%;
}

@media screen and (max-width: 768px) {
    .videos .video__tiles{
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 640px) {
    .videos .video__tiles{
        grid-template-columns: 1fr;
    }
}

.about_offer.ptb {
    padding-top: 52px;
    padding-bottom: 72px;
}
.about_offer .breadcrumbs {margin:0;}
.about_offer .offer {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.about_offer .offer__content {margin-top:36px;margin-bottom:36px;}
.about_offer .offer .offer__descr {
    font-weight: 400;
}
@media screen and (max-width: 991px) {
    .about_offer.ptb {
        padding-top: 52px;
        padding-bottom: 76px;
    }
}
@media screen and (max-width: 574px) {
    .about_offer .offer__logo {
        display:none;
    }
}

.prices__wrp {}

.card .card__prices .card__prices-current,
.product .product__prices .product__price-current {
    font-size: 24px;
}
.card .card__prices .card__prices-current .old_price,
.product .product__prices .product__price-current .old_price {
    display:inline-block;
    font-size: 22px;
    font-weight: 500;
    margin-top: 7px;
}
@media screen and (max-width: 1199px) {
    .card .card__prices .card__prices-current,
    .product .product__prices .product__price-current {
        font-size: 22px;
    }
    .card .card__prices .card__prices-current .old_price,
    .product .product__prices .product__price-current .old_price {
        font-size: 20px;
    }
}
@media screen and (max-width: 991px) {
    .card .card__prices .card__prices-current,
    .product .product__prices .product__price-current {
        font-size: 20px;
    }
    .card .card__prices .card__prices-current .old_price,
    .product .product__prices .product__price-current .old_price{
        font-size: 18px;
        margin-top: 12px;
    }
}
@media screen and (max-width: 767px) {
    .card .card__prices .card__prices-current,
    .product .product__prices .product__price-current {
        font-size: 20px;
    }
    .card .card__prices .card__prices-current .old_price,
    .product .product__prices .product__price-current .old_price {
        font-size: 18px;
    }
}

.card__wrapp .fotorama__thumb-border {
    border-color: #f15238;
}
.card__wrapp .fotorama__thumb {width:140px;height:140px;}



.text_outer { font-size: 18px; line-height: 1.4; }
.text_outer p + *, .text_outer * + p, .text_outer ul + *, .text_outer * + ul, .text_outer ol + *, .text_outer * + ol { margin-top: 20px; }
.text_outer ol,
.text_outer ul {margin-left:7px;}
.text_outer ol { list-style-type: decimal; padding-left: 19px; }
.text_outer a {text-decoration:underline;}
.text_outer a:hover {color:#1E90EE;}
.text_outer ul > li { padding-left: 20px; position: relative; }
.text_outer ul > li + li,
.text_outer ol > li + li { margin-top: 7px; }
.text_outer ul > li:before { content: ""; position: absolute; width: 8px; height: 8px; left: 0; top: 8px; background: #F15238; }
.text_outer ul ul { padding-left: 16px; margin-top: 4px; }
.text_outer ul ul li { padding-left: 12px; position: relative; }
.text_outer ul ul li:before { content: ""; position: absolute; left: 0; top: 11px; width: 2px; height: 2px; border-radius: 50%; background: #525C67; }
.text_outer ul ul li + li { margin-top: 4px; }
.text_outer p a:hover {color:#f15238;}
.text_outer blockquote {
    border-left: 2px solid #f15238;
    padding: 18px 22px 18px 16px;margin-bottom:28px;margin-top:28px;
    font-weight: 500;
    font-size: 16px;
}
.text_outer table {width:100%;border-color:#aaa;margin-bottom:22px;}
.text_outer table tr td,
.text_outer table tr th {padding:12px;border: 1px solid #dbdbdb;}
.text_outer table tr th {background:#f1f1f1;}

.text_outer img {max-width:100%;height:auto;}
.text_outer img[style*="float:left"] {
    margin: 7px 18px 7px 0px;
}
.text_outer img[style*="float:right"] {
    margin: 7px 0px 7px 18px;
}

@media screen and (max-width: 767px) {
    .text_outer img {width:100%;margin:12px 0 !important;float:none !important;}
}

.text_outer .product__name a,
.text_outer .product .product__button a {text-decoration:none;}
.text_outer .product .product__button a:hover {color:#fff;}

.content h2, .content h3, .content h4 {margin-bottom:12px;}
.content ul + * {margin-top:18px;}

.content table {width:100%;border-color:#aaa;}
.content table tr td,
.content table tr th {padding:12px;border: 1px solid #bbbbbb;}
.content table tr th {background:#f1f1f1;}

.faq__answer ul {margin:12px 0;}
.faq__answer ul > li { padding-left: 18px; position: relative; }
.faq__answer ul > li + li,
.faq__answer ol > li + li { margin-top: 7px; }
.faq__answer ul > li:before { content: ""; position: absolute; width: 8px; height: 8px; left: 0; top: 5px; background: #F15238; }
.faq__answer ul ul { padding-left: 16px; margin-top: 4px; }
.faq__answer ul ul li { padding-left: 12px; position: relative; }
.faq__answer ul ul li:before { content: ""; position: absolute; left: 0; top: 11px; width: 2px; height: 2px; border-radius: 50%; background: #525C67; }
.faq__answer ul ul li + li { margin-top: 4px; }

.dependence .dependence__descrOuter,
.dependence .dependence__descr {font-size: 16px;color: #525C67;line-height:1.2;}
.dependence .dependence__descrOuter h2 {margin-bottom:12px;}
.dependence .dependence__descrOuter p + p {margin-top:7px;}
.dependence__wrapp {margin:18px 0;}
.dependence__wrapp + .dependence__descrOuter {margin-bottom:22px;}
.dependence .dependence__content.noimage {width:100%;}

.dependence__descr ul {margin:12px 0;}
.dependence__descr ul > li { padding-left: 18px; position: relative; }
.dependence__descr ul > li + li,
.dependence__descr ol > li + li { margin-top: 7px; }
.dependence__descr ul > li:before { content: ""; position: absolute; width: 8px; height: 8px; left: 0; top: 5px; background: #F15238; }
.dependence__descr ul ul { padding-left: 16px; margin-top: 4px; }
.dependence__descr ul ul li { padding-left: 12px; position: relative; }
.dependence__descr ul ul li:before { content: ""; position: absolute; left: 0; top: 11px; width: 2px; height: 2px; border-radius: 50%; background: #525C67; }
.dependence__descr ul ul li + li { margin-top: 4px; }

.card__content .card__title.title h1 {
    font-size: 36px;
}
@media screen and (max-width: 1199px) {
    .card__content .card__title.title h1 {
        font-size: 32px;
    }
}
@media screen and (max-width: 991px) {
    .card__content .card__title.title h1 {
        font-size: 28px;
    }
}



.product-tile .product__prices .product__price-old {
    margin-top: 7px;
    opacity:0.5;
}
.ms2_product .product__prices .old_price,
#msProduct .card__prices-current .old_price {
    font-style: normal;
    color: #525C67;
    text-decoration: line-through;
}

.card__section.card__props label {font-size:16px;margin-bottom:0;}
.card__section.card__props label input {display:none;}

.card__section.card__props label input[type="radio"]:checked + .material__image {
    x-opacity:0.7;
    border: 2px solid #F15238;
}
.card__section.card__props label input[type="radio"]:checked + .material__image + .material__name {
    x-background: #F15238;
    color: #F15238;
}
.card__section.card__props .material:hover label input[type="radio"]:checked + .material__image + .material__name {
    color: #fff;
}
.card__section.card__props .material:hover {
    cursor:pointer;
}
.card__section.card__props .material:hover label .material__name {
    color: #fff;
}
.option_custom input[type="radio"] {display:none;}
.option_custom input[type="radio"]:disabled + span {display:none;}
.option_custom .attribute__value {display:inline-block;}

.video-review input[type="radio"] {display:none;}
.video-review input[type="radio"]:disabled + a {display:none;}
.video-modal {}



.looked-title-wrp {
    display: flex;
    justify-content: space-between;
}
.looked-remove-wrp {
    margin-top:10px;
    text-align:center;
}
.looked-remove-wrp button {
    background:none;text-decoration:underline;
}
.looked-remove-wrp button:hover {
    color: #f15238;
}



.card .material:hover { background: #F15238; border-color: #F15238; color: #fff; }

.material-modal img {width:100%;height:auto;margin:22px auto 7px auto;}
.material-modal p { font-size: 16px; line-height: 1.4; }
.material-modal p + p {margin-top:16px;}



.telegram.mt + .communication.mt {margin-top:46px;}



.cemeteries_items {margin-top:18px;font-size:14px;line-height:1.5;}
/*
.cemeteries_items a:after {content:',';}
.cemeteries_items a:last-child:after {content:none;}
*/
.cemeteries_items a {
    display: inline-block;
    padding: 2px 9px;
    background: rgb(255 255 255 / 55%);
    border-radius: 3px;
    border: 1px solid #d7d7d7;
    margin: 0 7px 7px 0;
}
.cemeteries_items a:hover {border-color: #F55B51;background:#F55B51;color:#fff;}


.article.article_image {padding:0;}
.article.article_image img {width:100%;height:auto;}
.article.article_image .article_content {
    padding: 24px;x-margin-top:22px;
}


/* seo text */
.index-seo-block.seoText {text-align: left;}
.content_block {
	overflow: hidden;
	position: relative;
	text-align: left;
}
.content_block.hide {
	height: 156px;
	display:block;
}
.content_block.hide:after{
	content: "";
	display: block;
	height: 80px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(to bottom, rgba(240, 240, 244, 0), #fff 75%)
}
.content .content_block {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
}
.content_block + .content_toggle {margin-top:26px;}
.content_block.hide + .content_toggle {margin-top:0;}
.content .content_toggle {
    border-bottom: 1px solid #343E49;text-decoration:none;color: #343E49;
    line-height: 1.3;display: inline-block;
    font-size: 16px;
    font-weight: 500;
}
.content .content_toggle:hover {
    border-bottom-color: #F15238;
    color: #F15238;
}


.map_outer + .footer.mt {margin-top:0;}

.footer .footer__form .form-inner { display: flex; align-items: flex-end; width: 100%; max-width: 440px; }
.footer .footer__form .form-inner .form-group:first-child { flex: 1 0; }
.footer .footer__form .form-inner button { margin-left: 12px; }
@media screen and (max-width: 767px) {
  .footer .footer__form .form-inner { max-width: 100%; }
}


.phones-block {
    position:relative;
    display: inline-block;
    font-size: 17px;
    color: #4d4340;
    padding:7px 24px 7px 0;
}
.phones-block .view { 
    position: absolute;  width: 100%; top: 0; right: 0; bottom: 0; font-size: 16px; font-weight:bold;
}
.phones-block .view span {
    position: absolute; right: 0; top: 0; bottom: 0; display: flex; align-items: center; justify-content: flex-end;
    font-weight: 400;
    font-size: 13px;
    padding:0 7px 0 0;
    color: #F55B51; background: #F0F0F4;
    cursor: pointer; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; -ms-transition: all 0.3s; transition: all 0.3s;
}
.phones-block .view span:before {
    content: ""; position: absolute; right: 100%; top: 0; bottom: 0; width:120px; 
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #F0F0F4 100%);
    -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; -ms-transition: all 0.3s; transition: all 0.3s;
}
.phones-block .view span:hover {color: #94989b;}
.phones-block .view span:hover:before { width:100px; }

.topline .topline__callback {
    margin-left: 24px;
    padding-left: 24px;
    position: relative;
}
.topline .topline__callback:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 22px;
    margin-top: -11px;
    background: #A3A3A3;
}

.communication__methods .phones-block,
.modal__methods .phones-block {
    display: block;
    padding: 0;
}

.communication__methods .phones-block .view {
    position: absolute;
    display: block;
    width: 72px;
    height: 24px;
    top: 9px;
    left: 136px;
    right: inherit;
    bottom: inherit;
    font-size: 16px;
    font-weight: bold;
}
.communication__methods .phones-block .view span {
    background: #fff;color:#757d87;
}
.communication__methods .phones-block .view span:hover {color: #F15238;}
.communication__methods .phones-block .view span:before {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #fff 100%);
}

.modal__methods .phones-block .view {
    position: absolute;
    display: block;
    width: 72px;
    height: 22px;
    top: 9px;
    left: 136px;
    right: inherit;
    bottom: inherit;
    font-size: 16px;
    font-weight: bold;
}
.modal__methods .phones-block .view span {
    background: #fff;color:#757d87;
}
.modal__methods .phones-block .view span:hover {color: #F15238;}
.modal__methods .phones-block .view span:before {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #fff 100%);
}


@media screen and (max-width: 360px) {
    .communication__methods .phones-block .view { left: 110px; height: 18px; }
}


/* Модальные окна с QR кодом */
.qr-modal-wrp img {
    margin: 0 0 18px 0;
    width: auto;
    height: 220px;
}
/* Telegram */
.tg-modal-overlay {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
}
.tg-modal-content {
    background-color: #ffffff;
    margin: 10% auto;
    padding: 30px;
    border: none;
    width: 90%;
    max-width: 400px;
    border-radius: 1px;
    text-align: center;
    position: relative;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    animation: tgModalFadeIn 0.5s;
}
@keyframes tgModalFadeIn {
  from {opacity: 0; transform: translateY(-20px) scale(0.95);}
  to {opacity: 1; transform: translateY(0) scale(1);}
}
.tg-modal-content h2 {
  margin-top: 16px;
  margin-bottom: 15px;
  font-size: 18px;
  color: #333;
}
.tg-modal-close-btn, .tgCh-modal-close-btn {
    color: #aaa;
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s;
}
.tg-modal-close-btn:hover,
.tg-modal-close-btn:focus,
.tgCh-modal-close-btn:hover,
.tgCh-modal-close-btn:focus { color: #000000; }
.qr-modal-wrp p + .tg-modal-action-btn {margin-top:12px;}
.qr-modal-wrp .tg-modal-action-btn {
    display: inline-block;
    text-decoration: none;
    background-color: #2AABEE;
    color: white;
    padding: 12px 30px;
    border-radius: 1px;
    margin-top: 20px;
    font-size: 16px;
    font-weight: 500;
    transition: background-color 0.3s;
}
.qr-modal-wrp .tg-modal-action-btn:hover {
    background-color: #1e8fc4;color: white;text-shadow:none;
}
.qr-modal-wrp .tgCh {
    margin: 9px 0 0 0;
    width: auto;
    height: 300px;
}

/* WhatsApp */
.wa-modal-overlay {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
}
.wa-modal-content {
    background-color: #ffffff;
    margin: 10% auto;
    padding: 30px;
    border: none;
    width: 90%;
    max-width: 400px;
    border-radius: 1px;
    text-align: center;
    position: relative;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    animation: waModalFadeIn 0.5s;
}
@keyframes waModalFadeIn {
  from {opacity: 0; transform: translateY(-20px) scale(0.95);}
  to {opacity: 1; transform: translateY(0) scale(1);}
}
.wa-modal-content h2 {
  margin-top: 16px;
  margin-bottom: 15px;
  font-size: 18px;
  line-height: 1.4;
  color: #333;
}
.wa-modal-close-btn {
    color: #aaa;
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s;
}
.wa-modal-close-btn:hover,
.wa-modal-close-btn:focus { color: #000000; }
.qr-modal-wrp p + .wa-modal-action-btn {margin-top:12px;}
.qr-modal-wrp .wa-modal-action-btn {
    display: inline-block;
    text-decoration: none;
    background-color: #25D366;
    color: white;
    padding: 12px 30px;
    border-radius: 1px;
    margin-top: 0;
    font-size: 16px;
    font-weight: 500;
    transition: background-color 0.3s;
}
.qr-modal-wrp .wa-modal-action-btn:hover {
    background-color: #1DA851;color: white;text-shadow:none;
}

/* MAX */
.max-modal-overlay {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
}
.max-modal-content {
    background-color: #ffffff;
    margin: 10% auto;
    padding: 30px;
    border: none;
    width: 90%;
    max-width: 400px;
    border-radius: 1px;
    text-align: center;
    position: relative;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    animation: waModalFadeIn 0.5s;
}
@keyframes waModalFadeIn {
  from {opacity: 0; transform: translateY(-20px) scale(0.95);}
  to {opacity: 1; transform: translateY(0) scale(1);}
}
.max-modal-content h2 {
  margin-top: 16px;
  margin-bottom: 15px;
  font-size: 18px;
  line-height: 1.4;
  color: #333;
}
.qr-modal-wrp .max-modal-content img {
    margin: 0 0 18px 0;
    width: auto;
    height: 220px;
}
.max-modal-close-btn {
    color: #aaa;
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s;
}
.max-modal-close-btn:hover,
.max-modal-close-btn:focus { color: #000000; }
.qr-modal-wrp p + .max-modal-action-btn {margin-top:12px;}
.qr-modal-wrp .max-modal-action-btn {
    display: inline-block;
    text-decoration: none;
    background-color: #654cf1;
    color: white;
    padding: 12px 30px;
    border-radius: 1px;
    margin-top: 0;
    font-size: 16px;
    font-weight: 500;
    transition: background-color 0.3s;
}
.qr-modal-wrp .max-modal-action-btn:hover { background-color: #405cef;color: white;text-shadow:none; }


/* Фотогалерея */
.text_page + .gallery-container {margin-top:52px;}
.gallery-container {
    max-width: 1200px;
    margin: 0 auto;
}
.gallery-title {
    text-align: center;
    margin-bottom: 30px;
    color: #333;
    font-size: 28px;
    font-weight: 300;
}
.photo-grid {
    x-display: grid;
    x-grid-template-columns: repeat(4, 1fr);
    x-gap: 20px;
}
.photo-item {
    position: relative;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
}
.photo-item:hover {
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}
.photo-link {
    display: block;
    position: relative;
}
.photo-img {
    x-width: 100%;
    max-width: 200px;
    x-height: 200px;
    height: auto;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.photo-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(240,240,244,0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.photo-item:hover .photo-overlay {
    opacity: 1;
}
.search-icon {
    color: white;
    font-size: 24px;
}
.photo-caption {
    padding: 12px 10px;
    text-align: center;
    font-size: 14px;
    color: #666;
    background: #fff;
    border-top: 1px solid #eee;
}


.mse2_pagination {
    display: flex;
    justify-content: center;
    margin: 52px 0 20px 0;
}

.pagination {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 5px;
}

.page-item {
    display: inline-block;
}

.page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    text-decoration: none;
    color: #333;
    border: 1px solid #ddd;
    background-color: #fff;
    transition: all 0.3s ease;
}

.page-link:hover {
    background-color: #e9ecef;
    border-color: #adb5bd;
}

.page-item.active .page-link {
    background-color: #F15238;
    color: white;
    border-color: #F15238;
}

.page-item.disabled .page-link {
    color: #6c757d;
    background-color: #f8f9fa;
    border-color: #dee2e6;
    cursor: not-allowed;
}

.page-item:first-child .page-link,
.page-item:last-child .page-link {
    width: auto;
    padding: 0 12px;
}

@media (max-width: 576px) {
    .pagination {
        gap: 7px;
        flex-wrap: wrap;
    }
    .page-link {
        width: 36px;
        height: 36px;
    }
}


/* Верхнее оглавление в тексте статьи */
.article-toc {
    margin: 20px 0 30px;
    padding: 15px 20px;
    border-radius: 3px;
    background: #f5f5f7;
    border: 1px solid #e0e0e0;
}

.article-toc h3 {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 600;
}

.article-toc ul {
    margin: 0;
    padding-left: 12px;
}

.article-toc li {
    margin: 4px 0;
}

.article-toc a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px dashed rgba(0,0,0,0.2);
}

.article-toc a:hover {
    border-bottom-style: solid;
}

/* Обёртка виджета оглавления */
.toc-widget {
    position: fixed;
    left: 20px;
    bottom: 20px;
    z-index: 16;
    font-size: 14px;
    font-family: inherit;
}

/* Кнопка "Оглавление" */
.toc-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border-radius: 1px;
    border: none;
    cursor: pointer;
    background: #F15238;
    color: #fff;
    font-size: 15px;font-weight:500;
    line-height: 1;
    white-space: nowrap;
    transition:all 0.3s;
}
.toc-toggle:hover {
    background: #343E49;
}

.toc-toggle span {
    margin-left: 6px;
    font-size: 11px;
    opacity: 0.7;
}

/* Попап с оглавлением (тултип) */
.toc-popup {
    position: absolute;
    bottom: 110%;
    left: 0;
    width: 280px;
    max-height: 360px;
    overflow-y: auto;
    background: #fff;
    color: #222;
    border-radius: 1px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
    padding: 18px 7px 12px 22px;
    box-sizing: border-box;
    opacity: 0;
    pointer-events: none;
    transform: translateY(8px);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

/* Стрелочка тултипа */
.toc-popup::after {
    content: "";
    position: absolute;
    bottom: -6px;
    right: 18px;
    border-width: 6px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

/* Активное состояние — попап открыт */
.toc-popup.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

/* Список заголовков */
.toc-popup-title {
    font-weight: 600;
    margin: 0 0 6px;
    font-size: 13px;
    display: none;
}

.toc-popup ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.toc-popup li {
    margin: 0;
    padding: 4px 0;
}
.toc-popup li + li {
    border-top: 1px solid #eaeaed;
    margin-top: 3px;
    padding-top: 7px;
}

.toc-popup a {
    display: block;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.4;
    color: #222;
}
.toc-popup a:hover {
    text-decoration: underline;
    color: #343E49;
}
@media (max-width: 767px) {
    .toc-widget {
        right: 10px;
        bottom: 10px;
    }
    .toc-popup {
        width: 220px;
        max-height: 260px;
    }
}


/* Адаптивное видео */
.articleContent .video-responsive {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin: 20px auto;
}
/* 16:9 через "резиновую" высоту */
.articleContent .video-responsive::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
/* Сам iframe растягиваем поверх блока */
.articleContent .video-responsive iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
/* На десктопах видео не уже 720px */
@media (min-width: 768px) {
  .articleContent .video-responsive {
    min-width: 720px;max-width:920px;
  }
}


/* Адаптивная таблица */
.articleContent .article-table-wrapper {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch; /* плавный скролл на мобильных */
  margin: 20px 0 0 0;
}
/* Чтоб таблица не прилипала к краям при прокрутке */
.articleContent .article-table-wrapper table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}
@media screen and (max-width: 767px) {
    .articleContent .article-table-wrapper table {font-size:16px;}
}


/* Текстовая страница */
.container-min .breadcrumbs ul {
    padding-right: 0;
    justify-content: center;
}
.container-min .text_page .container {max-width:960px;}
.container-min .text_page .container .title {text-align: center;position:relative;margin-bottom:52px;}
.container-min .text_page .container .title:after {
    content:'';background:#f15238;height:1px;width:160px;
    position:absolute;bottom:-17px;left:50%;margin-left:-80px;
}
.text_page .container img,
.text_page .container iframe {border-radius:3px;}


/* Галерея до и после */
.ba-slider {
  max-width: 600px;
  margin: 28px auto 36px;
}
.ba-slider__inner {
  position: relative;
  overflow: hidden;
  width: 100%;
  cursor: ew-resize;
  user-select: none;
}

/* "До" — базовая картинка, она задаёт высоту */
.ba-slider__image--before {
  display: block;
  width: 100%;
  height: auto;
}

/* Общие стили картинок можно оставить только для after, либо убрать вовсе
.ba-slider__image {
  display: block;
  width: 100%;
  height: auto;
  pointer-events: none;
}
*/

/* Обёртка "После" — всегда во всю ширину, просто режем её маской */
.ba-slider__after-wrapper {
  position: absolute;
  inset: 0;               /* top:0; right:0; bottom:0; left:0 */
  overflow: hidden;
  pointer-events: none;
  --ba-pos: 50%;          /* стартовое положение: 50% */

  /* Маска: показываем левую часть "После" шириной var(--ba-pos) */
  clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
}

/* Картинка "После" поверх, одного размера с "До" */
.ba-slider__image--after {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;      /* можно убрать, если пропорции одинаковые */
  pointer-events: none;
}

/* Ползунок */
.ba-slider__handle {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  touch-action: none;
}

/* Вертикальная линия */
.ba-slider__handle-line {
  position: absolute;
  width: 2px;
  height: 100%;
  background: rgba(255,255,255,0.8);
  box-shadow: 0 0 0 1px rgba(0,0,0,0.15);
}

/* Кружок */
.ba-slider__handle-circle {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 0 0 1px rgba(0,0,0,0.08), 0 4px 10px rgba(0,0,0,0.25);
  z-index: 2;
  position: relative;
}

.ba-slider__handle-circle::before,
.ba-slider__handle-circle::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 6px;
  height: 10px;
  border-radius: 2px;
  background: rgba(0,0,0,0.6);
  transform: translateY(-50%);
}

.ba-slider__handle-circle::before { left: 8px; }
.ba-slider__handle-circle::after  { right: 8px; }

/* Подписи */
.ba-slider__label {
  position: absolute;
  top: 12px;
  padding: 4px 10px;
  font-size: 12px;
  line-height: 1.3;
  color: #fff;
  background: rgba(0, 0, 0, 0.45);
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.ba-slider__label--before { left: 12px; }
.ba-slider__label--after  { right: 12px; }

@media (max-width: 480px) {
  .ba-slider__handle { width: 24px; }

  .ba-slider__handle-circle {
    width: 22px;
    height: 22px;
  }

  .ba-slider__label {
    top: 8px;
    font-size: 10px;
    padding: 3px 8px;
  }
}


/* Баннеры, дополнения для страницы */
.offer.offer-banner {margin-top:36px;margin-bottom:28px;}
.offer.offer-banner .container {
    align-items: center;gap: 22px;
    padding: 32px;
    background: #f9f9f9;
}
.offer.offer-banner .offer__actions {width:50%;}
.offer.offer-banner .offer__actions h3 {font-size:20px;font-weight: 600;margin-bottom:16px;}
.offer.offer-banner .offer__button {margin-top: 0;}
.offer.offer-banner .offer__content {padding-right: 0;}
.offer.offer-banner .offer__advantages {
    margin-top: 0;
}
@media screen and (max-width: 767px) {
    .offer.offer-banner .container {
        align-items: flex-start;
        gap: 36px;
        display: flex;
        flex-direction: column;
    }
    .offer.offer-banner .offer__actions {
        width: 100%;
        padding: 0;
        display: block;
    }
}

.text_outer ul.icons-in-text {display:flex;margin-left: 0;}
.text_outer ul.icons-in-text li {
    width:25%;
    margin: 0;
    padding: 0;
    list-style: none;
}
.text_outer ul.icons-in-text li:before {content:none;}
.text_outer ul.icons-in-text li img {width:100%;height:auto;padding: 0 7%;}

.articleContent .btn.btn-primary {text-decoration:none;display:inline-block;padding:12px 28px;}
.articleContent .btn.btn-primary:hover {background: #F55B51;color:#fff;}


/* Фотогалерея */
.gallery-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 28px;
    column-gap: 1.7%;
}
.gallery-flex .photo-item {
    position: relative;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    width: 20%;
}
.photo-img {
    max-width: 360px;
    height: auto;
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.3s ease;
}
@media screen and (max-width: 991px) {
    .gallery-flex .photo-item {width: 25%;}
}
@media screen and (max-width: 767px) {
    .gallery-flex .photo-item {width: 36%;}
}
@media (max-width: 480px) {
    .gallery-flex .photo-item {width: 80%;}
}


/* Слайдер в контенте */
.article-gallery {
  margin: 20px 0;
}

.article-gallery__swiper {
  width: 100%;
  max-width: 100%;
}

.article-gallery .swiper-slide {
  text-align: center;
}

.article-gallery .swiper-slide img {
  display: block;
  max-width: 100%;
  max-height: 500px;
  width: auto;
  height: auto;
  margin: 0 auto;
}

/* Кнопки и пагинацию можно стилизовать на свой вкус */
.article-gallery .swiper-button-prev,
.article-gallery .swiper-button-next {
  color: #f15238;
}

.article-gallery .swiper-pagination-bullet-active {
  background: #f15238;
}
.article-gallery .swiper-pagination {
    margin-top: 16px;
    margin-bottom: 12px;
}


/* Вопросы в контенте */
.articleContent .qa-block {
  margin: 26px 0 36px 0;
  padding: 0 7px;
  border-radius: 3px;
}
.articleContent .qa-block + hr {display: none;margin:0;background:none;border:none;height:0;}
.articleContent .qa-item {
  border: 1px solid #dfdfe2;
  border-radius: 0;
  overflow: hidden;
}
.articleContent .qa-item + .qa-item {margin-top: 12px;}

.articleContent .qa-question {
  margin: 0;
  padding: 10px 46px 10px 15px;
  background: #f0f0f4;
  cursor: pointer;
  position: relative;
  font-weight: 600;
  font-size: 20px;
}

.articleContent .qa-question:focus {
  outline: 2px solid #f15238;
}

.articleContent .qa-question::after {
  content: '+';
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 700;
  color: #f15238;
}

.articleContent .qa-item.is-open .qa-question::after {
  content: '–';
}

.articleContent .qa-answer {
  padding: 16px 18px 22px;
  font-size: 17px;
}


/* Интерактивный чек-лист */
.articleContent .checklist {
  margin: 0 0 0.5em;
  list-style: none;
}
.articleContent ol .checklist:first-child,
.articleContent ul .checklist:first-child {margin-top:28px;}
.articleContent ol .checklist:last-child,
.articleContent ul .checklist:last-child {margin-bottom:32px;}

/* Сам пункт чек-листа */
.articleContent .checklist-item {
  display: inline-flex;
  align-items: flex-start;
  gap: 0.6em;
  position: relative;
  cursor: pointer;
  user-select: none;
}

/* Скрываем системный чекбокс */
.articleContent .checklist-item__checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Видимая “коробочка” чекбокса */
.articleContent .checklist-item__box {
    margin-top: 3px;
  width: 18px;
  height: 18px;
  border: 2px solid #F15238;
  border-radius: 2px;
  box-sizing: border-box;
  flex-shrink: 0;
  position: relative;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

/* Галочка */
.articleContent .checklist-item__box::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;margin-bottom: 5px;
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg) scale(0.2);
  opacity: 0;
  transform-origin: center;
  transition: transform 0.15s ease, opacity 0.15s ease;
}

/* Текст пункта */
.articleContent .checklist-item__text {
  line-height: 1.4;
}

/* Состояние :hover */
.articleContent .checklist-item:hover .checklist-item__box {
  border-color: #f36e57;
}

/* Активный пункт (галочка стоит) */
.articleContent .checklist-item__checkbox:checked + .checklist-item__box {
  background-color: #F15238;
  border-color: #F15238;
}

/* Показываем галочку при checked */
.articleContent .checklist-item__checkbox:checked + .checklist-item__box::after {
  opacity: 1;
  transform: rotate(-45deg) scale(1);
}


/* форма в статье */
.insidePage-form-section {
  padding: 16px 0 0 0;
}
.insidePage-form-title {
  font-size: 22px;font-weight:600;
  text-align: left;
  width: 480px;
  max-width: 98%;
  margin:0 auto 18px auto;
}

.consult-form-title {
  font-size: 18px;font-weight:500;
  text-align: left;
  width: 480px;
  max-width: 98%;
  margin:0 auto 18px auto;
}
.partner-form-title {
  font-size: 22px;font-weight:600;
  text-align: left;
  width: 480px;
  max-width: 98%;
  margin:0 auto 7px auto;
}
.insidePage-form-section .partner-form-subtitle {
  font-size: 16px;font-weight:400;
  text-align: left;
  width: 480px;
  max-width: 98%;
  margin:0 auto 18px auto;
}

.insidePage-form {
  width: 480px;
  max-width: 98%;
  background: #f5f5f5;
  padding: 24px 20px;
  border-radius: 3px;
  border: 1px solid #e0e0e0;
  margin:0 auto;
}
.insidePage-form .form-row + .form-row {
  margin-top: 16px;
}
.insidePage-form label {
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: 500;
}
.insidePage-form input,
.insidePage-form textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 14px 14px;
  font-size: 14px;
  border: 1px solid #d3d3d3;
  background-color: #fff;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.insidePage-form input:focus,
.insidePage-form textarea:focus {
  border-color: #F15238;
  box-shadow: 0 0 0 1px rgba(241, 82, 56, 0.15);
}
.insidePage-form textarea {
  resize: vertical;
  min-height: 120px;
}
.insidePage-form-submit {
    width: 100%;
    margin-top:22px;
  text-transform: none;
  border: none;
  border-radius: 0;
  background-color: #F15238;
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease, opacity 0.2s ease;
}
.insidePage-form-submit:hover {
  background-color: #d4442f;
}
.insidePage-form-submit:active {
  opacity: 0.9;
}
.insidePage-form-section .checkbox-group {
    margin: 26px 7px 9px 3px;
}
.insidePage-form-section .checkbox-group .consent {
    margin: 0;
}
.insidePage-form-section .checkbox-group label {font-size: 13px;font-weight: 400;}
@media (max-width: 480px) {
  .insidePage-form {
    padding: 18px 15px;
  }
  .insidePage-form-title {
    font-size: 20px;
  }
}


/* Мозаичная галерея Masonry */
.gallery-flex.gallery-mosaic {
    position: relative;
    display:block;
}
.gallery-flex.gallery-mosaic .photo-item {
    width: 18%;
    float: left;
    margin: 12px;
    position: relative;
    overflow: hidden;
    transition: top .3s, left .3s;
}
@media (max-width: 1200px) {
    .gallery-flex.gallery-mosaic .photo-item {
        width: 33.3333%;
    }
}
@media (max-width: 992px) {
    .gallery-flex.gallery-mosaic .photo-item {
        width: 50%;
    }
}
@media (max-width: 576px) {
    .gallery-flex.gallery-mosaic .photo-item {
        width: 100%;
    }
}


/* Карта сайта */
.text_outer .sitemap ul {
    margin-left: 3px;
    padding-left: 3px;
}
.text_outer .sitemap li {
    padding-left: 18px;
    position: relative;
    margin: 7px 0;
    font-size:16px;
}


/* Multibutton */
.multibutton { z-index: 16; right: 20px; bottom: 20px; width: 60px; height: 60px; position: fixed; opacity: 0; animation: bounceInRight 1s; }
.multibutton * { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0; }
.multibutton.active { opacity: 1; }
.multibutton.open .multibutton-button-close svg { -webkit-transform: rotate(0) scale(1); -ms-transform: rotate(0) scale(1); transform: rotate(0) scale(1); }

.multibutton-button { position: absolute; width: 100%; height: 100%; right: 0; background: #f15238; border-radius: 50%; text-align: center; display: flex; justify-content: center; align-items: center; cursor: pointer; color: #fff; }
.multibutton-button:before, .multibutton-button:after { content: ""; position: absolute; left: -7px; top: -7px; z-index: -1; background: #f15238; width: 74px; height: 74px; border-radius: 50%; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); -webkit-animation: pulse 2s infinite; animation: pulse 2s infinite; }
.multibutton-button:after { -webkit-animation-delay: 0.5s; animation-delay: 0.5s; }

.multibutton-button-static { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; -moz-transition: all 0.2s; -o-transition: all 0.2s; -webkit-transition: all 0.2s; transition: all 0.2s; }
.multibutton-button-static svg { width: 24px; }
.multibutton-button-static.hide { transform: scale(0); opacity: 0; }

.multibutton.active.open .multibutton-button {background: #343e49;}

.multibutton-button-icons { color: #f15238; background: #fff; width: 44px; height: 44px; border-radius: 50px; position: absolute; overflow: hidden; top: 50%; left: 50%; margin: -22px 0 0 -22px; font-size: 0; -moz-transition: all 0.2s; -o-transition: all 0.2s; -webkit-transition: all 0.2s; transition: all 0.2s; }
.multibutton-button-icons.hide { transform: scale(0); opacity: 0; }
.multibutton-button-icons .icons-line { top: 10px; left: 10px; display: -webkit-box; display: -ms-flexbox; display: flex; position: absolute; -webkit-transition: cubic-bezier(0.13, 1.49, 0.14, -0.4); -o-transition: cubic-bezier(0.13, 1.49, 0.14, -0.4); transition: cubic-bezier(0.13, 1.49, 0.14, -0.4); -webkit-animation-delay: 0s; animation-delay: 0s; height: 24px; transition: 0.2s all; }
.multibutton-button-icons .icons-line.stop { -webkit-animation-play-state: paused; animation-play-state: paused; }
.multibutton-button-icons .icons-line span { display: inline-block; width: 24px; height: 24px; margin-right: 40px; }
.multibutton-button-icons .icons-line svg, .multibutton-button-icons .icons-line i, .multibutton-button-icons .icons-line img { width: 24px; height: 24px; }

.multibutton-button-close svg { -webkit-transform: rotate(180deg) scale(0); -ms-transform: rotate(180deg) scale(0); transform: rotate(180deg) scale(0); -webkit-transition: ease-in 0.2s all; -o-transition: ease-in 0.2s all; transition: ease-in 0.2s all; display: block; }

.multibutton-prompt { right: 70px; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); -webkit-transform-origin: 80% 105%; -ms-transform-origin: 80% 105%; transform-origin: 80% 105%; -webkit-transition: ease-out 0.2s all; -o-transition: ease-out 0.2s all; transition: ease-out 0.2s all; color: #787878; white-space: nowrap; padding: 14px 20px 14px; color: #787878; font-size: 15px; width: auto; bottom: 5px; background: #FFFFFF; box-shadow: 0 0 40px rgba(0, 0, 0, 0.2); position: absolute; border-radius: 0; z-index: 1000000; cursor: default; }
.multibutton-prompt:before { content: ""; position: absolute; border-right: 8px solid transparent; border-top: 8px solid transparent; border-left: 8px solid #FFF; border-bottom: 8px solid transparent; top: 50%; margin-top: -8px; right: -15px; }
.multibutton-prompt.open { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }
.multibutton-prompt:hover .multibutton-prompt-close { opacity: 1; }
.multibutton-prompt .multibutton-prompt-close { background: #f15238; display: flex; align-items: center; justify-content: center; color: #fff; opacity: 0; transition: 0.2s all; position: absolute; right: -10px; top: -10px; width: 26px; height: 26px; cursor: pointer; border-radius: 50%; text-align: center; -moz-transition: all 0.2s; -o-transition: all 0.2s; -webkit-transition: all 0.2s; transition: all 0.2s; }
.multibutton-prompt.open .multibutton-prompt-typing { display: inline-block; position: relative; }
.multibutton-prompt.open .multibutton-prompt-typing > div { position: relative; display: inline-block; vertical-align: bottom; border-radius: 50%; width: 10px; height: 10px; background: #ccc; margin: 0 2px; -webkit-animation: updown 2s infinite; animation: updown 2s infinite; }
.multibutton-prompt.open .multibutton-prompt-typing > div:nth-child(2) { animation-delay: 0.1s; }
.multibutton-prompt.open .multibutton-prompt-typing > div:nth-child(3) { animation-delay: 0.2s; }

.multibutton-modal { background: #FFFFFF; box-shadow: 0 0 40px rgba(0, 0, 0, 0.2); width: 300px; position: absolute; bottom: 80px; right: 0; border-radius: 0; z-index: 1000000; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); -webkit-transform-origin: 80% 105%; -ms-transform-origin: 80% 105%; transform-origin: 80% 105%; -webkit-transition: ease-out 0.2s all; -o-transition: ease-out 0.2s all; transition: ease-out 0.2s all; }
.multibutton-modal:after { content: ""; position: absolute; bottom: -7px; right: 25px; display: inline-block; border-right: 8px solid transparent; border-top: 8px solid #FFFFFF; border-left: 8px solid transparent; }
.multibutton-modal.open { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }
.multibutton-modal .multibutton-modal-header { padding: 15px; color: #FFFFFF; background: #f15238; border-radius: 0; font-size: 17px; position: relative; line-height: 1.4; }
.multibutton-modal .multibutton-modal-close { background: #b0b0b0; color: #343e48; display: flex; align-items: center; justify-content: center; transition: 0.2s all; position: absolute; right: 0; top: -36px; width: 26px; height: 26px; cursor: pointer; border-radius: 50%; text-align: center; -moz-transition: all 0.2s; -o-transition: all 0.2s; -webkit-transition: all 0.2s; transition: all 0.2s; }
.multibutton-modal .multibutton-modal-close:hover {opacity:0.8;}
.multibutton-messangers-list { padding: 18px 0; }

.multibutton-modal-text { padding: 15px; font-size: 15px; }
.multibutton-modal-text * + * { margin-top: 10px; }

.messanger { display: flex; align-items: center; padding: 9px 18px; position: relative; min-height: 54px; text-decoration: none; -moz-transition: all 0.2s; -o-transition: all 0.2s; -webkit-transition: all 0.2s; transition: all 0.2s; }
.messanger .messanger-icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background-color: #0084ff; margin-right: 10px; color: #FFFFFF; text-align: center; font-size: 0; }
.messanger .messanger-icon svg { width: 24px; height: 24px; }
.messanger .messanger-label { flex: 1 0; }
.messanger .messanger-label-title { font-size: 15px; color: rgba(0, 0, 0, 0.87); display: block; }
.messanger .messanger-label-subtitle { font-size: 13px; color: #787878; display: block; }
.messanger:hover { background: #EEEEEE; }

.multibutton .wa-prev svg {color: #3ac837;}
.multibutton .tg-prev svg {color: #4797ff;}
.multibutton .max-prev svg {color: #654cf1;}

@media screen and (max-width: 574px) { .multibutton-prompt .multibutton-prompt-close { opacity: 1 !important; }
  .multibutton-modal { width: 100vw; right: -20px; bottom: -20px; }
  .multibutton-modal .multibutton-modal-header { border-radius: 0; }
  .multibutton-modal .multibutton-modal-header .multibutton-modal-close { right: 5px; top: 50%; margin-top: -14px; } }
  
  
/* Контакты */
.contacts-cards-outer {
    display: flex;
    margin: 28px 0 22px 0;
    flex-wrap: wrap;
    gap: 0;
}
.contacts-cards-outer .contacts-card {
    width:50%;
}
.contacts-card h3.contacts-subtitle {
    margin-bottom:22px;
}
.contacts-card h4.contacts-block__title {
    margin-bottom:7px;
}
.contacts-card p {margin:0;}
.contacts-card ul {margin-top:0;}
.contacts-card .contacts-block + .contacts-block {
    margin-top:18px;
}
.contacts-gallery {
    display: flex;
    gap: 12px;
}
.contacts-card.contacts-card-wide { margin-top:36px; }
.contacts-map + .contacts-block { margin-top:18px; }
.contacts-cards-outer .photo-img {
    border: 1px solid #f0f0f4;
    padding: 9px;
}
@media screen and (max-width: 991px) {
    .contacts-cards-outer {
        gap: 28px;
        flex-direction: column;
    }
    .contacts-cards-outer .contacts-card {
        width:100%;
    }
}
@media screen and (max-width: 767px) {

}
@media (max-width: 480px) {

}


/* Табы в контенте */
.tabs-block {
    margin: 36px 0;
    x-padding: 1.5rem;
    x-border: 1px solid #eee;
    x-border-radius: 8px;
    x-background: #fafafa;
}
.tabs-block + .tabs-block {margin-top:52px;}
.tabs-block__title {
    margin-top: 0;
    margin-bottom: 16px;
}
.tabs-block__intro {
    margin-bottom: 1rem;
}
.tabs__nav {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}
.tabs__nav-item {}
.tabs__nav-btn {
    border: 1px solid #ddd;
    background: #f3f3f3;
    padding: 12px 16px;
    cursor: pointer;
    font-size: 15px;
    max-width: 260px;
    text-align: left;
    line-height: 1.4;
    height: 100%;
}
.tabs__nav-item.active .tabs__nav-btn {
    background: #F15238;
    border-color: #F15238;
    color: #fff;
}
.tabs__pane {
    display: none;
}
.tabs__pane.active {
    display: block;
}
.text_outer .tabs-block p + *, 
.text_outer .tabs-block * + p, 
.text_outer .tabs-block ul + *, 
.text_outer .tabs-block * + ul, 
.text_outer .tabs-block ol + *, 
.text_outer .tabs-block * + ol {
    margin-top: 9px;
}
.text_outer .tabs-block ul {margin:0;}
.text_outer .tabs-block ul li { padding-left: 0; }
.text_outer .tabs-block ul li + li { margin-top: 0; }
.text_outer .tabs-block ul li:before { content: none; }
.tabs .tabs__content {
    background: #f0f0f4;
    x-border: 1px solid #d9d9d9;
    font-size: 16px;
    padding: 22px 22px;
}
@media screen and (max-width: 767px) {
    .tabs__nav-item { width: 49%; }
    .tabs__nav-btn { width: 100%; max-width: 300px; }
}
@media screen and (max-width: 574px) {
    .text_outer {
        font-size: 16px;
    }
    .tabs__nav-item { width: 100%; }
    .tabs__nav-btn { max-width: 100%; }
}


/* regions */
.container.delivery_map_outer { margin-top: 26px; }
.container.delivery_map_outer .title { margin-bottom: 28px; }
.container.delivery_map_outer .title p {
    margin-top: 12px;
    font-size: 15px;
    font-weight: 400;
}
.regions_content {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.regions_content iframe {  }
.regions_content .regions_col {width:50%;}
.content.delivery-map-content {
    margin-top:0px;
    padding:7px 28px;
    line-height: 1.5;
    color: #79787F;
    font-size: 16px;
}
.content.delivery-map-content ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 5px 0;
}
.content.delivery-map-content ul li {
    margin-bottom:0;
}
.content.delivery-map-content ul > li:after {
    content: "";
    display: block;
    position: absolute;
    width: 6px;
    height: 6px;
    top: 11px;
    left: 2px;
    background: #00b5de;
    border-radius: 50%;
}
.content.delivery-map-content ul li + li {margin:0;}
.content.delivery-map-content ul li span { transition:0.3s all ease; }
.content.delivery-map-content ul li:hover { cursor:pointer; }
.content.delivery-map-content ul li:hover span { color: #f15238; }
.content.delivery-map-content .btn {
    padding: 5px 36px 5px;
}
.content.delivery-map-content p {
    line-height: 1.3;
}
.can_hide {
    display: none;
}
.button_delivery-map-list {
    margin-top: 15px;
    margin-bottom: 15px;
}
@media (max-width: 991px) {
    .regions_content .regions_col {width:100%;}
    .regions_content { gap: 18px; }
    .content.delivery-map-content { padding: 7px 0; } 
    .content.delivery-map-content ul {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 574px) {
    .content.delivery-map-content ul { grid-template-columns: repeat(1, 1fr); }
    
    .categories .categories__tiles .category, 
    .categories .categories__tiles .other,
    .categories .categories__tiles .category.service_row {
        width: 100%;
        min-height: 0;
        height: 200px;
        margin: 0 0 26px 0;
    }
    
    .catalog-tiles .product-sq {
        width: 80%;
        margin: 0 auto 42px auto;
    }
    .product-tile .product__name {
        margin-top: 18px;
    }
    .product-tile .product__prices {
        margin-top: 12px;
    }
}


/* Аудиофайл */
.ckeditor-audio {
    display: flex;
    flex-direction: column-reverse;
    gap: 12px;
    margin-bottom: 26px;
    padding: 9px 0 0 0;
}
.ckeditor-audio__title {font-size:15px;opacity:0.7;}
.content-audio{
  margin: 24px 0;
  padding: 16px;
  background: #f7f7f7;
  border-left: 4px solid #F15238;
}

.content-audio__title{
  font-weight: 600;
  margin-bottom: 8px;
}

.content-audio__desc{
  margin-bottom: 12px;
  opacity: .85;
}

.content-audio__player{
  width: 100%;
}


/* Даты */
.dates-section {
    margin: -16px 0 36px 0;
    line-height: 1.6;
    font-size: 15px;
    border-left: 5px solid #e0e0e0;
    padding: 3px 0 3px 16px;
}
.dates-section p + p {
    margin-top:7px;
}
.dates-section time {
    border-bottom: 1px solid #ccc;
}
.container-min .dates-section {
    margin: -7px auto 18px auto;
    opacity: 0.7;
    line-height: 1.6;
    font-size: 15px;
    x-border-bottom: 3px solid #e0e0e0;border-left: none;
    padding: 3px 0 18px 0;
    text-align: center;
    max-width: 316px;
}


/* Формы */

.success_msg {
    display:none;
    opacity:0;
    margin-bottom:26px;
    transition:all .35s ease;
}
.success_msg.is-visible{
  display:block;
  opacity:1;
}

.communication .communication__form form.ajax_form.is-hidden {
  display: none;
}
/*
.communication .communication__form form.ajax_form.is-hidden + .success_msg,
.communication .communication__form form.ajax_form + .success_msg.is-visible {
  display: none;
  opacity: 0;
}
*/
.communication .communication__form form.ajax_form.is-hidden + .success_msg.is-visible {
  display: block;
  opacity: 1;
}

.success_msg_inner {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 16px;
    background: #fff;
    flex-direction: row-reverse;
    justify-content: flex-end;
}
.success_msg_inner .msg-text { margin:0; font-size: 16px; }


.articles .articles__carousel .swiper-slide img {width:100%;height:auto;margin-bottom:16px;}


/* tags */
.section-content {margin-top:72px;margin-bottom:72px;text-align: center;}
.section-content .tags-bottom_child {
    gap: 16px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;width: 90%;margin:0 auto 18px auto;}
.section-content .tags-bottom_child .my-tags {margin:0;}
.section-content .tags-bottom_child .my-tags a {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 5px 14px;
    font-size: 14px;
    border-radius: 1px;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    color: #6c757d;
    border-color: #6c757d;
}
.section-content .tags-bottom_child .my-tags a:hover {background: #f9f9f9;}
.section-content .slick-prev:before, .box-bottom-content .slick-next:before {color: #6c757d;}
.tags-bottom_child .my-tags {line-height:1.3;}
div.list .my-tags:nth-child(n+6){display:none;}
.show_hide_list {
    cursor: pointer;
    border-bottom: 1px solid #343E49;
    width: auto;
    display: inline-block;
    color: #343E49;
    font-size: 16px;
    font-weight: 500;
    -webkit-transition: all 200ms ease;-moz-transition: all 200ms ease;-ms-transition: all 200ms ease;-o-transition: all 200ms ease;transition: all 200ms ease;
}
/* используйте для эффекта наведения подходящий сайту цвет */
.show_hide_list:hover {
    border-bottom-color: #F15238;
    color: #F15238;
}

/* Hidden content */
/*
.content_block {
	overflow: hidden;
	position: relative;    
}
.content_block.hide {
	height: 300px;
	display:block;
}
.content_block.hide:after{
	content: "";
	display: block;
	height: 80px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 75%)
}
.content_block + .content_toggle {margin-top:26px;}
.content_block.hide + .content_toggle {margin-top:0;}
.content_toggle {
    cursor: pointer;
    border-bottom: 1px solid #343E49;
    width: auto;
    display: inline-block;
    color: #343E49;
    font-size: 14px;
    font-weight: 500;
    text-decoration:none;
    line-height: 1.3;
    -webkit-transition: all 200ms ease;-moz-transition: all 200ms ease;-ms-transition: all 200ms ease;-o-transition: all 200ms ease;transition: all 200ms ease;
}
.content_toggle:hover {
    border-bottom-color: #F15238;
    color: #F15238;
}
*/

/* Footer disclaimer */
.footer .footer__disclaimer {
    width: 100%;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #C2C2C2;
    font-size: 13px;
    line-height: 1.5;
    color: #888;
    text-align: center;
}
.footer .footer__disclaimer a {
    color: #F15238;
    text-decoration: underline;
}
.footer .footer__disclaimer a:hover {
    text-decoration: none;
}