/* AN CÁCH LÃNG ENERGY — cinematic home 4.3.2 */
:root{--acl-cine-navy:#061421;--acl-cine-navy-2:#0a2234;--acl-cine-ink:#102738;--acl-cine-gold:#f4bb3a;--acl-cine-gold-2:#ffd873;--acl-cine-ivory:#f4f1e9;--acl-cine-line:rgba(255,255,255,.14);--acl-cine-ease:cubic-bezier(.22,.7,.18,1)}
html{scroll-behavior:auto}
body.angelong-front-page{background:var(--acl-cine-navy);overflow-x:clip}
body.angelong-front-page .site-topbar{position:relative;z-index:1090}
body.angelong-front-page .site-header{z-index:1100;border-bottom:1px solid rgba(255,255,255,.08);background:#071827;backdrop-filter:none}
body.angelong-front-page .site-header.is-scrolled{background:rgba(5,19,31,.96)}
body.angelong-front-page #primary.acl-cinema{display:block!important;overflow:clip;color:#fff;background:var(--acl-cine-navy)}
body.angelong-front-page #primary.acl-cinema>*{order:unset!important}
.acl-cinema *{box-sizing:border-box}
.acl-cinema h1,.acl-cinema h2,.acl-cinema h3,.acl-cinema p{margin-top:0}
.acl-cinema h1,.acl-cinema h2,.acl-cinema h3{word-break:normal!important;overflow-wrap:normal!important;hyphens:none;font-kerning:normal}
.acl-cinema h1,.acl-cinema h2{letter-spacing:-.032em;text-wrap:balance}
.acl-cinema h2{margin-bottom:0;color:#fff;font-family:Inter,Arial,sans-serif;font-size:clamp(2.8rem,5.2vw,6.4rem);font-weight:300;line-height:1.02}
.acl-cinema h2 em{color:var(--acl-cine-gold-2);font-family:"Times New Roman",Georgia,serif;font-style:italic;font-weight:400;line-height:1.08;letter-spacing:-.012em;font-variant-ligatures:none}
.acl-cine-kicker{display:flex;align-items:center;gap:12px;margin:0 0 26px;color:rgba(255,255,255,.72);font-size:.7rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.acl-cine-kicker span{display:block;width:30px;height:1px;background:var(--acl-cine-gold)}
.acl-cine-button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:58px;padding:0 28px;border:1px solid transparent;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.055em;text-decoration:none;text-transform:uppercase;transition:transform .35s var(--acl-cine-ease),background .35s,color .35s,border-color .35s}
.acl-cine-button:hover{transform:translateY(-3px)}
.acl-cine-button i{font-size:1rem;font-style:normal}
.acl-cine-button--gold{color:#10202c!important;background:var(--acl-cine-gold)}
.acl-cine-button--gold:hover{background:#ffd56a}
.acl-cine-button--glass{color:#fff!important;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.06);backdrop-filter:blur(12px)}
.acl-cine-button--glass:hover{border-color:#fff;background:rgba(255,255,255,.12)}
.acl-cine-button--dark{color:#fff!important;background:var(--acl-cine-navy)}

/* Fixed chapter rail */
.acl-cine-rail{position:fixed;z-index:70;top:50%;right:18px;display:flex;flex-direction:column;gap:8px;transform:translateY(-50%)}
.acl-cine-rail a{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:rgba(255,255,255,.42);font-size:.62rem;letter-spacing:.12em;text-decoration:none;text-transform:uppercase;transition:color .3s}
.acl-cine-rail a span{display:grid;width:30px;height:30px;border:1px solid rgba(255,255,255,.2);border-radius:50%;place-items:center;transition:border-color .3s,background .3s}
.acl-cine-rail a em{max-width:0;overflow:hidden;font-style:normal;opacity:0;white-space:nowrap;transition:max-width .3s,opacity .3s}
.acl-cine-rail a:hover em,.acl-cine-rail a.is-active em{max-width:100px;opacity:1}
.acl-cine-rail a.is-active{color:#fff}
.acl-cine-rail a.is-active span{color:var(--acl-cine-navy);border-color:var(--acl-cine-gold);background:var(--acl-cine-gold)}

/* Hero */
.acl-cine-hero{position:relative;display:flex;min-height:min(960px,calc(100svh - 42px));isolation:isolate;align-items:flex-end;overflow:hidden;background:#071622}
.acl-cine-hero__media{position:absolute;z-index:-5;inset:-2%;background-image:linear-gradient(90deg,rgba(3,14,25,.95) 0%,rgba(3,14,25,.82) 40%,rgba(3,14,25,.22) 75%),linear-gradient(0deg,rgba(4,16,27,.86) 0%,transparent 45%),var(--acl-hero-image);background-position:center;background-size:cover;transform:scale(1.035);filter:none}
.acl-cine-hero__sun{position:absolute;z-index:-4;top:4%;right:6%;width:min(42vw,590px);aspect-ratio:1;border-radius:50%;opacity:.58;background:radial-gradient(circle,rgba(255,216,115,.7) 0,rgba(244,187,58,.2) 34%,transparent 70%);filter:none;mix-blend-mode:normal;animation:none}
.acl-cine-hero__glow{position:absolute;z-index:-3;right:-20%;bottom:-45%;width:80vw;height:75vw;border-radius:50%;opacity:.55;background:radial-gradient(circle,rgba(244,187,58,.18),transparent 64%);filter:none}
.acl-cine-hero__grid{position:absolute;z-index:-2;right:-16vw;bottom:-32vh;width:76vw;height:65vh;opacity:.26;background-image:linear-gradient(rgba(255,216,115,.55) 1px,transparent 1px),linear-gradient(90deg,rgba(255,216,115,.55) 1px,transparent 1px);background-size:70px 48px;transform:perspective(500px) rotateX(62deg) rotateZ(-10deg);mask-image:linear-gradient(to bottom,transparent,#000 42%)}
.acl-cine-hero__inner{position:relative;display:flex;width:100%;min-height:inherit;padding-top:clamp(70px,10vh,120px);padding-bottom:clamp(95px,13vh,150px);align-items:flex-end;justify-content:space-between}
.acl-cine-hero__copy{width:min(1180px,82vw)}
.acl-cine-hero h1{margin:0;color:#fff;font-family:Inter,Arial,sans-serif;font-size:clamp(3.4rem,7vw,7.25rem);font-weight:300;line-height:.96}
.acl-cine-hero h1 span,.acl-cine-hero h1 em{display:block}
.acl-cine-hero h1 span,.acl-cine-hero h1 em{white-space:nowrap}
.acl-cine-hero h1 em{margin-top:.08em;margin-left:6vw;color:var(--acl-cine-gold-2);font-family:"Times New Roman",Georgia,serif;font-size:.72em;font-style:italic;font-weight:400;line-height:1.08;letter-spacing:-.012em;font-variant-ligatures:none}
.acl-cine-hero__lead{max-width:630px;margin:36px 0 0 8vw;color:rgba(255,255,255,.76);font-size:clamp(1rem,1.45vw,1.22rem);line-height:1.8}
.acl-cine-actions{display:flex;gap:12px;margin:30px 0 0 8vw;flex-wrap:wrap}
.acl-cine-hero__note{position:absolute;right:20px;bottom:118px;width:250px;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.3)}
.acl-cine-hero__note span{display:block;margin-bottom:7px;color:var(--acl-cine-gold-2);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.acl-cine-hero__note p{margin:0;color:rgba(255,255,255,.62);font-size:.78rem;line-height:1.65}
.acl-cine-scroll{position:absolute;bottom:31px;left:50%;display:flex;align-items:center;gap:16px;color:rgba(255,255,255,.6);font-size:.65rem;letter-spacing:.13em;text-decoration:none;text-transform:uppercase;transform:translateX(-50%)}
.acl-cine-scroll i{position:relative;display:block;width:28px;height:44px;border:1px solid rgba(255,255,255,.34);border-radius:20px}
.acl-cine-scroll i:after{position:absolute;top:8px;left:50%;width:3px;height:7px;border-radius:3px;background:var(--acl-cine-gold);content:"";transform:translateX(-50%);animation:acl-cine-scroll 1.8s ease-in-out infinite}
@keyframes acl-cine-breathe{50%{opacity:.62;transform:scale(1.06)}}
@keyframes acl-cine-scroll{0%{opacity:0;transform:translate(-50%,0)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,17px)}}

/* Promise strip */
.acl-cine-promise{border-top:1px solid var(--acl-cine-line);border-bottom:1px solid var(--acl-cine-line);background:#071827}
.acl-cine-promise .ae-container{display:grid;grid-template-columns:repeat(4,1fr)}
.acl-cine-promise p{display:flex;min-height:110px;margin:0;padding:25px 24px;border-right:1px solid var(--acl-cine-line);align-items:center;gap:17px}
.acl-cine-promise p:last-child{border-right:0}
.acl-cine-promise b{color:var(--acl-cine-gold);font:400 1.1rem Georgia,serif}
.acl-cine-promise span{color:rgba(255,255,255,.74);font-size:.77rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

/* Three full-screen use cases */
.acl-cine-cases{position:relative;height:310vh;background:#081725}
.acl-cine-cases__sticky{position:sticky;top:0;height:100svh;overflow:hidden}
.acl-cine-cases__visuals,.acl-cine-cases__visuals figure,.acl-cine-cases__shade{position:absolute;inset:0}
.acl-cine-cases__visuals figure{margin:0;background-position:center;background-size:cover;opacity:0;transform:scale(1.025);transition:opacity .58s ease;will-change:opacity}
.acl-cine-cases__visuals figure.is-active{opacity:1}
.acl-cine-cases__shade{background:linear-gradient(90deg,rgba(2,13,23,.97) 0%,rgba(2,13,23,.78) 46%,rgba(2,13,23,.18) 78%),linear-gradient(0deg,rgba(2,13,23,.83),transparent 46%)}
.acl-cine-cases__frame{position:relative;height:100%;padding-top:clamp(70px,12vh,130px);padding-bottom:80px}
.acl-cine-cases__heading{position:absolute;top:12vh;left:20px;width:min(760px,54vw)}
.acl-cine-cases__heading h2{font-size:clamp(3rem,4.7vw,5.55rem);line-height:1.01}
.acl-cine-cases__contents{position:absolute;right:6%;bottom:13%;width:min(460px,38vw);min-height:300px}
.acl-cine-cases__contents article{position:absolute;inset:0;display:flex;opacity:0;transform:translateY(45px);pointer-events:none;flex-direction:column;justify-content:flex-end;transition:opacity .5s,transform .75s var(--acl-cine-ease)}
.acl-cine-cases__contents article.is-active{opacity:1;transform:none;pointer-events:auto}
.acl-cine-cases__contents article>span{color:var(--acl-cine-gold-2);font-size:.7rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.acl-cine-cases__contents h3{margin:15px 0;color:#fff;font-size:clamp(1.8rem,3vw,3rem);font-weight:400;line-height:1.05}
.acl-cine-cases__contents p{color:rgba(255,255,255,.7);font-size:.95rem;line-height:1.75}
.acl-cine-cases__contents a{width:max-content;color:#fff;font-size:.74rem;font-weight:800;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}
.acl-cine-cases__contents a i{margin-left:12px;color:var(--acl-cine-gold);font-style:normal}
.acl-cine-cases__index{position:absolute;bottom:10%;left:20px;display:flex;gap:9px}
.acl-cine-cases__index span{display:grid;width:45px;height:45px;color:rgba(255,255,255,.42);border:1px solid rgba(255,255,255,.2);border-radius:50%;font-size:.67rem;place-items:center;transition:.4s}
.acl-cine-cases__index span.is-active{color:#0c2231;border-color:var(--acl-cine-gold);background:var(--acl-cine-gold)}

/* Energy map */
.acl-cine-flow{position:relative;padding:clamp(100px,15vw,220px) 0;background:radial-gradient(circle at 65% 48%,rgba(23,79,103,.44),transparent 38%),#061421}
.acl-cine-flow:before{position:absolute;inset:0;opacity:.09;background-image:linear-gradient(rgba(255,255,255,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.25) 1px,transparent 1px);background-size:80px 80px;content:"";mask-image:radial-gradient(circle,#000,transparent 74%)}
.acl-cine-flow__grid{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(540px,1.1fr);align-items:center;gap:5vw}
.acl-cine-flow__copy h2{font-size:clamp(2.8rem,4.7vw,5.4rem);line-height:1.02}
.acl-cine-flow__copy p:last-child{max-width:530px;margin-top:36px;color:rgba(255,255,255,.63);font-size:1rem;line-height:1.8}
.acl-energy-map{position:relative;min-height:670px;isolation:isolate}
.acl-energy-node{position:absolute;display:flex;width:190px;min-height:145px;padding:26px;color:#fff;border:1px solid rgba(255,255,255,.17);border-radius:24px;background:rgba(8,31,46,.94);box-shadow:0 20px 46px rgba(0,0,0,.22);flex-direction:column;justify-content:flex-end;transition:transform .35s var(--acl-cine-ease),border-color .35s}
.acl-energy-node:hover{border-color:rgba(244,187,58,.65);transform:translateY(-8px)}
.acl-energy-node>span{position:absolute;top:18px;right:20px;color:var(--acl-cine-gold);font:400 .85rem Georgia,serif}
.acl-energy-node>i{position:absolute;top:22px;left:23px;width:38px;height:27px;border:1px solid rgba(255,216,115,.7);background:linear-gradient(135deg,rgba(244,187,58,.35),transparent);transform:skewX(-16deg)}
.acl-energy-node strong{font-size:1rem}.acl-energy-node small{margin-top:5px;color:rgba(255,255,255,.55);font-size:.7rem}
.acl-energy-node--panel{top:7%;left:5%}.acl-energy-node--inverter{top:22%;right:2%}.acl-energy-node--battery{bottom:8%;right:15%}.acl-energy-node--load{bottom:20%;left:2%}
.acl-energy-node--inverter>i{width:28px;height:36px;border-radius:5px;transform:none}.acl-energy-node--battery>i{width:34px;height:34px;border-radius:6px;transform:none}.acl-energy-node--load>i{width:36px;height:30px;border-top:0;clip-path:polygon(50% 0,100% 38%,88% 38%,88% 100%,12% 100%,12% 38%,0 38%);transform:none}
/* Animated SVG paths overlay */
.acl-emap-svg{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}
/* Sun indicator */
.acl-energy-map__sun{position:absolute;top:1%;left:18%;display:flex;flex-direction:column;align-items:center;gap:5px;color:rgba(244,187,58,.82);font-size:.6rem;letter-spacing:.08em;font-weight:600;text-transform:uppercase;animation:acl-sun-glow 3s ease-in-out infinite}
@keyframes acl-sun-glow{0%,100%{filter:drop-shadow(0 0 5px rgba(244,187,58,.3))}50%{filter:drop-shadow(0 0 14px rgba(244,187,58,.75))}}
@keyframes acl-cine-spin{to{transform:rotate(360deg)}}

/* Natural-scroll installation journey with a staged 3D system. */
.acl-cine-process{position:relative;padding:clamp(110px,13vw,190px) 0;overflow:clip;background:radial-gradient(circle at 20% 42%,rgba(34,95,118,.2),transparent 34%),#071827}
.acl-cine-process:before{position:absolute;inset:0;opacity:.08;background-image:linear-gradient(rgba(255,255,255,.24) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.24) 1px,transparent 1px);background-size:76px 76px;content:"";mask-image:linear-gradient(90deg,#000,transparent 72%)}
.acl-cine-process__head{position:relative;display:grid;margin-bottom:clamp(75px,9vw,120px);grid-template-columns:1.1fr .7fr;align-items:end;gap:8vw}
.acl-cine-process__head h2{font-size:clamp(2.9rem,4.7vw,5.7rem);line-height:1.01}
.acl-cine-process__head>p{max-width:480px;margin:0 0 7px;color:rgba(255,255,255,.62);font-size:1rem;line-height:1.8}
.acl-cine-process__journey{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:start;gap:clamp(50px,7vw,110px)}
.acl-cine-process__visual{position:relative;min-width:0;align-self:stretch}
.acl-install-scene{position:sticky;top:120px;width:100%;height:min(72svh,700px);min-height:570px;border:1px solid rgba(255,255,255,.14);border-radius:34px;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 72% 22%,rgba(244,187,58,.13),transparent 28%),linear-gradient(145deg,#0a2639,#06131f 72%);box-shadow:0 35px 100px rgba(0,0,0,.32);perspective:1100px;transform-style:preserve-3d}
.acl-install-scene:before{position:absolute;z-index:-1;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:48px 48px;content:"";transform:perspective(500px) rotateX(62deg) scale(1.45);transform-origin:center 70%}
.acl-install-scene__halo{position:absolute;top:9%;left:18%;width:64%;aspect-ratio:1;border:1px solid rgba(255,216,115,.2);border-radius:50%;box-shadow:0 0 0 42px rgba(244,187,58,.025),0 0 0 84px rgba(244,187,58,.016);transition:opacity .8s,transform 1s var(--acl-cine-ease);animation:acl-install-orbit 26s linear infinite}
.acl-install-scene__halo:after{position:absolute;top:8%;left:17%;width:9px;height:9px;border-radius:50%;background:var(--acl-cine-gold);box-shadow:0 0 20px var(--acl-cine-gold);content:""}
.acl-install-scene__sun{position:absolute;top:10%;right:10%;width:62px;height:62px;border-radius:50%;background:#ffd468;box-shadow:0 0 0 12px rgba(255,212,104,.06),0 0 45px rgba(255,212,104,.5);animation:acl-install-float 5s ease-in-out infinite}
.acl-install-scene__blueprint{position:absolute;top:23%;left:10%;width:38%;height:24%;border:1px solid rgba(129,207,238,.5);opacity:1;background:linear-gradient(90deg,transparent 48%,rgba(129,207,238,.35) 49% 51%,transparent 52%),linear-gradient(transparent 48%,rgba(129,207,238,.35) 49% 51%,transparent 52%);background-size:26px 26px;transform:rotate(-8deg) translateZ(35px);transition:opacity .6s,transform .8s var(--acl-cine-ease)}
.acl-install-scene__blueprint:after{position:absolute;right:12%;bottom:14%;width:46%;height:40%;border:1px solid rgba(129,207,238,.65);content:"";clip-path:polygon(0 100%,0 55%,50% 0,100% 55%,100% 100%)}
.acl-install-scene__scan{position:absolute;z-index:6;top:18%;right:8%;left:8%;height:2px;opacity:0;background:linear-gradient(90deg,transparent,#ffd66d,#fff,#ffd66d,transparent);box-shadow:0 0 20px rgba(255,214,109,.75);transition:opacity .45s;animation:acl-install-scan 2.2s ease-in-out infinite}
.acl-install-scene__roof{position:absolute;z-index:2;top:37%;right:7%;left:7%;height:235px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(145deg,#274a5d,#102f43 56%,#0a2232);box-shadow:0 34px 70px rgba(0,0,0,.42);transform:rotateX(57deg) rotateZ(-9deg) translateZ(5px);transform-style:preserve-3d;transition:transform 1.05s var(--acl-cine-ease),box-shadow .8s}
.acl-install-scene__roof:before,.acl-install-scene__roof:after{position:absolute;content:"";background:#071622}
.acl-install-scene__roof:before{top:100%;right:-1px;left:-1px;height:40px;transform:skewX(42deg);transform-origin:top}
.acl-install-scene__roof:after{top:18%;bottom:-39px;left:100%;width:38px;transform:skewY(48deg);transform-origin:left}
.acl-install-scene__panels{position:absolute;inset:9%;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;transform:translateZ(28px);transform-style:preserve-3d}
.acl-install-scene__panels i{position:relative;border:1px solid rgba(153,214,241,.62);opacity:.12;background:linear-gradient(135deg,rgba(78,139,172,.92),rgba(5,31,49,.98)),linear-gradient(90deg,transparent 48%,rgba(255,255,255,.24) 50%,transparent 52%);box-shadow:0 6px 14px rgba(0,0,0,.3);transform:translateY(46px) rotateX(-18deg);transition:opacity .7s,transform 1s var(--acl-cine-ease)}
.acl-install-scene__panels i:after{position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.28) 47%,transparent 65%);content:"";transform:translateX(-130%);animation:acl-panel-shine 5.4s ease-in-out infinite}
.acl-install-scene__inverter{position:absolute;z-index:5;right:12%;bottom:18%;width:86px;height:118px;border:1px solid rgba(255,255,255,.7);border-radius:10px;opacity:0;background:linear-gradient(145deg,#fff,#ccd5da);box-shadow:15px 20px 34px rgba(0,0,0,.34);transform:translate3d(45px,35px,0) rotateY(-22deg);transition:opacity .65s,transform .9s var(--acl-cine-ease)}
.acl-install-scene__inverter:after{position:absolute;top:8px;bottom:8px;left:100%;width:12px;border-radius:0 5px 5px 0;background:#9eabb2;content:"";transform:skewY(-35deg);transform-origin:left}
.acl-install-scene__inverter>i{position:absolute;top:17px;left:50%;width:40px;height:19px;border-radius:4px;background:#0d2a39;transform:translateX(-50%)}
.acl-install-scene__inverter>span{position:absolute;top:48px;left:50%;width:8px;height:8px;border-radius:50%;background:#52d896;box-shadow:0 0 12px #52d896;transform:translateX(-50%)}
.acl-install-scene__battery{position:absolute;z-index:4;bottom:15%;left:11%;display:flex;width:100px;height:126px;padding:10px 9px;border:1px solid rgba(255,255,255,.35);border-radius:9px;opacity:0;background:linear-gradient(145deg,#1b4358,#081e2e);box-shadow:-14px 22px 36px rgba(0,0,0,.38);flex-direction:column;gap:7px;transform:translate3d(-42px,35px,0) rotateY(20deg);transition:opacity .65s,transform .9s var(--acl-cine-ease)}
.acl-install-scene__battery>i{height:29px;border:1px solid rgba(255,255,255,.18);border-radius:4px;background:linear-gradient(90deg,rgba(255,255,255,.08),transparent)}
.acl-install-scene__battery:after{position:absolute;top:17px;right:16px;width:6px;height:6px;border-radius:50%;background:#f4bb3a;box-shadow:0 0 12px #f4bb3a;content:""}
.acl-install-scene__energy{position:absolute;z-index:4;right:19%;bottom:23%;left:19%;height:3px;opacity:0;background:linear-gradient(90deg,#ffd66d,#fff,#ffd66d);box-shadow:0 0 16px rgba(255,214,109,.7);transform:rotate(-2deg);transition:opacity .55s}
.acl-install-scene__energy i{position:absolute;top:50%;left:0;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 18px #ffd66d;animation:acl-energy-travel 2.25s linear infinite}
.acl-install-scene__check{position:absolute;z-index:7;top:14%;left:50%;display:grid;width:96px;height:96px;border:1px solid rgba(255,216,115,.45);border-radius:50%;opacity:0;place-items:center;transform:translateX(-50%) scale(.55);transition:opacity .55s,transform .8s var(--acl-cine-ease)}
.acl-install-scene__check:before,.acl-install-scene__check:after{position:absolute;inset:-14px;border:1px solid rgba(255,216,115,.18);border-radius:50%;content:""}.acl-install-scene__check:after{inset:-28px}
.acl-install-scene__check i{display:grid;width:60px;height:60px;color:#102738;border-radius:50%;background:var(--acl-cine-gold);font-size:1.6rem;font-style:normal;place-items:center;box-shadow:0 0 35px rgba(244,187,58,.38)}
.acl-install-scene__status{position:absolute;z-index:8;right:28px;bottom:25px;left:28px;display:flex;padding-top:18px;border-top:1px solid rgba(255,255,255,.17);align-items:center;gap:18px}
.acl-install-scene__status>span{color:var(--acl-cine-gold-2);font:400 2.5rem Georgia,serif}.acl-install-scene__status small{display:block;margin-bottom:4px;color:rgba(255,255,255,.43);font-size:.56rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.acl-install-scene__status strong{color:#fff;font-size:.9rem;font-weight:600}
.acl-install-scene[data-step="2"] .acl-install-scene__scan{opacity:1}.acl-install-scene[data-step="2"] .acl-install-scene__blueprint{opacity:.28;transform:rotate(-3deg) translateZ(15px)}
.acl-install-scene[data-step="3"] .acl-install-scene__blueprint{opacity:.85;transform:rotate(0) translateZ(48px)}
.acl-install-scene[data-step="3"] .acl-install-scene__panels i,.acl-install-scene[data-step="4"] .acl-install-scene__panels i,.acl-install-scene[data-step="5"] .acl-install-scene__panels i,.acl-install-scene[data-step="6"] .acl-install-scene__panels i{opacity:1;transform:none}
.acl-install-scene[data-step="4"] .acl-install-scene__blueprint,.acl-install-scene[data-step="5"] .acl-install-scene__blueprint,.acl-install-scene[data-step="6"] .acl-install-scene__blueprint{opacity:0}
.acl-install-scene[data-step="4"] .acl-install-scene__inverter,.acl-install-scene[data-step="4"] .acl-install-scene__battery,.acl-install-scene[data-step="5"] .acl-install-scene__inverter,.acl-install-scene[data-step="5"] .acl-install-scene__battery,.acl-install-scene[data-step="6"] .acl-install-scene__inverter,.acl-install-scene[data-step="6"] .acl-install-scene__battery{opacity:1;transform:rotateY(0)}
.acl-install-scene[data-step="5"] .acl-install-scene__energy,.acl-install-scene[data-step="6"] .acl-install-scene__energy{opacity:1}
.acl-install-scene[data-step="6"] .acl-install-scene__check{opacity:1;transform:translateX(-50%) scale(1)}.acl-install-scene[data-step="6"] .acl-install-scene__roof{box-shadow:0 34px 78px rgba(0,0,0,.42),0 0 65px rgba(244,187,58,.14)}

/* Six photographic stages: natural scroll drives a restrained 3D crossfade. */
.acl-install-scene{--scene-rx:0deg;--scene-ry:0deg;contain:layout paint}
.acl-install-scene:after{position:absolute;z-index:7;inset:0;border-radius:inherit;box-shadow:inset 0 1px rgba(255,255,255,.16),inset 0 -90px 100px rgba(1,12,20,.74);content:"";pointer-events:none}
.acl-install-scene__note{position:absolute;z-index:9;top:34px;left:34px;padding:9px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:rgba(255,255,255,.72);background:rgba(5,20,32,.62);font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px)}
.acl-install-scene__media{position:absolute;z-index:2;inset:18px 18px 92px;transform:rotateX(var(--scene-rx)) rotateY(var(--scene-ry));transform-style:preserve-3d;transition:transform .2s ease-out;will-change:transform}
.acl-install-scene__media figure{position:absolute;inset:0;margin:0;border:1px solid rgba(255,255,255,.17);border-radius:25px;opacity:0;overflow:hidden;background:#0a2030;box-shadow:0 32px 60px rgba(0,0,0,.3);transform:translate3d(0,28px,-80px) rotateY(-3deg) scale(.93);transform-origin:50% 55%;transition:opacity .65s ease,transform 1.05s var(--acl-cine-ease),filter .8s ease;will-change:opacity,transform}
.acl-install-scene__media figure:after{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,18,28,.04) 42%,rgba(3,16,25,.76) 100%),linear-gradient(110deg,rgba(6,26,40,.28),transparent 48%);content:"";pointer-events:none}
.acl-install-scene__media img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.055);will-change:transform}
.acl-install-scene[data-step="1"] [data-install-image="1"],.acl-install-scene[data-step="2"] [data-install-image="2"],.acl-install-scene[data-step="3"] [data-install-image="3"],.acl-install-scene[data-step="4"] [data-install-image="4"],.acl-install-scene[data-step="5"] [data-install-image="5"],.acl-install-scene[data-step="6"] [data-install-image="6"]{z-index:3;opacity:1;filter:saturate(1.02) contrast(1.02);transform:translate3d(0,0,34px) rotateY(0) scale(1)}
.acl-install-scene[data-step="1"] [data-install-image="1"] img,.acl-install-scene[data-step="2"] [data-install-image="2"] img,.acl-install-scene[data-step="3"] [data-install-image="3"] img,.acl-install-scene[data-step="4"] [data-install-image="4"] img,.acl-install-scene[data-step="5"] [data-install-image="5"] img,.acl-install-scene[data-step="6"] [data-install-image="6"] img{animation:acl-process-photo-drift 10s ease-in-out infinite alternate}
.acl-install-scene__scan{z-index:5;top:21%;right:5%;left:5%;height:1px;opacity:.72;background:linear-gradient(90deg,transparent,rgba(255,214,109,.2),#ffd66d,rgba(255,255,255,.9),transparent);box-shadow:0 0 18px rgba(255,214,109,.42);animation:acl-process-scan 5.4s ease-in-out infinite}
.acl-install-scene__scan i{position:absolute;top:-3px;right:20%;width:7px;height:7px;border-radius:50%;background:#fff4c8;box-shadow:0 0 20px #ffd66d}
.acl-install-scene__depth{position:absolute;z-index:1;right:-9%;bottom:1%;width:58%;aspect-ratio:1;pointer-events:none;transform:rotateX(67deg)}
.acl-install-scene__depth i{position:absolute;inset:0;border:1px solid rgba(244,187,58,.14);border-radius:50%;animation:acl-process-ring 11s linear infinite}.acl-install-scene__depth i:nth-child(2){inset:12%;animation-duration:15s;animation-direction:reverse}.acl-install-scene__depth i:nth-child(3){inset:25%;animation-duration:8s}
.acl-install-scene__depth i:after{position:absolute;top:12%;left:17%;width:7px;height:7px;border-radius:50%;background:var(--acl-cine-gold);box-shadow:0 0 17px var(--acl-cine-gold);content:""}
.acl-install-scene__status{z-index:9}
@keyframes acl-process-photo-drift{to{transform:scale(1.095) translate3d(-.8%,.3%,0)}}
@keyframes acl-process-scan{0%,100%{opacity:.18;transform:translateY(-42px)}50%{opacity:.82;transform:translateY(255px)}}
@keyframes acl-process-ring{to{transform:rotateZ(360deg)}}
.acl-cine-process__steps{padding:20px 0 80px}
.acl-cine-process__steps article{position:relative;display:grid;min-height:220px;margin-bottom:72px;padding:34px 30px;color:#fff;border:1px solid rgba(255,255,255,.11);border-radius:25px;background:rgba(255,255,255,.025);grid-template-columns:62px 1fr;align-items:center;gap:20px;opacity:.5;transform:translateX(24px);transition:opacity .5s,transform .65s var(--acl-cine-ease),border-color .5s,background .5s,box-shadow .5s}
.acl-cine-process__steps article:before{display:none}
.acl-cine-process__steps article:last-child{margin-bottom:0}.acl-cine-process__steps article.is-active{opacity:1;border-color:rgba(244,187,58,.5);background:linear-gradient(115deg,rgba(244,187,58,.1),rgba(255,255,255,.035));box-shadow:0 24px 60px rgba(0,0,0,.2);transform:none}
.acl-cine-process__steps article>b{color:var(--acl-cine-gold-2);font:400 2rem Georgia,serif}.acl-cine-process__steps article span{color:var(--acl-cine-gold);font-size:.6rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.acl-cine-process__steps h3{margin:8px 0 12px;color:#fff;font-size:clamp(1.35rem,2vw,2rem);font-weight:450;line-height:1.12}.acl-cine-process__steps p{margin:0;color:rgba(255,255,255,.58);font-size:.86rem;line-height:1.72}
@keyframes acl-install-orbit{to{transform:rotate(360deg)}}
@keyframes acl-install-float{50%{transform:translateY(-12px)}}
@keyframes acl-install-scan{0%,100%{transform:translateY(0);opacity:.15}50%{transform:translateY(320px);opacity:1}}
@keyframes acl-panel-shine{0%,28%{transform:translateX(-130%)}55%,100%{transform:translateX(130%)}}
@keyframes acl-energy-travel{to{left:100%}}

/* Before / after */
.acl-cine-before{padding:clamp(100px,12vw,180px) 20px;background:#e9e5dc}
.acl-cine-before__head{display:flex;margin-bottom:55px;color:var(--acl-cine-ink);align-items:flex-end;justify-content:space-between;gap:50px}
.acl-cine-before .acl-cine-kicker{color:#5b6972}.acl-cine-before h2{color:var(--acl-cine-ink);font-size:clamp(2.8rem,4.4vw,5.35rem);line-height:1.03}.acl-cine-before h2 em{color:#9a6a13}
.acl-cine-before__head>p{max-width:380px;margin:0;color:#5d6b73;line-height:1.75}
.acl-before-slider{position:relative;width:min(1500px,100%);height:min(70vw,720px);min-height:450px;margin:auto;border-radius:32px;overflow:hidden;background:var(--before-image) center/cover no-repeat;box-shadow:0 35px 90px rgba(10,30,42,.16)}
.acl-before-slider:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,16,26,.82),transparent 47%);content:"";pointer-events:none}
.acl-before-slider__before,.acl-before-slider__after{position:absolute;z-index:1;inset:0;display:flex;padding:48px;color:#fff;flex-direction:column;justify-content:flex-end}
.acl-before-slider__after{clip-path:inset(0 0 0 var(--after));background:var(--after-image) center/cover no-repeat;align-items:flex-end;text-align:right}
.acl-before-slider__before span,.acl-before-slider__after span{font:400 clamp(2rem,4vw,4.5rem) Georgia,serif}
.acl-before-slider__before p,.acl-before-slider__after p{margin:6px 0 0;color:rgba(255,255,255,.72);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.acl-before-slider__line{position:absolute;z-index:3;top:0;bottom:0;left:var(--after);width:2px;background:#fff;box-shadow:0 0 25px rgba(0,0,0,.4);pointer-events:none}
.acl-before-slider__line i{position:absolute;top:50%;left:50%;display:grid;width:58px;height:58px;color:#162c3b;border:6px solid rgba(255,255,255,.45);border-radius:50%;background:var(--acl-cine-gold);font-style:normal;place-items:center;transform:translate(-50%,-50%);background-clip:padding-box}
.acl-before-slider input{position:absolute;z-index:4;inset:0;width:100%;height:100%;margin:0;cursor:ew-resize;opacity:0}
.acl-cine-caption{margin:18px auto 0;color:#6a757c;font-size:.72rem;text-align:center}

/* Projects */
.acl-cine-projects{padding:clamp(100px,13vw,190px) 0;background:#061421}
.acl-cine-projects__head,.acl-cine-news__head{display:flex;margin-bottom:54px;align-items:flex-end;justify-content:space-between;gap:30px}
.acl-cine-projects__head h2,.acl-cine-news__head h2{font-size:clamp(2.8rem,4.4vw,5.35rem);line-height:1.03}
.acl-cine-projects__head>a,.acl-cine-news__head>a,.acl-cine-about__copy>a{color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
.acl-cine-projects__head>a i,.acl-cine-news__head>a i,.acl-cine-about__copy>a i{margin-left:12px;color:var(--acl-cine-gold);font-style:normal}
.acl-cine-projects__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.acl-cine-project-card{position:relative;min-height:420px;border-radius:24px;isolation:isolate;overflow:hidden;background:#102738}
.acl-cine-project-card--large{grid-column:1/-1;min-height:min(68vw,720px)}
.acl-cine-project-card>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--acl-cine-ease),filter .5s}
.acl-cine-project-card:after{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(2,15,24,.91),transparent 56%);content:""}
.acl-cine-project-card:hover>img{filter:saturate(1.08);transform:scale(1.045)}
.acl-cine-project-card>span{position:absolute;right:32px;bottom:28px;left:32px;display:grid;color:#fff;grid-template-columns:55px 1fr 45px;align-items:end;gap:12px}
.acl-cine-project-card small{color:var(--acl-cine-gold);font:400 1rem Georgia,serif}.acl-cine-project-card strong{font-size:clamp(1.2rem,2.3vw,2.3rem);font-weight:400;line-height:1.1}.acl-cine-project-card i{display:grid;width:44px;height:44px;border:1px solid rgba(255,255,255,.5);border-radius:50%;font-style:normal;place-items:center}

/* Three animated equipment objects. */
.acl-cine-equipment{position:relative;padding:clamp(110px,14vw,205px) 0;overflow:hidden;background:radial-gradient(circle at 74% 28%,rgba(31,94,119,.35),transparent 33%),#061421}
.acl-cine-equipment:after{position:absolute;right:-20vw;bottom:-42vw;width:82vw;height:82vw;border:1px solid rgba(244,187,58,.14);border-radius:50%;box-shadow:0 0 0 90px rgba(244,187,58,.018),0 0 0 180px rgba(244,187,58,.012);content:""}
.acl-cine-equipment__copy{position:relative;z-index:2;display:grid;margin-bottom:75px;grid-template-columns:1fr .55fr;align-items:end;gap:7vw}
.acl-cine-equipment__copy h2{font-size:clamp(2.9rem,4.6vw,5.6rem);line-height:1.01}.acl-cine-equipment__copy>p:last-child{max-width:470px;margin:0 0 8px;color:rgba(255,255,255,.6);line-height:1.8}
.acl-cine-equipment__cards{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;perspective:1400px}
.acl-device-card{--device-rx:0deg;--device-ry:0deg;position:relative;min-height:570px;padding:26px;border:1px solid rgba(255,255,255,.14);border-radius:30px;isolation:isolate;overflow:hidden;background:linear-gradient(155deg,rgba(255,255,255,.075),rgba(255,255,255,.018));box-shadow:0 28px 70px rgba(0,0,0,.24);transform:perspective(1100px) rotateX(var(--device-rx)) rotateY(var(--device-ry));transform-style:preserve-3d;transition:border-color .4s,box-shadow .4s,transform .18s ease-out}
.acl-device-card:before{position:absolute;z-index:-1;inset:0;opacity:.13;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:40px 40px;content:"";mask-image:linear-gradient(#000,transparent 75%)}
.acl-device-card:hover{border-color:rgba(255,216,115,.48);box-shadow:0 35px 85px rgba(0,0,0,.35),0 0 48px rgba(244,187,58,.06)}
.acl-device-card__intro,.acl-device-card__name{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between}
.acl-device-card__intro span{color:var(--acl-cine-gold-2);font-size:.61rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.acl-device-card__intro i{display:grid;width:38px;height:38px;color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.18);border-radius:50%;font:400 .72rem Georgia,serif;place-items:center}
.acl-device-card__stage{position:relative;height:390px;perspective:900px;transform-style:preserve-3d}
.acl-device-orbit{position:absolute;top:50%;left:50%;width:280px;height:280px;border:1px solid rgba(244,187,58,.19);border-radius:50%;transform:translate(-50%,-50%) rotateX(67deg);animation:acl-device-orbit 18s linear infinite}
.acl-device-orbit:after{position:absolute;top:14%;left:15%;width:8px;height:8px;border-radius:50%;background:var(--acl-cine-gold);box-shadow:0 0 17px var(--acl-cine-gold);content:""}
.acl-device-card__name{align-items:flex-end}.acl-device-card__name strong{color:#fff;font:400 clamp(2.6rem,3.7vw,4.4rem) Georgia,serif;letter-spacing:-.035em}.acl-device-card__name small{max-width:105px;padding-bottom:8px;color:rgba(255,255,255,.51);font-size:.68rem;line-height:1.5;text-align:right}
.acl-device-panel{position:absolute;top:50%;left:50%;width:250px;height:155px;border:5px solid #aab9c0;background:repeating-linear-gradient(90deg,transparent 0 39px,rgba(174,221,241,.38) 40px 42px),repeating-linear-gradient(0deg,transparent 0 35px,rgba(174,221,241,.35) 36px 38px),linear-gradient(140deg,#2e7091,#071e32 68%);box-shadow:0 28px 45px rgba(0,0,0,.4);transform:translate(-50%,-50%) rotateX(58deg) rotateZ(-27deg);transform-style:preserve-3d;animation:acl-device-panel-float 5.5s ease-in-out infinite}
.acl-device-panel:before,.acl-device-panel:after{position:absolute;background:#728994;content:""}.acl-device-panel:before{top:100%;right:-5px;left:-5px;height:15px;transform:skewX(44deg);transform-origin:top}.acl-device-panel:after{top:0;bottom:-15px;left:100%;width:14px;transform:skewY(46deg);transform-origin:left}
.acl-device-panel>i{position:absolute;inset:0;overflow:hidden}.acl-device-panel>i:after{position:absolute;inset:-40%;background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.55) 49%,transparent 60%);content:"";transform:translateX(-85%);animation:acl-device-shine 4.8s ease-in-out infinite}
.acl-device-rays{position:absolute;top:65px;right:40px;left:40px;height:170px;transform:rotate(-12deg)}.acl-device-rays i{position:absolute;display:block;width:2px;height:115px;background:linear-gradient(#ffd66d,transparent);opacity:.65;animation:acl-device-ray 2.6s ease-in-out infinite}.acl-device-rays i:nth-child(1){left:24%}.acl-device-rays i:nth-child(2){left:50%;animation-delay:.4s}.acl-device-rays i:nth-child(3){left:76%;animation-delay:.8s}
.acl-device-inverter{position:absolute;top:50%;left:50%;width:155px;height:225px;border:1px solid rgba(255,255,255,.8);border-radius:22px;background:linear-gradient(145deg,#fff,#cad4d9);box-shadow:22px 30px 48px rgba(0,0,0,.38);transform:translate(-50%,-50%) rotateY(-18deg) rotateX(5deg);transform-style:preserve-3d;animation:acl-device-inverter-float 5.8s ease-in-out infinite}
.acl-device-inverter:after{position:absolute;top:12px;bottom:12px;left:100%;width:21px;border-radius:0 9px 9px 0;background:#94a2a9;content:"";transform:skewY(-34deg);transform-origin:left}
.acl-device-inverter>span{position:absolute;top:43px;left:50%;width:72px;height:32px;border-radius:7px;background:linear-gradient(135deg,#071e2e,#153d4f);transform:translateX(-50%);box-shadow:0 0 0 1px rgba(255,255,255,.28)}
.acl-device-inverter>span:after{position:absolute;top:50%;left:50%;width:36px;height:3px;border-radius:3px;background:#64e4a3;box-shadow:0 0 13px #64e4a3;content:"";transform:translate(-50%,-50%) scaleX(.55);animation:acl-device-screen 2.8s ease-in-out infinite}
.acl-device-inverter>i{position:absolute;top:96px;left:50%;width:17px;height:17px;border:2px solid #8b9ba3;border-radius:50%;transform:translateX(-50%)}.acl-device-inverter>b{position:absolute;right:28px;bottom:40px;left:28px;height:48px;background:repeating-linear-gradient(0deg,transparent 0 5px,#a7b5bc 6px 7px)}
.acl-device-current{position:absolute;top:50%;left:50%;width:280px;height:280px;border:1px solid rgba(97,228,163,.18);border-radius:50%;transform:translate(-50%,-50%)}.acl-device-current i{position:absolute;inset:22px;border:1px solid rgba(97,228,163,.16);border-radius:50%;animation:acl-device-current 2.7s ease-out infinite}
.acl-device-battery{position:absolute;top:50%;left:50%;display:flex;width:168px;height:235px;padding:16px;border:1px solid rgba(255,255,255,.32);border-radius:14px;background:linear-gradient(145deg,#1c455a,#071d2c);box-shadow:-21px 31px 48px rgba(0,0,0,.42);flex-direction:column;gap:10px;transform:translate(-50%,-50%) rotateY(18deg) rotateX(3deg);transform-style:preserve-3d;animation:acl-device-battery-float 6.2s ease-in-out infinite}
.acl-device-battery:after{position:absolute;top:11px;bottom:11px;right:100%;width:20px;border-radius:8px 0 0 8px;background:#102f42;content:"";transform:skewY(34deg);transform-origin:right}
.acl-device-battery>span{position:relative;flex:1;border:1px solid rgba(255,255,255,.15);border-radius:7px;background:linear-gradient(90deg,rgba(255,255,255,.08),transparent)}.acl-device-battery>span:after{position:absolute;top:50%;right:13px;width:7px;height:7px;border-radius:50%;background:#f4bb3a;box-shadow:0 0 10px #f4bb3a;content:"";transform:translateY(-50%)}
.acl-device-battery>i{position:absolute;top:23px;left:25px;width:48px;height:7px;border-radius:6px;background:linear-gradient(90deg,#52df9b 78%,rgba(255,255,255,.14) 78%);box-shadow:0 0 12px rgba(82,223,155,.4)}
.acl-device-charge{position:absolute;top:50%;left:50%;width:278px;height:278px;border:1px solid rgba(82,223,155,.15);border-radius:50%;transform:translate(-50%,-50%)}.acl-device-charge i{position:absolute;right:8%;bottom:18%;width:10px;height:10px;border-radius:50%;background:#52df9b;box-shadow:0 0 20px #52df9b;animation:acl-device-charge 4.2s linear infinite}

/* Genuine manufacturer product photography, floated as lightweight 3D layers. */
.acl-device-card__stage:before{position:absolute;top:50%;left:50%;width:76%;height:60%;border-radius:50%;background:radial-gradient(ellipse,rgba(61,151,186,.2),rgba(244,187,58,.06) 47%,transparent 72%);filter:blur(10px);content:"";transform:translate(-50%,-50%) translateZ(-20px)}
.acl-device-product{position:absolute;z-index:3;top:50%;left:50%;display:grid;width:78%;height:78%;place-items:center;transform:translate3d(-50%,-50%,72px);transform-style:preserve-3d;animation:acl-device-product-float 6.4s ease-in-out infinite;will-change:transform}
.acl-device-product:after{position:absolute;right:13%;bottom:3%;left:13%;height:18%;border-radius:50%;background:rgba(0,0,0,.42);filter:blur(17px);content:"";transform:translateZ(-55px) rotateX(72deg)}
.acl-device-product img{position:relative;z-index:2;display:block;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 28px 26px rgba(0,0,0,.42));transform:translateZ(42px);backface-visibility:hidden}
.acl-device-product--panel{width:88%;height:88%;animation-delay:-1.1s}.acl-device-product--panel img{transform:translate3d(0,4px,42px) rotateZ(-2deg)}
.acl-device-product--inverter{width:73%;height:82%;animation-delay:-2.3s}.acl-device-product--inverter img{transform:translate3d(0,2px,42px) rotateY(-7deg)}
.acl-device-product--battery{width:75%;height:86%;animation-delay:-3.4s}.acl-device-product--battery img{clip-path:none;transform:translate3d(0,5px,42px) rotateY(4deg)}
.acl-device-spark{position:absolute;z-index:2;inset:10%}.acl-device-spark i{position:absolute;width:2px;height:80px;background:linear-gradient(#ffd66d,transparent);opacity:.5;transform:rotate(-22deg);animation:acl-device-spark 3.2s ease-in-out infinite}.acl-device-spark i:nth-child(1){top:5%;left:24%}.acl-device-spark i:nth-child(2){top:13%;left:50%;animation-delay:.5s}.acl-device-spark i:nth-child(3){top:7%;left:76%;animation-delay:1s}
.acl-device-pulse{position:absolute;z-index:1;top:50%;left:50%;width:265px;height:265px;border:1px solid rgba(91,225,164,.2);border-radius:50%;transform:translate(-50%,-50%)}.acl-device-pulse i{position:absolute;inset:20px;border:1px solid rgba(91,225,164,.2);border-radius:50%;animation:acl-device-product-pulse 3s ease-out infinite}
.acl-device-charge{z-index:1}.acl-device-charge i{right:auto;bottom:auto}.acl-device-charge i:nth-child(1){top:12%;left:18%}.acl-device-charge i:nth-child(2){top:57%;right:2%;left:auto;animation-delay:-1.4s}.acl-device-charge i:nth-child(3){bottom:5%;left:32%;animation-delay:-2.8s}
@keyframes acl-device-product-float{0%,100%{transform:translate3d(-50%,-50%,72px) rotateX(1deg) rotateY(-2deg)}50%{transform:translate3d(-50%,calc(-50% - 13px),92px) rotateX(-2deg) rotateY(4deg)}}
@keyframes acl-device-product-pulse{0%{opacity:.7;transform:scale(.68)}100%{opacity:0;transform:scale(1.2)}}
@keyframes acl-device-spark{50%{opacity:.15;transform:translateY(18px) rotate(-22deg)}}
@keyframes acl-device-orbit{to{transform:translate(-50%,-50%) rotateX(67deg) rotateZ(360deg)}}
@keyframes acl-device-panel-float{50%{transform:translate(-50%,calc(-50% - 12px)) rotateX(58deg) rotateZ(-23deg)}}
@keyframes acl-device-inverter-float{50%{transform:translate(-50%,calc(-50% - 12px)) rotateY(-11deg) rotateX(4deg)}}
@keyframes acl-device-battery-float{50%{transform:translate(-50%,calc(-50% - 12px)) rotateY(10deg) rotateX(3deg)}}
@keyframes acl-device-shine{0%,35%{transform:translateX(-85%)}65%,100%{transform:translateX(85%)}}
@keyframes acl-device-ray{50%{opacity:.2;transform:translateY(16px)}}
@keyframes acl-device-screen{50%{transform:translate(-50%,-50%) scaleX(1)}}
@keyframes acl-device-current{0%{opacity:.75;transform:scale(.62)}100%{opacity:0;transform:scale(1.18)}}
@keyframes acl-device-charge{to{transform:rotate(360deg);transform-origin:-129px -91px}}

/* Keep decorative motion asleep while it is outside the viewport. */
.acl-cine-flow .acl-energy-map *,.acl-cine-flow .acl-energy-map *:before,.acl-cine-flow .acl-energy-map *:after,.acl-cine-process .acl-install-scene *,.acl-cine-process .acl-install-scene *:before,.acl-cine-process .acl-install-scene *:after,.acl-cine-equipment .acl-device-card__stage *,.acl-cine-equipment .acl-device-card__stage *:before,.acl-cine-equipment .acl-device-card__stage *:after{animation-play-state:paused!important}
.acl-cine-flow.is-motion-visible .acl-energy-map *,.acl-cine-flow.is-motion-visible .acl-energy-map *:before,.acl-cine-flow.is-motion-visible .acl-energy-map *:after,.acl-cine-process.is-motion-visible .acl-install-scene *,.acl-cine-process.is-motion-visible .acl-install-scene *:before,.acl-cine-process.is-motion-visible .acl-install-scene *:after,.acl-cine-equipment.is-motion-visible .acl-device-card__stage *,.acl-cine-equipment.is-motion-visible .acl-device-card__stage *:before,.acl-cine-equipment.is-motion-visible .acl-device-card__stage *:after{animation-play-state:running!important}

/* Why */
.acl-cine-why{padding:clamp(100px,13vw,190px) 0;background:#e9e5dc;color:var(--acl-cine-ink)}
.acl-cine-why .acl-cine-kicker{color:#5a6870}.acl-cine-why h2{color:var(--acl-cine-ink)}.acl-cine-why h2 em{color:#9a6a13}
.acl-cine-why__head{max-width:1050px;margin-bottom:70px}
.acl-cine-why__list{border-top:1px solid rgba(10,34,52,.2)}
.acl-cine-why__list article{display:grid;min-height:155px;padding:30px 0;border-bottom:1px solid rgba(10,34,52,.2);grid-template-columns:90px 1fr 1.5fr;align-items:center;gap:35px}
.acl-cine-why__list b{color:#9a6a13;font:400 1.2rem Georgia,serif}.acl-cine-why__list h3{margin:0;color:var(--acl-cine-ink);font-size:clamp(1.2rem,2vw,2rem);font-weight:500}.acl-cine-why__list p{max-width:580px;margin:0;color:#65727a;line-height:1.7}

/* FAQ */
.acl-cine-faq{padding:clamp(100px,13vw,190px) 0;background:#0a2234}
.acl-cine-faq__grid{display:grid;grid-template-columns:.72fr 1.28fr;align-items:start;gap:9vw}
.acl-cine-faq__head{position:sticky;top:130px}.acl-cine-faq__head h2{font-size:clamp(3rem,5.4vw,6rem)}.acl-cine-faq__head>p:last-child{max-width:390px;margin-top:30px;color:rgba(255,255,255,.58);line-height:1.75}
.acl-cine-faq__list{border-top:1px solid rgba(255,255,255,.17)}
.acl-cine-faq__list details{padding:0;border-bottom:1px solid rgba(255,255,255,.17)}
.acl-cine-faq__list summary{position:relative;display:grid;padding:30px 55px 30px 0;color:#fff;cursor:pointer;font-size:clamp(1rem,1.45vw,1.25rem);font-weight:600;list-style:none;grid-template-columns:55px 1fr;align-items:center}
.acl-cine-faq__list summary::-webkit-details-marker{display:none}.acl-cine-faq__list summary:after{position:absolute;top:50%;right:2px;color:var(--acl-cine-gold);font-size:1.5rem;content:"+";transform:translateY(-50%);transition:transform .3s}.acl-cine-faq__list details[open] summary:after{transform:translateY(-50%) rotate(45deg)}
.acl-cine-faq__list summary span{color:var(--acl-cine-gold);font:400 .9rem Georgia,serif}.acl-cine-faq__list details p{margin:0;padding:0 45px 30px 55px;color:rgba(255,255,255,.6);line-height:1.75}

/* About + news */
.acl-cine-about{padding:clamp(100px,13vw,180px) 0;background:#f4f1e9}
.acl-cine-about__grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:8vw}
.acl-cine-about__media{position:relative;height:min(58vw,680px);border-radius:28px;overflow:hidden}.acl-cine-about__media:after{position:absolute;inset:0;background:linear-gradient(20deg,rgba(4,20,33,.35),transparent 48%);content:""}.acl-cine-about__media img{width:100%;height:100%;object-fit:cover}
.acl-cine-about .acl-cine-kicker{color:#596770}.acl-cine-about h2{color:var(--acl-cine-ink);font-size:clamp(2.8rem,4.4vw,5.35rem);line-height:1.03}.acl-cine-about h2 em{color:#9a6a13}.acl-cine-about__copy>p:not(.acl-cine-kicker){margin:32px 0;color:#647179;font-size:1rem;line-height:1.8}.acl-cine-about__copy>a{color:var(--acl-cine-ink)}
.acl-cine-news{padding:clamp(100px,12vw,170px) 0;background:#e8e4db;color:var(--acl-cine-ink)}
.acl-cine-news .acl-cine-kicker{color:#596770}.acl-cine-news h2{color:var(--acl-cine-ink)}.acl-cine-news h2 em{color:#9a6a13}.acl-cine-news__head>a{color:var(--acl-cine-ink)}
.acl-cine-news__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.acl-cine-news__image{display:block;height:280px;margin-bottom:22px;border-radius:18px;overflow:hidden;background:#ccd4d8}.acl-cine-news__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--acl-cine-ease)}.acl-cine-news article:hover img{transform:scale(1.05)}.acl-cine-news time{color:#7a858b;font-size:.66rem;letter-spacing:.1em}.acl-cine-news h3{margin:10px 0 16px;color:var(--acl-cine-ink);font-size:1.2rem;line-height:1.35}.acl-cine-news h3 a{color:inherit;text-decoration:none}.acl-cine-news__link{color:#9a6a13;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.acl-cine-news__link i{font-style:normal}

/* Final contact */
.acl-cine-contact{position:relative;padding:clamp(110px,14vw,210px) 0;overflow:hidden;background:linear-gradient(125deg,#05131f,#0b2a3e)}
.acl-cine-contact:before{position:absolute;top:-35%;right:-12%;width:60vw;height:60vw;border:1px solid rgba(255,255,255,.08);border-radius:50%;content:""}.acl-cine-contact__glow{position:absolute;right:-10%;bottom:-50%;width:65vw;height:65vw;border-radius:50%;background:radial-gradient(circle,rgba(244,187,58,.23),transparent 65%);filter:blur(20px)}
.acl-cine-contact__grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}
.acl-cine-contact h2{font-size:clamp(3.2rem,4.8vw,5.8rem);line-height:1.03}.acl-cine-contact__copy>p:not(.acl-cine-kicker){max-width:560px;margin:32px 0;color:rgba(255,255,255,.64);font-size:1rem;line-height:1.8}
.acl-cine-contact__quick{display:flex;margin-top:45px;border-top:1px solid rgba(255,255,255,.18);gap:35px}.acl-cine-contact__quick a{padding-top:22px;color:#fff;text-decoration:none}.acl-cine-contact__quick small{display:block;margin-bottom:7px;color:rgba(255,255,255,.48);font-size:.62rem;letter-spacing:.11em;text-transform:uppercase}.acl-cine-contact__quick strong{font-size:.95rem;font-weight:600}
.acl-cine-contact__form{padding:clamp(25px,4vw,55px);color:var(--acl-cine-ink);border-radius:28px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.25)}
.acl-cine-contact__form .ae-contact-form,.acl-cine-contact__form form{box-shadow:none!important}

/* Reveal & Visibility — safe progressive enhancement: content is ALWAYS visible by default */
.acl-cinema [data-cine-reveal]{opacity:1;transform:none;transition:opacity .6s var(--acl-cine-ease),transform .6s var(--acl-cine-ease)}
.acl-cinema [data-cine-reveal].is-cine-visible{opacity:1;transform:none}
/* Hero entrance animation */
.acl-cine-hero [data-cine-reveal]{animation:acl-cine-hero-in .8s var(--acl-cine-ease) both}
@keyframes acl-cine-hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Compact, high-contrast header for the cinematic home. */
@media(min-width:921px){
  body.angelong-front-page .site-topbar{font-size:.7rem}
  body.angelong-front-page .site-topbar__inner{min-height:32px!important;gap:16px}
  body.angelong-front-page .site-topbar__links{gap:16px}
  body.angelong-front-page .site-header__inner{min-height:76px!important;gap:17px}
  body.angelong-front-page .brand-image img{width:min(205px,100%)!important;max-height:52px!important}
  body.angelong-front-page .primary-navigation ul{gap:0}
  body.angelong-front-page .primary-navigation a{padding:27px 8px!important;color:rgba(255,255,255,.74)!important;font-size:.78rem!important;line-height:1.2}
  body.angelong-front-page .primary-navigation a:hover,body.angelong-front-page .primary-navigation .current-menu-item>a{color:#fff!important}
  body.angelong-front-page .primary-navigation a::after{bottom:18px}
  body.angelong-front-page .site-header__cta{min-height:50px!important;padding:0 19px!important;font-size:.73rem!important}
  body.angelong-front-page .site-header__language .gt_switcher-popup{display:flex!important;min-height:50px!important;padding:0 13px!important;align-items:center!important}
}

@media(max-width:1100px){
  .acl-cine-rail{display:none}.acl-cine-hero__note{display:none}
  .acl-cine-flow__grid{grid-template-columns:1fr;gap:60px}.acl-energy-map{width:min(760px,100%);margin:auto}
  .acl-cine-process__journey{grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:40px}
  .acl-cine-equipment__cards{grid-template-columns:1fr 1fr}.acl-device-card:last-child{grid-column:1/-1}.acl-cine-faq__grid{gap:5vw}
}

@media(max-width:900px){
  body.angelong-front-page .site-header{background:#071827}
  .acl-cine-hero{min-height:calc(100svh - 70px);align-items:flex-end}.acl-cine-hero__media{inset:0;background-image:linear-gradient(0deg,rgba(3,14,25,.96) 0%,rgba(3,14,25,.67) 50%,rgba(3,14,25,.2) 100%),var(--acl-hero-image);background-position:66% center;transform:scale(1.035)}.acl-cine-hero__grid{right:-58vw;bottom:-15vh;width:150vw}.acl-cine-hero__sun{right:-18%;width:90vw}.acl-cine-hero__inner{padding-bottom:110px}.acl-cine-hero__copy{width:100%}.acl-cine-hero h1{font-size:clamp(3.1rem,11vw,6.2rem);line-height:1}.acl-cine-hero h1 span,.acl-cine-hero h1 em{white-space:normal}.acl-cine-hero h1 em{margin-top:10px;margin-left:0;font-size:.72em;line-height:1.08}.acl-cine-hero__lead,.acl-cine-actions{margin-left:0}.acl-cine-scroll{left:auto;right:20px;transform:none}.acl-cine-scroll span{display:none}
  .acl-cine-promise .ae-container{grid-template-columns:1fr 1fr}.acl-cine-promise p:nth-child(2){border-right:0}.acl-cine-promise p:nth-child(-n+2){border-bottom:1px solid var(--acl-cine-line)}
  .acl-cine-cases{height:auto}.acl-cine-cases__sticky{position:relative;height:auto;overflow:visible}.acl-cine-cases__visuals,.acl-cine-cases__index{display:none}.acl-cine-cases__frame{height:auto;padding-top:100px;padding-bottom:100px}.acl-cine-cases__heading{position:relative;top:auto;left:auto;width:100%;margin-bottom:50px}.acl-cine-cases__contents{position:relative;right:auto;bottom:auto;width:100%;min-height:0}.acl-cine-cases__contents article{position:relative;inset:auto;min-height:520px;margin-bottom:16px;padding:35px;border-radius:24px;isolation:isolate;opacity:1;transform:none;pointer-events:auto;overflow:hidden;background-position:center;background-size:cover}.acl-cine-cases__contents article:before,.acl-cine-cases__contents article:after{position:absolute;z-index:-2;inset:0;content:""}.acl-cine-cases__contents article:before{background-position:center;background-size:cover}.acl-cine-cases__contents article:nth-child(1):before{background-image:url('../images/home/home-project-residential.webp')}.acl-cine-cases__contents article:nth-child(2):before{background-image:url('../images/home/home-project-factory.webp')}.acl-cine-cases__contents article:nth-child(3):before{background-image:url('../images/home/home-project-office.webp')}.acl-cine-cases__contents article:after{z-index:-1;background:linear-gradient(0deg,rgba(2,14,23,.95),rgba(2,14,23,.1))}
  .acl-cine-process__head{grid-template-columns:1fr;gap:30px}.acl-cine-process__journey{grid-template-columns:1fr}.acl-cine-process__visual{display:none}.acl-cine-process__steps{display:grid;padding-bottom:0;grid-template-columns:1fr 1fr;gap:16px}.acl-cine-process__steps article{min-height:0;margin:0;padding:0 22px 26px;grid-template-columns:45px 1fr;align-content:start;opacity:1;transform:none;overflow:hidden}.acl-cine-process__steps article:before{display:block;height:clamp(210px,39vw,330px);margin:0 -22px 25px;background-position:center;background-size:cover;content:"";grid-column:1/-1}.acl-cine-process__steps article:after{position:absolute;top:0;right:0;left:0;height:clamp(210px,39vw,330px);background:linear-gradient(180deg,transparent 48%,rgba(4,18,29,.72));content:"";pointer-events:none}.acl-cine-process__steps article:nth-child(1):before{background-image:url('../images/home/process/process-01-consultation.webp')}.acl-cine-process__steps article:nth-child(2):before{background-image:url('../images/home/process/process-02-site-survey.webp')}.acl-cine-process__steps article:nth-child(3):before{background-image:url('../images/home/process/process-03-engineering-design.webp')}.acl-cine-process__steps article:nth-child(4):before{background-image:url('../images/home/process/process-04-installation.webp')}.acl-cine-process__steps article:nth-child(5):before{background-image:url('../images/home/process/process-05-commissioning.webp')}.acl-cine-process__steps article:nth-child(6):before{background-image:url('../images/home/process/process-06-handover.webp')}.acl-cine-process__steps article.is-active{opacity:1}
  .acl-cine-before__head{align-items:flex-start;flex-direction:column}.acl-before-slider{height:70vh;min-height:520px}
  .acl-cine-about__grid,.acl-cine-contact__grid{grid-template-columns:1fr}.acl-cine-about__media{height:68vw;min-height:420px}.acl-cine-contact__grid{gap:60px}
  .acl-cine-equipment__copy{grid-template-columns:1fr;gap:30px}.acl-cine-equipment__copy>p:last-child{margin:0}
  .acl-cine-faq__grid{grid-template-columns:1fr}.acl-cine-faq__head{position:relative;top:auto;margin-bottom:55px}
  .acl-cine-news__grid{grid-template-columns:1fr 1fr}.acl-cine-news article:last-child{display:none}
}

@media(max-width:640px){
  body.angelong-front-page .site-topbar{display:none}
  .acl-cinema h2{letter-spacing:-.025em;line-height:1.04}
  .acl-cine-kicker{margin-bottom:18px;font-size:.61rem;line-height:1.5}
  .acl-cine-button{width:100%;min-height:56px;padding:0 20px;justify-content:space-between}
  .acl-cine-hero__inner{padding-top:55px;padding-bottom:105px}.acl-cine-hero h1{font-size:clamp(2.75rem,13vw,4.7rem)}.acl-cine-hero__lead{margin-top:25px;font-size:.92rem;line-height:1.65}.acl-cine-actions{margin-top:24px;flex-direction:column}.acl-cine-scroll{bottom:25px}
  .acl-cine-promise p{min-height:92px;padding:20px 14px;gap:10px}.acl-cine-promise span{font-size:.61rem;line-height:1.45}
  .acl-cine-cases__frame{padding-top:85px;padding-bottom:85px}.acl-cine-cases__heading h2{font-size:2.8rem}.acl-cine-cases__contents article{min-height:470px;padding:26px}.acl-cine-cases__contents h3{font-size:1.75rem}
  .acl-cine-flow{padding:90px 0}.acl-energy-map{display:grid;min-height:0;grid-template-columns:1fr 1fr;gap:10px}.acl-energy-map__orbit,.acl-energy-map__beam{display:none}.acl-energy-node{position:relative;inset:auto!important;width:auto;min-height:165px;padding:20px}.acl-energy-node>i{top:18px;left:18px}.acl-energy-node>span{top:17px;right:17px}
  .acl-cine-process{padding:85px 0}.acl-cine-process__head{margin-bottom:52px}.acl-cine-process__steps{grid-template-columns:1fr}.acl-cine-process__steps article{min-height:0;padding:0 20px 25px;grid-template-columns:44px 1fr}.acl-cine-process__steps article:before{height:clamp(220px,62vw,330px);margin:0 -20px 23px}.acl-cine-process__steps article:after{height:clamp(220px,62vw,330px)}.acl-cine-process__steps h3{font-size:1.35rem}
  .acl-cine-before{padding:85px 12px}.acl-cine-before__head{margin-bottom:35px;gap:22px}.acl-before-slider{height:70svh;min-height:500px;border-radius:22px}.acl-before-slider__before,.acl-before-slider__after{padding:24px}.acl-before-slider__before p,.acl-before-slider__after p{max-width:180px;font-size:.58rem}.acl-before-slider__line i{width:48px;height:48px}
  .acl-cine-projects,.acl-cine-equipment,.acl-cine-why,.acl-cine-faq,.acl-cine-about,.acl-cine-news,.acl-cine-contact{padding-top:85px;padding-bottom:85px}.acl-cine-projects__head,.acl-cine-news__head{align-items:flex-start;flex-direction:column}.acl-cine-projects__grid{grid-template-columns:1fr}.acl-cine-project-card,.acl-cine-project-card--large{grid-column:auto;min-height:480px}.acl-cine-project-card>span{right:20px;bottom:20px;left:20px;grid-template-columns:34px 1fr 38px}.acl-cine-project-card i{width:38px;height:38px}
  .acl-cine-equipment__copy{margin-bottom:45px}.acl-cine-equipment__cards{grid-template-columns:1fr}.acl-device-card,.acl-device-card:last-child{min-height:540px;grid-column:auto}.acl-device-card__stage{height:360px}.acl-device-card__name strong{font-size:3.2rem}
  .acl-cine-why__head{margin-bottom:45px}.acl-cine-why__list article{padding:26px 0;grid-template-columns:42px 1fr;gap:12px}.acl-cine-why__list p{grid-column:2}
  .acl-cine-faq__list summary{padding:24px 36px 24px 0;grid-template-columns:38px 1fr;font-size:.96rem;line-height:1.45}.acl-cine-faq__list details p{padding:0 18px 24px 38px;font-size:.88rem}
  .acl-cine-about__media{height:115vw;min-height:430px}.acl-cine-news__grid{grid-template-columns:1fr}.acl-cine-news article:last-child{display:block}.acl-cine-news__image{height:250px}
  .acl-cine-contact__quick{flex-direction:column;gap:0}.acl-cine-contact__form{padding:24px 18px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.acl-cinema *,.acl-cinema *:before,.acl-cinema *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.js .acl-cinema [data-cine-reveal]{opacity:1!important;transform:none!important}.acl-cine-hero__media{transform:none!important}.acl-device-card{transform:none!important}
}
