/* ============================================
   СТИЛИ ДЛЯ КОНТЕНТА СТРАНИЦ СЕРТИФИКАЦИИ
   Стили для всех элементов внутри .cert-article-content и .custom-main-content
   ============================================ */

/* === ОСНОВНЫЕ КОНТЕЙНЕРЫ === */
.custom-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.custom-main-content {
    background: white !important;
    padding: 2rem !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
    margin: 2rem 0 !important;
    line-height: 1.8 !important;
    color: #2c3e50 !important;
}

/* === ОСНОВНЫЕ СТИЛИ КОНТЕНТА === */
.cert-article-content {
    padding: 30px !important;
    line-height: 1.8 !important;
    color: #2c3e50 !important;
}

.cert-article-content .cert-content {
    padding: 0 !important;
    line-height: 1.8 !important;
    color: #2c3e50 !important;
}

/* === ЗАГОЛОВКИ === */
.custom-header,
.custom-main-content h1,
.custom-main-content h2,
.custom-main-content h3,
.custom-main-content h4,
.custom-main-content h5,
.custom-main-content h6,
.cert-article-content h1,
.cert-article-content h2,
.cert-article-content h3,
.cert-article-content h4,
.cert-article-content h5,
.cert-article-content h6,
.cert-article-content .cert-content h1,
.cert-article-content .cert-content h2,
.cert-article-content .cert-content h3,
.cert-article-content .cert-content h4,
.cert-article-content .cert-content h5,
.cert-article-content .cert-content h6 {
    color: #2c3e50 !important;
    font-weight: 700 !important;
    margin-top: 2rem !important;
    margin-bottom: 1rem !important;
    line-height: 1.3 !important;
}

.custom-header {
    font-size: 2.5rem !important;
    border-bottom: 3px solid #667eea !important;
    padding-bottom: 0.5rem !important;
    margin-bottom: 2rem !important;
}

.cert-article-content h1,
.cert-article-content .cert-content h1 {
    font-size: 2.5rem !important;
    border-bottom: 3px solid #667eea !important;
    padding-bottom: 0.5rem !important;
}

.cert-article-content h2,
.cert-article-content .cert-content h2 {
    font-size: 2rem !important;
    border-bottom: 2px solid #667eea !important;
    padding-bottom: 0.5rem !important;
    margin-top: 2.5rem !important;
}

.cert-article-content h3,
.cert-article-content .cert-content h3 {
    font-size: 1.5rem !important;
    color: #667eea !important;
    margin-top: 2rem !important;
}

.cert-article-content h4,
.cert-article-content .cert-content h4 {
    font-size: 1.2rem !important;
    color: #4a5568 !important;
    margin-top: 1.5rem !important;
}

