.elementor-kit-7{--e-global-color-primary:#33C433;--e-global-color-secondary:#FC3404;--e-global-color-text:#5A5A5A;--e-global-color-accent:#4A4A4A;--e-global-color-ge_white:#FFFFFF;--e-global-color-ge_light:#F6F6F6;--e-global-color-ge_black:#0E0E0E;--e-global-color-ge_card:#ECECEC;--e-global-color-ge_glass:#3A3A3AB3;--e-global-typography-primary-font-family:"Neue Montreal";--e-global-typography-primary-font-size:clamp(44px, 5.6vw, 108px);--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.05em;--e-global-typography-primary-letter-spacing:-1.5px;--e-global-typography-secondary-font-family:"THICCCBOI";--e-global-typography-secondary-font-size:clamp(16px, 1.05vw, 20px);--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-text-font-family:"THICCCBOI";--e-global-typography-text-font-size:clamp(15px, 0.95vw, 18px);--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"THICCCBOI";--e-global-typography-accent-font-size:clamp(14px, 0.85vw, 16px);--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.2em;--e-global-typography-ge_h1-font-family:"Neue Montreal";--e-global-typography-ge_h1-font-size:clamp(42px, 5.4vw, 104px);--e-global-typography-ge_h1-font-weight:700;--e-global-typography-ge_h1-line-height:1em;--e-global-typography-ge_h1-letter-spacing:-1.5px;--e-global-typography-ge_h3-font-family:"Neue Montreal";--e-global-typography-ge_h3-font-size:clamp(20px, 1.4vw, 28px);--e-global-typography-ge_h3-font-weight:700;--e-global-typography-ge_h3-line-height:1.15em;--e-global-typography-ge_lead-font-family:"THICCCBOI";--e-global-typography-ge_lead-font-size:clamp(16px, 1.15vw, 22px);--e-global-typography-ge_lead-font-weight:400;--e-global-typography-ge_lead-line-height:1.55em;--e-global-typography-ge_small-font-family:"THICCCBOI";--e-global-typography-ge_small-font-size:clamp(13px, 0.8vw, 15px);--e-global-typography-ge_small-font-weight:400;--e-global-typography-ge_small-line-height:1.55em;--e-global-typography-ge_tag-font-family:"THICCCBOI";--e-global-typography-ge_tag-font-size:clamp(12px, 0.85vw, 16px);--e-global-typography-ge_tag-font-weight:400;--e-global-typography-ge_tag-line-height:1.2em;--e-global-typography-ge_tag-letter-spacing:0.6px;--e-global-typography-ge_stat-font-family:"Neue Montreal";--e-global-typography-ge_stat-font-size:clamp(44px, 3.9vw, 76px);--e-global-typography-ge_stat-font-weight:700;--e-global-typography-ge_stat-line-height:1em;--e-global-typography-ge_stat-letter-spacing:-1px;--e-global-typography-ge_menu-font-family:"THICCCBOI";--e-global-typography-ge_menu-font-size:clamp(14px, 0.85vw, 16px);--e-global-typography-ge_menu-font-weight:500;--e-global-typography-ge_menu-line-height:1.2em;background-color:var( --e-global-color-ge_white );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );color:#FFFFFF;border-radius:100px 100px 100px 100px;padding:18px 34px 18px 34px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:var( --e-global-color-secondary );color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-primary );}.elementor-kit-7 a:hover{color:var( --e-global-color-secondary );}.elementor-kit-7 h1{color:var( --e-global-color-accent );font-family:var( --e-global-typography-ge_h1-font-family ), Sans-serif;font-size:var( --e-global-typography-ge_h1-font-size );font-weight:var( --e-global-typography-ge_h1-font-weight );line-height:var( --e-global-typography-ge_h1-line-height );letter-spacing:var( --e-global-typography-ge_h1-letter-spacing );}.elementor-kit-7 h2{color:var( --e-global-color-accent );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h3{color:var( --e-global-color-accent );font-family:var( --e-global-typography-ge_h3-font-family ), Sans-serif;font-size:var( --e-global-typography-ge_h3-font-size );font-weight:var( --e-global-typography-ge_h3-font-weight );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 h4{font-family:var( --e-global-typography-ge_h3-font-family ), Sans-serif;font-size:var( --e-global-typography-ge_h3-font-size );font-weight:var( --e-global-typography-ge_h3-font-weight );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:0px;--container-default-padding-right:24px;--container-default-padding-bottom:0px;--container-default-padding-left:24px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1440px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-ge_h1-font-size );line-height:var( --e-global-typography-ge_h1-line-height );letter-spacing:var( --e-global-typography-ge_h1-letter-spacing );}.elementor-kit-7 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h3{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}@media(max-width:1024px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-ge_h1-font-size );line-height:var( --e-global-typography-ge_h1-line-height );letter-spacing:var( --e-global-typography-ge_h1-letter-spacing );}.elementor-kit-7 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h3{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-ge_h1-font-size );line-height:var( --e-global-typography-ge_h1-line-height );letter-spacing:var( --e-global-typography-ge_h1-letter-spacing );}.elementor-kit-7 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h3{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}@media(min-width:2400px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-ge_h1-font-size );line-height:var( --e-global-typography-ge_h1-line-height );letter-spacing:var( --e-global-typography-ge_h1-letter-spacing );}.elementor-kit-7 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h3{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-ge_h3-font-size );line-height:var( --e-global-typography-ge_h3-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}
/* Start custom CSS *//* ===== Generation Eco – global styles ===== */
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;overflow-x:hidden}
.ge-accent{color:var(--e-global-color-primary);font-style:italic}
.ge-red{color:var(--e-global-color-secondary)}
em.ge-red{font-style:italic}
.ge-green{color:var(--e-global-color-primary)}
.ge-sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ===== Primary button: green -> red with glossy shine sweep ===== */
.ge-btn .elementor-button{position:relative;overflow:hidden;isolation:isolate;transition:background-color .55s ease,border-color .55s ease,box-shadow .55s ease,transform .35s ease}
.ge-btn .elementor-button::before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 0 rgba(255,255,255,0);transition:box-shadow .55s ease;pointer-events:none}
.ge-btn .elementor-button::after{content:"";position:absolute;top:-30%;left:-90%;width:55%;height:160%;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.18) 30%,rgba(255,255,255,.95) 50%,rgba(255,255,255,.18) 70%,rgba(255,255,255,0) 100%);transform:skewX(-22deg);transition:left .8s cubic-bezier(.25,.8,.25,1);pointer-events:none;z-index:2}
.ge-btn .elementor-button:hover::after,.ge-btn .elementor-button:focus-visible::after{left:140%}
.ge-btn .elementor-button:hover::before{box-shadow:inset 0 0 14px 2px rgba(255,255,255,.55)}
.ge-btn .elementor-button:hover{background-color:var(--e-global-color-secondary)!important;border-color:var(--e-global-color-secondary)!important;transform:translateY(-2px);box-shadow:0 12px 26px -10px rgba(252,52,4,.6)}
.ge-btn--red .elementor-button:hover{background-color:var(--e-global-color-primary)!important;border-color:var(--e-global-color-primary)!important;box-shadow:0 12px 26px -10px rgba(51,196,51,.6)}
.ge-btn .elementor-button .elementor-button-content-wrapper{position:relative;z-index:3}
.ge-tag .elementor-button{pointer-events:none;line-height:1}
.ge-tag .elementor-button-icon svg{width:.9em;height:.9em}

