/* Lapisan motif batik Dayak untuk latar gelap. Warna diatur lewat --batik-color agar menyatu dengan palet. */
.batik-layer { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.batik-layer::before {
    content: ''; position: absolute; inset: -40px;
    background: var(--batik-color, #34c79f);
    opacity: var(--batik-opacity, .13);
    -webkit-mask-image: url('../images/batik-dayak-tile.webp'), var(--batik-fade, radial-gradient(120% 90% at 85% 15%, #000 0%, #0009 45%, transparent 85%));
    mask-image: url('../images/batik-dayak-tile.webp'), var(--batik-fade, radial-gradient(120% 90% at 85% 15%, #000 0%, #0009 45%, transparent 85%));
    -webkit-mask-size: var(--batik-size, 150px) auto, 100% 100%;
    mask-size: var(--batik-size, 150px) auto, 100% 100%;
    -webkit-mask-repeat: repeat, no-repeat;
    mask-repeat: repeat, no-repeat;
    -webkit-mask-composite: source-in;
    mask-composite: intersect;
    animation: batik-drift 60s linear infinite;
}
.batik-layer::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 60%, var(--batik-base, #062a26) 100%); opacity: .6; }
@keyframes batik-drift { to { -webkit-mask-position: 150px 262px, 0 0; mask-position: 150px 262px, 0 0; } }
@media (prefers-reduced-motion: reduce) { .batik-layer::before { animation: none; } }