/* === КАРТОЧКИ ВЫЗОВОВ: светлый текст на тёмном фоне (читаемость) === */
.cert-article-content .custom-challenges-grid,
.cert-article-content .challenges-grid,
.cert-article-content .custom-challenge-card {
    background: linear-gradient(135deg, #2c3e50 0%, #1a252f 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 14px !important;
    padding: 18px 20px !important;
    box-shadow: 0 8px 22px rgba(0,0,0,0.2) !important;
}

.cert-article-content .custom-challenges-grid > *,
.cert-article-content .challenges-grid > *,
.cert-article-content .custom-challenge-card {
    background: linear-gradient(135deg, #2c3e50 0%, #1a252f 100%) !important;
    color: #ffffff !important;
    border: none !important;
}

.cert-article-content .custom-challenges-grid h3,
.cert-article-content .custom-challenges-grid h4,
.cert-article-content .challenges-grid h3,
.cert-article-content .challenges-grid h4,
.cert-article-content .custom-challenge-card h3,
.cert-article-content .custom-challenge-card h4 {
    color: #ffffff !important;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}

.cert-article-content .custom-challenges-grid p,
.cert-article-content .challenges-grid p,
.cert-article-content .custom-challenges-grid li,
.cert-article-content .challenges-grid li,
.cert-article-content .custom-challenge-card p,
.cert-article-content .custom-challenge-card li {
    color: rgba(255, 255, 255, 0.95) !important;
    line-height: 1.6 !important;
}

.cert-article-content .custom-challenge-card *,
.cert-article-content .custom-challenges-grid *,
.cert-article-content .challenges-grid * {
    color: inherit !important;
}

.cert-article-content .custom-challenge-card span,
.cert-article-content .custom-challenges-grid .custom-challenge-icon {
    color: #f1c40f !important; /* иконка — акцент */
}

/* === ПАРАГРАФЫ === */
.custom-main-content p,
.cert-article-content p,
.cert-article-content .cert-content p {
    margin-bottom: 1.2rem !important;
    color: #4a5568 !important;
    line-height: 1.8 !important;
}

.custom-main-content strong,
.cert-article-content strong,
.cert-article-content .cert-content strong {
    color: #2c3e50 !important;
    font-weight: 700 !important;
}

.custom-main-content em,
.cert-article-content em,
.cert-article-content .cert-content em {
    color: #667eea !important;
    font-style: italic !important;
}

/* === СПИСКИ === */
.custom-main-content ul,
.custom-main-content ol,
.cert-article-content ul,
.cert-article-content ol,
.cert-article-content .cert-content ul,
.cert-article-content .cert-content ol {
    margin: 1.5rem 0 !important;
    padding-left: 2rem !important;
    line-height: 1.8 !important;
}

.custom-main-content ul {
    list-style: none !important;
    padding-left: 0 !important;
}

.custom-main-content ul li {
    position: relative !important;
    padding-left: 2rem !important;
    margin-bottom: 0.8rem !important;
    color: #4a5568 !important;
}

.custom-main-content ul li::before {
    content: '✓' !important;
    position: absolute !important;
    left: 0 !important;
    color: #27ae60 !important;
    font-weight: 700 !important;
    font-size: 1.2rem !important;
}

.custom-main-content ol li {
    margin-bottom: 0.8rem !important;
    color: #4a5568 !important;
    padding-left: 0.5rem !important;
}

.cert-article-content ul,
.cert-article-content .cert-content ul {
    list-style: none !important;
    padding-left: 0 !important;
}

.cert-article-content ul li,
.cert-article-content .cert-content ul li {
    position: relative !important;
    padding-left: 2rem !important;
    margin-bottom: 0.8rem !important;
    color: #4a5568 !important;
}

.cert-article-content ul li::before,
.cert-article-content .cert-content ul li::before {
    content: '✓' !important;
    position: absolute !important;
    left: 0 !important;
    color: #27ae60 !important;
    font-weight: 700 !important;
    font-size: 1.2rem !important;
}

.cert-article-content ol li,
.cert-article-content .cert-content ol li {
    margin-bottom: 0.8rem !important;
    color: #4a5568 !important;
    padding-left: 0.5rem !important;
}

/* === ССЫЛКИ === */
.custom-main-content a,
.cert-article-content a,
.cert-article-content .cert-content a {
    color: #667eea !important;
    text-decoration: none !important;
    border-bottom: 1px solid transparent !important;
    transition: all 0.3s ease !important;
}

.custom-main-content a:hover,
.cert-article-content a:hover,
.cert-article-content .cert-content a:hover {
    color: #4c63d2 !important;
    border-bottom-color: #4c63d2 !important;
}

/* === ЗАГОЛОВКИ СЕКЦИЙ === */
.custom-section-title,
.custom-main-content .custom-section-title {
    color: #2c3e50 !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    margin: 2rem 0 1.5rem 0 !important;
    padding-bottom: 0.8rem !important;
    border-bottom: 3px solid #667eea !important;
    position: relative !important;
}

.custom-section-title::after,
.custom-main-content .custom-section-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -3px !important;
    left: 0 !important;
    width: 80px !important;
    height: 3px !important;
    background: linear-gradient(135deg, #667eea, #2980b9) !important;
    border-radius: 2px !important;
}

/* === БЛОКИ ИНФОРМАЦИИ === */
.custom-info-block,
.custom-main-content .custom-info-block,
.cert-article-content > div[style*="background"],
.cert-article-content .cert-content > div[style*="background"] {
    background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%) !important;
    border-left: 4px solid #2196f3 !important;
    padding: 1.5rem !important;
    margin: 1.5rem 0 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(33, 150, 243, 0.1) !important;
}

.custom-info-block h2,
.custom-info-block h3,
.custom-main-content .custom-info-block h2,
.custom-main-content .custom-info-block h3 {
    color: #1976d2 !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
    margin-top: 0 !important;
}

.custom-info-block ul,
.custom-main-content .custom-info-block ul {
    margin: 1rem 0 !important;
    padding-left: 2rem !important;
}

.custom-info-block li,
.custom-main-content .custom-info-block li {
    margin-bottom: 0.8rem !important;
    line-height: 1.6 !important;
    color: #2c3e50 !important;
}

.custom-info-block li strong,
.custom-main-content .custom-info-block li strong {
    color: #1976d2 !important;
    font-weight: 600 !important;
}

/* === БЛОК ПРЕДУПРЕЖДЕНИЯ === */
.custom-warning-block,
.custom-main-content .custom-warning-block {
    background: linear-gradient(135deg, #fffde7 0%, #fff59d 100%) !important;
    border-left: 4px solid #fbc02d !important;
    padding: 1.5rem !important;
    margin: 1.5rem 0 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(251, 192, 45, 0.2) !important;
}

.custom-warning-block h3,
.custom-main-content .custom-warning-block h3 {
    color: #f57f17 !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
    margin-top: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

.custom-warning-block p,
.custom-main-content .custom-warning-block p {
    color: #2c3e50 !important;
    margin: 0 !important;
    line-height: 1.6 !important;
}

/* === СЕКЦИЯ УПРАВЛЕНИЯ ОТХОДАМИ === */
.waste-management-section,
.custom-main-content .waste-management-section {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
    border-left: 4px solid #667eea !important;
    padding: 1.5rem !important;
    margin: 1.5rem 0 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(102, 126, 234, 0.1) !important;
}

/* === БЛОК РАЗЛИЧИЙ КАТЕГОРИЙ === */
.category-distinction-box,
.custom-main-content .category-distinction-box {
    background: linear-gradient(135deg, #f0f4ff 0%, #e0e7ff 100%) !important;
    border: 2px solid #667eea !important;
    padding: 1.5rem !important;
    margin: 1.5rem 0 !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15) !important;
}

.category-distinction-box h3,
.custom-main-content .category-distinction-box h3 {
    color: #667eea !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
    margin-top: 1.5rem !important;
}

.category-distinction-box h3:first-child,
.custom-main-content .category-distinction-box h3:first-child {
    margin-top: 0 !important;
}

.category-distinction-box p,
.custom-main-content .category-distinction-box p {
    color: #2c3e50 !important;
    margin-bottom: 1rem !important;
    line-height: 1.6 !important;
}

/* === БЛОК ТРЕБОВАНИЙ СООТВЕТСТВИЯ === */
.compliance-requirement-box,
.custom-main-content .compliance-requirement-box {
    background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%) !important;
    border: 2px solid #27ae60 !important;
    padding: 1.5rem !important;
    margin: 1.5rem 0 !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 12px rgba(39, 174, 96, 0.15) !important;
}

.compliance-requirement-box p,
.custom-main-content .compliance-requirement-box p {
    color: #2c3e50 !important;
    margin-bottom: 1rem !important;
    line-height: 1.6 !important;
}

.compliance-requirement-box ul,
.custom-main-content .compliance-requirement-box ul {
    margin: 1rem 0 !important;
    padding-left: 2rem !important;
}

.compliance-requirement-box li,
.custom-main-content .compliance-requirement-box li {
    margin-bottom: 0.8rem !important;
    line-height: 1.6 !important;
    color: #2c3e50 !important;
}

/* Блоки с информацией (синие) */
.cert-article-content > div[style*="background: #f8f9ff"],
.cert-article-content > div[style*="background:#f8f9ff"],
.cert-article-content .cert-content > div[style*="background: #f8f9ff"],
.cert-article-content .cert-content > div[style*="background:#f8f9ff"] {
    background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%) !important;
    border-left: 4px solid #2196f3 !important;
}

/* Блоки с требованиями (синие) */
.cert-article-content > div[style*="background: #f8f9fa"],
.cert-article-content > div[style*="background:#f8f9fa"],
.cert-article-content .cert-content > div[style*="background: #f8f9fa"],
.cert-article-content .cert-content > div[style*="background:#f8f9fa"] {
    background: linear-gradient(135deg, #f5f5f5 0%, #e0e0e0 100%) !important;
    border-left: 4px solid #667eea !important;
}

/* Блоки с документами (зеленые) */
.cert-article-content > div[style*="background: #f0f8f0"],
.cert-article-content > div[style*="background:#f0f8f0"],
.cert-article-content .cert-content > div[style*="background: #f0f8f0"],
.cert-article-content .cert-content > div[style*="background:#f0f8f0"] {
    background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%) !important;
    border-left: 4px solid #27ae60 !important;
}

/* === СТАТИСТИКА И ЦИФРЫ === */
.custom-stats-grid,
.custom-main-content .custom-stats-grid,
.cert-article-content .custom-stats-grid,
.cert-article-content .stats-grid,
.cert-article-content .cert-content .custom-stats-grid,
.cert-article-content .cert-content .stats-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 1.5rem !important;
    margin: 2rem 0 !important;
}

.custom-stat-item,
.custom-main-content .custom-stat-item,
.cert-article-content .custom-stat-item,
.cert-article-content .stat-item,
.cert-article-content .cert-content .custom-stat-item,
.cert-article-content .cert-content .stat-item {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    color: white !important;
    padding: 2rem !important;
    border-radius: 12px !important;
    text-align: center !important;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3) !important;
    transition: all 0.3s ease !important;
}

