

@font-face {
    font-family: 'Eurostile Regular';
    src: url('../fonts/Eurostile-Reg.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Medium';
    src: url('../fonts/Eurostile-Med.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Bold';
    src: url('../fonts/Eurostile-Bol.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Round Regular';
    src: url('../fonts/EurostileRoundRegular.ttf') format('truetype');
}

@font-face {
    font-family: 'Eurostile Extended Regular';
    src: url('../fonts/EurostileExt-Reg.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Extended Medium';
    src: url('../fonts/EurostileExt-Med.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Extended Black';
    src: url('../fonts/EurostileExt-Bla.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Round Extended Medium';
    src: url('../fonts/eurostile-round-extended-medium.otf') format('opentype');
}

@font-face {
    font-family: 'Eurostile Ext';
    src: url('../fonts/EurostileExt-Reg.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    max-width: 100%;

}

html, body {
    overflow-x: hidden;
    max-width: 100%;
}

html{
    margin-top: 0;
}

body, .be-wrapper, .mcb-wrap, .column, .widget, p, a, span, li, .textwidget {
    font-family: 'Eurostile Round Regular', sans-serif;
    font-weight: 400;
    font-size: 2vh;
}

h1, h2, h3, h4, h5, h6, .heading, .title {
    font-family: 'Eurostile Round Regular';
    font-weight: 700;
    color: #2C2C2C;
}

.super-heading, .hero-title, .main-heading {
    font-family: 'Eurostile Extended', sans-serif;
    font-weight: 900;
}

.accent-text, .subheading, .highlight {
    font-family: 'Eurostile Round Extended', sans-serif;
    font-weight: 500;
}

.main-container, .main-container--katalog{
    margin-left: 5vw;
    margin-right: 5vw;
    display: block;
    padding: 40px 20px;
    padding-bottom: 0px;
}

.header-logo-map{
    display: flex;
    justify-content: space-between; /* Раздвигает элементы по краям */
    align-items: center; /* Выравнивает по вертикали по центру */
}

.main-logo{
    max-width: 30vw;
    width: 100%;
    margin-top: 4vh;
    margin-bottom: 4vh;
}

.map-button {
    color: #c7c7c7;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
    font-size: 1.5em;
}

.under-logo {
    position: relative;
    height: 60px;
    width: 100%;
    z-index: 2;
}

.rect-1{
    position: absolute;
    overflow: visible;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.rect-1-mobile, .rect-1-tablet{
    display: none;
}

.menu-frame {
    position: absolute;
    width: 100%;
    height: 100%;
}

.menu-frame-mobile, .menu-frame-tablet{
    display: none;
}

.menu-wrapper{
    position: relative;
    height: 60px;
    width: 100%;
    margin-left: 20vw;
}

.menu-header {
    position: relative;
    list-style: none;
    display: flex;
    align-items: center; /* Выравнивание по центру по вертикали */
    gap: 2.5vw;
    padding: 0; /* Убираем padding, чтобы не выходил за пределы */
    margin: 0; /* Убираем margin-left */
    margin-left: 6vw; /* Оставляем только если нужен отступ */
    color: #333;
    z-index: 1;
    height: 100%;
}

.menu-header li {
    cursor: pointer;
}

.menu-header li:hover {
    text-decoration: underline; 
}

/* ===== выпадающее меню ===== */
.menu-header > li {
    position: relative; /* Важно для позиционирования выпадающего списка */
}

/* Стили для элементов, которые являются ссылками */
.menu-header > li:has(a) {
    cursor: pointer;
}

/* Показываем выпадающий список при наведении на родительский пункт */
.menu-header > li:hover .dropdown {
    display: block;
}

/* Стрелочка для индикации */
.menu-header > li:has(.dropdown)::after {
    content: " ▼";
    font-size: 10px;
    color: #aaa;
}

.search-item,  .search-item-mobile{
    display: flex;
    align-items: center;
    padding: 0 5px;
}

.search-item-mobile{
    display: none;
}

.search-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    background: #ffffff;
    border-radius: 5px;
    border: 2px solid #bbbbbb;
    transition: all 0.3s ease;
    padding: 1px 1px 1px 12px;
    min-width: 220px;
}

.search-wrapper:hover {
    border-color: #7e7e7e;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(141, 141, 141, 0.15);
}

.search-wrapper:focus-within {
    border-color: #b40303;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(180, 3, 3, 0.1);
}

/* ===== ИКОНКА ПОИСКА ===== */
.search-icon {
    flex-shrink: 0;
    color: #999;
    transition: color 0.3s ease;
}

.search-wrapper:focus-within .search-icon,
.search-wrapper:hover .search-icon {
    color: #b40303;
}

/* ===== ПОЛЕ ВВОДА ===== */
.search-input {
    flex: 1;
    padding: 8px 10px;
    border: none;
    background: transparent;
    outline: none;
    font-size: 14px;
    color: #1a1a1a;
    min-width: 120px;
    font-family: 'Eurostile Round Regular';
}

.search-input::placeholder {
    color: #aaa;
    font-size: 15px;
}

/* ===== КНОПКА ПОИСКА ===== */
.search-btn {
    flex-shrink: 0;
    padding: 6px 16px;
    margin-right: 10px;
    background: #EE3524;
    color: #ffffff;
    border: none;
    border-radius: 2px;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.3s ease;
    letter-spacing: 0.5px;
    font-family: 'Eurostile Round Regular';

}

.search-btn:hover {
    background: #8a0202;
    transform: scale(1.02);
    box-shadow: 0 2px 8px rgba(180, 3, 3, 0.3);
}

.search-btn:active {
    transform: scale(0.98);
}



/* ======================= БЛОК 1 ======================= */
.block-1{
    display: flex; 
    flex-wrap: wrap;
    align-items: center;
    padding-top: 8vh;
    padding-bottom: 8vh;
}

.block-1-text{
    z-index: 1;
    min-width: 30%; /* Относительно родителя */
    max-width: 45%; /* Относительно родителя */    
    display: flex;
    align-items: left;
    flex-direction: column;
    justify-content: center;
    margin-top: 2vh;
}

.block-1-left-h1 {
    font-family: 'Eurostile Extended Black', sans-serif;
    font-weight: 700;
    margin-bottom: 2vh;
    font-size: 2em;
    color:#2C2C2C;
}

.block-1-left-p {
    margin-bottom: 5vh;
}

.block-1-text-button {
    background-color: #EE3524;
    border: none;
    color: white;
    padding: 1.5vh 2.8vw;
    cursor: pointer;
    font-family: 'Eurostile Round Regular', sans-serif;
    font-size: 1em;
    max-width: 410px;
    position: relative;
    z-index: 2;
}

.block-1-text-button:hover {
    background: #9b1004;
    transition: all 0.3s ease;
}


.index--block-1-image{
    max-width: 70%;
    position: absolute;
    top: 23%;
    right: 0;          /* Прижимаем к правому краю блока .block-1 */
    z-index: -1;        
    pointer-events: none; /* Чтобы картинка не мешала кликать по кнопке */
}

.index--block-1-industry-cards-container {
    flex: 0 0 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 15vh;
    z-index: 1;
}

.index--block-1-industry-card-wrapper {
    position: relative;
    width: 18vw;
    height: 20vh;
}

/* HOVER ЭФФЕКТ: белая плашка становится красной */
.index--block-1-industry-card-wrapper:hover .index--block-1-industry-card {
    background-color: #EE3524;
    border-color: #EE3524;
}

.index--block-1-industry-card-wrapper:hover .index--block-1-industry-card-title {
    color: #ffffff;
}

.index--block-1-industry-card-wrapper:hover .index--block-1-industry-card-icon {
    filter: brightness(0) invert(1); /* Делает иконку белой */
}

/* Дополнительно: небольшой эффект при наведении на всю обертку */
.index--block-1-industry-card-wrapper:hover .index--block-1-industry-card-shadow {
    transform: translate(5px, 5px);
    background-color: #f8f6f6;
    border-color: #000000;
}

/* Красный прямоугольник-подложка (смещен вправо и вниз) */
.index--block-1-industry-card-shadow {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 100%;
    height: 100%;
    background-color: #EE3524;
    border: 2px solid #EE3524;
    z-index: 1;
    transition: all 0.3s ease;
}

/* Белая плашка (поверх красной) */
.index--block-1-industry-card {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    border: 2px solid #000000;
    z-index: 2;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1vh 0.6vw;
}

/* Контент внутри плашки */
.index--block-1-industry-card-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    height: 100%;
    text-align: center;
    overflow: hidden;
}

/* Заголовок */
.index--block-1-industry-card-title {
    font-family: 'Eurostile Round Regular';
    color:#2C2C2C;
    font-size: 1.3em;
    transition: color 0.3s ease;
    margin-bottom: 2vh;
}


/* Иконка */
.index--block-1-industry-card-icon {
    width: 10vh;
    height: 6vh;
    flex: 0 0 auto;
    flex-shrink: 0;
    flex-grow: 0;
    transition: filter 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.index--block-1-industry-card-icon img {
    width: 10vh;
    height: 7vh;
    object-fit: contain;
    display: block;
    flex: 0 0 auto;
    flex-shrink: 0;
    flex-grow: 0;
}

.block-2 {
    position: relative;
    overflow: visible;
    padding-top: 8vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Создаем фон через псевдоэлемент */
.block-2::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background-color: #4D5361;
    z-index: -1;
    pointer-events: none;
}

.block-2-text{
    display: flex;
    flex-direction: row;
    align-items: flex-start; /* Выравнивание по верхней границе между собой */
    z-index: 1;
    position: relative;
}

.h1-h2 h2{
    font-family: 'Eurostile Round Regular';
    font-size: 1.2em;
    font-weight: 50;
    margin-bottom: 4vh;
}

.h1-h2 h1{
    font-family: 'Eurostile Extended Black';
    font-size: 1.8em;
}

.block-2 .h1-h2 h2, 
.block-2 .h1-h2 h1{
    color:#ffffff;
}

.block-2-text .h1-h2{
    padding-right: 10vw;
}

.block-2-text-right{
    color: #FFFFFF;
    margin-bottom: 9vh;
}

.block-2-text-right p{
    font-size: 1.2em;
    font-family: 'Eurostile Round Regular';
}

.rect-2{
    max-width: 250px;
}

/* Второй и третий элементы */
.rect-2:nth-child(2),
.rect-2:nth-child(3) {
    margin-left: -6vw
}

.block-2-polygons {
    display: flex;
    flex-direction: row;
    justify-content: flex-end; 
    align-items: flex-end;    
    opacity: 0.2;
    position: absolute; /* Абсолютное позиционирование */
    bottom: 0;
    right: 0;
    z-index: 0; /* Под текстом */
    pointer-events: none; /* Чтобы не мешали кликам */
    
}

.rect-2 {
    max-width: 250px;
    width: 100%;
    height: auto;
}

/*-------------------------------------БЛОК 3-------------------------------------*/
.block-3{
    padding-top: 8vh;
    padding-bottom: 8vh;
}

/* Верхняя часть: заголовок + переключатель */
.comparison-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 8vh;
    flex-wrap: wrap;
}



/* ========== ПОЛИГОНАЛЬНЫЕ КНОПКИ (со скошенными углами) ========== */
.toggle-buttons {
    display: flex;
    background: #ffffff;
    clip-path: polygon(5% 0%, 100% 0%, 95% 100%, 0% 100%);
    width: 55vw;
    font-family: 'Eurostile Round Regular';
    flex-wrap: wrap; /* важно для переноса */

}

.toggle-btn {
    flex: 1;
    padding: 1.8vh 0;
    font-size: 1.2em;
    cursor: pointer;
    border: none;
    background: transparent;
    color: #495057;
    transition: all 0.3s ease;
    position: relative;
    font-family: inherit;
    clip-path: polygon(13% 0%, 100% 0%, 87% 100%, 0% 100%);
    background: #f0f1f1;
    white-space: nowrap; /* предотвращает перенос текста внутри */
}

/* Активное состояние кнопки - серый фон, белые буквы */
.toggle-btn.active {
    background: #4D5361;
    color: white;
    z-index: 2;
}

.toggle-btn:hover:not(.active) {
    background: #dee2e6;
    color: #212529;
}

/* Нижняя часть: контент */
.comparison-content {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 50px;
    align-items: start;
}

/* Левая колонка с текстом */
.content-text {
    display: flex;
    flex-direction: column; /* Вертикальное расположение */
    justify-content: space-between; /* Распределяет пространство между элементами */
    height: 100%; /* Важно: растягиваем на всю высоту родителя */
    max-width: 90%;
}

.text-content {
    display: none;
    animation: fadeIn 0.4s ease;   
}

/* Кнопка всегда внизу */
.content-text .block-1-text-button {
    margin-top: auto; /* Прижимает кнопку к нижней границе */
    max-width: 17vw;
}

.content-text .block-1-text-button:hover {
    background: #9b1004;
    transition: all 0.3s ease;
}

.text-content.active {
    display: block;
}

.text-content h3 {
    font-size: 1.8em;
    color: #2c3e50;
    margin-top: 0;
    margin-bottom: 20px;
}

.text-content p {
    color: #555;
    line-height: 1.6;
    margin-bottom: 25px;
}




/* Правая колонка: слайдер */
.content-slider {
    position: relative;
    border-radius: 0px;
    overflow: hidden;
}

/* Слайдер контейнер */
.slider-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.slider-container.hidden {
    display: none;
}

/* Трек со слайдами */
.slider-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

/* Каждый слайд */
.slide {
    min-width: 100%;
    flex-shrink: 0;
}

.slide img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    aspect-ratio: 16/10;
}



/* ===== ИНДИКАТОРЫ (КРУЖОЧКИ) ===== */
.slider-dots {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 10;
}

/* Стиль кружочка */
.dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
    padding: 0;
}

/* Активный кружочек */
.dot.active {
    background: white;
    transform: scale(1.3);
}

/* Эффект при наведении */
.dot:hover {
    background: rgba(255, 255, 255, 0.9);
    transform: scale(1.1);
}

/*-------------------------------------БЛОК 4-------------------------------------*/
.block-4{
    padding-top: 12vh;
    padding-bottom: 8vh;
}

.block-4--top{
    display: flex;
    margin-bottom: 8vh;
}

.block-4-stages{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding-bottom: 3vh;
    padding-top: 3vh;
}

.gradient-line--white-red {
    display: flex;
    background: #e9ecef;
    clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
    width: 52vw;
    height: 1vh;
    padding: 1.8vh 10vw;
    /*margin-top: 7.5vh;*/
    margin-left: auto; /*ПРИРАВНИВАЕТ К ПРАВОМУ КРАЮ*/

    background: linear-gradient(90deg, white 10%, #ff4444 70%, #EE3524 100%);
}

.gradient-line--red-white {
    display: flex;
    background: #e9ecef;
    clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
    width: 100%;
    height: 1vh;
    padding: 1.8vh 10vw;
    margin-top: 7.5vh;

    background: linear-gradient(90deg, #EE3524 0%, #ff4444 50%,  white 98%);
}


.analysis-card {
    position: relative;
    width: 24%;
    height: auto; /* Изменено с фиксированной на auto */
    min-height: 40vh; /* Минимальная высота */
    height: 59.5vh;
    background: white;
    border: 1px solid #b0b0b0;
    overflow: hidden;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.analysis-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.card-icon {
    position: absolute;
    top: 7vh;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

.card-icon img {
    height: 10vh;
    display: block;
}

/* Контент */
.card-content {
    position: relative;
    z-index: 10;
    height: 100%; /* важно — чтобы карточка знала высоту */

}

.card-title {
    font-family: 'Eurostile Extended Black';
    font-size: 1em;
    color: #ffffff;
    /*margin-bottom: 4vh;*/
    line-height: 1.3;

    margin-bottom: auto;

}

.card-description {
    font-size: 1em;
    color: #ffffff;
    line-height: 1.5;
    width: 100%;
    word-wrap: break-word;
    box-sizing: border-box;

    margin-top: auto;
}

.card-text{
    margin-top: 10vh;
    padding: 2vw;
    display: flex;
    flex-direction: column;
    height: 65%;
    
}

.card-shapes {
    display: flex;
    flex-direction: column;
    position: relative;
    justify-content: flex-end; /* прижимает содержимое к низу */
    height: 100%; /* занимает всю высоту родителя */


}

.trapezoid-gray {
    margin-top: 21vh;
    height: 38vh;
    background: #4D5361;
    clip-path: polygon(0% 0%, 100% 30%, 100% 100%, 0% 100%);
    z-index: 2;
}

.trapezoid-red {
    height: 38vh;
    background: #e63946;
    clip-path: polygon(0% 30%, 100% 0%, 100% 100%, 0% 100%);
    margin-top: -38vh;
    z-index: 1;
}

/* Белый текст на серой трапеции */
.trapezoid-gray-text {
    position: absolute;
    bottom: 30px;
    left: 25px;
    color: white;
    font-weight: 600;
    font-size: 0.85em;
    z-index: 5;
    letter-spacing: 1px;
}


/*-------------------------------------БЛОК 5------------------------------------*/
.block-5{
    padding-top: 8vh;
    padding-bottom: 8vh;
}

.block-5--top{
    display: flex;
    margin-bottom: 8vh;
    justify-content: space-between;
}

.all-news {
    color: #e74c3c;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
    font-size: 1em;
}


.all-news:hover {
    transform: translateX(5px);
}

/* Сетка */
.news-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Строка новостей */
.news-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* Первая строка: большая новость + 2 маленькие */
.news-row:first-child {
    grid-template-columns: 2.06fr 1fr 1fr;
}

/* Карточка новости */
.news-card {
    position: relative;
    overflow: hidden;
    text-decoration: none;
    display: block;
    aspect-ratio: 4 / 3;
}

/* Большая новость */
.news-card-large {
    aspect-ratio: auto;
    height: 100%;
}

/* Фото на фоне */
.news-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: transform 0.5s ease;
}

.news-card:hover .news-image {
    transform: scale(1.05);
}

/* Затемнение */
.news-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.2));
    z-index: 1;
}

/* Контент */
.news-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    z-index: 2;
    color: white;
}

.news-date {
    font-size: 1em;
    opacity: 0.8;
    display: block;
    /*margin-bottom: 8px;*/
    margin-bottom: auto;
}

.news-title {
    font-size: 1em;
    font-weight: 700;
    margin: 0 0 12px 0;
    line-height: 1.3;
    color:white;
}

/* Большая новость - крупный текст */
.news-card-large .news-title {
    font-size: 1.1em;
    margin-bottom: 15px;
}

.news-card-large .news-date {
    font-size: 0.9em;
}

.news-btn {
    display: inline-block;
    padding: 6px 16px;
    background: rgba(255,255,255,0.2);
    color: white;
    text-decoration: none;
    font-size: 0.75em;
    transition: 0.3s;
}

.news-card-large .news-btn {
    padding: 8px 20px;
    font-size: 0.85em;
}

.news-card:hover .news-btn {
    background: #e74c3c;
    transform: translateX(5px);
}

.block-5--bottom{
    display: flex;
    margin-top: 8vh;
    justify-content:end;
}


/*-------------------------------------БЛОК 6-------------------------------------*/
.block-6{
    padding-top: 8vh;
    padding-bottom: 8vh;
}

.block-6--top{
    margin-bottom: 8vh;
}

.partners-section {
    overflow: hidden;
}

/* Контейнер слайдера */
.partners-slider {
    width: 100%;
    overflow: hidden;
}

/* Бегущая строка */
.partners-track {
    display: flex;
    gap: 2vw;
    animation: scroll 20s linear infinite;
}

/* Пауза при наведении */
.partners-slider:hover .partners-track {
    animation-play-state: paused;
}

/* Логотип */
.partner-logo {
    flex-shrink: 0;
    width: 10vw;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center; 
    
    transition: all 0.3s ease;
}

.partner-logo--large {
    width: 20vw;
}

.partner-logo:hover {
    transform: translateY(-5px);
}

.partner-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    /*filter: grayscale(100%);*/
    opacity: 0.7;
    transition: all 0.3s ease;
}

.partner-logo:hover img {
    filter: grayscale(0%);
    opacity: 1;
}

.partners-slider {
    width: 100%;
    overflow: hidden;
    position: relative;
}

/*-------------------------------------ФУТЕР-------------------------------------*/
.footer{
    background-color: #4D5361;
    padding-top: 8vh;
    padding-bottom: 8vh;
    padding-left: 10vw;
    padding-right: 10vw;
    display: flex;
    color: white;
    /*justify-content: space-between;*/
}

.footer--left{
    margin-right: 20vw;
}

.footer--right{
    margin-top: 9vh;
    display: flex;
    flex-direction: column;
    gap: 20px;
    
}
.footer-news{
    color: white;
    text-decoration: none;
    font-size: 1em;
}

.footer--logo{
    max-width: 300px;
    margin-bottom: 5vh;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 12px; /* Отступ между "Телефон:" и номером */
    margin-bottom: 5vh;
}

.contact-label {
    font-size: 1.7em;  
}

.contact-text {
    font-size: 1.2em; 
    line-height: 1.6; /* Межстрочный интервал для "приёмная" */
}

.messengers-icons {
    display: flex;
    gap: 20px; 
    align-items: center;
}

.messenger-link {
    display: inline-block;
    transition: transform 0.2s ease;
    text-decoration: none;
}

/* Кроссбраузерные стили для иконок */
.messenger-icon {
    width: 40px;
    height: 40px;
    display: block;
    filter: brightness(0) invert(1); /* Делает иконки белыми */
    transition: all 0.2s ease;
    
    /* Кроссбраузерные свойства */
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
}

/* Эффект при наведении */
.messenger-link:hover .messenger-icon {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    filter: brightness(0) invert(0.8); /* Светло-серый при наведении */
}

/* Для старых браузеров (fallback) */
.messenger-icon {
    background-color: transparent;
}

/* Бургер по умолчанию скрыт */
.burger-menu {
    display: none;
}



/*===================== О КОМПАНИИ ======================*/


.about-company--block-1{
    margin-top: 8vh;
    display: flex;    
    justify-content: space-between;
    margin-bottom: 4vh;
}

.h1-line{
    border-left: 1.4vw solid #EE3524;
    padding-left: 1.2em;
    margin-bottom: 6vh;
    margin-top: 6vh;

    font-family: 'Eurostile Extended Black';
    font-size: 1.8em;
    color: #2C2C2C;
}

.about-company--block-1-text{
    max-width: 60%;
}

.about-company--block-1-image{
    max-height: 400px;
}


.about-company-h1, .vakancii-h1{
    font-family: 'Eurostile Extended Black';
    font-size: 1.8em;
    color: #2C2C2C;
}

/* ---------- Сетки ---------- */
.about-company--block-2-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 4em;
    margin: 1.8em 0 0.5em 0;
}

.grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.2em;
    margin: 1.8em 0 1em 0;
}

