

/* Start:/bitrix/templates/gvozdevsoft_stroygs_s1/components/bitrix/catalog.section.list/services_section/style.css?1785242525108064*/
/* ===== БЛОК ПОЛНОГО ОПИСАНИЯ ===== */
.full_description_section {
    background: #fce1bc;
    padding: 40px 0 0px 0;
	border: 2px solid #797979;
}

/* Заголовок - 28px, полужирный, по центру */
.full_description_title {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
    color: #333;
}

/* Подзаголовок - 18px, обычный, max-width 1200px, line-height: 1 */
.full_description_subtitle {
    font-size: 18px;
    font-weight: 400;
    max-width: 1200px;
    margin: 0 auto 45px auto;
    line-height: 1;
    color: #333;
}

/* Сетка контентных блоков - 2 столбца */
.full_description_content_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 0 100px;
    margin-bottom: 70px;
}

/* Стили для 6 элементов - 3 колонки, gap 100px */
.full_description_content_grid--six-items {
    grid-template-columns: repeat(3, 1fr);
    gap: 100px;
}

/* Контентный блок - обводка F59A23, закругление 15px, max-width 520px */
.full_description_content_item {
    border: 2px solid #F59A23;
    border-radius: 15px;
    max-width: 520px;
    width: 100%;
    margin: 0 auto;
    background: transparent;
    padding: 0 0 10px 0;
}

/* Заголовок контентного блока - 20px, полужирный, по центру */
.full_description_content_item_title {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    padding: 15px 14px 5px 14px;
    color: #333;
}

/* Для 6 элементов - заголовок выравнивается по левому краю */
.full_description_content_grid--six-items .full_description_content_item_title {
    text-align: start;
}

/* Подзаголовок контентного блока - 16px, обычный, отступы 14px по бокам, снизу 10px */
.full_description_content_item_subtitle {
    font-size: 16px;
    font-weight: 400;
    padding: 0 14px 10px 14px;
    text-align: start;
    color: #333;
    line-height: 1;
}

/* Адаптив для 6 элементов на планшетах */
@media (max-width: 1200px) {
    .full_description_content_grid--six-items {
        gap: 60px;
    }
}

@media (max-width: 992px) {
    .full_description_content_grid {
        grid-template-columns: 1fr;
        padding: 0 20px;
        gap: 20px;
    }
    
    .full_description_content_grid--six-items {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .full_description_content_item {
        max-width: 100%;
    }
    
    .full_description_title {
        font-size: 24px;
        margin-bottom: 20px;
    }
    
    .full_description_subtitle {
        font-size: 16px;
        margin-bottom: 30px;
        padding: 0 15px;
    }
    
    /* На мобильных возвращаем заголовок по центру */
    .full_description_content_grid--six-items .full_description_content_item_title {
        text-align: center;
    }
}

@media (max-width: 768px) {
    .full_description_section {
        padding: 30px 0 50px 0;
    }
    
    .full_description_content_grid {
        padding: 0 15px;
    }
    
    .full_description_title {
        font-size: 22px;
    }
    
    .full_description_subtitle {
        font-size: 14px;
    }
    
    .full_description_content_item_title {
        font-size: 18px;
    }

    .full_description_content_item_subtitle {
        font-size: 14px;
    }
}

.servs_block {
    padding: 0px 0;
}
.catalog_section {
    margin-bottom: 50px !important;
}
.servs_block .h2 {
    display: block;
    font-size: 28px;
    color: #000;
    font-weight: 700;
	text-align: center;
}
.servs_block a.h2:hover {
    color: #b89c5f;
}
.servs_block .h3 {
    display: flex;
    width: fit-content;
    font-size: 25px;
    color: #000;
    font-weight: 500;
    text-align: center;
    margin: 40px auto;
}
.servs_block a.h3:hover {
    color: #b89c5f;
}
.servs_block .desc {
    display: block;
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 40px;
	  max-width: 900px;
    justify-self: center;
}
@media (max-width: 768px) {
    .servs_block .desc {
        margin: 0 20px;
        font-size: 14px;
        padding-bottom: 20px;
    }
}
/* ===== Единая типографика разделов (как на деталке услуг) ===== */
.title_36 {
    font-family: 'Gilroy', sans-serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    color: #333333 !important;
    margin: 0 0 40px;
}

.title_36:has(+ .timeline_subtitle),
.title_36:has(+ .big_section_subtitle),
.title_36:has(+ .bigcontent_subtitle),
.title_36:has(+ .full_description_subtitle),
.title_36:has(+ .imgplitkmini_section_subtitle),
.title_36:has(+ .blckimgbg_subtitle),
.title_36:has(+ .ventfasad__subtitle),
.title_36:has(+ .pricing-table-section__subtitle),
.title_36:has(+ .equipment_block_subtitle) {
    margin-bottom: 15px;
}

.timeline_subtitle,
.big_section_subtitle,
.bigcontent_subtitle,
.full_description_subtitle,
.imgplitkmini_section_subtitle,
.pricing-table-section__subtitle,
.equipment_block_subtitle,
.ventfasad__subtitle {
    font-family: 'Gilroy', sans-serif;
    max-width: 1000px;
    margin: 0 auto 40px;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 500;
    color: #555;
}

.big_section_title,
.bigcontent_title,
.full_description_title,
.imgplitkmini_section_title,
.pricing-table-section__title,
.equipment_block_title,
.ventfasad__title,
.advantages_title,
.preview_title,
.services_desc_title,
.biginfo_title {
    font-family: 'Gilroy', sans-serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    color: #333;
    margin: 0 0 40px;
}

.big_section_title:has(+ .big_section_subtitle),
.bigcontent_title:has(+ .bigcontent_subtitle),
.full_description_title:has(+ .full_description_subtitle),
.imgplitkmini_section_title:has(+ .imgplitkmini_section_subtitle),
.pricing-table-section__title:has(+ .pricing-table-section__subtitle),
.equipment_block_title:has(+ .equipment_block_subtitle),
.ventfasad__title:has(+ .ventfasad__subtitle),
.blckimgbg_title:has(+ .blckimgbg_subtitle) {
    margin-bottom: 15px;
}

.blckimgbg_title {
    font-family: 'Gilroy', sans-serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    margin: 0 0 40px;
}

.blckimgbg_subtitle {
    font-family: 'Gilroy', sans-serif;
    max-width: 1000px;
    margin: 0 auto 40px;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 500;
}

@media (max-width: 768px) {
    .title_36,
    .big_section_title,
    .bigcontent_title,
    .full_description_title,
    .imgplitkmini_section_title,
    .pricing-table-section__title,
    .equipment_block_title,
    .ventfasad__title,
    .advantages_title,
    .preview_title,
    .services_desc_title,
    .biginfo_title,
    .blckimgbg_title {
        font-size: 28px;
    }
}

.header_slider3 .back {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
}

.header_slider3 .back .overlay {
    position: absolute;
    top:0; left:0; right:0; bottom:0;
    background: rgba(0,0,0,0.5); /* затемнение для читаемости текста */
    z-index: 1;
}

.header_slider3 .slide_content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* ставим flex-start, чтобы padding-top сработал */
    align-items: flex-start;
    flex: 1 1 auto;
    width: 100%;
    max-width: 600px;
    height: auto;
    min-height: 0;
    box-sizing: border-box;
    color: #fff;
    padding-top: 80px; /* вот этот отступ сверху */
}

.header_slider3 .slide_content .ttl {
    font-size: 36px;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 15px;
    line-height: 1.2;
}