.custom-stat-item:hover,
.custom-main-content .custom-stat-item:hover,
.cert-article-content .custom-stat-item:hover,
.cert-article-content .stat-item:hover,
.cert-article-content .cert-content .custom-stat-item:hover,
.cert-article-content .cert-content .stat-item:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 8px 25px rgba(102, 126, 234, 0.4) !important;
}

.custom-stat-number,
.custom-main-content .custom-stat-number,
.cert-article-content .custom-stat-number,
.cert-article-content .stat-number,
.cert-article-content .cert-content .custom-stat-number,
.cert-article-content .cert-content .stat-number {
    display: block !important;
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    margin-bottom: 0.5rem !important;
    line-height: 1.2 !important;
}

.custom-stat-label,
.custom-main-content .custom-stat-label,
.cert-article-content .custom-stat-label,
.cert-article-content .stat-label,
.cert-article-content .cert-content .custom-stat-label,
.cert-article-content .cert-content .stat-label {
    display: block !important;
    font-size: 1rem !important;
    opacity: 0.95 !important;
    line-height: 1.5 !important;
}

/* === СЕТКИ И КАРТОЧКИ === */
.custom-grid,
.custom-light-grid,
.custom-main-content .custom-grid,
.custom-main-content .custom-light-grid,
.cert-article-content .custom-light-grid,
.cert-article-content .light-grid,
.cert-article-content .custom-grid,
.cert-article-content .cert-content .custom-light-grid,
.cert-article-content .cert-content .light-grid,
.cert-article-content .cert-content .custom-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 1.5rem !important;
    margin: 2rem 0 !important;
}

