

/* Start:/bitrix/components/ranx/block.landing/templates/4_1/style.css?17853368285660*/
.block4-1 .service-item {
    position: relative;
    transition: transform .2s , box-shadow .2s;
    height: 100%;
}
.block4-1 .service-list:not(.no-gutters) {
    margin-bottom: -30px;
}
.block4-1 .service-list:not(.no-gutters) .row-item {
    margin-bottom: 30px;
}
.block4-1 .service-container {
    position: relative;
    padding: 40px;
    border: 1px solid #ECECEC;
    border-radius: 12px;
    transition: transform .2s , box-shadow .2s;
    background-color: #fff;
}
.block4-1 .service-info-wrap {
    height: 100%;
    display: flex;
    flex-direction: column;
}
.block4-1 .service-img {
    margin-bottom: 30px;
}
.block4-1 .service-img svg {
    height: 40px;
    width: 40px;
}
.block4-1 .service-name {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
    color: #000000;
}
.block4-1 .service-desc {
    margin-bottom: 15px;
    font-size: 14px;
    color: #666;
}
.block4-1 .service-props {
    margin-bottom: 15px;
    font-size: 13px;
    display: table;
    width: 100%;
}
.block4-1 .service-prices {
    margin-top: auto;
}
.block4-1 .service-prices .service-price {
    font-weight: bold;
    font-size: 20px;
    display: inline-block;
    margin-right: 7px;
}
.block4-1 .service-prices .service-old-price {
    font-size: 16px;
    text-decoration: line-through;
    color: #999;
    display: inline-block;
}
.block4-1 .bottom-button-container {
    margin-top: 80px;
    text-align: center;
}
.block4-1 .service-container .service-btn {
    display: none;
    margin-top: 22px;
}

/* hover */
.block4-1 .service-item:not(.hover) .service-container {
    height: inherit;
}
.block4-1 .service-item.hover .service-container {
    border-color: transparent;
    box-shadow: 0 10px 20px 0 rgba(0,0,0,.1);
    z-index: 1;
}
.block4-1 .service-item.hover .service-btn {
    display: block;
}

@media (max-width: 767px) {
    .block4-1 .service-item:not(.hover) .service-container {
        height: unset;
    }
    .block4-1 .service-item:not(.hover) .service-btn {
        display: block;
    }
}


/* modal style */
.modal4_1 {
    margin: -10px 10px 0;
}

.modal4_1-title {
    font-weight: bold;
    font-size: 38px;
    line-height: 47px;
    color: #333333;
    margin-bottom: 40px;
}

.modal4_1-picture {
    margin-bottom: 50px;
}

.modal4_1-picture img {
    width: 100%;
    height: auto;
}

.modal4_1-service {
    border: 1px solid #ECECEC;
    box-sizing: border-box;
    border-radius: 4px;
    margin-bottom: 33px;

    padding: 20px 30px 30px;
    display: flex;
}

.modal4_1-service .icon svg {
    height: 35px;
    width: 30px;
    margin: 10px 20px 0 0;
}

.modal4_1-service .desc {
    max-width: 415px;
    font-weight: normal;
    font-size: 15px;
    line-height: 24px;
    color: #333333;
    margin-top: 3px;
    margin-right: 5px;
}

.modal4_1-service .wrap {
    margin-left: auto;
    flex-shrink: 0;
}

.modal4_1-service .prices {
    line-height: 30px;
    display: flex;
}

.modal4_1-service .cur-price {
    font-weight: bold;
    font-size: 18px;
    margin-right: 7px;
}

.modal4_1-service .old-price {
    font-size: 16px;
    text-decoration: line-through;
    color: #999999;
}

.modal4_1-service .wrap > .order-button {
    margin-top: 7px;
    padding: 0;
}

.modal4_1-preview-text {
    margin-bottom: 27px;
    font-weight: normal;
    font-size: 18px;
    line-height: 27px;
    color: #333333;
}

