/* Fluid Scalable Design - Only for very large screens (2xl and up) */
html {
    font-size: 16px; /* default */
}

@media (min-width: 1536px) {
    html {
        font-size: clamp(16px, 1vw + 1px, 22px); 
    }
}

/* Custom Animations */
@keyframes floatVertical {
    0% { transform: translateY(-100%); }
    100% { transform: translateY(100vh); }
}

@keyframes floatDiagonal {
    0% { transform: translateY(-100%) translateX(-50px) rotate(45deg); }
    100% { transform: translateY(100vh) translateX(50px) rotate(45deg); }
}

@keyframes floatDiagonalRev {
    0% { transform: translateY(-100%) translateX(50px) rotate(-45deg); }
    100% { transform: translateY(100vh) translateX(-50px) rotate(-45deg); }
}

@keyframes fadeInUp {
    0% { opacity: 0; transform: translateY(20px); }
    100% { opacity: 1; transform: translateY(0); }
}

/* Utilities */
.animate-float-vertical {
    animation: floatVertical 20s linear infinite;
}

.animate-float-diagonal {
    animation: floatDiagonal 25s linear infinite;
}

.animate-float-diagonal-rev {
    animation: floatDiagonalRev 28s linear infinite;
}

.animate-fade-in-up {
    animation: fadeInUp 0.8s ease-out forwards;
}

/* Scrollbar hiding for horizontal scroll areas */
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}
.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