.about-company--block-2{
    margin-bottom: 8vh;
}

.about-company--block-2-card {
    background: #ffffff;
    padding: 1.8em 1.8em 2em;
    border: 1px solid #ececec;
    transition: 0.15s ease;    
    border-radius: 1em;
}

.about-company--block-2-card:hover {
    border-color: #d0d0d0;
    background: #f8f8f8;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
}

.about-company--block-2-card h3 {
    margin-top: 0;
    border-bottom: 2px solid #E21A1A;
    padding-bottom: 0.4em;
    display: inline-block;
}

.stat-number p{
    font-size: 2em;
    font-weight: 700;
    color: #E21A1A;
    font-family: 'Eurostile Extended Black';
    padding-bottom: 0.1vh;
}

.stat-label {
    font-size: 1em;
    padding-bottom: 3vh;
}

.about-company--block-3{
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* заголовок слева */

    margin-bottom: 15vh;
}

.about-company--block-3-image{
    margin-top: 6vh;
    max-width: 1450px;
    justify-content: center;
    margin-right: auto;
    margin-left: auto;
}


.scheme-container {
    margin-top: 6vh;
    /*background: #E21A1A;*/
    /*border: 2px solid #E21A1A;*/
    padding: 20px 20px;

    display: flex;
    flex-direction: column;
    align-items: center;
}


/* ===== КРАСНЫЙ БЛОК С ЛОГОТИПОМ ===== */
.logo-block {
    /*min-width: 15vw;*/
    /*background: #E21A1A;*/
    border-radius: 0px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    min-height: 50px;
    color: white;

    padding: 4vh 2vw;
    background: #E21A1A;
    box-shadow: 0 2px 8px rgba(198, 40, 40, 0.25);
    max-width: 30vw;
}


.logo-block .org-name{
    font-family: 'Eurostile Extended Black' !important;
}

 /* ===== СТРЕЛКИ (линии-связи) ===== */
.arrows-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    height: 100px;
    margin: -2px 0 0 0;
    z-index: 10;
}

.arrows-wrapper svg {
    width: 100%;
    max-width: 800px;
    height: 100px;
}

/* ===== СЕТКА  ===== */
.org-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    margin-top: 2vh;
    z-index: 2;
}

/* ===== ПЛАШКА ОРГАНИЗАЦИИ ===== */
.org-card {
    background: #ffffff;
    border: 2px solid #d1d1d1;
    border-radius: 2px;
    padding: 4vh 20px 4vh;
    text-align: center;
    transition: all 0.3s ease;
    cursor: default;
    position: relative;
    min-height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.org-card:hover {
    border-color: #c62828;
    box-shadow: 0 4px 20px rgba(198, 40, 40, 0.12);
    transform: translateY(-3px);
}

/* Название организации */
.org-name {
    font-family: 'Eurostile Medium';
    font-size: 1.5em;
    transition: color 0.3s;
}

.org-card:hover .org-name {
    color: #c62828;
}

/* Маленькая иконка-подсказка */
.org-hint {
    font-size: 1em;
    color: #646464;
    margin-top: 8px;
    letter-spacing: 0.5px;
    transition: opacity 0.3s;
}


/* ===== ВЫПАДАЮЩИЕ КОНТАКТЫ (при наведении) ===== */
.org-contacts {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.4s ease;
    width: 100%;
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.org-card:hover .org-contacts {
    max-height: 300px;
    opacity: 1;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 2px solid #c62828;
}

.logo-block:hover .org-contacts {
    max-height: 300px;
    opacity: 1;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 2px solid #c62828;
}

.logo-block .org-contacts .contact-item a {
    color: #ffffff;
    text-decoration: none;
    transition: color 0.2s;
}

.logo-block .org-contacts .contact-item svg {
    width: 18px;
    height: 18px;
    fill: #ffffff;
    flex-shrink: 0;
    margin-top: 8px;
}

.logo-block .org-contacts .contact-item a:hover {
    color: #d6d6d6;
    text-decoration: underline;
}

.org-contacts .contact-item {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 10px;
    font-size: 14px;
    padding: 5px 0;
    line-height: 1.5;
}

.org-contacts .contact-item svg {
    width: 18px;
    height: 18px;
    fill: #c62828;
    flex-shrink: 0;
    margin-top: 8px;
}

.org-contacts .contact-item a {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.2s;
}

.org-contacts .contact-item a:hover {
    color: #c62828;
    text-decoration: underline;
}

/*-------------------------------------КАТАЛОГ-------------------------------------*/
.all-catalog--app {
    display: flex;
    align-items: stretch; /* 👈 ДОБАВИТЬ (это значение по умолчанию, но для ясности) */
    height: 100vh; /* 👈 ДОБАВИТЬ - задаёт высоту всему контейнеру */
}

.all-catalog--tree {
    width: 40%;
    background: #ffffff;
    border-right: 1px solid #e0e4ec;
    overflow-y: auto;
    padding: 1.6em 1em 2em 1em;
    flex-shrink: 0;
    transition: background 0.2s;
}

.all-catalog--tree::-webkit-scrollbar {
    width: 5px;
}
.all-catalog--tree::-webkit-scrollbar-track {
    background: #f2f4f8;
}
.all-catalog--tree::-webkit-scrollbar-thumb {
    background: #cbd2df;
    border-radius: 10px;
}
.all-catalog--h1-line {
    border-left: 1.1vw solid #EE3524;
    padding-left: 1.2em;
    margin-bottom: 2vh;
    margin-top: 2vh;
    font-family: 'Eurostile Extended Black';
    font-size: 1.8em;
    color: #2C2C2C;
}

.all-catalog--header {
    display: flex;
    align-items: center;
    gap: 0.5em;
    padding-bottom: 0.9em;
    border-bottom: 1px solid #e6eaf0;
    margin-bottom: 1.4em;
    letter-spacing: -0.01em;
}

.all-catalog--header .all-catalog--icon {
    font-size: 1.1em;
    color: #b31b1b;
    font-weight: 500;
}

.all-catalog--header .all-catalog--title {
    font-size: 1em;
    font-weight: 600;
    color: #1a1f2b;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.all-catalog--header .all-catalog--badge-level {
    margin-left: auto;
    background: #edf0f5;
    color: #4a525f;
    font-size: 0.6em;
    font-weight: 500;
    padding: 0.15em 0.7em;
    border-radius: 30px;
    letter-spacing: 0.02em;
}

/* дерево */
.all-catalog--list {
    list-style: none;
    padding-left: 0;
}

.all-catalog--list ul {
    list-style: none;
    padding-left: 1.2em;
    margin-top: 0.1em;
}

.all-catalog--item {
    margin: 0.1em 0;
}

.all-catalog--label {
    display: flex;
    align-items: center;
    gap: 0.5em;
    padding: 0.35em 0.5em 0.35em 0.3em;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.1s, color 0.1s;
    color: #1f2633;
    font-size: 0.85em;
    font-weight: 450;
    user-select: none;
    border-left: 2px solid transparent;
}

.all-catalog--label:hover {
    background: #f0f2f7;
}

.all-catalog--label.all-catalog--active {
    background: #f2ecec;
    color: #b31b1b;
    font-weight: 500;
    border-left-color: #b31b1b;
}

.all-catalog--label .all-catalog--arrow {
    display: inline-block;
    font-size: 0.55em;
    width: 1em;
    text-align: center;
    color: #6d7888;
    transition: transform 0.2s ease;
}

.all-catalog--label .all-catalog--arrow.all-catalog--expanded {
    transform: rotate(90deg);
}

.all-catalog--label .all-catalog--name {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.all-catalog--label .all-catalog--count {
    font-size: 0.6em;
    background: #eceff4;
    color: #4d5768;
    padding: 0.05em 0.5em;
    border-radius: 30px;
    font-weight: 450;
    letter-spacing: 0.01em;
    flex-shrink: 0;
}

.all-catalog--children {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.2s ease-out;
}

.all-catalog--children.all-catalog--open {
    max-height: 800px;
    transition: max-height 0.3s ease-in;
}

/* ===== ПРАВАЯ ПАНЕЛЬ (60%) ===== */
.all-catalog--panel {
    width: 60%;
    /*height: 100vh;*/
    padding: 1.6em 2em 2em 2em;
    overflow-y: auto;
    background: #f8f9fc;
    flex: 1;
}

.all-catalog--panel::-webkit-scrollbar {
    width: 5px;
}
.all-catalog--panel::-webkit-scrollbar-track {
    background: #f2f4f8;
}
.all-catalog--panel::-webkit-scrollbar-thumb {
    background: #cbd2df;
    border-radius: 10px;
}

.all-catalog--panel-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    border-bottom: 1px solid #e0e5ed;
    padding-bottom: 0.6em;
    margin-bottom: 1.8em;
}

.all-catalog--panel-header .all-catalog--category-title {
    font-size: 1.1em;
    font-weight: 600;
    color: #161c26;
    letter-spacing: -0.01em;
}

.all-catalog--grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 1em;
}

.all-catalog--card {
    background: #ffffff;
    border-radius: 10px;
    padding: 0.9em 0.5em 0.7em;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.01), 0 0 0 1px #e6ebf2;
    transition: box-shadow 0.15s, transform 0.1s;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.all-catalog--card:hover {
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.03), 0 0 0 1px #d0d8e3;
    transform: translateY(-2px);
}

.all-catalog--card .all-catalog--emoji {
    font-size: 1.8em;
    line-height: 1.2;
    margin-bottom: 0.2em;
}

.all-catalog--card .all-catalog--product-name {
    font-weight: 500;
    color: #1a212b;
    font-size: 0.85em;
    margin-bottom: 0.1em;
}

.all-catalog--card .all-catalog--product-code {
    font-size: 0.6em;
    color: #6b7688;
    background: #f0f2f7;
    padding: 0.1em 0.6em;
    border-radius: 30px;
    letter-spacing: 0.02em;
}

.all-catalog--empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3em 0;
    color: #7b869a;
    font-size: 0.9em;
    letter-spacing: 0.01em;
}

/* ===== СЕТКА КАРТОЧЕК ===== */
.products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
    margin-top: 4px;
}

/* ===== КАРТОЧКА ТОВАРА ===== */
.product-card {
    background: #ffffff;
    border: 1px solid #eaeaea;
    border-radius: 6px;
    overflow: hidden;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    min-height: 200px;
    min-width: 200px;
    position: relative;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
    cursor: pointer;
}