/* ===== Header ===== */
.ge-header{position:fixed!important;top:0;left:0;right:0;border-bottom:1px solid rgba(255,255,255,.35);transition:background-color .4s ease,backdrop-filter .4s ease,box-shadow .4s ease}
.admin-bar .ge-header{top:32px}
body.ge-scrolled .ge-header{background:rgba(14,14,14,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.18);border-bottom-color:transparent}
.ge-header .ge-logo img{transition:width .4s ease}
body.ge-scrolled .ge-header .ge-logo img{width:96px}
@media(max-width:767px){body.ge-scrolled .ge-header .ge-logo img{width:70px}}

/* ===== Hero ===== */
.ge-hero-title em{display:inline-block}
.ge-glass{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12)}
.ge-avatars .ge-avatar:not(:first-child){margin-left:-16px}
.ge-avatars .ge-avatar img{border-radius:50%;transition:transform .35s ease}
.ge-avatars .ge-avatar:hover img{transform:translateY(-4px)}
.ge-counter-left .elementor-counter-number-wrapper{justify-content:flex-start}

/* ===== Ribbons marquee ===== */
.ge-ribbons{overflow:hidden}
.ge-ribbon{position:relative;width:112%!important;max-width:none!important;margin-left:-6%!important;will-change:transform}
.ge-marquee .elementor-icon-list-items{flex-wrap:nowrap!important;width:max-content;animation:ge-marquee 42s linear infinite}
.ge-marquee--rev .elementor-icon-list-items{animation-direction:reverse}
.ge-marquee .elementor-icon-list-item{white-space:nowrap}
.ge-marquee:hover .elementor-icon-list-items{animation-play-state:paused}
@keyframes ge-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ===== Built on Experience ===== */
.ge-float-img img{box-shadow:0 24px 48px -20px rgba(0,0,0,.35);transition:transform .5s ease}
.ge-float-img:hover img{transform:scale(1.06) rotate(-2deg)}
.ge-statcard{overflow:hidden;box-shadow:0 30px 60px -28px rgba(0,0,0,.45)}
.ge-statcard::before,.ge-statcard::after{content:"";position:absolute;width:90px;height:130px;border-radius:0 100% 0 100%;background:rgba(255,255,255,.14);pointer-events:none}
.ge-statcard::before{top:-34px;right:-26px;transform:rotate(18deg)}
.ge-statcard::after{bottom:-50px;left:-30px;transform:rotate(-12deg)}
.ge-statcard .elementor-counter-number-suffix{font-size:.35em;vertical-align:top;position:relative;top:.3em;color:var(--e-global-color-primary)}
.ge-statcard--primary .elementor-counter-number-suffix{color:var(--e-global-color-secondary)}