.modal4_1-detail-text {
    margin-bottom: 23px;
    font-weight: normal;
    font-size: 15px;
    line-height: 24px;
    color: #666666;
}

.modal4_1-chars {
    margin-bottom: 10px;
}

.modal4_1-chars .title {
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
    color: #333333;
    margin-bottom: 23px;
}

.modal4_1-chars .char {
    font-weight: normal;
    font-size: 15px;
    line-height: 22px;
    color: #555555;
    padding: 13px 17px;
}

.modal4_1-chars .char:nth-child(2n) {
    background: #F7F7F7;
}

.modal4_1-chars .char:nth-child(2n+1) {
    background: #FFFFFF;
}

@media (max-width: 765px) {
    .modal4_1-service {
        flex-wrap: wrap;
    }

    .modal4_1-service .wrap {
        flex-shrink: 1;
    }

    .modal4_1-service .prices {
        flex-wrap: wrap;
    }
}

@media (max-width: 575px) {
    .modal4_1 {
        margin: -10px 0 0;
    }

    .modal4_1-title {
        font-size: 25px;
        line-height: 30px;
        margin-bottom: 20px;
    }

    .modal4_1-picture {
        margin-bottom: 20px;
    }

    .modal4_1-service {
        margin-bottom: 20px;
    }

    .modal4_1-preview-text {
        font-size: 16px;
        line-height: 26px;
        margin-bottom: 20px;
    }

    .modal4_1-detail-text {
        font-size: 14px;
        line-height: 24px;
        margin-bottom: 20px;
    }

    .modal4_1-chars .title {
        margin-bottom: 14px;
    }
}


.adaptive-heading {
  font-weight: 700;
  font-size: 4.6rem;
  line-height: 1.1; /* Десктопный межстрочный интервал */
}


@media (max-width: 1440px) {
  .adaptive-heading {
  font-size: 4.3rem;
    line-height: 1.1; /* Более плотный интервал на мобилке */
  }
}

@media (max-width: 768px) {
  .adaptive-heading {
      font-size: 2.6rem;
    line-height: 1.1; /* Более плотный интервал на мобилке */
  }
}

@media (max-width: 480px) {
  .adaptive-heading {
      font-size: 2.6rem;
    line-height: 1.05; /* Еще плотнее на самых маленьких экранах */
  }
}

@media (max-width: 320px) {
  .adaptive-heading {
      font-size: 2.3rem;
    line-height: 1.05; /* Еще плотнее на самых маленьких экранах */
  }
}
/* End */


/* Start:/bitrix/components/ranx/block.landing/templates/20_1/style.css?17853364181805*/
.block20-1 .sections-1 .section-item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 30px;
    background-color: #ffffff;
    border-radius: 16px;
    margin: 10px !important;
    -webkit-box-shadow: 0 20px 40px rgba(0,0,0,0.04);
    -moz-box-shadow: 0 20px 40px rgba(0,0,0,0.04);
    box-shadow: 0 20px 40px rgba(0,0,0,0.04);
    -webkit-transition: box-shadow .2s ease-in;
    -moz-transition: box-shadow .2s ease-in;
    transition: box-shadow .2s ease-in;
}

.block20-1 .sections-1 .section-item:hover {
    -webkit-box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    -moz-box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    -webkit-transition: box-shadow .2s ease-out;
    -moz-transition: box-shadow .2s ease-out;
    transition: box-shadow .2s ease-out;
    z-index: 2;
}

.block20-1 .sections-1 .section-img {
    width: 80px;
    height: 80px;
    border-radius: 20%;
    margin-bottom: 10px;
    background-repeat: no-repeat;
    background-size: cover;
}
.block20-1 .sections-1 .section-title {
    font-weight: bold;
    font-size: 18px;
    line-height: 21px;
    color: #000000;
    margin-bottom: auto;
    text-align: center;
}

