/* Общие стили */
body {
    font-family: 'Onest', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f3f3f3;
    /* Изменим фон всей страницы на белый */
    color: #333;
    /* Сделаем основной текст чуть темнее */
    line-height: 1.6;
}

.container {
    max-width: 1180px;
    /* Сделаем контейнер чуть шире */
    margin: 0 auto;
    padding: 0 15px;
    /* Добавим небольшие отступы по бокам контейнера */
}

/* Шапка */
header {
    background-color: #fff;
    padding: 15px 0;
    /* Немного увеличим вертикальные отступы */
    border-bottom: 1px solid #e9ecef;
    /* Чуть более светлая граница */
    position: sticky;
    /* Добавим прилипание шапки при скролле */
    top: 0;
    z-index: 100;
    /* Чтобы шапка была поверх контента */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    /* Небольшая тень для отделения */
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* Удалим дублирующие стили контейнера, они уже есть у .container */
}

.logo-main {
    font-size: 30px;
    /* Можете немного поиграть размером, если нужно */
    font-weight: 700;
    /* Оставляем жирным */
    color: #212529;
    /* Темный цвет по умолчанию (для "MONEY") */
    display: block;
    line-height: 1.1;
    /* Немного увеличим высоту строки */
    text-transform: uppercase;
    /* Убедимся, что все буквы заглавные */
}


/* Новый стиль для желтой части */
.logo-fly {
    color: #f8e537;
    /* Желтый цвет */
    /* Наследование остальных стилей от .logo-main */
}

.logo-sub {
    display: block;
    font-size: 11px;
    /* Оставляем размер или корректируем по вкусу */
    color: #343a40;
    /* Темно-серый цвет */
    margin-top: 5px;
    /* Немного увеличим отступ сверху */
    font-weight: 500;
    /* Оставляем среднюю жирность */
    letter-spacing: 1px;
    /* Немного увеличим разрядку */
    text-transform: uppercase;
    /* Оставляем заглавные */
}

.header-right {
    display: flex;
    align-items: center;
    gap: 15px;
    /* Увеличим разрыв */
}

.header-button {
    background-color: #ffef5e;
    /* Желтый фон, как у иконки */
    color: #383838;
    /* Темный текст */
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
    border: none;
    /* Убираем рамку */
    border-radius: 6px;
    /* Оставляем скругление */
    padding: 10px 25px;
    /* Скорректируем отступы под новый текст */
    cursor: pointer;
    font-size: 14px;
    /* Немного уменьшим шрифт */
    font-weight: 600;
    /* Сделаем жирнее */
    text-transform: uppercase;
    /* Все буквы заглавные */
    transition: background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
    /* Добавим плавность */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    /* Легкая тень */
    font-family: inherit;
}

.header-button:hover {
    background-color: #fdd835;
    /* Темнее желтый при наведении */
    color: #212529;
    /* Еще темнее текст */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    /* Усилим тень */
    
}

.question-icon {
    background-color: #f5e766;
    /* Желтый фон */
    color: #f5f5f5;
    /* Темный знак вопроса */
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.4);
    width: 32px;
    /* Чуть больше */
    height: 32px;
    border-radius: 50%;
    border: none;
    /* Убираем границу */
    outline: none;
    /* Убираем outline */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.question-icon:hover {
    background-color: #fdd835;
    /* Чуть темнее желтый при наведении */
    color: #212529;
    /* Еще темнее текст */
}

.question-icon:focus {
    outline: none;
    /* Убираем outline при фокусе */
    box-shadow: 0 0 0 2px rgba(245, 231, 102, 0.3);
    /* Добавляем мягкую тень для accessibility */
}

/* Основной контент */
main {
    padding-top: 1px;
    /* Увеличим отступ сверху */
    padding-bottom: 1px;
    background-color: #fff;
    /* Убедимся, что фон основной части белый */
}

/* --- Hero Section --- */
.hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0px;
    /* Увеличим отступ снизу */
    padding: 0px 0px;
    /* Увеличим вертикальные отступы, горизонтальные убрали т.к. есть у .container */
    background-color: #fff;
    /* Убираем серый фон */
    border-radius: 0;
    /* Убираем скругление */
    /* Убедимся, что нет лишней рамки */
    border: none;
}

.hero-left {
    max-width: 58%;
    /* Немного изменим пропорции */
}

.hero-right {
    max-width: 38%;
    text-align: center;
    /* Убедимся, что картинка по центру блока */
}

.hero-right img {
    max-width: 100%;
    height: auto;
    /* Возможно, добавить стиль для самой картинки с макета, если она имеет рамку/тень */
    border-radius: 8px;
    /* Если у картинки на макете скругления */
    /* box-shadow: 0 4px 8px rgba(0,0,0,0.1); Если есть тень */
}