.product-card:hover {
    border-color: #d32f2f;
    box-shadow: 0 4px 20px rgba(211, 47, 47, 0.10);
    transform: translateY(-3px);
}

/* ===== ОБЛАСТЬ ИЗОБРАЖЕНИЯ ===== */
.product-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    background: #f7f7f7;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
    position: relative;
}

.product-card:hover .product-image {
    background: #f0f0f0;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 16px;
}

/* Иконка-заглушка */
.product-image .placeholder-icon {
    width: 56px;
    height: 56px;
    border: 2px solid #ccc;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bbb;
    font-size: 24px;
    font-weight: 300;
    transition: all 0.2s;
    background: #fff;
}

.product-card:hover .product-image .placeholder-icon {
    border-color: #d32f2f;
    color: #d32f2f;
}

/* ===== ТЕЛО КАРТОЧКИ ===== */
.product-card-body {
    padding: 20px 22px 22px;
}

.product-card-title {
    font-size: 1.15em;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 8px;
    line-height: 1.3;
}

/* ===== НАЗВАНИЕ ТОВАРА (альтернативный вариант) ===== */
.product-name {
    padding: 14px 14px 16px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    color: #1a1a1a;
    text-align: center;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    word-break: break-word;
    border-top: 1px solid #f0f0f0;
    background: #fcfcfc;
    min-height: 70px;
    letter-spacing: 0.2px;
}

.product-card:hover .product-name {
    background: #fafafa;
    border-top-color: #e0e0e0;
}

/* ===== АРТИКУЛ ===== */
.product-article {
    display: none;
    font-size: 11px;
    color: #aaa;
    margin-top: 4px;
    font-weight: 400;
}

/* ===== ПУСТОЙ СОСТОЯНИЕ ===== */
.all-catalog--empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3em 0;
    color: #7b869a;
    font-size: 0.9em;
    letter-spacing: 0.01em;
}



/*===============СТРАНИЦА ТОВАРА===================*/
/* ===== ЛЕВАЯ ЧАСТЬ - ФИКСИРОВАННОЕ ФОТО ===== */
.product-gallery-wrapper {
    position: relative;
    height: 100%;
}

.product-gallery-sticky {
    position: sticky;
    top: 30px;
}

/* Красные прямоугольники за фото */
.product-gallery-wrapper .red-square-top-left {
    position: absolute;
    top: -15px;
    left: -15px;
    width: 80px;
    height: 80px;
    background-color: #e53e3e;
    z-index: 0;
}

.product-gallery-wrapper .red-square-bottom-right {
    position: absolute;
    bottom: -15px;
    right: -15px;
    width: 80px;
    height: 80px;
    background-color: #e53e3e;
    z-index: 0;
}

/* Квадратное фото */
.product-gallery {
    position: relative;
    z-index: 1;
    background: #f7fafc;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #e2e8f0;
}

.product-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ===== ОСНОВНАЯ СЕКЦИЯ С ТОВАРОМ ===== */
.product-section {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 40px;
    align-items: start;
    margin-bottom: 8vh;
    margin-top: 6vh;
}

/* ===== ЛЕВАЯ ЧАСТЬ - ФИКСИРОВАННОЕ ФОТО ===== */
.product-gallery-wrapper {
    position: relative;
    height: 100%;
}

.product-gallery-sticky {
    position: sticky;
    top: 30px;
}

/* Красные прямоугольники за фото */
.product-gallery-wrapper .red-square-top-left {
    position: absolute;
    top: -15px;
    left: -15px;
    width: 80px;
    height: 80px;
    background-color: #e53e3e;
    z-index: 0;
}

.product-gallery-wrapper .red-square-bottom-right {
    position: absolute;
    bottom: -15px;
    right: -15px;
    width: 80px;
    height: 80px;
    background-color: #e53e3e;
    z-index: 0;
}

/* Квадратное фото */
.product-gallery {
    position: relative;
    z-index: 1;
    background: #f7fafc;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #e2e8f0;
}

.product-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ===== ПРАВАЯ ЧАСТЬ - ИНФОРМАЦИЯ ===== */
.product-info {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.product-info .product-code-label {
    color: #a0aec0;
    font-weight: 600;
    text-transform: uppercase;
}


.product-info .product-name {
    font-size: 2em;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 2vh;
}

.product-info .product-description {
    font-size: 1em;
    color: #4a5568;
    line-height: 1.8;
}

.product-info .product-description p {
    margin-bottom: 12px;
}

.product-info .product-description p:last-child {
    margin-bottom: 0;
}

/* ===== ДОКУМЕНТАЦИЯ ===== */
.docs-block {
    margin-top: 5px;

}

.title {
    font-size: 1.5em;
    font-weight: 700;
    margin-bottom: 1vh;
    margin-top: 5vh;
    display: flex;
    align-items: center;
    gap: 10px;
    padding-top: 1vh;

}



.specs-block {
    max-width: 950px;
    overflow: hidden;
}

.specs-header {
    display: grid;
    grid-template-columns: 2fr 1fr;
    padding: 12px 24px;
    font-weight: 700;
    border-bottom: 2px solid #a80a0a;
}


.header-label {
    text-align: left;
}

.header-value {
    text-align: center;
}

.specs-table {
    display: flex;
    flex-direction: column;
}

.spec-row {
    display: grid;
    grid-template-columns: 2fr 1fr;
    padding: 10px 24px;
    align-items: center;
    min-height: 44px;
}

.spec-row:hover {
    background: #f8faff;
}

/* Родительская строка */
.spec-row.parent {
    font-weight: 700;
    border-top: 2px solid #d0d7de;
    padding-top: 14px;
    padding-bottom: 14px;
}

.spec-row.parent .spec-label {
    font-size: 1.1em;
}

.spec-row.parent:hover {
    background: #b8b8b81c;
}

.spec-row.sub-parent {
    background: #fafcfe;
    border-bottom: 1px solid #dce3ea;
    padding-top: 12px;
    padding-bottom: 12px;
}

.spec-row.sub-parent .spec-label {
    font-size: 14px;
    color: #2a4a6a;
    font-weight: 600;
}

/* Дочерняя строка */
.spec-row.child {
    background: #ffffff;
    padding-left: 48px; /* Отступ для дочерних элементов */
    border-bottom: 1px solid #f0f4f8;
}

.spec-row.child .spec-label {
    font-weight: 400;
    font-size: 1.1em;
}

.spec-row.child .spec-label::before {
    content: "▸ ";
    color: #b80c0c;
}

.spec-row.child:hover {
    background: #f3f8ff;
}

/* ===== КОНТЕЙНЕРЫ ДЛЯ ГРУПП ===== */
.spec-group {
    display: flex;
    flex-direction: column;
}

/* Дочерний контейнер (обертка для подстрок) */
.spec-children {
    display: flex;
    flex-direction: column;
}

/* Вложенный дочерний контейнер (для второго уровня) */
.spec-children.sub-children .spec-row.child {
    padding-left: 78px; /* Еще больший отступ */
    background: #fafcfe;
}

.spec-children.sub-children .spec-row.child .spec-label::before {
    content: "▪ ";
    color: #acacac8f;
}

/* ===== ЗНАЧЕНИЯ ===== */
.spec-value {
    font-weight: 400;
    font-size: 1em;
    text-align: center;
}



/* Пустые ячейки у родительских строк */
.spec-row.parent .spec-value,
.spec-row.sub-parent .spec-value {
    font-size: 1.1em;
}

.doc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 32px;
    background: #ffffff;
    color: #e63946;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    border: 2px solid #e63946;
    border-radius: 8px;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

/* Эффект при наведении */
.doc-btn:hover {
    background: #e63946;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(230, 57, 70, 0.3);
}

/* Эффект при нажатии */
.doc-btn:active {
    transform: scale(0.96);
    box-shadow: 0 4px 12px rgba(230, 57, 70, 0.2);
}

/* Иконка внутри кнопки */
.doc-btn svg {
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.doc-btn:hover svg {
    transform: translateY(2px);
}

/* Дополнительный эффект — заливка при наведении */
.doc-btn::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(230, 57, 70, 0.1);
    border-radius: 50%;
    transition: all 0.5s ease;
    transform: translate(-50%, -50%);
}

.doc-btn:hover::after {
    width: 300px;
    height: 300px;
}

/* ---------------- ОБЩИЕ НОВОСТИ ----------------- */
.all-news---block {
    margin-top: 6vh;
}

/* ----- Сетка: 2 колонки ----- */
.all-news---grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* ----- Карточка новости (белая плашка в серой рамке) ----- */
.all-news---card {
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.3s, transform 0.3s;
    display: flex;
    flex-direction: column;
}

.all-news---card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.12);
    transform: translateY(-5px);
}

/* ----- Изображение ----- */
.all-news---image {
    width: 100%;
    height: 220px;
    background-size: cover;
    background-position: center;
    background-color: #e9ecef;
    flex-shrink: 0;
}

/* ----- Контент ----- */
.all-news---content {
    padding: 20px 25px 25px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.all-news---date {
    font-size: 14px;
    color: #070707;
    margin-bottom: 10px;
    font-weight: 500;
}

.all-news---title-text {
    font-size: 18px;
    font-weight: 600;
    color: #222;
    line-height: 1.5;
    margin: 0 0 15px 0;
    flex: 1;
}

/* ----- Кнопка "Подробнее" ----- */
.all-news---btn {
    display: inline-block;
    padding: 6px 20px;
    color: rgb(27, 27, 27);
    background: #1e1e1e11;
    text-decoration: none;
    font-size: 1em;
    transition: 0.3s;
    width: auto; /* ← ГЛАВНОЕ: ширина по содержимому */
    max-width: 100%; /* ← чтобы не вылезала за пределы */
    align-self: flex-start; /* ← прижимаем к левому краю (опционально) */
    white-space: nowrap; /* ← чтобы текст не переносился */
}


.all-news---card:hover .all-news---btn {
    background: #e74c3c;
    color: #FFFFFF;
    transform: translateX(5px);
}


/* ----- Кнопка "Все новости" ----- */
.all-news---bottom {
    text-align: center;
    margin-top: 40px;
}

.all-news---all-link {
    display: inline-block;
    padding: 14px 40px;
    background: #c70000;
    color: #fff;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 16px;
    transition: background 0.3s;
}

.all-news---all-link:hover {
    background: #8B0000;
}


/*------ВАКАНСИИ------------*/  

.vakancii--block-1{
    display: flex;    
    justify-content: space-between;
}


.vakancii--section-title{
    text-align:center;
    font-size:36px;
    color:#EE3524;
    margin-bottom:15px;
}

.vakancii--section-subtitle{
    text-align:center;
    margin-bottom:50px;
    font-size:18px;
}

.subsection-title3--h1-line{
    display: none;
}

.vakancii--benefits{
    display:grid;
    grid-template-columns: repeat(4, 1fr);
    gap:50px;
    margin-bottom: 8vh;
    
}


.vakancii--card{
    background:#fff;
    border-radius:6px;
    padding:30px;
    box-shadow:0 10px 25px rgba(99, 99, 99, 0.08);
    border: 2px  solid #cfcfcf;
    transition:.3s;
    /*border-top:5px solid #c70000;*/
}

.vakancii--card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.vakancii--icon{
    width:6vw;
    max-height:6vh;
    /*background:#c70000;*/
    color:white;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:4vh;
    padding: 1vh 1vw;
}


.vakancii--card h3{
    color:#EE3524;
    margin-bottom:15px;
}


/* ----- Контейнер ----- */
.vakancii--container {
    margin-top: 8vh;
    margin-bottom: 8vh;
}

.vakancii-h1{
    margin-bottom: 6vh;
}

/* ----- Сетка: 2 колонки ----- */
.vakancii--grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 60px;
}

/* ----- Карточка вакансии ----- */
.vakancii--vacancy {
    background: rgba(247, 247, 247, 0.856);
    /*border: 2px solid rgb(236, 236, 236);*/
    border-left: 8px solid #EE3524;
    padding: 35px 30px;
    border-radius: 6px;
    /*box-shadow: 0 10px 25px rgba(0,0,0,.08);*/
    display: flex;
    flex-direction: column;
    transition: box-shadow .3s;
    box-sizing: border-box;
}

.vakancii--vacancy:hover {
    box-shadow: 0 15px 40px rgba(0,0,0,.12);
}

/* Контентная часть (заголовок + краткое описание) */
.vakancii--content {
    flex: 1;
}

.vakancii--vacancy h3 {
    font-size: 1.2em;
    margin: 0 0 12px 0;
    color: #222;
}

.vakancii--short-desc {
    color: #666;
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 20px 0;
}

/* ----- Кнопки внизу карточки ----- */
.vakancii--actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 10px;
    flex-wrap: wrap;
}

/* Кнопка "Подробнее" */
.vakancii--toggle-btn {
    display: inline-flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid #EE3524;
    padding: 10px 22px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    transition: all .3s;
}

.vakancii--toggle-btn:hover {
    background: #e8e8e8;
    border-color: #EE3524;
}

.vakancii--toggle-icon {
    display: inline-block;
    font-size: 12px;
    transition: transform .3s;
}

.vakancii--toggle-btn.active .vakancii--toggle-icon {
    transform: rotate(180deg);
}

.vakancii--toggle-btn.active {
    border-color: #c70000;
    background: #fff0f0;
}

/* Кнопка "Откликнуться" */
.vakancii--btn {
    display: inline-block;
    padding: 10px 30px;
    background: #EE3524;
    color: white;
    border-radius: 6px;
    transition: .3s;
    font-weight: bold;
    text-decoration: none;
    border: none;
    cursor: pointer;
}

.vakancii--btn:hover {
    background: #8B0000;
    color: white;
}

/* ----- Скрытый блок с деталями (раскрывается под карточкой) ----- */
.vakancii--details {
    max-height: 0;
    overflow: hidden;
    transition: max-height .5s ease, padding .3s ease;
    padding: 0;
    margin-top: 0;
}

.vakancii--details.open {
    max-height: 2000px;
    padding-top: 20px;
}

.vakancii--details-inner {
    border-top: 2px solid #eee;
    padding-top: 20px;
}

.vakancii--details-inner h4 {
    color: #8B0000;
    font-size: 17px;
    margin: 20px 0 10px;
}

.vakancii--details-inner h4:first-child {
    margin-top: 0;
}

.vakancii--details-inner ul {
    padding-left: 25px;
    margin: 0 0 15px;
}

.vakancii--details-inner ul li {
    color: #555;
    margin-bottom: 6px;
    line-height: 1.6;
}

.subsection-title3{
    color: #ffffff;
    margin: 0px 0 54px 0;
    padding: 26px 0 26px 0px;
    background: linear-gradient(to right, #FF958C, #EE3524);
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
}

.subsection-title3 span{
    font-size: 2.5em;    
    font-weight: 800;
    font-family: 'Eurostile';
}


/*===================КОНТАКТЫ==================*/
/* ===== КОНТАКТЫ ===== */
.contacts--container {
    margin: 8vh auto;
}


.contacts--grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 8vw;
}

/* ----- Иконки ----- */
.contacts--icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 5px;
}

.contacts--icon-small {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1vh;
}

/* ----- Левая колонка - Главная организация ----- */
.contacts--main-card {
    background: transparent;
    padding: 0;
    border-left: 4px solid #EE3524;
    padding-left: 2vw;
}