.custom-grid-item,
.custom-main-content .custom-grid-item,
.cert-article-content .custom-grid-item,
.cert-article-content .grid-item,
.cert-article-content .cert-content .custom-grid-item,
.cert-article-content .cert-content .grid-item {
    background: white !important;
    border: 2px solid #e1e8ed !important;
    padding: 1.5rem !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.3s ease !important;
}

.custom-grid-item:hover,
.custom-main-content .custom-grid-item:hover,
.cert-article-content .custom-grid-item:hover,
.cert-article-content .grid-item:hover,
.cert-article-content .cert-content .custom-grid-item:hover,
.cert-article-content .cert-content .grid-item:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1) !important;
    border-color: #667eea !important;
}

.custom-grid-item h3,
.custom-grid-item h4,
.custom-main-content .custom-grid-item h3,
.custom-main-content .custom-grid-item h4,
.cert-article-content .custom-grid-item h3,
.cert-article-content .custom-grid-item h4,
.cert-article-content .grid-item h3,
.cert-article-content .grid-item h4,
.cert-article-content .cert-content .custom-grid-item h3,
.cert-article-content .cert-content .custom-grid-item h4,
.cert-article-content .cert-content .grid-item h3,
.cert-article-content .cert-content .grid-item h4 {
    color: #2c3e50 !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
    margin-top: 0 !important;
    padding-bottom: 0.5rem !important;
    border-bottom: 2px solid #667eea !important;
}

.custom-grid-item p,
.custom-main-content .custom-grid-item p,
.cert-article-content .custom-grid-item p,
.cert-article-content .grid-item p,
.cert-article-content .cert-content .custom-grid-item p,
.cert-article-content .cert-content .grid-item p {
    color: #555 !important;
    margin: 0 !important;
    line-height: 1.7 !important;
}

.custom-grid-item ul,
.custom-main-content .custom-grid-item ul {
    margin: 1rem 0 !important;
    padding-left: 2rem !important;
}

.custom-grid-item ul li,
.custom-main-content .custom-grid-item ul li {
    margin-bottom: 0.8rem !important;
    line-height: 1.6 !important;
    color: #555 !important;
}

