/* Custom Overrides & Animations */
html {
    scroll-behavior: smooth;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 12px;
}
::-webkit-scrollbar-track {
    background: #ECF0F1;
}
::-webkit-scrollbar-thumb {
    background: #00A896;
    border: 3px solid #ECF0F1;
    border-radius: 6px;
}
::-webkit-scrollbar-thumb:hover {
    background: #007A6E;
}

/* Navbar Scroll State */
nav.scrolled {
    background-color: #2C3E50;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* Geometric Shape Animations */
@keyframes float {
    0% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
    100% { transform: translateY(0px) rotate(0deg); }
}

.floating-shape {
    animation: float 6s ease-in-out infinite;
}

/* Hard Shadow Utility (Neo-Brutalism style) */
.shadow-hard {
    box-shadow: 8px 8px 0px #2C3E50;
}

.shadow-hard-sm {
    box-shadow: 4px 4px 0px #2C3E50;
}

/* Hover Effects for Cards */
.menu-card:hover img {
    transform: scale(1.1);
}

/* Form Focus States */
input:focus, textarea:focus {
    outline: none;
    border-color: #00A896;
    box-shadow: 4px 4px 0px #2C3E50;
}