.contacts--badge {
    display: inline-block;
    color: #919191;
    font-size: 1em;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.contacts--name {
    font-size: 2em;
    color: #c70000;
    margin: 0 0 2vh 0;
    font-family: 'Eurostile Regular';

}

.contacts--info {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.contacts--item {
    display: flex;
    align-items: flex-start;
    gap: 1vw;
    padding: 4px 0;
}

.contacts--phones,
.contacts--emails {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.contacts--value { /*шрифт для адреса*/
    font-size: 1.2em;
    word-break: break-word;
}


.contacts--value a { /*шрифт для телефонов и почт*/
    font-size: 1.3em;
    color: #1a1a1a;
    text-decoration: none;
    transition: color .3s;
    border-bottom: 1px dotted transparent;
}

.contacts--value a:hover {
    color: #c70000;
    border-bottom-color: #c70000;
}

/* ----- Правая колонка - Подорганизации ----- */
.contacts--branches {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.contacts--branch-item {
    padding: 0 0 20px 0;
    border-bottom: 1px solid #979797;
}

.contacts--branch-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.contacts--branch-name {
    font-size: 1.4em;
    color: #c70000;
    margin: 0 0 10px 0;
}

.contacts--branch-info {
    display: flex;
    flex-direction: column;
    gap: 4px;

}

.contacts--branch-line {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.contacts--branch-address {
    color: #555;
    font-size: 1.2em;
}

.contacts--branch-phone a {
    color: #333;
    text-decoration: none;
    font-size: 1.2em;
    transition: color .3s;
}

.contacts--branch-phone a:hover {
    color: #c70000;
}

/* ===== СХЕМЫ ПРОЕЗДА ===== */


.scheme--grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5vw;
}
.scheme--container {
    width: 100%;
    max-width: 100%;
    overflow: hidden; /* Чтобы ничего не вылезало */
    margin-bottom: 6vh;
}

.scheme--card {
    /*padding: 30px;*/
    transition: box-shadow .3s;
    box-sizing: border-box;
    /*border: 1px solid #cacaca;*/
}


.scheme--header {
    margin-bottom: 20px;
}

.scheme--title {
    font-size: 1.3em;
    color: #272727;
    margin: 0 0 6px 0;
}

.scheme--address {
    font-size: 1.2em;
    color: #1d1d1d;
    margin: 0;
}

.scheme--map {
    width: 40vw;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e8e8e8;
    flex: 1; /* Занимает все оставшееся пространство */
    align-items: flex-end; /* Прижимаем изображение к нижней границе */
    display: flex;
    justify-content: center;
    position: relative;


}

.scheme--map img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover; /* Изображение заполняет всю область */
    object-position: bottom center; /* Прижимаем к нижней части */
        flex-shrink: 0;

}

/*===========================ОДНА НОВОСТЬ===============*/
/* ===== ОБЩИЕ СТИЛИ ===== */
.one-news--card {
    overflow: hidden;
    transition: all 0.2s ease;
    margin-top: 5vh;
    padding: 0 20px;
}

/* ===== ЗАГОЛОВОК С ДАТОЙ ===== */
.one-news--header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 8vh;
    flex-wrap: wrap;
    margin-top: 5vh;

}

.one-news--title {
    margin: 0;
    flex: 1;
    border-left: 1.4vw solid #EE3524;
    padding-left: 1.2em;

    font-family: 'Eurostile Extended Black';
    font-size: 1.8em;
    color: #2C2C2C;
}

.one-news--date-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #EE3524;
    color: #ffffff;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 1em;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
    margin-top: 4px;
}

.one-news--date-badge svg {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

/* ===== ЛЕЙАУТ: ТЕКСТ + СЛАЙДЕР ===== */
.one-news--layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

/* ===== ТЕКСТ СЛЕВА ===== */
.one-news--content {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.one-news--content p {
    font-size: 1.125em;
    line-height: 1.7;
    color: #222;
    margin: 0;
    font-weight: 400;
}

.one-news--content p:first-of-type {
    margin-top: 0;
}

.one-news--content strong {
    color: #d32f2f;
    font-weight: 600;
}

/* ===== СЛАЙДЕР СПРАВА ===== */
.one-news--slider-wrapper {
    position: relative;
    width: 100%;
}

.one-news--slider-container {
    position: relative;
    width: 100%;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}

.one-news--slider-track {
    display: flex;
    transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
}

.one-news--slider-slide {
    min-width: 100%;
    aspect-ratio: 4 / 3;
    background: #e0e0e0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.one-news--slider-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Кнопки слайдера */
.one-news--slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(4px);
    border: none;
    width: 44px;
    height: 44px;
    border-radius: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 300;
    color: #1a1a1a;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: all 0.2s;
    z-index: 10;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.one-news--slider-btn:hover {
    background: #ffffff;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    color: #d32f2f;
}

.one-news--slider-btn:active {
    transform: translateY(-50%) scale(0.94);
}

.one-news--slider-btn.prev {
    left: 16px;
}

.one-news--slider-btn.next {
    right: 16px;
}

/* Точки слайдера */
.one-news--slider-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    padding: 16px 0 14px 0;
    background: transparent;
    position: relative;
    z-index: 5;
}

.one-news--slider-dot {
    width: 10px;
    height: 10px;
    border-radius: 20px;
    background: #c0c0c0;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: all 0.2s ease;
    opacity: 0.6;
}

.one-news--slider-dot.active {
    background: #d32f2f;
    width: 30px;
    opacity: 1;
}

.one-news--slider-dot:hover {
    opacity: 1;
    background: #b71c1c;
}


/*==========АВТОМАТИКА И ТЕЛЕМЕХАНИКА====*/
/* ===== БЛОК КАТЕГОРИИ (УРОВЕНЬ 2) ===== */
.category-block {
    background: #ffffff;
    border-radius: 6px;
    margin-bottom: 28px;
    transition: box-shadow 0.2s;
}


.category-title {
    font-size: 22px;
    font-weight: 600;
    color: #1a1a1a;
    padding-bottom: 14px;
    margin-bottom: 20px;
    border-bottom: 2px solid #e0e0e0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.category-title .cat-icon {
    display: inline-block;
    width: 6px;
    height: 26px;
    background: #d32f2f;
    border-radius: 3px;
    flex-shrink: 0;
}

.category-title .cat-count {
    font-size: 14px;
    font-weight: 400;
    color: #999;
    margin-left: auto;
    background: #f0f0f0;
    padding: 2px 14px;
    border-radius: 20px;
}

/* ===== ПОДЗАГОЛОВОК (УРОВЕНЬ 3) ===== */
.subsection-title1{
    color: #ffffff;
    margin: 24px 0 14px 0;
    padding: 6px 0 6px 24px;
    background: #EE3524;
    display: flex;
    align-items: center;
    gap: 10px;
}

.subsection-title1 span{
    font-size: 2.5em;    
    font-weight: 800;
    font-family: 'Eurostile';
}

/* ===== ПОДЗАГОЛОВОК (УРОВЕНЬ 3) ===== */
.subsection-title2 {
    color: #333;
    margin: 24px 0 14px 0;
    padding: 6px 0 6px 14px;
    border-left: 4px solid #d32f2f;
    background: #f9f9f9;
    display: flex;
    align-items: center;
    gap: 10px;
}

.subsection-title2 span{
    font-size: 1.5em;    
    font-weight: 800;
    font-family: 'Eurostile';
}

.subsection-title:first-of-type {
    margin-top: 0;
}


/* ===== СЕТКА КАРТОЧЕК ===== */
.products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
    margin-top: 4px;
}

/* ===== КАРТОЧКА ТОВАРА (КВАДРАТНАЯ, БОЛЬШАЯ) ===== */
.product-card {
    background: #ffffff;
    border: 1px solid #eaeaea;
    border-radius: 6px;
    overflow: hidden;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    min-height: 200px;
    min-width: 200px;
    position: relative;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
    cursor: pointer;
}

.product-card:hover {
    border-color: #d32f2f;
    box-shadow: 0 4px 20px rgba(211, 47, 47, 0.10);
    transform: translateY(-3px);
}

/* ===== ОБЛАСТЬ ИЗОБРАЖЕНИЯ ===== */
.product-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    background: #f7f7f7;
    display: flex;
    align-items: center;
    justify-content: center;
    /*padding: 24px;*/
    transition: background 0.2s;
    position: relative;
}

.product-card-body {
    padding: 20px 22px 22px;
}

.product-card-title {
    font-size: 1.15em;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 8px;
    line-height: 1.3;
}

.product-card:hover .product-image {
    background: #f0f0f0;
}

/* Иконка-заглушка (простая геометрия) */
.product-image .placeholder-icon {
    width: 56px;
    height: 56px;
    border: 2px solid #ccc;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bbb;
    font-size: 24px;
    font-weight: 300;
    transition: all 0.2s;
    background: #fff;
}

.product-card:hover .product-image .placeholder-icon {
    border-color: #d32f2f;
    color: #d32f2f;
}

/* Для реальных фото */
.product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ===== НАЗВАНИЕ ТОВАРА ===== */
.product-name {
    padding: 14px 14px 16px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    color: #1a1a1a;
    text-align: center;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    word-break: break-word;
    border-top: 1px solid #f0f0f0;
    background: #fcfcfc;
    min-height: 70px;
    letter-spacing: 0.2px;
}

.product-card:hover .product-name {
    background: #fafafa;
    border-top-color: #e0e0e0;
}

/* ===== АРТИКУЛ (опционально) ===== */
.product-article {
    display: none;
    font-size: 11px;
    color: #aaa;
    margin-top: 4px;
    font-weight: 400;
}






/* ========================================
   МОДАЛЬНОЕ ОКНО ДЛЯ ДОКУМЕНТАЦИИ
   ======================================== */

/* Оверлей (фон) */
.doc-modal-overlay {
    display: none;
    position: fixed;
    z-index: 99999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    align-items: center;
    justify-content: center;
    animation: docModalFadeIn 0.3s ease;
}

/* Само окно */
.doc-modal-box {
    background: #ffffff;
    border-radius: 16px;
    max-width: 520px;
    width: 92%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.4);
    animation: docModalSlideIn 0.35s ease;
}

