.elementor-1384 .elementor-element.elementor-element-1d0d534 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-1384 .elementor-element.elementor-element-1d0d534 > .elementor-background-overlay{background-color:#000000;opacity:0.1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1384 .elementor-element.elementor-element-1d0d534{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-bc-flex-widget .elementor-1384 .elementor-element.elementor-element-2a6a1d3.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-1384 .elementor-element.elementor-element-2a6a1d3.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-1384 .elementor-element.elementor-element-2a6a1d3.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-widget-heading .elementor-heading-title{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 );color:var( --e-global-color-primary );}.elementor-1384 .elementor-element.elementor-element-bd756c9 > .elementor-widget-container{margin:0px 150px 0px 150px;}.elementor-1384 .elementor-element.elementor-element-bd756c9.elementor-element{--align-self:center;}.elementor-1384 .elementor-element.elementor-element-bd756c9{text-align:center;}.elementor-1384 .elementor-element.elementor-element-bd756c9 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:80px;font-weight:300;color:var( --e-global-color-517620f );}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-1384 .elementor-element.elementor-element-36fd0a5 .elementor-icon-wrapper{text-align:center;}.elementor-1384 .elementor-element.elementor-element-36fd0a5.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-1384 .elementor-element.elementor-element-36fd0a5.elementor-view-framed .elementor-icon, .elementor-1384 .elementor-element.elementor-element-36fd0a5.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-1384 .elementor-element.elementor-element-36fd0a5.elementor-view-framed .elementor-icon, .elementor-1384 .elementor-element.elementor-element-36fd0a5.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-1384 .elementor-element.elementor-element-cb19346{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--gap:0px 100px;--row-gap:0px;--column-gap:100px;--grid-auto-flow:row;--margin-top:0px;--margin-bottom:-200px;--margin-left:0px;--margin-right:0px;--padding-top:75px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-1384 .elementor-element.elementor-element-10b8c1b{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-1384 .elementor-element.elementor-element-000b5ce .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:400;line-height:25px;letter-spacing:-0.5px;color:#000000;}.elementor-1384 .elementor-element.elementor-element-43c9951 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:400;line-height:25px;letter-spacing:-0.5px;word-spacing:0px;color:#000000;}.elementor-1384 .elementor-element.elementor-element-71e37cd{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-e645570 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:80px;font-weight:500;line-height:80px;letter-spacing:-2px;word-spacing:0px;color:#000000;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1384 .elementor-element.elementor-element-862f277 img{width:100px;height:100px;border-radius:15px 15px 15px 15px;}.elementor-1384 .elementor-element.elementor-element-1677d17{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-9fe4ac1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );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 );}.elementor-1384 .elementor-element.elementor-element-a942798 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#000000;color:#000000;border-radius:25px 25px 25px 25px;}.elementor-1384 .elementor-element.elementor-element-a942798 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-1384 .elementor-element.elementor-element-a942798 .elementor-button .elementor-button-content-wrapper{gap:15px;}.elementor-1384 .elementor-element.elementor-element-28b09cb .elementor-button{background-color:#FFFFFF00;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#000000;color:#000000;border-radius:25px 25px 25px 25px;}.elementor-1384 .elementor-element.elementor-element-28b09cb .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-1384 .elementor-element.elementor-element-28b09cb .elementor-button .elementor-button-content-wrapper{gap:15px;}.elementor-1384 .elementor-element.elementor-element-6cdcb62{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:25px 25px 25px 25px;}.elementor-1384 .elementor-element.elementor-element-6cdcb62:not(.elementor-motion-effects-element-type-background), .elementor-1384 .elementor-element.elementor-element-6cdcb62 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-73f73d0 );}.elementor-1384 .elementor-element.elementor-element-a1fa385{--display:flex;--justify-content:center;}.elementor-1384 .elementor-element.elementor-element-4a966c8 .elementor-button{background-color:#00000000;font-family:"Work Sans", Sans-serif;font-size:40px;font-weight:500;fill:#000000;color:#000000;}.elementor-1384 .elementor-element.elementor-element-5da6bc2 .elementor-button{background-color:#D9061300;font-family:"Work Sans", Sans-serif;font-size:20px;font-weight:500;fill:#000000;color:#000000;padding:0px 0px 0px 0px;}.elementor-1384 .elementor-element.elementor-element-5da6bc2.elementor-element{--align-self:flex-start;--order:-99999 /* order start hack */;}body:not(.rtl) .elementor-1384 .elementor-element.elementor-element-5da6bc2{left:25px;}body.rtl .elementor-1384 .elementor-element.elementor-element-5da6bc2{right:25px;}.elementor-1384 .elementor-element.elementor-element-5da6bc2{top:25px;}.elementor-1384 .elementor-element.elementor-element-a50fde8 .elementor-button{background-color:#00000000;font-family:"Work Sans", Sans-serif;font-size:40px;font-weight:500;fill:#000000;color:#000000;}.elementor-1384 .elementor-element.elementor-element-9497980 .elementor-button{background-color:#00000000;font-family:"Work Sans", Sans-serif;font-size:40px;font-weight:500;fill:#000000;color:#000000;}.elementor-1384 .elementor-element.elementor-element-ef75633 .elementor-button{background-color:#00000000;font-family:"Work Sans", Sans-serif;font-size:40px;font-weight:500;fill:#000000;color:#000000;}.elementor-1384 .elementor-element.elementor-element-69912bf .elementor-button{background-color:#00000000;font-family:"Work Sans", Sans-serif;font-size:40px;font-weight:500;fill:#000000;color:#000000;}.elementor-1384 .elementor-element.elementor-element-17130b2{--display:flex;--justify-content:center;}.elementor-1384 .elementor-element.elementor-element-17130b2.e-con{--align-self:center;}.elementor-1384 .elementor-element.elementor-element-509cdf4{--display:flex;--min-height:75vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1384 .elementor-element.elementor-element-bd9dded.elementor-element{--align-self:center;}.elementor-1384 .elementor-element.elementor-element-bd9dded{text-align:center;}.elementor-1384 .elementor-element.elementor-element-09507f9 > .elementor-widget-container{margin:10px 10px 10px 0px;}.elementor-1384 .elementor-element.elementor-element-2a443d8 > .elementor-widget-container{margin:10px 10px 10px 0px;}.elementor-1384 .elementor-element.elementor-element-cf6de2b > .elementor-widget-container{margin:10px 10px 10px 0px;}.elementor-1384 .elementor-element.elementor-element-40d8b74 > .elementor-widget-container{margin:10px 10px 10px 0px;}.elementor-1384 .elementor-element.elementor-element-886dd80 > .elementor-widget-container{margin:10px 10px 10px 0px;}.elementor-1384 .elementor-element.elementor-element-652729d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-1384 .elementor-element.elementor-element-71ec1cc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-71ec1cc.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1384 .elementor-element.elementor-element-73e2192 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:80px;font-weight:500;line-height:80px;letter-spacing:-2px;word-spacing:0px;color:#000000;}.elementor-1384 .elementor-element.elementor-element-1139173{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;}.elementor-1384 .elementor-element.elementor-element-7bb6fe2 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:20px;font-weight:500;fill:#000000;color:#000000;border-style:none;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-7bb6fe2.elementor-element{--align-self:center;}.elementor-1384 .elementor-element.elementor-element-926887a{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-1384 .elementor-element.elementor-element-3814960{--display:flex;--gap:5px 0px;--row-gap:5px;--column-gap:0px;}.elementor-1384 .elementor-element.elementor-element-3d8cf25 .elementor-button{background-color:#00000040;font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:25px 25px 25px 25px;padding:10px 15px 10px 15px;}.elementor-1384 .elementor-element.elementor-element-3d8cf25.elementor-element{--align-self:flex-start;--order:-99999 /* order start hack */;}body:not(.rtl) .elementor-1384 .elementor-element.elementor-element-3d8cf25{left:25px;}body.rtl .elementor-1384 .elementor-element.elementor-element-3d8cf25{right:25px;}.elementor-1384 .elementor-element.elementor-element-3d8cf25{top:25px;}.elementor-1384 .elementor-element.elementor-element-eb3aaaf img{transition-duration:0.3s;border-radius:25px 25px 25px 25px;}.elementor-1384 .elementor-element.elementor-element-1f3e57e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 10px;--row-gap:0px;--column-gap:10px;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1384 .elementor-element.elementor-element-1973198 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#5E5E5E;color:#5E5E5E;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-1973198 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1384 .elementor-element.elementor-element-c5f7790 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#5E5E5E;color:#5E5E5E;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-c5f7790 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1384 .elementor-element.elementor-element-05148b4 > .elementor-widget-container{margin:5px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1384 .elementor-element.elementor-element-05148b4 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:28px;font-weight:500;color:#000000;}.elementor-1384 .elementor-element.elementor-element-d8cf123{--display:flex;--gap:5px 0px;--row-gap:5px;--column-gap:0px;}.elementor-1384 .elementor-element.elementor-element-5934db1 .elementor-button{background-color:#00000040;font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:25px 25px 25px 25px;padding:10px 15px 10px 15px;}.elementor-1384 .elementor-element.elementor-element-5934db1.elementor-element{--align-self:flex-start;--order:-99999 /* order start hack */;}body:not(.rtl) .elementor-1384 .elementor-element.elementor-element-5934db1{left:25px;}body.rtl .elementor-1384 .elementor-element.elementor-element-5934db1{right:25px;}.elementor-1384 .elementor-element.elementor-element-5934db1{top:25px;}.elementor-1384 .elementor-element.elementor-element-dd931cb img{transition-duration:0.3s;border-radius:25px 25px 25px 25px;}.elementor-1384 .elementor-element.elementor-element-15f3312{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 10px;--row-gap:0px;--column-gap:10px;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1384 .elementor-element.elementor-element-24d865d .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#5E5E5E;color:#5E5E5E;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-24d865d .elementor-button-content-wrapper{flex-direction:row;}.elementor-1384 .elementor-element.elementor-element-fdacc19 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#5E5E5E;color:#5E5E5E;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-fdacc19 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1384 .elementor-element.elementor-element-c855002 > .elementor-widget-container{margin:5px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1384 .elementor-element.elementor-element-c855002 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:28px;font-weight:500;color:#000000;}.elementor-1384 .elementor-element.elementor-element-d2a1464{--display:flex;--gap:5px 0px;--row-gap:5px;--column-gap:0px;}.elementor-1384 .elementor-element.elementor-element-204c37a .elementor-button{background-color:#00000040;font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:25px 25px 25px 25px;padding:10px 15px 10px 15px;}.elementor-1384 .elementor-element.elementor-element-204c37a.elementor-element{--align-self:flex-start;--order:-99999 /* order start hack */;}body:not(.rtl) .elementor-1384 .elementor-element.elementor-element-204c37a{left:25px;}body.rtl .elementor-1384 .elementor-element.elementor-element-204c37a{right:25px;}.elementor-1384 .elementor-element.elementor-element-204c37a{top:25px;}.elementor-1384 .elementor-element.elementor-element-e485822 img{transition-duration:0.3s;border-radius:25px 25px 25px 25px;}.elementor-1384 .elementor-element.elementor-element-56829b2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 10px;--row-gap:0px;--column-gap:10px;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1384 .elementor-element.elementor-element-e3bfd2a .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#5E5E5E;color:#5E5E5E;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-e3bfd2a .elementor-button-content-wrapper{flex-direction:row;}.elementor-1384 .elementor-element.elementor-element-1d31ff5 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:16px;font-weight:500;fill:#5E5E5E;color:#5E5E5E;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-1d31ff5 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1384 .elementor-element.elementor-element-55e57f5 > .elementor-widget-container{margin:5px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1384 .elementor-element.elementor-element-55e57f5 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:28px;font-weight:500;color:#000000;}.elementor-1384 .elementor-element.elementor-element-84181b9{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--flex-wrap:nowrap;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-1384 .elementor-element.elementor-element-f9acf6b{--display:flex;--min-height:100px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--flex-wrap:nowrap;}.elementor-1384 .elementor-element.elementor-element-e38e053 > .elementor-widget-container{padding:0vw 0vw 0vw 5vw;}.elementor-1384 .elementor-element.elementor-element-e38e053.elementor-element{--align-self:center;}.elementor-1384 .elementor-element.elementor-element-e38e053 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:150px;font-weight:500;line-height:80px;letter-spacing:-2px;word-spacing:0px;color:#000000;}.elementor-1384 .elementor-element.elementor-element-9d218af{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1384 .elementor-element.elementor-element-36d5525 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-1384 .elementor-element.elementor-element-7460200{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:100px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-1384 .elementor-element.elementor-element-a475aca{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-a475aca.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1384 .elementor-element.elementor-element-3664a1c .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:80px;font-weight:500;line-height:80px;letter-spacing:-2px;word-spacing:0px;color:#000000;}.elementor-1384 .elementor-element.elementor-element-290c317{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;}.elementor-1384 .elementor-element.elementor-element-3e41a84 .elementor-button{background-color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:20px;font-weight:500;fill:#000000;color:#000000;border-style:none;border-radius:50px 50px 50px 50px;}.elementor-1384 .elementor-element.elementor-element-3e41a84.elementor-element{--align-self:center;}.elementor-1384 .elementor-element.elementor-element-fb627d2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-widget-media-carousel .elementor-carousel-image-overlay{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 );}.elementor-1384 .elementor-element.elementor-element-3f7faa5.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:50px;}.elementor-1384 .elementor-element.elementor-element-3f7faa5 .elementor-main-swiper{height:300px;}.elementor-1384 .elementor-element.elementor-element-3f7faa5 .elementor-swiper-button{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-3f7faa5 .elementor-main-swiper:not(.elementor-thumbnails-swiper) .elementor-carousel-image{background-size:contain;}.elementor-1384 .elementor-element.elementor-element-1e41e32{--display:flex;}.elementor-1384 .elementor-element.elementor-element-93455bf{--display:flex;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-1384 .elementor-element.elementor-element-bd756c9 > .elementor-widget-container{margin:0px 25px 0px 25px;}.elementor-1384 .elementor-element.elementor-element-bd756c9 .elementor-heading-title{font-size:40px;}.elementor-1384 .elementor-element.elementor-element-cb19346{--gap:0px 5px;--row-gap:0px;--column-gap:5px;--grid-auto-flow:row;}.elementor-1384 .elementor-element.elementor-element-10b8c1b{--grid-auto-flow:row;}.elementor-1384 .elementor-element.elementor-element-862f277 img{width:150px;}.elementor-1384 .elementor-element.elementor-element-9fe4ac1{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-1384 .elementor-element.elementor-element-6cdcb62{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-4a966c8 .elementor-button{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-a50fde8 .elementor-button{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-9497980 .elementor-button{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-ef75633 .elementor-button{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-69912bf .elementor-button{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-509cdf4{--min-height:40vh;}.elementor-1384 .elementor-element.elementor-element-73e2192 .elementor-heading-title{font-size:70px;}.elementor-1384 .elementor-element.elementor-element-926887a{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1384 .elementor-element.elementor-element-f9acf6b{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-e38e053{text-align:center;}.elementor-1384 .elementor-element.elementor-element-e38e053 .elementor-heading-title{font-size:70px;}.elementor-1384 .elementor-element.elementor-element-3664a1c .elementor-heading-title{font-size:70px;}.elementor-1384 .elementor-element.elementor-element-fb627d2{--padding-top:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:50px;}.elementor-widget-media-carousel .elementor-carousel-image-overlay{font-size:var( --e-global-typography-accent-font-size );}.elementor-1384 .elementor-element.elementor-element-3f7faa5.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-1384 .elementor-element.elementor-element-3f7faa5 .elementor-main-swiper{height:200px;}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-1384 .elementor-element.elementor-element-bd756c9 .elementor-heading-title{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-36fd0a5 .elementor-icon{font-size:30px;}.elementor-1384 .elementor-element.elementor-element-36fd0a5 .elementor-icon svg{height:30px;}.elementor-1384 .elementor-element.elementor-element-cb19346{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:20px 20px;--row-gap:20px;--column-gap:20px;--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-1384 .elementor-element.elementor-element-10b8c1b{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1384 .elementor-element.elementor-element-71e37cd{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-e645570 .elementor-heading-title{font-size:40px;line-height:1em;}.elementor-1384 .elementor-element.elementor-element-862f277 img{width:100px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-1384 .elementor-element.elementor-element-4a966c8 .elementor-button{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-5da6bc2.elementor-element{--align-self:flex-start;--order:-99999 /* order start hack */;}.elementor-1384 .elementor-element.elementor-element-a50fde8 .elementor-button{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-9497980 .elementor-button{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-ef75633 .elementor-button{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-69912bf .elementor-button{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-652729d{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1384 .elementor-element.elementor-element-71ec1cc{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-73e2192{text-align:center;}.elementor-1384 .elementor-element.elementor-element-73e2192 .elementor-heading-title{font-size:50px;}.elementor-1384 .elementor-element.elementor-element-1139173{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-926887a{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1384 .elementor-element.elementor-element-3d8cf25 .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-1973198 .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-c5f7790 .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-05148b4 .elementor-heading-title{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-5934db1 .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-24d865d .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-fdacc19 .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-c855002 .elementor-heading-title{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-204c37a .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-e3bfd2a .elementor-button{font-size:12px;}.elementor-1384 .elementor-element.elementor-element-1d31ff5 .elementor-button{font-size:10px;}.elementor-1384 .elementor-element.elementor-element-55e57f5 .elementor-heading-title{font-size:20px;}.elementor-1384 .elementor-element.elementor-element-84181b9{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1384 .elementor-element.elementor-element-e38e053 > .elementor-widget-container{margin:0px 0px 0px -52px;padding:0vw 0vw 0vw 0vw;}.elementor-1384 .elementor-element.elementor-element-e38e053 .elementor-heading-title{font-size:50px;}.elementor-1384 .elementor-element.elementor-element-7460200{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1384 .elementor-element.elementor-element-a475aca{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-3664a1c{text-align:center;}.elementor-1384 .elementor-element.elementor-element-3664a1c .elementor-heading-title{font-size:50px;}.elementor-1384 .elementor-element.elementor-element-290c317{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1384 .elementor-element.elementor-element-fb627d2{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-media-carousel .elementor-carousel-image-overlay{font-size:var( --e-global-typography-accent-font-size );}.elementor-1384 .elementor-element.elementor-element-3f7faa5.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}}@media(min-width:768px){.elementor-1384 .elementor-element.elementor-element-a1fa385{--width:100%;}.elementor-1384 .elementor-element.elementor-element-17130b2{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1384 .elementor-element.elementor-element-71ec1cc{--width:483px;}.elementor-1384 .elementor-element.elementor-element-a475aca{--width:480px;}}/* Start custom CSS for section, class: .elementor-element-1d0d534 *//* Fullscreen height + rounded corners */
#home-video {
  margin: 25px;
  min-height: calc(100vh - 50px); /* 100vh minus margins */
  border-radius: 25px;
  overflow: hidden;
  position: relative;

  /* Use flexbox for consistent centering */
  display: flex;
  align-items: center;   /* vertical center */
  justify-content: flex-start; /* left align text, change to center if needed */
}

