/*NOTE: This file is intended for programmers. Aspro technical support is not advised to work with him.*/

/* Examples (uncomment to use):*/

/* Expand site width */
/* body .wrapper { max-width: 1400px !important;  } */

/* Set site background image */
/* body {  background: url(image_source) top no-repeat; }

/* Hide compare button */
/* a.compare_item { display: none !important;  }*/


/* Отключаем стандартные маркеры */
ul.custom {
    list-style-type: none;
    padding-left: 0;
}

/* Создаём новый маркер с автоматическим размером */
ul.custom li::before {
    content: "";
    display: inline-block;
    background-image: url(/images/main/marker.jpg);
    background-size: contain; /* Автоматический размер */
    margin-right: 10px; /* Отступ между маркером и текстом */
    vertical-align: middle; /* Выравнивание по вертикали */
}




/* ========================================================================== 
                                                                                                                                        
                                                                             ____                                                       
    ,---,                                       ,--,                       ,'  , `.                          ___                        
  .'  .' `\                            ,--,   ,--.'|                    ,-+-,.' _ |                        ,--.'|_                      
,---.'     \                   ,---, ,--.'|   |  | :                 ,-+-. ;   , ||                        |  | :,'             __  ,-. 
|   |  .`\  |              ,-+-. /  ||  |,    :  : '                ,--.'|'   |  ;|              .--.--.   :  : ' :           ,' ,'/ /| 
:   : |  '  |  ,--.--.    ,--.'|'   |`--'_    |  ' |     ,--.--.   |   |  ,', |  ':  ,--.--.    /  /    '.;__,'  /     ,---.  '  | |' | 
|   ' '  ;  : /       \  |   |  ,"' |,' ,'|   '  | |    /       \  |   | /  | |  || /       \  |  :  /`./|  |   |     /     \ |  |   ,' 
'   | ;  .  |.--.  .-. | |   | /  | |'  | |   |  | :   .--.  .-. | '   | :  | :  |,.--.  .-. | |  :  ;_  :__,'| :    /    /  |'  :  /   
|   | :  |  ' \__\/: . . |   | |  | ||  | :   '  : |__  \__\/: . . ;   . |  ; |--'  \__\/: . .  \  \    `. '  : |__ .    ' / ||  | '    
'   : | /  ;  ," .--.; | |   | |  |/ '  : |__ |  | '.'| ," .--.; | |   : |  | ,     ," .--.; |   `----.   \|  | '.'|'   ;   /|;  : |    
|   | '` ,/  /  /  ,.  | |   | |--'  |  | '.'|;  :    ;/  /  ,.  | |   : '  |/     /  /  ,.  |  /  /`--'  /;  :    ;'   |  / ||  , ;    
;   :  .'   ;  :   .'   \|   |/      ;  :    ;|  ,   /;  :   .'   \;   | |`-'     ;  :   .'   \'--'.     / |  ,   / |   :    | ---'     
|   ,.'     |  ,     .-./'---'       |  ,   /  ---`-' |  ,     .-./|   ;/         |  ,     .-./  `--'---'   ---`-'   \   \  /           
'---'        `--`---'                 ---`-'           `--`---'    '---'           `--`---'                           `----'            
                                                                                                                                        
============================================================================ 
*/

/* root */
:root {
    --color-background-light: #FFFFFF;
    --color-background-muted: #F9FAFB;
    --color-primary-brand: #095092;
    --color-accent-energy: #3B82F6;
    --color-text-dark: #111827;
    --color-text-main: #374151;
    --color-text-muted: #6B7280;
    --color-border: #E5E7EB;
    --font-family-mono: 'Roboto Mono', monospace;
    --color-success: #2ecc71;
}
/* ========================================================================== */
/* Шапка (Header) */
/* ========================================================================== */
/* Макет верхней части шапки 
.header__top-inner {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.header__top-item {
    margin-right: 10px;
    display: flex;
    align-items: center;
}
*/
/* Исправление селектора региона */
.region-block {
    display: flex;
    align-items: center;
}

.region-block .top-description {
    margin-bottom: 0;
}


/* ============================================== */
/* БЛОК ТЕЛЕФОНА В ШАПКЕ С ОНЛАЙН-ИНДИКАТОРОМ */
/* ============================================== */

/* Основной контейнер */
.dm_header_phone-wrapper {
    display: flex;
    flex-direction: column;
}

/* Ссылки в телефонном блоке */
.dm_header_phone-wrapper a {
    color: var(--color-text-dark);
    font-weight: 600;
    transition: color 0.2s ease;
}

.dm_header_phone-wrapper a:hover {
    color: var(--color-accent-energy);
}

/* ============================================== */
/* ВЕРХНЯЯ СТРОКА - ТЕЛЕФОН (переопределение Aspro) */
/* ============================================== */

.dm_header_phone-wrapper .phone {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
}

/* Иконка телефона */
.dm_header_phone-wrapper .phone .svg-inline-phone {
    display: flex !important; 
    justify-content: center !important;
    align-items: center !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    margin: 0 10px 0 0 !important;
    padding: 0 !important;
    position: static !important;
}

.dm_header_phone-wrapper .phone .svg-inline-phone svg {
    margin: 0 auto !important;
}

/* ============================================== */
/* НИЖНЯЯ СТРОКА - ОНЛАЙН ИНДИКАТОР */
/* ============================================== */

.dm_header_online-wrapper {
    display: flex !important;
    align-items: center !important;
    margin-top: 5px !important;
    padding: 0 !important;
    position: relative;
}

/* Пульсирующая точка */
.dm_header_dot-pulse {
    position: relative;
    width: 8px !important;
    height: 8px !important;
    background-color: var(--color-success);
    border-radius: 50%;
    box-shadow: 0 0 0 0 rgba(46, 204, 113, 0.7);
    flex-shrink: 0 !important;
    margin-left: 6px !important;
    margin-right: 16px !important;
    animation: dm_header_dotpulse 8s infinite ease-in-out;
}

/* Эффект свечения вокруг точки */
.dm_header_dot-pulse::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 50%;
    background-color: var(--color-success);
    opacity: 0;
    transform: scale(1);
    animation: dm_header_dotpulse_glow 8s infinite ease-in-out;
}

/* Текст индикатора */
.dm_header_indicator-text {
    font-size: 13px;
    color: var(--color-success);
    font-weight: 500;
    letter-spacing: 0.3px;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ============================================== */
/* АНИМАЦИИ - пульсация раз в 8 секунд */
/* ============================================== */

@keyframes dm_header_dotpulse {
    0%, 90%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(46, 204, 113, 0);
    }
    93% {
        transform: scale(1.1);
        box-shadow: 0 0 0 4px rgba(46, 204, 113, 0.4);
    }
    96% {
        transform: scale(0.95);
        box-shadow: 0 0 0 7px rgba(46, 204, 113, 0);
    }
}

@keyframes dm_header_dotpulse_glow {
    0%, 90%, 100% {
        opacity: 0;
        transform: scale(1);
    }
    93% {
        opacity: 0.7;
        transform: scale(1.5);
    }
    96% {
        opacity: 0;
        transform: scale(2);
    }
}
/* ============================================== */
/* АДАПТИВ (при необходимости) */
/* ============================================== */

@media (max-width: 1200px) {
    .dm_header_indicator-text {
        font-size: 12px;
    }
}





/* Email styles */
.dm_header_email-wrapper {
    display: flex;
    align-items: center;
    position: relative;
}

.dm_header_email-wrapper a {
    color: var(--color-text-main);
    transition: color 0.2s ease;
}

.dm_header_email-wrapper a:hover {
    color: var(--color-accent-energy);
}

.copy-email-btn {
    margin-left: 8px;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-muted);
}

.copy-email-btn:hover {
    opacity: 1;
    color: var(--color-primary-brand);
}

