/* Energolux — анимации, параллакс, лайтбокс. Подключается после style.css; без него страница работает как раньше. */
[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1);transition-delay:var(--rd,0ms);will-change:opacity,transform}
[data-reveal="left"]{transform:translateX(-32px)}
[data-reveal="right"]{transform:translateX(32px)}
[data-reveal="zoom"]{transform:scale(.86)}
[data-reveal].is-in{opacity:1;transform:none}

.feat img,.spec img,.usp-item img{transition:transform .28s cubic-bezier(.22,.61,.36,1)}
.feat:hover img,.usp-item:hover img{transform:scale(1.12)}
.spec:hover img{transform:scale(1.08)}
.prod-media img{cursor:zoom-in;transition:transform .35s cubic-bezier(.22,.61,.36,1)}
.prod-media img:hover{transform:scale(1.04)}
.badge{transition:transform .28s ease}
.prod:hover .badge{transform:translateY(-2px)}

@media (min-width:1101px){
 .sec-photo{background-attachment:fixed}
 .prod{position:sticky;top:18px;background:#fff;padding:34px 28px 40px;margin:0 -28px 20vh;box-shadow:0 -18px 36px -22px rgba(0,0,0,.3)}
 .prod:last-of-type{margin-bottom:0}
 .prod.no-stick{margin-bottom:0}
 .prod+.prod::before{display:none}
 .prod:first-of-type{box-shadow:none}
 .prod.no-stick{position:static}
 .top{background-size:calc(100% * var(--heroz,1.16)) auto;transition:background-size 3s cubic-bezier(.25,.46,.45,.94)}
}

/* лайтбокс */
.lb{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:40px;background:rgba(34,34,34,.86);opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}
.lb.is-open{opacity:1;visibility:visible}
.lb img{max-width:min(1100px,92vw);max-height:86vh;width:auto;height:auto;transform:scale(.94);transition:transform .3s cubic-bezier(.22,.61,.36,1);background:#fff}
.lb.is-open img{transform:none}
.lb-close{position:absolute;top:20px;right:24px;width:44px;height:44px;border:0;border-radius:50%;background:var(--red);color:#fff;font:400 22px/1 var(--font);cursor:pointer}
.lb-close:hover{background:var(--red-dark)}

@media (prefers-reduced-motion:reduce){
 [data-reveal]{opacity:1;transform:none;transition:none}
 .sec-photo{background-attachment:scroll}
 .prod{position:static;box-shadow:none;padding:0 0 44px;margin:0}
 .top{background-size:cover}
}