.block20-1 .section-item-add .section-img {
    display: flex;
    justify-content: center;
    align-items: center;
}
.block20-1 .section-item-add .section-img svg {
    height: 40px;
    width: 40px;
}
.block20-1 .section-remove {
    position: absolute;
    top: 14px;
    right: 14px;
    color: #bbbbbb;
    height: 9px;
    width: 9px;
}
.block20-1 .section-remove svg {
    height: 9px;
    width: 9px;
    position: absolute;
    top: 0;
    left: 0;
}
/* End */


/* Start:/bitrix/components/ranx/block.landing/templates/16_2/style.css?17841890714354*/
.block16-2-prices {
    display: flex;
    margin-bottom: 30px;
}
.block16-2-prices-center {
    justify-content: center;
}
.block.block16-2 .block-title .block-title-text {
    margin-bottom: 25px !important;
    margin-top: 0;
}
.block.block16-2 .block-title .block-cattitle {
    margin-bottom: 13px;
}
.block16-2 .btn {
    margin-bottom: 25px;
}
.block.block16-2 .block16-2-content-left {
    text-align: left !important;
    margin: auto 0;
}
.block.block16-2 .block16-2-content-center{
    text-align: center !important;
    margin: auto;
}
.block16-2 .block-el-btns {
    margin-top: 25px;
}
.block16-2-content-center .block-el-btns {
    justify-content: center;
}
.block16-2-price {
    font-weight: 550;
    font-size: 25px;
    line-height: 45px;
    color: #000;
}
.block16-2-price-old {
    font-weight: 600;
    font-size: 15px;
    line-height: 37px;
    color: #777777;
    text-decoration: line-through;
    margin-left: 15px;
    padding-top: 8px;
}
.block16-2-bg-image{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    /* height: auto; */
    overflow: hidden;
}

.height-inherit {
    height: inherit;
}
.block16-2 .col-flex-rw {
    background-size: 0;
    display: flex;
    place-items: flex-end;
}
.block16-2  .height-fill {
    height: 100%;
    justify-content: flex-end;
    background: rgba(17, 24, 39, 0.2);
}

@media (min-width: 992px) {
    .block16-2 .text-light-desktop,
    .block16-2 .text-light-desktop p,
    .block16-2 .text-light-desktop ul,
    .block16-2 .text-light-desktop ol,
    .block16-2 .text-light-desktop dl,
    .block.block16-2 .text-light-desktop .block-title-text,
    .block.block16-2 .text-light-desktop .block-cattitle,
    .block.block16-2 .text-light-desktop .block-subtitle,
    .block16-2 .text-light-desktop .block16-2-price,
    .block16-2 .text-light-desktop .block16-2-price-old {
        color: #FFFFFF !important;
    }
    .block16-2-bg-image {
        height: 600px !important;
        overflow: hidden;
        border-radius: 16px;
    }
    .block16-2 .col-flex-rw.block16-2-no-image {
        display:none;
    }
}
.block16-2-bg-image:focus {
    outline: none;
}
@media (max-width: 991px) {
    .block16-2 .text-light-mobile,
    .block16-2 .text-light-mobile p,
    .block16-2 .text-light-mobile ul,
    .block16-2 .text-light-mobile ol,
    .block16-2 .text-light-mobile dl,
    .block.block16-2 .text-light-mobile .block-title-text,
    .block.block16-2 .text-light-mobile .block-cattitle,
    .block.block16-2 .text-light-mobile .block-subtitle,
    .block16-2 .text-light-mobile .block16-2-price,
    .block16-2 .text-light-mobile .block16-2-price-old {
        color: #FFFFFF !important;
    }
    .block16-2 .maxwidth-theme {
        padding: 0 15px !important;
    }
    .block.block16-2 .block-title {
        padding-left: 30px;
        padding-right: 30px;
    }
    .block.block16-2 .block-title .block-title-text {
        font-size: 25px;
        line-height: 30px;
    }
    .block16-2 .col-flex-rw {
        position: relative;
        width: 100vw;
        height: 85vw;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        margin-left: 10px;
        margin-bottom: 35px;
    }
    .block16-2-container {
        flex-direction: column;
        justify-content: flex-start;
    }
    .block16-2 .mobile-img {
        display: block;
        align-self: flex-end;
        max-height: 100%;
        overflow: hidden;
    }
    .block16-2 .col-flex-rw img {
        max-width: 100%;
        max-height: 100%;
    }
    .block16-2-bg-image{
        background-size: 0;
        background-position: top;
        border-radius: 16px;
    }
    .block16-2 .height-fill {
        display: flex;
        flex-direction: column-reverse;
    }
    .block16-2 .block16-2-content-left {
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-top: 30px;
    }
    .block16-2-content-center {
        height: 65%;
        margin: 30px 0 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
}

/* End */


/* Start:/bitrix/components/ranx/block.landing/templates/18_2/style.css?17842120252798*/
.block18-2 .block-title {
    margin-bottom: 30px !important;
}

.block18-2.text-light .contact-info a {
    color: #f8f9fa;
}

.block18-2 .contact-items {
    /*max-width: 460px;*/
}
.block18-2 .contact-item {
    /*width: 50%;*/
    margin-bottom: 17px;
}

.block18-2 .contact-item-name {
    font-size: 13px;
    line-height: 23px;
}
.block18-2:not(.text-light) .contact-item-name {
    color: #999999;
}

.block18-2 .contact-item-value {
    font-size: 24px;
    line-height: 30px;
}
.block18-2 .contact-item-value a {
    font-size: 24px;
    line-height: 30px;
}

.block18-2:not(.text-light) .contact-item-value a {
    color: #333333;
}

.block-18-2-socials {
    margin-top: 23px;
}
.block-18-2-socials .block-social {
    margin-right: 25px;
    color: #888888;
}

/* ===== Карточка формы ===== */

.block18-2 .form-wrap {
    background: #ffffff;
    padding: 45px;
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);
}

