
:root{--green:#08734c;--ink:#163a32;--muted:#68756f;--yellow:#f0cc27;--cream:#f6f7f1;--purple:#4a3e7e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}header{height:94px;padding:15px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8ede8;background:#fff;position:sticky;top:0;z-index:10}.brand img{width:155px;height:65px;object-fit:contain}nav{display:flex;gap:28px;align-items:center;font-size:13px}nav a:hover,.textlink:hover{color:var(--green)}.button{background:var(--green);color:white;padding:19px 25px;border:0;border-radius:8px;display:inline-flex;gap:30px;align-items:center;font-weight:600;font-size:14px;transition:transform .2s}.button:hover{transform:translateY(-2px)}.small{padding:14px 18px;font-size:12px}.navlink{border:0;background:none;color:inherit;padding:0;font-size:inherit}.mobile{display:none}.hero{padding:64px 6% 54px;display:grid;grid-template-columns:1.08fr 1fr;gap:45px;max-width:1560px;margin:auto}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 24px;line-height:1.8}.eyebrow span{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;margin-right:6px}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-size:clamp(42px,4.5vw,72px);letter-spacing:-3px;line-height:1.09;font-weight:800;margin:0 0 26px}em{font-style:normal;color:var(--green)}.hero-copy>p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.8;max-width:450px}.actions{display:flex;gap:23px;align-items:center;margin-top:32px}.textlink{font-size:12px;font-weight:600}.hero-proof{display:flex;align-items:center;gap:20px;margin-top:43px}.hero-proof strong{font-family:Manrope;font-size:33px;letter-spacing:-1px}.hero-proof span{font-size:11px;color:var(--muted);line-height:1.7;border-left:1px solid #d9e2dd;padding-left:20px}.visual{position:relative;min-height:478px;border-radius:140px 12px 12px 12px;background:#eaf0df;overflow:hidden}.visual-label{position:absolute;top:28px;right:24px;font-size:9px;letter-spacing:2px;color:#597354}.sun{position:absolute;width:115px;height:115px;background:var(--yellow);border-radius:50%;left:70px;top:65px;box-shadow:0 0 0 18px #efdb6950,0 0 0 38px #efdb6930;animation:sunrise 1.2s ease-out}.scene{position:absolute;bottom:27px;width:100%}.energy{stroke-dasharray:14 8;animation:flow 1.5s linear infinite}.saving{position:absolute;bottom:70px;left:22px;background:#fff;border-radius:10px;box-shadow:0 12px 35px #163a3212;padding:18px 22px;animation:appear 1.5s ease-out}.saving>span{font-size:8px;letter-spacing:1.7px;font-weight:700}.saving strong{display:block;font-family:Manrope;font-size:50px;color:var(--green);line-height:1.2;letter-spacing:-2px}.saving small{font-size:15px;letter-spacing:0}.saving p{font-size:9px;margin:6px 0 0}.illustration-note{position:absolute;bottom:12px;left:20px;font-size:8px;color:#64765c}.strip{display:flex;justify-content:space-between;align-items:center;background:var(--cream);padding:24px 6%;font-size:12px}.strip>span:first-child{font-size:9px;letter-spacing:2px;color:var(--muted)}.strip i{color:#c9ac22;font-size:20px}.section{padding:85px 6%;max-width:1560px;margin:auto}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:38px}.section-heading>p{max-width:300px;color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:4px}h2{font-size:clamp(30px,3vw,44px);font-weight:600;letter-spacing:-1.8px;line-height:1.2;margin:0}h3{font-size:23px;letter-spacing:-.7px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.services article{padding:30px;background:var(--cream);border-radius:10px}.service-icon{display:inline-grid;place-items:center;background:#e3eadc;width:48px;height:48px;color:var(--green);font-size:26px;border-radius:10px}.number{float:right;font-size:11px;color:#87978d}.services p{color:var(--muted);font-size:14px;line-height:1.8;min-height:75px}.service-foot{display:block;border-top:1px solid #dce3d6;padding-top:22px;margin-top:26px;font-size:11px}.projects{background:#f8faf7;max-width:none}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button,.admin-tabs button{background:none;border:1px solid #dce3dc;border-radius:30px;padding:10px 16px;font-size:12px;color:var(--muted)}.filters .active,.admin-tabs .active{background:var(--green);color:#fff;border-color:var(--green)}.carousel{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.project{min-width:calc((100% - 44px)/3);max-width:calc((100% - 44px)/3);scroll-snap-align:start}.project-picture{height:230px;background:#e2e9e4;border-radius:10px;display:grid;place-items:center;overflow:hidden;position:relative}.project-picture img{width:100%;height:100%;object-fit:cover}.project-picture .placeholder{font-size:64px;color:#a0b5a7}.project:nth-child(2) .project-picture{background:#e4e9ed}.project:nth-child(3) .project-picture{background:#ecebdd}.category{position:absolute;left:15px;top:15px;background:#ffffffdd;border-radius:30px;padding:7px 11px;font-size:9px}.project h3{font-size:19px;margin-bottom:8px}.project p{font-size:12px;color:var(--muted);line-height:1.7}.metrics{font-size:11px;color:var(--green)}.carousel-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:24px;font-size:10px;color:var(--muted)}.arrow{border:1px solid #d3ded5;background:transparent;border-radius:50%;width:38px;height:38px;margin-left:5px;color:var(--green);font-size:19px}.arrow:hover{background:#e3ecdf}.about{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-art{padding:35px 40px;background:var(--green);border-radius:12px;min-height:375px;color:#fff;position:relative;overflow:hidden}.big-sun{font-size:155px;color:var(--yellow);position:absolute;right:-12px;top:-40px}.about-art p{font-size:32px;line-height:1.3;position:relative;margin-top:125px;letter-spacing:-1px}.about-art>span:last-child{font-size:9px;letter-spacing:2px}.about>div>p:not(.eyebrow){line-height:1.9;font-size:14px;color:var(--muted)}.about-stats{display:flex;gap:45px;padding:23px 0;border-bottom:1px solid #dce4dc}.about-stats strong{font-size:30px;font-family:Manrope;display:block;color:var(--green)}.about-stats span{font-size:11px;color:var(--muted)}.reviews{background:var(--cream);max-width:none}.quote{display:flex;align-items:center;gap:30px;margin-top:35px}.quote-mark{font-size:90px;color:#b6c7a7;line-height:1}.quote>div:nth-child(2){flex:1}.quote p{line-height:1.8;font-size:18px;max-width:700px}.quote small{color:var(--muted)}.team{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.team-card{background:var(--cream);padding:24px;border-radius:10px}.team-photo{height:190px;display:grid;place-items:center;background:#e7ece4;border-radius:8px;color:#a0b1a3;font-size:48px;overflow:hidden}.team-photo img{width:100%;height:100%;object-fit:cover}.team-card h3{font-size:18px;margin-bottom:8px}.team-card p{font-size:13px;color:var(--muted);line-height:1.7}.contact{margin:0 6% 70px;padding:55px 6%;border-radius:12px;background:#08734c;color:white;position:relative;overflow:hidden}.contact h2{font-size:48px}.contact em{color:#f2d447}.contact p:not(.eyebrow){font-size:14px;line-height:1.8;max-width:420px;color:#d0e4d8}.light{background:#f1cd2b;color:#163a32;margin-top:14px}.contact-sun{position:absolute;right:6%;top:0;font-size:320px;color:#f1cd2b;line-height:1.2}footer{padding:20px 6% 45px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px;color:var(--muted)}footer img{width:135px}footer p{line-height:1.9}footer small{font-size:10px}.floating{position:fixed;right:22px;bottom:24px;z-index:12;display:flex;flex-direction:column;gap:10px}.floating>*{border:0;border-radius:50%;width:47px;height:47px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:26px;box-shadow:0 5px 20px #163a3220}.floating .instagram{background:var(--purple)}dialog{border:0;border-radius:16px;padding:40px;color:var(--ink);width:min(650px,94vw);max-height:90vh}dialog::backdrop{background:#163a3280;backdrop-filter:blur(5px)}.close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:27px;color:var(--muted)}dialog p{line-height:1.7;font-size:14px;color:var(--muted)}#map-links{display:flex;gap:12px;flex-wrap:wrap}#map-links a{border:1px solid #dce4dc;border-radius:8px;padding:14px}.admin-head h2{font-size:30px}.admin-tabs{display:flex;gap:8px;margin:24px 0;flex-wrap:wrap}label{display:block;font-size:12px;margin:15px 0 6px}input,textarea,select{display:block;width:100%;padding:12px;border:1px solid #cedbcf;border-radius:7px;background:#fff;color:var(--ink)}textarea{min-height:90px;resize:vertical}.editor-card{border:1px solid #dce4dc;border-radius:9px;padding:16px;margin:15px 0}.editor-card h3{font-size:16px;margin:0}.remove{background:none;border:0;color:#a74242;font-size:12px;margin-top:15px}.secondary{background:#e8efdf;color:var(--green);border:0;border-radius:8px;padding:13px;margin:15px 10px 0 0}#toast{display:none;position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:15px 22px;border-radius:9px;font-size:13px;z-index:40;width:max-content;max-width:80vw}#save-status{font-size:12px;color:var(--green)}@keyframes flow{to{stroke-dashoffset:-44}}@keyframes sunrise{from{transform:translateY(-60px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes appear{0%,40%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}:focus-visible{outline:3px solid #e4bf25;outline-offset:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}@media(min-width:1550px){.projects,.reviews{padding-left:calc((100vw - 1370px)/2);padding-right:calc((100vw - 1370px)/2)}}@media(max-width:1000px){header{padding:12px 5%;height:82px}nav{gap:15px;font-size:11px}.hero{gap:25px;padding:40px 5%}.actions{flex-wrap:wrap}.visual{min-height:450px}.section{padding:65px 5%}.about{gap:35px}.contact-sun{right:-70px;opacity:.25}.contact>div{position:relative;z-index:1}.project{min-width:calc((100% - 22px)/2);max-width:calc((100% - 22px)/2)}}@media(max-width:700px){header>.button{display:none}.mobile{display:block;border:0;background:none;color:var(--green);font-size:24px}nav{display:none;position:absolute;top:82px;left:0;right:0;padding:20px;background:white;border-bottom:1px solid #dce4dc;flex-direction:column;font-size:14px}nav.open{display:flex}.hero{grid-template-columns:1fr;padding:35px 6%;gap:30px}h1{font-size:48px;letter-spacing:-2.5px}.eyebrow{font-size:8px;letter-spacing:1.5px}.hero-proof{margin-top:27px}.visual{min-height:420px;max-width:540px}.sun{width:95px;height:95px;top:52px}.strip{gap:14px;flex-wrap:wrap;justify-content:center;font-size:10px}.strip>span:first-child{width:100%;text-align:center}.section-heading{align-items:start;flex-direction:column;gap:20px}.services,.about,.team{grid-template-columns:1fr}.services p{min-height:0}.project{min-width:86%;max-width:86%}.section{padding:50px 6%}.about-art{min-height:320px}.about-art p{margin-top:95px}.quote{gap:12px;align-items:start;flex-wrap:wrap}.quote p{font-size:16px}.quote>div:last-child{margin-left:auto}.contact{padding:40px 25px;margin:0 6% 40px}.contact h2{font-size:37px}footer{align-items:start;flex-wrap:wrap;justify-content:start}footer>*{width:42%}.floating{right:14px}.floating>*{width:42px;height:42px}dialog{padding:30px 22px}.actions .button{padding:17px 21px}}