/* === БЛОКИ ПАРАМЕТРОВ === */
.cert-article-content .light-parameter-box,
.cert-article-content .parameter-box,
.cert-article-content .cert-content .light-parameter-box,
.cert-article-content .cert-content .parameter-box {
    background: linear-gradient(145deg, #e0f2f1 0%, #b2dfdb 100%) !important;
    border: 2px solid #00695c !important;
    padding: 20px !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 8px rgba(0, 105, 92, 0.1) !important;
    margin: 2rem 0 !important;
}

.cert-article-content .light-parameter-box h3,
.cert-article-content .parameter-box h3,
.cert-article-content .cert-content .light-parameter-box h3,
.cert-article-content .cert-content .parameter-box h3 {
    color: #00695c !important;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    margin-bottom: 1.5rem !important;
    margin-top: 0 !important;
}

/* === ЭТАПЫ ПРОЦЕССА === */
.custom-process-steps,
.custom-main-content .custom-process-steps,
.cert-article-content .custom-process-steps,
.cert-article-content .process-steps,
.cert-article-content .cert-content .custom-process-steps,
.cert-article-content .cert-content .process-steps {
    margin: 2rem 0 !important;
}

.custom-process-step,
.custom-main-content .custom-process-step,
.cert-article-content .custom-process-step,
.cert-article-content .process-step,
.cert-article-content .light-process-step,
.cert-article-content .cert-content .custom-process-step,
.cert-article-content .cert-content .process-step,
.cert-article-content .cert-content .light-process-step {
    background: #e8f5e9 !important;
    border-left: 5px solid #388e3c !important;
    padding: 15px !important;
    margin: 10px 0 !important;
    border-radius: 0 8px 8px 0 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 1.5rem !important;
    box-shadow: 0 2px 8px rgba(56, 142, 60, 0.1) !important;
    transition: all 0.3s ease !important;
}

.custom-process-step:hover,
.custom-main-content .custom-process-step:hover,
.cert-article-content .custom-process-step:hover,
.cert-article-content .process-step:hover,
.cert-article-content .light-process-step:hover,
.cert-article-content .cert-content .custom-process-step:hover,
.cert-article-content .cert-content .process-step:hover,
.cert-article-content .cert-content .light-process-step:hover {
    transform: translateX(5px) !important;
    box-shadow: 0 4px 12px rgba(56, 142, 60, 0.2) !important;
    background: #c8e6c9 !important;
}

.custom-step-number,
.custom-main-content .custom-step-number,
.cert-article-content .custom-step-number,
.cert-article-content .step-number,
.cert-article-content .cert-content .custom-step-number,
.cert-article-content .cert-content .step-number {
    width: 50px !important;
    height: 50px !important;
    background: linear-gradient(135deg, #388e3c, #2e7d32) !important;
    color: white !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    flex-shrink: 0 !important;
    box-shadow: 0 4px 10px rgba(56, 142, 60, 0.3) !important;
}

.custom-step-content,
.custom-main-content .custom-step-content,
.cert-article-content .custom-step-content,
.cert-article-content .step-content,
.cert-article-content .cert-content .custom-step-content,
.cert-article-content .cert-content .step-content {
    flex: 1 !important;
}

.custom-step-content h4,
.custom-main-content .custom-step-content h4,
.cert-article-content .custom-step-content h4,
.cert-article-content .step-content h4,
.cert-article-content .cert-content .custom-step-content h4,
.cert-article-content .cert-content .step-content h4 {
    color: #2e7d32 !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    margin-bottom: 0.5rem !important;
    margin-top: 0 !important;
}

.custom-step-content p,
.custom-main-content .custom-step-content p,
.cert-article-content .custom-step-content p,
.cert-article-content .step-content p,
.cert-article-content .cert-content .custom-step-content p,
.cert-article-content .cert-content .step-content p {
    color: #2c3e50 !important;
    margin: 0 !important;
    line-height: 1.6 !important;
}

/* === БЛОКИ ОСВЕЩЕНИЯ === */
.cert-article-content .light-analysis-section,
.cert-article-content .analysis-section,
.cert-article-content .cert-content .light-analysis-section,
.cert-article-content .cert-content .analysis-section {
    background: linear-gradient(135deg, #fffde7 0%, #fff59d 100%) !important;
    border-left: 4px solid #fbc02d !important;
    padding: 25px !important;
    margin: 20px 0 !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(251, 192, 45, 0.15) !important;
}

.cert-article-content .office-light-block,
.cert-article-content .office-block,
.cert-article-content .cert-content .office-light-block,
.cert-article-content .cert-content .office-block {
    background: linear-gradient(135deg, #f3e5f5 0%, #e1bee7 100%) !important;
    border: 2px solid #7b1fa2 !important;
    padding: 20px !important;
    border-radius: 10px !important;
    margin: 25px 0 !important;
    box-shadow: 0 4px 12px rgba(123, 31, 162, 0.15) !important;
}

.cert-article-content .office-light-block h2,
.cert-article-content .office-block h2,
.cert-article-content .cert-content .office-light-block h2,
.cert-article-content .cert-content .office-block h2 {
    color: #7b1fa2 !important;
    margin-top: 0 !important;
}

/* === БЛОКИ КОНТАКТОВ === */
.custom-contacts-block,
.custom-main-content .custom-contacts-block,
.cert-article-content .custom-contacts-block,
.cert-article-content .contacts-block,
.cert-article-content .cert-content .custom-contacts-block,
.cert-article-content .cert-content .contacts-block {
    background: linear-gradient(135deg, #e8eaf6 0%, #c5cae9 100%) !important;
    border: 2px solid #3f51b5 !important;
    padding: 2rem !important;
    border-radius: 12px !important;
    margin: 2rem 0 !important;
    box-shadow: 0 4px 15px rgba(63, 81, 181, 0.2) !important;
}

.custom-contacts-block h2,
.custom-main-content .custom-contacts-block h2,
.cert-article-content .custom-contacts-block h2,
.cert-article-content .contacts-block h2,
.cert-article-content .cert-content .custom-contacts-block h2,
.cert-article-content .cert-content .contacts-block h2 {
    color: #3f51b5 !important;
    margin-top: 0 !important;
}

.custom-contacts-block h3,
.custom-main-content .custom-contacts-block h3,
.cert-article-content .custom-contacts-block h3,
.cert-article-content .cert-content .custom-contacts-block h3 {
    color: #1a237e !important;
    margin-top: 0 !important;
}

.custom-contacts-block p,
.custom-main-content .custom-contacts-block p,
.cert-article-content .custom-contacts-block p,
.cert-article-content .cert-content .custom-contacts-block p {
    color: #2c3e50 !important;
}

.custom-contacts-block strong,
.cert-article-content .custom-contacts-block strong,
.cert-article-content .cert-content .custom-contacts-block strong {
    color: #1a237e !important;
}

/* === КАРТОЧКИ ШАБЛОНОВ (custom-template-card): тёмный текст на светлом фоне === */
/* охватываем ОБА контекста: cert-article-content и custom-main-content */
.cert-article-content .custom-templates-grid .custom-template-card,
.cert-article-content .custom-template-card,
.cert-article-content .custom-templates-grid > .custom-template-card,
.custom-main-content .custom-templates-grid .custom-template-card,
.custom-main-content .custom-template-card,
.custom-main-content .custom-templates-grid > .custom-template-card,
.custom-templates-grid .custom-template-card {
    background: #f8f9ff !important;
    border: 1px solid #e3e8ff !important;
    border-left: 4px solid #3498db !important;
    color: #2c3e50 !important;
    padding: 1.25rem 1.5rem !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06) !important;
}

.cert-article-content .custom-template-card h4,
.cert-article-content .custom-templates-grid .custom-template-card h4,
.custom-main-content .custom-template-card h4,
.custom-main-content .custom-templates-grid .custom-template-card h4,
.custom-templates-grid .custom-template-card h4 {
    color: #1a252f !important;
    margin: 0 0 0.75rem 0 !important;
}

.cert-article-content .custom-template-card p,
.cert-article-content .custom-templates-grid .custom-template-card p,
.custom-main-content .custom-template-card p,
.custom-main-content .custom-templates-grid .custom-template-card p,
.custom-templates-grid .custom-template-card p {
    color: #4a5568 !important;
}

.cert-article-content .custom-template-card ul,
.cert-article-content .custom-templates-grid .custom-template-card ul,
.custom-main-content .custom-template-card ul,
.custom-main-content .custom-templates-grid .custom-template-card ul,
.custom-templates-grid .custom-template-card ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0.5rem 0 0 0 !important;
}

.cert-article-content .custom-template-card li,
.cert-article-content .custom-templates-grid .custom-template-card li,
.custom-main-content .custom-template-card li,
.custom-main-content .custom-templates-grid .custom-template-card li,
.custom-templates-grid .custom-template-card li,
.custom-template-card li {
    color: #2c3e50 !important;
    margin: 6px 0 !important;
    padding-left: 1.5rem !important;
    position: relative !important;
    line-height: 1.5 !important;
}

.cert-article-content .custom-template-card li::before,
.cert-article-content .custom-templates-grid .custom-template-card li::before,
.custom-main-content .custom-template-card li::before,
.custom-main-content .custom-templates-grid .custom-template-card li::before,
.custom-templates-grid .custom-template-card li::before,
.custom-template-card li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    color: #27ae60 !important;
    font-weight: bold !important;
}

/* === ВЫДЕЛЕННЫЕ БЛОКИ === */
.custom-highlight-box,
.custom-main-content .custom-highlight-box,
.cert-article-content .custom-highlight-box,
.cert-article-content .highlight-box,
.cert-article-content .cert-content .custom-highlight-box,
.cert-article-content .cert-content .highlight-box {
    background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%) !important;
    border: 3px solid #ff9800 !important;
    padding: 2rem !important;
    border-radius: 12px !important;
    margin: 2rem 0 !important;
    box-shadow: 0 6px 20px rgba(255, 152, 0, 0.2) !important;
    text-align: center !important;
}

.custom-highlight-box h2,
.custom-highlight-box h3,
.custom-main-content .custom-highlight-box h2,
.custom-main-content .custom-highlight-box h3,
.cert-article-content .custom-highlight-box h3,
.cert-article-content .highlight-box h3,
.cert-article-content .cert-content .custom-highlight-box h3,
.cert-article-content .cert-content .highlight-box h3 {
    color: #e65100 !important;
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    margin-bottom: 1.5rem !important;
    margin-top: 0 !important;
}

.custom-highlight-box p,
.custom-main-content .custom-highlight-box p,
.cert-article-content .custom-highlight-box p,
.cert-article-content .highlight-box p,
.cert-article-content .cert-content .custom-highlight-box p,
.cert-article-content .cert-content .highlight-box p {
    color: #2c3e50 !important;
    font-size: 1.1rem !important;
    margin-bottom: 1rem !important;
    line-height: 1.6 !important;
}

.custom-highlight-box strong,
.custom-main-content .custom-highlight-box strong,
.cert-article-content .custom-highlight-box strong,
.cert-article-content .highlight-box strong,
.cert-article-content .cert-content .custom-highlight-box strong,
.cert-article-content .cert-content .highlight-box strong {
    color: #e65100 !important;
    font-weight: 700 !important;
}

/* === ТАБЛИЦЫ (cert-article-content + custom-main-content) === */
.cert-article-content table,
.cert-article-content .cert-content table,
.custom-main-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 1.5rem 0 !important;
    box-shadow: 0 4px 18px rgba(0,0,0,0.07) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    font-size: 0.93rem !important;
    line-height: 1.55 !important;
    -webkit-mask-image: -webkit-radial-gradient(white, black) !important;
}

