/* Softer architecture: arches repeat the path of electricity through the house. */
.header-cta,.button{border-radius:999px}.header-cta{padding-left:22px;padding-right:22px}.button{padding-left:24px;padding-right:24px}.button span{display:grid;place-items:center;min-width:22px;transition:transform .3s}.button:hover span{transform:rotate(45deg)}
.energy-scene:before,.energy-scene:after{content:'';position:absolute;border:1px solid #8fbc3e18;border-radius:50%;z-index:-1;pointer-events:none}.energy-scene:before{inset:5% -6% 4% -3%;transform:rotate(-28deg)}.energy-scene:after{inset:13% -13% 12% -9%;transform:rotate(-28deg)}.scene-top{top:-4px}.energy-controls{border:1px solid #485632;border-radius:999px;padding:5px;margin-left:24px;gap:5px;background:#171e13}.energy-controls button{border-radius:999px;background:transparent;border-color:transparent;font-size:10px}.energy-controls button.active{box-shadow:0 0 22px #caff4c13}.energy-controls button i{display:none}.hero-bottom{border-radius:40% 40% 0 0 / 35% 35% 0 0;padding-top:30px}
.solutions{position:relative;border-radius:90px 90px 55px 55px;margin-top:15px;padding-top:100px;overflow:hidden}.solutions:before{content:'';position:absolute;top:-400px;right:-250px;width:800px;height:600px;border:1px solid #708d3330;border-radius:50%;pointer-events:none}.service-list{border-top:0}.service-list details{transition:background .3s,border-color .3s;border-color:#3b443280}.service-list details[open]{background:#222c1a;border-radius:26px;margin:8px -18px;padding:0 18px;border-bottom-color:transparent}.service-detail svg{right:16px}.plus{width:27px;height:27px;display:grid;place-items:center;border:1px solid #72874670;border-radius:50%;font-size:20px}.approach{position:relative;overflow:hidden}.approach:before{content:'';position:absolute;left:-260px;bottom:-310px;width:700px;height:650px;border:1px solid #718c3422;border-radius:50%;pointer-events:none}.steps article:last-child{border-bottom:0}.projects{border-top:0;padding-top:65px}.project-image{border-radius:180px 180px 30px 30px}.project:nth-child(2) .project-image{border-radius:30px 180px 30px 30px}.project-expand{border-radius:50%}.project-meta{padding:0 9px}.contact{border-radius:100px 100px 45px 45px;margin:0 2%;padding-top:100px;padding-bottom:95px}.contact:after{content:'';position:absolute;width:850px;height:600px;left:-130px;bottom:-500px;border:1px solid #b8e8612b;border-radius:50%;pointer-events:none}.contact form{border-radius:32px}.contact input,.contact select,.contact textarea{border-radius:12px}.phone span{border:1px solid #788f4c55;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:22px}.dialog-close{border-radius:50%}dialog{border-radius:24px}#photo-dialog{border-radius:24px}#photo-dialog img{border-radius:14px}.footer-top{border-radius:0 0 30px 30px}.footer-bottom button:hover{color:var(--lime)}
.brand-intro{display:none;position:fixed;inset:0;z-index:1000;background:#10150d;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;isolation:isolate}.intro-pending{overflow:hidden}.intro-pending .brand-intro{display:flex;animation:intro-arrive .25s ease-out}.brand-intro:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 58%,#7da22b25,transparent 65%);z-index:-1}.intro-label{position:absolute;top:10%;font-size:9px;letter-spacing:3px;color:#a4b28e}.intro-logo{display:flex;align-items:center;gap:24px;will-change:transform;z-index:2}.intro-logo>svg{width:80px;height:100px;overflow:visible;filter:drop-shadow(0 0 22px #caff4c35)}.intro-bolt{stroke:var(--lime);stroke-width:1.3;fill:transparent;stroke-dasharray:100;stroke-dashoffset:100;animation:bolt-draw .8s ease forwards,bolt-fill .45s .55s ease forwards}.intro-logo>span{font-family:'Manrope',Arial,sans-serif;font-size:104px;font-weight:800;letter-spacing:-5px;line-height:.85;animation:word-arrive .7s .2s both}.intro-logo>span>span{display:block;font-size:25px;font-weight:500;letter-spacing:8px;margin:21px 0 0 5px}.intro-tagline{font-size:13px;letter-spacing:.3px;color:#93a180;margin-top:39px;animation:word-arrive .6s .45s both}.intro-tagline>span{color:#d8e7c0}.intro-orbits{position:absolute;top:50%;left:50%;width:min(125vw,1200px);height:auto;transform:translate(-50%,-50%);pointer-events:none;z-index:-1}.orbit{fill:none;stroke:#caff4c;stroke-width:.6;stroke-dasharray:100;stroke-dashoffset:100;opacity:.2;animation:orbit-draw 1.5s .15s cubic-bezier(.3,.1,.1,1) forwards}.orbit-two{opacity:.12;animation-delay:.25s}.orbit-three{opacity:.08;animation-delay:.35s}#intro-skip{position:absolute;bottom:8%;right:6%;border:1px solid #64784666;border-radius:999px;background:transparent;padding:12px 18px;color:#b5c59e;font-size:10px;display:flex;gap:18px;align-items:center}#intro-skip>span{color:var(--lime);font-size:16px}.intro-progress{position:absolute;bottom:0;left:0;height:2px;background:var(--lime);border-radius:2px;width:0;animation:intro-charge 1.65s ease-in-out forwards}.brand-intro.leaving{animation:intro-leave .75s cubic-bezier(.7,0,.2,1) forwards}.brand-intro.leaving .intro-tagline,.brand-intro.leaving .intro-label,.brand-intro.leaving #intro-skip,.brand-intro.leaving .intro-orbits{opacity:0;transition:opacity .3s}.brand-intro.leaving .intro-logo>span{animation:none}.intro-pending .header .brand{opacity:0}
@keyframes intro-arrive{from{opacity:0}to{opacity:1}}@keyframes bolt-draw{to{stroke-dashoffset:0}}@keyframes bolt-fill{to{fill:#caff4c;stroke-width:0}}@keyframes word-arrive{from{opacity:0;transform:translateY(14px);filter:blur(7px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes orbit-draw{to{stroke-dashoffset:0}}@keyframes intro-charge{to{width:100%}}@keyframes intro-leave{0%{clip-path:ellipse(150% 150% at 50% 0)}100%{clip-path:ellipse(100% 0 at 50% 0)}}
@media(max-width:1100px){.energy-controls{margin-left:16px;padding:4px}.energy-controls button{font-size:9px;gap:6px}.solutions{border-radius:65px 65px 40px 40px}.contact{border-radius:70px 70px 35px 35px}.project-image{border-radius:140px 140px 25px 25px}}
@media(max-width:760px){.header-cta{padding-left:14px;padding-right:14px}.button{padding-left:20px;padding-right:20px}.energy-scene:before{inset:8% -3% 12% -3%}.energy-scene:after{inset:18% -8% 20% -8%}.energy-controls{margin-left:0;padding:4px}.energy-controls button{font-size:9px;gap:5px;padding:12px 5px}.hero-bottom{padding-top:24px}.solutions{border-radius:44px 44px 30px 30px;padding-top:65px;margin-top:8px}.service-list details[open]{margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px;border-radius:20px}.project-image{border-radius:100px 100px 24px 24px}.project:nth-child(2) .project-image{border-radius:24px 100px 24px 24px}.projects{padding-top:35px}.contact{margin:0 3%;border-radius:48px 48px 28px 28px;padding:65px 7%}.contact h2{font-size:42px}.contact h2>svg{width:26px;margin-left:5px}.contact form{border-radius:24px;margin-left:-5%;margin-right:-5%;padding:26px 20px}.contact .eyebrow{font-size:7px;letter-spacing:.9px}.intro-logo{gap:17px}.intro-logo>svg{width:54px;height:75px}.intro-logo>span{font-size:74px;letter-spacing:-4px}.intro-logo>span>span{font-size:16px;letter-spacing:5.8px;margin:15px 0 0 4px}.intro-tagline{font-size:11px;margin-top:30px}.intro-label{font-size:7px;letter-spacing:2px}.intro-orbits{width:190vw}#intro-skip{bottom:9%;font-size:9px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none!important}.intro-pending{overflow:auto}.intro-pending .header .brand{opacity:1}.energy-scene:before,.energy-scene:after{transform:none}}