/* ===== Поля ввода ===== */

.block18-2 input,
.block18-2 textarea,
.block18-2 select {
    width: 100%;
    padding: 16px 18px;
    border-radius: 12px;
    border: 1px solid #e5e5e5;
    font-size: 15px;
    background: #fafafa;
    transition: all 0.3s ease;
}

.block18-2 textarea {
    min-height: 120px;
    resize: vertical;
}

.block18-2 input:focus,
.block18-2 textarea:focus,
.block18-2 select:focus {
    border-color: #e53935;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(229, 57, 53, 0.08);
    outline: none;
}

/* ===== Лейблы ===== */

.block18-2 label {
    font-size: 14px;
    margin-bottom: 6px;
    color: #555555;
    display: block;
}

/* ===== Кнопка ===== */

.block18-2 .btn-primary,
.block18-2 button[type="submit"] {
    display: inline-block;
    background: #e53935;
    border: none;
    padding: 16px 32px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 500;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
}

.block18-2 .btn-primary:hover,
.block18-2 button[type="submit"]:hover {
    background: #d32f2f;
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(229, 57, 53, 0.3);
}

/* ===== Чекбоксы ===== */

.block18-2 input[type="checkbox"] {
    width: auto;
    margin-right: 8px;
}

/* ===== Адаптив ===== */

@media (max-width: 991px) {

    .block18-2 {
        padding: 80px 0;
    }

    .block18-2 .block-title {
        font-size: 28px;
    }

    .block18-2 .contact-item-value,
    .block18-2 .contact-item-value a {
        font-size: 18px;
    }
}

@media (max-width: 991px) {
    .block18-2 .form-wrap {
        margin-top: 70px;
    }
}

/* End */
/* /bitrix/components/ranx/block.landing/templates/4_1/style.css?17853368285660 */
/* /bitrix/components/ranx/block.landing/templates/20_1/style.css?17853364181805 */
/* /bitrix/components/ranx/block.landing/templates/16_2/style.css?17841890714354 */
/* /bitrix/components/ranx/block.landing/templates/18_2/style.css?17842120252798 */