/* Button styles */
.header__top-item .dm_header_kp_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    background-color: var(--color-primary-brand);
    border: none;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.header__top-item .dm_header_kp_button:hover {
    background-color: var(--color-accent-energy);
    transform: translateY(-1px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.header__top-item .dm_header_kp_button svg {
    vertical-align: middle;
    margin-right: 5px;
    width: 16px;
    height: 16px;
    stroke: currentColor;
}

.header__top-item .dm_header_kp_button span {
    line-height: 1;
    white-space: nowrap;
}

/* Address block */
.addr-block {
    color: var(--color-text-main);
}

@media (max-width: 991px) {
    .header__top-inner {
        justify-content: center;
    }
    
    .dm_header_phone-wrapper, .dm_header_email-wrapper {
        text-align: center;
    }
}

@media (max-width: 767px) {
    .header__top-item {
        margin: 5px 8px;
    }
    
    .header__top-inner {
        justify-content: center;
        gap: 10px;
    }
}


/* =================================================================== */
/*          БЫСТРЫЙ ПОДБОР                                             */
/* =================================================================== */

.dm_main_page_fastselection-wrapper {
    padding: 80px 0;
    background-color: var(--color-background-muted); /* Чистый фон, отделяющий от верхнего блока */
    border-top: 1px solid var(--color-border);
}

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

.dm_main_page_fastselection__header {
    text-align: center;
    margin-bottom: 40px;
}

.dm_main_page_fastselection__title {
    font-size: 32px; 
    font-weight: 700;
    color: var(--color-text-dark);
    margin-bottom: 10px;
    text-shadow: none; 
}

.dm_main_page_fastselection__subtitle {
    font-size: 16px;
    color: var(--color-text-main);
    max-width: 600px;
    margin: 0 auto;
}

.dm_main_page_fastselection__tabs {
    display: flex;
    justify-content: center;
    margin-bottom: 0; 
    gap: 0;
    position: relative;
    border-radius: 8px 8px 0 0;
    overflow: hidden;
    border: 1px solid var(--color-border);
    border-bottom: none;
}

.dm_main_page_fastselection__tab-text {
    font-weight: 500px;
    color: var(--color-text-dark);
}

.dm_main_page_fastselection__tab {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px 25px;
    background-color: var(--color-background-light);
    color: var(--color-text-main);
    cursor: pointer;
    transition: all 0.2s ease;
    border: 1px solid var(--color-border);
    outline: none;
    flex: 1;
    font-weight: 500;
    font-size: 16px;
    border-bottom: 2px solid transparent;
}

.dm_main_page_fastselection__tab:hover {
    background-color: var(--color-background-muted);
    color: var(--color-text-dark);
}

.dm_main_page_fastselection__tab.active {
    background-color: #FFFFFF;
    color: var(--color-primary-brand);
    font-weight: 600;
    border-bottom-color: var(--color-primary-brand); 
}

.dm_main_page_fastselection__tab-unit {
    margin-left: 8px;
    font-size: 14px;
    font-weight: 500;
    padding: 3px 8px;
    border-radius: 4px;
    background-color: var(--color-background-muted);
    color: var(--color-text-muted);
    transition: all 0.2s ease;
}

.dm_main_page_fastselection__tab.active .dm_main_page_fastselection__tab-unit {
    background-color: var(--color-primary-brand);
    color: #FFFFFF;
}

.dm_main_page_fastselection__content {
    min-height: 150px;
    margin-bottom: 40px;
    background-color: #FFFFFF;
    border-radius: 0 0 8px 8px; /* Скругляем только нижние углы */
    padding: 30px;
    box-shadow: none; /* Убрал лишние тени */
    border: 1px solid var(--color-border);
}

.dm_main_page_fastselection__panel {
    display: none;
    flex-wrap: wrap;
    gap: 12px;
}

.dm_main_page_fastselection__panel.active {
    display: flex;
}

.dm_main_page_fastselection__item {
    padding: 10px 20px;
    background-color: #FFFFFF;
    color: var(--color-primary-brand);
    border-radius: 4px; /* Прямоугольная форма */
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    text-align: center;
    border: 1px solid var(--color-border);
}

.dm_main_page_fastselection__item:hover {
    background-color: var(--color-primary-brand);
    color: #FFFFFF;
    border-color: var(--color-primary-brand);
    transform: translateY(-2px);
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(9, 80, 146, 0.15);
}

/* CTA БЛОК */
.dm_main_page_fastselection__cta {
    display: flex;
    align-items: center;
    background-color: var(--color-primary-brand); /* Инвертированный фон */
    color: #FFFFFF;
    border-radius: 8px;
    padding: 30px;
    gap: 30px;
}

.dm_main_page_fastselection__cta-icon {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.dm_main_page_fastselection__cta-icon svg {
    width: 24px;
    height: 24px;
    color: #FFFFFF;
}

.dm_main_page_fastselection__cta-content { flex: 1; }
.dm_main_page_fastselection__cta-title { font-size: 20px; font-weight: 600; color: #FFFFFF; margin: 0 0 8px 0; }
.dm_main_page_fastselection__cta-text { font-size: 15px; color: rgba(255, 255, 255, 0.8); margin: 0; line-height: 1.5; }

.dm_main_page_fastselection__cta-action { flex-shrink: 0; }
.dm_main_page_fastselection__cta-button {
    display: inline-flex;
    align-items: center;
    background-color: #FFFFFF; /* Белая кнопка на синем фоне */
    color: var(--color-primary-brand);
    font-weight: 600;
    padding: 12px 25px;
    border-radius: 4px;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.dm_main_page_fastselection__cta-button:hover {
    background-color: var(--color-background-muted);
    color: var(--color-text-dark);
    transform: translateY(-2px);
    text-decoration: none;
}

/* АДАПТИВНОСТЬ */
@media (max-width: 768px) {
    .dm_main_page_fastselection-wrapper { padding: 60px 0; }
    .dm_main_page_fastselection__title { font-size: 24px; }
    .dm_main_page_fastselection__tabs { flex-wrap: wrap; }
    .dm_main_page_fastselection__tab { flex-basis: 100%; justify-content: space-between; } /* Растягиваем на всю ширину */
    .dm_main_page_fastselection__item { flex-basis: calc(50% - 6px); }
    .dm_main_page_fastselection__cta { flex-direction: column; text-align: center; gap: 20px; }
}

@media (max-width: 480px) {
    .dm_main_page_fastselection__item { flex-basis: 100%; }
}

/* ========================================================================== 
   Форма сверху футера (квиз 4 вопроса) 
   ========================================================================== */

/* Основные стили */
.dm_quiz_cta_section {
    position: relative;
    padding: 70px 0;
    margin-bottom: -1px;
    overflow: hidden;
}

/* Фоновый слой на всю ширину */
.dm_quiz_cta_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, var(--color-background-muted) 0%, #e6f1fb 100%);
    background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0wIDBoNDB2NDBoLTQweiIvPjxwYXRoIGQ9Ik0zNC45MTQgNS4wODZsLjAwMS0uMDAxYy4yMDkuMjA5LjQxLjQyNi42MDQuNjQ5bC0uMDAyLjAwMmMtLjIwMS0uMjMtLjQwMS0uNDQ2LS42MDMtLjY1em0tMzAgMzBsLjAwMS0uMDAxYy4yMDkuMjA5LjQxLjQyNi42MDQuNjQ5bC0uMDAyLjAwMmMtLjIwMS0uMjMtLjQwMS0uNDQ2LS42MDMtLjY1eiIgZmlsbD0idmFyKC0tY29sb3ItcHJpbWFyeS1icmFuZCkiIGZpbGwtb3BhY2l0eT0iLjA1Ii8+PC9nPjwvc3ZnPg==');
    z-index: -1;
}

/* Стили для плавающих компрессоров */
.floating-compressor {
    position: absolute;
    z-index: 0;
    opacity: 0.05;
    fill: var(--color-primary-brand);
}

.floating-compressor svg {
    width: 100%;
    height: 100%;
}

.floating-compressor-1 {
    width: 300px;
    top: 10%;
    right: 5%;
    animation: float1 20s ease-in-out infinite;
}

.floating-compressor-2 {
    width: 180px;
    bottom: 15%;
    left: 5%;
    transform: rotate(15deg);
    animation: float2 25s ease-in-out infinite;
}

.floating-compressor-3 {
    width: 220px;
    top: 60%;
    right: 15%;
    transform: rotate(-10deg);
    animation: float3 18s ease-in-out infinite;
}

@keyframes float1 {
    0% { transform: translateY(0) rotate(0); }
    50% { transform: translateY(-20px) rotate(5deg); }
    100% { transform: translateY(0) rotate(0); }
}

@keyframes float2 {
    0% { transform: translateY(0) rotate(15deg); }
    50% { transform: translateY(15px) rotate(10deg); }
    100% { transform: translateY(0) rotate(15deg); }
}

@keyframes float3 {
    0% { transform: translateY(0) rotate(-10deg); }
    50% { transform: translateY(-15px) rotate(-5deg); }
    100% { transform: translateY(0) rotate(-10deg); }
}

.dm_quiz_cta_container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 2;
}

.dm_quiz_cta_content {
    background-color: var(--color-background-light);
    border-radius: 16px;
    box-shadow: 0 20px 50px rgba(9,80,146,0.15);
    padding: 40px;
    position: relative;
    overflow: hidden;
    border-left: 5px solid var(--color-primary-brand);
    border-right: 1px solid var(--color-border);
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 30px;
}

.dm_quiz_cta_content::after {
    content: "";
    position: absolute;
    bottom: -50px;
    right: -50px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(9,80,146,0.05) 0%, rgba(9,80,146,0) 70%);
    border-radius: 50%;
    z-index: 1;
}

/* Заголовок и подзаголовок */
.dm_quiz_cta_header {
    text-align: center;
    margin-bottom: 30px;
}

.dm_quiz_cta_title {
    font-size: 32px;
    font-weight: 800;
    color: var(--color-text-dark);
    margin: 0 0 15px 0;
    line-height: 1.2;
}

.dm_quiz_cta_title span {
    color: var(--color-primary-brand);
    background-color: rgba(9,80,146,0.1);
    padding: 0 10px;
    border-radius: 4px;
    position: relative;
    white-space: nowrap;
}

.dm_quiz_cta_subtitle {
    font-size: 18px;
    color: var(--color-text-main);
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

/* Блоки с преимуществами */
.dm_quiz_cta_features {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 30px;
    justify-content: center;
}

.dm_quiz_cta_feature {
    flex: 1;
    min-width: 250px;
    display: flex;
    align-items: flex-start;
    background-color: var(--color-background-muted);
    padding: 20px;
    border-radius: 12px;
    transition: all 0.3s ease;
    border: 1px solid var(--color-border);
}

.dm_quiz_cta_feature:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(9,80,146,0.1);
}

.dm_quiz_cta_feature_icon {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    margin-right: 15px;
    color: var(--color-primary-brand);
    background: rgba(9,80,146,0.1);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

.dm_quiz_cta_feature_icon svg {
    width: 100%;
    height: 100%;
}

.dm_quiz_cta_feature_text {
    flex: 1;
}

.dm_quiz_cta_feature_text strong {
    display: block;
    font-size: 18px;
    margin-bottom: 5px;
    color: var(--color-text-dark);
}

.dm_quiz_cta_feature_text span {
    display: block;
    font-size: 14px;
    color: var(--color-text-main);
    line-height: 1.4;
}

/* Блоки с цифрами */
.dm_quiz_cta_highlights {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin: 30px 0;
}

.dm_quiz_cta_highlight {
    text-align: center;
    flex: 0 1 auto;
    min-width: 140px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 15px;
    position: relative;
}

.dm_quiz_cta_highlight_bordered {
    border-left: 1px solid rgba(9,80,146,0.2);
    border-right: 1px solid rgba(9,80,146,0.2);
    padding: 0 25px;
}

.dm_quiz_cta_highlight_number {
    font-size: 36px;
    font-weight: 800;
    color: var(--color-primary-brand);
    line-height: 1;
    margin-bottom: 5px;
}

.dm_quiz_cta_highlight_badge {
    background-color: #ffcf00;
    color: var(--color-text-dark);
    font-weight: 800;
    font-size: 20px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-bottom: 5px;
    box-shadow: 0 4px 10px rgba(255,207,0,0.3);
}

.dm_quiz_cta_highlight_text {
    font-size: 14px;
    color: var(--color-text-main);
    line-height: 1.3;
}

/* Кнопка действия */
.dm_quiz_cta_action {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;
}

.dm_quiz_cta_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-accent-energy);
    color: var(--color-background-light);
    font-weight: 700;
    font-size: 18px;
    padding: 16px 32px;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.3s ease;
    margin-bottom: 15px;
    box-shadow: 0 5px 20px rgba(59, 130, 246, 0.3);
    min-width: 280px;
}

.dm_quiz_cta_button svg {
    width: 24px;
    height: 24px;
    margin-left: 10px;
    transition: transform 0.3s ease;
}

.dm_quiz_cta_button:hover {
    background-color: #2563eb;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(59, 130, 246, 0.4);
    color: var(--color-background-light);
    text-decoration: none;
}

.dm_quiz_cta_button:hover svg {
    transform: translateX(5px);
}

.dm_quiz_cta_timer {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--color-text-muted);
}

