/* =========================================
   WINTER PARALLAX SPECIFIC STYLES
========================================= */

/* --- Winter Backgrounds --- */
.bg-1-winter {
    position: absolute;
    width: 100%; height: 100%;
    background-image: url('https://alfoart.com/images/derionzini-images/background-1-winter.webp');
    background-size: cover;
    background-position: center bottom;
    animation: blurCycle 14s infinite ease-in-out;
}

.bg-2-winter {
    position: absolute;
    width: 110vw; height: 65vh; left: -6vw; bottom: -3vh;
    background-size: cover;
    background-image: url('https://alfoart.com/images/derionzini-images/background-2-winter.webp');
    z-index: 10;
}
.moon-bg { position: absolute; width: 100%; height: 33vh; top: -5%; background-image: url('https://alfoart.com/images/derionzini-images/moon.webp'); background-size: contain; background-position: center top; background-repeat: no-repeat; animation: lightPulsemoon 8s infinite ease-in-out; }

.front-shell-winter {
    position: absolute;
    width: 100%; height: 100%;
    background-image: url('https://alfoart.com/images/derionzini-images/front-scene-winter.webp'); 
    background-size: 100% 100%; 
    z-index: 33;
}

/* --- Winter Cloud --- */
.cloud-winter { 
    height: 90%; width: 90%; left: -5%; top: -30%; 
    background-image: url('https://alfoart.com/images/derionzini-images/cloud-winter.webp'); 
    background-repeat: no-repeat; background-size: contain; opacity: 0.8; 
    animation: cloud-float 10s 0.1s infinite alternate cubic-bezier(0.4, 0.05, 0.5, 0.9);
}

/* --- Ultra-Lightweight CSS Snow --- */
#winter-container {
    position: absolute; top: 0; left: 0; 
    width: 100%; height: 100%;
    pointer-events: none; z-index: 45; overflow: hidden;
}
/* --- CSS DOM SNOW --- */
.css-snowflake {
    position: absolute;
    background-color: #ffffff;
    border-radius: 50%;
    top: -5vh; 
    will-change: transform, top, left;
}

@keyframes snow-fall {
    0%   { top: -5vh; transform: translateX(0); }
    100% { top: 105vh; transform: translateX(var(--sway-distance)); }
}
@media (max-height: 1080px) and (orientation: landscape) { 
    .moon-bg { display: none; } 
}
/* --- Winter Mobile Overrides --- */
@media (max-width: 768px) and (orientation: portrait) {
    .bg-2-winter { width: 310vw; left: -120vw; }
    .cloud-winter { height: 200%; width: 200%; left: -15%; top: -85%;  }
	.moon-bg { width: 300vw; left: -100vw; top: 1vw; }
}