/* Ensure Elementor backgrounds respect rounding */
#home-video > .elementor-background-overlay,
#home-video .elementor-background-video-container,
#home-video .elementor-background-slideshow,
#home-video > .elementor-container,
#home-video .e-con-inner {
  border-radius: 25px;
  overflow: hidden;
}

/* Make sure inner container stretches but doesn't shift content */
#home-video > .elementor-container,
#home-video > .e-con,
#home-video > .e-con-inner {
  width: 100%;
}

/* Remove Elementor’s default column “min-height” pushing things */
#home-video .elementor-column,
#home-video .e-con {
  height: auto;
}

/* Reset widget wrap to flow naturally inside flex parent */
#home-video .elementor-column > .elementor-widget-wrap,
#home-video .e-con > .e-con-inner {
  height: auto;
  display: block;
}

/* Kill margins so heading is truly centered */
#home-video h1,
#home-video .elementor-heading-title {
  margin: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a1fa385 *//* Base size for your service buttons (desktop default) */
.elementor-1384 .elementor-element.elementor-element-a1fa385 .service-item .elementor-button {
  font-size: 40px;            /* desktop base */
  line-height: 1;
  transform-origin: left center;
  transition: transform .35s cubic-bezier(.2,.7,.2,1), color .2s ease;
  will-change: transform;
}

