html { scroll-behavior: smooth; }
body { background-color: #f7f5f0; color: #0F0F0F; }

.form-input { 
    background: transparent; 
    border: none; 
    border-bottom: 2px solid rgba(15,15,15,0.3); 
    outline: none; 
    padding: 1.5rem 0; 
    width: 100%; 
    transition: border-color 0.3s; 
    font-size: 1.5rem; 
    font-family: 'Playfair Display', serif; 
    margin-bottom: 2rem; 
    text-align: center; 
    color: #0F0F0F; 
}
.form-input::placeholder {
    color: rgba(15,15,15,0.5);
}
.form-input:focus { 
    border-color: #E29F41; 
}



/* Animated Nav Underline */
.nav-hover { position: relative; display: inline-block; padding-bottom: 2px; }
.nav-hover::after { content: ''; position: absolute; width: 100%; transform: scaleX(0); height: 1.5px; bottom: 0; left: 0; background-color: currentColor; transform-origin: bottom right; transition: transform 0.4s cubic-bezier(0.86, 0, 0.07, 1); }
.nav-hover:hover::after { transform: scaleX(1); transform-origin: bottom left; }

/* Specific Advanced GSAP Reveals */
.gs-reveal { opacity: 0; transform: translateY(30px); transition: all 1s cubic-bezier(0.16, 1, 0.3, 1); }
.gs-reveal.is-active { opacity: 1; transform: translateY(0); }

.gs-reveal-img { 
    clip-path: inset(100% 0 0 0); 
    transition: clip-path 1.5s cubic-bezier(0.77, 0, 0.175, 1); 
}
.gs-reveal-img.is-active { 
    clip-path: inset(0% 0 0 0); 
}

.hide-scrollbar { scrollbar-width: none; -ms-overflow-style: none; scroll-behavior: smooth; }
.hide-scrollbar::-webkit-scrollbar { display: none; }