.dm_quiz_cta_timer svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    color: var(--color-primary-brand);
}

.dm_quiz_cta_timer strong {
    color: var(--color-primary-brand);
    font-weight: 700;
    margin-left: 3px;
}

/* Блок с онлайн-трансляцией складов */
.dm_warehouse_livestream {
    background: linear-gradient(135deg, #0a3c69 0%, var(--color-primary-brand) 100%);
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 20px 50px rgba(9,80,146,0.15);
    margin-bottom: 30px;
}

.dm_warehouse_livestream::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgdmlld0JveD0iMCAwIDIwMCAyMDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwMCAwQzQ0LjggMCAwIDQ0LjggMCAxMDBzNDQuOCAxMDAgMTAwIDEwMCAxMDAtNDQuOCAxMDAtMTAwUzE1NS4yIDAgMTAwIDB6bTAgMTgwYy00NC4xIDAtODAtMzUuOS04MC04MHMzNS45LTgwIDgwLTgwIDgwIDM1LjkgODAgODBzLTM1LjkgODAtODAgODB6IiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMDMiLz48L3N2Zz4=');
    background-position: center right;
    background-repeat: no-repeat;
    opacity: 0.3;
}

.dm_warehouse_livestream_content {
    position: relative;
    z-index: 1;
    padding: 30px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.dm_warehouse_livestream_icon {
    flex: 0 0 auto;
    width: 60px;
    height: 60px;
    margin-right: 20px;
    color: var(--color-background-light);
    background: rgba(255,255,255,0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
}
.dm_warehouse_livestream_icon svg {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 10; /* Увеличиваем толщину обводки для лучшей видимости */
}
.dm_warehouse_livestream_icon svg path {
    fill: currentColor;
    stroke: none;
}

.dm_warehouse_livestream_text {
    flex: 1;
    min-width: 0;
    padding-right: 20px;
}

.dm_warehouse_livestream_text h3 {
    color: var(--color-background-light);
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 10px 0;
}

.dm_warehouse_livestream_text p {
    color: rgba(255,255,255,0.8);
    font-size: 15px;
    margin: 0 0 15px 0;
    line-height: 1.4;
}

.dm_warehouse_livestream_badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 5px;
}

.dm_warehouse_livestream_badges span {
    display: inline-block;
    padding: 5px 10px;
    background: rgba(255,255,255,0.1);
    border-radius: 4px;
    font-size: 12px;
    color: var(--color-background-light);
    font-weight: 500;
}

.dm_warehouse_livestream_badges .live-badge {
    background-color: #ff3b30;
    color: var(--color-background-light);
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% { opacity: 0.8; }
    50% { opacity: 1; }
    100% { opacity: 0.8; }
}

.dm_warehouse_livestream_button {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    background-color: var(--color-accent-energy);
    color: var(--color-background-light);
    font-weight: 700;
    padding: 12px 20px;
    border-radius: 6px;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

.dm_warehouse_livestream_button svg {
    width: 20px;
    height: 20px;
    margin-right: 10px;
}

.dm_warehouse_livestream_button:hover {
    background-color: #2563eb;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
    color: var(--color-background-light);
    text-decoration: none;
}

/* Адаптивность */
@media (max-width: 991px) {
    .dm_quiz_cta_section {
        padding: 50px 0;
    }
    
    .dm_quiz_cta_content {
        padding: 30px;
    }
    
    .dm_quiz_cta_title {
        font-size: 28px;
    }
    
    .dm_quiz_cta_subtitle {
        font-size: 16px;
    }
    
    .dm_quiz_cta_feature {
        min-width: 200px;
    }
    
    .dm_warehouse_livestream_content {
        padding: 25px;
    }
    
    .dm_warehouse_livestream_text h3 {
        font-size: 18px;
    }
    
    /* Уменьшаем количество компрессоров на планшетах */
    .floating-compressor-3 {
        display: none;
    }
}

@media (max-width: 767px) {
    .dm_quiz_cta_section {
        padding: 30px 0;
    }
    
    .dm_quiz_cta_content {
        padding: 25px 20px;
    }
    
    .dm_quiz_cta_title {
        font-size: 24px;
    }
    
    .dm_quiz_cta_features {
        flex-direction: column;
        gap: 15px;
    }
    
    .dm_quiz_cta_feature {
        min-width: 100%;
    }
    
    .dm_quiz_cta_highlights {
        flex-direction: column;
        gap: 20px;
        align-items: center;
    }
    
    .dm_quiz_cta_highlight_bordered {
        border-left: none;
        border-right: none;
        border-top: 1px solid rgba(9,80,146,0.2);
        border-bottom: 1px solid rgba(9,80,146,0.2);
        padding: 20px 0;
        width: 80%;
    }
    
    .dm_quiz_cta_button {
        width: 100%;
        font-size: 16px;
        padding: 14px 20px;
    }
    
    .dm_warehouse_livestream_content {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .dm_warehouse_livestream_icon {
        margin: 0 0 15px 0;
    }
    
    .dm_warehouse_livestream_text {
        width: 100%;
        padding-right: 0;
        margin-bottom: 20px;
    }
    
    .dm_warehouse_livestream_button {
        width: 100%;
        justify-content: center;
    }
    
    /* Скрываем компрессоры на мобильных */
    .floating-compressor-1, .floating-compressor-2 {
        display: none;
    }
}

@media (max-width: 480px) {
    .dm_quiz_cta_content {
        padding: 20px 15px;
    }
    
    .dm_quiz_cta_title {
        font-size: 22px;
    }
    
    .dm_quiz_cta_subtitle {
        font-size: 14px;
    }
    
    .dm_quiz_cta_feature_icon {
        width: 40px;
        height: 40px;
    }
    
    .dm_quiz_cta_feature_text strong {
        font-size: 16px;
    }
    
    .dm_warehouse_livestream_content {
        padding: 20px 15px;
    }
    
    .dm_warehouse_livestream_text h3 {
        font-size: 16px;
    }
    
    .dm_warehouse_livestream_text p {
        font-size: 14px;
    }
    
    .dm_warehouse_livestream_badges {
        flex-direction: column;
        gap: 5px;
    }
}








/* ========================================================================== */
/* Страница "О КОМПАНИИ"                                                      */
/* ========================================================================== */

/* Hero-блок */
.dm_about_hero { padding: 80px 20px; position: relative; display: flex; align-items: center; gap: 40px; margin: 0 auto; }
.dm_about_hero_content { flex: 1; max-width: 600px; }
.dm_about_hero_title { font-size: 42px; font-weight: 700; margin-bottom: 20px; line-height: 1.2; }
.dm_about_hero_subtitle { font-size: 18px; color: var(--color-text-main); margin-bottom: 30px; line-height: 1.6; }
.dm_about_hero_buttons { display: flex; gap: 15px; margin-bottom: 20px; }
.dm_about_hero_buttons .btn i { margin-right: 8px; }
.dm_about_hero_image { flex: 1; max-width: 580px; position: relative; }
.dm_about_hero_image img { width: 100%; height: auto; border-radius: 10px; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1); }

/* Общие элементы секций */
.dm_about_section_title { color: var(--color-text-dark); font-size: 2.5rem; font-weight: 700; margin-bottom: 1.5rem; line-height: 1.2; letter-spacing: -0.02em; }
.dm_about_section_title span { color: var(--color-primary-brand); position: relative; display: inline-block; }
.dm_about_section_title span::after { content: ''; position: absolute; bottom: -5px; left: 0; width: 100%; height: 2px; background-color: var(--color-accent-energy); }
.dm_about_section_subtitle { color: var(--color-text-muted); font-size: 1.25rem; margin-bottom: 3rem; max-width: 800px; }
.dm_about_center { text-align: center; margin-left: auto; margin-right: auto; }
.dm_about_image_container { position: relative; border-radius: 8px; overflow: hidden; box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15); }
.dm_about_image_container img { width: 100%; height: auto; display: block; transition: transform 0.8s ease; }
.dm_about_image_container:hover img { transform: scale(1.03); }
.dm_about_image_overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.3) 100%); }