/* ===== Services – sticky stacking cards ===== */
.ge-stack-row{position:sticky!important;top:120px}
.ge-stack-row:nth-child(2){top:140px}.ge-stack-row:nth-child(3){top:160px}.ge-stack-row:nth-child(4){top:180px}.ge-stack-row:nth-child(5){top:200px}
.ge-svc-card{box-shadow:0 -14px 40px -24px rgba(0,0,0,.35);transition:transform .45s ease}
.ge-svc-card:hover{transform:translateY(-4px)}
.ge-svc-img img{box-shadow:0 -14px 40px -24px rgba(0,0,0,.35);transition:transform .7s ease}
.ge-svc-img{overflow:hidden;border-radius:14px}
.ge-svc-img:hover img{transform:scale(1.05)}
.ge-arrow .elementor-icon{transition:all .45s cubic-bezier(.25,.8,.25,1)}
.ge-arrow .elementor-icon i,.ge-arrow .elementor-icon svg{transform:rotate(-45deg);transition:transform .45s cubic-bezier(.25,.8,.25,1)}
.ge-svc-card:hover .ge-arrow .elementor-icon{background:#FC3404;border-color:#FC3404}
.ge-svc-card--secondary:hover .ge-arrow .elementor-icon{background:#FF7A45;border-color:#FF7A45}
.ge-svc-card:hover .ge-arrow .elementor-icon i,.ge-svc-card:hover .ge-arrow .elementor-icon svg{transform:rotate(0)}
@media(max-width:1024px){.ge-stack-row,.ge-stack-row:nth-child(n){top:90px}}
@media(max-width:767px){.ge-stack-row,.ge-stack-row:nth-child(n){position:relative!important;top:auto}}

/* ===== Why choose us ===== */
.ge-why-bg{position:relative}
.ge-why-bg::before{content:"";position:absolute;left:0;right:0;top:0;height:38%;background:linear-gradient(to bottom,#fff 0%,rgba(255,255,255,0) 100%);z-index:1;pointer-events:none}
.ge-why-bg>.elementor-widget{position:relative;z-index:2}
.ge-why-card{transition:transform .45s ease,box-shadow .45s ease}
.ge-why-card:hover{transform:translateY(-8px);box-shadow:0 24px 50px -24px rgba(0,0,0,.45)}
.ge-why-card .elementor-icon{transition:transform .5s ease}
.ge-why-card:hover .elementor-icon{transform:rotate(-8deg) scale(1.08);color:var(--e-global-color-primary)}

/* ===== Recent work – curved 3D carousel ===== */
.ge-curve-carousel .swiper-slide{transition:transform .25s linear;transform-origin:center center}
.ge-curve-carousel .swiper-slide-image{width:100%;aspect-ratio:579/371;object-fit:cover}

/* ===== Testimonials ===== */
.ge-ttitle img{-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent 95%);mask-image:linear-gradient(to bottom,#000 30%,transparent 95%)}
.ge-tcard{transition:transform .45s ease,box-shadow .45s ease}
.ge-tcard:hover{transform:translateY(-6px);box-shadow:0 26px 50px -20px rgba(0,0,0,.18)!important}

/* ===== CTA turbines – blades gently sway ===== */
.ge-turbines img{animation:ge-sway 6s ease-in-out infinite;transform-origin:50% 100%}
@keyframes ge-sway{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* ===== Footer ===== */
.ge-footer-links .elementor-item{transition:padding .3s ease,color .3s ease}
.ge-footer-links .elementor-item:hover{padding-left:6px!important}

@media (prefers-reduced-motion:reduce){.ge-marquee .elementor-icon-list-items,.ge-turbines img{animation:none}}

.ge-ribbons .ge-ribbon--red{z-index:3!important}
.ge-ribbons .ge-ribbon--green{z-index:1!important}
@media(max-width:767px){.ge-tcard .e-con{flex-wrap:nowrap}}
/* ribbons cross exactly at the centre */
.ge-ribbons{position:relative}
.ge-ribbons .ge-ribbon{position:absolute!important;left:50%!important;top:50%;margin:0!important;width:115%!important;transform-origin:50% 50%}
.ge-ribbons .ge-ribbon--green{transform:translate(-50%,-50%) rotate(3.6deg)}
.ge-ribbons .ge-ribbon--red{transform:translate(-50%,-50%) rotate(-3.6deg);box-shadow:0 22px 40px -18px rgba(0,0,0,.35)}
@media(max-width:767px){.ge-ribbons .ge-ribbon--green{transform:translate(-50%,-50%) rotate(5deg)}.ge-ribbons .ge-ribbon--red{transform:translate(-50%,-50%) rotate(-5deg)}}
/* service card glow like design */
.ge-svc-card{position:relative;overflow:hidden}
.ge-svc-card::after{content:"";position:absolute;top:-120px;right:-120px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,170,60,.55) 0%,rgba(255,170,60,0) 70%);pointer-events:none}
.ge-svc-card--primary::after{background:radial-gradient(circle,rgba(190,255,120,.5) 0%,rgba(190,255,120,0) 70%)}
.ge-svc-card>.e-con{position:relative;z-index:1}
.ge-pill .elementor-button{transition:transform .3s ease}
.ge-pill .elementor-button:hover{transform:translateY(-2px)}
/* Why choose us – infinite marquee, pauses on hover */
.ge-why-track{flex-wrap:nowrap!important;width:max-content!important;max-width:none!important;animation:ge-marquee var(--ge-why-dur,45s) linear infinite}
.ge-why-marquee:hover .ge-why-track{animation-play-state:paused}
.ge-why-track>.ge-why-card{flex-shrink:0}
.ge-experience{overflow:visible!important}
.ge-areas,.ge-areas .elementor-slides-wrapper{border-radius:16px;overflow:hidden}
/* Recent Work – concave curved top & bottom edges (like design) */
.ge-curve-carousel.elementor-widget{position:relative;overflow:hidden}
.ge-curve-carousel.elementor-widget::before,.ge-curve-carousel.elementor-widget::after{content:"";position:absolute;left:-20%;width:140%;height:240px;background:#fff;border-radius:50%;z-index:5;pointer-events:none}
.ge-curve-carousel.elementor-widget::before{top:-212px}
.ge-curve-carousel.elementor-widget::after{bottom:-212px}
@media(max-width:1024px){.ge-curve-carousel.elementor-widget::before,.ge-curve-carousel.elementor-widget::after{height:150px}.ge-curve-carousel.elementor-widget::before{top:-134px}.ge-curve-carousel.elementor-widget::after{bottom:-134px}}
@media(max-width:767px){.ge-curve-carousel.elementor-widget::before,.ge-curve-carousel.elementor-widget::after{height:90px}.ge-curve-carousel.elementor-widget::before{top:-80px}.ge-curve-carousel.elementor-widget::after{bottom:-80px}}
/* CTA wind turbines – blades break out of the banner and spin clockwise */
.ge-cta{overflow:visible!important}
.ge-turbine{pointer-events:none}
.ge-blades img{display:block;transform-origin:49.9% 49.8%;animation:ge-spin 7s linear infinite;will-change:transform}
.ge-blades--b img{animation-duration:8.5s;animation-delay:-2s}
.ge-tower img{display:block}
@keyframes ge-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.ge-blades img{animation-duration:30s}}
/* Footer newsletter form – design match */
.ge-newsletter .elementor-form-fields-wrapper{flex-wrap:nowrap}
.ge-newsletter .elementor-field-group{margin-bottom:0!important}
.ge-newsletter input.elementor-field{min-height:68px;padding:0 28px!important;font-family:'THICCCBOI',sans-serif!important;font-size:clamp(15px,1vw,18px)!important;color:#111!important;border:0!important}
.ge-newsletter input.elementor-field::placeholder{color:#222;opacity:1}
.ge-newsletter .elementor-button{min-height:68px;width:100%;font-family:'Neue Montreal',sans-serif!important;font-weight:700!important;font-size:clamp(15px,1vw,18px)!important;transition:background-color .4s ease,transform .3s ease}
.ge-newsletter .elementor-button:hover{transform:translateY(-2px)}
@media(max-width:767px){.ge-newsletter input.elementor-field,.ge-newsletter .elementor-button{min-height:54px}.ge-newsletter input.elementor-field{padding:0 16px!important}}

html{overflow-x:clip}
body{overflow-x:clip!important}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
.ge-newsletter .elementor-button{white-space:nowrap}
.ge-tag .elementor-button-icon svg{width:1.1em;height:1.1em}
/* section sub-heading tag (WHY US / SERVICES …) */
.ge-tag .elementor-button{font-family:'THICCCBOI',sans-serif!important;font-weight:400!important;font-size:clamp(12px,.85vw,16px)!important;letter-spacing:.6px;text-transform:uppercase;padding:13px 36px 13px 30px!important}
@media(max-width:767px){.ge-tag .elementor-button{padding:10px 24px 10px 20px!important}}
/* Recent Work marquee with curved top/bottom */
.ge-work-marquee{position:relative}
.ge-work-marquee::before,.ge-work-marquee::after{content:"";position:absolute;left:-20%;width:140%;height:240px;background:#fff;border-radius:50%;z-index:5;pointer-events:none}
.ge-work-marquee::before{top:-212px}.ge-work-marquee::after{bottom:-212px}
.ge-work-img img{display:block;width:100%;aspect-ratio:579/371;object-fit:cover}
.ge-work-track{--ge-why-dur:60s}
@media(max-width:1024px){.ge-work-marquee::before,.ge-work-marquee::after{height:150px}.ge-work-marquee::before{top:-134px}.ge-work-marquee::after{bottom:-134px}}
@media(max-width:767px){.ge-work-marquee::before,.ge-work-marquee::after{height:90px}.ge-work-marquee::before{top:-80px}.ge-work-marquee::after{bottom:-80px}}
.ge-work-track>.ge-work-img{flex:0 0 auto!important;width:clamp(300px,32vw,620px)!important;max-width:none!important}
.ge-work-track>.ge-work-img img{width:100%!important;max-width:none!important;height:auto}
.ge-newsletter .elementor-form-fields-wrapper{align-items:stretch!important}
.ge-newsletter .elementor-field-type-submit,.ge-newsletter .e-form__buttons{display:flex;align-items:stretch}
.ge-newsletter input.elementor-field,.ge-newsletter .elementor-button{height:68px!important;min-height:68px!important;padding-top:0!important;padding-bottom:0!important;box-sizing:border-box}
@media(max-width:767px){.ge-newsletter input.elementor-field,.ge-newsletter .elementor-button{height:54px!important;min-height:54px!important}}
@media(min-width:768px){.ge-nowrap .elementor-heading-title{white-space:nowrap}}
/* Services – no sticky stacking; image slides out from behind the card once */
.ge-stack-row,.ge-stack-row:nth-child(n){position:relative!important;top:auto!important}
.ge-svc-card{z-index:2}
.ge-svc-img{opacity:0;transform:translateX(-70%);transition:transform 1.1s cubic-bezier(.22,.9,.25,1),opacity .6s ease}
.ge-svc-img.ge-in{opacity:1;transform:none}
@media(max-width:767px){.ge-svc-img{transform:translateY(-40%)}}
.elementor-editor-active .ge-svc-img{opacity:1;transform:none}
/* image height = card height, slower smooth reveal */
@media(min-width:768px){
.ge-stack-row{align-items:stretch!important}
.ge-svc-img{align-self:stretch!important;display:flex}
.ge-svc-img img{height:100%!important;width:100%!important;object-fit:cover}
}
.ge-svc-img{transition:transform 2.2s cubic-bezier(.16,1,.3,1),opacity 1.4s ease!important}
/* video bg keeps the white top fade */
.ge-why-bg>.elementor-background-video-container{z-index:0}
.ge-why-bg::before{z-index:1!important}
.ge-why-bg{background-image:var(--ge-why-fallback);background-size:cover;background-position:center}
.ge-work-img img{aspect-ratio:5/4!important;object-fit:cover}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Neue Montreal';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/NeueMontreal-regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Neue Montreal';
	font-style: italic;
	font-weight: 400;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/NeueMontreal-italic.woff2') format('woff2');
}
@font-face {
	font-family: 'Neue Montreal';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/NeueMontreal-medium.woff2') format('woff2');
}
@font-face {
	font-family: 'Neue Montreal';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/NeueMontreal-bold.woff2') format('woff2');
}
@font-face {
	font-family: 'Neue Montreal';
	font-style: italic;
	font-weight: 700;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/NeueMontreal-bolditalic.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'THICCCBOI';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/THICCCBOI-Regular.woff2') format('woff2');
}
@font-face {
	font-family: 'THICCCBOI';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/THICCCBOI-Medium.woff2') format('woff2');
}
@font-face {
	font-family: 'THICCCBOI';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/THICCCBOI-SemiBold.woff2') format('woff2');
}
@font-face {
	font-family: 'THICCCBOI';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://generation-eco.redfeatherdigitals.com/wp-content/uploads/2026/11/THICCCBOI-Bold.woff2') format('woff2');
}
/* End Custom Fonts CSS */