/* Анимации */
@keyframes docModalFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes docModalSlideIn {
    from {
        opacity: 0;
        transform: translateY(-40px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* ===== ЗАГОЛОВОК ===== */
.doc-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 25px 15px 25px;
    border-bottom: 2px solid #f0f0f0;
    background: #fafafa;
    border-radius: 16px 16px 0 0;
}

.doc-modal-title {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    color: #1a1a2e;
}

/* ===== КНОПКА ЗАКРЫТИЯ ===== */
.doc-modal-close-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px 12px;
    border-radius: 50%;
    transition: background 0.25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.doc-modal-close-btn:hover {
    background: #f0f0f0;
}

.doc-modal-close-icon {
    font-size: 32px;
    font-weight: 300;
    color: #666;
    line-height: 1;
    transition: color 0.25s ease;
}

.doc-modal-close-btn:hover .doc-modal-close-icon {
    color: #c0392b;
}

/* ===== ТЕЛО ОКНА ===== */
.doc-modal-body {
    padding: 25px 25px 30px 25px;
}

.doc-modal-subtitle {
    font-size: 15px;
    color: #555;
    margin-top: 0;
    margin-bottom: 20px;
}

/* ===== СООБЩЕНИЯ ===== */
.doc-modal-success {
    background: #e8f5e9;
    padding: 14px 18px;
    border-radius: 8px;
    border-left: 4px solid #43a047;
    color: #2e7d32;
    font-size: 14px;
    margin-bottom: 18px;
    font-weight: 500;
}

.doc-modal-error {
    background: #ffebee;
    padding: 14px 18px;
    border-radius: 8px;
    border-left: 4px solid #e53935;
    color: #c62828;
    font-size: 14px;
    margin-bottom: 18px;
    font-weight: 500;
}

/* ===== СЕКЦИИ ===== */
.doc-modal-section {
    padding: 18px 0;
}

.doc-modal-border-top {
    border-top: 2px solid #f0f0f0;
    margin-top: 5px;
}

.doc-modal-section-title {
    font-size: 16px;
    font-weight: 600;
    color: #1a1a2e;
    margin-top: 0;
    margin-bottom: 6px;
}

.doc-modal-section-text {
    font-size: 14px;
    color: #666;
    margin-top: 0;
    margin-bottom: 14px;
}

/* ===== ФОРМЫ ===== */
.doc-modal-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.doc-modal-input {
    flex: 1;
    min-width: 180px;
    padding: 12px 16px;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 15px;
    transition: all 0.3s ease;
    outline: none;
    background: #fafafa;
    box-sizing: border-box;
}

.doc-modal-input:focus {
    border-color: #2196f3;
    box-shadow: 0 0 0 4px rgba(33, 150, 243, 0.15);
    background: #fff;
}

.doc-modal-input::placeholder {
    color: #aaa;
}

/* ===== КНОПКИ ===== */
.doc-modal-btn {
    padding: 12px 28px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.doc-modal-btn-blue {
    background: #2196f3;
    color: #fff;
}

.doc-modal-btn-blue:hover {
    background: #1976d2;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.3);
}

.doc-modal-btn-red {
    background: #c0392b;
    color: #fff;
}

.doc-modal-btn-red:hover {
    background: #a93226;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(192, 57, 43, 0.3);
}

.doc-modal-btn:active {
    transform: translateY(0);
}

.doc-modal-hint {
    font-size: 13px;
    color: #999;
    margin-top: 12px;
    margin-bottom: 0;
}

/* Стили для формы Contact Form 7 в модальном окне */
.doc-modal-section .wpcf7-form {
    margin: 0;
}

.doc-modal-section .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 10px;
}

.doc-modal-section .wpcf7-text,
.doc-modal-section .wpcf7-email {
    width: 100%;
    max-width: 300px;
    padding: 12px 16px;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 15px;
    transition: all 0.3s ease;
    outline: none;
    background: #fafafa;
    box-sizing: border-box;
}

.doc-modal-section .wpcf7-text:focus,
.doc-modal-section .wpcf7-email:focus {
    border-color: #2196f3;
    box-shadow: 0 0 0 4px rgba(33, 150, 243, 0.15);
    background: #fff;
}

.doc-modal-section .wpcf7-submit {
    padding: 12px 28px;
    background: #2196f3;
    color: #fff;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.doc-modal-section .wpcf7-submit:hover {
    background: #1976d2;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.3);
}

.doc-modal-section .wpcf7-not-valid-tip {
    color: #c62828;
    font-size: 13px;
    margin-top: 5px;
}

.doc-modal-section .wpcf7-response-output {
    padding: 12px 16px;
    border-radius: 8px;
    margin: 10px 0;
    font-size: 14px;
}

.doc-modal-section .wpcf7-mail-sent-ok {
    border-color: #43a047;
    background: #e8f5e9;
    color: #2e7d32;
}

.doc-modal-section .wpcf7-validation-errors {
    border-color: #e53935;
    background: #ffebee;
    color: #c62828;
}

/* Блокировка кнопки после отправки */
.doc-modal-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}





/* ===== АДАПТИВ ===== */
@media (max-width: 600px) {
    .doc-modal-box {
        width: 96%;
        border-radius: 12px;
    }
    
    .doc-modal-header {
        padding: 16px 18px 12px 18px;
    }
    
    .doc-modal-title {
        font-size: 18px;
    }
    
    .doc-modal-body {
        padding: 18px 18px 22px 18px;
    }
    
    .doc-modal-form {
        flex-direction: column;
        align-items: stretch;
    }
    
    .doc-modal-input {
        min-width: unset;
        width: 100%;
    }
    
    .doc-modal-btn {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
    
    .doc-modal-close-icon {
        font-size: 28px;
    }
}





/* ===== АДАПТИВ ===== */

/* =========================================================
   ПЛАНШЕТ
   768px — 1199px
   ========================================================= */

@media (min-width: 768px) and (max-width: 1199px) {

    .main-container {
        margin-left: 3vw;
        margin-right: 3vw;
        padding-bottom: 0px;
        margin-bottom: 0px;

    }


    .main-logo {
        max-width: 50%;
        margin-top: 4vh;
        margin-bottom: 5vh;
    }

    .under-logo {
        margin-bottom: 0px;
        height: 9vh;
        position: relative; /* Для правильного позиционирования дочерних элементов */
    }

    .rect-1, .rect-1-mobile {
        display: none;
    }


    .rect-1-tablet {
        position: absolute;
        overflow: visible;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; /* 100% от родительской высоты */
    }

    .menu-wrapper {
        position: absolute;
        left: 72%;
        top: 0;
        width: 25%;
        height: 9vh;
        margin-left: 0;
        z-index: 5;
        overflow: visible; /* Важно для видимости расширенного фона */
        transition: all 0.5s ease; /* Плавная анимация для всех свойств */
    }

    .menu-frame, .menu-frame-mobile {
        display: none;
    }

    .menu-frame-tablet{
        position: absolute;
        overflow: visible;
        display: block;
        top: 0;
        left: -10px;
        width: 100%;
        height: 100%;
        transition: all 0.5s ease; /* Плавная анимация для всех свойств */
    }

        /* При открытом меню - сдвигаем полигон влево */
    .menu-wrapper.expanded .menu-frame-tablet {
        left: -25vw; /* Сдвигаем влево на 100px */
    }


    /* ---------- БУРГЕР ---------- */

    .burger-menu {
        position: absolute;
        right: 7px;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 23px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        cursor: pointer;
        z-index: 20;
    }

    .burger-menu span {
        display: block;
        width: 100%;
        height: 3px;
        background: #333;
        border-radius: 2px;
        transition:
            transform 0.3s ease,
            opacity 0.3s ease;
    }

    /* ---------- АНИМАЦИЯ БУРГЕРА ---------- */

    .burger-menu.active span:nth-child(1) {
        transform: translateY(10px) rotate(45deg);
    }

    .burger-menu.active span:nth-child(2) {
        opacity: 0;
    }

    .burger-menu.active span:nth-child(3) {
        transform: translateY(-10px) rotate(-45deg);
    }


    /* ---------- ОСНОВНОЕ МЕНЮ ---------- */

    .menu-header {
        display: none;
        position: absolute;
        right: 0;
        top: 100%; /* ← ПРИВЯЗКА К НИЖНЕЙ ГРАНИЦЕ РОДИТЕЛЯ! */
        min-width: 300px;
        height: auto;
        margin: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: #ffffff;
        border: 2px solid #aaa;
        border-top: none; /* Убираем верхнюю рамку, чтобы сливалось с полигоном */
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
        z-index: 100;
        transition: all 0.5s ease; /* Добавляем плавность */
    }

    .menu-header.active {
        display: flex;
    }

    .menu-header li {
        padding: 10px 20px; /* Отступ справа для выравнивания */
        text-align: right; /* Выравнивание текста вправо */
        list-style: none;
        border-bottom: 1px solid #eee;
    }
    
    .menu-header li:last-child {
        border-bottom: none;
    }

    .menu-header li a {
        display: block;
        font-size: 1.1em;
        color: #333;
        text-decoration: none;
        text-align: right; /* Текст вправо */
        padding: 5px 0;
        transition: color 0.3s ease;
    }

    .menu-header li:hover {
        text-decoration: none;
    }

    .search-item {
        display: none;
    }

        /* ====================================================
       ПОИСК
       ===================================================== */

    .search-item-mobile{
        display: block;
    }

    .search-wrapper {
        min-width: 180px;
        padding: 1px 1px 1px 10px;
        border: 1px solid #c5c5c5;
        border-radius: 0.5px;
    }

    .search-input {
        min-width: 100px;
        font-size: 13px;
        padding: 6px 8px;
    }

    .search-input::placeholder {
        font-size: 13px;
    }

    .search-btn {
        padding: 5px 14px;
        font-size: 12px;
        margin-right: 6px;
    }

    .search-icon {
        font-size: 14px;
    }


    /* =====================================================
       ПЕРВЫЙ БЛОК
       ===================================================== */

    .block-1 {
        flex-direction: column;
        padding-top: 14vh;
        padding-bottom: 8vh;
    }


    /* ---------- ТЕКСТ ---------- */

    .block-1-text {
        max-width: 80%;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .block-1-left-h1 {
        font-size: 5vh;
    }

    .block-1-left-p {
        font-size: 2.5vh;
        margin-bottom: 15px;
    }

    .block-1-text-button {
        padding: 11px 22px;
        font-size: 2vh;
        border: none;
        cursor: pointer;
    }

    .index--block-1-image {
        display: block;
        max-width: 100%;
        height: auto;
        margin-top: 20%;
    }

    .index--block-1-industry-cards-container {
        flex: 0 0 100%;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-top: 35vh;
        z-index: 1;
        width: 100%;

    }

    .index--block-1-industry-card-wrapper {
        position: relative;
        height: 15vh;

    }

    .index--block-1-industry-card {
        width: 100%;
        height: 100%;
        cursor: pointer;
        overflow: hidden;
        padding: 1vh 1vw;
    }

    .index--block-1-industry-card-content {
        min-height: 115px;
        padding: 10px;
        display: flex;
        flex-direction: column;
    }

    

    .index--block-1-industry-card-title {
        font-size: 2.2vh;
        max-width: 100%;
        margin-bottom: 0.1vh;
    }

    .index--block-1-industry-card-icon {
        width: 5vw;
        height: 5vw;
        flex-shrink: 0;
    }

    .index--block-1-industry-card-icon img {
        width: 100%;
        height: 100%;
    }

    .index--block-1-industry-card-shadow {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 100%;
        height: 100%;
        transition: all 0.3s ease;
    }


    /* ================БЛОК 2========================== */
    .block-2{
        padding-top: 6vh;
    }

    .block-2-text {
        flex-direction: column;
    }

    .block-2-text .h1-h2{
        margin-bottom: 6vh;
    }

    .h1-h2 h1 {
        font-size: 2.5em;
    }

    .h1-h2 h2 {
        font-size: 2em;
        margin-bottom: 2vh;
    }

    .block-2-text-right {
        font-size: 1.2em;
        margin-bottom: 8vh;
    }

    .block-2-text-right p {
        margin-bottom: 0vh;
    }

    .block-2-polygons {
        margin-top: -5vh;
        justify-content: flex-end;
        opacity: 0.30; 
    }

    .rect-2 {
        max-width: 160px; 
    }

    .rect-2:nth-child(2),
    .rect-2:nth-child(3) {
        margin-left: -12vw;
    }

    /* ================БЛОК 3========================== */
    /* Отступы блока */
    .block-3 {
        padding-top: 15vh;
       
    }

    /* Верхняя часть: заголовок и переключатель друг под другом */
    .comparison-header {
        flex-direction: column;
        align-items: stretch;
        gap: 7vh;
        margin-bottom: 7vh;
    }

    .toggle-buttons {
        width: 100%; /* на всю ширину */
        background: transparent; /* убираем фон, чтобы не мешал переносу */
        gap: 2vw; /* маленький зазор между строками */
        clip-path: none;
    }

    /* Кнопки внутри переключателя */
    .toggle-btn {
        clip-path: none;
        flex: 1 1 45%; /* каждая занимает ~45% ширины */
        min-width: 40%; /* минимальная ширина */
        min-height: 40px;
        font-size: 2.2em;
        padding: 1.2vh 0.5vw;
        white-space: normal; /* разрешаем перенос текста внутри */
        margin: 0.2vh 0;
    }

    /* Делаем так, чтобы кнопки в ряду были равномерно распределены */
    .toggle-btn:nth-child(1),
    .toggle-btn:nth-child(2) {
        flex: 1 1 48%;
    }

    .toggle-btn:nth-child(3),
    .toggle-btn:nth-child(4) {
        flex: 1 1 48%;
    }

    /* Нижняя часть: текст и слайдер друг под другом */
    .comparison-content {
        grid-template-columns: 1fr; /* Одна колонка */
        gap: 25px;
    }

    /* Текст — на всю ширину */
    .content-text {
        max-width: 100%;
        height: auto;
        padding: 0 2vw;
        align-items: center;
    }

    /* Заголовки внутри текста */
    .text-content h3 {
        font-size: 2.5em;
        margin-bottom: 12px;
    }

    .text-content p {
        font-size: 2.2em;
        line-height: 1.5;
        margin-bottom: 2vh
    }

    /* Кнопка под текстом — на всю ширину, по центру */
    .content-text .block-1-text-button {
        max-width: 50%;
        width: 100%;
        margin-top: 15px;
        padding: 14px 20px;
        text-align: center;
        font-size: 1em;
    }

    /* Слайдер — на всю ширину */
    .content-slider {
        width: 70%;
        justify-self: center;
    }

    .slide img {
        aspect-ratio: 16/9;
        height: auto;
    }

    /* Индикаторы (кружочки) */
    .slider-dots {
        bottom: 12px;
        gap: 8px;
    }

    .dot {
        width: 7px;
        height: 7px;
    }

    .dot.active {
        transform: scale(1.2);
    }

    /* ================БЛОК 4========================== */
    .block-4 {
        padding-top: 15vh;
    }

    .block-4--top {
        display: flex;
    }

    .block-4--top h1 {
        font-size: 1.5em;
    }

    .gradient-line--white-red {
        display: flex;
        background: #e9ecef;
        clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
        width: 50vw;
        height: 1vh;
        margin-left: auto; /*ПРИРАВНИВАЕТ К ПРАВОМУ КРАЮ*/
        background: linear-gradient(90deg, white 10%, #ff4444 70%, #EE3524 100%);
    }

    .gradient-line--red-white {
        display: flex;
        background: #e9ecef;
        clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
        width: 100%;
        height: 1vh;
        margin-top: 7.5vh;
        background: linear-gradient(90deg, #EE3524 0%, #ff4444 50%,  white 98%);
    }


    /* Карточки в столбец */
    .block-4-stages {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        padding-bottom: 3vh;
        padding-top: 3vh;
    }

    .analysis-card {
        position: relative;
        width: 24%;
        height: auto;
        min-height: 10vh;
        background: white;
        border: 1px solid #b0b0b0;
        overflow: hidden;

        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        transition: all 0.3s ease;  
    }

    .analysis-card:hover {
        transform: translateY(-10px);
        box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    }

    .card-icon {
        position: absolute;
        top: 7vh;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
    }

    .header-label {
        font-size: 1.2em;
    }

    .card-icon img {
        height: 10vh;
        display: block;
    }

    .card-content {
        position: relative;
        z-index: 10;
        height: 100%; /* важно — чтобы карточка знала высоту */
    }

    .card-title {
        font-family: 'Eurostile Extended Black';
        font-size: 1em;
        color: #ffffff;
        /*margin-bottom: 4vh;*/
        line-height: 1.3;
        margin-bottom: auto;

    }

    .card-description {
        font-size: 1em;
        color: #ffffff;
        line-height: 1.5;
        width: 100%;
        word-wrap: break-word;
        box-sizing: border-box;
        overflow-wrap: break-word;   /* Альтернативный вариант (работает в новых браузерах) */
        margin-top: auto;
    }

    .card-text{
        margin-top: 10vh;
        padding: 2vw;
        display: flex;
        flex-direction: column;
        height: 65%;
                    overflow-wrap: break-word;   /* Альтернативный вариант (работает в новых браузерах) */

    }

    .card-shapes {
        display: flex;
        flex-direction: column;
        position: relative;
        justify-content: flex-end; /* прижимает содержимое к низу */
        height: 100%; /* занимает всю высоту родителя */
    }

    .trapezoid-gray {
        margin-top: 21vh;
        height: 38vh;
        background: #4D5361;
        clip-path: polygon(0% 0%, 100% 30%, 100% 100%, 0% 100%);
        z-index: 2;
    }

    .trapezoid-red {
        height: 38vh;
        background: #e63946;
        clip-path: polygon(0% 30%, 100% 0%, 100% 100%, 0% 100%);
        margin-top: -38vh;
        z-index: 1;
    }


    .block-5 {
        padding-top: 10vh;
    }

    .block-5--top {
        margin-bottom: 7vh;
        flex-direction: column;
        gap: 1.5vh;

    }

    .block-5--top h1 {
        font-size: 1.5em;
    }

    .all-news { /*кнопка "все новости"*/
        font-weight: 600;
        transition: 0.3s;
        font-size: 1.8em;
    }

    .all-news:hover {
        transform: translateX(5px);
    }

    /* Сетка */
    .news-grid {
        display: flex;
        flex-direction: column;
    }

    /* Строка новостей */
    .news-row {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
    }

    /* Первая строка: большая новость + 2 маленькие */
    .news-row:first-child {
        grid-template-columns: 2.12fr 1fr 1fr;
    }

    /* Карточка новости */
    .news-card {
        position: relative;
        overflow: hidden;
        text-decoration: none;
        display: block;
        aspect-ratio: 4 / 3;
    }

    /* Большая новость */
    .news-card-large {
        aspect-ratio: auto;
        height: 100%;
    }

    /* Фото на фоне */
    .news-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-size: cover;
        background-position: center;
        transition: transform 0.5s ease;
    }

    .news-card:hover .news-image {
        transform: scale(1.05);
    }

    /* Затемнение */
    .news-card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.2));
        z-index: 1;
    }

    /* Контент */
    .news-content {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        padding: 2vw;
        z-index: 2;
        color: white;
    }

    .news-date {
        font-size: 1em;
        opacity: 0.8;
        display: block;
        /*margin-bottom: 8px;*/
        margin-bottom: auto;
    }

    .news-title {
        font-size: 1em;
        margin: 0 0 12px 0;
        line-height: 1.3;
        color:white;
    }

    /* Большая новость - крупный текст */
    .news-card-large .news-title {
        font-size: 1.2em;
        margin-bottom: 1.5vh;
    }

    .news-card-large .news-date {
        font-size: 0.9em;
    }

    .news-btn {
        display: inline-block;
        padding: 0.6vh 1.6vw;
        background: rgba(255,255,255,0.2);
        color: white;
        text-decoration: none;
        font-size: 0.8em;
        transition: 0.3s;
    }

    .news-card-large .news-btn {
        padding: 0.6vh 1.6vw;
        font-size: 1em;
    }

    .news-card:hover .news-btn {
        background: #e74c3c;
        transform: translateX(5px);
    }

    .block-5--bottom{
        display: flex;
        margin-top: 8vh;
        justify-content:end;
    }

    /* ===== БЛОК 6 ===== */
    .block-6 {
        padding-top: 4vh;
        padding-bottom: 4vh;
    }

    .block-6--top {
        margin-bottom: 3vh;
    }

    .block-6--top h1 {
        font-size: 1.8em;
    }

    .partners-track {
        flex-wrap: wrap; /* Включаем перенос */
        justify-content: center; /* Центрируем логотипы */
        animation: none !important; /* Отключаем анимацию */
        width: 100%; /* Растягиваем на всю ширину */
        gap: 20px; /* Увеличиваем отступы для читаемости */
    }
    
    .partners-slider:hover .partners-track {
        animation-play-state: running; /* Анимация всё равно отключена */
    }
    
    .partner-logo {
        width: calc(33.33% - 20px); /* 3 логотипа в ряд */
        height: 120px;
        flex-shrink: 1; /* Разрешаем сжиматься */
        min-width: 100px;
    }
    
    .partner-logo--large {
        width: calc(33.33% - 20px);
    }

    .partner-logo img {
        opacity: 0.8;
    }

    .footer {
        padding-top: 15vh;
        padding-bottom: 15vh;
        padding-left: 4vw;
        padding-right: 4vw;
        flex-direction: column;
        gap: 4vh;
        align-items: center;
        text-align: center;
    }

    .footer--left {
        margin-right: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer--logo {
        max-width: 180px;
        margin-bottom: 3vh;
    }

    .contact-info {
        align-items: center;
        text-align: center;
        gap: 6px;
        margin-bottom: 3vh;
        width: 100%;
    }

    .contact-label {
        font-size: 1.2em;
    }

    .contact-text {
        font-size: 0.9em;
        line-height: 1.5;
    }

    .messengers {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .messengers-icons {
        gap: 25px;
        justify-content: center;
    }

    .messenger-icon {
        width: 35px;
        height: 35px;
    }

    .footer--left p {
        font-size: 0.8em;
        margin-top: 2vh;
    }

    .footer--left p br {
        display: none;
    }

    .footer--right {
        margin-top: 0;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px 20px;
        align-items: center;
        text-align: center;
        padding-top: 3vh;
        border-top: 1px solid rgba(255, 255, 255, 0.15);
    }

    .footer-news {
        font-size: 0.85em;
        padding: 5px 0;
        transition: color 0.3s ease;
    }

    .footer-news:hover {
        color: #e63946;
    }

    /* Убираем пустой <p> в меню */
    .footer--right p.footer-news {
        display: none;
    }

    /* Политика конфиденциальности занимает 2 колонки */
    .footer--right a:last-child {
        grid-column: 1 / -1;
        margin-top: 5px;
        font-size: 0.75em;
        opacity: 0.7;
    }

    .footer--right a:last-child:hover {
        opacity: 1;
    }



    /*==========================О КОМПАНИИ===================*/
    /* ===== БЛОК 1 ===== */
    .about-company--block-1 {
        flex-direction: column;
        gap: 3vh;
        margin-top: 3vh;
    }

    .about-company--block-1-text {
        max-width: 100%;
    }

    .h1-line {
        border-left: 1.4vw solid #EE3524;
        padding-left: 1.2em;
        margin-bottom: 7vh;
        margin-top: 6vh;

        font-family: 'Eurostile Extended Black';
        font-size: 2.3em;
        color: #2C2C2C; 
    }

    .about-company--block-1-text-left p {
        font-size: 1.5em;
        line-height: 1.6;
    }

    .about-company--block-1-image {
        max-height: 420px;
        width: 100%;
        object-fit: cover;
    }

    /* ===== БЛОК 2 ===== */
    .about-company--block-2 {
        margin-bottom: 0vh;
    }

    .about-company--block-2-grid-3 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 5vw;
        margin: 1.8em 0 0.5em 0;
    }

    .about-company--block-2-card {
        padding: 1.5em 1.2em;
        text-align: center;
    }

    .stat-number p {
        font-size: 1em;
    }

    .stat-label {
        font-size: 1em;
        padding-bottom: 2vh;
    }

    .about-company--block-2-card p:last-child {
        font-size: 1em;
        margin: 0;
    }

    /* ===== БЛОК 3 (структура) ===== */
    .about-company--block-3 {
        margin-bottom: 6vh;
        padding-top: 7vh;
    }

    .about-company-h1 {
        font-size: 2em;
        text-align: center;
        width: 100%;
    }

    .scheme-container {
        margin-top: 2vh;
        padding: 20px 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    /* Красный блок */
    .logo-block {
        border-radius: 0px;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        min-height: 50px;
        color: white;

        padding: 4vh 2vw;
        background: #E21A1A;
        box-shadow: 0 2px 8px rgba(198, 40, 40, 0.25);
        max-width: 50vw;
    }

    .logo-block .org-name {
        font-size: 1.5em;
    }

    .logo-block .org-contacts .contact-item {
        font-size: 2em;
        gap: 6px;
        justify-content: flex-start;
        text-align: left;
    }

    .logo-block .org-contacts .contact-item svg {
        width: 16px;
        height: 16px;
        margin-top: 4px;
        flex-shrink: 0;
    }

    .logo-block .org-contacts .contact-item a {
        font-size: 16px;
    }

    .logo-block .org-contacts .contact-item span {
        font-size: 16px;
    }

    /* Стрелки */
    .arrows-wrapper {
        position: relative;
        width: 80%;
        display: flex;
        justify-content: center;
        height: 20vh;
        z-index: 10;
    }

    .arrows-wrapper svg {
        width: 100%;
        max-width: 100%;
        height: 20vh;
    }

    /* Сетка организаций */
    .org-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 2vw;
        margin-top: 2vh;
        z-index: 2;
    }

    .org-card {
        background: #ffffff;
        border: 2px solid #d1d1d1;
        border-radius: 2px;
        padding: 4vh 20px 4vh;
        text-align: center;
        transition: all 0.3s ease;
        cursor: default;
        position: relative;
        min-height: 100px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .org-card:hover {
        transform: translateY(-2px);
    }

    .org-name {
        font-size: 1.3em;
    }

    .org-hint {
        font-size: 1em;
        margin-top: 4px;
    }

    
    /* Контакты при наведении */
    .org-contacts .contact-item {
        font-size: 12px;
        gap: 6px;
        justify-content: flex-start;
        text-align: left;
    }

    .org-contacts .contact-item svg {
        width: 15px;
        height: 15px;
        margin-top: 4px;
        flex-shrink: 0;
    }

    .org-contacts .contact-item a {
        font-size: 12px;
        word-break: break-all;
    }

    .org-contacts .contact-item span {
        font-size: 12px;
        word-break: break-all;
    }

    /* Адаптация при наведении на мобилке */
    .org-card:hover .org-contacts {
        max-height: 300px;
        opacity: 1;
        margin-top: 12px;
        padding-top: 12px;
    }

    .org-card .org-contacts {
        max-height: 0;
        opacity: 0;
        transition: all 0.3s ease;
    }


    /*========================КАТАЛОГ======================*/

    /* ===== КАТАЛОГ (дерево) ===== */
    .all-catalog--panel {
        width: 100%;
        padding: 1.2em;
    }
    
    .all-catalog--grid {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
        gap: 0.8em;
    }
    
    .all-catalog--card {
        padding: 0.7em 0.4em;
    }
    
    .all-catalog--card .all-catalog--product-name {
        font-size: 0.8em;
    }
    
    .all-catalog--label {
        font-size: 0.8em;
        padding: 0.3em 0.4em 0.3em 0.2em;
    }
    
    .all-catalog--label .all-catalog--name {
        white-space: normal; /* Разрешаем перенос названий */
        word-break: break-word;
    }
    
    /* ===== СЕТКА ТОВАРОВ ===== */
    .products-grid {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
        gap: 15px;
    }
    
    .product-card {
        min-height: 180px;
        min-width: unset;
    }
    
    .product-card-body {
        padding: 15px 18px 18px;
    }
    
    .product-card-title {
        font-size: 1em;
    }
    
    .product-name {
        font-size: 13px;
        padding: 12px 12px 14px;
        min-height: 60px;
    }
    
    .product-image img {
        padding: 12px;
    }
    
    /* ===== СТРАНИЦА ТОВАРА ===== */
    .product-section {
        grid-template-columns: 1fr 1.2fr;
        gap: 30px;
        margin-top: 4vh;
        margin-bottom: 6vh;
    }
    
    .product-gallery-wrapper .red-square-top-left,
    .product-gallery-wrapper .red-square-bottom-right {
        width: 60px;
        height: 60px;
    }
    
    .product-gallery-wrapper .red-square-top-left {
        top: -12px;
        left: -12px;
    }
    
    .product-gallery-wrapper .red-square-bottom-right {
        bottom: -12px;
        right: -12px;
    }
    
    .product-info .product-name {
        font-size: 1.6em;
    }
    
    .product-info .product-description {
        font-size: 0.95em;
    }
    
    .product-info .product-code-label {
        font-size: 0.9em;
    }

    .title {
        font-size: 1.2em;
        margin-top: 4vh;
    }

    .specs-header span{
        padding: 10px 18px;
        font-size: 1.2em;
    }

    .spec-row {
        padding: 8px 18px;
        font-size: 0.95em;
        min-height: 38px;
    }

    .spec-row.child {
        padding-left: 35px;
    }

    .spec-row.parent .spec-label {
        font-size: 0.8em;
    }

    .spec-row.parent .spec-value {
        font-size: 0.8em;
    }

    .doc-contact{
        margin-top: 1vh;
        font-size: 1.8em;
    }

    .doc-btn {
        padding: 12px 28px;
        font-size: 15px;
    }

    /*============ВАКАНСИИ============*/
    /* Блок преимуществ - 2 колонки */
    .vakancii--benefits {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
        margin-bottom: 4vh;
    }
    
    .vakancii--card {
        padding: 5.5vh 1.1vw;
        max-width: 100%;
        margin: 0;
        width: 100%;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        border-radius: 2px;
        box-shadow: none; 
        border-color: #e7e7e7;

    }
    
    /* Иконка по центру */
    .vakancii--icon {
        width: 20vw;
        max-height: 10vh;
        margin-bottom: 1vh;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
    }
    
    .vakancii--icon img {
        max-width: 45px;
        width: 100%;
        height: auto;
    }
    
    .vakancii--card h3 {
        font-size: 16px;
        margin-bottom: 1.6vh;
        text-align: center;
        width: 100%;
    }
    
    .vakancii--card p {
        font-size: 0.75em;
        line-height: 1.4;
        text-align: center;
        width: 100%;
    }
    
    /* Вакансии - 1 колонка */
    .vakancii--grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .vakancii--vacancy {
        padding: 25px 20px;
        border-left: none;
        border: 2px solid #e7e7e7;
        background: #ffffff;
        border-radius: 1px;
    }
    
    .vakancii--vacancy h3 {
        font-size: 20px;
    }
    
    /* Кнопки в одной строке */
    .vakancii--actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        width: 100%;
        margin-top: 15px;
    }
    
    .vakancii--toggle-btn,
    .vakancii--btn {
        width: 100%;
        justify-content: center;
        padding: 10px 15px;
        font-size: 14px;
        box-sizing: border-box;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;

        
    }
    
    .vakancii--toggle-btn {
        padding: 10px 15px;
        gap: 8px;
    }
    
    .vakancii--toggle-icon {
        margin-left: 5px;
    }
    
    .vakancii--btn {
        padding: 10px 15px;
    }
    
    /* Детали вакансии */
    .vakancii--details-inner {
        padding-top: 15px;
    }
    
    .vakancii--details-inner h4 {
        font-size: 16px;
        margin: 15px 0 8px;
    }
    
    .vakancii--details-inner ul {
        padding-left: 20px;
    }
    
    .vakancii--details-inner ul li {
        font-size: 14px;
        margin-bottom: 4px;
    }
    
    /* Заголовок преимуществ */
    .subsection-title3 span {
        display: none;
    }


    .subsection-title3--h1-line{
        display: block;
        border-left: 1.4vw solid #EE3524;
        padding-left: 1.2em;
        margin-bottom: 6vh;
        margin-top: 6vh;

        font-family: 'Eurostile Extended Black';
        font-size: 2.2em;
        color: #2C2C2C;

    }

    .contacts--grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .contacts--title {
        font-size: 1.8em;
        margin-bottom: 30px;
    }
    
    .contacts--main-card {
        padding-left: 20px;
    }
    
    .contacts--name {
        font-size: 22px;
    }
    
    .contacts--badge{
        font-size: 0.7em;
    }

    .contacts--icon {
        width: 18px;
        height: 18px;
    }
    
    .contacts--item {
        gap: 10px;
        padding: 3px 0;
       font-size: 0.8em;

    }
    
    .contacts--value {
        font-size: 1em;
    }

    .contacts--value a{
        font-size: 1em;
    }


    .contacts--phones{
        font-size: 0.8em;
    }
    
    .contacts--branches {
        gap: 20px;
    }

    .contacts-branch-info{
        font-size: 1em;
    }
    
    .contacts--branch-item {
        padding-bottom: 15px;
    }
    
    .contacts--branch-name {
        font-size: 1em;
    }

    .contacts--branch-line {
        font-size: 1em;
    }

    .contacts--branch-address {
        font-size: 1em;
    }

    .scheme--address{
        font-size: 2em;
    }

    .contacts--branch-phone a {
        font-size: 1em;
    }
    
    .contacts--icon-small {
        width: 14px;
        height: 14px;
    }
    
    /* Схемы */
    .scheme--grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 5vw;
    }

    .scheme--card{
        display: flex;
        flex-direction: column;
        height: 100%; /* Важно: карточка должна иметь высоту */
    }

    .scheme--map{
        margin-top: auto; /* Прижимает карту к низу */  
    }

    .scheme--title {
        font-size: 1.2em;
    }

    .scheme--address {
        font-size: 1em;
    }

    .scheme--container{
        margin-bottom: 3vh;
        margin-top: 10vh;
    }

    /*==========ОДНА НОВОСТЬ===========*/
    .one-news--title {
        font-size: 2em;
    }

    .one-news--layout {
        gap: 30px;
    }

    .one-news--content p {
        font-size: 1em;
    }

    .one-news--date-badge {
        font-size: 0.9em;
        padding: 8px 16px;
    }

    /* ---------------- ОБЩИЕ НОВОСТИ ----------------- */
    .all-news---block {
        margin-top: 6vh;
    }

    /* ----- Сетка: 2 колонки ----- */
    .all-news---grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }

    /* ----- Карточка новости (белая плашка в серой рамке) ----- */
    .all-news---card {
        background: #ffffff;
        border: 1px solid #ddd;
        border-radius: 8px;
        overflow: hidden;
        text-decoration: none;
        color: inherit;
        transition: box-shadow 0.3s, transform 0.3s;
        display: flex;
        flex-direction: column;
    }

    .all-news---card:hover {
        box-shadow: 0 10px 35px rgba(0,0,0,0.12);
        transform: translateY(-5px);
    }

    /* ----- Изображение ----- */
    .all-news---image {
        width: 100%;
        height: 220px;
        background-size: cover;
        background-position: center;
        background-color: #e9ecef;
        flex-shrink: 0;
    }

    /* ----- Контент ----- */
    .all-news---content {
        padding: 20px 25px 25px;
        display: flex;
        flex-direction: column;
        flex: 1;
    }

    .all-news---date {
        font-size: 14px;
        color: #070707;
        margin-bottom: 10px;
        font-weight: 500;
    }

    .all-news---title-text {
        font-size: 18px;
        font-weight: 600;
        color: #222;
        line-height: 1.5;
        margin: 0 0 15px 0;
        flex: 1;
    }

    /* ----- Кнопка "Подробнее" ----- */
    .all-news---btn {
        display: inline-block;
        padding: 6px 20px;
        color: rgb(27, 27, 27);
        background: #1e1e1e11;
        text-decoration: none;
        font-size: 1em;
        transition: 0.3s;
        width: auto; /* ← ГЛАВНОЕ: ширина по содержимому */
        max-width: 100%; /* ← чтобы не вылезала за пределы */
        align-self: flex-start; /* ← прижимаем к левому краю (опционально) */
        white-space: nowrap; /* ← чтобы текст не переносился */
    }


    .all-news---card:hover .all-news---btn {
        background: #e74c3c;
        color: #FFFFFF;
        transform: translateX(5px);
    }


    /* ----- Кнопка "Все новости" ----- */
    .all-news---bottom {
        text-align: center;
        margin-top: 40px;
    }

    .all-news---all-link {
        display: inline-block;
        padding: 14px 40px;
        background: #c70000;
        color: #fff;
        text-decoration: none;
        border-radius: 8px;
        font-weight: 600;
        font-size: 16px;
        transition: background 0.3s;
    }

    .all-news---all-link:hover {
        background: #8B0000;
    }

    /*===============ВАКАНСИИ======================*/
    /* ----- Сетка: 2 колонки ----- */
    .vakancii--grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    /* ----- Карточка вакансии ----- */
    .vakancii--vacancy {
        background: rgba(247, 247, 247, 0.856);
        border-left: 8px solid #EE3524;
        padding: 35px 30px;
        border-radius: 6px;
        display: flex;
        flex-direction: column;
        transition: box-shadow .3s;
        box-sizing: border-box;
    }

    .vakancii--vacancy:hover {
        box-shadow: 0 15px 40px rgba(0,0,0,.12);
    }

    /* Контентная часть (заголовок + краткое описание) */
    .vakancii--content {
        flex: 1;
    }

    .vakancii--vacancy h3 {
        font-size: 2.5em;
        margin: 0 0 12px 0;
        color: #222;
    }

    .vakancii--short-desc {
        color: #666;
        font-size: 1em;
        line-height: 1.6;
        margin: 0 0 20px 0;
    }

    /* ----- Кнопки внизу карточки ----- */
    .vakancii--actions {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-top: 10px;
        flex-wrap: wrap;
    }

    /* Кнопка "Подробнее" */
    .vakancii--toggle-btn {
        display: inline-flex;
        align-items: center;
        background: #ffffff;
        border: 2px solid #EE3524;
        padding: 10px 2px;
        border-radius: 4px;
        cursor: pointer;
        font-weight: 600;
        transition: all .3s;
    }

    .vakancii--toggle-text{
        font-size: 1.2em;
    }

    .vakancii--toggle-btn:hover {
        background: #e8e8e8;
        border-color: #EE3524;
    }

    .vakancii--toggle-icon {
        display: inline-block;
        font-size: 12px;
        transition: transform .3s;
    }

    .vakancii--toggle-btn.active .vakancii--toggle-icon {
        transform: rotate(180deg);
    }

    .vakancii--toggle-btn.active {
        border-color: #c70000;
        background: #fff0f0;
    }

    /* Кнопка "Откликнуться" */
    .vakancii--btn {
        display: inline-block;
        padding: 10px 30px;
        background: #EE3524;
        color: white;
        border-radius: 6px;
        transition: .3s;
        font-weight: bold;
        text-decoration: none;
        border: none;
        cursor: pointer;
        font-size: 2.2em;

    }

    .vakancii--btn:hover {
        background: #8B0000;
        color: white;
    }

    /* ----- Скрытый блок с деталями (раскрывается под карточкой) ----- */
    .vakancii--details {
        max-height: 0;
        overflow: hidden;
        transition: max-height .5s ease, padding .3s ease;
        padding: 0;
        margin-top: 0;
    }

    .vakancii--details.open {
        max-height: 2000px;
        padding-top: 20px;
    }

    .vakancii--details-inner {
        border-top: 2px solid #eee;
        padding-top: 20px;
    }

    .vakancii--details-inner h4 {
        color: #8B0000;
        font-size: 17px;
        margin: 20px 0 10px;
    }

    .vakancii--details-inner h4:first-child {
        margin-top: 0;
    }

    .vakancii--details-inner ul {
        padding-left: 25px;
        margin: 0 0 15px;
    }

    .vakancii--details-inner ul li {
        color: #555;
        margin-bottom: 6px;
        line-height: 1.6;
    }

        /*===============Автматика и телемеханика=========*/
    /* ===== ПОДЗАГОЛОВОК (УРОВЕНЬ 3) ===== */
    .subsection-title1 span{
        font-size: 3em;    
        font-weight: 800;
        font-family: 'Eurostile';
    }

    /* ===== ПОДЗАГОЛОВОК (УРОВЕНЬ 3) ===== */
    .subsection-title2 span{
        font-size: 2.5em;    
        font-weight: 800;
        font-family: 'Eurostile';
    }   


    .products-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(20vw, 1fr));
        gap: 20px;
        margin-top: 4px;
    }

    .product-card-body {
        padding: 2vh 2vw 2vh;
    }


}






























