.elementor-kit-51{--e-global-color-primary:#071235;--e-global-color-secondary:#0A1433;--e-global-color-text:#55607A;--e-global-color-accent:#A3EC36;--e-global-color-gfbg:#F4F6FB;--e-global-color-gfsurf:#FFFFFF;--e-global-color-gfsurf2:#F8FAFD;--e-global-color-gfline:#DCE2EE;--e-global-color-gftint:#EAF0FC;--e-global-color-gflink:#1453F0;--e-global-color-gfink2:#26304F;--e-global-color-gfnavy3:#050C26;--e-global-color-gfonnavy:#C9D2E8;--e-global-color-gfonnavym:#9DA9C6;--e-global-color-gfaccenth:#B7F55C;--e-global-color-gfok:#2F8F0A;--e-global-color-gfgreen:#09BA4F;--e-global-color-gfwa:#25D366;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Figtree";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Figtree";--e-global-typography-accent-font-weight:700;background-color:#F4F6FB;color:#0A1433;font-family:"Figtree", Sans-serif;font-size:17px;line-height:1.65em;}.elementor-kit-51 e-page-transition{background-color:#FFBC7D;}.elementor-kit-51 a{color:#0A1433;}.elementor-kit-51 a:hover{color:#1453F0;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.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);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:560px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Growfiks: refinements Elementor has no control for */
.gfx-balance .elementor-heading-title{text-wrap:balance}
.gfx-w15 .elementor-heading-title{max-width:15ch}
.gfx-pretty p{text-wrap:pretty}
.elementor-widget-text-editor p:last-child,.elementor-widget-theme-post-excerpt p:last-child{margin-bottom:0}
.elementor-widget-text-editor p{margin-block-start:0}
.elementor-icon-box-title{margin:0}
.elementor-widget-icon .elementor-icon-wrapper{line-height:0}
.elementor-icon-box-description{margin:0}
/* Hero headline: gradient on the rotating word */
.gfx-grad-words .elementor-headline{margin:0}
.gfx-grad-words .elementor-headline .elementor-headline-plain-text{display:inline!important}
/* Elementor pads the rotating word by .2em so descenders are not clipped; cancel it so the line keeps its height */
.gfx-grad-words .elementor-headline .elementor-headline-dynamic-wrapper{vertical-align:top;margin:-.2em 0!important}
.gfx-grad-words .elementor-headline-dynamic-text{background-image:linear-gradient(95deg,#0B4FE0 5%,#078F45 95%);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Buttons: icon size and link-style hover nudge. The 20px icon is taller than the text line, so centre them on each other */
.gfx-btn .elementor-button-content-wrapper,.gfx-bar-btn .elementor-button-content-wrapper{align-items:center}
.gfx-btn .elementor-button-icon svg{width:20px;height:20px}
.gfx-link-arrow .elementor-button-icon svg{width:16px;height:16px}
.gfx-link-arrow .elementor-button-content-wrapper{transition:gap .2s}
.gfx-link-arrow .elementor-button:hover .elementor-button-content-wrapper{gap:12px}
/* Sticky header: blur, then solid once scrolled */
.gfx-header{-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);transition:background-color .3s,border-color .3s}
.gfx-header.elementor-sticky--effects{background-color:rgba(255,255,255,.92)!important;border-bottom-color:#DCE2EE!important}
/* Industries ticker */
.gfx-ticker-viewport{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.gfx-ticker .elementor-icon-list-items{flex-wrap:nowrap!important;width:max-content;animation:gfxTicker 42s linear infinite}
.gfx-ticker:hover .elementor-icon-list-items{animation-play-state:paused}
.gfx-ticker .elementor-icon-list-item{white-space:nowrap}
@keyframes gfxTicker{to{transform:translateX(-50%)}}
/* Service tabs: two-line titles and icon chips */
.gfx-sx-tabs .e-n-tab-title{text-align:start;align-items:center;justify-content:flex-start}
.gfx-sx-tabs .e-n-tab-title-text{display:flex;flex-direction:column;align-items:flex-start;text-align:start;line-height:1.25}
.gfx-sx-tabs .e-n-tab-title-text small{display:block;font-family:Figtree,sans-serif;font-size:.875rem;font-weight:400;color:#9DA9C6;margin-top:2px;line-height:1.4}
/* Elementor stacks the normal and active icons in a flex column; centre that column so the glyph sits mid-chip */
.gfx-sx-tabs .e-n-tab-icon{width:46px;height:46px;border-radius:13px;background:rgba(255,255,255,.08);flex:none;transition:background-color .2s}
.gfx-sx-tabs .e-n-tab-title .e-n-tab-icon{display:flex!important;flex-direction:column;align-items:center!important;justify-content:center!important}
.gfx-sx-tabs .e-n-tab-title[aria-selected=true] .e-n-tab-icon{background:#A3EC36}
.gfx-sx-tabs .e-n-tab-icon svg{color:currentColor}
.gfx-sx-tabs .e-n-tab-title[aria-selected=true] .e-n-tab-icon svg{color:#071235}
.gfx-sx-tabs .e-n-tab-title:not([aria-selected=true]) .e-n-tab-icon svg{color:#fff}
.gfx-sx-card .gfx-sx-arrow{opacity:.65;transition:opacity .2s,transform .2s}
.gfx-sx-card:hover .gfx-sx-arrow{opacity:1;transform:translate(2px,-2px)}
@media (max-width:1024px){.gfx-sx-tabs .e-n-tab-title{flex:0 0 270px!important;width:270px!important;min-width:0!important;justify-content:flex-start!important}.gfx-sx-tabs .e-n-tab-title-text{white-space:normal!important;min-width:0}.gfx-sx-tabs .e-n-tabs>.e-n-tabs-heading{overflow-x:auto;flex-wrap:nowrap;scroll-snap-type:x mandatory;scrollbar-width:none}.gfx-sx-tabs .e-n-tabs-heading::-webkit-scrollbar{display:none}.gfx-sx-tabs .e-n-tab-title{scroll-snap-align:start}}
/* Service tabs: every panel shares the tallest panel's height, so switching tabs never shifts the page */
.gfx-sx-tabs .e-n-tabs>.e-n-tabs-content{display:grid!important;grid-template-columns:minmax(0,1fr)}
.gfx-sx-tabs .e-n-tabs>.e-n-tabs-content>.e-con{grid-area:1/1;display:flex!important}
.gfx-sx-tabs .e-n-tabs-content>.e-con:not(.e-active){visibility:hidden;pointer-events:none}
/* Service tabs: the opened panel fades up, as on the coded site */
.gfx-sx-tabs .e-n-tabs>.e-n-tabs-content>.e-con.e-active{animation:gfxFadeUp .45s cubic-bezier(.2,.7,.2,1)}
@keyframes gfxFadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
/* Testimonials: on the live page the carousel's own arrows and dots are placed on the section grid, like the coded version:
   arrows under the intro (the 86px row), dots inside the card. The editor keeps the arrows under the card so the widget stays selectable. */
.gfx-t-layout{position:relative}
.gfx-testimonials .elementor-swiper-button{width:54px;height:54px;padding:0!important;display:grid!important;place-items:center;transform:none!important}
.gfx-testimonials .swiper-pagination{display:flex;gap:8px;line-height:0}
.gfx-testimonials .swiper-pagination-bullet{width:10px!important;height:10px!important;margin:0!important;border-radius:999px;opacity:1;background:#DCE2EE;transition:width .3s,background-color .3s}
.gfx-testimonials .swiper-pagination-bullet-active{width:28px!important;background:#0A1433!important}
body:not(.elementor-editor-active) .gfx-testimonials{display:contents}
body:not(.elementor-editor-active) .gfx-testimonials>.swiper{grid-column:2;grid-row:1/-1;min-width:0;width:100%}
body:not(.elementor-editor-active) .gfx-testimonials>.elementor-swiper-button{position:absolute;grid-column:1;grid-row:3;top:32px!important;bottom:auto!important;right:auto!important}
body:not(.elementor-editor-active) .gfx-testimonials>.elementor-swiper-button-prev{left:0!important}
body:not(.elementor-editor-active) .gfx-testimonials>.elementor-swiper-button-next{left:66px!important}
body:not(.elementor-editor-active) .gfx-testimonials>.swiper-pagination{position:absolute;grid-column:2;grid-row:1/-1;top:auto!important;left:auto!important;width:auto!important;transform:none!important;right:calc(clamp(28px,5vw,60px) + 1px)!important;bottom:calc(clamp(28px,4vw,48px) + 1px)!important}
@media (max-width:1024px){body:not(.elementor-editor-active) .gfx-testimonials>.swiper,body:not(.elementor-editor-active) .gfx-testimonials>.swiper-pagination{grid-column:1;grid-row:3}body:not(.elementor-editor-active) .gfx-testimonials>.elementor-swiper-button{grid-row:2}}
@media (max-width:768px){body:not(.elementor-editor-active) .gfx-testimonials>.swiper-pagination{left:calc(clamp(28px,5vw,60px) + 1px)!important;right:auto!important}}
.elementor-editor-active .gfx-testimonials{margin-bottom:76px}
.elementor-editor-active .gfx-testimonials .elementor-swiper-button{top:auto!important;bottom:-76px!important}
.elementor-editor-active .gfx-testimonials .elementor-swiper-button-prev{left:0!important;right:auto!important}
.elementor-editor-active .gfx-testimonials .elementor-swiper-button-next{left:66px!important;right:auto!important}
/* Testimonials: author row sits at the bottom of each slide */
.gfx-push-bottom{margin-top:auto!important}
/* FAQ accordion: circular plus that turns into a lime x. Elementor sizes the icon box to the glyph, so the 38px circle needs !important */
.gfx-faq .e-n-accordion-item-title-icon{width:38px!important;height:38px!important;border:1.5px solid #DCE2EE;border-radius:50%;display:grid!important;place-items:center;flex:none;transition:transform .3s,background-color .2s,border-color .2s}
.gfx-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon{transform:rotate(45deg);background:#A3EC36;border-color:#A3EC36}
.gfx-faq .e-n-accordion-item-title-icon span{display:grid;place-items:center}
.gfx-faq .e-n-accordion-item[open]>.e-con{animation:gfxFadeIn .35s cubic-bezier(.2,.7,.2,1)}
@keyframes gfxFadeIn{from{opacity:0}to{opacity:1}}
/* Lead form: field heights and focus ring */
.gfx-form .elementor-field-group .elementor-field-textual{min-height:50px!important;padding:0 16px!important;font-size:16px}
.gfx-form .elementor-field-group textarea.elementor-field-textual{min-height:96px!important;padding:13px 16px!important}
.gfx-form .elementor-field-group.elementor-field-type-acceptance{margin-block:4px 2px}
.gfx-form .elementor-field-subgroup input[type=checkbox]{width:19px;height:19px;margin:2px 10px 0 0;accent-color:#071235;flex:none}
.gfx-form .elementor-field-option{display:flex;align-items:flex-start}
@media (max-width:768px){.gfx-form .elementor-form-fields-wrapper>.elementor-field-group{flex-basis:100%!important;max-width:100%!important;width:100%!important}}
.gfx-form .elementor-field-textual:focus{border-color:#1453F0!important;background-color:#fff!important;box-shadow:0 0 0 4px rgba(20,83,240,.14);outline:none}
.gfx-form .elementor-field-type-acceptance label{color:#55607A;font-weight:400;font-size:.9rem}
/* Contact links: rows keep a 14px gap when they wrap */
.gfx-contacts .elementor-icon-list-items{row-gap:14px}
/* Blog cards */
.gfx-post-card{transition:transform .3s,box-shadow .3s}
.gfx-post-card:not(.is-static):hover img{transform:scale(1.04)}
.gfx-post-meta .elementor-post-info__item--type-terms{display:inline-block;padding:4px 11px;border-radius:999px;background:#EAF0FC;color:#1453F0;font-weight:700;font-size:.8rem}
.gfx-post-meta .elementor-post-info__terms-list-item{color:#1453F0}
/* Mobile action bar icons */
.gfx-bar-btn .elementor-button-icon svg{width:20px;height:20px}
/* Entrance animations: Elementor's "Fade In Up" (set per element in Motion Effects), eased and shortened to the coded site's 26px reveal */
.elementor .animated.fadeInUp{animation-name:gfxReveal;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
@keyframes gfxReveal{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
/* Process: the line fills as the steps scroll past (scroll-driven CSS; browsers without it keep the plain line) */
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
.gfx-timeline::after{content:"";position:absolute;left:-2px;top:0;width:2px;height:100%;border-radius:2px;background:linear-gradient(180deg,#0B4FE0 5%,#078F45 95%);transform-origin:top;transform:scaleY(0);animation:gfxLine linear both;animation-timeline:view();animation-range:cover 40vh cover calc(100% - 60vh)}
@keyframes gfxLine{to{transform:scaleY(1)}}}}
@media (prefers-reduced-motion:reduce){.gfx-ticker .elementor-icon-list-items{animation:none}.elementor .animated{animation:none!important}}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/bricolage-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/bricolage-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/bricolage-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 800;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/bricolage-latin.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/figtree-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/figtree-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/figtree-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://growfix.qadrilancer.com/wp-content/uploads/growfiks-elementor/fonts/figtree-latin.woff2') format('woff2');
}
/* End Custom Fonts CSS */