.elementor-143 .elementor-element.elementor-element-33457eb{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-cb81859 */.sm-about-wrap, .sm-about-wrap * { box-sizing: border-box; }
.sm-about-wrap { max-width: 100%; margin: 0 auto; padding: 40px 0; font-family: inherit; color: #0F172A; }
.sm-about-hero { text-align: center; margin-bottom: 50px; }
.sm-about-title { font-size: 38px; color: #024731; font-weight: 800; margin: 0 0 20px 0; line-height: 1.2; letter-spacing: -0.5px; }
.sm-about-subtitle { font-size: 18px; color: #0F172A; opacity: 0.8; max-width: 800px; margin: 0 auto; line-height: 1.6; }
.sm-about-stats { display: flex; justify-content: center; gap: 30px; margin-bottom: 60px; flex-wrap: wrap; }
.sm-about-stat-card { background: #FFFFFF; border: 1px solid #F8FAFC; border-radius: 16px; padding: 35px 20px; text-align: center; box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04); min-width: 220px; flex: 1; border-bottom: 5px solid #10B981; transition: transform 0.3s ease; }
.sm-about-stat-card:hover { transform: translateY(-5px); box-shadow: 0 10px 25px rgba(16, 185, 129, 0.1); }
.sm-about-stat-num { font-size: 46px; font-weight: 900; color: #10B981; margin-bottom: 10px; line-height: 1; }
.sm-about-stat-text { font-size: 14px; color: #0F172A; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; opacity: 0.9; }
.sm-about-content { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; margin-bottom: 70px; align-items: center; }
.sm-about-text-block h2 { font-size: 30px; color: #024731; font-weight: 800; margin: 0 0 20px 0; line-height: 1.3; }
.sm-about-text-block p { font-size: 16px; line-height: 1.8; margin: 0 0 15px 0; opacity: 0.85; }
/* --- Оригинальный стиль блока-контейнера --- */
.sm-about-image {
    background: #F8FAFC;
    border-radius: 20px;
    height: 100%;
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px dashed #10B981; /* Пунктирная рамка */
    color: #10B981;
    font-weight: 700;
    font-size: 18px;
    box-shadow: inset 0 2px 10px rgba(15, 23, 42, 0.02);
    
    /* Добавляем, чтобы картинка не вылезала за скругленные углы */
    overflow: hidden; 
    /* Позиционирование для текста-заглушки, если картинка не загрузится */
    position: relative; 
}

/* --- Новый стиль для самой картинки внутри блока --- */
.sm-about-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Эффект "ковер": картинка заполняет все пространство, сохраняя пропорции */
    object-fit: cover; 
    /* Центрирование изображения */
    object-position: center; 
    /* Обеспечиваем, чтобы картинка была поверх текста-заглушки */
    z-index: 1; 
}
.sm-about-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-bottom: 60px; }
.sm-about-feature { background: #FFFFFF; padding: 35px 25px; border-radius: 16px; box-shadow: 0 4px 15px rgba(15, 23, 42, 0.03); border: 1px solid #F8FAFC; transition: all 0.3s ease; position: relative; overflow: hidden; }
.sm-about-feature::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #10B981, #024731); opacity: 0; transition: opacity 0.3s ease; }
.sm-about-feature:hover { transform: translateY(-5px); border-color: #10B981; box-shadow: 0 12px 30px rgba(2, 71, 49, 0.08); }
.sm-about-feature:hover::before { opacity: 1; }
.sm-about-icon { font-size: 36px; margin-bottom: 20px; display: inline-block; padding: 15px; background: rgba(16, 185, 129, 0.1); border-radius: 12px; }
.sm-about-feature h3 { font-size: 20px; color: #024731; margin: 0 0 12px 0; font-weight: 800; }
.sm-about-feature p { font-size: 15px; opacity: 0.8; margin: 0; line-height: 1.6; }
.sm-about-cta { background: linear-gradient(135deg, #024731 0%, #0F172A 100%); padding: 60px 40px; border-radius: 20px; text-align: center; color: #FFFFFF; box-shadow: 0 20px 40px rgba(2, 71, 49, 0.15); border-bottom: 6px solid #E7472A; }
.sm-about-cta h3 { font-size: 32px; margin: 0 0 15px 0; font-weight: 800; }
.sm-about-cta p { font-size: 18px; margin: 0 auto 35px auto; opacity: 0.9; max-width: 600px; }
.sm-about-btn { display: inline-block; background: #E7472A; color: #FFFFFF !important; padding: 18px 45px; border-radius: 10px; font-weight: 800; font-size: 16px; text-decoration: none; text-transform: uppercase; letter-spacing: 0.5px; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(231, 71, 42, 0.3); border: none; cursor: pointer; }
.sm-about-btn:hover { background: #FFFFFF; color: #E7472A !important; transform: translateY(-2px); box-shadow: 0 8px 25px rgba(231, 71, 42, 0.4); }

@media (max-width: 992px) {
    .sm-about-content { grid-template-columns: 1fr; }
    .sm-about-image { min-height: 300px; }
    .sm-about-features { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .sm-about-features { grid-template-columns: 1fr; }
    .sm-about-title { font-size: 30px; }
    .sm-about-stat-card { min-width: 100%; padding: 25px 20px; }
    .sm-about-text-block h2 { font-size: 26px; }
    .sm-about-cta h3 { font-size: 26px; }
}/* End custom CSS */