* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Inter', sans-serif; } /* Плавная прокрутка для миниатюр карусели */ .overflow-x-auto { scrollbar-width: thin; scrollbar-color: #FF9900 #f5f5f5; } .overflow-x-auto::-webkit-scrollbar { height: 8px; } .overflow-x-auto::-webkit-scrollbar-track { background: #f5f5f5; border-radius: 10px; } .overflow-x-auto::-webkit-scrollbar-thumb { background: #FF9900; border-radius: 10px; } .overflow-x-auto::-webkit-scrollbar-thumb:hover { background: #e68a00; } /* Обрезка текста */ .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } /* Скрытие скроллбара для каруселей */ .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; } .scrollbar-hide::-webkit-scrollbar { display: none; } /* Градиентная анимация для Hero */ @keyframes gradient-shift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } .animate-gradient { background-size: 200% 200%; animation: gradient-shift 8s ease infinite; } /* Плавное появление элементов */ @keyframes fade-in-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .animate-fade-in-up { animation: fade-in-up 0.6s ease-out forwards; }