/* Подключение кастомного шрифта Decima Nova */
@font-face {
    font-family: 'Decima Nova';
    src: url('fonts/decima_nova.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* Общий контейнер секции */
.counter-section {
    background-color: #f5f5f5; /* Светлый фон */
    color: #111; /* Темный текст */
    text-align: center;
    padding: 80px 20px; /* Внутренние отступы */
    margin: 200px 0 150px; /* Опущен ниже, увеличен верхний отступ */
    opacity: 0;
    transform: translateY(80px); /* Опускание блока плавно */
    animation: slide-in 1s ease-out forwards; /* Анимация появления */
}

/* Анимация для заголовка */
@keyframes slide-in {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Заголовок */
.counter-title {
    font-size: 36px;
    font-weight: bold;
    color: #111; /* Темный цвет текста */
    margin-bottom: 20px;
    opacity: 0;
    animation: fade-in 1.2s ease-out forwards;
}

/* Курсив в заголовке */
.counter-title i {
    font-style: italic;
    color: #555; /* Серый оттенок */
}

/* Подзаголовок */
.counter-subtitle {
    font-size: 20px;
    color: #666; /* Темно-серый текст */
    margin-bottom: 60px; /* Увеличенный отступ */
    font-style: italic;
    opacity: 0;
    animation: fade-in 1.4s ease-out forwards;
}

/* Контейнер для счетчиков */
.counter-container {
    display: flex;
    justify-content: center; /* Центрирование элементов */
    align-items: center; /* Выравнивание по вертикали */
    gap: 300px; /* Оптимальный отступ между счетчиками */
    max-width: 1200px;
    margin: 0 auto;
    flex-wrap: wrap; /* Позволяет перенос на новую строку при узком экране */
}

/* Блок каждого счетчика */
.counter-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px; /* Отступ между изображением, числом и подписью */
    opacity: 0;
    transform: translateY(30px);
    animation: fade-in 1.5s ease-out forwards;
}

/* Изображения */
.counter-image {
    width: 90px;
    height: 90px;
    object-fit: contain;
    transition: transform 0.3s ease-in-out;
}

/* Числа */
.counter-number {
    font-size: 55px;
    font-weight: bold;
    color: #2b2b2b;
    transition: transform 0.3s ease-in-out;
}

/* Подписи */
.counter-label {
    font-size: 20px;
    color: #444;
}

/* Эффект увеличения при наведении */
.counter-item:hover .counter-image,
.counter-item:hover .counter-number {
    transform: scale(1.1);
}

/* Анимация плавного появления */
@keyframes fade-in {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Адаптивность */
@media (max-width: 1024px) {
    .counter-container {
        gap: 100px; /* Уменьшенный отступ для средних экранов */
    }
}

@media (max-width: 768px) {
    .counter-container {
        flex-direction: column; /* Счетчики идут в колонку */
        gap: 50px; /* Оптимизированный отступ на мобильных */
    }
    
    .counter-image {
        width: 70px;
        height: 70px;
    }

    .counter-number {
        font-size: 45px;
    }

    .counter-label {
        font-size: 18px;
    }
}
