/* Custom CSS for SM Studio Marca */

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

/* Custom animations */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in {
    animation: fadeIn 0.8s ease-out;
}

.animate-slide-up {
    animation: slideUp 0.8s ease-out 0.2s both;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #F3F4F6;
}

::-webkit-scrollbar-thumb {
    background: #A4CBB4;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #8BB39F;
}

/* Form styles */
.form-input {
    @apply w-full px-4 py-3 border border-gray-300 rounded-xl focus:outline-none focus:ring-2 focus:ring-sage focus:border-transparent transition-all duration-300;
}

.form-textarea {
    @apply w-full px-4 py-3 border border-gray-300 rounded-xl focus:outline-none focus:ring-2 focus:ring-sage focus:border-transparent transition-all duration-300 resize-none;
}

.btn-primary {
    @apply bg-sage text-white px-8 py-4 rounded-2xl font-semibold hover:bg-sage/90 transition-all duration-300 transform hover:scale-105;
}

.btn-secondary {
    @apply border-2 border-sage text-sage px-8 py-4 rounded-2xl font-semibold hover:bg-sage hover:text-white transition-all duration-300;
}

/* Card hover effects */
.card-hover {
    @apply transition-all duration-300 hover:shadow-lg hover:scale-105;
}

/* Loading animation */
.loading {
    @apply animate-pulse;
}

/* Custom focus styles */
.focus-ring {
    @apply focus:outline-none focus:ring-2 focus:ring-sage focus:ring-offset-2;
}

/* Mobile menu animation */
.mobile-menu-enter {
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Material grid animations */
.material-card {
    @apply transition-all duration-300 hover:shadow-md hover:scale-105;
}

/* Sustainability icons animation */
.sustainability-icon {
    @apply transition-all duration-300 hover:scale-110;
}

/* Responsive text sizes */
@media (max-width: 640px) {
    .hero-title {
        @apply text-3xl;
    }
    
    .hero-subtitle {
        @apply text-lg;
    }
}

@media (min-width: 641px) and (max-width: 768px) {
    .hero-title {
        @apply text-4xl;
    }
    
    .hero-subtitle {
        @apply text-xl;
    }
}

@media (min-width: 769px) {
    .hero-title {
        @apply text-6xl;
    }
    
    .hero-subtitle {
        @apply text-2xl;
    }
}
