@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap');

body {
    font-family: 'Inter', sans-serif;
    scroll-behavior: smooth;
}

.bg-solida-yellow { background-color: #FBBF24; }
.text-solida-yellow { color: #FBBF24; }
.border-solida-yellow { border-color: #FBBF24; }

.nav-link.active {
    border-bottom: 2px solid #FBBF24;
    color: #FBBF24;
}

.service-card:hover {
    transform: translateY(-5px);
    transition: all 0.3s ease;
}

.hero-gradient {
    background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?q=80&w=2070&auto=format&fit=crop');
    background-size: cover;
    background-position: center;
}

.message-card {
    animation: messagePopIn 0.25s ease-out;
}

.message-success-icon {
    position: relative;
}

.message-progress-bar {
    width: 100%;
}

.message-progress-bar.is-running {
    animation: messageCountdownShrink var(--message-progress-duration, 4000ms) linear forwards;
}

.message-success-icon::after {
    content: '';
    position: absolute;
    inset: -8px;
    border-radius: 999px;
    border: 2px solid rgba(34, 197, 94, 0.35);
    animation: pulseRing 1.8s ease-out infinite;
}

@keyframes messagePopIn {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes pulseRing {
    0% {
        transform: scale(0.9);
        opacity: 0.8;
    }
    70% {
        transform: scale(1.05);
        opacity: 0;
    }
    100% {
        transform: scale(1.05);
        opacity: 0;
    }
}

@keyframes messageCountdownShrink {
    from {
        width: 100%;
    }
    to {
        width: 0%;
    }
}