/* =========================================================
   ТЕЛЕФОН
   до 767px
   ========================================================= */

@media (max-width: 767px) {

    .main-container {
        margin-left: 2vw;
        margin-right: 2vw;
        padding-bottom: 0px;
        margin-bottom: 0px;
    }

    .main-container--katalog{
        margin-left: 0vw;
        margin-right: 0vw;
        display: block;
        padding-bottom: 0px;
        padding-left: 0px;
        padding-right: 0px;

    }


    .header-logo-map {
        align-items: center;
    }

    .main-logo {
        width: 55%;
        max-width: 230px;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .under-logo{
        margin-bottom: 0px;
        height: 5vh;
        
    }

    .rect-1, .rect-1-tablet {
        display: none;
    }

    .rect-1-mobile {
        position: absolute;
        overflow: visible;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        
    }



    /* Блок меню — 25%, после 5% промежутка */
    .menu-wrapper {
        position: absolute;
        left: 75%;
        top: 0;
        height: 5vh;
        width: 25%;
        margin-left: 0;
        z-index: 5;
        overflow: visible; /* Важно для видимости расширенного фона */
        transition: all 0.5s ease; /* Плавная анимация для всех свойств */
    }

    .menu-frame, .menu-frame-tablet {
        display: none;
    }

    .menu-frame-mobile{
        position: absolute;
        overflow: visible;
        display: block;
        top: 0;
        left: -10px;
        width: 100%;
        height: 100%;
        transition: all 0.5s ease; /* Плавная анимация для всех свойств */
    }

    /* При открытом меню - сдвигаем полигон влево */
    .menu-wrapper.expanded .menu-frame-mobile {
        left: -125px; /* Сдвигаем влево на 100px */
    }

    
    /* =======================БУРГЕР=========================== */

    .burger-menu {
        position: absolute;
        right: 7px;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 23px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        cursor: pointer;
        z-index: 20;
    }

    .burger-menu span {
        display: block;
        width: 100%;
        height: 3px;
        background: #333;
        border-radius: 2px;
        transition:
            transform 0.3s ease,
            opacity 0.3s ease;
    }

    .burger-menu.active span:nth-child(1) {
        transform: translateY(10px) rotate(45deg);
    }

    .burger-menu.active span:nth-child(2) {
        opacity: 0;
    }

    .burger-menu.active span:nth-child(3) {
        transform: translateY(-10px) rotate(-45deg);
    }


    /* =====================================================
       МОБИЛЬНОЕ МЕНЮ
       ===================================================== */

    .menu-header {
        display: none;
        position: absolute;
        right: 0;
        top: 100%; /* ← ПРИВЯЗКА К НИЖНЕЙ ГРАНИЦЕ РОДИТЕЛЯ! */
        min-width: 200px;
        height: auto;
        margin: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: #ffffff;
        border: 2px solid #aaa;
        border-top: none; /* Убираем верхнюю рамку, чтобы сливалось с полигоном */
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
        z-index: 100;
        transition: all 0.5s ease; /* Добавляем плавность */
    }

    .menu-header.active {
        display: flex;
    }


    .menu-header li {
        padding: 10px 20px; /* Отступ справа для выравнивания */
        text-align: right; /* Выравнивание текста вправо */
        list-style: none;
        border-bottom: 1px solid #eee;
    }

    .menu-header li:last-child {
        border-bottom: none;
    }

    .menu-header li a {
        display: block;
        font-size: 15px;
        color: #333;
        text-decoration: none;
        text-align: right; /* Текст вправо */
        padding: 5px 0;
        transition: color 0.3s ease;
    }

    .menu-header li:hover {
        text-decoration: none;
    }

    .search-item {
        display: none;
    }

    /* Показываем мобильную версию */
    .search-item-mobile {
        display: flex;
        flex: 1;
        max-width: 100%;
    }

    .search-item-mobile .search-wrapper {
        min-width: unset;
        width: 100%;
        padding: 1px 1px 1px 10px;
        height: 30px;
        border-radius: 1px;
        border: 1px solid #c5c5c5;

    }

    .search-item-mobile .search-input {
        min-width: unset;
        width: 100%;
        font-size: 1em;
        padding: 5px 2px;
    }

    .search-item-mobile .search-input::placeholder {
        font-size: 12px;
    }

    .search-item-mobile .search-btn {
        padding: 1px 5px;
        font-size: 0.7em;
        margin-right: 1px;
        white-space: nowrap;
    }

    .search-item-mobile .search-icon {
        font-size: 14px;
        margin-right: 2px;
    }



    /* ================ПЕРВЫЙ БЛОК========================== */

    .block-1 {
        flex-direction: column;
        padding-top: 7vh;
        padding-bottom: 8vh;
    }

    .block-1-text {
        max-width: 80%;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .block-1-left-h1 {
        font-size: 27px;
    }

    .block-1-left-p {
        font-size: 15px;
        margin-bottom: 15px;
    }

    .block-1-text-button {
        padding: 11px 22px;
        font-size: 14px;
        border: none;
        cursor: pointer;
    }

    .index--block-1-image {
        display: block;
        max-width: 100%;
        height: auto;
        max-height: 280px;
        margin-top: 50%;
    }

    .index--block-1-industry-cards-container {
        width: 100%;
        margin-top: 17vh;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 25px;
    }

    .index--block-1-industry-card-wrapper {
        width: 100%;
        height: 12vh;
    }

    .index--block-1-industry-card {
        width: 100%;
        max-height: 100px;
        cursor: pointer;
        overflow: hidden;
        padding: 1vh 1vw;
    }

    .index--block-1-industry-card-content {
        min-height: 115px;
        padding: 10px;
        display: flex;
        flex-direction: column;
    }

    .index--block-1-industry-card-title {
        font-size: 0.8em;
        max-width: 100%;
        margin-bottom: 0.1vh;
    }

    .index--block-1-industry-card-icon {
        width: 10vw;
        height: 10vw;
        flex-shrink: 0;
    }

    .index--block-1-industry-card-icon img {
        width: 100%;
        height: 100%;
    }

    .index--block-1-industry-card-shadow {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 100%;
        height: 100%;
        transition: all 0.3s ease;
    }


    /* ================БЛОК 2========================== */
    .block-2{
        padding-top: 5vh;
    }

    .block-2-text {
        flex-direction: column;
    }

    .block-2-text .h1-h2{
        margin-bottom: 4vh;
    }

    .h1-h2 h1 {
        font-size: 1.3em;
    }

    .h1-h2 h2 {
        font-size: 1em;
        margin-bottom: 1vh;
    }

    .block-2-text-right {
        margin-bottom: 3vh;
    }

    .block-2-text-right p {
        font-size: 1em;
    }

    .block-2-polygons {
        margin-top: -5vh;
        justify-content: flex-end;
        opacity: 0.15; 
    }

    .rect-2 {
        max-width: 120px; 
    }

    .rect-2:nth-child(2),
    .rect-2:nth-child(3) {
        margin-left: -12vw;
    }

    /* ================БЛОК 3========================== */
    /* Отступы блока */
    .block-3 {
        padding-top: 5vh;
        padding-bottom: 5vh;
        
    }

    /* Верхняя часть: заголовок и переключатель друг под другом */
    .comparison-header {
        flex-direction: column;
        align-items: stretch;
        gap: 3vh;
        margin-bottom: 5vh;
    }

    .toggle-buttons {
        width: 100%; /* на всю ширину */
        background: transparent; /* убираем фон, чтобы не мешал переносу */
        gap: 1.5vh; /* маленький зазор между строками */
        clip-path: none;
    }

    /* Кнопки внутри переключателя */
    .toggle-btn {
        clip-path: none;
        flex: 1 1 45%; /* каждая занимает ~45% ширины */
        min-width: 40%; /* минимальная ширина */
        min-height: 40px;
        font-size: 0.85em;
        padding: 1.2vh 0.5vw;
        white-space: normal; /* разрешаем перенос текста внутри */
        margin: 0.2vh 0;
    }

     

    /* Делаем так, чтобы кнопки в ряду были равномерно распределены */
    .toggle-btn:nth-child(1),
    .toggle-btn:nth-child(2) {
        flex: 1 1 48%;
    }

    .toggle-btn:nth-child(3),
    .toggle-btn:nth-child(4) {
        flex: 1 1 48%;
    }

    /* Нижняя часть: текст и слайдер друг под другом */
    .comparison-content {
        grid-template-columns: 1fr; /* Одна колонка */
        gap: 25px;
    }

    /* Текст — на всю ширину */
    .content-text {
        max-width: 100%;
        height: auto;
        padding: 0 2vw;
    }

    /* Заголовки внутри текста */
    .text-content h3 {
        font-size: 1.3em;
        margin-bottom: 12px;
    }

    .text-content p {
        font-size: 0.95em;
        line-height: 1.5;
        margin-bottom: 15px;
    }

    /* Кнопка под текстом — на всю ширину, по центру */
    .content-text .block-1-text-button {
        max-width: 100%;
        width: 100%;
        margin-top: 15px;
        padding: 14px 20px;
        text-align: center;
        font-size: 1em;
    }

    /* Слайдер — на всю ширину */
    .content-slider {
        width: 100%;
    }

    .slide img {
        aspect-ratio: 16/9;
        height: auto;
    }

    /* Индикаторы (кружочки) */
    .slider-dots {
        bottom: 12px;
        gap: 8px;
    }

    .dot {
        width: 7px;
        height: 7px;
    }

    .dot.active {
        transform: scale(1.2);
    }

    /* ================БЛОК 4========================== */
    .block-4 {
        padding-top: 4vh;
        padding-bottom: 4vh;
    }

    .block-4--top {
        flex-direction: column;
        margin-bottom: 4vh;
        gap: 2vh;
    }

    .block-4--top h1 {
        font-size: 1.3em;
    }

    /* Убираем градиентные линии */
    .gradient-line--white-red,
    .gradient-line--red-white {
        display: none;
    }

    /* Карточки в столбец */
    .block-4-stages {
        flex-direction: column;
        align-items: stretch;
        gap: 2.5vh;
        padding: 0;
    }

    .analysis-card {
        width: 100%;
        height: auto;
        min-height: 20vh;
        display: flex;
        flex-direction: row-reverse; /* Иконка справа, текст слева */
        align-items: stretch;
        padding: 0;
        border: none;
        transform: none;
        background: transparent;
        overflow: visible;
        box-shadow: none;
        position: relative;
    }

    .analysis-card:hover {
        transform: none;
        box-shadow: none;
    }

    /* ===== ИКОНКА СПРАВА (на белом фоне) ===== */
    .card-icon {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        flex: 0 0 25vw;
        width: 100%;
        max-width: 15vw;
        min-height: 20vh;
        display: flex;
        align-items: center;
        justify-content: center;
        background: white;
        border: 1px solid #d0d0d0;
        border-left: none;
        z-index: 3;
        margin: 0;
        padding: 2vh 2vw;
    }

    .card-icon img {
        height: 12vw;
        width: auto;
        max-height: 70px;
        display: block;
        margin-right: 5vw;
    }

    /* ===== КОНТЕНТ С ТРАПЕЦИЯМИ (СЛЕВА) ===== */
    .card-content {
        position: relative;
        height: auto;
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
        overflow: hidden;
        min-height: 20vh;
    }

    /* Включаем трапеции обратно */
    .card-shapes {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        height: 100%;
        width: 100%;
        z-index: 0;
        
    }

    /* Серая трапеция — скошена слева, ровная справа */
    .trapezoid-gray {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #4D5361;
        clip-path: polygon(0% 0%, 100% 0%, 70% 100%, 0% 100%);
        margin: 0;
        z-index: 2;
    }

    /* Красная трапеция — скошена слева, ровная справа (чуть смещена для эффекта) */
    .trapezoid-red {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #EE3524;
        clip-path: polygon(0% 0%, 70% 0%, 100% 100%, 0% 100%);
        /* ровная сторона справа, скос слева, но с другим углом */
        margin: 0;
        z-index: 1;
    }

    /* Текст поверх трапеций */
    .card-text {
        position: relative;
        z-index: 3;
        margin: 0;
        padding: 3vh 4vw 2vh 4vw;
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex: 1;

    }

    .card-title {
        color: #ffffff; /* Белый на тёмном фоне */
        font-size: 0.8em;
        margin-bottom: 1vh;
        margin-top: 0;
        font-family: 'Eurostile Extended Black', sans-serif;
    }


    .card-description {
        max-width: 85%;
        color: #f0f0f0; /* Светлый текст */
        font-size: 0.75em;
        margin: 0;

    }


    .block-5 {
        padding-top: 4vh;
        padding-bottom: 4vh;
    }

    .block-5--top {
        margin-bottom: 3vh;
        flex-direction: column;
        gap: 1.5vh;

    }

    .block-5--top h1 {
        font-size: 1.3em;
    }

    .all-news {
        font-size: 1em;
        align-self: center;
    }

    /* Все новости в один столбец */
    .news-grid {
        gap: 15px;
    }

    .news-row {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .news-card {
        aspect-ratio: 16 / 9;
        width: 100%;
    }

    .news-card-large {
        aspect-ratio: 16 / 9;
        height: auto;
    }

    .news-card-large .news-title {
        font-size: 0.85em;
    }

    /* Скрываем новости 4, 5, 6, 7 */
    .news-row:last-child .news-card {
        display: none;
    }

    .news-title {
        font-size: 0.85em;
        margin-bottom: 8px;
    }

    .news-content {
        padding: 12px 15px;
    }

    .news-date, .news-card-large .news-date{
        font-size: 0.65em;
        margin-bottom: 4px;
    }

    .news-btn, .news-card-large .news-btn {
        padding: 4px 12px;
        font-size: 0.65em;
    }

    .block-5--bottom {
        margin-top: 4vh;
        justify-content: center;
    }

    /* ===== БЛОК 6 ===== */
    .block-6 {
        padding-top: 4vh;
        padding-bottom: 4vh;
    }

    .block-6--top {
        margin-bottom: 3vh;
    }

    .block-6--top h1 {
        font-size: 1.3em;
    }

    

    .partner-logo img {
        opacity: 0.8;
    }

    

    .footer {
        padding-top: 4vh;
        padding-bottom: 4vh;
        padding-left: 4vw;
        padding-right: 4vw;
        flex-direction: column;
        gap: 4vh;
        align-items: center;
        text-align: center;
    }

    .footer--left {
        margin-right: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer--logo {
        max-width: 180px;
        margin-bottom: 3vh;
    }

    .contact-info {
        align-items: center;
        text-align: center;
        gap: 6px;
        margin-bottom: 3vh;
        width: 100%;
    }

    .contact-label {
        font-size: 1.2em;
    }

    .contact-text {
        font-size: 0.9em;
        line-height: 1.5;
    }

    .messengers {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .messengers-icons {
        gap: 25px;
        justify-content: center;
    }

    .messenger-icon {
        width: 35px;
        height: 35px;
    }

    .footer--left p {
        font-size: 0.8em;
        margin-top: 2vh;
    }

    .footer--left p br {
        display: none;
    }

    .footer--right {
        margin-top: 0;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px 20px;
        align-items: center;
        text-align: center;
        padding-top: 3vh;
        border-top: 1px solid rgba(255, 255, 255, 0.15);
    }

    .footer-news {
        font-size: 0.85em;
        padding: 5px 0;
        transition: color 0.3s ease;
    }

    .footer-news:hover {
        color: #e63946;
    }

    /* Убираем пустой <p> в меню */
    .footer--right p.footer-news {
        display: none;
    }

    /* Политика конфиденциальности занимает 2 колонки */
    .footer--right a:last-child {
        grid-column: 1 / -1;
        margin-top: 5px;
        font-size: 0.75em;
        opacity: 0.7;
    }

    .footer--right a:last-child:hover {
        opacity: 1;
    }


    /* ===== БЛОК 1 ===== */
    .about-company--block-1 {
        flex-direction: column;
        gap: 3vh;
        margin-top: 3vh;
    }

    .about-company--block-1-text {
        max-width: 100%;
    }

    .h1-line {
        border-left: none;
        border-bottom: 3px solid #EE3524;
        padding-left: 0;
        padding-bottom: 0.8vh;
        font-size: 1.3em;
        text-align: center;
        margin-bottom: 3vh;
        margin-top: 3vh;
    }

    .about-company--block-1-text-left p {
        font-size: 0.95em;
        line-height: 1.6;
    }

    .about-company--block-1-image {
        max-height: 220px;
        width: 100%;
        object-fit: cover;
        border-radius: 8px;
    }

    /* ===== БЛОК 2 ===== */
    .about-company--block-2 {
        margin-bottom: 5vh;
    }

    .about-company--block-2-grid-3 {
        grid-template-columns: 1fr;
        gap: 1.5em;
        margin: 1em 0 0.5em 0;
    }

    .about-company--block-2-card {
        padding: 1.5em 1.2em;
        text-align: center;
    }

    .stat-number p {
        font-size: 2em;
    }

    .stat-label {
        font-size: 1em;
        padding-bottom: 2vh;
    }

    .about-company--block-2-card p:last-child {
        font-size: 0.9em;
        margin: 0;
    }

    /* ===== БЛОК 3 (структура) ===== */
    .about-company--block-3 {
        margin-bottom: 6vh;
    }

    .about-company-h1 {
        font-size: 1.3em;
        text-align: center;
        width: 100%;
    }

    .scheme-container {
        padding: 10px 5px;
        width: 100%;
        align-items: center;
        margin-top: 3vh;
    }

    /* Красный блок */
    .logo-block {
        max-width: 100%;
        padding: 2.5vh 4vw;
        min-height: auto;
        width: 100%;
        border-radius: 6px;
    }

    .logo-block .org-name {
        font-size: 1.1em;
    }

    .logo-block .org-contacts .contact-item {
        font-size: 12px;
        gap: 6px;
        justify-content: flex-start;
        text-align: left;
    }

    .logo-block .org-contacts .contact-item svg {
        width: 16px;
        height: 16px;
        margin-top: 4px;
        flex-shrink: 0;
    }

    .logo-block .org-contacts .contact-item a {
        font-size: 12px;
    }

    .logo-block .org-contacts .contact-item span {
        font-size: 12px;
    }

    /* Стрелки */
    .arrows-wrapper {
        height: 50px;
        margin: 0;
    }

    .arrows-wrapper svg {
        height: 50px;
        max-width: 100%;
    }

    /* Сетка организаций */
    .org-grid {
        grid-template-columns: 1fr;
        gap: 15px;
        width: 100%;
        margin-top: 1vh;
    }

    .org-card {
        padding: 2.5vh 15px;
        min-height: 60px;
        border-width: 1.5px;
    }

    .org-card:hover {
        transform: translateY(-2px);
    }

    .org-name {
        font-size: 1.1em;
    }

    .org-hint {
        font-size: 0.8em;
        margin-top: 4px;
    }

        /* Скрываем левую и правую стрелки */
    .arrows-wrapper svg line:first-child,
    .arrows-wrapper svg line:last-child {
        display: none;
        /* или opacity: 0; */
    }
    
    /* Или через классы, если у них есть атрибуты */
    .arrows-wrapper svg line:nth-child(0),
    .arrows-wrapper svg line:nth-child(2) {
        display: none;
    }

    /* Контакты при наведении */
    .org-contacts .contact-item {
        font-size: 12px;
        gap: 6px;
        justify-content: flex-start;
        text-align: left;
    }

    .org-contacts .contact-item svg {
        width: 15px;
        height: 15px;
        margin-top: 4px;
        flex-shrink: 0;
    }

    .org-contacts .contact-item a {
        font-size: 12px;
        word-break: break-all;
    }

    .org-contacts .contact-item span {
        font-size: 12px;
        word-break: break-all;
    }

    /* Адаптация при наведении на мобилке */
    .org-card:hover .org-contacts {
        max-height: 300px;
        opacity: 1;
        margin-top: 12px;
        padding-top: 12px;
    }

    .org-card .org-contacts {
        max-height: 0;
        opacity: 0;
        transition: all 0.3s ease;
    }


    /*----------КАТАЛОГ------------*/

    .all-catalog--app {
        flex-direction: column;
    }

    /* Левая панель (дерево) */
    .all-catalog--tree {
        padding: 1.6em 1em 2em 0em;
        width: 100%;
        height: auto;
        max-height: 40vh;
        border-right: none;
        border-bottom: 1px solid #e0e4ec;
        overflow-y: auto;
        position: sticky;
        top: 0;
        background: #ffffff;
        z-index: 10;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    }

    .all-catalog--tree::-webkit-scrollbar {
        width: 3px;
    }

    .all-catalog--h1-line{
        border-left: none;
        border-bottom: 3px solid #EE3524;
        padding-left: 0;
        padding-bottom: 0.8vh;
        font-size: 1.3em;
        text-align: center;
        margin-bottom: 3vh;
        margin-top: 1vh;
    }

    

    .all-catalog--list ul {
        padding-left: 0.8em;
    }

    .all-catalog--label {
        font-size: 0.75em;
        padding: 0.3em 0.3em;
        gap: 0.3em;
        border-left-width: 2px;
    }

    .all-catalog--label .all-catalog--arrow {
        font-size: 0.45em;
        width: 0.8em;
    }

    .all-catalog--label .all-catalog--count {
        font-size: 0.5em;
        padding: 0.05em 0.4em;
    }

    .all-catalog--children.all-catalog--open {
        max-height: 600px;
    }

    /* Правая панель */
    .all-catalog--panel {
        width: 100%;
        height: auto;
        min-height: 50vh;
        padding: 1em 0.8em 1.5em;
        overflow-y: visible;
    }

    .all-catalog--panel-header {
        padding-bottom: 0.4em;
        margin-bottom: 1em;
        flex-wrap: wrap;
        gap: 0.5em;
    }

    .all-catalog--panel-header .all-catalog--category-title {
        font-size: 0.9em;
        font-weight: 600;
    }

    .all-catalog--grid {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
        gap: 0.6em;
    }

    .all-catalog--card {
        padding: 0.6em 0.3em 0.5em;
        border-radius: 8px;
    }

    .all-catalog--card .all-catalog--emoji {
        font-size: 1.3em;
        margin-bottom: 0.1em;
    }

    .all-catalog--card .all-catalog--product-name {
        font-size: 0.7em;
        font-weight: 500;
    }

    .all-catalog--card .all-catalog--product-code {
        font-size: 0.5em;
        padding: 0.05em 0.4em;
    }

    .all-catalog--empty {
        padding: 2em 0;
        font-size: 0.8em;
    }

    .products-grid {
        grid-template-columns: repeat(2, 1fr); /* ровно 2 столбца */
        gap: 12px;
        margin-top: 4px;
    }

    .product-card {
        min-height: 150px;
        min-width: 0;
        border-radius: 4px;
        border-width: 1px;
    }

    .product-card:hover {
        transform: none; /* убираем подъём на мобилке */
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
    }

    .product-card-body {
        padding: 10px 12px 14px;
    }

    .product-card-title {
        font-size: 0.85em;
        margin-bottom: 4px;
        line-height: 1.2;
    }

    .product-image {
        aspect-ratio: 1 / 1;
    }

    .product-image img {
        padding: 10px;
        object-fit: contain;
    }

    /* Скрываем артикул на мобилке (если он отображается) */
    .product-article {
        display: none;
    }

    /* Пустое состояние */
    .all-catalog--empty {
        padding: 2em 0;
        font-size: 0.85em;
    }


.partners-track {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        align-items: center !important;
        animation: none !important;
        width: 100% !important;
        gap: 15px !important;
        padding: 10px 0;
    }
    
    .partner-logo {
        flex: 0 0 calc(50% - 15px) !important;
        width: calc(50% - 15px) !important;
        max-width: 160px;
        height: 100px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        transition: all 0.3s ease;
    }
    
    .partner-logo--large {
        flex: 0 0 calc(50% - 15px) !important;
        width: calc(50% - 15px) !important;
        max-width: 160px;
    }
    
    .partner-logo img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
        opacity: 1; /* Убираем затемнение на мобилках */
        transition: all 0.3s ease;
    }
    /*==================КАРТОЧКА ТОВАРА ОДНОГО=================*/

    .product-section {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-top: 3vh;
        margin-bottom: 4vh;
    }

    /* Левая часть с фото */
    .product-gallery-wrapper {
        max-width: 400px;
        margin: 0 auto;
        width: 100%;
    }

    .product-gallery-sticky {
        position: relative;
        top: 0;
    }

    .product-gallery-wrapper .red-square-top-left,
    .product-gallery-wrapper .red-square-bottom-right {
        width: 50px;
        height: 50px;
    }

    .product-gallery-wrapper .red-square-top-left {
        top: -10px;
        left: -10px;
    }

    .product-gallery-wrapper .red-square-bottom-right {
        bottom: -10px;
        right: -10px;
    }

    .product-gallery {
        aspect-ratio: 1 / 1;
        max-width: 100%;
    }

    /* Правая часть */
    .product-info {
        gap: 15px;
    }

    .product-info .product-code-label {
        font-size: 0.85em;
    }
    

    .product-info .product-name {
        font-size: 1.5em;
        margin-bottom: 1.5vh;
    }

    .product-info .product-name br {
        display: none; /* Убираем перенос строки на мобильных */
    }

    .product-info .product-description {
        font-size: 0.95em;
        line-height: 1.6;
    }

    /* Заголовки */
    .title {
        font-size: 1.2em;
        margin-top: 3vh;
        margin-bottom: 0.5vh;
        padding-top: 0.5vh;
    }

    /* Таблица характеристик */
    .specs-block {
        max-width: 100%;
        overflow-x: auto; /* Горизонтальная прокрутка при необходимости */
        -webkit-overflow-scrolling: touch;
    }

    .specs-header {
        grid-template-columns: 1.5fr 1fr;
        padding: 8px 12px;
        font-size: 0.85em;
        min-width: 320px; /* Минимальная ширина для читаемости */
    }



    .specs-table {
        min-width: 320px;
    }

    .spec-row {
        grid-template-columns: 1.5fr 1fr;
        padding: 8px 12px;
        font-size: 0.85em;
        min-height: 36px;
    }

    .spec-row.child {
        padding-left: 20px;
    }

    .spec-row.parent .spec-label {
        font-size: 0.9em;
    }

    .spec-row.parent .spec-value {
        font-size: 0.9em;
    }

    .spec-row.parent {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .spec-value {
        font-size: 0.85em;
    }

    /* Документация */
    .docs-list {
        margin-top: 0;
    }

    .doc-btn {
        padding: 12px 24px;
        font-size: 14px;
        width: 100%;
        justify-content: center;
    }

    .doc-contact {
        font-size: 0.9em;
    }


    /*=====================НОВОСТИ=============*/
    .all-news---grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .all-news---title {
        font-size: 28px;
    }
    
    .all-news---image {
        height: 180px;
    }
    
    .all-news---title-text {
        font-size: 16px;
    }


    /*
    /* Блок преимуществ - 2 колонки */
    .vakancii--benefits {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
        margin-bottom: 4vh;
    }
    
    .vakancii--card {
        padding: 1.5vh 1.1vw;
        max-width: 100%;
        margin: 0;
        width: 100%;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        border-radius: 2px;
        box-shadow: none; 
        border-color: #e7e7e7;

    }
    
    /* Иконка по центру */
    .vakancii--icon {
        width: 20vw;
        max-height: 10vh;
        margin-bottom: 1vh;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
    }
    
    .vakancii--icon img {
        max-width: 45px;
        width: 100%;
        height: auto;
    }
    
    .vakancii--card h3 {
        font-size: 16px;
        margin-bottom: 1.6vh;
        text-align: center;
        width: 100%;
    }
    
    .vakancii--card p {
        font-size: 0.75em;
        line-height: 1.4;
        text-align: center;
        width: 100%;
    }
    
    /* Вакансии - 1 колонка */
    .vakancii--grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .vakancii--vacancy {
        padding: 25px 20px;
        border-left: none;
        border: 2px solid #e7e7e7;
        background: #ffffff;
        border-radius: 1px;
    }
    
    .vakancii--vacancy h3 {
        font-size: 20px;
    }
    
    /* Кнопки в одной строке */
    .vakancii--actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        width: 100%;
        margin-top: 15px;
    }
    
    .vakancii--toggle-btn,
    .vakancii--btn {
        width: 100%;
        justify-content: center;
        padding: 10px 15px;
        font-size: 14px;
        box-sizing: border-box;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;

        
    }
    
    .vakancii--toggle-btn {
        padding: 10px 15px;
        gap: 8px;
    }
    
    .vakancii--toggle-icon {
        margin-left: 5px;
    }
    
    .vakancii--btn {
        padding: 10px 15px;
    }
    
    /* Детали вакансии */
    .vakancii--details-inner {
        padding-top: 15px;
    }
    
    .vakancii--details-inner h4 {
        font-size: 16px;
        margin: 15px 0 8px;
    }
    
    .vakancii--details-inner ul {
        padding-left: 20px;
    }
    
    .vakancii--details-inner ul li {
        font-size: 14px;
        margin-bottom: 4px;
    }
    
    /* Заголовок преимуществ */
    .subsection-title3 span {
        font-size: 1.5em;
    }
    
    .subsection-title3 {
        display: none;
    }

    .subsection-title3--h1-line{
        display: block;
        border-left: 1.4vw solid #EE3524;
        padding-left: 1.2em;
        margin-bottom: 6vh;
        margin-top: 6vh;

        font-family: 'Eurostile Extended Black';
        font-size: 1.2em;
        color: #2C2C2C;

    }

    .contacts--grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .contacts--title {
        font-size: 1.8em;
        margin-bottom: 30px;
    }
    
    .contacts--main-card {
        padding-left: 20px;
    }
    
    .contacts--name {
        font-size: 22px;
    }
    
    .contacts--badge{
        font-size: 0.7em;
    }

    .contacts--icon {
        width: 18px;
        height: 18px;
    }
    
    .contacts--item {
        gap: 10px;
        padding: 3px 0;
       font-size: 0.8em;

    }
    
    .contacts--value {
        font-size: 1em;
    }

    .contacts--value a{
        font-size: 1em;
    }


    .contacts--phones{
        font-size: 0.8em;
    }
    
    .contacts--branches {
        gap: 20px;
    }

    .contacts-branch-info{
        font-size: 1em;
    }
    
    .contacts--branch-item {
        padding-bottom: 15px;
    }
    
    .contacts--branch-name {
        font-size: 1em;
    }

    .contacts--branch-line {
        font-size: 1em;
    }

    .contacts--branch-address {
        font-size: 1em;
    }

    .scheme--address{
        font-size: 1em;
    }

    .contacts--branch-phone a {
        font-size: 1em;
    }
    
    .contacts--icon-small {
        width: 14px;
        height: 14px;
    }
    
    /* Схемы */
    .scheme--grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    
    .scheme--title {
        font-size: 16px;
    }

    .scheme--container{
        margin-bottom: 3vh;
    }


    /*===============ОДНА НОВОСТЬ=======*/
    .one-news--card {
        margin-top: 3vh;
        padding: 0 15px;
    }

    .one-news--header {
        flex-direction: column;
        gap: 12px;
        margin-bottom: 24px;
        margin-top: 1vh;
    }

    .one-news--title{
        font-size: 1em;
    }

    .one-news--date-badge {
        font-size: 0.85em;
        padding: 8px 16px;
        align-self: flex-start;
    }

    .one-news--date-badge svg {
        width: 16px;
        height: 16px;
    }

    .one-news--layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .one-news--content p {
        font-size: 0.95em;
        line-height: 1.6;
    }

    .one-news--slider-container {
        border-radius: 12px;
    }

    .one-news--slider-slide {
        aspect-ratio: 16 / 9;
    }

    .one-news--slider-btn {
        width: 36px;
        height: 36px;
        font-size: 18px;
    }

    .one-news--slider-btn.prev {
        left: 10px;
    }

    .one-news--slider-btn.next {
        right: 10px;
    }

    .one-news--slider-dots {
        padding: 12px 0 10px 0;
        gap: 8px;
    }

    .one-news--slider-dot {
        width: 8px;
        height: 8px;
    }

    .one-news--slider-dot.active {
        width: 24px;
    }

    /*===============Автматика и телемеханика=========*/
    /* ===== ПОДЗАГОЛОВОК (УРОВЕНЬ 3) ===== */
    .subsection-title1{
        color: #ffffff;
        margin: 24px 0 14px 0;
        padding: 6px 0 6px 24px;
        background: #EE3524;
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .subsection-title1 span{
        font-size: 1.5em;    
        font-weight: 800;
        font-family: 'Eurostile';
    }

    /* ===== ПОДЗАГОЛОВОК (УРОВЕНЬ 3) ===== */
    .subsection-title2 span{
        font-size: 1.3em;    
        font-weight: 800;
        font-family: 'Eurostile';
    }   

}
