/* Explain: Base reset and typography defaults. - */
* {
    box-sizing: border-box;
}

html {
    background: var(--background-color);
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
    color: var(--text-color);
}

[x-cloak] {
    display: none !important;
}

/* Custom Soft Shadows for Premium Look */
.card-premium {
    box-shadow: 0 4px 20px rgba(33, 150, 243, 0.08);
    transition: all 0.3s ease;
}
.card-premium:hover {
    box-shadow: 0 12px 30px rgba(33, 150, 243, 0.15);
    transform: translateY(-4px);
}

.gradient-text {
    background: linear-gradient(90deg, var(--primary-color), var(--accent-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Floating Animation for Hero Arrow */
@keyframes float-up {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}
.animate-float-up {
    animation: float-up 2.5s ease-in-out infinite;
}