.header_slider3 .slide_content .subttl {
    width: 100%;
    max-width: 640px;
    font-size: 28px;
    margin-bottom: 25px;
    line-height: 1.2;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.header_slider3 .slide_content .btns {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.header_slider3 .slide_content .btns a {
    display: inline-block;
    padding: 12px 30px;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
}

.header_slider3 .slide_content .btns a:first-child {
    background: #b89c5f;
    color: #fff;
}
.header_slider3 .slide_content .btns a:last-child {
    background: transparent;
    border: 2px solid #fff;
    color: #fff;
}
.header_slider3 .slide_content .btns a:hover {
    opacity: 0.9;
}

.header_slider3 .owl-nav {
    position: absolute;
    top: 50%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    z-index: 3;
}

.header_slider3 .owl-nav i {
    font-size: 40px;
    color: #fff;
}

.header_slider3 .slide_content {
    padding-top: 80px !important;
	padding-left: 50px !important;
}

.header_slider3 .slide_content .subttl {
    font-size: 18px !important;
}

@media (max-width: 1024px) {
    .header_slider3 .back {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    }
    .header_slider3 .slide_content {
        padding-top: 60px;
    }
    .header_slider3 .slide_content .ttl {
        font-size: 28px;
    }
    .header_slider3 .slide_content .subttl {
        font-size: 22px;
    }
    .header_slider3 .slide_content .btns a {
        padding: 10px 20px;
    }
}

@media (max-width: 600px) {
    .header_slider3 .back {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    }
    .header_slider3 .slide_content {
        max-width: 90%;
        align-items: center;
        text-align: center;
    }
    .header_slider3 .slide_content {
        padding-top: 40px;
    }
    .header_slider3 .slide_content .ttl {
        font-size: 22px;
    }
    .header_slider3 .slide_content .subttl {
        font-size: 18px;
    }
    .header_slider3 .slide_content .btns {
        flex-direction: column;
        gap: 10px;
    }
    .header_slider3 .slide_content .btns a {
        width: 100%;
        text-align: center;
    }
}

/* ===== БЛОК ОПИСАНИЯ РАЗДЕЛА ===== */
.services_desc_block {
    background: #F2F2F2;
    padding: 50px 0;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.services_desc_wrapper {
    display: flex;
    gap: 60px;
    align-items: flex-start;
}
/* Левая колонка */
.services_desc_img {
    width: 33%;
    flex-shrink: 0;
}
.services_desc_img img {
    width: 100%;
    max-width: 500px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 25px;
}
/* Правая колонка */
.services_desc_content {
    width: 67%;
}
/* Если нет картинки - текст на всю ширину */
.services_desc_wrapper.no-image .services_desc_content {
    width: 100%;
}
.services_desc_wrapper.no-image .services_desc_content.full-width {
    width: 100%;
}
/* Заголовок */
.services_desc_title {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 25px;
}
/* Текст */
.services_desc_text {
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 30px;
    font-weight: 500;
}
/* Цитата */
.services_desc_quote {
    background: #F4E3BD;
    border-left: 5px solid #FF6600;
    padding: 25px 20px;
    border-radius: 0 25px 25px 0;
    font-size: 18px;
    font-weight: 500;
}
@media (max-width: 1024px) {
    .services_desc_wrapper {
        gap: 40px;
    }
    .services_desc_title {
        font-size: 26px;
    }
}
@media (max-width: 768px) {
    .services_desc_wrapper {
        flex-direction: column;
    }
    .services_desc_img,
    .services_desc_content {
        width: 100%;
    }
    .services_desc_img img {
        max-width: 100%;
        margin-bottom: 25px;
    }
    .services_desc_block {
        padding: 40px 0;
    }
    .services_desc_quote {
        font-size: 16px;
        padding: 20px;
    }
    .services_desc_wrapper.no-image .services_desc_content {
        width: 100%;
    }
}




/* Блок превью дизайна */
.services_preview_block {

}

.services_preview_block .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

/* Заголовок блока (28px) */
.preview_title {
    font-size: 28px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 20px 0;
    line-height: 1.3;
}

/* Текст анонса */
.preview_text {
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    margin-bottom: 40px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

/* Сетка для двух блоков */
.preview_grid {
    display: flex;
    justify-content: center;
    gap: 35px;
    flex-wrap: wrap;
}

/* Отдельный блок (карточка) */
.preview_tile {
    flex: 0 1 calc(50% - 17.5px);
    max-width: 550px;
    min-width: 300px;
    text-align: center; /* Центрируем весь контент в блоке */
}

/* Контейнер для изображения */
.preview_tile .tile_img {
    width: 100%;
    max-width: 550px;
    margin: 0 auto 20px auto; /* Центрируем и добавляем отступ снизу */
    overflow: hidden;
    position: relative;
    
    /* Фиксированная высота 550px */
    height: 550px;
}

.preview_tile .tile_img img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Сохраняем пропорции и заполняем контейнер */
    display: block;
    transition: all 0.3s ease;
    
    /* Затемнение через псевдоэлемент (темный слой) */
    position: relative;
    z-index: 1;
}

/* Создаем темное затемнение через псевдоэлемент */
.preview_tile .tile_img::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); /* Темное затемнение 40% */
    transition: background-color 0.3s ease;
    z-index: 2;
    pointer-events: none; /* Чтобы не мешать кликам */
}

/* Убираем затемнение при наведении */
.preview_tile .tile_img:hover::after {
    background-color: rgba(0, 0, 0, 0);
}

/* Контент под изображением */
.preview_tile .tile_content {
    padding: 0 5px;
    text-align: center; /* Центрируем текст */
}

/* Заголовок (24px) */
.preview_tile .tile_title {
    font-size: 24px;
    font-weight: 600;
    margin: 0 0 10px 0;
    line-height: 1.3;
}

/* Описание (18px) */
.preview_tile .tile_desc {
    font-size: 18px;
    line-height: 1.5;
    margin: 0;
    color: #666;
}

/* Адаптивность для планшетов */
@media (max-width: 768px) {
    .preview_grid {
        gap: 30px;
    }
    
    .preview_tile {
        flex: 0 1 100%;
        max-width: 550px;
    }
    
    .preview_tile .tile_img {
        height: 450px; /* Уменьшаем высоту на планшетах */
    }
    
    .preview_title {
        font-size: 24px;
    }
    
    .preview_tile .tile_title {
        font-size: 22px;
    }
    
    .preview_tile .tile_desc {
        font-size: 16px;
    }
}

/* Адаптивность для мобильных */
@media (max-width: 480px) {
    .preview_tile .tile_img {
        height: 350px; /* Еще уменьшаем высоту на мобильных */
    }
    
    .preview_title {
        font-size: 22px;
    }
    
    .preview_tile .tile_title {
        font-size: 20px;
    }
}

/* Базовые стили для большого блока */
.big_section_block {
    margin: 50px 0;
    padding: 0;
    font-family: inherit;
}

.big_section_block .container {
    margin: 0 auto;
    padding: 0 15px;
}

/* Заголовок блока */
.big_section_title {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
    color: #333;
    line-height: 1.3;
}

/* Подзаголовок блока */
.big_section_subtitle {
    font-size: 24px;
    text-align: center;
    margin-bottom: 40px;

}

/* Основной контент (левая и правая части) */
.big_section_main_content {
    display: flex;
    gap: 40px;
    margin-bottom: 100px;
    align-items: stretch;
}

/* Левая часть с текстом */
.big_section_left {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
    border-radius: 15px;
}

.big_section_text {
    font-size: 18px;
    line-height: 1.2;
    font-weight: 500;
    max-width: 700px;
}

.big_section_text p {
    margin-bottom: 15px;
}

/* Правая часть с изображениями */
.big_section_right {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Главное изображение */
.big_section_main_image_wrapper {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.big_section_main_image {
    width: 120%;
    height: auto;
    max-width: 800px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 25px;
    display: block;
}

/* Миниатюры */
.big_section_thumbnails {
    display: flex;
    gap: 15px;
    justify-content: start;
    margin-top: 15px;
    flex-wrap: wrap;
    padding-left: 30px;
}

.big_section_thumbnail {
    width: 100px;
    height: 70px;
    cursor: pointer;
    /* border-radius: 10px; */
    overflow: hidden;
    transition: all 0.3s ease;
    border: 3px solid transparent;
}

.big_section_thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.big_section_thumbnail:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.big_section_thumbnail.active {
    border-color: #007bff;
    box-shadow: 0 0 0 2px rgba(0,123,255,0.3);
}

/* Сетка мини-плиток - исправлено для 3 колонок */
.big_section_grid {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
    margin-top: 100px;
}

.big_section_grid_item {
    flex: 1;
    min-width: 0; /* Позволяет flex элементам сжиматься */
    display: flex;
    flex-direction: column;
}

/* Изображение плитки - теперь с пропорциональным размером */
.big_section_grid_image {
    width: 100%;
    padding-bottom: 62.2%; /* 347px / 557px = 0.622, сохраняем пропорции */
    position: relative;
    border-radius: 25px;
    overflow: hidden;
    margin-bottom: 20px;
}

.big_section_grid_image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.big_section_grid_image img:hover {
    transform: scale(1.05);
}

/* Заголовок плитки */
.big_section_grid_title {
    font-size: 20px;
    font-weight: bold;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.3;
	text-align: center;
}

/* Описание плитки */
.big_section_grid_desc {
    font-size: 18px;
    color: #333;
    line-height: 1;
    max-width: 450px;
    font-weight: 500;
    padding-left: 40px;
}

@media (max-width: 1024px) {
    .big_section_grid_item {
        flex: 1;
        min-width: calc(33.333% - 20px);
    }
    
    .big_section_grid_desc {
        max-width: 100%;
    }
    
    /* Исправление большой картинки */
    .big_section_main_image {
        width: 100%;
        max-width: 100%;
    }
    
    .big_section_main_image_wrapper {
        max-width: 100%;
        overflow: hidden;
    }
}

@media (max-width: 768px) {
    .big_section_title {
        font-size: 24px;
    }
    
    .big_section_subtitle {
        font-size: 20px;
    }
    
    .big_section_main_content {
        flex-direction: column;
        gap: 30px;
        margin-bottom: 60px;
    }
    
    .big_section_left {
        padding: 30px;
    }
    
    .big_section_grid {
        gap: 30px;
        margin-top: 60px;
    }
    
    .big_section_grid_item {
        flex: 1 1 calc(33.333% - 20px);
        min-width: 0;
    }
    
    .big_section_thumbnail {
        width: 100px;
        height: 100px;
    }
    
    .big_section_thumbnails {
        gap: 10px;
        padding-left: 0;
        justify-content: center;
    }
    
    /* Исправление большой картинки */
    .big_section_main_image {
        width: 100%;
        max-width: 100%;
    }
    
    .big_section_main_image_wrapper {
        max-width: 100%;
        overflow: hidden;
    }
}

@media (max-width: 640px) {
    .big_section_grid {
        flex-direction: column;
        gap: 40px;
    }
    
    .big_section_grid_item {
        width: 100%;
    }
    
    .big_section_grid_image {
        padding-bottom: 62.2%;
    }
    
    /* Исправление большой картинки */
    .big_section_main_image {
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .big_section_title {
        font-size: 22px;
    }
    
    .big_section_subtitle {
        font-size: 18px;
    }
    
    .big_section_left {
        padding: 20px;
    }
    
    .big_section_grid_title {
        font-size: 18px;
    }
    
    .big_section_grid_desc {
        font-size: 14px;
    }
    
    .big_section_thumbnail {
        width: 80px;
        height: 60px;
    }
    
    /* Исправление большой картинки */
    .big_section_main_image {
        width: 100%;
        max-width: 100%;
    }
    
    .big_section_main_image_wrapper {
        max-width: 100%;
        overflow: hidden;
    }
    
    .big_section_thumbnails {
        justify-content: center;
    }
}

/* Блок преимуществ */
.advantages_block {
    padding: 50px 0;
    background-color: #fff;
}

.advantages_title {
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
    color: #333;
}

.advantages_content {
    display: flex;
    gap: 60px;
    align-items: center;
    margin-top: 36px;
}

.advantages_image {
    flex: 1;
    max-width: 50%;
}

.advantages_image img {
    width: 100%;
    height: auto;
    border-radius: 25px;
    display: block;
}

.advantages_text {
    flex: 1;
    font-size: 18px;
    line-height: 1.6;
    color: #555;
}

.advantages_text p {
    margin-bottom: 20px;
}

.advantages_text ul {
    margin: 20px 0;
    padding-left: 0;
    list-style: none;
}

.advantages_text li {
    margin-bottom: 12px;
    position: relative;
    padding-left: 20px;
    list-style: none;
}

.advantages_text li:before {
    content: "•";
    color: #333;
    font-size: 20px;
    position: absolute;
    left: 0;
    top: 0;
}

.advantages_text li::marker {
    display: none;
}

/* Адаптация для планшетов */
@media (max-width: 1200px) {
    .advantages_content {
        gap: 40px;
    }
    
    .advantages_text {
        font-size: 17px;
    }
}

/* Адаптация для мобильных устройств */
@media (max-width: 768px) {
    .advantages_block {
        padding: 30px 0;
    }
    
    .advantages_title {
        font-size: 24px;
        margin-bottom: 30px;
    }
    
    .advantages_content {
        flex-direction: column;
        gap: 30px;
        margin-top: 20px;
    }
    
    .advantages_image {
        max-width: 100%;
    }
    
    .advantages_image img {
        max-width: 100%;
        height: auto;
    }
    
    .advantages_text {
        font-size: 16px;
    }
    
    .advantages_text li:before {
        font-size: 18px;
    }
}

/* ===== Блок сотрудников staff_design ===== */
.staff_design {
    padding: 50px 0;
}

.staff_design .title_36 {
    margin-bottom: 0;
}

.staff_slider_wrap {
    background-color: #101010;
    margin-top: 40px;
    padding: 40px;
    border-radius: 25px;
    height: auto;
}

/* Слайд — высота строго по фото, иначе Owl раздувает stage */
.staff_slider .staff_slide {
    display: flex;
    justify-content: center;
    height: 375px;
}

.staff_slider.owl-carousel .owl-item {
    width: auto;
    height: 375px !important;
}

.staff_slider .owl-stage-outer,
.staff_slider .owl-height {
    height: 375px !important;
}

.staff_slider .owl-stage {
    /* не даём stage наследовать ошибочную высоту от vertical text */
    height: 375px !important;
}

.staff_slide_inner {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 15px;
    height: 375px;
}

/* Левая часть с вертикальным текстом */
.staff_slide_left {
    flex-shrink: 0;
    height: 375px;
    display: flex;
    align-items: flex-end;
    min-height: 0;
}

/* Вертикальное имя + должность (слева от картинки) */
.staff_slide_name_vertical {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 375px;
    max-height: 375px;
    min-height: 0;
    overflow: hidden;
}

.staff_slide_name_text {
    font-size: 16px;
    font-weight: 600;
    color: #c5a47e;
    letter-spacing: 1px;
    white-space: nowrap;
}

.staff_slide_dot {
    width: 4px;
    height: 4px;
    background-color: #fff;
    border-radius: 50%;
    display: inline-block;
    margin-left: -4px;
}

.staff_slide_position {
    font-size: 14px;
    color: #888888;
    white-space: nowrap;
    margin-left: -6px;
}

/* Обертка для картинки */
.staff_slide_pic_wrap {
    flex-shrink: 0;
}

/* Картинка сотрудника - размер 300x375px */
.staff_slide_pic {
    position: relative;
    width: 300px;
    height: 375px;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 18px 18px 16% 18px;
}

/* Кнопка "i" на картинке (правый нижний угол) */
.staff_slide_btn {
    position: absolute;
    bottom: 0px;
    right: 0px;
    width: 60px;
    height: 60px;
    background-color: #c5a47e;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    z-index: 10;
    border: 5px solid #101010;
}

.staff_slide_btn:hover {
    transform: scale(1.1);
    background-color: #d4b48c;
}

.staff_slide_btn span {
    font-size: 18px;
    font-weight: bold;
    color: #888888;
    font-style: normal;
    font-family: 'Gilroy', sans-serif;
}

/* Скрыть стрелки Owl на всех ширинах */
.staff_slider .owl-nav {
    display: none !important;
}

/* Стили для навигации Owl Carousel */
.staff_slider .owl-nav button {
    background: rgba(255, 255, 255, 0.2) !important;
    border-radius: 50% !important;
    width: 40px;
    height: 40px;
}

.staff_slider .owl-nav button:hover {
    background: rgba(255, 255, 255, 0.4) !important;
}

.staff_slider .owl-nav button span {
    color: #fff;
    font-size: 40px;
    line-height: 1;
}

.staff_slider .owl-dots .owl-dot span {
    background: rgba(255, 255, 255, 0.3);
}

.staff_slider .owl-dots .owl-dot.active span {
    background: #c5a47e;
}

/* Адаптив для планшетов */
@media (max-width: 1200px) {
    .staff_slider_wrap {
        padding: 32px 30px;
        height: auto;
    }
    
    .staff_slide_pic {
        width: 240px;
        height: 300px;
    }

    .staff_slider .staff_slide,
    .staff_slide_inner,
    .staff_slide_left,
    .staff_slide_name_vertical,
    .staff_slider.owl-carousel .owl-item,
    .staff_slider .owl-stage-outer,
    .staff_slider .owl-stage,
    .staff_slider .owl-height {
        height: 300px !important;
        max-height: 300px;
    }
    
    .staff_slide_name_text {
        font-size: 14px;
    }
    
    .staff_slide_position {
        font-size: 12px;
    }
}

@media (max-width: 992px) {
    .staff_slider_wrap {
        padding: 24px 20px;
        height: auto;
    }

    .staff_slide_pic {
        width: 200px;
        height: 250px;
    }

    .staff_slider .staff_slide,
    .staff_slide_inner,
    .staff_slide_left,
    .staff_slide_name_vertical,
    .staff_slider.owl-carousel .owl-item,
    .staff_slider .owl-stage-outer,
    .staff_slider .owl-stage,
    .staff_slider .owl-height {
        height: 250px !important;
        max-height: 250px;
    }
    
    .staff_slide_name_text {
        font-size: 13px;
    }
    
    .staff_slide_position {
        font-size: 11px;
    }
    
    .staff_slide_inner {
        gap: 12px;
    }
}

/* Адаптив для мобильных устройств */
@media (max-width: 768px) {
    .staff_design {
        padding: 40px 0;
    }
    
    .staff_design .ttl {
        font-size: 28px;
        text-align: center;
        margin-bottom: 30px;
    }
    
    .staff_slider_wrap {
        margin-top: 0;
        padding: 20px 15px 28px;
        height: auto;
    }

    .staff_slider .staff_slide,
    .staff_slide_inner,
    .staff_slide_left,
    .staff_slide_name_vertical,
    .staff_slider.owl-carousel .owl-item,
    .staff_slider .owl-stage-outer,
    .staff_slider .owl-stage,
    .staff_slider .owl-height {
        height: auto !important;
        max-height: none;
    }

    .staff_slide_name_vertical {
        max-height: none;
        overflow: visible;
    }
    
    /* Переключаем ориентацию: картинка сверху, текст снизу */
    .staff_slide_inner {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
    
    /* Левая часть с вертикальным текстом становится горизонтальной */
    .staff_slide_left {
        order: 2;
        width: 100%;
        text-align: center;
    }
    
    /* Вертикальное имя превращается в горизонтальное */
    .staff_slide_name_vertical {
        writing-mode: horizontal-tb;
        transform: none;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }
    
    .staff_slide_name_text {
        font-size: 16px;
        white-space: normal;
    }
    
    .staff_slide_dot {
        display: none;
    }
    
    .staff_slide_position {
        font-size: 13px;
        white-space: normal;
        margin-left: 0;
        color: #aaa;
    }
    
    /* Обертка для картинки */
    .staff_slide_pic_wrap {
        order: 1;
        width: 100%;
        display: flex;
        justify-content: center;
    }
    
    /* Картинка сотрудника - увеличиваем на мобилке */
    .staff_slide_pic {
        width: 280px;
        height: 350px;
        border-radius: 18px 18px 16% 18px;
    }
    
    /* Кнопка "i" на картинке */
    .staff_slide_btn {
        width: 50px;
        height: 50px;
        bottom: 10px;
        right: 10px;
        border-width: 3px;
    }
    
    .staff_slide_btn span {
        font-size: 20px;
    }
    
    /* Стили для Owl Carousel навигации */
    .staff_slider .owl-nav {
        position: absolute;
        bottom: -50px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        gap: 20px;
    }
    
    .staff_slider .owl-nav button {
        background: #c5a47e !important;
        width: 40px;
        height: 40px;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
    }
    
    .staff_slider .owl-nav button span {
        color: #fff;
        font-size: 30px;
        line-height: 1;
    }
    
    .staff_slider .owl-nav button:hover {
        background: #d4b48c !important;
        transform: scale(1.05);
    }
    
    /* Точки пагинации */
    .staff_slider .owl-dots {
        margin-top: 30px;
        display: flex;
        justify-content: center;
        gap: 8px;
    }
    
    .staff_slider .owl-dots .owl-dot span {
        width: 8px;
        height: 8px;
        margin: 0;
        background: #ccc;
        border-radius: 50%;
    }
    
    .staff_slider .owl-dots .owl-dot.active span {
        background: #c5a47e;
        width: 20px;
        border-radius: 4px;
    }
    
    /* Расстояние между слайдами */
    .staff_slider .owl-item {
        margin-right: 0;
    }
}

@media (max-width: 576px) {
    .staff_design .ttl {
        font-size: 24px;
    }
    
    .staff_slide_pic {
        width: 240px;
        height: 300px;
    }
    
    .staff_slide_name_text {
        font-size: 15px;
    }
    
    .staff_slide_position {
        font-size: 12px;
    }
    
    .staff_slide_btn {
        width: 45px;
        height: 45px;
    }
    
    .staff_slide_btn span {
        font-size: 18px;
    }
    
    .staff_slider .owl-nav {
        bottom: -45px;
        gap: 15px;
    }
    
    .staff_slider .owl-nav button {
        width: 35px;
        height: 35px;
    }
    
    .staff_slider .owl-nav button span {
        font-size: 25px;
    }
}

@media (max-width: 480px) {
    .staff_design {
        padding: 30px 25px;
    }
    
    .staff_design .ttl {
        font-size: 22px;
        margin-bottom: 25px;
    }
    
    .staff_slider_wrap {
        padding: 45px 10px;
    }
    
    .staff_slide_pic {
        width: 220px;
        height: 275px;
        border-radius: 15px 15px 13% 15px;
    }
    
    .staff_slide_name_text {
        font-size: 14px;
    }
    
    .staff_slide_position {
        font-size: 11px;
    }
    
    .staff_slide_btn {
        width: 40px;
        height: 40px;
        bottom: 8px;
        right: 8px;
        border-width: 2px;
    }
    
    .staff_slide_btn span {
        font-size: 16px;
    }
    
    .staff_slide_inner {
        gap: 12px;
    }
    
    .staff_slider .owl-nav {
        bottom: -40px;
        gap: 12px;
    }
    
    .staff_slider .owl-nav button {
        width: 32px;
        height: 32px;
    }
    
    .staff_slider .owl-nav button span {
        font-size: 22px;
    }
    
    .staff_slider .owl-dots {
        margin-top: 25px;
        gap: 6px;
    }
    
    .staff_slider .owl-dots .owl-dot span {
        width: 6px;
        height: 6px;
    }
    
    .staff_slider .owl-dots .owl-dot.active span {
        width: 16px;
    }
}

@media (max-width: 375px) {
    .staff_slide_pic {
        width: 200px;
        height: 250px;
    }
    
    .staff_slide_name_text {
        font-size: 13px;
    }
    
    .staff_slide_position {
        font-size: 10px;
    }
    
    .staff_slide_btn {
        width: 35px;
        height: 35px;
    }
    
    .staff_slide_btn span {
        font-size: 14px;
    }
    
    .staff_slider .owl-nav {
        bottom: -35px;
    }
    
    .staff_slider .owl-nav button {
        width: 28px;
        height: 28px;
    }
    
    .staff_slider .owl-nav button span {
        font-size: 20px;
    }
}


.faq_design {
    padding: 60px 0;
    background: #f9f6f3;
}
.faq_design .title_36 {
    margin-bottom: 40px;
}
.faq_design .cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 20px;
    width: 100%;
    align-items: start;
}
.faq_design .cards .card {
    width: 100%;
    max-width: none;
    align-self: start;
    background: #fff;
    border: 1px solid #ece7df;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
.faq_design .cards .card:hover {
    border-color: #e0d4c0;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.07);
}
.faq_design .card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    text-decoration: none !important;
    color: #333;
    padding: 22px 24px;
    border: none;
    background: #fff;
    cursor: pointer;
    transition: background 0.25s ease;
}
.faq_design .card-header[aria-expanded="true"] {
    background: #fffaf2;
    border-bottom: 1px solid #f0e8d8;
}
.faq_question {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
    color: #333;
}
.faq_icon {
    position: relative;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #f5efe4;
    border: 1px solid #e8dcc8;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.faq_icon::before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-right: 2px solid #b89c5f;
    border-bottom: 2px solid #b89c5f;
    transform: rotate(45deg);
    margin-top: -3px;
    transition: transform 0.25s ease, border-color 0.25s ease;
}
.faq_icon::after {
    content: none;
}
.card-header[aria-expanded="true"] .faq_icon {
    background: #b89c5f;
    border-color: #b89c5f;
}
.card-header[aria-expanded="true"] .faq_icon::before {
    border-color: #fff;
    transform: rotate(-135deg);
    margin-top: 3px;
}
.faq_design .card-body {
    padding: 16px 24px 22px 24px;
    font-size: 16px;
    line-height: 1.6;
    color: #555;
}
.faq_design .card-body ul,
.faq_design .card-body ol {
    list-style: disc;
    padding-left: 24px;
    margin: 16px 0;
}
.faq_design .card-body li {
    margin-bottom: 10px;
}
.faq_design .card-body li::marker {
    color: #000;
    font-size: 16px;
}
@media (max-width: 992px) {
    .faq_design {
        padding: 40px 0;
    }
    .faq_question {
        font-size: 17px;
    }
}
@media (max-width: 768px) {
    .faq_design {
        padding: 40px 0;
    }
    .faq_design .container {
        padding-left: 25px;
        padding-right: 25px;
    }
    .faq_design .title_36 {
        margin-bottom: 30px;
        font-size: 28px;
        text-align: center;
    }
    .faq_design .cards {
        grid-template-columns: 1fr;
    }
    .faq_design .cards .card {
        max-width: 100%;
    }
    .faq_question {
        font-size: 16px;
        padding-right: 12px;
    }
    .faq_design .card-header {
        padding: 18px 16px;
    }
    .faq_icon {
        width: 28px;
        height: 28px;
    }
    .faq_icon::before {
        width: 7px;
        height: 7px;
    }
    .faq_design .card-body {
        padding: 14px 16px 18px 16px;
        font-size: 14px;
        line-height: 1.5;
    }
}
@media (max-width: 480px) {
    .faq_design {
        padding: 30px 0;
    }
    .faq_design .container {
        padding-left: 25px;
        padding-right: 25px;
    }
    .faq_design .title_36 {
        margin-bottom: 25px;
        font-size: 24px;
    }
    .faq_question {
        font-size: 15px;
        padding-right: 10px;
    }
    .faq_design .card-header {
        padding: 15px 16px;
    }
    .faq_icon {
        width: 26px;
        height: 26px;
    }
    .faq_icon::before {
        width: 6px;
        height: 6px;
    }
    .faq_design .card-body {
        padding: 12px 16px 16px 16px;
        font-size: 13px;
    }
}


.calc_block {
    margin: 50px 0;
    overflow: visible;
}
.calc_block h2 {
    color: var(--main-template-color);
    font-size: 30px;
}

.calc_block .inputer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: wrap;
    margin: 50px 0;
    gap: 0 10px;
}
.calc_block .inputer .inputer_txt {
    width: 100%;
    max-width: 200px;
    line-height: 1.2;
    font-weight: 500;
}
.calc_block .inputer .inputer_input {
    width: 100%;
    max-width: 200px;
}
.calc_block .inputer .inputer_input input {
    display: flex;
    align-items: center;
    padding: 5px;
    height: 50px;
    width: 100%;
    font-size: 40px;
    line-height: 40px;
    color: #000;
    border: 1px solid #7f7f7f;
    border-radius: 5px;
    appearance: textfield;
    -moz-appearance: textfield;
}
.calc_block .inputer .inputer_input input::-webkit-outer-spin-button,
.calc_block .inputer .inputer_input input::-webkit-inner-spin-button,
.calc_block .price_block .price_column .txt .calculate_block .input_price input::-webkit-outer-spin-button,
.calc_block .price_block .price_column .txt .calculate_block .input_price input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.calc_block .range_line {
    --calc-thumb-size: 17px;
    --calc-thumb-r: calc(var(--calc-thumb-size) / 2);
    --calc-edge-gutter: 32px;
    position: relative;
    width: 100%;
    max-width: 100%;
    margin-bottom: 55px;
    padding: 0 calc(var(--calc-thumb-r) + var(--calc-edge-gutter));
    box-sizing: border-box;
    overflow: visible;
}
.calc_block .range_line::before {
    content: '';
    position: absolute;
    left: calc(var(--calc-thumb-r) + var(--calc-edge-gutter));
    right: calc(var(--calc-thumb-r) + var(--calc-edge-gutter));
    top: 8px;
    height: 1px;
    background-color: #000;
    z-index: 0;
    pointer-events: none;
}
.calc_block .range_line.is-hidden {
    display: none;
}
.calc_block .range_line input {
    width: 100%;
    max-width: 100%;
    display: block;
}
.calc_block .range_line datalist,
.calc_block .range_line .datalist {
    position: relative;
    display: block;
    margin-top: -8px;
    width: 100%;
    min-height: 52px;
    z-index: 2;
    overflow: visible;
    pointer-events: none;
}
.calc_block .range_line datalist:before,
.calc_block .range_line .datalist:before {
    display: none;
}
.calc_block .range_line option,
.calc_block .range_line .point {
    position: absolute;
    top: 0;
    left: calc(var(--calc-thumb-r) + var(--pos, 0) * (100% - var(--calc-thumb-size)));
    transform: translateX(-50%);
    width: max-content;
    max-width: 120px;
    padding: 12px 0 0;
    font-weight: 600;
    font-size: 16px;
    color: #000000;
    white-space: nowrap;
    text-align: center;
    z-index: 2;
    pointer-events: none;
}
.calc_block .range_line option::before,
.calc_block .range_line .point::before {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
    width: 15px;
    height: 15px;
    margin: -7.5px 0 0 -7.5px;
    border: 1px solid #000;
    border-radius: 50%;
    background-color: #fff;
    z-index: 3;
}

.calc_block .range_line input[type=range] {
    position: relative;
    height: 17px;
    -webkit-appearance: none;
    margin: 0;
    width: 100%;
    border-radius: 50px;
    background-color: transparent;
    z-index: 3;
    pointer-events: auto;
}
.calc_block .range_line input[type=range]:focus {
    outline: none;
}
.calc_block .range_line input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 1px;
    cursor: pointer;
    background-color: transparent;
    border: 0;
    border-radius: 0;
}
.calc_block .range_line input[type=range]::-webkit-slider-thumb {
    height: 17px;
    width: 17px;
    border-radius: 50px;
    background: var(--main-template-color);
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -8px;
    border: none;
    position: relative;
    z-index: 4;
}
.calc_block .range_line input[type=range]::-moz-range-track {
    width: 100%;
    height: 1px;
    cursor: pointer;
    background-color: transparent;
    border: 0;
    border-radius: 0;
}
.calc_block .range_line input[type=range]::-moz-range-thumb {
    height: 17px;
    width: 17px;
    border: 0;
    border-radius: 50px;
    background: var(--main-template-color);
    cursor: pointer;
    position: relative;
    z-index: 4;
}
.calc_block .range_line input[type=range]::-ms-track {
    width: 100%;
    height: 1px;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    color: transparent;
}
.calc_block .range_line input[type=range]::-ms-thumb {
    height: 17px;
    width: 17px;
    border: 0;
    border-radius: 50px;
    background: var(--main-template-color);
    cursor: pointer;
    margin-top: 0;
    position: relative;
    z-index: 4;
}


.calc_block .price_block {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
        gap: 10px;
}
.calc_block .price_block .price_column {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    width: 100%;
    max-width: none;
    background-color: #1b1b1b;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #b89c5f;
}
.calc_block .price_block .price_column .txt .name {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #b89c5f;
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    padding: 18px 10px;
}
.calc_block .price_block .price_column .txt .calculate_block {
    padding: 30px 0 40px 35px;
}
.calc_block .price_block .price_column .txt .calculate_block .input_price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-flow: row;
    margin-bottom: 25px;
}
.calc_block .price_block .price_column .txt .calculate_block .input_price p {
    font-size: 24px;
    color: #b89c5f;
    font-weight: 700;
    margin-bottom: 0;
}
.calc_block .price_block .price_column .txt .calculate_block .input_price .in {
    position: relative;
}
.calc_block .price_block .price_column .txt .calculate_block .input_price .in:after {
    content: 'м²';
    position: absolute;
    right: 25px;
    top: 14px;
    font-size: 18px;
    color: #b89c5f;
}
.calc_block .price_block .price_column .txt .calculate_block .input_price input {    
    display: flex;
    align-items: center;
    width: 100px;
    height: 45px;
    background-color: transparent;
    border: 1px solid #b89c5f;
    border-right: none;
    border-radius: 5px 0 0 5px;
    color: #b89c5f;
    text-align: right;
    padding-right: 50px;
    font-size: 18px;
    appearance: textfield;
    -moz-appearance: textfield;
}
.calc_block .price_block .price_column .txt .calculate_block .result_price {
    margin-bottom: 24px;
}
.calc_block .price_block .price_column .txt .calculate_block .result_price p {
    color: #fff;
    margin-bottom: 0;
}
.calc_block .price_block .price_column .txt .calculate_block .result_price p.result {
    font-size: 24px;
    color: #b89c5f;
    font-weight: 700;
}
.calc_block .price_block .price_column .txt .calculate_block .current_discount {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transform: translateY(-6px);
    transition: opacity 0.3s ease, max-height 0.3s ease, transform 0.3s ease, margin-top 0.3s ease;
}
.calc_block .price_block .price_column .txt .calculate_block .current_discount.is-visible {
    opacity: 1;
    max-height: 40px;
    transform: translateY(0);
}
.calc_block .price_block .price_column .txt .calculate_block .current_discount__label {
    color: #ffffffa6;
}
.calc_block .price_block .price_column .txt .calculate_block .current_discount__value {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 62px;
    padding: 4px 10px;
    border: 1px solid #b89c5f;
    border-radius: 999px;
    color: #b89c5f;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
}
.calc_block .price_block .price_column .txt .calculate_block .stoimost_price {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transform: translateY(-6px);
    transition: opacity 0.3s ease, max-height 0.3s ease, transform 0.3s ease, margin-top 0.3s ease;
}
.calc_block .price_block .price_column .txt .calculate_block .stoimost_price.is-visible {
    opacity: 1;
    max-height: 80px;
    transform: translateY(0);
    margin-top: 12px;
}
.calc_block .price_block .price_column .txt .calculate_block .stoimost_price p {
    color: #ffffff56;
    margin-bottom: 0;
}
.calc_block .price_block .price_column .txt .calculate_block .stoimost_price p.stoimost {
    font-size: 24px;
    color: #b89c5f56;
    font-weight: 700;
    text-decoration: line-through;
}
.calc_block .price_block .price_column .txt .include {
    padding: 0 35px 30px;
}
.calc_block .price_block .price_column .txt .include > *:first-child {
    margin-top: 0;
}
.calc_block .price_block .price_column .txt .include > *:last-child {
    margin-bottom: 0;
}
.calc_block .price_block .price_column .txt .include .rollet {
    padding: 0 0 20px;
    color: #b89c5f;
    width: 100%;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
}

.calc_block .price_block .price_column .txt .include ul {
    list-style-type: none;
    margin: 0;
    padding-left: 18px;
}
.calc_block .price_block .price_column .txt .include p,
.calc_block .price_block .price_column .txt .include ol,
.calc_block .price_block .price_column .txt .include h1,
.calc_block .price_block .price_column .txt .include h2,
.calc_block .price_block .price_column .txt .include h3,
.calc_block .price_block .price_column .txt .include h4,
.calc_block .price_block .price_column .txt .include h5,
.calc_block .price_block .price_column .txt .include h6 {
    margin-top: 0;
    margin-bottom: 15px;
    color: #fff;
}
.calc_block .price_block .price_column .txt .include ul li {
    position: relative;
    font-size: 16px;
    line-height: 20px;
    color: #fff;
    margin-bottom: 15px;
}
.calc_block .price_block .price_column .txt .include ul li:before {
    content: '';
    position: absolute;
    top: 6px;
    left: -18px;
    display: block;
    width: 8px;
    height: 8px;
    background-color: #b89c5f;
    border-radius: 50%;
}
.calc_block .price_block .price_column .baton {
    width: 100%;
    margin-top: auto;
    padding: 0 25px 28px;
}
.calc_block .price_block .price_column .baton button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 40px;
    font-size: 16px;
    border-radius: 10px;
}
/* Планшеты */
@media (max-width: 1024px) {
    .calc_block .price_block {
        flex-wrap: wrap;
        gap: 20px;
        justify-content: center;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block {
        padding: 20px 20px 30px 20px;
    }
    
    .calc_block .price_block .price_column .txt .include {
        padding: 0 20px 30px;
    }
}

/* Мобильные устройства */
@media (max-width: 768px) {
    .calc_block {
        margin: 30px 0;
    }
    
    .calc_block .price_block {
        flex-direction: column;
        gap: 20px;
        align-items: center;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block {
        padding: 15px 15px 25px 15px;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .input_price {
        flex-wrap: wrap;
        gap: 10px;
        justify-content: space-between;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .input_price p {
        font-size: 20px;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .input_price input {
        width: 120px;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .result_price p.result {
        font-size: 20px;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .stoimost_price p.stoimost {
        font-size: 20px;
    }
    
    .calc_block .price_block .price_column .txt .include {
        padding: 0 15px 25px;
    }
    
    .calc_block .price_block .price_column .txt .include .rollet {
        font-size: 18px;
        padding-bottom: 15px;
    }
    
    .calc_block .price_block .price_column .txt .include ul li {
        font-size: 14px;
        margin-bottom: 10px;
    }
    
    .calc_block .price_block .price_column .baton {
        padding: 0 20px 30px;
    }
    
    /* Ползунок */
    .calc_block .inputer {
        margin: 30px 0;
        gap: 15px;
    }
    
    .calc_block .inputer .inputer_txt {
        max-width: 100%;
        text-align: center;
    }
    
    .calc_block .inputer .inputer_input {
        max-width: 150px;
    }
    
    .calc_block .range_line .point p {
        font-size: 12px;
        white-space: normal;
        word-break: keep-all;
    }
    
    .calc_block .range_line .point p br {
        display: none;
    }
    
    .calc_block .range_line .point {
        font-size: 12px;
        max-width: 90px;
    }

    .calc_block .range_line .point::before {
        width: 10px;
        height: 10px;
        margin: -5px 0 0 -5px;
    }
}

/* Маленькие телефоны */
@media (max-width: 480px) {
    .calc_block .price_block .price_column .txt .calculate_block .input_price {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .input_price .in {
        width: 100%;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .input_price input {
        width: 100%;
        padding-right: 50px;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block .input_price .in:after {
        right: 15px;
    }
    
    .calc_block .price_block .price_column .txt .calculate_block {
        padding: 15px 12px 20px 12px;
    }
    
    .calc_block .price_block .price_column .txt .include {
        padding: 0 12px 20px;
    }
    
    .calc_block .price_block .price_column .baton {
        padding: 0 15px 25px;
    }
    
    .calc_block .price_block .price_column .baton button {
        height: 45px;
        font-size: 14px;
    }
    
    .calc_block .inputer .inputer_input input {
        height: 45px;
        font-size: 30px;
        line-height: 30px;
    }
    
    .calc_block .range_line {
        --calc-edge-gutter: 24px;
        padding: 0 calc(var(--calc-thumb-r) + var(--calc-edge-gutter));
    }

    .calc_block .range_line .point::before {
        width: 10px;
        height: 10px;
        margin: -5px 0 0 -5px;
    }
    
    .calc_block .range_line .point p {
        font-size: 10px;
    }
}


.price_block {
}
.price_block p.ttl {
    font-size: 20px;
    font-weight: 600;
}
.price_block .pricer {
    padding: 25px;
    border: 1px solid #000;
}
.price_block .pricer ul {
    list-style: disc;
}


/* Блок с большой информацией */
.biginfo_section {
    background: #CBA37C;
    border: 2px solid #797979;
    padding: 50px 0;
}

.biginfo_container {
    display: flex;
    gap: 0; /* Убираем отступы между колонками */
    flex-wrap: wrap;
}

.biginfo_column {
    flex: 1;
    min-width: 0; /* Позволяет колонкам сжиматься */
    box-sizing: border-box;
}

/* Первая колонка - шире 30% (70/30) */
.biginfo_column:first-child {
    flex: 0 0 60%;
    max-width: 60%;
    padding-right: 30px;
}

/* Вторая колонка - уже 30% */
.biginfo_column:last-child {
    flex: 0 0 40%;
    max-width: 40%;
}

.biginfo_title_wrap {
    margin-bottom: 25px;
    text-align: center;
}

.biginfo_title {
    display: block;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    font-size: 20px;
    font-weight: 600;
    margin: 0;
}

.biginfo_blocks {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 30px;
}

.biginfo_item {
    width: calc(33.33% - 14px);
    min-width: 200px;
    border: 2px solid #797979;
    padding: 3px;
    background: transparent;
    display: flex;
    gap: 4px;
    box-sizing: border-box;
}

/* Первая колонка - плитки по 3 в ряд */
.biginfo_column:first-child .biginfo_item {
    width: calc(33.33% - 14px);
}

/* Вторая колонка - плитки по 2 в ряд (так как колонка уже) */
.biginfo_column:last-child .biginfo_item {
    width: calc(50% - 10px);
}

.biginfo_item_image {
    flex-shrink: 0;
}

.biginfo_item_image img {
    width: 117px;
    height: 117px;
    border-radius: 7px;
    object-fit: cover;
}

.biginfo_item_content {
    flex: 1;
    padding-right: 4px;
}

.biginfo_item_title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 5px;
    text-align: center;
}

.biginfo_item_desc {
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    color: #333;
}

.biginfo_bottom_text {
    font-size: 13px;
    line-height: 1;
    margin-top: 20px;
    font-weight: 500;
}

/* Адаптация */
@media (max-width: 1200px) {
    .biginfo_item {
        width: calc(33.33% - 14px);
        min-width: 200px;
    }
    
    .biginfo_column:first-child .biginfo_item {
        width: calc(33.33% - 14px);
    }
    
    .biginfo_column:last-child .biginfo_item {
        width: calc(50% - 10px);
    }
}

@media (max-width: 992px) {
    .biginfo_container {
        flex-direction: column;
        gap: 40px;
    }
    
    /* На планшете колонки становятся по 100% */
    .biginfo_column:first-child,
    .biginfo_column:last-child {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .biginfo_column:first-child .biginfo_item,
    .biginfo_column:last-child .biginfo_item {
        width: calc(33.33% - 14px);
    }
}

@media (max-width: 768px) {
    .biginfo_section {
        padding: 30px 15px;
    }
    
    .biginfo_container {
        gap: 30px;
    }
    
    .biginfo_column:first-child .biginfo_item,
    .biginfo_column:last-child .biginfo_item {
        width: calc(50% - 10px);
    }
}

@media (max-width: 576px) {
    .biginfo_column:first-child .biginfo_item,
    .biginfo_column:last-child .biginfo_item {
        width: 100%;
    }
    
    .biginfo_title {
        font-size: 20px;
        padding: 0;
    }
}






/* ===== БЛОК 2: карточки верхних услуг ===== */
.services_v3_parent_grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    margin: 40px 0;
}

/* Добавь этот класс - обертка для иконки и текста */
.service_card_parent_header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 15px;
    margin-top: 16px;
    padding: 0 40px;
	justify-content: center;
}


.service_card_parent {
    position: relative;
    width: 500px;
    min-height: 590px;
    background-size: cover;
    background-position: center;
    border-radius: 25px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.service_card_parent_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 1;
}

.service_card_parent_icon_wrapper {
    position: relative;
    z-index: 2;
    flex-shrink: 0;
    margin-top: 0;
}


.service_card_parent_icon {
    width: 60px;
    height: 60px;
}

.service_card_parent_icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.service_card_parent_title_wrapper {
    position: relative;
    z-index: 2;
    text-align: left;
    padding: 0;
    margin-top: 0;
}

.service_card_parent_title a {
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    text-decoration: none;
}

.service_card_parent_title a:hover {
    color: #ff6b00;
}

.service_card_parent_services {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    padding: 100px 16px 0 16px;
}

.service_child_item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 10px;
    border: 2px solid;
    border-radius: 5px;
    background: transparent;
    text-decoration: none;
    transition: 0.2s;
}

.service_child_item:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}

.service_child_icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
}

.service_child_icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.service_child_name {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
}

.service_card_parent_footer {
    position: relative;
    z-index: 2;
    padding: 30px 30px 20px 30px;
    margin-top: auto;
    color: #fff;
    font-size: 13px;
    line-height: 1.4;
}

@media (max-width: 1200px) {
    .services_v3_parent_grid {
        gap: 20px;
    }
    .service_card_parent {
        width: calc(50% - 20px);
    }
}

@media (max-width: 768px) {
    .service_card_parent {
        width: 100%;
        max-width: 560px;
    }
    .service_card_parent_services {
        grid-template-columns: 1fr;
    }
}

/* ===== БЛОК ОБОРУДОВАНИЯ ===== */
.equipment_section {
    padding: 50px 0;
}

.equipment_block {
    margin-bottom: 50px;
}

.equipment_block:last-child {
    margin-bottom: 0;
}

/* Заголовок блока - 28px, обычный, по центру */
.equipment_block_title {
    font-size: 28px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 50px;
    color: #333;
}

/* Подзаголовок блока - 16px, max-width 1070px */
.equipment_block_subtitle {
    font-size: 16px;
    font-weight: 500;
    text-align: start;
    max-width: 1070px;
    margin: 0 auto 45px auto;
    line-height: 1;
    color: #333;
}

/* Сетка карточек - 3 в ряд, отступ 25px */
.equipment_cards_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* Карточка */
.equipment_card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Картинка карточки - 557x347, закругление 25px */
.equipment_card_img {
    width: 100%;
    aspect-ratio: 557 / 347;
    border-radius: 25px;
    overflow: hidden;
    margin-bottom: 27px;
}

.equipment_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Заголовок карточки - 20px, обычный */
.equipment_card_title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #333;
    text-align: center;
}

/* Описание карточки - 16px, обычный */
.equipment_card_description {
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    color: #333;
}

/* Адаптив */
@media (max-width: 992px) {
    .equipment_cards_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .equipment_section {
        padding: 50px 0;
    }
    
    .equipment_block {
        margin-bottom: 60px;
    }
}

@media (max-width: 768px) {
    .equipment_cards_grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .equipment_block_title {
        font-size: 24px;
    }
    
    .equipment_block_subtitle {
        font-size: 14px;
        margin-bottom: 30px;
    }
    
    .equipment_card_title {
        font-size: 18px;
    }
    
    .equipment_card_description {
        font-size: 14px;
    }
}

.section_header_current {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 30px;
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.section_header_current .h2,
.section_header_current .h3 {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.section_header_current .h2 {
    font-size: 28px;
    font-weight: 700;
    color: #333;
    margin-bottom: 10px;
}

.section_header_current .h3 {
    font-size: 25px;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
}

/* Safari: не полагаемся на width:100% + margin:auto — центрирует родительский flex */
.section_header_current .desc {
    display: block;
    font-size: 14px;
    color: #000;
    line-height: 1.45;
    font-weight: 500;
    text-align: center;
    width: -webkit-fill-available;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: manual;
    hyphens: manual;
}

@supports (width: min(100%, 800px)) {
    .section_header_current .desc {
        width: min(100%, 800px);
        max-width: min(100%, 800px);
    }
}

@media (max-width: 768px) {
    .section_header_current {
        margin-bottom: 20px;
        padding-left: 0;
        padding-right: 0;
    }
    .section_header_current .h2 {
        font-size: 24px;
    }
    .section_header_current .h3 {
        font-size: 22px;
    }
    .section_header_current .desc {
        font-size: 14px;
        width: 100%;
        max-width: 100%;
    }
}

/* ===== БЛОК С БОЛЬШИМИ КАРТИНКАМИ И ТЕКСТОМ (UF_BIGIMGBLCKS) ===== */
.bigimgblocks_section {
    padding-top: 50px;
}

.bigimgblocks_item {
    margin-bottom: 50px;
}

.bigimgblocks_item:last-child {
    margin-bottom: 0;
}

/* Заголовок */
.bigimgblocks_item_title {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px;
}

/* Подзаголовок */
.bigimgblocks_item_subtitle {
    max-width: 1000px;
    margin: 0 auto 30px auto;
    text-align: start;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    color: #333;
}

/* Контент (картинка + текст) */
.bigimgblocks_item_content {
    display: flex;
    align-items: center;
    gap: 40px;
}

/* Картинка */
.bigimgblocks_item_image {
    flex-shrink: 0;
}

.bigimgblocks_item_image img {
    width: 950px;
    height: 500px;
    object-fit: cover;
    border-radius: 25px;
    display: block;
}

/* Текст справа */
.bigimgblocks_item_text {
    flex: 1;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    color: #333;
}

.bigimgblocks_item_text p {
    margin-bottom: 15px;
}

.bigimgblocks_item_text p:last-child {
    margin-bottom: 0;
}

/* Зеркальный режим: картинка справа, текст слева */
.bigimgblocks_item--mirror .bigimgblocks_item_content {
    flex-direction: row-reverse;
}

/* Адаптив для планшетов */
@media (max-width: 1200px) {
    .bigimgblocks_item_image img {
        width: 100%;
        height: auto;
        max-width: 500px;
        aspect-ratio: 950 / 500;
    }
}

@media (max-width: 992px) {
    .bigimgblocks_item_content,
    .bigimgblocks_item--mirror .bigimgblocks_item_content {
        flex-direction: column;
        gap: 30px;
    }
    
    .bigimgblocks_item_image img {
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }
    
    .bigimgblocks_item_text {
        width: 100%;
        text-align: center;
    }
    
    .bigimgblocks_item_title {
        font-size: 24px;
    }
    
    .bigimgblocks_item_subtitle {
        font-size: 16px;
        padding: 0 15px;
    }
}

@media (max-width: 768px) {
    .bigimgblocks_section {
        padding-top: 40px;
    }
    
    .bigimgblocks_item {
        margin-bottom: 40px;
    }
    
    .bigimgblocks_item_title {
        font-size: 22px;
        margin-bottom: 15px;
    }
    
    .bigimgblocks_item_subtitle {
        font-size: 15px;
        margin-bottom: 20px;
        line-height: 1.3;
    }
    
    .bigimgblocks_item_image img {
        aspect-ratio: 4 / 3;
    }
    
    .bigimgblocks_item_text {
        font-size: 15px;
        line-height: 1.5;
        padding: 0 10px;
    }
}

@media (max-width: 480px) {
    .bigimgblocks_section {
        padding-top: 30px;
    }
    
    .bigimgblocks_item_title {
        font-size: 20px;
    }
    
    .bigimgblocks_item_subtitle {
        font-size: 14px;
    }
    
    .bigimgblocks_item_image img {
        aspect-ratio: 1 / 1;
        border-radius: 18px;
                max-height: 400px;
    }
    
    .bigimgblocks_item_text {
        font-size: 14px;
        padding: 0 5px;
    }
}

/* ===== БЛОК С ФОНОВОЙ КАРТИНКОЙ И ПЛИТКАМИ (UF_BLCKIMGBG) ===== */
.blckimgbg_section {
    position: relative;
    background-color: #ffffff;
    padding: 100px 0;
    overflow: hidden;
}

/* Затемнение 70% */
.blckimgbg_overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    z-index: 1;
}

.blckimgbg_content {
    position: relative;
    z-index: 2;
}

/* Заголовок */
.blckimgbg_title {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 10px;
}

/* Подзаголовок */
.blckimgbg_subtitle {
    max-width: 850px;
    margin: 0 auto 50px auto;
    text-align: start;
    font-size: 18px;
    line-height: 1.2;
    color: #ffffff;
}

/* Сетка плиток - 4 в ряд */
.blckimgbg_grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
}

/* Плитка */
.blckimgbg_item {
    width: 100%;
    max-width: 360px;
    background-color: #f3e7d4;
    padding: 15px 40px 25px 40px;
    box-sizing: border-box;
    border-radius: 15px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.blckimgbg_item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}

/* Заголовок плитки */
.blckimgbg_item_title {
    font-size: 20px;
    font-weight: 700;
    color: #000000;
    text-align: center;
    margin-bottom: 25px;
}

/* Подзаголовок плитки */
.blckimgbg_item_subtitle {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.1;
    color: #000000;
    text-align: start;
}

/* Адаптация для 1400px */
@media (max-width: 1400px) {
    .blckimgbg_grid {
        gap: 25px;
    }
}

/* Адаптация для 1200px - 3 плитки в ряд */
@media (max-width: 1200px) {
    .blckimgbg_item {
        max-width: calc(33.333% - 20px);
    }
}

/* Адаптация для 900px - 2 плитки в ряд */
@media (max-width: 900px) {
    .blckimgbg_item {
        max-width: calc(50% - 15px);
    }
}

/* Адаптация для планшетов */
@media (max-width: 768px) {
    .blckimgbg_section {
        padding: 60px 0;
    }
    
    .blckimgbg_title {
        font-size: 22px;
        margin-bottom: 8px;
    }
    
    .blckimgbg_subtitle {
        font-size: 16px;
        margin-bottom: 35px;
        padding: 0 15px;
    }
    
    .blckimgbg_item {
        max-width: calc(50% - 15px);
        padding: 12px 25px 20px 25px;
    }
    
    .blckimgbg_item_title {
        font-size: 18px;
        margin-bottom: 15px;
    }
    
    .blckimgbg_item_subtitle {
        font-size: 16px;
    }
}

/* Адаптация для мобильных устройств */
@media (max-width: 576px) {
    .blckimgbg_section {
        padding: 50px 0;
    }
    
    .blckimgbg_grid {
        gap: 20px;
    }
    
    .blckimgbg_item {
        max-width: 100%;
        width: 100%;
        padding: 15px 30px 20px 30px;
    }
    
    .blckimgbg_title {
        font-size: 20px;
    }
    
    .blckimgbg_subtitle {
        font-size: 15px;
    }
    
    .blckimgbg_item_title {
        font-size: 18px;
    }
    
    .blckimgbg_item_subtitle {
        font-size: 15px;
    }
}

/* ===== WORK OBJECTS ===== */
.work_objects {
    padding: 50px 0;
}

.work_objects-title {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
}
/* Контейнер элементов */
.work_objects .work_objects_items {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 40px;
    justify-content: flex-start;
}
/* Элемент блока */
.work_objects .work_objects_items .work_objects_item {
    width: calc(25% - 15px); /* ровно 4 элемента в ряд */
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}
/* Картинка */
.work_objects .work_objects_items .work_objects_item .pic {
    height: 350px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    border-radius: 20px;
    background-color: #f5f5f5;
}
/* Затемнение и текст поверх картинки */
.work_objects .work_objects_items .work_objects_item .work_objects_overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    background: rgba(0,0,0,0.6);
    color: #fff;
    padding: 20px 15px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.work_objects .work_objects_items .work_objects_item .work_objects_overlay .name {
    font-weight: 700;
    font-size: 24px;
    text-align: center;
    color: #fff;
    margin-bottom: 8px;
}
.work_objects .work_objects_items .work_objects_item .work_objects_overlay .desc {
    font-size: 13px;
    font-weight: 500;
    text-align: start;
    color: #fff;
    max-width: 280px;
    margin: 0 auto;
}
/* ===== АДАПТИВ ===== */
/* планшеты */
@media (max-width: 1024px) {
    .work_objects .work_objects_items .work_objects_item {
        width: calc(33.333% - 13px);
    }
    .work_objects .work_objects_items .work_objects_item .pic {
        height: 300px;
    }
    .work_objects .work_objects_items .work_objects_item .work_objects_overlay .name {
        font-size: 20px;
    }
}
/* большие телефоны / маленькие планшеты */
@media (max-width: 768px) {
    .work_objects {
        padding: 40px 0;
    }
    .work_objects p.ttl {
        font-size: 28px;
    }
    .work_objects .work_objects_items .work_objects_item {
        width: calc(50% - 10px);
    }
    .work_objects .work_objects_items .work_objects_item .pic {
        height: 280px;
    }
    .work_objects .work_objects_items .work_objects_item .work_objects_overlay .name {
        font-size: 18px;
    }
    .work_objects .work_objects_items .work_objects_item .work_objects_overlay .desc {
        font-size: 12px;
    }
}
/* мобильные */
@media (max-width: 480px) {
    .work_objects {
        padding: 30px 0;
    }
    .work_objects p.ttl {
        font-size: 24px;
    }
    .work_objects .work_objects_items .work_objects_item {
        width: 100%;
    }
    .work_objects .work_objects_items .work_objects_item .pic {
        height: 350px;
    }
    .work_objects .work_objects_items .work_objects_item .work_objects_overlay {
        padding: 15px;
    }
    .work_objects .work_objects_items .work_objects_item .work_objects_overlay .name {
        font-size: 20px;
    }
    .work_objects .work_objects_items .work_objects_item .work_objects_overlay .desc {
        font-size: 13px;
        max-width: 100%;
    }
}


.map_objects {
    padding: 100px 0;
}
.map_objects p.ttl {
    font-size: 20px;
    font-weight: 600;
}

.ventfasad {
    margin: 50px 0;
}
.ventfasad__inner {
    background: #F2F2F2;
    border-radius: 25px;
    padding: 50px 70px;
    max-width: 1100px;
    margin: 0 auto;
}
.ventfasad__title {
    font-size: 32px;
    margin-bottom: 25px;
}
.ventfasad__subtitle {
    font-size: 22px;
    margin-top: 30px;
}
.ventfasad__list {
    margin-top: 15px;
}
.ventfasad__item {
    position: relative;
    padding-left: 35px;
    margin-bottom: 10px;
    line-height: 1.6;
}
/* зеленая галочка */
.ventfasad__item::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 2px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #27AE60;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}
.ventfasad__bottom {
    margin-top: 30px;
    font-size: 18px;
    line-height: 1.6;
}
/* ===== АДАПТИВ ===== */
@media (max-width: 900px) {
    .ventfasad__inner {
        padding: 40px 40px;
    }
}
@media (max-width: 600px) {
    .ventfasad__inner {
        padding: 30px 20px;
        border-radius: 18px;
    }
    .ventfasad__title {
        font-size: 24px;
    }
    .ventfasad__subtitle {
        font-size: 20px;
    }
    .ventfasad__bottom {
        font-size: 16px;
    }
}

/* ===== BIG COLOR CUSTOM BLOCK ===== */
.big-color-custom-block {
    padding: 50px 0;
}

.big-color-custom-title{
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    padding: 50px 0;
}
.big-color-custom-wrapper {
    display: flex;
    gap: 44px;
    align-items: stretch;
}

.big-color-custom-image {
    flex: 0 0 auto;
    width: 50%;
	align-content: center;
}

.big-color-custom-image img {
    width: 100%;
    height: auto;
    max-width: 800px;
    border-radius: 25px;
    object-fit: cover;
    display: block;
}

.big-color-custom-inner {
    flex: 1;
    border: 2px solid #797979;
    border-radius: 38px;
    padding: 0 22px 100px;
}

.big-color-custom-items {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.big-color-custom-item {
    display: flex;
    align-items: stretch;
    border: 2px solid #797979;
    border-radius: 8px;
    overflow: hidden;
}

.big-color-custom-number {
    width: 55px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
    border-right: 2px solid #797979;
    background-color: #DADBF1;
}

.big-color-custom-item-content {
    flex: 1;
    padding: 20px 25px;
}

.big-color-custom-item-title {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 12px;
}

.big-color-custom-item-desc {
    font-size: 18px;
    font-weight: normal;
}

/* Адаптивность */
@media (max-width: 1024px) {
    .big-color-custom-wrapper {
        gap: 30px;
    }
    
    .big-color-custom-inner {
        padding: 80px 20px;
    }
    
    .big-color-custom-item-content {
        padding: 15px 20px;
    }
    
    .big-color-custom-item-title,
    .big-color-custom-item-desc {
        font-size: 16px;
    }
    
    .big-color-custom-number {
        width: 50px;
        font-size: 20px;
    }
}

@media (max-width: 768px) {
    .big-color-custom-block {
        padding: 30px 0;
        margin: 40px 0;
    }
    
    .big-color-custom-wrapper {
        flex-direction: column;
        gap: 25px;
    }
    
    .big-color-custom-image {
        width: 100%;
        text-align: center;
    }
    
    .big-color-custom-image img {
        max-width: 100%;
        height: auto;
    }
    
    .big-color-custom-inner {
        padding: 50px 15px;
    }
    
    .big-color-custom-item {
        flex-direction: column;
    }
    
    .big-color-custom-number {
        width: 100%;
        height: 45px;
        border-right: none;
        border-bottom: 2px solid #797979;
        font-size: 18px;
    }
    
    .big-color-custom-item-content {
        padding: 15px;
    }
    
    .big-color-custom-item-title,
    .big-color-custom-item-desc {
        font-size: 15px;
    }
    
    .big-color-custom-item-title {
        margin-bottom: 8px;
    }
}

@media (max-width: 480px) {
    .big-color-custom-block {
        padding: 25px 0;
        margin: 30px 0;
    }
    
    .big-color-custom-inner {
        padding: 40px 12px;
    }
    
    .big-color-custom-number {
        height: 40px;
        font-size: 16px;
    }
    
    .big-color-custom-item-title,
    .big-color-custom-item-desc {
        font-size: 14px;
    }
    
    .big-color-custom-item-content {
        padding: 12px;
    }
}

/* ===== БЛОК С ПЛИТКАМИ МИНИАТЮР (UF_IMGPLITKMINI) ===== */
.imgplitkmini_section {
    padding: 50px 0;
}

/* Заголовок секции */
.imgplitkmini_section_title {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px;
}

/* Подзаголовок секции */
.imgplitkmini_section_subtitle {
    max-width: 900px;
    margin: 0 auto 40px auto;
    text-align: start;
    font-size: 18px;
    line-height: 1;
    color: #333;
}

/* Сетка плиток - 2 в ряд */
.imgplitkmini_grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    gap: 100px 200px;
}

/* Плитка */
.imgplitkmini_item {
    width: 100%;
    max-width: calc(50% - 100px);
    min-width: 300px;
    display: flex;
    flex-direction: column;
}

/* Обертка для картинки */
.imgplitkmini_item_image-wrapper {
    position: relative;
    margin-bottom: 30px;
}

/* Основная картинка */
.imgplitkmini_item_main-image {
    width: 100%;
    height: auto;
    aspect-ratio: 700 / 375;
    object-fit: cover;
    border-radius: 25px;
    display: block;
}

/* Контейнер миниатюр */
.imgplitkmini_item_thumbnails {
    position: absolute;
    bottom: 5px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    gap: 5px;
    z-index: 2;
}

/* Миниатюра */
.imgplitkmini_item_thumbnail {
    width: 60px;
    height: 45px;
    overflow: hidden;
    cursor: pointer;
    transition: opacity 0.3s ease;
    background: rgba(0,0,0,0.5);
}

.imgplitkmini_item_thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

.imgplitkmini_item_thumbnail:hover img {
    opacity: 1;
}

/* Заголовок плитки */
.imgplitkmini_item_title {
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    color: #333;
    margin-bottom: 30px;
}

/* Описание плитки */
.imgplitkmini_item_subtitle {
    font-size: 18px;
    line-height: 1;
    color: #333;
    text-align: start;
    padding-left: 15px;
}

/* Адаптация для 1200px */
@media (max-width: 1200px) {
    .imgplitkmini_grid {
        gap: 80px 100px;
    }
    
    .imgplitkmini_item {
        max-width: calc(50% - 50px);
    }
}

/* Адаптация для 992px - 1 плитка в ряд */
@media (max-width: 992px) {
    .imgplitkmini_grid {
        gap: 60px;
        flex-direction: column;
        align-items: center;
    }
    
    .imgplitkmini_item {
        max-width: 100%;
        width: 100%;
    }
    
    .imgplitkmini_section_title {
        font-size: 24px;
    }
    
    .imgplitkmini_section_subtitle {
        font-size: 16px;
        padding: 0 15px;
    }
}

/* Адаптация для 768px */
@media (max-width: 768px) {
    .imgplitkmini_section {
        padding: 40px 0;
    }
    
    .imgplitkmini_section_title {
        font-size: 22px;
        margin-bottom: 15px;
    }
    
    .imgplitkmini_section_subtitle {
        font-size: 15px;
        margin-bottom: 30px;
    }
    
    .imgplitkmini_item_title {
        font-size: 18px;
        margin-bottom: 20px;
    }
    
    .imgplitkmini_item_subtitle {
        font-size: 16px;
        padding-left: 10px;
    }
    
    .imgplitkmini_item_thumbnail {
        width: 50px;
        height: 38px;
    }
}

/* Адаптация для 480px */
@media (max-width: 480px) {
    .imgplitkmini_item_thumbnail {
        width: 40px;
        height: 30px;
    }
    
    .imgplitkmini_item_title {
        font-size: 16px;
    }
    
    .imgplitkmini_item_subtitle {
        font-size: 14px;
    }
}

.timeline {
    padding: 50px 0; 
}

/* Подзаголовок */
.timeline_subtitle {
    max-width: 600px;
    margin: 0 auto 20px auto;
    font-size: 18px;
    line-height: 1;
    text-align: start;
    color: #555;
}

.timeline_wrapper {
    position: relative;
    margin-top: 60px;
}
.timeline_wrapper::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    width: 4px;
    height: 100%;
    background: #FF6600;
    transform: translateX(-50%);
}
.timeline_item {
    position: relative;
    width: 50%;
    padding: 0px 60px;
}
.timeline_item::before {
    content: "";
    position: absolute;
    top: 60px;
    width: 16px;
    height: 16px;
    background: #FF6600;
    border-radius: 50%;
    z-index: 2;
}
.timeline_item::after {
    content: "";
    position: absolute;
    top: 67px;
    width: 60px;
    height: 4px;
    background: #FF6600;
}
.timeline_item.left {
    text-align: right;
}
.timeline_item.left::before {
    right: -8px;
}
.timeline_item.left::after {
    right: 0;
}
.timeline_item.right {
    margin-left: 50%;
}
.timeline_item.right::before {
    left: -8px;
}
.timeline_item.right::after {
    left: 0;
}
.timeline_content {
    background: #fff;
    padding: 10px 30px;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}
.stage_title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #333;
}
.stage_num {
    color: #FF6600;
    margin-right: 8px;
}
.stage_text {
    font-size: 16px;
    line-height: 1.4;
    color: #666;
}

/* Нижний текстовый блок */
.timeline_bottom_text {
    max-width: 850px;
    margin: 35px auto 0 auto;
    background-color: #F4E3BD;
    border-left: 5px solid #FF6600;
    border-radius: 0 25px 25px 0;
    padding: 20px 30px;
    font-size: 16px;
    line-height: 1.2;
    color: #333;
    box-sizing: border-box;
}

/* Адаптив для планшетов */
@media (max-width: 992px) {
    .timeline_wrapper::before {
        left: 20px;
    }
    .timeline_item {
        width: 100%;
        padding-left: 50px;
        padding-right: 0;
        margin-left: 0 !important;
        text-align: left !important;
    }
    .timeline_item::before {
        left: 10px !important;
        right: auto !important;
    }
    .timeline_item::after {
        left: 26px !important;
        right: auto !important;
        width: 40px;
    }
    .timeline_item.left::before,
    .timeline_item.right::before {
        left: 10px;
        right: auto;
    }
    .timeline_item.left::after,
    .timeline_item.right::after {
        left: 26px;
        right: auto;
    }
    .timeline_content {
        padding: 15px 20px;
    }
}

/* Адаптив для подзаголовка и текстового блока */
@media (max-width: 768px) {
    .timeline_subtitle {
        padding: 0 15px;
    }
    
    .timeline_bottom_text {
        margin: 35px 15px 0 15px;
        padding: 15px 20px;
    }
    
    .stage_title {
        font-size: 18px;
    }
    
    .stage_text {
        font-size: 14px;
    }
}

/* Адаптив для мобильных */
@media (max-width: 480px) {
    .timeline {
        padding: 30px 0;
    }
    
    .timeline_wrapper {
        margin-top: 40px;
    }
    
    .timeline_item {
        padding-left: 40px;
    }
    
    .timeline_item::before {
        top: 50px;
        width: 12px;
        height: 12px;
    }
    
    .timeline_item::after {
        top: 55px;
        width: 25px;
    }
    
    .timeline_content {
        padding: 12px 15px;
    }
    
    .stage_title {
        font-size: 16px;
    }
    
    .stage_text {
        font-size: 13px;
    }
    
    .timeline_bottom_text {
        padding: 12px 18px;
        font-size: 14px;
    }
}

/* ===== BIG CONTENT BLOCK ===== */
.services_bigcontent {
    padding: 50px 0;
}

.services_bigcontent .container {
    position: relative;
}

.bigcontent_grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
    margin: 0 0 40px;
}

.bigcontent_tile {
    text-align: center;
    flex: 1 1 280px;
    min-width: 0;
    max-width: 350px;
    box-sizing: border-box;
}

.services_bigcontent .tile_img {
    width: 100%;
    aspect-ratio: 4 / 3;
    margin-bottom: 15px;
    overflow: hidden;
    border-radius: 18px;
    background: #f3f3f3;
}

.services_bigcontent .tile_img img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
}