/* Ключевые метрики */
.dm_about_metrics { padding: 80px 20px; }
.dm_about_metrics_grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin: 0 auto; }
.dm_about_metric { background-color: var(--color-background-light); padding: 40px 30px; border-radius: 8px; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05); text-align: center; position: relative; transition: transform 0.3s ease, box-shadow 0.3s ease; border: 1px solid var(--color-border); }
.dm_about_metric:hover { transform: translateY(-5px); box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1); }
.dm_about_metric::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--color-primary-brand), var(--color-accent-energy)); border-radius: 8px 8px 0 0; }
.dm_about_metric_value { font-size: 3.5rem; font-weight: 800; color: var(--color-primary-brand); margin-bottom: 20px; line-height: 1; display: flex; align-items: flex-start; justify-content: center; }
.dm_about_metric_unit { font-size: 1.75rem; font-weight: 600; color: var(--color-accent-energy); margin-left: 5px; }
.dm_about_metric_label { font-size: 1.1rem; color: var(--color-text-main); max-width: 240px; margin: 0 auto; }

/* Философия компании */
.dm_about_philosophy { padding: 80px 20px; background-color: var(--color-background-light); }
.dm_about_philosophy_content { display: flex; gap: 60px; align-items: center; margin: 0 auto; }
.dm_about_philosophy_text { flex: 1; }
.dm_about_philosophy_text p { font-size: 1.1rem; margin-bottom: 1.5rem; color: var(--color-text-main); }
.dm_about_signature { display: flex; align-items: center; margin-top: 30px; }
.dm_about_signature_text { display: flex; flex-direction: column; }
.dm_about_signature_text strong { font-size: 1.25rem; color: var(--color-text-dark); font-weight: 600; }
.dm_about_signature_text span { color: var(--color-text-muted); }
.dm_about_philosophy_image { flex: 0 0 45%; }

/* Наш подход */
.dm_about_approach { padding: 80px 20px; background-color: var(--color-background-muted); }
.dm_about_approach_steps { display: flex; flex-direction: column; gap: 20px; margin-top: 60px; margin-left: auto; margin-right: auto; }
.dm_about_approach_step { display: flex; gap: 30px; background-color: var(--color-background-light); border-radius: 8px; padding: 40px; transition: transform 0.3s ease, box-shadow 0.3s ease; position: relative; }
.dm_about_approach_step:hover { transform: translateX(10px); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.05); }
.dm_about_approach_number { flex: 0 0 auto; font-size: 3rem; font-weight: 800; color: var(--color-primary-brand); opacity: 0.15; line-height: 1; }
.dm_about_approach_content { flex: 1; }
.dm_about_approach_title { font-size: 1.5rem; color: var(--color-primary-brand); margin: 0 0 20px; font-weight: 700; }
.dm_about_approach_text p { position: relative; margin-bottom: 12px; font-size: 1.1rem; padding-left: 25px; }
.dm_about_approach_text p:last-child { margin-bottom: 0; }
.dm_about_approach_text p::before { content: ''; position: absolute; top: 12px; left: 0; width: 8px; height: 8px; background-color: var(--color-accent-energy); border-radius: 50%; }

/* Сервисная служба */
.dm_about_service { padding: 80px 20px; background-color: var(--color-background-light); }
.dm_about_service_content { display: flex; gap: 60px; align-items: center; margin: 0 auto; }
.dm_about_service_image { flex: 0 0 45%; display: flex; flex-direction: column; gap: 15px; }
.dm_about_service_image img { width: 80%; height: auto; object-fit: cover; border-radius: 8px; box-shadow: 0 10px 20px rgba(0,0,0,0.07); }
.dm_about_service_text { flex: 1; }
.dm_about_service_text p { font-size: 1.1rem; line-height: 1.6; margin-bottom: 30px; }
.dm_about_service_features li { display: flex; align-items: center; gap: 10px;font-size: 1.1rem; list-style-type: none;  padding-left: 0; }
.dm_about_service_features li::before { content: none !important; display: none !important; } /* Этот блок "обнуляет" любые маркеры, добавленные через псевдо-элемент ::before */
.dm_about_service_features li .fa-check { color: var(--color-accent-energy); }
.dm_about_service_text .btn i { margin-right: 8px; }

/* Блок лояльности */
.dm_about_loyalty { padding: 80px 20px; background-color: var(--color-background-muted); }
.dm_about_loyalty_content { background: linear-gradient(135deg, var(--color-primary-brand), var(--color-accent-energy)); color: var(--color-background-light); padding: 60px; border-radius: 8px; display: flex; align-items: center; gap: 60px; box-shadow: 0 30px 60px rgba(9, 80, 146, 0.2); position: relative; overflow: hidden; margin: 0 auto; }
.dm_about_loyalty_content::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url("data:image/svg+xml,%3Csvg width='100' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 30 Q 25 0, 50 30 T 100 30' stroke='rgba(255,255,255,0.05)' fill='none' stroke-width='1'/%3E%3C/svg%3E"); background-size: 100px 20px; opacity: 0.2; }
.dm_about_loyalty_counter { display: flex; align-items: flex-start; }
.dm_about_loyalty_number { font-size: 8rem; font-weight: 800; line-height: 1; text-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
.dm_about_loyalty_percent { font-size: 3rem; margin-left: 5px; opacity: 0.8; font-weight: 600; margin-top: 1rem; }
.dm_about_loyalty_text { flex: 1; }
.dm_about_loyalty_text h2 { font-size: 2.5rem; margin: 0 0 20px; font-weight: 700; line-height: 1.2; }
.dm_about_loyalty_text p { font-size: 1.1rem; line-height: 1.6; margin: 0; opacity: 0.9; max-width: 600px; }

/* Блок клиентов */
.dm_about_clients { padding: 80px 20px; background-color: var(--color-background-light); margin: 0 auto; }
.dm_about_clients_description { font-size: 1.2rem; line-height: 1.6; max-width: 900px; margin: 0 auto 40px; text-align: center; color: var(--color-text-main); }
.dm_about_clients_showcase { position: relative; display: flex; gap: 40px; align-items: center; margin-top: 60px;
    background-color: var(--color-background-muted);
    border-radius: 8px;
    padding: 40px;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.05);
    overflow: hidden; /* Чтобы фон не выходил за пределы скругленных углов */
}

.features-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://katanamrp.com/wp-content/uploads/2022/05/hero-image-5.jpg');
    background-size: cover;
    background-position: center;
    opacity: 0.1;
    z-index: 0;
    filter: grayscale(1) contrast(1.2);
}

.dm_about_clients_photo, .dm_about_clients_info {
    position: relative;
    z-index: 1; /* Поместить содержимое над фоном */
}

.dm_about_clients_info { flex: 1; }
.dm_about_clients_info h3 {
    font-size: 1.75rem;
    color: var(--color-text-dark);
    margin-bottom: 20px;
    font-weight: 700;
}
.dm_about_clients_info p { 
    font-size: 1.1rem; 
    line-height: 1.6; 
    margin-bottom: 30px; 
    color: var(--color-text-main);
    font-weight: 500; /* Сделал шрифт немного жирнее */
    text-shadow: 0 0.5px 0.5px rgba(255,255,255,0.3); /* Лёгкая тень для улучшения читаемости */
}
.dm_about_clients_info a.btn {
    font-weight: 600; /* Более жирный шрифт для кнопки */
    text-shadow: none; /* Убираем тень для кнопки, если она не нужна */
}

/* Блок отзывов */
.dm_about_testimonials { padding: 80px 20px; background-color: var(--color-background-muted);  margin: 0 auto; }

/* Призыв к действию */
.dm_about_cta { padding: 30px 20px; }
.dm_about_cta_content { display: flex; gap: 60px; align-items: center; background-color: var(--color-background-muted); border-radius: 8px; padding: 60px; box-shadow: 0 30px 60px rgba(0, 0, 0, 0.1); margin: 0 auto; }
.dm_about_cta_image { flex: 0 0 45%; position: relative; border-radius: 8px; overflow: hidden; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); }
.dm_about_cta_image img { width: 100%; height: auto; display: block; }
.dm_about_cta_text { flex: 1; }
.dm_about_cta_text h2 { font-size: 2rem; color: var(--color-text-dark); margin-bottom: 20px; font-weight: 700; line-height: 1.2; }
.dm_about_cta_text p { font-size: 1.1rem; color: var(--color-text-main); margin-bottom: 30px; }

