/* Сброс и базовые стили */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    min-height: 100%;
}

body {
    font-family: 'Inter', sans-serif;
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
    color: #ffffff;
    line-height: 1.7; /* Увеличено для лучшей читаемости */
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    font-size: 16px; /* Базовый размер шрифта */
    letter-spacing: 0.01em; /* Небольшое увеличение межбуквенного интервала */
    text-rendering: optimizeLegibility; /* Улучшенный рендеринг текста */
    -webkit-font-smoothing: antialiased; /* Сглаживание шрифтов */
    -moz-osx-font-smoothing: grayscale;
}

/* Основной контент */
.main {
    flex: 1 0 auto;
}

/* Подвал */
.footer {
    flex-shrink: 0;
}

.container {
    max-width: 1700px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Глобальные стили для touch-устройств */
@media (hover: none) and (pointer: coarse) {
    /* Увеличиваем размеры интерактивных элементов для лучшего touch-опыта */
    button, 
    .btn, 
    input[type="button"], 
    input[type="submit"], 
    input[type="reset"],
    a[role="button"],
    [role="button"] {
        min-height: 44px;
        min-width: 44px;
        padding: 12px 16px;
    }
    
    /* Улучшаем touch-цели */
    .nav-link,
    .auth-link,
    .contact-btn,
    .submit-button,
    .registration-button,
    .login-button,
    .carousel-arrow,
    .modal-close,
    .modal-btn,
    .photo-remove,
    .photo-remove-btn,
    .password-toggle,
    .dropdown-toggle,
    .dropdown-item,
    .burger-menu,
    .mobile-nav-close,
    .mobile-nav-link,
    .social-link {
        min-height: 44px;
        min-width: 44px;
        touch-action: manipulation;
    }
    
    /* Улучшаем скролл на touch-устройствах */
    * {
        scroll-behavior: smooth;
    }
}