/* style.css */

/* Accent colors */
.bg-primary-blue { background-color: #0d47a1; }
.text-primary-blue { color: #0d47a1; }
.bg-accent-green { background-color: #4CAF50; }
.text-accent-green { color: #4CAF50; }
.border-accent-green { border-color: #4CAF50; }
.hover\:bg-accent-green-dark:hover { background-color: #45a049; }
.focus\:ring-accent-green:focus { --tw-ring-color: #4CAF50; }

/* Hero background blob */
.blob-bg {
    position: absolute;
    top: -50px;
    left: -50px;
    width: 500px;
    height: 500px;
    background: #0d47a1;
    opacity: 0.15;
    border-radius: 50%;
    filter: blur(100px);
    animation: blobMove 12s infinite alternate;
    z-index: -1;
}
.blob-bg:nth-child(2) {
    top: -100px;
    left: auto;
    right: -100px;
    background: #4CAF50;
    animation-duration: 15s;
    opacity: 0.1;
}
.blob-bg:nth-child(3) {
    bottom: -80px;
    left: 20%;
    width: 400px;
    height: 400px;
    background: #8E24AA;
    opacity: 0.65;
    animation-duration: 18s;
}
@keyframes blobMove {
    0% { transform: translate(0,0) scale(1); }
    50% { transform: translate(30px, -30px) scale(1.1); }
    100% { transform: translate(0,30px) scale(0.9); }
}

/* Hero animations */
.hero-container { position: relative; overflow: hidden; }
canvas { position: absolute; top: 0; left: 0; z-index: 0; }
.hero-content { position: relative; z-index: 10; }

/* Section text animations */
.animate-bounce-fade { animation: bounceFade 1.2s ease-out forwards; }
@keyframes bounceFade { 0% { transform: translateY(-50px); opacity: 0; } 60% { transform: translateY(20px); opacity: 1; } 80% { transform: translateY(-10px); } 100% { transform: translateY(0); } }
.animate-fade-up { animation: fadeUp 1.2s ease-out forwards; animation-delay: 0.5s; }
@keyframes fadeUp { 0% { opacity: 0; transform: translateY(30px); } 100% { opacity: 1; transform: translateY(0); } }

/* Card pop-in on scroll */
.card {
    transform: translateY(50px) scale(0.95);
    opacity: 0;
    transition: all 0.8s cubic-bezier(.17,.67,.83,.67);
}
.card.pop-in {
    transform: translateY(0) scale(1);
    opacity: 1;
}

body {
    font-family: 'Lato', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', sans-serif;
}


@keyframes sorrowful-droop {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(10px) rotate(2deg); }
}

.animate-sorrow {
    animation: sorrowful-droop 1.5s ease-in-out infinite !important;
}