/* Секция надежности */
.dm_about_trust { padding: 80px 20px; background-color: var(--color-background-light); margin: 0 auto; }
.dm_about_trust_credentials { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; margin-bottom: 60px; }
.dm_about_trust_item { position: relative; display: flex; align-items: center; justify-content: center; width: 200px; height: 120px; background-color: var(--color-background-light); border-radius: 8px; box-shadow: 0 15px 30px rgba(0, 0, 0, 0.05); transition: transform 0.3s ease, box-shadow 0.3s ease; overflow: hidden; text-decoration: none; }
.dm_about_trust_item img { max-width: 80%; max-height: 60%; transition: transform 0.3s ease; }
.dm_about_trust_overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background-color: rgba(9, 80, 146, 0.9); opacity: 0; transition: opacity 0.3s ease; }
.dm_about_trust_overlay span { color: var(--color-background-light); font-weight: 600; font-size: 1.1rem; }
.dm_about_trust_item:hover { transform: translateY(-10px); box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1); }
.dm_about_trust_item:hover .dm_about_trust_overlay { opacity: 1; }
.dm_about_trust_item:hover img { transform: scale(0.9); }
.dm_about_trust_advantages { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin-top: 60px; }
.dm_about_trust_advantage { background-color: var(--color-background-light); padding: 40px 30px; border-radius: 8px; text-align: center; transition: transform 0.3s ease, box-shadow 0.3s ease; box-shadow: 0 15px 30px rgba(0, 0, 0, 0.05); }
.dm_about_trust_advantage:hover { transform: translateY(-10px); box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1); }
.dm_about_trust_advantage_icon { width: 60px; height: 60px; margin: 0 auto 20px; color: var(--color-primary-brand); }
.dm_about_trust_advantage h3 { font-size: 1.25rem; margin-bottom: 15px; color: var(--color-text-dark); font-weight: 600; }
.dm_about_trust_advantage p { color: var(--color-text-main); margin: 0; font-size: 1rem; }

/* Видео о компании */
.dm_about_video { padding: 80px 20px; background-color: var(--color-background-muted); }
.dm_about_video_grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr)); gap: 40px; margin-top: 50px; margin-left:auto; margin-right:auto; }
.dm_about_video_item { display: flex; flex-direction: column; }
.dm_about_video_wrapper { position: relative; width: 100%; padding-bottom: 56.25%; height: 0; border-radius: 8px; overflow: hidden; box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15); }
.dm_about_video_wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
.dm_about_video_mask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%); pointer-events: none; }
.dm_about_video_title { margin-top: 20px; font-size: 1.25rem; color: var(--color-text-dark); font-weight: 600; text-align: center; }

/* Финальная форма */
.dm_contact_section { padding: 80px 20px; background-color: var(--color-background-muted); }
.dm_contact_container { margin: 0 auto; display: grid; grid-template-columns: 1.1fr 1fr; gap: 60px; align-items: flex-start; }
.dm_contact_intro { display: flex; flex-direction: column; }
.dm_contact_team_photo { width: 100%; border-radius: 12px; overflow: hidden; margin-bottom: 30px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); background-color: var(--color-border); }
.dm_contact_team_photo img { width: 100%; height: auto; display: block; object-fit: cover; }
.dm_contact_subtitle { font-size: 1.125rem; color: var(--color-text-main); line-height: 1.6; margin: 0 0 40px 0; }
.dm_contact_benefits { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 25px; }
.dm_contact_benefits li { display: flex; align-items: flex-start; gap: 20px; }
.dm_contact_benefit_icon { flex-shrink: 0; width: 40px; height: 40px; color: var(--color-primary-brand); }
.dm_contact_benefit_text strong { display: block; font-size: 1.1rem; font-weight: 600; color: var(--color-text-dark); margin-bottom: 4px; }
.dm_contact_benefit_text p { margin: 0; color: var(--color-text-main); line-height: 1.5; }
.dm_contact_form_wrapper { background-color: var(--color-background-light); padding: 40px; border-radius: 12px; box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08); position: sticky; top: 40px; border-top: 4px solid var(--color-primary-brand); }
.dm_contact_form_title { font-size: 1.75rem; font-weight: 700; color: var(--color-text-dark); text-align: center; margin: 0 0 30px 0; }

/* Адаптивность */
@media (max-width: 992px) {
    .dm_about_hero { flex-direction: column; text-align: center; }
    .dm_about_hero_content, .dm_about_hero_image { max-width: 100%; }
    .dm_about_hero_image { margin-top: 40px; }
    .dm_about_hero_buttons { justify-content: center; }
    .dm_about_philosophy_content, .dm_about_service_content, .dm_about_clients_showcase, .dm_about_cta_content { flex-direction: column; }
    .dm_about_philosophy_image, .dm_about_service_image, .dm_about_clients_photo, .dm_about_cta_image { flex: 0 0 100%; max-width: 100%; margin-bottom: 40px; }
    .dm_about_loyalty_content { flex-direction: column; text-align: center; padding: 40px 30px; }
    .dm_about_loyalty_counter { justify-content: center; margin-bottom: 20px; }
    .dm_about_video_grid { grid-template-columns: 1fr; }
    .dm_contact_container { grid-template-columns: 1fr; gap: 50px; }
    .dm_contact_form_wrapper { position: static; }
}
@media (max-width: 768px) {
    .dm_about_hero_title { font-size: 32px; }
    .dm_about_hero_subtitle { font-size: 16px; }
    .dm_about_hero_buttons { flex-direction: column; width: 100%; }
    .dm_about_hero_buttons .btn { width: 100%; }
    .dm_about_section_title { font-size: 2rem; }
    .dm_about_section_subtitle { font-size: 1.1rem; }
    .dm_about_approach_step { flex-direction: column; padding: 30px; }
    .dm_about_approach_number { margin-bottom: 20px; }
    .dm_about_trust_item { width: calc(50% - 10px); height: 100px; }
    section[class*="dm_"] { padding: 60px 20px; }
}
@media (max-width: 576px) {
    .dm_about_hero_title { font-size: 28px; }
    .dm_about_section_title { font-size: 1.75rem; }
    .dm_about_metric_value { font-size: 3rem; }
    .dm_about_metric_unit { font-size: 1.5rem; }
    .dm_about_loyalty_number { font-size: 5rem; }
    .dm_about_loyalty_percent { font-size: 2rem; }
    .dm_about_trust_item { width: 100%; }
    .dm_contact_form_wrapper { padding: 30px 20px; }
}


.dm_side-fixed-block {
  background: var(--color-primary-brand); 
  position: fixed; 
  top: 35%; 
  left: 0; 
  z-index: 9; 
  border-radius: 0 4px 4px 0;
  transition: background 0.3s ease;
  box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

.dm_side-fixed-block:hover {
  background: var(--color-accent-energy);
}

.dm_side-fixed-block a {
  display: block; 
  color: var(--color-background-light); 
  writing-mode: vertical-lr; 
  transform: rotate(180deg);
  padding: 14px 8px;
  font-family: var(--font-family-mono);
  text-decoration: none;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: color 0.3s ease;
}

.dm_side-fixed-block:hover a {
  color: var(--color-background-light);
  border-left: 2px solid var(--color-success);
}

@media (max-width: 768px) {
  .dm_side-fixed-block {
    display: none;
  }
}



/* ========================================================================== */
/* Online Page */
/* ========================================================================== */



.dm_online_page_title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #095092;
    margin-bottom: 30px;
    position: relative;
    display: inline-block;
}

.dm_online_page_title:after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 3px;
    background: #095092;
    border-radius: 2px;
}

/* Интро секция */
.dm_online_page_intro {
    padding: 40px 0;
    text-align: center;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 40px;
}

.dm_online_page_intro_text {
    font-size: 18px;
    color: #374151;
    max-width: 800px;
    margin: 0 auto 1em;
    line-height: 1.6;
}

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

/* Секция с трансляциями */
.dm_online_page_streams {
    padding-bottom: 40px;
}

.dm_online_page_section_title {
    font-size: 28px;
    font-weight: 700;
    color: var(--color-primary-brand);
    text-align: center;
    margin-bottom: 40px;
}

.dm_online_page_streams_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.dm_online_page_stream_card {
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    overflow: hidden;
    background: #000;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
}

.dm_online_page_stream_frame {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.dm_online_page_stream_frame iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Секция CTA (Призыв к действию) */
.dm_online_page_cta {
    background: #f8fafd;
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    padding: 70px 0;
    margin-top: 30px;
    position: relative;
    overflow: hidden;
}

.dm_online_page_cta:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 30%;
    background: linear-gradient(135deg, rgba(9, 80, 146, 0.03), rgba(9, 80, 146, 0.08));
    z-index: 0;
    transform: skewX(-15deg) translateX(10%);
}

.dm_online_page_cta_container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
    position: relative;
    z-index: 1;
}

.dm_online_page_cta_text {
    font-size: 18px;
    color: #4b5563;
    max-width: 700px;
    margin: 0 auto 50px;
    line-height: 1.6;
}

.dm_online_page_cta_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: 1100px;
    margin: 0 auto;
}