.hero h1 {
    font-size: 38px;
    /* Немного уменьшим */
    font-weight: 700;
    margin-bottom: 20px;
    /* Увеличим отступ */
    color: #212529;
    /* Более темный цвет */
    line-height: 1.3;
}

.hero p {
    font-size: 16px;
    line-height: 1.7;
    color: #495057;
    /* Немного темнее серого */
    margin-bottom: 20px;
    /* Увеличим отступ */
}

.hero p:last-of-type {
    /* Уберем отступ у последнего параграфа в блоке */
    margin-bottom: 0;
}

.hero .loans-count {
    font-weight: 600;
    /* Сделаем жирнее */
    color: #495057;
    /* Темно-серый цвет */
    font-size: 15px;
    /* Чуть меньше */
    margin-top: 25px;
    /* Добавим отступ сверху */
    display: block;
    /* Чтобы отступ сработал */
}

/* --- Популярные МФО --- */
.popular-mfo {
    margin-bottom: 50px;
    /* Увеличим отступ */
    scroll-margin-top: 78px;
}

.popular-mfo h2,
.about-us h2 {
    /* Стилі шрифту і відступів */
    font-size: 32px;
    color: #343a40;
    font-weight: 600;
    margin-bottom: 45px; /* Відступ знизу */
    margin-top: 30px; /* Додамо відступ зверху */
    width: 90%; /* Обмежимо ширину */
    margin-left: auto; /* Центруємо блок h2 */
    margin-right: auto;
    text-align: center;
    border-bottom: 1px solid #e0e0e0; /* Малюємо нижню лінію */
    /* Створення ефекту рамки з розривом */
}

.popular-mfo h2 span,
.about-us h2 span {
    background-color: #f3f3f3; /* !!! Фон має бути ідентичний фону body !!! */
    padding: 0 20px; /* Горизонтальні відступи створюють "розрив" у лінії */

    /* Відновлюємо стилі шрифту, бо line-height їх міг зламати */
    font-size: 32px;
    color: #343a40;
    font-weight: 600;
    line-height: 1.4; /* Повертаємо нормальну висоту рядка для самого тексту */
}

.mfo-list {
    display: grid;
    /* grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); */
    grid-template-columns: repeat(3, 1fr);
    /* Строго 3 колонки */
    gap: 25px;
    /* Увеличим отступ между карточками */
}

.mfo-card {
    background-color: #fff;
    border: 1px solid #e9ecef;
    border-radius: 12px;
    padding: 25px;
    text-align: center;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    transition: box-shadow 0.3s ease;
    overflow: hidden;
    /* Скрываем все, что выходит за пределы скругленных углов */
    /* Добавим position:relative, если понадобится для будущих доработок */
    position: relative;
}

.mfo-card:hover {
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
    /* Усилим тень при наведении */
}

.mfo-logo {
    /* Убираем стили для текста и фона */
    /* background-color: #fff; */
    /* border: 1px solid #e9ecef; */
    /* color: #333; */
    /* font-weight: bold; */
    /* font-size: 20px; */
    /* padding: 15px 10px; */
    /* min-height: 50px; */

    /* Новые стили для контейнера картинки */
    margin-bottom: 20px;
    /* Оставляем отступ снизу */
    display: flex;
    /* Используем flex для центрирования */
    justify-content: center;
    /* Центрируем по горизонтали */
    align-items: center;
    /* Центрируем по вертикали */
    min-height: 60px;
    /* Задаем минимальную высоту, чтобы выровнять карточки */
    /* background-color: #f0f0f0; /* Временный фон для отладки */
}

.mfo-logo img {
    max-width: 100%;
    /* Ограничиваем максимальную ширину логотипа */
    max-height: 50px;
    /* Ограничиваем максимальную высоту логотипа */
    height: auto;
    /* Сохраняем пропорции */
    display: block;
    /* Убираем возможные отступы под картинкой */
}

.mfo-info {
    margin-bottom: 20px;
    /* Увеличим отступ */
}

.mfo-info span {
    display: block;
    margin-bottom: 5px;
    /* Увеличим отступ */
    font-size: 14px;
    /* Базовый размер */
    color: #6c757d;
    /* Светло-серый */
}

.mfo-info .amount {
    font-size: 24px;
    /* Значительно увеличим */
    font-weight: 700;
    /* Жирный */
    color: #212529;
    /* Почти черный */
    margin-bottom: 8px;
    /* Отступ под суммой */
}

