@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

:root {
    --primary: #059669;
    --primary-hover: #047857;
    --primary-light: #d1fae5;
    --dark: #0f172a;
}

* {
    font-family: 'Plus Jakarta Sans', sans-serif;
}

.glass {
    background-color: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.glass-card {
    background-color: white;
    border-radius: 1rem;
    border: 1px solid #f1f5f9;
    box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
}

.text-price-green {
    color: #10b981 !important;
    font-weight: 800;
}

.shadow-glow {
    box-shadow: 0 0 15px rgba(5, 150, 105, 0.3);
}

.shadow-soft {
    box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.animate-fade-in-up {
    animation: fadeInUp 0.8s ease-out forwards;
}

.animate-fade-in {
    animation: fadeIn 0.4s ease-out forwards;
}

.animate-bounce-slow {
    animation: bounce 3s infinite;
}

@keyframes bounce {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

/* Base resets for better vanilla experience */
html {
    scroll-behavior: smooth;
}

.bg-primary {
    background-color: var(--primary);
}

.bg-primary-hover {
    background-color: var(--primary-hover);
}

.bg-primary-light {
    background-color: var(--primary-light);
}

.bg-dark {
    background-color: var(--dark);
}

.text-primary {
    color: var(--primary);
}

.text-dark {
    color: var(--dark);
}