.dm_online_page_cta_item {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 30px 25px;
    display: flex;
    flex-direction: column;
    text-align: center;
    transition: all 0.25s ease-in-out;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.dm_online_page_cta_item:hover {
    border-color: #095092;
    box-shadow: 0 10px 25px rgba(9, 80, 146, 0.12);
    transform: translateY(-5px);
}

.dm_online_page_cta_icon {
    width: 60px;
    height: 60px;
    background: #f0f7ff;
    color: #095092;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px;
    transition: all 0.25s ease;
}

.dm_online_page_cta_item:hover .dm_online_page_cta_icon {
    background: #095092;
    color: #fff;
}

.dm_online_page_cta_content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.dm_online_page_cta_label {
    font-size: 16px;
    color: #095092;
    font-weight: 600;
    margin-bottom: 10px;
}

.dm_online_page_cta_value {
    font-size: 16px;
    font-weight: 600;
    color: #111827;
    margin-bottom: 20px;
    word-break: break-word;
    flex-grow: 1;
}

/* Стили для блока с менеджером */
.dm_online_page_cta_item_manager {
    background: linear-gradient(to bottom right, #fff, #f8fafd);
    border: 1px solid #d1e0f0;
    text-align: left;
}

.dm_online_page_manager {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px dashed rgba(9, 80, 146, 0.2);
}

.dm_online_page_manager_photo {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #fff;
    box-shadow: 0 5px 15px rgba(9, 80, 146, 0.2);
    flex-shrink: 0;
    position: relative;
}

.dm_online_page_manager_photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.dm_online_page_manager_info {
    margin-left: 15px;
}

.dm_online_page_manager_name {
    font-size: 18px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 4px;
}

.dm_online_page_manager_position {
    font-size: 14px;
    color: #4b5563;
    line-height: 1.4;
}

.dm_online_page_cta_item_manager .dm_online_page_cta_value {
    color: #4b5563;
    font-weight: normal;
    line-height: 1.5;
    font-size: 15px;
}

.dm_online_page_cta_item_manager .dm_online_page_cta_label {
    font-size: 18px;
}

/* Стили для кнопок внутри карточек */
.dm_online_page_cta_item .btn {
    margin-top: auto;
    width: 100%;
}

/* Стилизация ссылок и текста, генерируемых Bitrix */
.dm_online_page_cta_value a {
    color: #111827 !important;
    text-decoration: none !important;
}

.dm_online_page_cta_value a:hover {
    color: #095092 !important;
    text-decoration: underline !important;
}

.dm_online_page_cta_value .email.blocks {
    margin-top: 0;
}

/* Адаптивность */
@media (max-width: 1200px) {
    .dm_online_page_streams_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .dm_online_page_cta_grid {
        grid-template-columns: 1fr 1fr;
        max-width: 700px;
    }

    .dm_online_page_cta_grid>.dm_online_page_cta_item_manager {
        grid-column: 1 / -1;
    }

    .dm_online_page_cta:before {
        width: 40%;
    }
}

@media (max-width: 768px) {
    .dm_online_page_intro {
        padding: 20px 0;
    }

    .dm_online_page_intro_text {
        font-size: 16px;
    }

    .dm_online_page_section_title {
        font-size: 24px;
    }

    .dm_online_page_streams_grid {
        grid-template-columns: 1fr;
    }

    .dm_online_page_cta {
        padding: 50px 15px;
    }

    .dm_online_page_cta_text {
        font-size: 16px;
        margin-bottom: 40px;
    }

    .dm_online_page_cta_grid {
        grid-template-columns: 1fr;
    }

    .dm_online_page_cta_grid>.dm_online_page_cta_item_manager {
        grid-column: auto;
    }

    .dm_online_page_cta:before {
        display: none;
    }
}

@media (max-width: 480px) {
    .dm_online_page_manager {
        flex-direction: column;
        text-align: center;
    }

    .dm_online_page_manager_info {
        margin-left: 0;
        margin-top: 10px;
    }

    .dm_online_page_cta_item_manager {
        text-align: center;
    }
}

/* ========================================================================== */
/* CTA форма после разделов в каталоге */
/* ========================================================================== */

.dm_catalog_section_footer_block {
    display: flex;
    flex-direction: column;
    background-color: var(--color-background-light);
    border: 1px solid var(--color-border);
    border-radius: 12px;
    margin: 30px 0;
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.1);
}

.dm_catalog_section_footer_engineer {
    background-color: var(--color-background-muted);
    padding: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
    border-bottom: 1px solid var(--color-border);
    position: relative;
    z-index: 1;
}

.dm_catalog_section_footer_engineer_photo {
    position: relative;
    flex-shrink: 0;
}

.dm_catalog_section_footer_engineer_photo img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--color-background-light);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

.dm_catalog_section_footer_online_indicator {
    width: 16px;
    height: 16px;
    background-color: #22c55e;
    border-radius: 50%;
    border: 2px solid var(--color-background-muted);
    position: absolute;
    bottom: 2px;
    right: 2px;
    animation: pulse 1.5s infinite;
}

.dm_catalog_section_footer_engineer_info {
    display: flex;
    flex-direction: column;
}

.dm_catalog_section_footer_engineer_name {
    font-size: 16px;
    font-weight: bold;
    color: var(--color-text-dark);
    display: block;
}

.dm_catalog_section_footer_engineer_title {
    font-size: 14px;
    color: var(--color-text-muted);
}

.dm_catalog_section_footer_content {
    padding: 20px;
    position: relative;
    z-index: 1;
}

.dm_catalog_section_footer_title {
    font-size: 20px;
    font-weight: bold;
    color: var(--color-text-dark);
    margin: 0 0 12px;
    text-align: center;
}

.dm_catalog_section_footer_subtitle {
    font-size: 14px;
    color: var(--color-text-main);
    margin: 0 0 25px;
    line-height: 1.5;
    text-align: center;
}

.dm_catalog_section_footer_grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 25px;
}

.dm_catalog_section_footer_item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.dm_catalog_section_footer_icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    color: var(--color-accent-energy);
    fill: currentColor;
    margin-top: 2px;
}

.dm_catalog_section_footer_text {
    flex: 1;
}

.dm_catalog_section_footer_text strong {
    font-size: 15px;
    font-weight: 600;
    color: var(--color-text-dark);
    display: block;
    margin-bottom: 2px;
}

.dm_catalog_section_footer_text p {
    font-size: 13px;
    color: var(--color-text-muted);
    margin: 0;
    line-height: 1.4;
}

.dm_catalog_section_footer_action {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.dm_catalog_section_footer_action .dm_catalog_section_footer_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    background-image: linear-gradient(45deg, var(--color-accent-energy) 0%, var(--color-primary-brand) 100%);
    color: var(--color-background-light) !important;
    padding: 14px 20px;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none !important;
    border: none;
    border-radius: 8px;
    transition: all 0.3s ease;
    cursor: pointer;
    box-sizing: border-box;
}

.dm_catalog_section_footer_action .dm_catalog_section_footer_btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px -5px rgba(var(--color-accent-energy-rgb, 0, 120, 255), 0.5);
}

.dm_catalog_section_footer_action .dm_catalog_section_footer_btn svg {
    transition: transform 0.3s ease;
}

.dm_catalog_section_footer_action .dm_catalog_section_footer_btn:hover svg {
    transform: translateX(3px);
}

.dm_catalog_section_footer_action_note {
    margin-top: 12px;
    font-size: 13px;
    color: var(--color-text-muted);
    text-align: center;
}

@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7); }
    70% { box-shadow: 0 0 0 8px rgba(34, 197, 94, 0); }
    100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

/* Tablet styles */
@media (min-width: 768px) {
    .dm_catalog_section_footer_block {
        margin: 40px 0;
        border-radius: 16px;
    }
    
    .dm_catalog_section_footer_content {
        padding: 25px 30px 30px;
    }
    
    .dm_catalog_section_footer_title {
        font-size: 24px;
        margin-bottom: 15px;
    }
    
    .dm_catalog_section_footer_subtitle {
        font-size: 15px;
        margin-bottom: 30px;
    }
    
    .dm_catalog_section_footer_grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin-bottom: 30px;
    }
    
    .dm_catalog_section_footer_action .dm_catalog_section_footer_btn {
        padding: 14px 30px;
        width: auto;
        min-width: 280px;
    }
}

/* Desktop styles */
@media (min-width: 992px) {
    .dm_catalog_section_footer_block {
        display: grid;
        grid-template-columns: 250px 1fr;
        gap: 0;
        margin: 60px 0;
        border-radius: 20px;
        box-shadow: 0 20px 50px -20px rgba(0, 0, 0, 0.1);
    }
    
    .dm_catalog_section_footer_block::before {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        left: 250px;
        background-image: radial-gradient(circle at 1px 1px, var(--color-border) 1px, transparent 0);
        background-size: 25px 25px;
        opacity: 0.5;
        z-index: 0;
    }
    
    .dm_catalog_section_footer_engineer {
        flex-direction: column;
        padding: 30px;
        justify-content: center;
        align-items: center;
        text-align: center;
        border-right: 1px solid var(--color-border);
        border-bottom: none;
        height: 100%;
    }
    
    .dm_catalog_section_footer_engineer_photo {
        margin-bottom: 20px;
    }
    
    .dm_catalog_section_footer_engineer_photo img {
        width: 120px;
        height: 120px;
        border: 4px solid var(--color-background-light);
    }
    
    .dm_catalog_section_footer_online_indicator {
        width: 20px;
        height: 20px;
        border: 3px solid var(--color-background-muted);
        bottom: 5px;
        right: 5px;
    }
    
    .dm_catalog_section_footer_engineer_name {
        font-size: 18px;
    }
    
    .dm_catalog_section_footer_content {
        padding: 40px;
    }
    
    .dm_catalog_section_footer_title {
        font-size: 32px;
        text-align: left;
        margin-bottom: 15px;
    }
    
    .dm_catalog_section_footer_subtitle {
        font-size: 16px;
        text-align: left;
        margin-bottom: 35px;
    }
    
    .dm_catalog_section_footer_grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 25px;
        margin-bottom: 40px;
    }
    
    .dm_catalog_section_footer_text strong {
        font-size: 16px;
    }
    
    .dm_catalog_section_footer_text p {
        font-size: 14px;
    }
    
    .dm_catalog_section_footer_action {
        align-items: flex-start;
    }
    
    .dm_catalog_section_footer_action .dm_catalog_section_footer_btn {
        padding: 16px 32px;
        font-size: 18px;
    }
    
    .dm_catalog_section_footer_action_note {
        margin-top: 15px;
        font-size: 14px;
        text-align: left;
    }
}