.mfo-info .rate,
.mfo-info .age {
    font-size: 12px;
    /* Уменьшим размер */
    color: #adb5bd;
    /* Сделаем еще светлее серый */
}

.mfo-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
    /* Оставляем небольшой отступ между текстом и кнопкой */
    /* Убедимся, что нет лишних отступов, которые помешают кнопке растянуться */
    padding: 0;
    margin: 0;
    align-items: center;
    /* Центрируем текст "Получи деньги..." */
}

.fast-approval {
    font-size: 13px;
    color: #343a40;
    /* Темно-серый текст */
    background-color: transparent;
    /* Убираем фон */
    padding: 0;
    /* Убираем внутренние отступы */
    border-radius: 0;
    /* Убираем скругление */
    font-weight: 500;
    /* Ставим среднюю жирность */
    /* margin-bottom: 10px; Убрали, используем gap в .mfo-actions */
}

.apply-button {
    background-color: #f5e766;
    /* Желтый фон */
    color: #343a40;
    /* Темный текст */
    border: none;
    /* Скругление только нижних углов, синхронно с карточкой (.mfo-card) */
    border-radius: 0 0 12px 12px;
    padding: 15px 10px;
    /* Увеличим вертикальный отступ */
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    /* Чуть жирнее */
    transition: background-color 0.3s ease, color 0.3s ease;
    text-transform: uppercase;
    width: calc(100% + 50px);
    /* Растягиваем кнопку на всю ширину карточки + ее паддинги (25px + 25px) */
    margin: 0 -25px -25px -25px;
    /* Компенсируем паддинги карточки, чтобы кнопка прижалась к краям и низу */
    box-shadow: none;
    /* Убираем тень, кнопка - часть карточки */
    font-family: inherit;
}

.apply-button:hover {
    background-color: #fdd835;
    /* Темнее желтый при наведении */
    color: #212529;
}

/* --- О нас --- */
.about-us {
    margin-bottom: 50px;
    text-align: center;
    padding: 40px;
    /* Увеличим отступы */
    background-color: #f8f9fa;
    /* Светло-серый фон для всей секции */
    border-radius: 12px;
    border: none;
    /* Убираем рамку секции */
    /* Если нужен эффект блока внутри блока как на макете, стилизуем сам блок */
    /* Например, можно добавить div внутрь section.about-us и стилизовать его, */
    /* но попробуем пока стили для самой секции, похоже на макет */

}

/* .about-us h2 {
    font-size: 32px;
    
    margin-bottom: 25px;
    color: #343a40;
    font-weight: 600;
} */

.about-us p {
    font-size: 16px;
    line-height: 1.8;
    color: #495057;
    /* Темнее серого */
    max-width: 700px;
    /* Ограничим ширину текста для читаемости */
    margin-left: auto;
    margin-right: auto;
}

/* --- Условия и лицензии --- */
.conditions-licenses {
    display: flex;
    justify-content: center;
    gap: 20px;
    /* Увеличим разрыв */
    margin-bottom: 50px;
}

.conditions-licenses a {
    display: inline-block;
    padding: 15px 40px;
    /* Увеличим отступы */
    background-color: #f5e766;
    /* Желтый фон */
    color: #343a40;
    /* Темный текст */
    border: none;
    /* Убираем рамку */
    border-radius: 6px;
    /* Скругление как у кнопок */
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
    font-weight: 600;
    /* Жирнее */
    font-size: 16px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    /* Небольшая тень */
}

.conditions-licenses a:hover {
    background-color: #fdd835;
    /* Темнее желтый */
    color: #212529;
    /* Еще темнее текст */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    /* Усилим тень */
}

/* --- Подвал --- */
footer {
    background-color: #f8f9fa;
    /* Светло-серый фон */
    color: #6c757d;
    /* Средне-серый текст */
    padding: 30px 0;
    /* Увеличим отступы */
    text-align: center;
    font-size: 13px;
    /* Чуть меньше */
    border-top: 1px solid #e9ecef;
    /* Разделитель сверху */
}

footer p {
    margin: 8px 0;
    /* Увеличим вертикальные отступы между строками */
    line-height: 1.5;
}

/* Дополнительные медиа-запросы для адаптивности (пример) */
@media (max-width: 992px) {
    .hero {
        flex-direction: column;
        /* В столбик на средних экранах */
        text-align: center;
    }

    .hero-left,
    .hero-right {
        max-width: 100%;
    }

    .hero-right {
        margin-top: 30px;
    }

    .mfo-list {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        /* Адаптивные колонки */
        gap: 20px;
    }

    .hero-right img {
        max-width: 40%;
        height: auto;
    }
}

