/* Global Reset & Base */
:root {
    --primary: #059669; /* Emerald 600 */
    --secondary: #1f2937; /* Gray 800 */
    --accent: #10b981; /* Emerald 500 */
    --bg-light: #f9fafb;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Helvetica Neue', Arial, 'Microsoft YaHei', sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Scroll Animation Utilities */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease-out;
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

/* Custom Component Styles */
.glass-nav {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
}

.product-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.hero-overlay {
    background: linear-gradient(to right, rgba(5, 150, 105, 0.9), rgba(6, 78, 59, 0.7));
}

/* Loading Skeleton for Images */
.img-loading {
    background-color: #e5e7eb;
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .5; }
}