/* Large desktop styles */
@media (min-width: 1200px) {
    .dm_catalog_section_footer_content {
        padding: 50px;
    }
}


/* ========================================================================== */
/* Кнопка расходники для каталога ниже характеристи */
/* ========================================================================== */


/* Основной блок-контейнер */
.dm_catalog_element_addon_button_container {
    /* max-width: 350px;  максимальная ширина */
    border: 1px solid #e9ecef;
    border-radius: 8px;
    background-color: #f8f9fa;
    overflow: hidden; /* Скрывает все, что выходит за скругленные углы */
    transition: box-shadow 0.2s ease-in-out; /* Плавный переход для тени */
    margin-top: 15px; /* Отступ сверху */
    margin-bottom: 15px; /* Отступ снизу */
}

/* Стилизация при наведении на весь блок */
.dm_catalog_element_addon_button_container:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* Ссылка, которая оборачивает все содержимое */
.dm_catalog_element_addon_button_link {
    display: flex; /* Включаем Flexbox для выравнивания элементов в строку */
    align-items: center; /* Вертикальное выравнивание по центру */
    padding: 8px 12px; /* Уменьшенные внутренние отступы */
    text-decoration: none; /* Убираем стандартное подчеркивание ссылки */
    color: inherit; /* Наследуем цвет текста от родителя, а не синий по умолчанию */
}

/* Контейнер для изображения */
.dm_catalog_element_addon_button_image_container {
    flex-shrink: 0; /* Запрещаем контейнеру сжиматься */
    width: 45px; /* Уменьшенная ширина */
    height: 45px; /* Уменьшенная высота */
    margin-right: 12px; /* Уменьшенный отступ справа от текста */
}

/* Само изображение */
.dm_catalog_element_addon_button_image {
    width: 100%;
    height: 100%;
    object-fit: contain; /* Изображение вписывается в контейнер, сохраняя пропорции */
}

/* Контейнер с текстом */
.dm_catalog_element_addon_button_content {
    flex-grow: 1; /* Разрешаем этому блоку занимать все доступное пространство */
}

/* Убираем стандартные отступы у параграфов внутри текстового блока */
.dm_catalog_element_addon_button_content p {
    margin: 0;
    line-height: 1.2; /* Немного уменьшенная высота строки */
}

/* Основной заголовок ("Расходные материалы") */
.dm_catalog_element_addon_button_title {
    font-size: 14px; /* Уменьшенный размер шрифта */
    font-weight: 600;
}

/* Подзаголовок ("Подборка для этого товара") */
.dm_catalog_element_addon_button_subtitle {
    font-size: 12px; /* Уменьшенный размер шрифта */
    color: #6c757d; /* Серый цвет текста */
    margin-top: 2px; /* Уменьшенный отступ сверху */
}

/* Иконка-стрелка */
.dm_catalog_element_addon_button_arrow {
    flex-shrink: 0; /* Запрещаем иконке сжиматься */
    width: 14px; /* Уменьшенная ширина */
    height: 14px; /* Уменьшенная высота */
    color: #6c757d; /* Цвет иконки по умолчанию */
    margin-left: 10px; /* Уменьшенный отступ слева */
    transition: transform 0.2s ease-in-out, color 0.2s ease-in-out; /* Плавные переходы */
}

/* Эффекты при наведении на блок для стрелки */
.dm_catalog_element_addon_button_container:hover .dm_catalog_element_addon_button_arrow {
    transform: translateX(3px); /* Сдвигаем стрелку вправо */
    color: var(--color-accent-energy); /* Меняем цвет стрелки на акцентный */
}

/* ========================================================================== */
/* КАК КУПИТЬ? Страница: /help/*/
/* ========================================================================== */



/* Вводный текст секции */
.dm_order_section__intro {
    text-align: center;
    margin-bottom: 50px;
}

