/* Custom Animations and Utilities */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap');

html {
    scroll-behavior: smooth;
}

/* Blob Animation */
@keyframes blob {
    0% { transform: translate(0px, 0px) scale(1); }
    33% { transform: translate(30px, -50px) scale(1.1); }
    66% { transform: translate(-20px, 20px) scale(0.9); }
    100% { transform: translate(0px, 0px) scale(1); }
}

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

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

/* Form Focus States */
input:focus, select:focus, textarea:focus {
    border-color: #803043; /* plum-700 */
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #f5f5f4; /* stone-50 */
}
::-webkit-scrollbar-thumb {
    background: #d6d3d1; /* stone-300 */
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #a8a29e; /* stone-400 */
}

/* Smooth fade in on scroll */
.fade-in-section {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
    will-change: opacity, visibility;
}
.fade-in-section.is-visible {
    opacity: 1;
    transform: none;
}