.services_bigcontent .tile_title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}

.services_bigcontent .tile_desc {
    font-size: 16px;
    line-height: 1.4;
    color: #333;
    text-align: start;
    font-weight: 400;
}

.bigcontent_quote_wrap {
    position: relative;
    z-index: 1;
    clear: both;
    max-width: 850px;
    margin: 0 auto;
    font-size: 18px;
    font-weight: 500;
}

/* Не ломаем картинки внутри bigcontent глобальным height/max-width */
.services_desc_block img {
    max-width: none;
    height: 100%;
}

/* tablet */
@media (max-width: 1024px) {
    .bigcontent_grid {
        margin-bottom: 36px;
        gap: 24px;
    }

    .bigcontent_tile {
        flex: 1 1 calc(50% - 12px);
        max-width: calc(50% - 12px);
    }

    .bigcontent_quote_wrap {
        margin: 0 20px;
    }

    .services_desc_quote {
        font-size: 16px;
        padding: 20px;
    }
}

/* mobile */
@media (max-width: 768px) {
    .services_bigcontent {
        padding: 30px 0;
    }

    .bigcontent_grid {
        margin-bottom: 28px;
        gap: 28px;
    }

    .bigcontent_tile {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .services_bigcontent .tile_title {
        font-size: 16px;
    }

    .services_bigcontent .tile_desc {
        font-size: 14px;
        line-height: 1.4;
        padding: 0 10px;
    }

    .bigcontent_quote_wrap {
        margin: 0 15px;
    }

    .services_desc_quote {
        font-size: 15px;
        padding: 18px;
        line-height: 1.5;
    }
}

/* mobile small */
@media (max-width: 480px) {
    .services_bigcontent {
        padding: 25px 0;
    }

    .bigcontent_grid {
        gap: 24px;
        margin-bottom: 24px;
    }

    .services_bigcontent .tile_title {
        font-size: 15px;
    }

    .services_bigcontent .tile_desc {
        font-size: 13px;
    }

    .services_desc_quote {
        font-size: 14px;
        padding: 15px;
    }
}

/* ===== Таблица цен раздела (UF_SEC_PRICING_TABLE) ===== */
.pricing-table-section {
    margin: 50px 0;
}
.pricing-table-section__inner {
    margin: 0 auto;
    padding: 0 200px;
    box-sizing: border-box;
}
.pricing-table-section__title {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    margin: 0 auto 15px;
    max-width: 800px;
    color: #333;
}
.pricing-table-section__subtitle {
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
    color: #333;
}
.pricing-table-section__scroll {
    max-width: 100%;
    overflow-x: auto;
}
.pricing-table-section__table {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
}
.pricing-table-section__table th,
.pricing-table-section__table td {
    border: 1px solid #e0e0e0;
    padding: 12px 15px;
    vertical-align: top;
}
.pricing-table-section__table th {
    background-color: #f5f5f5;
    font-weight: 600;
    font-size: 16px;
    color: #333;
    text-align: left;
}
.pricing-table-section__table td {
    font-size: 16px;
    color: #555;
}
.pricing-table-section__table th:last-child,
.pricing-table-section__table td:last-child {
    width: 30%;
    min-width: 240px;
}
.pricing-table-section__table tbody tr:nth-child(even):not(.pricing-table-section__separator):not(.pricing-table-section__header) {
    background-color: #fafafa;
}
.pricing-table-section__separator td {
    background-color: #e8e8e8;
    padding: 8px 15px;
    border-color: #e0e0e0;
}
.pricing-table-section__header td {
    background-color: #e0e0e0;
    padding: 14px 15px;
    border-color: #d0d0d0;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.35;
    color: #222;
}
.pricing-table-section__note {
    margin-top: 20px;
    font-size: 16px;
    font-style: italic;
    color: #555;
}
.pricing-table-section__note .pricing-note__accent {
    color: #ff6600;
    font-style: italic;
}

@media (max-width: 1200px) {
    .pricing-table-section__inner {
        padding: 0 20px;
    }
}

@media (max-width: 768px) {
    .pricing-table-section__title {
        font-size: 24px;
    }
    .pricing-table-section__table th,
    .pricing-table-section__table td {
        padding: 8px 10px;
        font-size: 14px;
    }
    .pricing-table-section__table th:last-child,
    .pricing-table-section__table td:last-child {
        min-width: 160px;
    }
    .pricing-table-section__header td {
        padding: 10px;
        font-size: 16px;
    }
}

/* ===== FINAL: единая типографика разделов (перебивает локальные стили блоков) ===== */
.title_36 {
    font-family: 'Gilroy', sans-serif !important;
    font-size: 36px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    color: #333333 !important;
    margin: 0 0 40px !important;
}

.staff_design .title_36 {
    margin-bottom: 0 !important;
}

.title_36:has(+ .timeline_subtitle),
.title_36:has(+ .big_section_subtitle),
.title_36:has(+ .bigcontent_subtitle),
.title_36:has(+ .full_description_subtitle),
.title_36:has(+ .imgplitkmini_section_subtitle),
.title_36:has(+ .blckimgbg_subtitle),
.title_36:has(+ .ventfasad__subtitle),
.title_36:has(+ .pricing-table-section__subtitle),
.title_36:has(+ .equipment_block_subtitle) {
    margin-bottom: 15px !important;
}

.big_section_title,
.bigcontent_title,
.full_description_title,
.imgplitkmini_section_title,
.pricing-table-section__title,
.equipment_block_title,
.ventfasad__title,
.advantages_title,
.preview_title,
.services_desc_title,
.biginfo_title {
    font-family: 'Gilroy', sans-serif !important;
    font-size: 36px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    color: #333 !important;
    margin: 0 0 40px !important;
}

.blckimgbg_title {
    font-family: 'Gilroy', sans-serif !important;
    font-size: 36px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    margin: 0 0 40px !important;
}

.big_section_title:has(+ .big_section_subtitle),
.bigcontent_title:has(+ .bigcontent_subtitle),
.full_description_title:has(+ .full_description_subtitle),
.imgplitkmini_section_title:has(+ .imgplitkmini_section_subtitle),
.pricing-table-section__title:has(+ .pricing-table-section__subtitle),
.equipment_block_title:has(+ .equipment_block_subtitle),
.ventfasad__title:has(+ .ventfasad__subtitle),
.blckimgbg_title:has(+ .blckimgbg_subtitle) {
    margin-bottom: 15px !important;
}

.timeline_subtitle,
.big_section_subtitle,
.bigcontent_subtitle,
.full_description_subtitle,
.imgplitkmini_section_subtitle,
.pricing-table-section__subtitle,
.equipment_block_subtitle,
.ventfasad__subtitle {
    font-family: 'Gilroy', sans-serif !important;
    max-width: 1000px !important;
    margin: 0 auto 40px !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
    color: #555 !important;
}

.blckimgbg_subtitle {
    font-family: 'Gilroy', sans-serif !important;
    max-width: 1000px !important;
    margin: 0 auto 40px !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
}

@media (max-width: 768px) {
    .title_36,
    .big_section_title,
    .bigcontent_title,
    .full_description_title,
    .imgplitkmini_section_title,
    .pricing-table-section__title,
    .equipment_block_title,
    .ventfasad__title,
    .advantages_title,
    .preview_title,
    .services_desc_title,
    .biginfo_title,
    .blckimgbg_title {
        font-size: 28px !important;
    }
}

/* =========================================================
   MOBILE/TABLET POLISH — разделы услуг
   Единые боковые отступы 25px, баннер, заголовки, блоки
   ========================================================= */

@media (max-width: 992px) {
    .header_slider3 .slide_content {
        padding-top: 50px !important;
        padding-left: 25px !important;
        padding-right: 25px !important;
        box-sizing: border-box;
    }
}

@media (max-width: 768px) {
    /* Контейнеры секции — единый ритм 25px (шапку не трогаем) */
    .services_desc_block .container,
    .services_preview_block .container,
    .big_section_block .container,
    .full_description_section .container,
    .faq_design .container,
    .calc_block .container,
    .services_bigcontent .container,
    .pricing-table-section .container,
    .equipment_block .container,
    .ventfasad .container,
    .content-box .container,
    .slider_block .container,
    .services_current_section .container,
    .bigimgblocks_section .container,
    section.borderbx .container {
        padding-left: 25px !important;
        padding-right: 25px !important;
        box-sizing: border-box;
    }

    /* Баннер: контент по центру, без смещения влево */
    .header_slider3 .slide_content {
        padding-top: 36px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        max-width: 100% !important;
        width: 100% !important;
        margin: 0 auto !important;
        align-items: center !important;
        text-align: center !important;
        box-sizing: border-box;
    }
    .header_slider3 .slide_content .ttl {
        font-size: 24px !important;
        text-align: center !important;
    }
    .header_slider3 .slide_content .subttl {
        font-size: 16px !important;
        text-align: center !important;
    }
    .header_slider3 .slide_content .btns {
        justify-content: center !important;
        align-items: center !important;
    }

    /* Описание раздела */
    .services_desc_block {
        padding: 36px 0 !important;
    }
    .services_desc_wrapper {
        gap: 24px !important;
        padding: 0 !important;
    }
    .services_desc_title {
        margin-bottom: 16px !important;
        text-align: left !important;
        font-size: 26px !important;
    }
    .services_desc_text {
        font-size: 16px !important;
        margin-bottom: 20px !important;
    }
    .services_desc_quote {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Заголовки секций — спокойные отступы */
    .title_36,
    .big_section_title,
    .bigcontent_title,
    .full_description_title,
    .imgplitkmini_section_title,
    .pricing-table-section__title,
    .equipment_block_title,
    .ventfasad__title,
    .advantages_title,
    .preview_title,
    .services_desc_title,
    .biginfo_title,
    .blckimgbg_title {
        font-size: 26px !important;
        margin: 0 0 20px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .title_36:has(+ .timeline_subtitle),
    .title_36:has(+ .big_section_subtitle),
    .title_36:has(+ .bigcontent_subtitle),
    .title_36:has(+ .full_description_subtitle),
    .big_section_title:has(+ .big_section_subtitle),
    .bigcontent_title:has(+ .bigcontent_subtitle),
    .full_description_title:has(+ .full_description_subtitle) {
        margin-bottom: 12px !important;
    }
    .timeline_subtitle,
    .big_section_subtitle,
    .bigcontent_subtitle,
    .full_description_subtitle,
    .imgplitkmini_section_subtitle,
    .pricing-table-section__subtitle,
    .equipment_block_subtitle,
    .ventfasad__subtitle,
    .blckimgbg_subtitle {
        font-size: 16px !important;
        margin: 0 auto 28px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100% !important;
    }

    /* Контентные сетки без огромных боковых padding */
    .full_description_content_grid,
    .full_description_content_grid--six-items {
        padding-left: 0 !important;
        padding-right: 0 !important;
        gap: 16px !important;
    }
    .pricing-table-section__inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Карточки услуг */
    .service_card_parent_services {
        padding: 40px 12px 0 12px !important;
        gap: 12px !important;
    }
    .services_current_section {
        padding-top: 28px !important;
        padding-bottom: 20px !important;
    }
    .section_header_current {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: flex !important;
        -webkit-flex-direction: column !important;
        flex-direction: column !important;
        -webkit-align-items: center !important;
        align-items: center !important;
        margin-bottom: 16px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        -webkit-box-sizing: border-box !important;
    }
    .section_header_current .h2 {
        font-size: 24px !important;
        margin-bottom: 8px !important;
        width: 100% !important;
        text-align: center !important;
    }
    .section_header_current .h3 {
        font-size: 20px !important;
        width: 100% !important;
        text-align: center !important;
    }
    .section_header_current .desc {
        display: block !important;
        font-size: 14px !important;
        line-height: 1.45 !important;
        max-width: 100% !important;
        width: 100% !important;
        margin: 0 auto !important;
        text-align: center !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        -webkit-box-sizing: border-box !important;
        overflow-wrap: break-word !important;
        word-wrap: break-word !important;
    }

    /* FAQ — без двойного padding */
    .faq_design .container {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
    .faq_design .faq-item,
    .faq_design .accordion,
    .faq_design .card {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Big content / прочие блоки */
    .services_bigcontent,
    .big_section_block,
    .full_description_section {
        overflow-x: hidden;
    }
    .bigcontent_quote,
    .services_desc_quote {
        box-sizing: border-box;
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .header_slider3 .back {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    }
    .header_slider3 .slide_content {
        padding-top: 28px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .header_slider3 .slide_content .ttl {
        font-size: 22px !important;
    }
    .title_36,
    .big_section_title,
    .bigcontent_title,
    .full_description_title,
    .services_desc_title,
    .preview_title {
        font-size: 24px !important;
    }
}

/* Safari: баннер раздела — явная min-height вместо height:100% у flex-ребёнка */
@supports (-webkit-touch-callout: none) {
    .header_slider3 .back {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
    }
    .header_slider3 .slide_content {
        height: auto !important;
        -webkit-flex: 1 1 auto;
        flex: 1 1 auto;
        min-height: 0;
    }
    .services_desc_img img {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
        -webkit-object-fit: cover;
        object-fit: cover;
    }
}

/* Tariff footer: button (+ sroki) pinned to bottom */
.calc_block .price_block .price_column {
    justify-content: flex-start;
}
.calc_block .price_block .price_column .baton {
    margin-top: auto;
    padding-bottom: 28px;
}
.calc_block .price_block .price_column:has(.tariff-sroki) .baton {
    padding-bottom: 10px;
}
.calc_block .price_block .price_column .tariff-sroki {
    margin: 0;
    padding: 0 25px 28px;
    display: block;
    text-align: center;
    box-sizing: border-box;
    flex-shrink: 0;
}
.calc_block .price_block .price_column .tariff-sroki__label,
.calc_block .price_block .price_column .tariff-sroki__value {
    display: inline;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 500;
}
.calc_block .price_block .price_column .tariff-sroki__label {
    color: #b89c5f;
}
.calc_block .price_block .price_column .tariff-sroki__value {
    color: #fff;
}
@media (max-width: 1024px) {
    .calc_block .price_block .price_column .baton {
        margin-top: auto;
    }
    .calc_block .price_block .price_column:has(.tariff-sroki) .baton {
        padding-bottom: 10px;
    }
}
@media (max-width: 767px) {
    .calc_block .price_block .price_column .baton {
        margin-top: auto;
        padding-bottom: 24px;
    }
    .calc_block .price_block .price_column:has(.tariff-sroki) .baton {
        padding-bottom: 8px;
    }
    .calc_block .price_block .price_column .tariff-sroki {
        padding: 0 15px 24px;
    }
    .calc_block .price_block .price_column .tariff-sroki__label,
    .calc_block .price_block .price_column .tariff-sroki__value {
        font-size: 14px;
    }
}
/* Cap services section banner to one viewport (not full page) */
section.slider_block {
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100vh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
}
section.slider_block .header_slider3 {
    height: 100% !important;
    max-height: 100% !important;
}


/* section pricing title center + biginfo_title cleanup */
.pricing-table-section .pricing-table-section__title {
    display: block !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 800px;
}

.biginfo_section .biginfo_title_wrap {
    margin-bottom: 20px;
    text-align: center;
}

.biginfo_section .biginfo_title {
    display: block !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    font-family: 'Gilroy', sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    color: #333 !important;
    text-align: center !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .pricing-table-section .pricing-table-section__title {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .biginfo_section .biginfo_title {
        font-size: 20px !important;
        padding: 0 !important;
        background: transparent !important;
        border: none !important;
        margin: 0 !important;
    }
}

/* servs_block top gap when current section hidden */
.servs_block--spaced-top {
    padding-top: 50px;
}

/* End */


/* Start:/bitrix/templates/gvozdevsoft_stroygs_s1/components/bitrix/catalog.section/services/style.css?17798041444564*/
.catalog_section {
    margin-bottom: 40px;
}

/* Контейнер сетки */
.catalog_items_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 35px;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Карточка */
.catalog_item {
    flex: 0 1 calc(33.333% - 35px);
    min-width: calc(33.333% - 35px);
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
}

/* Обертка для изображения (контролирует соотношение сторон) */
.catalog_item_image_wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 110%; /* Соотношение высоты к ширине (550/500 = 1.1 = 110%) */
    overflow: hidden;
    border-radius: 25px;
}

/* Само изображение */
.catalog_item_image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
    border-radius: 25px;
}

/* Затемнение на картинке */
.catalog_item_image .image_overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    z-index: 1;
    border-radius: 25px;
}

.catalog_item_image:hover .image_overlay {
    background: rgba(0, 0, 0, 0);
}

.catalog_item_image .cloak {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    z-index: 2;
}

/* Контент под картинкой */
.catalog_item_content {
    padding: 20px 15px;
    text-align: center;
}

.catalog_item_name {
    margin-bottom: 13px;
}

.catalog_item_name a {
    font-size: 25px;
    font-weight: 600;
    color: #333;
    text-decoration: none;
    transition: all 0.3s ease;
    word-break: break-word;
}

.catalog_item_name a:hover {
    color: #b89c5f;
}

.catalog_item_description {
    font-size: 18px;
    color: #000;
    max-width: 550px;
    margin: 0 auto;
    text-align: start;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

/* Стили для подраздела 3-го уровня */
.catalog_item--section .catalog_item_name a {
    font-size: 25px;
}

.catalog_item_subtitle {
    font-size: 14px;
    color: #b89c5f;
    margin-top: 8px;
    font-weight: 500;
}

.catalog_item--section .catalog_item_image_wrapper .catalog_item_image {
    filter: brightness(0.95);
}

.catalog_item--section:hover .catalog_item_image_wrapper .catalog_item_image {
    filter: brightness(1);
}

/* ========== АДАПТАЦИЯ ========== */

/* Планшеты (768px - 1024px) */
@media (max-width: 1024px) {
    .catalog_item {
        flex: 0 1 calc(50% - 35px);
        min-width: calc(50% - 35px);
    }
    
    .catalog_item_name a {
        font-size: 22px;
    }
    
    .catalog_item_description {
        font-size: 16px;
        -webkit-line-clamp: 5;
    }
    
    .catalog_item--section .catalog_item_name a {
        font-size: 22px;
    }
}

/* Мобильные устройства (до 768px) */
@media (max-width: 768px) {
    .catalog_items_container {
        gap: 40px;
        padding: 0 20px;
    }
    
    .catalog_item {
        flex: 0 1 100%;
        min-width: 100%;
        max-width: 100%;
    }
    
    /* Немного уменьшаем соотношение сторон на мобилках для более компактного вида */
    .catalog_item_image_wrapper {
        padding-bottom: 100%; /* Становится квадратной на мобилках */
    }
    
    .catalog_item_name a {
        font-size: 20px;
    }
    
    .catalog_item_description {
        font-size: 14px;
        -webkit-line-clamp: 4;
    }
    
    .catalog_item--section .catalog_item_name a {
        font-size: 20px;
    }
}

/* Очень маленькие телефоны (до 480px) */
@media (max-width: 480px) {
    .catalog_items_container {
        padding: 0 15px;
        gap: 30px;
    }
    
    .catalog_item_image_wrapper {
        padding-bottom: 90%; /* Еще немного уменьшаем высоту */
    }
    
    .catalog_item_content {
        padding: 15px 10px;
    }
    
    .catalog_item_name a {
        font-size: 18px;
    }
    
    .catalog_item_description {
        font-size: 13px;
        -webkit-line-clamp: 3;
    }
}
/* End */


/* Start:/bitrix/templates/gvozdevsoft_stroygs_s1/components/bitrix/news.list/primery_rabot/style.css?17848171239002*/
.primery_rabot {
    padding: 50px 0;
    position: relative;
    overflow: visible;
}

.primery_rabot_slider_wrapper {
    position: relative;
    overflow: visible;
    padding: 0;
}

.primery_rabot_slider_viewport {
    position: relative;
    overflow: visible;
}

.primery_slider {
    overflow: visible;
    padding: 0;
    margin: 0;
    position: relative;
}

.primery_slider .swiper-wrapper {
    align-items: stretch;
}

.primery_slider .swiper-slide {
    height: auto;
    padding: 12px 0 12px 5px;
    box-sizing: border-box;
}

.primery_item {
    width: 100%;
    height: auto;
    border-radius: 25px;
    overflow: hidden;
    transition: 0.3s;
    background: #fff;
    box-shadow: 5px 5px 15px 0 #FF6600;
    display: flex;
    flex-direction: column;
}

.primery_item:hover {
    box-shadow: 5px 5px 15px 0 #00CC00;
    border-color: #000;
}

.primery_link {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

.primery_link:hover {
    text-decoration: none;
}

.primery_img {
    height: 300px;
    background-size: cover;
    background-position: center;
    position: relative;
    flex-shrink: 0;
}

.primery_district {
    background: rgba(0, 0, 0, 0.72);
        color: #fff;
        padding: 8px 14px;
        border-radius: 12px;
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
        text-shadow: none;
    position: absolute;
    right: 15px;
    bottom: 15px;
    color: #fff;
	font-size: 24px;
    font-weight: 500;
}

.primery_bottom {
    padding: 20px 18px 22px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.primery_title {
    font-size: 18px;
    font-weight: 700;
    color: #1f1f1f;
    text-align: start;
    padding-left: 10px;
    margin-bottom: 18px;
}

.primery_specs {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: auto;
}

.spec {
    text-align: center;
    flex: 1;
    min-width: 70px;
}

.spec img {
    height: 30px;
    margin-bottom: 6px;
}

.spec_val {
    font-weight: 600;
    font-size: 15px;
}

.spec_name {
    font-size: 13px;
    opacity: 0.7;
}

/* Стрелки Swiper — синие, без фона, внутри контейнера */
.primery_rabot_slider_wrapper .swiper-button-prev,
.primery_rabot_slider_wrapper .swiper-button-next,
.primery_rabot_slider_viewport .swiper-button-prev,
.primery_rabot_slider_viewport .swiper-button-next,
.primery_slider .swiper-button-prev,
.primery_slider .swiper-button-next {
    position: absolute;
    color: var(--swiper-theme-color, #007aff);
    background: rgba(255, 255, 255, 0.92);
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: 2px solid rgba(0, 122, 255, 0.7);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
    transition: opacity 0.3s, color 0.3s, transform 0.3s, background-color 0.3s, box-shadow 0.3s;
    opacity: 0.95;
    margin-top: 0 !important;
    z-index: 10;
}

.primery_rabot_slider_wrapper .swiper-button-prev,
.primery_rabot_slider_viewport .swiper-button-prev,
.primery_slider .swiper-button-prev {
    left: 8px;
    right: auto;
}

.primery_rabot_slider_wrapper .swiper-button-next,
.primery_rabot_slider_viewport .swiper-button-next,
.primery_slider .swiper-button-next {
    right: 8px;
    left: auto;
}

.primery_rabot_slider_wrapper .swiper-button-prev:after,
.primery_rabot_slider_wrapper .swiper-button-next:after,
.primery_rabot_slider_viewport .swiper-button-prev:after,
.primery_rabot_slider_viewport .swiper-button-next:after,
.primery_slider .swiper-button-prev:after,
.primery_slider .swiper-button-next:after {
    font-size: 26px;
    font-weight: bold;
    text-shadow: 0 0 1px rgba(255, 255, 255, 0.9);
}

.primery_rabot_slider_wrapper .swiper-button-prev:hover,
.primery_rabot_slider_wrapper .swiper-button-next:hover,
.primery_rabot_slider_viewport .swiper-button-prev:hover,
.primery_rabot_slider_viewport .swiper-button-next:hover,
.primery_slider .swiper-button-prev:hover,
.primery_slider .swiper-button-next:hover {
    color: var(--swiper-theme-color, #007aff);
    opacity: 1;
    background: #fff;
    transform: translateY(-50%) scale(1.05);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}

.swiper-pagination-bullet {
    background: #ff6600;
    opacity: 0.5;
}

.swiper-pagination-bullet-active {
    background: #ff6600;
    opacity: 1;
}

/* Стили для фильтра */
.primery_rabot_filter {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 15px;
    justify-content: flex-start;
    align-items: center;
	padding-left: 50px;
	padding-top: 30px;
}

.filter_item {
    font-size: 18px;
    cursor: pointer;
    color: #666;
    transition: 0.3s;
    position: relative;
    padding-bottom: 5px;
}

.filter_item:hover {
    color: #ff6600;
}

.filter_item.active {
    color: #ff6600;
    font-weight: 600;
}

.filter_item.active::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #ff6600;
}

/* Стиль для сообщения об отсутствии результатов */
.no-results-message {
    width: 100%;
    text-align: center;
    padding: 40px;
}

.no-results-message .alert {
    font-size: 16px;
    color: #666;
}

/* Адаптивность фильтра */
@media (max-width: 768px) {
    .primery_rabot_filter {
        gap: 20px;
        margin-bottom: 30px;
        overflow-x: auto;
        padding-bottom: 10px;
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    
    .filter_item {
        font-size: 16px;
        white-space: nowrap;
    }
}

@media (max-width: 480px) {
    .primery_rabot_filter {
        gap: 15px;
    }
    
    .filter_item {
        font-size: 14px;
    }
}

/* Адаптивность */
@media (max-width: 1280px) {
    .primery_rabot_slider_wrapper {
        padding: 0;
    }
}

@media (max-width: 1024px) {
    .primery_rabot_slider_wrapper {
        padding: 0;
    }
    
    .primery_img {
        height: 260px;
    }
    
    .primery_rabot_slider_wrapper .swiper-button-prev:after,
    .primery_rabot_slider_wrapper .swiper-button-next:after,
    .primery_rabot_slider_viewport .swiper-button-prev:after,
    .primery_rabot_slider_viewport .swiper-button-next:after,
    .primery_slider .swiper-button-prev:after,
    .primery_slider .swiper-button-next:after {
        font-size: 28px;
    }
}

@media (max-width: 768px) {
    .primery_rabot {
        padding: 60px 0;
    }
    
    .primery_rabot_slider_wrapper {
        padding: 0;
    }
    
    .primery_img {
        height: 240px;
    }
    
    .primery_rabot_slider_wrapper .swiper-button-prev,
    .primery_rabot_slider_viewport .swiper-button-prev,
    .primery_slider .swiper-button-prev {
        left: 4px;
    }
    
    .primery_rabot_slider_wrapper .swiper-button-next,
    .primery_rabot_slider_viewport .swiper-button-next,
    .primery_slider .swiper-button-next {
        right: 4px;
    }
    
    .primery_rabot_slider_wrapper .swiper-button-prev:after,
    .primery_rabot_slider_wrapper .swiper-button-next:after,
    .primery_rabot_slider_viewport .swiper-button-prev:after,
    .primery_rabot_slider_viewport .swiper-button-next:after,
    .primery_slider .swiper-button-prev:after,
    .primery_slider .swiper-button-next:after {
        font-size: 24px;
    }
}

@media (max-width: 480px) {
    .primery_rabot_slider_wrapper {
        padding: 0 10px;
		max-height: 400px;
    }
    .primery_all_projects_link{
		display: none;
	}
    .primery_img {
        height: 200px;
    }
    
    .primery_title {
    font-size: 18px;
    font-weight: 700;
    color: #1f1f1f;
    text-align: start;
    padding-left: 10px;
    }
    
    .primery_rabot_slider_wrapper .swiper-button-prev,
    .primery_rabot_slider_wrapper .swiper-button-next,
    .primery_rabot_slider_viewport .swiper-button-prev,
    .primery_rabot_slider_viewport .swiper-button-next,
    .primery_slider .swiper-button-prev,
    .primery_slider .swiper-button-next {
        display: none;
    }
}

/* Кнопка "Все проекты" */
.primery_all_projects_link {
    margin-top: 30px;
    text-align: left;
}

.all-projects-btn {
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    color: #ff6600;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    padding-bottom: 5px;
}

.all-projects-btn::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #ff6600;
    transition: width 0.3s ease;
}

.all-projects-btn:hover {
    color: #ff6600;
}

.all-projects-btn:hover::after {
    width: 100%;
}

/* Адаптация для мобильных */
@media (max-width: 768px) {
    .primery_all_projects_link {
        margin-top: 25px;
        padding: 0 15px;
    }
    
    .all-projects-btn {
        font-size: 14px;
    }
}
/* End */
/* /bitrix/templates/gvozdevsoft_stroygs_s1/components/bitrix/catalog.section.list/services_section/style.css?1785242525108064 */
/* /bitrix/templates/gvozdevsoft_stroygs_s1/components/bitrix/catalog.section/services/style.css?17798041444564 */
/* /bitrix/templates/gvozdevsoft_stroygs_s1/components/bitrix/news.list/primery_rabot/style.css?17848171239002 */