.dm_order_section__title {
    font-size: 38px;
    font-weight: 800;
    color: var(--color-text-dark, #212529); /* Фоллбэк */
    margin-bottom: 15px;
}

.dm_order_section__description {
    font-size: 18px;
    color: var(--color-text-muted, #6c757d); /* Фоллбэк */
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Контейнер для методов. Теперь он не Grid, а просто обертка для стека */
/* Удалил .dm_order_methods-grid - теперь карточки сразу внутри dm_order_section */

/* Отдельная ГОРИЗОНТАЛЬНАЯ карточка метода оформления заказа, каждая с новой строки */
.dm_order_method-card {
    background: var(--color-background-light, #f8f9fa);
    border: 1px solid var(--color-border, #dee2e6);
    border-radius: 12px;
    padding: 25px; 
    display: flex; /* Сделаем контейнером для горизонтального расположения */
    align-items: flex-start; /* Выравнивание элементов по верхней границе */
    gap: 20px; /* Отступ между иконкой и контентом */
    /* min-height: 160px; /* Минимальная высота для единообразия, но не слишком высокая - можно убрать, чтобы подстраивалась под контент */
    transition: var(--transition-base, all 0.2s ease-in-out);
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    margin-bottom: 30px; /* Отступ между карточками, чтобы они были с новой строки */
    width: 100%; /* Каждая карточка занимает всю ширину */
    box-sizing: border-box; /* Учитываем padding и border в ширине */
}

.dm_order_method-card:last-of-type {
    margin-bottom: 0; /* Убираем отступ у последней карточки */
}

.dm_order_method-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md, 0 4px 6px rgba(0,0,0,0.1));
    border-color: var(--color-primary-brand, #0d6efd);
}

/* Иконка в горизонтальной карточке */
.dm_order_method-card__icon {
    flex-shrink: 0; /* Не сжимать иконку */
    width: 50px;
    height: 50px;
    background: var(--color-accent-energy, #fd7e14);
    color: var(--color-background-light, #f8f9fa);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-top: 5px; /* Небольшое смещение иконки вниз для лучшего выравнивания с текстом */
}

/* Контентная часть горизонтальной карточки (заголовок, текст, кнопка) */
.dm_order_method-card__content {
    flex-grow: 1; /* Занимает все доступное пространство */
    display: flex;
    flex-direction: column; /* Элементы внутри располагаются вертикально */
    justify-content: space-between; /* Чтобы кнопка была внизу */
    align-items: flex-start; /* Выравниваем по левому краю */
}

.dm_order_method-card__title {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-text-dark, #212529);
    margin: 0 0 10px 0; /* Отступ под заголовком */
}

.dm_order_method-card__text {
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-text-main, #495057);
    margin: 0 0 20px 0; /* Отступ перед кнопкой */
    flex-grow: 1; /* Позволяет тексту занимать максимально возможное пространство */
}

/* Стили для ссылок внутри текста */
.dm_order_method-card__text a {
    color: var(--color-primary-brand, #0d6efd);
    text-decoration: none;
    transition: var(--transition-base, all 0.2s ease-in-out);
}

.dm_order_method-card__text a:hover {
    color: var(--color-accent-energy, #fd7e14);
    text-decoration: underline;
}

/* Стили для кнопок внутри карточек */
.dm_order_method-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    background: var(--color-primary-brand, #0d6efd);
    color: white;
    font-size: 15px;
    font-weight: 600;
    border-radius: 8px;
    text-decoration: none;
    transition: var(--transition-base, all 0.2s ease-in-out);
    box-shadow: var(--shadow-md, 0 4px 6px rgba(0, 0, 0, 0.1));
    border: none;
    cursor: pointer;
    white-space: nowrap;
    
    margin-top: auto; /* Отталкивает кнопку к низу */
    align-self: flex-end; /* Выравнивает кнопку по правому краю */
}

.dm_order_method-card__button i {
    margin-left: 8px; /* Иконка справа от текста */
    transition: transform 0.2s ease;
}
.dm_order_method-card__button:hover i {
    transform: translateX(5px); /* Смещение иконки при наведении */
}


.dm_order_method-card__button:hover {
    background: var(--color-accent-energy);
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, 0.15));
    color: white;
}


/* Адаптивность */
@media (max-width: 768px) {
    .dm_order_section {
        margin: 60px auto;
    }
    .dm_order_section__title {
        font-size: 32px;
    }
    .dm_order_section__description {
        font-size: 16px;
    }
    .dm_order_method-card {
        padding: 20px;
        flex-direction: column; /* На мобильных карточки становятся вертикальными */
        align-items: center;
        text-align: center;
        min-height: unset; /* Убираем min-height на мобильных */
    }
    .dm_order_method-card__icon {
        margin-top: 0;
        margin-bottom: 20px;
    }
    .dm_order_method-card__title {
        font-size: 20px;
    }
    .dm_order_method-card__text {
        font-size: 15px;
        margin-bottom: 20px;
    }
    .dm_order_method-card__button {
        width: 100%;
        align-self: center; /* Центрируем кнопку на мобильных */
        padding: 12px 20px;
        font-size: 15px;
    }
    .dm_order_method-card__button i {
        margin-left: 5px; /* Отступ для иконки в кнопке */
    }
}

@media (max-width: 480px) {
    .dm_order_section__title {
        font-size: 28px;
    }
    .dm_order_method-card__title {
        font-size: 18px;
    }
}

/* ========================================================================== 
     \      ___|    _ \    _ \    _ \                 | _)  |   _)               
    _ \   \___ \   |   |  |   |  |   |       _ \   _` |  |  __|  |   _ \   __ \  
   ___ \        |  ___/   __ <   |   |       __/  (   |  |  |    |  (   |  |   | 
 _/    _\ _____/  _|     _| \_\ \___/      \___| \__,_| _| \__| _| \___/  _|  _| 
                                                                                 
============================================================================ */

/* ========================================================================== */
/* Футер (Footer) */
/* ========================================================================== */

footer .footer-v2 {background:#095092;}
footer .footer-v2 .footer-inner {background:#095092; padding-bottom:0px;}
footer .footer-v2 .footer-inner .footer_middle {display:none;}

/* Компактный footer_bottom */
footer .footer-v2 .footer-inner .footer_bottom {
    padding: 20px 0;
    background: #f0f0f4;
}
footer .footer-bottom__items-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

footer .footer-bottom__item.copy,
footer .footer-bottom__item.pays {
    margin: 0;
    padding: 0;
}

footer .footer-bottom__item.copy {
    font-size: 11px;
    color: #666;
}

footer .light .bottom-menu .item .title a,
footer .light .bottom-menu .wrap .item .title a,
footer .light .info .address,
footer .light .info .email a,
footer .info .callback-block,
footer .light .info .phone>.wrap a {color:#ffffff;}

footer .light .bottom-menu .item .title a:hover,
footer .light .bottom-menu .wrap .item .title a:hover,
footer .light .info .email a:hover,
footer .light .info .phone>.wrap a:hover {color:#333;}
.btn.btn-link.blue-btn {background:#e0f3ff !important;}

footer .social-icons ul {border-radius: 4px !important;}
footer .social-icons ul li a {opacity: 0.9 !important; border: 0 !important;}
footer .social-icons ul li a:hover {opacity: 1 !important;}
footer .social-icons ul li.vk a {background-position: 0 -188px !important;}
footer .social-icons ul li.whats a {background-position: -329px -235px !important;}
footer .social-icons ul li.rtb a {background-position: -611px -188px !important;}
footer .social-icons ul li.telegram a {background-position: -329px -329px !important;}
footer .social-icons ul li.zen a {background-position: -470px -329px !important;}

footer .info .email .svg {top:2px !important;}
footer .info .phone .svg.svg-inline-phone svg {width:9px !important; height:14px !important;}

footer .footer-inner.light .info .svg:not(.iconset_icon--svg) svg path {fill: #ffffff !important;}
footer .footer-inner.light .info svg use {fill: #ffffff !important;}

/* ========================================================================== */
/* Скролл */
/* ========================================================================== */

a.scroll-to-top {
    right: 130px;
}

/* ========================================================================== */
/* Стили для кастомизации уведомления о сравнении, сама логика в custom.js */
/* ========================================================================== */

.notice.notice--dashed-border {
    border: 2px dashed var(--color-accent-energy) !important;
    border-radius: 10px !important;
    animation: pulseBorder 2s infinite alternate;
}

.notice__compare-link {
    margin-top: 10px;
    margin-bottom: 5px;
    text-align: center;
}

.notice__compare-link .btn {
    width: 100%;
    color: var(--color-accent-energy) !important;
    border-color: var(--color-accent-energy)  !important;
    transition: all 0.3s ease;
}

.notice__compare-link .btn:hover {
    background-color: var(--color-accent-energy)  !important;
    color: #fff !important;
}

@keyframes pulseBorder {
    0% { box-shadow: 0 0 5px rgba(59, 130, 246, 0.1); }
    100% { box-shadow: 0 0 10px rgba(59, 130, 246, 0.3); }
}

/* ========================================================================== */
/* Цвет выделения мышкой текста                                               */
/* ========================================================================== */

/* Стиль для выделенного текста на сайте */
::selection {
  background-color: var(--color-accent-energy) !important; /* Фон выделения */
  color: var(--color-background-light) !important; /* Цвет текста при выделении */
}

/* Для поддержки старых версий Firefox */
::-moz-selection {
  background-color: #3B82F6 !important;
  color: var(--color-background-light) !important;
}

a:hover, .link:hover {
 color: var(--color-accent-energy);
}

/*.basket { display: none !important; } */ /* в мобильном меню корзина сверху справа */

/* Корзина в мобилке справа в вверхнем меню */
.js-basket-block .basket{  display: none !important; }
.js-basket-block .count {  display: none !important; }

.auth_wr_inner { display: none !important; } /* в мобильном меню лк сверху справа */

/* Полностью скрываем блок корзины в шапке */
.wrap_basket.top_basket { display: none !important; }
.top_basket { display: none !important; }

/* --- Полное отключение e-commerce пунктов в мобильном/бургер меню --- */
/* Скрываем "Личный кабинет", "Корзина" */
.menu.middle li:has(a[href="/personal/"]),
.menu.middle li:has(a[href="/basket/"]) {
    display: none !important;
}

.icons-basket-wrapper  { display: none !important; } /* Иконка корзиы в карточках */
.hot-wrapper-items .footer-action { display: none !important; }
.hot-wrapper-items .sa_block  { display: none !important; }


/* fix: landings hero block */
.row.banner-wrapper .maxwidth-theme .col-md-6.text.item_block {
  overflow-wrap: break-word;
  word-wrap: break-word;
  hyphens: auto;
}

.row.banner-wrapper .maxwidth-theme .col-md-6.text.item_block h1,
.row.banner-wrapper .maxwidth-theme .col-md-6.text.item_block .intro-text p,
.row.banner-wrapper .maxwidth-theme .col-md-6.text.item_block .btn {
  overflow-wrap: break-word;
  word-wrap: break-word;
  hyphens: auto;
}

/* Форма стилизация инпутов */

/* Базовые инпуты */
.form input.inputtext,
.form input.phone,
.form input[type="email"],
.form input[type="text"],
.form input[type="tel"],
.form textarea,
.form textarea.inputtextarea {
    border: 2px solid #d1d5db;
    border-radius: 8px;
    padding: 12px 16px;
    font-size: 16px;
    transition: all 0.2s ease;
    background-color: #f9fafb;
    width: 100%;
    font-family: inherit;
}

/* Textarea - уменьшенный размер */
.form textarea,
.form textarea.inputtextarea {
    min-height: 60px;
    max-height: 80px;
    resize: vertical;
    line-height: 1.4;
}

/* Фокус — акцентный цвет */
.form input.inputtext:focus,
.form input.phone:focus,
.form input[type="email"]:focus,
.form input[type="text"]:focus,
.form input[type="tel"]:focus,
.form textarea:focus,
.form textarea.inputtextarea:focus {
    border-color: var(--color-accent-energy);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
    background-color: #fff;
    outline: none;
}

/* Hover */
.form input.inputtext:hover,
.form input.phone:hover,
.form input[type="email"]:hover,
.form input[type="text"]:hover,
.form input[type="tel"]:hover,
.form textarea:hover,
.form textarea.inputtextarea:hover {
    border-color: var(--color-primary-brand);
}

/* Заголовок формы */
.form .form_head h2 {
    color: var(--color-primary-brand);
    font-size: 22px;
    margin-bottom: 20px;
}
/* ========================================================================== */
/* ПОИСК                                                                        */
/* ========================================================================== */

/* Стилизация placeholder */
.search-input::placeholder {
    color: #333;              /* Темнее цвет */
    opacity: 1;               /* Полная непрозрачность */
    font-weight: 500;         /* Полужирный */
    font-size: 16px;          /* Размер побольше */
}

/* Дополнительно - стили самого input */
.search-input {
    padding: 10px 15px;
    border: 2px solid #007bff;
    border-radius: 5px;
    font-size: 16px;
}

/* Для разных браузеров */
.search-input::-webkit-input-placeholder { /* Chrome/Safari */
    color: #333;
    opacity: 1;
}

.search-input::-moz-placeholder { /* Firefox */
    color: #333;
    opacity: 1;
}

.search-input:-ms-input-placeholder { /* IE/Edge */
    color: #333;
    opacity: 1;
}



.PROJECTS .item .inner-block-text {
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    padding: 18px 22px;
    border-radius: 8px;
    border-left: 4px solid #007bff;
}

.PROJECTS .item .inner-block-text .title a {
    font-weight: 700;
    color: #ffffff;
    font-size: 1.15em;
}

.PROJECTS .item .inner-block-text .section {
    font-weight: 600;
    color: #007bff;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 6px;
}

.dm_quiz_cta_highlights {
    display: none;
}

