@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* Base Styles & Utility overrides */
html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    overflow-x: hidden;
}

/* Animations */
@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-12px); }
    100% { transform: translateY(0px); }
}

.animate-float {
    animation: float 4s ease-in-out infinite;
}

@keyframes blob {
    0% { transform: translate(0px, 0px) scale(1); }
    33% { transform: translate(30px, -50px) scale(1.05); }
    66% { transform: translate(-20px, 20px) scale(0.95); }
    100% { transform: translate(0px, 0px) scale(1); }
}

.animate-blob {
    animation: blob 8s infinite;
}

.animation-delay-2000 {
    animation-delay: 2s;
}

/* Fade in up intersection observer classes */
.fade-in-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.fade-in-up.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Custom Input autofill reset to look good */
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px #F9FAFB inset !important;
    -webkit-text-fill-color: #121212 !important;
    transition: background-color 5000s ease-in-out 0s;
}

/* Inverts dark text of the logo to white while keeping orange icon orange */
.logo-white-text {
    filter: invert(1) hue-rotate(180deg) brightness(1.2);
}

/* Pulse animation for urgency */
@keyframes pulse-glow {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.8; transform: scale(1.05); }
}
.animate-pulse-glow {
    animation: pulse-glow 2s ease-in-out infinite;
}

/* FAQ styles */
details summary {
    cursor: pointer;
    list-style: none;
}
details summary::-webkit-details-marker {
    display: none;
}
details[open] summary .faq-icon {
    transform: rotate(45deg);
}
.faq-icon {
    transition: transform 0.3s ease;
}

/* Urgency banner gradient */
.urgency-gradient {
    background: linear-gradient(135deg, #FF6B00 0%, #FF8C1A 50%, #FF6B00 100%);
    background-size: 200% 200%;
    animation: gradient-shift 3s ease infinite;
}
@keyframes gradient-shift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Counter badge pulse */
.badge-pulse {
    animation: badge-pulse 2s ease-in-out infinite;
}
@keyframes badge-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(255, 107, 0, 0.4); }
    50% { box-shadow: 0 0 0 8px rgba(255, 107, 0, 0); }
}

/* Progress bar animation */
@keyframes progress-fill {
    from { width: 0%; }
    to { width: 100%; }
}
.animate-progress {
    animation: progress-fill 1.5s ease-out forwards;
    animation-delay: 0.5s;
}

/* Countdown pulse for urgency */
@keyframes urgency-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}
.animate-urgency {
    animation: urgency-pulse 1.5s ease-in-out infinite;
}

