/* Custom Utilities & Animations */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Syne:wght@700;800&display=swap');

body {
    background-color: #F4F1DE; /* Sand */
}

/* Geometric Stroke Text for Hero */
.stroke-text {
    -webkit-text-stroke: 2px #1A1A1A;
    color: transparent;
}

@media (min-width: 768px) {
    .stroke-text {
        -webkit-text-stroke: 3px #1A1A1A;
    }
}

/* Float Animations */
@keyframes float {
    0% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
    100% { transform: translateY(0px) rotate(0deg); }
}

@keyframes float-delayed {
    0% { transform: translateY(0px); }
    50% { transform: translateY(15px); }
    100% { transform: translateY(0px); }
}

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

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

/* Mobile Menu Transitions */
#mobile-menu {
    transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

/* Smooth Scroll Behavior */
html {
    scroll-behavior: smooth;
}

/* Form Focus States */
input:focus, textarea:focus {
    background-color: #fff;
    border-color: #D6684D; /* Terra 500 */
}