/* Enlarge when hovered or selected (is-active set by JS) */
.elementor-1384 .elementor-element.elementor-element-a1fa385 .service-item:hover .elementor-button,
.elementor-1384 .elementor-element.elementor-element-a1fa385 .service-item.is-active .elementor-button {
  transform: scale(1.25);     /* ≈ 50px visual size */
  color: #000;                /* optional emphasis */
}

/* Keep the left column from shifting width when items scale */
.elementor-1384 .elementor-element.elementor-element-a1fa385 .services-left {
  min-width: 28ch;            /* adjust if needed */
}

/* ===== Responsive adjustments ===== */

/* Tablet */
@media (max-width: 1024px) {
  .elementor-1384 .elementor-element.elementor-element-a1fa385 .service-item .elementor-button {
    font-size: 32px;          /* smaller on tablet */
  }
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-1384 .elementor-element.elementor-element-a1fa385 .service-item .elementor-button {
    font-size: 24px;          /* smaller on mobile */
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-509cdf4 *//* HARD-FILL the square: kill any inner padding/margins and force full stretch */
.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image,
.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image .elementor-widget-container,
.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image figure,
.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image picture,
.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image a {
  position: absolute;
  inset: 0;           /* top/right/bottom/left = 0 */
  margin: 0 !important;
  padding: 0 !important;
  border: 0;
  width: 100%;
  height: 100%;
}

.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image img {
  display: block;     /* removes inline-gap */
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;  /* crop to fill */
  object-position: center;
}

/* If any PNG has transparent edges, blend it into the frame color so no white shows */
.elementor-1384 .elementor-element.elementor-element-509cdf4 .service-image { background-color: var(--frame-color, #e9e9e9); }

/* Safety: ensure the square itself has no internal padding (we draw the frame with box-shadow) */
.elementor-1384 .elementor-element.elementor-element-509cdf4 .services-image-stack { padding: 0 !important; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cdcb62 *//* === Section: keep 25px side margins and slightly smaller than viewport === */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 {
  margin: 25px !important;                 
  width: auto !important;
  max-width: calc(100% - 50px);            
  height: calc(90vh - 50px);               /* desktop/tablet height */
  border-radius: 25px;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}

/* Make inner columns stretch inside the fixed-height section */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-left,
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-right { height: 100%; min-height: 0; }

/* Center the image block in the right column */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-right { display: grid; place-items: center; }

/* === Square image stack (fills fully, but shows a 25px “frame”) === */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-image-stack {
  position: relative;
  aspect-ratio: 1 / 1;                     
  width: min(78vmin, 100%);                
  height: auto;                            
  max-height: 100%;
  max-width: 100%;
  margin: 0 auto;
  border-radius: 24px;
  overflow: hidden;

  --frame-color: #e9e9e9;                  
  box-shadow: inset 0 0 0 25px var(--frame-color);
}

/* Stacked images cover the square completely */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image {
  position: absolute;
  inset: 0;                                 
  opacity: 0;
  transition: opacity .55s ease-in-out;     
  pointer-events: none;
  z-index: 0;
}
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;                         
  object-position: center;
  display: block;
}

/* Visibility states (driven by your JS) */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-default { opacity: 1; }
.elementor-1384 .elementor-element.elementor-element-6cdcb62[data-has-active="1"] .service-image.is-default { opacity: 0; }
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-visible { opacity: 1; }

/* Optional: selected button look */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-item.is-active { color:#000; font-weight:600; }

/* === Keep the square wrapper 1:1 (unchanged) === */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-image-stack{
  position: relative;
  aspect-ratio: 1 / 1;
  width: min(78vmin, 100%);
  height: auto;
  max-height: 100%;
  max-width: 100%;
  margin: 0 auto;
  border-radius: 24px;
  overflow: hidden;
}

/* === FIX: images must be absolute, fill the square === */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image{
  position: absolute;
  inset: 0;
  border-radius: 24px;
  overflow: hidden;
  background: transparent;
  opacity: 0;
  transition: opacity .55s ease-in-out;
  pointer-events: none;
  z-index: 0;
}
/* only the visible/default frame can receive hover */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-visible,
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-default{ pointer-events: auto; }

/* actual <img> */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image img{
  display:block;
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  transition: filter .45s ease, transform .45s ease, clip-path .45s ease;
  will-change: filter, transform, clip-path;
}

/* blur on hover (image content only) */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-visible:hover img,
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-default:hover img,
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-image-stack:hover .service-image.is-visible img,
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .services-image-stack:hover .service-image.is-default img{
  filter: blur(6px) saturate(110%);
  clip-path: inset(-12px);
  transform: scale(1.015);
}

/* visibility states driven by your JS */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-default{ opacity:1; }
.elementor-1384 .elementor-element.elementor-element-6cdcb62[data-has-active="1"] .service-image.is-default{ opacity:0; }
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-visible{ opacity:1; z-index:1; }

/* === Custom cursor for service images === */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image:hover,
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image:hover *{ cursor:none !important; }

/* follower dot */
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image > .card-cursor{
  position:absolute;
  left:0; top:0;
  transform: translate(-50%,-50%);
  width:28px; height:28px;
  border-radius:50%;
  background: rgba(255,255,255,.7);
  backdrop-filter: blur(8px) saturate(130%);
  display:flex; align-items:center; justify-content:center;
  font-size:14px; line-height:1; color:#333;
  pointer-events:none;
  opacity:0; transition:opacity .2s ease;
  z-index:5;
}
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image > .card-cursor::before{ content:"↗"; }
.elementor-1384 .elementor-element.elementor-element-6cdcb62 .service-image.is-hovering > .card-cursor{ opacity:1; }

/* === Mobile: shrink section height to 50vh === */
@media (max-width: 767px) {
  .elementor-1384 .elementor-element.elementor-element-6cdcb62 {
    height: calc(50vh - 50px);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3814960 *//* =========================
   Project Card Hover Effects
   ========================= */

/* Base card container */
.project-container {
  position: relative;
  border-radius: 25px;           /* keep rounded corners */
  overflow: hidden;              /* clip children (cursor + blur) */
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
}

/* Lift card up slightly on hover */
.project-container:hover {
  transform: translateY(-6px);
}

/* Hide system cursor while hovering anywhere inside */
.project-container:hover,
.project-container:hover * {
  cursor: none !important;
}

/* Image wrapper (keeps border crisp) */
.project-image {
  position: relative;
  border-radius: 25px;           /* consistent with container */
  overflow: hidden;              /* ensures blur stays inside */
  background-color: #0000;       /* avoid white halo behind blur */
}

/* Actual <img> inside wrapper */
.project-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: filter .45s ease, transform .45s ease, clip-path .45s ease;
  will-change: filter, transform, clip-path;
}

/* Blur image smoothly on hover */
.project-container:hover .project-image img {
  filter: blur(6px) saturate(110%);
  clip-path: inset(-12px);       /* extend blur beyond edges */
  transform: scale(1.015);       /* tiny scale prevents edge halo */
}

/* Custom cursor (follower inside the card) */
.project-container .card-cursor {
  position: absolute;
  left: 0; top: 0;
  transform: translate(-50%, -50%);
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,.7);
  backdrop-filter: blur(8px) saturate(130%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  color: #333;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s ease;
  z-index: 5;
}

.project-container .card-cursor::before {
  content: "↗";   /* arrow glyph */
}

.project-container.is-hovering .card-cursor {
  opacity: 1;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d8cf123 *//* =========================
   Project Card Hover Effects
   ========================= */

/* Base card container */
.project-container {
  position: relative;
  border-radius: 25px;           /* keep rounded corners */
  overflow: hidden;              /* clip children (cursor + blur) */
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
}

/* Lift card up slightly on hover */
.project-container:hover {
  transform: translateY(-6px);
}

/* Hide system cursor while hovering anywhere inside */
.project-container:hover,
.project-container:hover * {
  cursor: none !important;
}

/* Image wrapper (keeps border crisp) */
.project-image {
  position: relative;
  border-radius: 25px;           /* consistent with container */
  overflow: hidden;              /* ensures blur stays inside */
  background-color: #0000;       /* avoid white halo behind blur */
}

/* Actual <img> inside wrapper */
.project-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: filter .45s ease, transform .45s ease, clip-path .45s ease;
  will-change: filter, transform, clip-path;
}

/* Blur image smoothly on hover */
.project-container:hover .project-image img {
  filter: blur(6px) saturate(110%);
  clip-path: inset(-12px);       /* extend blur beyond edges */
  transform: scale(1.015);       /* tiny scale prevents edge halo */
}

/* Custom cursor (follower inside the card) */
.project-container .card-cursor {
  position: absolute;
  left: 0; top: 0;
  transform: translate(-50%, -50%);
  width: 50px;                   /* bigger circle (was 28px) */
  height: 50px;                  /* bigger circle */
  border-radius: 50%;
  background: rgba(255,255,255,.7);
  backdrop-filter: blur(8px) saturate(130%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;               /* bigger arrow (was 14px) */
  line-height: 1;
  color: #333;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s ease;
  z-index: 5;
}

.project-container .card-cursor::before {
  content: "↗";   /* arrow glyph */
}

.project-container.is-hovering .card-cursor {
  opacity: 1;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d2a1464 *//* =========================
   Project Card Hover Effects
   ========================= */

/* Base card container */
.project-container {
  position: relative;
  border-radius: 25px;           /* keep rounded corners */
  overflow: hidden;              /* clip children (cursor + blur) */
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
}

/* Lift card up slightly on hover */
.project-container:hover {
  transform: translateY(-6px);
}

/* Hide system cursor while hovering anywhere inside */
.project-container:hover,
.project-container:hover * {
  cursor: none !important;
}

/* Image wrapper (keeps border crisp) */
.project-image {
  position: relative;
  border-radius: 25px;           /* consistent with container */
  overflow: hidden;              /* ensures blur stays inside */
  background-color: #0000;       /* avoid white halo behind blur */
}

/* Actual <img> inside wrapper */
.project-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: filter .45s ease, transform .45s ease, clip-path .45s ease;
  will-change: filter, transform, clip-path;
}

/* Blur image smoothly on hover */
.project-container:hover .project-image img {
  filter: blur(6px) saturate(110%);
  clip-path: inset(-12px);       /* extend blur beyond edges */
  transform: scale(1.015);       /* tiny scale prevents edge halo */
}

/* Custom cursor (follower inside the card) */
.project-container .card-cursor {
  position: absolute;
  left: 0; top: 0;
  transform: translate(-50%, -50%);
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,.7);
  backdrop-filter: blur(8px) saturate(130%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  color: #333;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s ease;
  z-index: 5;
}

.project-container .card-cursor::before {
  content: "↗";   /* arrow glyph */
}

.project-container.is-hovering .card-cursor {
  opacity: 1;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e38e053 *//* 0) If any ancestor clips vertically, override just for this section */
.marquee-section,
.marquee-section > .elementor-container,
.marquee-section > .e-con,
.marquee-section > .e-con > .e-con-inner{
  overflow-y: visible !important;   /* prevent vertical clipping up the chain */
}

/* 1) OUTER wrapper: hard-stop horizontal scroll; allow vertical paint */
.marquee{
  position: relative;
  display: block !important;
  overflow-x: clip !important;      /* never create a horizontal scrollbar */
  overflow-y: visible !important;   /* allow tall glyphs to render */
}

/* 2) BLEED layer: expands the paint area vertically inside the marquee */
.marquee-bleed{
  position: absolute;
  inset: -0.9em 0;                  /* ⬅️ extra top/bottom room for accents */
  overflow: visible !important;     /* ensure nothing clips here */
  pointer-events: none;             /* this layer is just a holder */
}

/* 3) MOVING line – animate translateX on this element */
.marquee-track{
  position: absolute;               /* out of normal flow -> cannot widen page */
  left: 0;
  top: 50%;
  transform: translateY(-50%) translateX(var(--mx, 0)); /* you animate --mx */
  will-change: transform;

  display: inline-block;
  white-space: nowrap;
  text-wrap: nowrap;
  min-width: max-content;

  /* small vertical cushion so no glyph is visually shaved */
  line-height: 1.16;                /* adjust 1.14–1.20 if needed */
  padding-block: 0.12em;            /* tiny head/foot room */
  margin: 0;
  word-break: keep-all;
}

/* Safety net for any other component on the page */
html, body { overflow-x: clip; }    /* use 'hidden' if 'clip' unsupported *//* End custom CSS */
/* Start custom CSS for video, class: .elementor-element-36d5525 */.process-video {
  position: relative;
  border-radius: 25px;           /* keep rounded corners */
  overflow: hidden;              /* clip children (cursor + blur) */
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
}/* End custom CSS */
/* Start custom CSS *//* Hide the OS cursor while the follower is active or fading */
body.cursor-hide,
body.cursor-hide * { cursor: none !important; }

/* One global follower that tracks anywhere on the page */
.global-card-cursor{
  position: fixed;                /* follow outside the element too */
  left: 0; top: 0;
  transform: translate(-9999px,-9999px); /* offscreen until first move */
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(8px) saturate(130%);
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; line-height: 1; color: #333;
  pointer-events: none;
  opacity: 0;
  transition: opacity .26s ease;  /* fade-out timing */
  z-index: 9999;                  /* above page content */
}
.global-card-cursor::before{ content: "↗"; }

/* Visible while hovering a target */
.global-card-cursor.cursor-visible { opacity: 1; }

/* Fade state after leaving the target (still follows pointer) */
.global-card-cursor.cursor-fade   { opacity: 0; }

/* On the homepage, keep top-of-page transparent regardless of classes */
.home #header-menu:not(.has-bg) .header-bg { opacity: 0 !important; }/* End custom CSS */