/* Additional custom styles beyond Tailwind */

/* Marquee animation */
@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.animate-marquee {
    animation: marquee 25s linear infinite;
}

/* Geometric shape animations */
@keyframes float {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
}

@keyframes float-reverse {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(20px) rotate(-5deg); }
}

.geo-circle, .geo-rect {
    animation: float 8s ease-in-out infinite;
}

.geo-triangle {
    animation: float-reverse 6s ease-in-out infinite;
}

/* Subtle pattern overlay for cream sections */
.bg-cream-pattern {
    background-image: radial-gradient(circle at 25% 25%, rgba(74, 124, 36, 0.03) 0%, transparent 50%),
                      radial-gradient(circle at 75% 75%, rgba(74, 124, 36, 0.03) 0%, transparent 50%);
}

/* Focus visible styles */
*:focus-visible {
    outline: 2px solid #4a7c24;
    outline-offset: 2px;
}

/* Selection color */
::selection {
    background: #4a7c24;
    color: white;
}

/* Print styles */
@media print {
    nav, #back-to-top, .geo-circle, .geo-rect, .geo-triangle {
        display: none !important;
    }
    body {
        background: white !important;
        color: black !important;
    }
}
