/* styles.css — shared component styles for the mobiCar website.
   Tailwind utility classes handle most styling; this file holds the
   custom components and animations reused across pages. */

body {
    font-family: 'Plus Jakarta Sans', sans-serif;
}

/* Frosted navigation bar */
.glass-nav {
    background: rgba(26, 26, 26, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* Bento grid cards (home) */
.bento-card {
    background: #242424;
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease;
}
.bento-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.4);
}

/* Submodule / feature cards */
.module-card,
.feature-card,
.app-feature-card {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-card:hover,
.feature-card:hover,
.app-feature-card:hover {
    border-color: #FFA000;
    box-shadow: 0 10px 30px -10px rgba(255, 160, 0, 0.15);
    transform: translateY(-4px);
}

/* Entrance animation */
.fade-up {
    animation: fadeUpAnim 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    opacity: 0;
    transform: translateY(20px);
}
@keyframes fadeUpAnim {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.delay-100 { animation-delay: 100ms; }
.delay-200 { animation-delay: 200ms; }
.delay-300 { animation-delay: 300ms; }

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .fade-up { animation: none; opacity: 1; transform: none; }
    html { scroll-behavior: auto; }
}