@media (max-width: 768px) {
    .container {
        padding: 0 10px;
    }

    .header-inner {
        padding: 0 10px;
        /* Уменьшаем отступы на мобильных */
        flex-direction: column;
        /* Лого и кнопки друг под другом */
        gap: 10px;
    }

    .header-right {
        margin-top: 10px;
    }

    .hero h1 {
        font-size: 30px;
    }

    .mfo-list {
        grid-template-columns: 1fr;
        /* Одна колонка на мобильных */
        gap: 15px;
    }

    .conditions-licenses {
        flex-direction: column;
        /* Кнопки друг под другом */
        align-items: center;
        gap: 10px;
    }

    .conditions-licenses a {
        width: 80%;
        /* Растянем кнопки */
        text-align: center;
    }

    footer {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .logo-main {
        font-size: 24px;
    }

    .logo-sub {
        font-size: 10px;
    }

    .hero h1 {
        font-size: 26px;
    }

    .hero p {
        font-size: 14px;
    }

    .popular-mfo h2,
    .about-us h2 {
        font-size: 28px;
    }

    .mfo-card {
        padding: 15px;
    }

    .mfo-info .amount {
        font-size: 20px;
    }

    .apply-button {
        font-size: 14px;
        padding: 12px 20px;
        margin-bottom: -15px;
    }

    .conditions-licenses a {
        font-size: 14px;
        padding: 12px 20px;
    }

    .footer {
        padding: 20px 0;
    }
    .modal-content {
        font-size: 13px;
    }
    .modal-content h3{
        font-size: 19px;
    }
}

/* Styles for license cards */
.licenses-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.license-card {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.license-card h4 {
    margin: 0 0 15px 0;
    color: #212529;
    font-size: 18px;
    font-weight: 600;
}

.license-card table {
    width: 100%;
    border-collapse: collapse;
}

.license-card table td {
    padding: 8px 0;
    line-height: 1.4;
    vertical-align: top;
}

.license-card table td:first-child {
    width: 160px;
    color: #6c757d;
    font-weight: 500;
}

.license-card table td:last-child {
    color: #212529;
}

/* Mobile styles for licenses */
@media (max-width: 768px) {
    .license-card {
        padding: 15px;
    }

    .license-card table td:first-child {
        width: 120px;
    }

    .license-card table td {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .license-card table td {
        font-size: 13px;
    }
    
    .license-card table td:first-child {
        width: 100px;
    }
}

/* --- Стилі для модального вікна --- */
.modal-overlay {
    display: none; /* За замовчуванням приховано */
    position: fixed; /* Фіксована позиція */
    inset: 0; /* Розтягуємо на весь екран (top: 0; right: 0; bottom: 0; left: 0;) */
    background-color: rgba(0, 0, 0, 0.6); /* Напівпрозорий темний фон */
    z-index: 1000; /* Поверх усього контенту */

    /* Центрування вмісту вікна */
    justify-content: center;
    align-items: center;
    padding: 20px; /* Відступи від країв екрану */
}

/* Клас для показу вікна */
.modal-overlay.active {
    display: flex; /* Показуємо як flex для центрування */
}

.modal-content {
    background-color: #fff; /* Білий фон вікна (або #fafafa, якщо фон сторінки такий) */
    padding: 30px 35px;
    border-radius: 8px; /* Скруглення кутів */
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2); /* Тінь */
    max-width: 650px; /* Максимальна ширина вікна */
    width: 100%; /* Адаптивна ширина */
    position: relative; /* Для позиціонування кнопки закриття */
    max-height: 85vh; /* Обмеження висоти, якщо багато тексту */
    overflow-y: auto; /* Додати прокрутку, якщо вміст не влазить */
}

.modal-content h3 {
    margin-top: 0;
    margin-bottom: 20px;
    color: #343a40; /* Колір заголовка */
    text-align: center;
    font-size: 24px; /* Розмір заголовка */
}

.modal-content ul {
    list-style: none; /* Прибираємо стандартні маркери списку */
    padding: 0;
    margin: 0;
}

.modal-content li {
    margin-bottom: 15px; /* Відступ між пунктами */
    line-height: 1.6; /* Міжрядковий інтервал */
    color: #495057; /* Колір тексту */
}

.modal-content li strong {
    color: #343a40; /* Колір акценту */
}

.modal-close {
    position: absolute; /* Абсолютне позиціонування відносно .modal-content */
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    font-size: 28px; /* Розмір хрестика */
    line-height: 1;
    color: #888; /* Колір хрестика */
    cursor: pointer;
    padding: 0;
    transition: color 0.2s ease;
}

.modal-close:hover {
    color: #333; /* Колір хрестика при наведенні */
}