.loader{z-index:99999;background:var(--dark);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loader__logo{color:var(--lime);opacity:0;max-width:160px;max-height:80px;transition:opacity .7s var(--expo), transform .7s var(--expo);justify-content:center;align-items:center;display:flex;transform:translateY(8px)}.loader__logo svg{object-fit:contain;width:100%;max-width:160px;height:100%;max-height:80px;display:block}.loader.is-visible .loader__logo{opacity:1;transform:translateY(0)}.loader__panel{background:var(--dark);width:100%;height:50%;transition:transform .9s var(--expo);position:absolute;left:0}.loader__panel--top{transform-origin:top;top:0}.loader__panel--bottom{transform-origin:bottom;bottom:0}.loader.is-leaving .loader__panel--top{transform:translateY(-100%)}.loader.is-leaving .loader__panel--bottom{transform:translateY(100%)}.loader.is-leaving .loader__logo{opacity:0;transition-duration:.4s;transform:translateY(-8px)}.loader.is-gone{display:none}.hero{background-color:var(--dark);width:100vw;height:100svh;position:relative;overflow:hidden}#glassTexture{display:none}.hero__canvas-wrap{z-index:0;position:absolute;inset:0}.hero__canvas-wrap canvas{opacity:0;transition:opacity 1.8s;width:100%!important;height:100%!important}.hero.is-ready .hero__canvas-wrap canvas{opacity:1}.hero__overlay{z-index:1;pointer-events:none;background:linear-gradient(115deg,#070c05db 0%,#070c0585 42%,#1234082e 100%);position:absolute;inset:0}.nav-overlay{z-index:50;background:var(--dark);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;clip-path:inset(0 0 100%);width:100%;height:100dvh;transition:clip-path .85s var(--expo);pointer-events:none;position:fixed;inset:0;overflow:hidden auto}.nav-overlay::-webkit-scrollbar{width:3px}.nav-overlay::-webkit-scrollbar-track{background:0 0}.nav-overlay::-webkit-scrollbar-thumb{background:#b8f74a26;border-radius:2px}.hero.menu-open .nav-overlay{clip-path:inset(0 0 0%);pointer-events:all}body.menu-is-open{padding-right:var(--scrollbar-width,0px);overflow:hidden}.nav-overlay__inner{box-sizing:border-box;flex-direction:column;justify-content:space-between;gap:clamp(2rem,4vh,4rem);min-height:100%;padding:clamp(5rem,10vw,7rem) clamp(1.25rem,6vw,5rem) clamp(2.5rem,5vw,4rem);display:flex}.nav-overlay__links{flex-direction:column;display:flex}.nav-overlay__link{color:var(--lime);opacity:0;transition:transform .75s var(--expo), opacity .75s var(--expo), color .35s ease;border-bottom:1px solid #b8f74a1f;justify-content:space-between;align-items:baseline;padding:clamp(.75rem,1.8vh,1.4rem) 0;text-decoration:none;display:flex;position:relative;transform:translateY(120%)}.nav-overlay__link:first-child{border-top:1px solid #b8f74a1f}.hero.menu-open .nav-overlay__link:first-child{opacity:1;transition-delay:.15s;transform:translateY(0)}.hero.menu-open .nav-overlay__link:nth-child(2){opacity:1;transition-delay:.22s;transform:translateY(0)}.hero.menu-open .nav-overlay__link:nth-child(3){opacity:1;transition-delay:.29s;transform:translateY(0)}.hero.menu-open .nav-overlay__link:nth-child(4){opacity:1;transition-delay:.36s;transform:translateY(0)}.nav-overlay__link-label{font-family:var(--font-body);letter-spacing:-.025em;transition:letter-spacing .5s var(--expo);font-size:clamp(1.8rem,7vh,5.5rem);font-weight:700;line-height:1}.nav-overlay__link:hover .nav-overlay__link-label{letter-spacing:.02em}.nav-overlay__link-arrow{opacity:0;transition:opacity .4s ease, transform .5s var(--expo);font-size:clamp(1rem,2.5vh,2rem);transform:translate(-8px,8px)}.nav-overlay__link:hover .nav-overlay__link-arrow{opacity:1;transform:translate(0)}.nav-overlay__links:has(.nav-overlay__link:hover) .nav-overlay__link:not(:hover){opacity:.28}.nav-overlay__footer{opacity:0;transition:opacity .7s var(--expo) .1s, transform .7s var(--expo) .1s;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;display:flex;transform:translateY(16px)}.hero.menu-open .nav-overlay__footer{opacity:1;transition-delay:.48s;transform:translateY(0)}.nav-overlay__tagline{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:#b8f74a73;font-size:clamp(.6rem,.8vw,.72rem);font-weight:400;line-height:1.8}.nav-overlay__socials{align-items:center;gap:clamp(1.5rem,3vw,2.5rem);display:flex}.nav-overlay__social{color:#b8f74a80;font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:500;text-decoration:none;transition:color .35s}.nav-overlay__social:hover{color:var(--lime)}.hero.menu-open .bar--top{width:20px;transform:translateY(3.75px)rotate(45deg)}.hero.menu-open .bar--bottom{width:20px;transform:translateY(-3.75px)rotate(-45deg)}.hero.menu-open .nav__menu:hover .bar--top,.hero.menu-open .nav__menu:hover .bar--bottom{width:20px}.nav{z-index:60;opacity:0;width:100%;transition:opacity 1.1s var(--expo) .2s, transform 1.1s var(--expo) .2s;justify-content:space-between;align-items:center;padding:clamp(1.25rem,2.5vw,2rem) clamp(1.25rem,3vw,2.5rem);display:flex;position:fixed;top:0;left:0;transform:translateY(-10px)}.nav--hidden{transition:transform .5s var(--expo), opacity .5s ease!important;transform:translateY(-110%)!important}.hero.menu-open .nav--hidden{transform:translateY(0)!important}.hero.is-ready .nav{opacity:1;transform:translateY(0)}.nav:before{content:"";pointer-events:none;opacity:0;background:linear-gradient(#070c05bf 0%,#0000 100%);transition:opacity .5s;position:absolute;inset:0}.nav.is-scrolled:before{opacity:1}.nav__logo{font-family:var(--font-logo);color:var(--lime);letter-spacing:-.01em;z-index:61;font-size:clamp(1.3rem,1.8vw,1.65rem);text-decoration:none;transition:color .4s;display:inline-block;position:relative}.nav__logo:after{content:"";background:var(--lime);width:0;height:1.5px;transition:width .7s var(--expo);position:absolute;bottom:-2px;left:0}.nav__logo:hover:after{width:100%}.nav__right{z-index:61;align-items:center;gap:clamp(.5rem,1vw,.85rem);display:flex}.hero.menu-open .nav .btn--filled{opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;transform:translateY(-4px)}.nav__menu{cursor:none;width:52px;height:52px;transition:background .5s var(--gentle), border-color .5s var(--gentle);background:#ffffff0a;border:1px solid #b8f74a2e;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:relative;overflow:hidden}.bar{background:var(--lime);height:1.5px;transition:width .55s var(--expo), transform .55s var(--expo);border-radius:2px;display:block;position:relative}.bar--top{width:20px}.bar--bottom,.nav__menu:hover .bar--top{width:14px}.nav__menu:hover .bar--bottom{width:20px}.nav__menu:hover{background:#b8f74a0f;border-color:#b8f74a66}.btn{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;cursor:none;transition:transform .6s var(--expo), box-shadow .6s var(--expo), opacity .3s ease;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:clamp(.7rem,1.2vw,.9rem) clamp(1.2rem,2vw,1.65rem);font-size:clamp(.72rem,.85vw,.8rem);font-weight:500;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn__text{z-index:2;transition:color .4s;display:block;position:relative}.btn--filled{background:var(--lime);color:var(--dark);border:none}.btn--filled:before{content:"";transition:transform .65s var(--expo);z-index:1;background:#cf5;border-radius:999px;position:absolute;inset:0;transform:translate(-102%)}.btn--filled:hover:before{transform:translate(0)}.btn--filled:hover{transform:translateY(-2px);box-shadow:0 12px 36px #b8f74a38}.btn--outline:before{content:"";opacity:0;transition:transform .55s var(--expo), opacity .55s ease;z-index:1;background:#b8f74a12;border-radius:999px;position:absolute;inset:0;transform:scale(.7)}.btn--outline:hover:before{opacity:1;transform:scale(1)}.btn--outline:hover{border-color:#b8f74ad9;transform:translateY(-2px)}.hero__arrow-wrap{z-index:6;opacity:0;transition:opacity 1.2s var(--expo) 1.7s, transform 1.2s var(--expo) 1.7s;position:absolute;top:50%;right:clamp(1.5rem,3.5vw,3rem);transform:translateY(-50%)}.hero.is-ready .hero__arrow-wrap{opacity:1;transform:translateY(-50%)}.hero.menu-open .hero__arrow-wrap{opacity:0;pointer-events:none}.hero__arrow{cursor:none;transition:transform .7s var(--expo);justify-content:center;align-items:center;display:flex}.hero__arrow svg{width:clamp(28px,3vw,44px);height:auto;transition:transform .7s var(--expo), filter .5s ease;filter:drop-shadow(0 0 #afd04c00)}.hero__arrow:hover svg{filter:drop-shadow(0 8px 18px #afd04c73);transform:translateY(6px)}.hero__content{z-index:5;flex-direction:column;gap:clamp(1.25rem,2.5vw,2rem);width:100%;padding:0 clamp(1.25rem,3vw,2.5rem) clamp(1.5rem,3.5vw,2.5rem);display:flex;position:absolute;bottom:0;left:0}.hero__heading{letter-spacing:-.025em;color:var(--lime);flex-direction:column;max-width:58%;font-size:clamp(3rem,7.2vw,7.8rem);font-weight:400;line-height:1;display:flex}.hero__heading .line{display:block;overflow:hidden}.reveal-wrap{vertical-align:bottom;margin-right:.18em;display:inline-block;overflow:hidden}.reveal-inner{opacity:0;transition:transform 1.15s var(--expo), opacity 10ms linear;display:inline-block;transform:translateY(110%)}.word{font-family:var(--font-body);font-weight:700}.italic{font-family:var(--font-display);font-style:italic;font-weight:400}.hero.is-ready .hero__heading .line:first-child .reveal-wrap:first-child .reveal-inner{opacity:1;transition-delay:.48s;transform:translateY(0)}.hero.is-ready .hero__heading .line:first-child .reveal-wrap:nth-child(2) .reveal-inner{opacity:1;transition-delay:.64s;transform:translateY(0)}.hero.is-ready .hero__heading .line:nth-child(2) .reveal-wrap .reveal-inner{opacity:1;transition-delay:.8s;transform:translateY(0)}.hero.is-ready .hero__heading .line:nth-child(3) .reveal-wrap .reveal-inner{opacity:1;transition-delay:.95s;transform:translateY(0)}.fade-up{opacity:0;transition:opacity .95s var(--expo) var(--delay,0s), transform .95s var(--expo) var(--delay,0s);transform:translateY(18px)}.hero.is-ready .fade-up{opacity:1;transform:translateY(0)}.hero__ctas{flex-wrap:wrap;align-items:center;gap:clamp(.5rem,1vw,.75rem);display:flex}.hero__desc{font-family:var(--font-body);letter-spacing:.05em;text-transform:uppercase;color:#b8f74a99;max-width:640px;font-size:clamp(.62rem,.8vw,.75rem);font-weight:400;line-height:1.65}@media (width<=1024px){.hero__heading{max-width:72%}.hero__arrow-wrap{right:clamp(1rem,2vw,1.5rem)}}@media (width<=768px){.hero__heading{max-width:90%;font-size:clamp(2.6rem,9.5vw,4.5rem)}.hero__arrow-wrap{top:auto;bottom:clamp(1.5rem,4vw,2.5rem);right:clamp(1.25rem,3vw,2rem);transform:none}.hero.is-ready .hero__arrow-wrap{transform:none}.hero__desc{max-width:100%}.nav__menu{width:44px;height:44px}.nav-overlay__footer{flex-direction:column;align-items:flex-start;gap:1.5rem}.nav-overlay__socials{gap:1.25rem}}@media (width<=480px){.hero__heading{max-width:100%;font-size:clamp(2.2rem,12vw,3.2rem)}.hero__ctas{flex-direction:column;align-items:flex-start}.btn{justify-content:center;width:100%}.nav .btn,.hero__arrow-wrap{display:none}}.problem{background-color:#7ab82a;background-image:url(/problem.png);background-position:bottom;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;height:115svh;padding:clamp(3rem,5.5vw,5rem) clamp(1.5rem,6vw,5rem) 0;display:flex;position:relative;overflow:hidden}.problem__tag{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:#090d0785;text-align:center;margin-bottom:clamp(.75rem,1.5vw,1.25rem);font-size:clamp(.62rem,.82vw,.72rem);font-weight:500}.problem__heading{letter-spacing:-.025em;color:var(--dark);text-align:center;max-width:920px;margin-bottom:clamp(1.5rem,3vw,2.75rem);font-size:clamp(2rem,5vw,5.4rem);font-weight:400;line-height:1.08}.problem__heading .w{font-family:var(--font-body);font-style:normal;font-weight:400}.problem__heading .i{font-family:var(--font-display);font-style:italic;font-weight:400}.problem__arrow{justify-content:center;align-items:center;margin-bottom:clamp(1.5rem,3vw,2.75rem);display:flex}.problem__arrow svg{width:clamp(26px,3vw,44px);height:auto}.problem__body{font-family:var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:#090d07ad;text-align:center;max-width:600px;font-size:clamp(.68rem,.92vw,.86rem);font-weight:500;line-height:1.85}.problem__tag,.problem__heading,.problem__arrow,.problem__body{opacity:0;transition:opacity .95s var(--expo) var(--sd,0s), transform .95s var(--expo) var(--sd,0s);transform:translateY(24px)}.problem__tag.in-view,.problem__heading.in-view,.problem__arrow.in-view,.problem__body.in-view{opacity:1;transform:translateY(0)}@media (width<=768px){.problem__heading{font-size:clamp(1.9rem,7.5vw,3.2rem)}.problem__body{max-width:100%}}.services{box-sizing:border-box;background:#121607;flex-direction:column;width:100%;padding:clamp(3rem,6vw,5.5rem) clamp(2.5rem,5vw,5rem);display:flex;position:relative}.services__tag{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:#b8f74a80;text-align:center;flex-shrink:0;margin-bottom:clamp(.5rem,1vw,.85rem);font-size:clamp(.65rem,.85vw,.75rem);font-weight:500}.services__heading{letter-spacing:-.03em;color:var(--lime);text-align:center;flex-shrink:0;margin-bottom:clamp(1.5rem,3vw,3rem);font-size:clamp(2.2rem,5.5vw,6rem);font-weight:400;line-height:1}.services__heading .w{font-family:var(--font-body);font-weight:400}.services__heading .i{font-family:var(--font-display);font-style:italic;font-weight:400}.services__grid{box-sizing:border-box;grid-template-rows:280px 280px;grid-template-columns:minmax(0,260px) 1fr minmax(0,260px);gap:clamp(.5rem,.8vw,.9rem);display:grid}.service-card--left{grid-area:1/1;align-self:stretch}.service-card--right{grid-area:1/3;align-self:stretch}.services__center-top{text-align:center;flex-direction:column;grid-area:1/2;justify-content:center;align-items:center;gap:.85rem;padding:clamp(1rem,1.5vw,1.5rem);display:flex}.services__center-bottom{grid-area:2/2;grid-template-columns:1fr 1fr;gap:clamp(.5rem,.8vw,.9rem);display:grid}.services__center-arrow svg{width:clamp(26px,2.8vw,40px);height:auto}.services__center-label{font-family:var(--font-body);letter-spacing:.09em;text-transform:uppercase;color:#b8f74a66;max-width:220px;font-size:clamp(.58rem,.7vw,.66rem);font-weight:500;line-height:1.7}.service-card{cursor:none;box-sizing:border-box;width:100%;min-width:0;height:100%;transition:filter .45s var(--expo), transform .45s var(--expo);background:#afd04c;border-radius:0 clamp(14px,1.8vw,24px) clamp(14px,1.8vw,24px);flex-direction:column;justify-content:space-between;padding:clamp(1.1rem,1.8vw,1.65rem);display:flex}.service-card:hover{filter:brightness(1.07);transform:translateY(-3px)}.service-card__body{font-family:var(--font-body);color:#090d07b8;font-size:clamp(.64rem,.8vw,.74rem);font-weight:400;line-height:1.65}.service-card__title{font-family:var(--font-body);letter-spacing:-.02em;color:#121607;margin-top:auto;padding-top:.85rem;font-size:clamp(1.1rem,1.8vw,1.75rem);font-weight:700;line-height:1.1}.services__tag,.services__heading{opacity:0;transition:opacity .9s var(--expo) var(--sd,0s), transform .9s var(--expo) var(--sd,0s);transform:translateY(22px)}.services__tag.in-view,.services__heading.in-view{opacity:1;transform:translateY(0)}.service-card,.services__center-top,.services__center-bottom{opacity:0;transition:opacity .9s var(--expo) var(--sd,0s), transform .9s var(--expo) var(--sd,0s), filter .45s var(--expo);transform:translateY(30px)}.service-card.in-view,.services__center-top.in-view,.services__center-bottom.in-view{opacity:1;transform:translateY(0)}.service-card.in-view:hover{transform:translateY(-3px)}@media (width<=1024px){.services__grid{grid-template-rows:270px 270px;grid-template-columns:minmax(0,200px) 1fr minmax(0,200px)}}@media (width<=800px){.services__grid{grid-template-rows:auto auto auto;grid-template-columns:1fr 1fr}.service-card--left{grid-area:1/1;height:auto;min-height:260px}.service-card--right{grid-area:1/2;height:auto;min-height:260px}.services__center-top{grid-area:2/1/auto/-1}.services__center-bottom{grid-area:3/1/auto/-1}.service-card{height:auto;min-height:220px}}@media (width<=540px){.services__grid{grid-template-columns:1fr}.service-card--left,.service-card--right{grid-area:auto/1}.services__center-top{grid-column:1}.services__center-bottom{grid-column:1;grid-template-columns:1fr}.services__center-label{max-width:100%}}.process{width:100%;position:relative}.process__sticky{width:100%;height:100vh;position:sticky;top:0;overflow:hidden}.process__header{z-index:10;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;padding-top:clamp(2rem,5vh,4.5rem);display:flex;position:absolute;top:0;left:0;right:0}.process__tag{font-family:var(--font-body,Georgia, serif);letter-spacing:.2em;text-transform:uppercase;color:#22201873;opacity:0;font-size:clamp(.58rem,.72vw,.68rem);font-weight:500}.process__title{letter-spacing:-.022em;color:#16140ed1;text-align:center;opacity:0;font-size:clamp(1.8rem,5vw,5rem);font-weight:400;line-height:1}.process__title .ti{font-family:var(--font-display,Georgia, serif);font-style:italic}.process__title .tu{font-family:var(--font-body,Georgia, serif);font-style:normal;font-weight:600}.process__track{will-change:transform;flex-direction:row;width:300vw;height:100%;display:flex;position:absolute;top:0;left:0}.process__panel{background:radial-gradient(80% 60% at 50% 20%,#e4eec8f2 0%,#c3daa0cc 35%,#9ec476a6 65%,#78aa5073 100%),linear-gradient(175deg,#e8eecc 0%,#ccdea0 30%,#a8c870 60%,#8ab858 100%);flex-shrink:0;justify-content:center;align-items:flex-end;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.process__panel-bg{object-fit:cover;object-position:center center;width:100%;height:100%;position:absolute;inset:0}.process__panel-content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:0 clamp(1.25rem,5vw,4rem) clamp(3.5rem,9vh,7rem);display:flex;position:relative}.process__step-label{font-family:var(--font-display,Georgia, serif);color:#16140ed1;letter-spacing:-.03em;font-size:clamp(1.8rem,5.5vw,6rem);font-style:italic;font-weight:400;line-height:1}.process__step-body{font-family:var(--font-body,Georgia, serif);letter-spacing:.12em;text-transform:uppercase;color:#16140e7a;max-width:min(420px,80vw);font-size:clamp(.6rem,1.8vw,.7rem);font-weight:500;line-height:1.8}.process__indicators{z-index:20;align-items:center;gap:clamp(.35rem,1.5vw,.7rem);display:flex;position:absolute;bottom:clamp(1rem,2.5vh,2rem);left:50%;transform:translate(-50%)}.process__ind{background:#16140e26;width:clamp(32px,8vw,64px);height:1px;position:relative;overflow:hidden}.process__ind-fill{background:#16140eb3;width:0%;position:absolute;inset:0}:root{--dark:#0a0f0a;--lime:#b8f74a;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Playfair Display", Georgia, serif;--expo:cubic-bezier(.16, 1, .3, 1)}.projects{background:var(--dark);padding:clamp(5rem,10vw,9rem) clamp(1.25rem,3vw,2.5rem) clamp(4rem,8vw,7rem)}.projects__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:clamp(3rem,6vw,5rem);display:flex}.projects__header-left{flex:none}.projects__header-right{flex-direction:column;flex:0 420px;align-items:flex-start;gap:1.5rem;display:flex}.projects__tag{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:#b8f74a73;opacity:0;transition:opacity .9s var(--expo), transform .9s var(--expo);margin-bottom:.75rem;font-size:clamp(.6rem,.75vw,.7rem);font-weight:500;transform:translateY(14px)}.projects__tag.in-view{opacity:1;transform:translateY(0)}.projects__title{letter-spacing:-.03em;color:var(--lime);opacity:0;transition:opacity 1s var(--expo) .1s, transform 1s var(--expo) .1s;margin:0;font-size:clamp(2.8rem,6vw,6.5rem);font-weight:400;line-height:1;transform:translateY(18px)}.projects__title.in-view{opacity:1;transform:translateY(0)}.projects__title .w{font-family:var(--font-body);font-weight:700}.projects__title .i{font-family:var(--font-display);font-style:italic;font-weight:400}.projects__subtitle{font-family:var(--font-body);letter-spacing:.04em;color:#b8f74a80;opacity:0;transition:opacity .9s var(--expo) .2s, transform .9s var(--expo) .2s;margin:0;font-size:clamp(.72rem,.9vw,.82rem);font-weight:400;line-height:1.7;transform:translateY(14px)}.projects__subtitle.in-view{opacity:1;transform:translateY(0)}.projects__grid{grid-template-columns:repeat(12,1fr);gap:clamp(.75rem,1.2vw,1rem);display:grid}.project-card:first-child{grid-area:1/1/auto/8}.project-card:nth-child(2){grid-area:1/8/auto/13}.project-card:nth-child(3){grid-area:2/1/auto/6}.project-card:nth-child(4){grid-area:2/6/auto/13}.project-card{cursor:none;opacity:0;min-height:clamp(260px,30vw,420px);transition:opacity .95s var(--expo), transform .95s var(--expo);border-radius:clamp(10px,1.2vw,16px);text-decoration:none;display:block;position:relative;overflow:hidden;transform:translateY(24px)}.project-card.in-view{opacity:1;transform:translateY(0)}.project-card:first-child{transition-delay:.1s}.project-card:nth-child(2){transition-delay:.2s}.project-card:nth-child(3){transition-delay:.28s}.project-card:nth-child(4){transition-delay:.18s}.project-card__img-wrap{z-index:0;position:absolute;inset:0}.project-card__img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--expo), filter .6s ease;filter:brightness(.55)saturate(.7);transform-origin:50%;display:block}.project-card:hover .project-card__img{filter:brightness(.65)saturate(.85);transform:scale(1.04)}.project-card__img-overlay{background:linear-gradient(#070c051a 0%,#070c0573 45%,#070c05eb 100%);transition:opacity .5s;position:absolute;inset:0}.project-card:hover .project-card__img-overlay{opacity:.85}.project-card__inner{z-index:1;height:100%;min-height:inherit;flex-direction:column;justify-content:space-between;gap:.75rem;padding:clamp(1.25rem,2vw,1.75rem);display:flex;position:relative}.project-card__top{justify-content:space-between;align-items:center;display:flex}.project-card__num{font-family:var(--font-body);letter-spacing:.12em;color:#b8f74a66;text-transform:uppercase;font-size:.62rem;font-weight:600}.project-card__category{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:#b8f74a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070c054d;border:1px solid #b8f74a33;border-radius:999px;padding:.28rem .7rem;font-size:.6rem;font-weight:500;transition:border-color .35s,color .35s}.project-card:hover .project-card__category{color:#b8f74ad9;border-color:#b8f74a80}.project-card__body{flex-direction:column;flex:1;justify-content:flex-end;gap:.5rem;display:flex}.project-card__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--lime);transition:letter-spacing .5s var(--expo);margin:0;font-size:clamp(1.8rem,3.2vw,3.8rem);font-style:italic;font-weight:400;line-height:1}.project-card:hover .project-card__title{letter-spacing:.005em}.project-card__desc{font-family:var(--font-body);letter-spacing:.02em;color:#b8f74a8c;max-width:460px;margin:0;font-size:clamp(.64rem,.78vw,.72rem);font-weight:400;line-height:1.65}.project-card__footer{border-top:1px solid #b8f74a1a;padding-top:.85rem;transition:border-color .35s}.project-card:hover .project-card__footer{border-color:#b8f74a38}.project-card__cta{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:#b8f74a80;transition:color .35s ease, transform .5s var(--expo);font-size:.65rem;font-weight:600;display:inline-block;transform:translate(0)}.project-card:hover .project-card__cta{color:var(--lime);transform:translate(4px)}.btn{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn--outline{color:#b8f74acc;background:0 0;border:1px solid #b8f74a4d}.btn--outline:hover{border-color:var(--lime);color:var(--lime);background:#b8f74a0d}.btn__text{display:inline-block}@media (width<=1024px){.project-card:first-child{grid-column:1/7}.project-card:nth-child(2){grid-column:7/13}.project-card:nth-child(3){grid-column:1/6}.project-card:nth-child(4){grid-column:6/13}}@media (width<=768px){.projects__grid{grid-template-columns:1fr 1fr;grid-template-rows:unset}.project-card:first-child,.project-card:nth-child(2),.project-card:nth-child(3),.project-card:nth-child(4){grid-area:auto}.project-card:first-child,.project-card:nth-child(4){grid-column:1/3}.projects__header{flex-direction:column;align-items:flex-start}.projects__header-right{flex:none;width:100%}}@media (width<=480px){.projects__grid{grid-template-columns:1fr}.project-card:first-child,.project-card:nth-child(2),.project-card:nth-child(3),.project-card:nth-child(4){grid-area:auto/1}.project-card{min-height:240px}}.faq{background:var(--dark);border-top:1px solid #b8f74a12;padding:clamp(5rem,10vw,9rem) clamp(1.25rem,3vw,2.5rem)}.faq__layout{grid-template-columns:1fr 1.6fr;align-items:start;gap:clamp(3rem,6vw,6rem);display:grid}.faq__left{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:clamp(2rem,5vw,4rem)}.faq__tag{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:#b8f74a73;opacity:0;transition:opacity .9s var(--expo), transform .9s var(--expo);font-size:clamp(.6rem,.75vw,.7rem);font-weight:500;transform:translateY(14px)}.faq__tag.in-view{opacity:1;transform:translateY(0)}.faq__title{letter-spacing:-.03em;color:var(--lime);opacity:0;transition:opacity 1s var(--expo) .1s, transform 1s var(--expo) .1s;margin:0;font-size:clamp(2.8rem,5vw,5.5rem);font-weight:400;line-height:1;transform:translateY(18px)}.faq__title.in-view{opacity:1;transform:translateY(0)}.faq__title .w{font-family:var(--font-body);font-weight:700}.faq__title .i{font-family:var(--font-display);font-style:italic;font-weight:400}.faq__aside{font-family:var(--font-body);letter-spacing:.04em;color:#b8f74a59;opacity:0;transition:opacity .9s var(--expo) .22s, transform .9s var(--expo) .22s;margin:.5rem 0 0;font-size:clamp(.65rem,.8vw,.75rem);font-weight:400;line-height:1.7;transform:translateY(12px)}.faq__aside.in-view{opacity:1;transform:translateY(0)}.faq__contact-link{color:#b8f74aa6;text-decoration:none;transition:color .35s}.faq__contact-link:hover{color:var(--lime)}.faq__list{flex-direction:column;display:flex}.faq__item{opacity:0;transition:opacity .85s var(--expo), transform .85s var(--expo);border-bottom:1px solid #b8f74a1a;transform:translateY(16px)}.faq__item:first-child{border-top:1px solid #b8f74a1a}.faq__item:first-child.in-view{opacity:1;transition-delay:.1s;transform:translateY(0)}.faq__item:nth-child(2).in-view{opacity:1;transition-delay:.16s;transform:translateY(0)}.faq__item:nth-child(3).in-view{opacity:1;transition-delay:.22s;transform:translateY(0)}.faq__item:nth-child(4).in-view{opacity:1;transition-delay:.28s;transform:translateY(0)}.faq__item:nth-child(5).in-view{opacity:1;transition-delay:.34s;transform:translateY(0)}.faq__item:nth-child(6).in-view{opacity:1;transition-delay:.4s;transform:translateY(0)}.faq__question{cursor:none;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;padding:clamp(1.1rem,2vw,1.5rem) 0;display:flex}.faq__question-text{font-family:var(--font-body);letter-spacing:-.01em;color:#b8f74ad1;font-size:clamp(.9rem,1.4vw,1.15rem);font-weight:600;line-height:1.3;transition:color .35s}.faq__item.is-open .faq__question-text,.faq__question:hover .faq__question-text{color:var(--lime)}.faq__question-icon{border:1px solid #b8f74a40;border-radius:50%;flex-shrink:0;width:20px;height:20px;transition:border-color .35s,background .35s;position:relative}.faq__item.is-open .faq__question-icon,.faq__question:hover .faq__question-icon{background:#b8f74a0f;border-color:#b8f74a8c}.faq__icon-bar{transform-origin:50%;transition:transform .5s var(--expo), opacity .4s ease, background .35s ease;background:#b8f74aa6;border-radius:2px;position:absolute;top:50%;left:50%}.faq__item.is-open .faq__icon-bar{background:var(--lime)}.faq__icon-bar--h{width:10px;height:1.5px;transform:translate(-50%,-50%)}.faq__icon-bar--v{width:1.5px;height:10px;transform:translate(-50%,-50%)}.faq__item.is-open .faq__icon-bar--v{opacity:0;transform:translate(-50%,-50%)rotate(90deg)}.faq__answer{height:0;transition:height .55s var(--expo);overflow:hidden}.faq__answer-inner{padding-bottom:clamp(1rem,2vw,1.5rem)}.faq__answer-inner p{font-family:var(--font-body);letter-spacing:.03em;color:#b8f74a80;max-width:620px;margin:0;font-size:clamp(.72rem,.9vw,.82rem);font-weight:400;line-height:1.75}@media (width<=900px){.faq__layout{grid-template-columns:1fr}.faq__left{position:static}}.cta{background:var(--dark);border-top:1px solid #b8f74a12;width:100%;padding:clamp(6rem,12vw,11rem) clamp(1.25rem,3vw,2.5rem);position:relative;overflow:hidden}.cta:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(#b8f74a12 0%,#0000 68%);width:clamp(400px,70vw,900px);height:clamp(300px,50vw,600px);position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.cta__layout{z-index:1;grid-template-columns:1fr 1fr;align-items:end;gap:clamp(3rem,6vw,7rem);max-width:1400px;margin:0 auto;display:grid;position:relative}.cta__left{flex-direction:column;gap:clamp(1.25rem,2vw,1.75rem);display:flex}.cta__tag{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:#b8f74a73;font-size:clamp(.6rem,.75vw,.7rem);font-weight:500}.cta__heading{letter-spacing:-.03em;color:var(--lime);margin:0;font-size:clamp(3rem,6.5vw,7.5rem);font-weight:400;line-height:1}.cta__heading .w{font-family:var(--font-body);font-weight:700}.cta__heading .i{font-family:var(--font-display);font-style:italic;font-weight:400}.cta__right{flex-direction:column;gap:clamp(2rem,3vw,2.5rem);padding-bottom:.35em;display:flex}.cta__desc{font-family:var(--font-body);letter-spacing:.03em;color:#b8f74a80;max-width:480px;font-size:clamp(.72rem,.9vw,.82rem);font-weight:400;line-height:1.8}.cta__actions{flex-wrap:wrap;align-items:center;gap:clamp(.5rem,1vw,.75rem);display:flex}.cta__email{font-family:var(--font-body);letter-spacing:.04em;color:#b8f74a61;font-size:clamp(.7rem,.88vw,.8rem);font-weight:400;text-decoration:none;transition:color .4s;display:inline-block;position:relative}.cta__email:after{content:"";background:var(--lime);transform-origin:0;width:100%;height:1px;transition:transform .6s var(--expo);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.cta__email:hover{color:var(--lime)}.cta__email:hover:after{transform:scaleX(1)}.cta__tag,.cta__heading,.cta__desc,.cta__actions,.cta__email{opacity:0;transition:opacity .95s var(--expo) var(--sd,0s), transform .95s var(--expo) var(--sd,0s);transform:translateY(22px)}.cta__tag.in-view,.cta__heading.in-view,.cta__desc.in-view,.cta__actions.in-view,.cta__email.in-view{opacity:1;transform:translateY(0)}@media (width<=900px){.cta__layout{grid-template-columns:1fr;align-items:start;gap:clamp(2rem,4vw,3rem)}.cta__right{padding-bottom:0}.cta__desc{max-width:100%}}@media (width<=480px){.cta__actions{flex-direction:column;align-items:flex-start}.cta__actions .btn{justify-content:center;width:100%}}.footer{background:var(--dark-2,#0d1209);opacity:0;width:100%;transition:opacity .9s var(--expo), transform .9s var(--expo);border-top:1px solid #b8f74a12;position:relative;overflow:hidden;transform:translateY(16px)}.footer.in-view{opacity:1;transform:translateY(0)}.footer__mega{cursor:none;border-bottom:1px solid #b8f74a0f;width:100%;position:relative;overflow:hidden}.footer__mega-base{font-family:var(--font-body);letter-spacing:-.04em;white-space:nowrap;text-align:center;color:#0000;-webkit-text-stroke:1px #b8f74a1a;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;padding:.25em 0 .2em;font-weight:700;line-height:1;display:block}.footer__mega-lit{pointer-events:none;opacity:0;justify-content:center;align-items:center;transition:opacity .35s;display:flex;position:absolute;inset:0;-webkit-mask-image:radial-gradient(180px at -999px -999px,#000 25%,#0000 75%);mask-image:radial-gradient(180px at -999px -999px,#000 25%,#0000 75%)}.footer__mega-lit span{font-family:var(--font-body);letter-spacing:-.04em;white-space:nowrap;color:var(--lime);-webkit-user-select:none;user-select:none;padding:.25em 0 .2em;font-weight:700;line-height:1;display:block}.footer__mega-cursor{background:var(--lime);pointer-events:none;width:6px;height:6px;transition:transform .4s var(--expo), opacity .35s ease;opacity:0;z-index:3;border-radius:50%;position:absolute;transform:translate(-50%,-50%)scale(0)}.footer__mega-ring{pointer-events:none;width:40px;height:40px;transition:transform .55s var(--expo), opacity .35s ease;opacity:0;z-index:3;border:1px solid #b8f74a59;border-radius:50%;position:absolute;transform:translate(-50%,-50%)scale(0)}.footer__mega.is-hovered .footer__mega-cursor,.footer__mega.is-hovered .footer__mega-ring{opacity:1;transform:translate(-50%,-50%)scale(1)}.footer__mega.is-hovered .footer__mega-lit{opacity:1}.footer__inner{padding:clamp(2rem,4vw,3.5rem) clamp(1.25rem,3vw,2.5rem)}.footer__top{border-bottom:1px solid #b8f74a12;grid-template-columns:1.4fr 1fr 1fr 1fr;align-items:start;gap:clamp(2rem,4vw,4rem);padding-bottom:clamp(2rem,3.5vw,3rem);display:grid}.footer__brand{flex-direction:column;gap:1rem;display:flex}.footer__logo{font-family:var(--font-logo);color:var(--lime);letter-spacing:-.01em;font-size:clamp(1.1rem,1.5vw,1.4rem);text-decoration:none;display:inline-block;position:relative}.footer__logo:after{content:"";background:var(--lime);width:0;height:1.5px;transition:width .7s var(--expo);position:absolute;bottom:-2px;left:0}.footer__logo:hover:after{width:100%}.footer__brand-desc{font-family:var(--font-body);color:#b8f74a4d;letter-spacing:.02em;max-width:240px;font-size:clamp(.64rem,.78vw,.72rem);font-weight:400;line-height:1.8}.footer__brand-socials{flex-wrap:wrap;gap:.6rem;margin-top:.25rem;display:flex}.footer__social{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:#b8f74a66;border:1px solid #b8f74a1f;border-radius:999px;padding:.28rem .8rem;font-size:clamp(.56rem,.68vw,.62rem);font-weight:500;text-decoration:none;transition:color .3s,border-color .3s}.footer__social:hover{color:var(--lime);border-color:#b8f74a73}.footer__col-title{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:#b8f74a73;margin-bottom:1.1rem;font-size:clamp(.58rem,.7vw,.64rem);font-weight:600}.footer__col-links{flex-direction:column;gap:.65rem;display:flex}.footer__link{font-family:var(--font-body);letter-spacing:.02em;color:#b8f74a66;width:fit-content;font-size:clamp(.7rem,.85vw,.78rem);font-weight:400;text-decoration:none;transition:color .3s;position:relative}.footer__link:after{content:"";background:var(--lime);width:0;height:1px;transition:width .5s var(--expo);position:absolute;bottom:-1px;left:0}.footer__link:hover{color:var(--lime)}.footer__link:hover:after{width:100%}.footer__bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding-top:clamp(1.25rem,2vw,1.75rem);display:flex}.footer__copy{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:#b8f74a33;font-size:clamp(.56rem,.68vw,.62rem);font-weight:400}.footer__bottom-links{align-items:center;gap:clamp(1rem,2vw,2rem);display:flex}.footer__bottom-link{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:#b8f74a40;font-size:clamp(.56rem,.68vw,.62rem);font-weight:400;text-decoration:none;transition:color .3s}.footer__bottom-link:hover{color:#b8f74a99}@media (width<=1024px){.footer__top{grid-template-columns:1fr 1fr 1fr}.footer__brand{flex-flow:wrap;grid-column:1/-1;align-items:flex-start;gap:2rem}.footer__brand-desc{max-width:340px}}@media (width<=640px){.footer__top{grid-template-columns:1fr 1fr}.footer__brand{flex-direction:column;gap:1rem}.footer__bottom{flex-direction:column;align-items:flex-start;gap:.75rem}}@media (width<=420px){.footer__top{grid-template-columns:1fr}}:root{--lime:#b8f74a;--lime-dim:#b8f74aa6;--lime-faint:#b8f74a14;--lime-border:#b8f74a38;--dark:#090d07;--dark-2:#111a0d;--dark-3:#0d150a;--font-logo:"Climate Crisis", sans-serif;--font-body:"Aeonik", sans-serif;--font-display:"Recife Display", serif;--expo:cubic-bezier(.16, 1, .3, 1);--smooth:cubic-bezier(.76, 0, .24, 1);--gentle:cubic-bezier(.4, 0, .2, 1)}::selection{background:var(--lime);color:var(--dark)}::selection{background:var(--lime);color:var(--dark)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{background-color:var(--dark);width:100%}body{color:var(--lime);font-family:var(--font-body);-webkit-font-smoothing:antialiased;cursor:none;overflow-x:hidden}#app{width:100%;position:relative}.cursor,.cursor-follower{display:none}@media (hover:hover) and (pointer:fine){.cursor,.cursor-follower{display:block}}.cursor{background:var(--lime);pointer-events:none;z-index:9999;width:8px;height:8px;transition:width .45s var(--expo), height .45s var(--expo), opacity .3s ease;mix-blend-mode:difference;will-change:transform;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor.is-hovering{width:52px;height:52px}.cursor-follower{pointer-events:none;z-index:9998;width:36px;height:36px;transition:width .6s var(--expo), height .6s var(--expo), opacity .4s ease, border-color .4s ease;will-change:transform;border:1px solid #b8f74a59;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-follower.is-hovering{border-color:#b8f74a26;width:72px;height:72px}@font-face{font-family:Aeonik;src:url(/fonts/AeonikTRIAL-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/AeonikTRIAL-RegularItalic.otf)format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/AeonikTRIAL-Medium.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/AeonikTRIAL-Bold.otf)format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Recife Display;src:url(/fonts/RecifeDisplay-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Recife Display;src:url(/fonts/RecifeDisplay-RegularItalic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}
