/* Essentials Creative - Consistent Photo Filters */
/* Black & White Aesthetic with Botanical Theme */

/* Base filter for all images */
.gallery-item img,
.hero,
.video-wrapper,
.media-item img,
.lightbox-trigger img {
    filter: contrast(1.1) brightness(1.05);
    transition: filter 0.3s ease;
}

/* Hover state - slightly increase contrast */
.gallery-item:hover img,
.media-item:hover img,
.lightbox-trigger:hover img {
    filter: contrast(1.2) brightness(1.08);
}

/* Black and white filter for consistency */
.bw-filter {
    filter: grayscale(100%) contrast(1.2) brightness(1.05);
}

/* Soft black and white (preserves some tone) */
.bw-soft {
    filter: grayscale(90%) contrast(1.15) brightness(1.05);
}

/* High contrast black and white */
.bw-high-contrast {
    filter: grayscale(100%) contrast(1.4) brightness(1.1);
}

/* Botanical theme specific filters */
.botanical-filter {
    filter: contrast(1.15) brightness(1.05) saturate(0.9) hue-rotate(5deg);
}

/* Apply to hero images for consistency */
.hero {
    filter: brightness(1.1) contrast(1.05);
}

/* Dark overlay consistency */
.hero-overlay {
    background: linear-gradient(135deg, 
        rgba(26, 26, 26, 0.7) 0%, 
        rgba(26, 26, 26, 0.5) 40%, 
        rgba(26, 26, 26, 0.8) 100%) !important;
}

/* Ensure video thumbnails match aesthetic */
.video-item {
    filter: contrast(1.05);
}

/* Installation images - maintain clarity */
.installations-grid img {
    filter: contrast(1.08) brightness(1.02);
}

/* Portfolio images - crisp and clean */
.portfolio-grid img {
    filter: contrast(1.12) brightness(1.05);
}

/* Consistent shadow treatment */
.gallery-item,
.media-item,
.video-item,
.card {
    box-shadow: 0 4px 20px rgba(26, 26, 26, 0.08);
    transition: box-shadow 0.3s ease;
}

.gallery-item:hover,
.media-item:hover,
.video-item:hover,
.card:hover {
    box-shadow: 0 8px 30px rgba(26, 26, 26, 0.12);
}

/* Ensure text remains crisp over images */
.hero-content,
.overlay-text {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8),
                 0 0 20px rgba(0, 0, 0, 0.5);
}

/* Consistent border treatment */
img {
    border-radius: 8px;
}

/* Loading state for images */
.loading-image {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Print styles - ensure images print well */
@media print {
    img {
        filter: contrast(1.2) brightness(1.1) !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    img {
        filter: contrast(1.3) brightness(1.1);
    }
}

/* Dark mode adjustments */
@media (prefers-color-scheme: dark) {
    img {
        filter: brightness(0.9) contrast(1.1);
    }
    
    .hero-overlay {
        background: linear-gradient(135deg, 
            rgba(0, 0, 0, 0.8) 0%, 
            rgba(0, 0, 0, 0.6) 40%, 
            rgba(0, 0, 0, 0.9) 100%) !important;
    }
}