/* Контейнер для мобильного скролла, если таблица не обёрнута */
.cert-article-content table,
.custom-main-content > table {
    display: block !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

.cert-article-content table th,
.cert-article-content table td,
.cert-article-content .cert-content table th,
.cert-article-content .cert-content table td,
.custom-main-content table th,
.custom-main-content table td {
    padding: 13px 18px !important;
    border: 1px solid #e8edf2 !important;
    text-align: left !important;
    vertical-align: top !important;
}

.cert-article-content table th,
.cert-article-content .cert-content table th,
.custom-main-content table th {
    background: linear-gradient(135deg, #1565c0 0%, #1976d2 100%) !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 0.82rem !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    border: none !important;
}

.cert-article-content table td:first-child,
.cert-article-content .cert-content table td:first-child,
.custom-main-content table td:first-child {
    font-weight: 600 !important;
    color: #1565c0 !important;
}

.cert-article-content table tr:nth-child(even) td,
.cert-article-content .cert-content table tr:nth-child(even) td,
.custom-main-content table tr:nth-child(even) td {
    background-color: #f0f4ff !important;
}

.cert-article-content table tr:hover td,
.cert-article-content .cert-content table tr:hover td,
.custom-main-content table tr:hover td {
    background-color: #e3eaff !important;
    transition: background 0.15s ease !important;
}

.cert-article-content table tr:last-child td,
.custom-main-content table tr:last-child td {
    border-bottom: none !important;
}

@media (max-width: 600px) {
    .cert-article-content table th,
    .cert-article-content table td,
    .custom-main-content table th,
    .custom-main-content table td {
        padding: 10px 12px !important;
        font-size: 0.85rem !important;
    }
}

/* === ЦИТАТЫ === */
.cert-article-content blockquote,
.cert-article-content .cert-content blockquote {
    border-left: 4px solid #667eea !important;
    padding-left: 1.5rem !important;
    margin: 1.5rem 0 !important;
    color: #4a5568 !important;
    font-style: italic !important;
    background: #f8f9fa !important;
    padding: 1rem 1.5rem !important;
    border-radius: 0 8px 8px 0 !important;
}

/* === КОД === */
.cert-article-content code,
.cert-article-content .cert-content code {
    background: #f4f4f4 !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    font-family: 'Courier New', monospace !important;
    font-size: 0.9em !important;
    color: #e83e8c !important;
}

.cert-article-content pre,
.cert-article-content .cert-content pre {
    background: #2c3e50 !important;
    color: #f8f9fa !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    overflow-x: auto !important;
    margin: 1.5rem 0 !important;
}

.cert-article-content pre code,
.cert-article-content .cert-content pre code {
    background: transparent !important;
    padding: 0 !important;
    color: #f8f9fa !important;
}

/* === ИЗОБРАЖЕНИЯ === */
.cert-article-content img,
.cert-article-content .cert-content img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
    margin: 1.5rem 0 !important;
}

.cert-article-content img[style*="float"],
.cert-article-content .cert-content img[style*="float"] {
    margin: 0 1.5rem 1rem 0 !important;
}

/* === РАЗДЕЛИТЕЛИ === */
.cert-article-content hr,
.cert-article-content .cert-content hr {
    border: none !important;
    border-top: 2px solid #e9ecef !important;
    margin: 2rem 0 !important;
}

/* === АДАПТИВНОСТЬ === */
@media (max-width: 768px) {
    .custom-main-content {
        padding: 1.5rem !important;
        margin: 1rem 0 !important;
    }
    
    .custom-container {
        padding: 0 15px !important;
    }
    
    .custom-header {
        font-size: 2rem !important;
    }
    
    .custom-section-title,
    .custom-main-content .custom-section-title {
        font-size: 1.6rem !important;
    }
    
    .cert-article-content {
        padding: 20px !important;
    }
    
    .cert-article-content h1,
    .cert-article-content .cert-content h1 {
        font-size: 2rem !important;
    }
    
    .cert-article-content h2,
    .cert-article-content .cert-content h2 {
        font-size: 1.6rem !important;
    }
    
    .cert-article-content h3,
    .cert-article-content .cert-content h3 {
        font-size: 1.3rem !important;
    }
    
    .custom-stats-grid,
    .custom-main-content .custom-stats-grid,
    .cert-article-content .custom-stats-grid,
    .cert-article-content .stats-grid,
    .cert-article-content .cert-content .custom-stats-grid,
    .cert-article-content .cert-content .stats-grid {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
    
    .custom-stat-number,
    .custom-main-content .custom-stat-number,
    .cert-article-content .custom-stat-number,
    .cert-article-content .stat-number,
    .cert-article-content .cert-content .custom-stat-number,
    .cert-article-content .cert-content .stat-number {
        font-size: 2rem !important;
    }
    
    .custom-grid,
    .custom-light-grid,
    .custom-main-content .custom-grid,
    .custom-main-content .custom-light-grid,
    .cert-article-content .custom-light-grid,
    .cert-article-content .light-grid,
    .cert-article-content .custom-grid,
    .cert-article-content .cert-content .custom-light-grid,
    .cert-article-content .cert-content .light-grid,
    .cert-article-content .cert-content .custom-grid {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
    
    .custom-process-step,
    .custom-main-content .custom-process-step,
    .cert-article-content .custom-process-step,
    .cert-article-content .process-step,
    .cert-article-content .light-process-step,
    .cert-article-content .cert-content .custom-process-step,
    .cert-article-content .cert-content .process-step,
    .cert-article-content .cert-content .light-process-step {
        flex-direction: column !important;
        gap: 1rem !important;
    }
    
    .custom-step-number,
    .custom-main-content .custom-step-number,
    .cert-article-content .custom-step-number,
    .cert-article-content .step-number,
    .cert-article-content .cert-content .custom-step-number,
    .cert-article-content .cert-content .step-number {
        width: 40px !important;
        height: 40px !important;
        font-size: 1.2rem !important;
    }
    
    .custom-highlight-box,
    .custom-main-content .custom-highlight-box,
    .cert-article-content .custom-highlight-box,
    .cert-article-content .highlight-box,
    .cert-article-content .cert-content .custom-highlight-box,
    .cert-article-content .cert-content .highlight-box {
        padding: 1.5rem !important;
    }
    
    .custom-highlight-box h2,
    .custom-highlight-box h3,
    .custom-main-content .custom-highlight-box h2,
    .custom-main-content .custom-highlight-box h3,
    .cert-article-content .custom-highlight-box h3,
    .cert-article-content .highlight-box h3,
    .cert-article-content .cert-content .custom-highlight-box h3,
    .cert-article-content .cert-content .highlight-box h3 {
        font-size: 1.5rem !important;
    }
}

@media (max-width: 480px) {
    .custom-main-content {
        padding: 1rem !important;
    }
    
    .custom-container {
        padding: 0 10px !important;
    }
    
    .custom-header {
        font-size: 1.8rem !important;
    }
    
    .custom-section-title,
    .custom-main-content .custom-section-title {
        font-size: 1.4rem !important;
    }
    
    .cert-article-content {
        padding: 15px !important;
    }
    
    .cert-article-content h1,
    .cert-article-content .cert-content h1 {
        font-size: 1.8rem !important;
    }
    
    .cert-article-content h2,
    .cert-article-content .cert-content h2 {
        font-size: 1.4rem !important;
    }
    
    .custom-stat-number,
    .custom-main-content .custom-stat-number,
    .cert-article-content .custom-stat-number,
    .cert-article-content .stat-number,
    .cert-article-content .cert-content .custom-stat-number,
    .cert-article-content .cert-content .stat-number {
        font-size: 1.8rem !important;
    }
    
    .custom-stat-label,
    .custom-main-content .custom-stat-label,
    .cert-article-content .custom-stat-label,
    .cert-article-content .stat-label,
    .cert-article-content .cert-content .custom-stat-label,
    .cert-article-content .cert-content .stat-label {
        font-size: 0.9rem !important;
    }
}

/* ============================================
   КАРТОЧКИ ВЫЗОВОВ — финальные переопределения (в конце файла)
   Чтобы светлый текст на тёмном фоне не перебивался общими h4/p
   ============================================ */
.cert-article-content .custom-challenges-grid > *,
.cert-article-content .challenges-grid > *,
.cert-article-content .custom-challenge-card {
    background: linear-gradient(135deg, #2c3e50 0%, #1a252f 100%) !important;
    color: #ffffff !important;
}

.cert-article-content .custom-challenges-grid h3,
.cert-article-content .custom-challenges-grid h4,
.cert-article-content .challenges-grid h3,
.cert-article-content .challenges-grid h4,
.cert-article-content .custom-challenge-card h3,
.cert-article-content .custom-challenge-card h4 {
    color: #ffffff !important;
}

.cert-article-content .custom-challenges-grid p,
.cert-article-content .challenges-grid p,
.cert-article-content .custom-challenge-card p,
.cert-article-content .custom-challenges-grid li,
.cert-article-content .challenges-grid li,
.cert-article-content .custom-challenge-card li {
    color: rgba(255, 255, 255, 0.95) !important;
}
